@decocms/mesh 2.8.2 → 2.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/dist/client/assets/{AlertCircle-CEZnzBK4.js → AlertCircle-DST9a9vh.js} +1 -1
  2. package/dist/client/assets/{ArrowLeft-YNVHoaqm.js → ArrowLeft-DPtymxR-.js} +1 -1
  3. package/dist/client/assets/Check-B3jZM0OP.js +1 -0
  4. package/dist/client/assets/{ChevronDown-CmCEYd2s.js → ChevronDown-Bi1kqv-9.js} +1 -1
  5. package/dist/client/assets/{Clock-85E4NFdS.js → Clock-BynE89Zl.js} +1 -1
  6. package/dist/client/assets/Code01-BMUDEJ4t.js +1 -0
  7. package/dist/client/assets/{Copy01-BBFg9jKB.js → Copy01-DUDgHeaT.js} +1 -1
  8. package/dist/client/assets/{DotsHorizontal-DJyv3R-C.js → DotsHorizontal-DO21zZi8.js} +1 -1
  9. package/dist/client/assets/{DotsVertical-B2qEmOww.js → DotsVertical-DikAa5AR.js} +1 -1
  10. package/dist/client/assets/{File06-DO-M7k7I.js → File06-7Osp6kua.js} +1 -1
  11. package/dist/client/assets/{FilterLines-9cG6s1wL.js → FilterLines-DieVG1pT.js} +1 -1
  12. package/dist/client/assets/{FlipBackward-BE61TB2y.js → FlipBackward-U1Nw6QGY.js} +1 -1
  13. package/dist/client/assets/{GitBranch01-C1dZmKCI.js → GitBranch01-CTCXO68x.js} +1 -1
  14. package/dist/client/assets/{Grid01-B2ejilI6.js → Grid01-DI-Q2VEp.js} +1 -1
  15. package/dist/client/assets/{Inbox01-B__BrgQP.js → Inbox01-Cme2B_Za.js} +1 -1
  16. package/dist/client/assets/{InfoCircle-Bb6yXfW4.js → InfoCircle-Bz1TUoGx.js} +1 -1
  17. package/dist/client/assets/{Key01-HK8q2f9G.js → Key01-COwuV6OE.js} +1 -1
  18. package/dist/client/assets/{LinkExternal01-CjgaR4cl.js → LinkExternal01-BaHJAM0O.js} +1 -1
  19. package/dist/client/assets/{Loading01-cH23qZPY.js → Loading01-C5e9Xing.js} +1 -1
  20. package/dist/client/assets/{Lock01-CV7o5W_u.js → Lock01-BLY_4cHD.js} +1 -1
  21. package/dist/client/assets/Play-BSr93GMI.js +1 -0
  22. package/dist/client/assets/{Plus-C3sMzSb2.js → Plus-pmQCIiux.js} +1 -1
  23. package/dist/client/assets/SearchMd-C8MbVAuA.js +1 -0
  24. package/dist/client/assets/{Terminal-B_oPipdw.js → Terminal-BSyq_KGG.js} +1 -1
  25. package/dist/client/assets/{Trash01-BOhK9CaY.js → Trash01-DqQrX192.js} +1 -1
  26. package/dist/client/assets/{X-Di2SR_nX.js → X-CJAJyKbZ.js} +1 -1
  27. package/dist/client/assets/{XClose-D4FDIiiz.js → XClose-CF1lddkv.js} +1 -1
  28. package/dist/client/assets/{alert-dialog-BCer35jC.js → alert-dialog-BnwjYq4n.js} +2 -2
  29. package/dist/client/assets/auth-DhJcJDq8.js +1 -0
  30. package/dist/client/assets/{auth-catchall-CNdj2VJz.js → auth-catchall-C2IFDAAQ.js} +1 -1
  31. package/dist/client/assets/{avatar-D_QIlSd5.js → avatar-Cd72kdsa.js} +1 -1
  32. package/dist/client/assets/{badge-DCqUYVs1.js → badge-iCoQ1dgD.js} +1 -1
  33. package/dist/client/assets/{card-DDmjO8CR.js → card-CjWJyjfT.js} +1 -1
  34. package/dist/client/assets/checkbox-5O25feEA.js +1 -0
  35. package/dist/client/assets/{collection-detail-DRasnD9L.js → collection-detail-BCydbsMr.js} +39 -39
  36. package/dist/client/assets/collection-display-button-D1R0tnBY.js +1 -0
  37. package/dist/client/assets/{collection-header-Cuit0QLN.js → collection-header-0lxlEg2I.js} +1 -1
  38. package/dist/client/assets/{collection-page-DxiA3ghM.js → collection-page-s3MvuRc-.js} +1 -1
  39. package/dist/client/assets/collection-search-Btyw61UY.js +1 -0
  40. package/dist/client/assets/{collection-tab-6VzVkwAS.js → collection-tab-DWktiPIU.js} +1 -1
  41. package/dist/client/assets/{collection-table-wrapper-DPx6-uyv.js → collection-table-wrapper-gfEw2g5n.js} +1 -1
  42. package/dist/client/assets/{connection-card-Bg0hUMHn.js → connection-card-DfdBq4FD.js} +1 -1
  43. package/dist/client/assets/connection-detail--2aMjf2x.js +1 -0
  44. package/dist/client/assets/connections-B3fFvefT.js +1 -0
  45. package/dist/client/assets/constants-CjRmBn5H.js +1 -0
  46. package/dist/client/assets/{create-organization-dialog-CC0rYuMf.js → create-organization-dialog-DWi5c4Eh.js} +1 -1
  47. package/dist/client/assets/dialog-D76JDRim.js +1 -0
  48. package/dist/client/assets/{dropdown-menu-C3Qw1eKg.js → dropdown-menu-BjkFG8SE.js} +1 -1
  49. package/dist/client/assets/{empty-state-BD1JzJGu.js → empty-state-V7JRwEdF.js} +1 -1
  50. package/dist/client/assets/env-vars-editor-BJ7tjYIq.js +1 -0
  51. package/dist/client/assets/{error-boundary-BGesyhaJ.js → error-boundary-D0j0sONw.js} +1 -1
  52. package/dist/client/assets/{extract-connection-data-D2APHbQ5.js → extract-connection-data-BrdC23jw.js} +1 -1
  53. package/dist/client/assets/form-B8Xq72cU.js +1 -0
  54. package/dist/client/assets/gateway-detail-5Qd5lfiW.js +1 -0
  55. package/dist/client/assets/gateways-CEtb1fnf.js +1 -0
  56. package/dist/client/assets/home-nnEPBFaz.js +1 -0
  57. package/dist/client/assets/index-B01CV87W.js +88 -0
  58. package/dist/client/assets/index-Cqq-bHxo.js +163 -0
  59. package/dist/client/assets/index-DdOgSb-W.js +1 -0
  60. package/dist/client/assets/index-Dv5zkaTK.js +25 -0
  61. package/dist/client/assets/index-KJvlasGf.css +1 -0
  62. package/dist/client/assets/{index-6LdznHai.js → index-xkjtAq50.js} +1 -1
  63. package/dist/client/assets/{input-DotiBI6p.js → input-DJ7wqUvo.js} +1 -1
  64. package/dist/client/assets/{layout-DsjrzSQc.js → layout-CfefGJu5.js} +1 -1
  65. package/dist/client/assets/{lazy-highlighter-Dw4_yzWC.js → lazy-highlighter-CaSijfHb.js} +1 -1
  66. package/dist/client/assets/localstorage-keys-TnX0RxDe.js +1 -0
  67. package/dist/client/assets/{login-BsMqTksB.js → login-CGyq3Vs1.js} +1 -1
  68. package/dist/client/assets/{mcp-oauth-B88skAsS.js → mcp-oauth-CJD4q5rM.js} +1 -1
  69. package/dist/client/assets/mcp-server-detail-CbOhDFHk.js +1 -0
  70. package/dist/client/assets/members-DLByeMDT.js +3 -0
  71. package/dist/client/assets/{monaco-editor-CvpUgIrR.js → monaco-editor-CoD_oW78.js} +4 -4
  72. package/dist/client/assets/{monitoring-BbF_WXiI.js → monitoring-5cDa-J-b.js} +7 -7
  73. package/dist/client/assets/{oauth-callback-PquX-RwH.js → oauth-callback-Cgb1o01u.js} +1 -1
  74. package/dist/client/assets/page-COBajbLE.js +1 -0
  75. package/dist/client/assets/{page-DUKQV4B-.js → page-Dlp1hzYF.js} +2 -2
  76. package/dist/client/assets/{pin-to-sidebar-button-BSWGT8FU.js → pin-to-sidebar-button-Cp43fkli.js} +1 -1
  77. package/dist/client/assets/{popover-CaWduoVd.js → popover-mdWNDupQ.js} +1 -1
  78. package/dist/client/assets/project-context-provider-Gi9sytDH.js +1 -0
  79. package/dist/client/assets/{resizable-BAI48t1E.js → resizable-BdJcZRXn.js} +1 -1
  80. package/dist/client/assets/{resource-tabs-BRFCSYqq.js → resource-tabs-DlB9LUax.js} +1 -1
  81. package/dist/client/assets/select-B5Ou5lZC.js +1 -0
  82. package/dist/client/assets/settings-CjdyGe2Y.js +1 -0
  83. package/dist/client/assets/shell-layout-DftkJMI3.js +3 -0
  84. package/dist/client/assets/{spinner-uWjdkCaT.js → spinner-CchSlqhZ.js} +1 -1
  85. package/dist/client/assets/switch-17EJ9BZl.js +1 -0
  86. package/dist/client/assets/{textarea-D4LPxHHZ.js → textarea-BngAuS5G.js} +1 -1
  87. package/dist/client/assets/{thread-history-popover-N7ee3Fom.js → thread-history-popover-BNoPu7hE.js} +31 -7
  88. package/dist/client/assets/tool-set-selector-ia7ItE5G.js +1 -0
  89. package/dist/client/assets/{tools-list-D2G7Q2Ei.js → tools-list-HOpPAfsi.js} +1 -1
  90. package/dist/client/assets/{use-binding-BEnmwZa_.js → use-binding-iszUdbOZ.js} +7 -7
  91. package/dist/client/assets/use-connection-Dp5C8sLQ.js +2 -0
  92. package/dist/client/assets/use-connection-resources-DU3H93Az.js +1 -0
  93. package/dist/client/assets/{use-gateway-BLvEfmJw.js → use-gateway-CSxRa3Bg.js} +1 -1
  94. package/dist/client/assets/{use-gateway-system-prompt-CCBqlzxU.js → use-gateway-system-prompt-BqldEOSK.js} +1 -1
  95. package/dist/client/assets/{use-list-state-CB2CSejS.js → use-list-state-FSUrDOEN.js} +1 -1
  96. package/dist/client/assets/{use-mcp-CNznMUGm.js → use-mcp-D5TIO_2s.js} +1 -1
  97. package/dist/client/assets/{use-members-D--4LRKi.js → use-members-DlA8UjAf.js} +1 -1
  98. package/dist/client/assets/{use-mobile-CjWnbjwQ.js → use-mobile-D6_iVdHq.js} +1 -1
  99. package/dist/client/assets/{use-organization-settings-BchwsUUI.js → use-organization-settings-DVpbHPw1.js} +1 -1
  100. package/dist/client/assets/{use-tool-call-DKS5g1oj.js → use-tool-call-DsLdhDUf.js} +1 -1
  101. package/dist/client/assets/useQuery-UvQ_L9Pc.js +1 -0
  102. package/dist/client/assets/{value-DFK3h8tC.js → value-Bc9uIuB3.js} +1 -1
  103. package/dist/client/assets/{view-mode-toggle-BWDHvHnZ.js → view-mode-toggle-ljeOi0U5.js} +1 -1
  104. package/dist/client/assets/workflow-DOWIsfb9.js +1 -0
  105. package/dist/client/index.html +2 -2
  106. package/dist/server/cli.js +131 -131
  107. package/dist/server/migrate.js +99 -99
  108. package/dist/server/server.js +16 -16
  109. package/package.json +1 -1
  110. package/dist/client/assets/Play-DOmYDSaf.js +0 -1
  111. package/dist/client/assets/auth-DNL1eAzM.js +0 -1
  112. package/dist/client/assets/checkbox-BS_G5ImZ.js +0 -1
  113. package/dist/client/assets/collection-display-button-CBDNG6XS.js +0 -1
  114. package/dist/client/assets/collection-search-BxG7OTzn.js +0 -1
  115. package/dist/client/assets/connection-detail-DRj9DRTu.js +0 -1
  116. package/dist/client/assets/connections-CT-Nb4fc.js +0 -1
  117. package/dist/client/assets/constants-oNAwRDlk.js +0 -1
  118. package/dist/client/assets/dialog-zdGaBxwi.js +0 -1
  119. package/dist/client/assets/env-vars-editor-3MawTyRU.js +0 -1
  120. package/dist/client/assets/form-DbjhNzLy.js +0 -1
  121. package/dist/client/assets/gateway-detail-DURa2jZI.js +0 -1
  122. package/dist/client/assets/gateways-BTBrtb0Q.js +0 -1
  123. package/dist/client/assets/home-Bs5Ig8ua.js +0 -1
  124. package/dist/client/assets/index-BV_tzcZC.css +0 -1
  125. package/dist/client/assets/index-Bfp4h1_X.js +0 -25
  126. package/dist/client/assets/index-C4Akli_y.js +0 -163
  127. package/dist/client/assets/index-ISUndXQ9.js +0 -88
  128. package/dist/client/assets/localstorage-keys-Cbw-i0xB.js +0 -1
  129. package/dist/client/assets/mcp-server-detail-B5xXFQ9d.js +0 -1
  130. package/dist/client/assets/members-7V6nzBom.js +0 -3
  131. package/dist/client/assets/page-BhtFLe7G.js +0 -1
  132. package/dist/client/assets/project-context-provider-CjwpGeXi.js +0 -1
  133. package/dist/client/assets/select-Ddz2YDMz.js +0 -1
  134. package/dist/client/assets/settings-KKz6f4k7.js +0 -1
  135. package/dist/client/assets/shell-layout-DPg95Lcz.js +0 -1
  136. package/dist/client/assets/switch-CHifjljt.js +0 -1
  137. package/dist/client/assets/use-connection-DRGfApkr.js +0 -2
  138. package/dist/client/assets/use-connection-resources-DaAINPef.js +0 -1
  139. package/dist/client/assets/useQueries-BTessZmq.js +0 -1
  140. package/dist/client/assets/useQuery-B-W0X26_.js +0 -1
  141. package/dist/client/assets/workflow-DCCuzPym.js +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decocms/mesh",
3
- "version": "2.8.2",
3
+ "version": "2.9.0",
4
4
  "description": "MCP Mesh - Self-hostable MCP Gateway for managing AI connections and tools",
5
5
  "author": "Deco team",
6
6
  "license": "MIT",
@@ -1 +0,0 @@
1
- import{r as t}from"./index-C4Akli_y.js";const i=({size:e=24,color:r="currentColor",...o})=>t.createElement("svg",{viewBox:"0 0 24 24",width:e,height:e,stroke:r,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...o},t.createElement("path",{d:"M21 10H3m13-8v4M8 2v4m-.2 16h8.4c1.68 0 2.52 0 3.162-.327a3 3 0 0 0 1.311-1.311C21 19.72 21 18.88 21 17.2V8.8c0-1.68 0-2.52-.327-3.162a3 3 0 0 0-1.311-1.311C18.72 4 17.88 4 16.2 4H7.8c-1.68 0-2.52 0-3.162.327a3 3 0 0 0-1.311 1.311C3 6.28 3 7.12 3 8.8v8.4c0 1.68 0 2.52.327 3.162a3 3 0 0 0 1.311 1.311C5.28 22 6.12 22 7.8 22Z"}));i.displayName="Calendar";const a=({size:e=24,color:r="currentColor",...o})=>t.createElement("svg",{viewBox:"0 0 24 24",width:e,height:e,stroke:r,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...o},t.createElement("path",{d:"m16 18 6-6-6-6M8 6l-6 6 6 6"}));a.displayName="Code01";const n=({size:e=24,color:r="currentColor",...o})=>t.createElement("svg",{viewBox:"0 0 24 24",width:e,height:e,stroke:r,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...o},t.createElement("path",{d:"M5 4.99c0-.972 0-1.457.202-1.725a1 1 0 0 1 .738-.395c.335-.02.74.25 1.548.788l10.515 7.01c.668.446 1.002.668 1.118.949a1 1 0 0 1 0 .766c-.116.28-.45.503-1.118.948l-10.515 7.01c-.809.54-1.213.809-1.548.789a1 1 0 0 1-.738-.395C5 20.467 5 19.98 5 19.01V4.99Z"}));n.displayName="Play";export{a,n as i,i as n};
@@ -1 +0,0 @@
1
- import{H as h,v as e,M as u,bu as y,L as Le,s as i,X as r,Y as S,a0 as U,W as s,bq as ve,V as _,Q as m,bL as Ie,I as dt,bM as g,bv as mt,Z as Ae,bN as ht,bO as _t,bP as ft,bj as St}from"./index-C4Akli_y.js";const gt={custom:"custom"},me="2025-11-25",Bn=[me,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Rt="io.modelcontextprotocol/related-task",F="2.0",C=dt(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Oe=h([e(),u().int()]),Me=e();y({ttl:h([u(),Le()]).optional(),pollInterval:u().optional()});const wt=i({ttl:u().optional()}),yt=i({taskId:e()}),he=y({progressToken:Oe.optional(),[Rt]:yt.optional()}),T=i({_meta:he.optional()}),M=T.extend({task:wt.optional()}),Jn=t=>M.safeParse(t).success,x=i({method:e(),params:T.loose().optional()}),b=i({_meta:he.optional()}),q=i({method:e(),params:b.loose().optional()}),k=y({_meta:he.optional()}),Z=h([e(),u().int()]),Ne=i({jsonrpc:r(F),id:Z,...x.shape}).strict(),Gn=t=>Ne.safeParse(t).success,je=i({jsonrpc:r(F),...q.shape}).strict(),Fn=t=>je.safeParse(t).success,_e=i({jsonrpc:r(F),id:Z,result:k}).strict(),Zn=t=>_e.safeParse(t).success;var V;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(V||(V={}));const fe=i({jsonrpc:r(F),id:Z.optional(),error:i({code:u().int(),message:e(),data:S().optional()})}).strict(),Kn=t=>fe.safeParse(t).success,Yn=h([Ne,je,_e,fe]);h([_e,fe]);const ze=k.strict(),Ct=b.extend({requestId:Z.optional(),reason:e().optional()}),$e=q.extend({method:r("notifications/cancelled"),params:Ct}),xt=i({src:e(),mimeType:e().optional(),sizes:s(e()).optional(),theme:U(["light","dark"]).optional()}),N=i({icons:s(xt).optional()}),v=i({name:e(),title:e().optional()}),He=v.extend({...v.shape,...N.shape,version:e(),websiteUrl:e().optional(),description:e().optional()}),kt=ve(i({applyDefaults:m().optional()}),_(e(),S())),Pt=Ie(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ve(i({form:kt.optional(),url:C.optional()}),_(e(),S()).optional())),Tt=y({list:C.optional(),cancel:C.optional(),requests:y({sampling:y({createMessage:C.optional()}).optional(),elicitation:y({create:C.optional()}).optional()}).optional()}),Ut=y({list:C.optional(),cancel:C.optional(),requests:y({tools:y({call:C.optional()}).optional()}).optional()}),bt=i({experimental:_(e(),C).optional(),sampling:i({context:C.optional(),tools:C.optional()}).optional(),elicitation:Pt.optional(),roots:i({listChanged:m().optional()}).optional(),tasks:Tt.optional()}),qt=T.extend({protocolVersion:e(),capabilities:bt,clientInfo:He}),Et=x.extend({method:r("initialize"),params:qt}),Lt=i({experimental:_(e(),C).optional(),logging:C.optional(),completions:C.optional(),prompts:i({listChanged:m().optional()}).optional(),resources:i({subscribe:m().optional(),listChanged:m().optional()}).optional(),tools:i({listChanged:m().optional()}).optional(),tasks:Ut.optional()}),vt=k.extend({protocolVersion:e(),capabilities:Lt,serverInfo:He,instructions:e().optional()}),Ve=q.extend({method:r("notifications/initialized"),params:b.optional()}),Qn=t=>Ve.safeParse(t).success,We=x.extend({method:r("ping"),params:T.optional()}),It=i({progress:u(),total:g(u()),message:g(e())}),At=i({...b.shape,...It.shape,progressToken:Oe}),De=q.extend({method:r("notifications/progress"),params:At}),Ot=T.extend({cursor:Me.optional()}),j=x.extend({params:Ot.optional()}),z=k.extend({nextCursor:Me.optional()}),Mt=U(["working","input_required","completed","failed","cancelled"]),$=i({taskId:e(),status:Mt,ttl:h([u(),Le()]),createdAt:e(),lastUpdatedAt:e(),pollInterval:g(u()),statusMessage:g(e())}),Be=k.extend({task:$}),Nt=b.merge($),Je=q.extend({method:r("notifications/tasks/status"),params:Nt}),Ge=x.extend({method:r("tasks/get"),params:T.extend({taskId:e()})}),Fe=k.merge($),Ze=x.extend({method:r("tasks/result"),params:T.extend({taskId:e()})});k.loose();const Ke=j.extend({method:r("tasks/list")}),Ye=z.extend({tasks:s($)}),Qe=x.extend({method:r("tasks/cancel"),params:T.extend({taskId:e()})}),Xn=k.merge($),Xe=i({uri:e(),mimeType:g(e()),_meta:_(e(),S()).optional()}),et=Xe.extend({text:e()}),Se=e().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),tt=Xe.extend({blob:Se}),H=U(["user","assistant"]),A=i({audience:s(H).optional(),priority:u().min(0).max(1).optional(),lastModified:mt({offset:!0}).optional()}),ot=i({...v.shape,...N.shape,uri:e(),description:g(e()),mimeType:g(e()),annotations:A.optional(),_meta:g(y({}))}),jt=i({...v.shape,...N.shape,uriTemplate:e(),description:g(e()),mimeType:g(e()),annotations:A.optional(),_meta:g(y({}))}),zt=j.extend({method:r("resources/list")}),$t=z.extend({resources:s(ot)}),Ht=j.extend({method:r("resources/templates/list")}),Vt=z.extend({resourceTemplates:s(jt)}),ge=T.extend({uri:e()}),Wt=ge,Dt=x.extend({method:r("resources/read"),params:Wt}),Bt=k.extend({contents:s(h([et,tt]))}),Jt=q.extend({method:r("notifications/resources/list_changed"),params:b.optional()}),Gt=ge,Ft=x.extend({method:r("resources/subscribe"),params:Gt}),Zt=ge,Kt=x.extend({method:r("resources/unsubscribe"),params:Zt}),Yt=b.extend({uri:e()}),Qt=q.extend({method:r("notifications/resources/updated"),params:Yt}),Xt=i({name:e(),description:g(e()),required:g(m())}),eo=i({...v.shape,...N.shape,description:g(e()),arguments:g(s(Xt)),_meta:g(y({}))}),to=j.extend({method:r("prompts/list")}),oo=z.extend({prompts:s(eo)}),no=T.extend({name:e(),arguments:_(e(),e()).optional()}),ao=x.extend({method:r("prompts/get"),params:no}),Re=i({type:r("text"),text:e(),annotations:A.optional(),_meta:_(e(),S()).optional()}),we=i({type:r("image"),data:Se,mimeType:e(),annotations:A.optional(),_meta:_(e(),S()).optional()}),ye=i({type:r("audio"),data:Se,mimeType:e(),annotations:A.optional(),_meta:_(e(),S()).optional()}),so=i({type:r("tool_use"),name:e(),id:e(),input:_(e(),S()),_meta:_(e(),S()).optional()}),io=i({type:r("resource"),resource:h([et,tt]),annotations:A.optional(),_meta:_(e(),S()).optional()}),ro=ot.extend({type:r("resource_link")}),Ce=h([Re,we,ye,ro,io]),co=i({role:H,content:Ce}),lo=k.extend({description:e().optional(),messages:s(co)}),po=q.extend({method:r("notifications/prompts/list_changed"),params:b.optional()}),uo=i({title:e().optional(),readOnlyHint:m().optional(),destructiveHint:m().optional(),idempotentHint:m().optional(),openWorldHint:m().optional()}),mo=i({taskSupport:U(["required","optional","forbidden"]).optional()}),nt=i({...v.shape,...N.shape,description:e().optional(),inputSchema:i({type:r("object"),properties:_(e(),C).optional(),required:s(e()).optional()}).catchall(S()),outputSchema:i({type:r("object"),properties:_(e(),C).optional(),required:s(e()).optional()}).catchall(S()).optional(),annotations:uo.optional(),execution:mo.optional(),_meta:_(e(),S()).optional()}),ho=j.extend({method:r("tools/list")}),_o=z.extend({tools:s(nt)}),at=k.extend({content:s(Ce).default([]),structuredContent:_(e(),S()).optional(),isError:m().optional()});at.or(k.extend({toolResult:S()}));const fo=M.extend({name:e(),arguments:_(e(),S()).optional()}),So=x.extend({method:r("tools/call"),params:fo}),go=q.extend({method:r("notifications/tools/list_changed"),params:b.optional()}),ea=i({autoRefresh:m().default(!0),debounceMs:u().int().nonnegative().default(300)}),st=U(["debug","info","notice","warning","error","critical","alert","emergency"]),Ro=T.extend({level:st}),wo=x.extend({method:r("logging/setLevel"),params:Ro}),yo=b.extend({level:st,logger:e().optional(),data:S()}),Co=q.extend({method:r("notifications/message"),params:yo}),xo=i({name:e().optional()}),ko=i({hints:s(xo).optional(),costPriority:u().min(0).max(1).optional(),speedPriority:u().min(0).max(1).optional(),intelligencePriority:u().min(0).max(1).optional()}),Po=i({mode:U(["auto","required","none"]).optional()}),To=i({type:r("tool_result"),toolUseId:e().describe("The unique identifier for the corresponding tool call."),content:s(Ce).default([]),structuredContent:i({}).loose().optional(),isError:m().optional(),_meta:_(e(),S()).optional()}),Uo=Ae("type",[Re,we,ye]),W=Ae("type",[Re,we,ye,so,To]),bo=i({role:H,content:h([W,s(W)]),_meta:_(e(),S()).optional()}),qo=M.extend({messages:s(bo),modelPreferences:ko.optional(),systemPrompt:e().optional(),includeContext:U(["none","thisServer","allServers"]).optional(),temperature:u().optional(),maxTokens:u().int(),stopSequences:s(e()).optional(),metadata:C.optional(),tools:s(nt).optional(),toolChoice:Po.optional()}),Eo=x.extend({method:r("sampling/createMessage"),params:qo}),Lo=k.extend({model:e(),stopReason:g(U(["endTurn","stopSequence","maxTokens"]).or(e())),role:H,content:Uo}),vo=k.extend({model:e(),stopReason:g(U(["endTurn","stopSequence","maxTokens","toolUse"]).or(e())),role:H,content:h([W,s(W)])}),Io=i({type:r("boolean"),title:e().optional(),description:e().optional(),default:m().optional()}),Ao=i({type:r("string"),title:e().optional(),description:e().optional(),minLength:u().optional(),maxLength:u().optional(),format:U(["email","uri","date","date-time"]).optional(),default:e().optional()}),Oo=i({type:U(["number","integer"]),title:e().optional(),description:e().optional(),minimum:u().optional(),maximum:u().optional(),default:u().optional()}),Mo=i({type:r("string"),title:e().optional(),description:e().optional(),enum:s(e()),default:e().optional()}),No=i({type:r("string"),title:e().optional(),description:e().optional(),oneOf:s(i({const:e(),title:e()})),default:e().optional()}),jo=i({type:r("string"),title:e().optional(),description:e().optional(),enum:s(e()),enumNames:s(e()).optional(),default:e().optional()}),zo=h([Mo,No]),$o=i({type:r("array"),title:e().optional(),description:e().optional(),minItems:u().optional(),maxItems:u().optional(),items:i({type:r("string"),enum:s(e())}),default:s(e()).optional()}),Ho=i({type:r("array"),title:e().optional(),description:e().optional(),minItems:u().optional(),maxItems:u().optional(),items:i({anyOf:s(i({const:e(),title:e()}))}),default:s(e()).optional()}),Vo=h([$o,Ho]),Wo=h([jo,zo,Vo]),Do=h([Wo,Io,Ao,Oo]),Bo=M.extend({mode:r("form").optional(),message:e(),requestedSchema:i({type:r("object"),properties:_(e(),Do),required:s(e()).optional()})}),Jo=M.extend({mode:r("url"),message:e(),elicitationId:e(),url:e().url()}),Go=h([Bo,Jo]),Fo=x.extend({method:r("elicitation/create"),params:Go}),Zo=b.extend({elicitationId:e()}),Ko=q.extend({method:r("notifications/elicitation/complete"),params:Zo}),Yo=k.extend({action:U(["accept","decline","cancel"]),content:Ie(t=>t===null?void 0:t,_(e(),h([e(),u(),m(),s(e())])).optional())}),Qo=i({type:r("ref/resource"),uri:e()}),Xo=i({type:r("ref/prompt"),name:e()}),en=T.extend({ref:h([Xo,Qo]),argument:i({name:e(),value:e()}),context:i({arguments:_(e(),e()).optional()}).optional()}),tn=x.extend({method:r("completion/complete"),params:en}),on=k.extend({completion:y({values:s(e()).max(100),total:g(u().int()),hasMore:g(m())})}),nn=i({uri:e().startsWith("file://"),name:e().optional(),_meta:_(e(),S()).optional()}),an=x.extend({method:r("roots/list"),params:T.optional()}),sn=k.extend({roots:s(nn)}),rn=q.extend({method:r("notifications/roots/list_changed"),params:b.optional()});h([We,Et,tn,wo,ao,to,zt,Ht,Dt,Ft,Kt,So,ho,Ge,Ze,Ke,Qe]);h([$e,De,Ve,rn,Je]);h([ze,Lo,vo,Yo,sn,Fe,Ye,Be]);h([We,Eo,Fo,an,Ge,Ze,Ke,Qe]);h([$e,De,Co,Qt,Jt,go,po,Je,Ko]);h([ze,vt,on,lo,oo,$t,Vt,Bt,at,_o,Fe,Ye,Be]);class xe extends Error{constructor(o,n,a){super(`MCP error ${o}: ${n}`),this.code=o,this.data=a,this.name="McpError"}static fromError(o,n,a){if(o===V.UrlElicitationRequired&&a){const c=a;if(c.elicitations)return new cn(c.elicitations,n)}return new xe(o,n,a)}}class cn extends xe{constructor(o,n=`URL elicitation${o.length>1?"s":""} required`){super(V.UrlElicitationRequired,n,{elicitations:o})}get elicitations(){return this.data?.elicitations??[]}}let ke;ke=globalThis.crypto;async function ln(t){return(await ke).getRandomValues(new Uint8Array(t))}async function pn(t){const o="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~",n=Math.pow(2,8)-Math.pow(2,8)%o.length;let a="";for(;a.length<t;){const c=await ln(t-a.length);for(const p of c)p<n&&(a+=o[p%o.length])}return a}async function un(t){return await pn(t)}async function dn(t){const o=await(await ke).subtle.digest("SHA-256",new TextEncoder().encode(t));return btoa(String.fromCharCode(...new Uint8Array(o))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function mn(t){if(t||(t=43),t<43||t>128)throw`Expected a length between 43 and 128. Received ${t}.`;const o=await un(t),n=await dn(o);return{code_verifier:o,code_challenge:n}}const w=ht().superRefine((t,o)=>{if(!URL.canParse(t))return o.addIssue({code:gt.custom,message:"URL must be parseable",fatal:!0}),_t}).refine(t=>{const o=new URL(t);return o.protocol!=="javascript:"&&o.protocol!=="data:"&&o.protocol!=="vbscript:"},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),hn=y({resource:e().url(),authorization_servers:s(w).optional(),jwks_uri:e().url().optional(),scopes_supported:s(e()).optional(),bearer_methods_supported:s(e()).optional(),resource_signing_alg_values_supported:s(e()).optional(),resource_name:e().optional(),resource_documentation:e().optional(),resource_policy_uri:e().url().optional(),resource_tos_uri:e().url().optional(),tls_client_certificate_bound_access_tokens:m().optional(),authorization_details_types_supported:s(e()).optional(),dpop_signing_alg_values_supported:s(e()).optional(),dpop_bound_access_tokens_required:m().optional()}),it=y({issuer:e(),authorization_endpoint:w,token_endpoint:w,registration_endpoint:w.optional(),scopes_supported:s(e()).optional(),response_types_supported:s(e()),response_modes_supported:s(e()).optional(),grant_types_supported:s(e()).optional(),token_endpoint_auth_methods_supported:s(e()).optional(),token_endpoint_auth_signing_alg_values_supported:s(e()).optional(),service_documentation:w.optional(),revocation_endpoint:w.optional(),revocation_endpoint_auth_methods_supported:s(e()).optional(),revocation_endpoint_auth_signing_alg_values_supported:s(e()).optional(),introspection_endpoint:e().optional(),introspection_endpoint_auth_methods_supported:s(e()).optional(),introspection_endpoint_auth_signing_alg_values_supported:s(e()).optional(),code_challenge_methods_supported:s(e()).optional(),client_id_metadata_document_supported:m().optional()}),_n=y({issuer:e(),authorization_endpoint:w,token_endpoint:w,userinfo_endpoint:w.optional(),jwks_uri:w,registration_endpoint:w.optional(),scopes_supported:s(e()).optional(),response_types_supported:s(e()),response_modes_supported:s(e()).optional(),grant_types_supported:s(e()).optional(),acr_values_supported:s(e()).optional(),subject_types_supported:s(e()),id_token_signing_alg_values_supported:s(e()),id_token_encryption_alg_values_supported:s(e()).optional(),id_token_encryption_enc_values_supported:s(e()).optional(),userinfo_signing_alg_values_supported:s(e()).optional(),userinfo_encryption_alg_values_supported:s(e()).optional(),userinfo_encryption_enc_values_supported:s(e()).optional(),request_object_signing_alg_values_supported:s(e()).optional(),request_object_encryption_alg_values_supported:s(e()).optional(),request_object_encryption_enc_values_supported:s(e()).optional(),token_endpoint_auth_methods_supported:s(e()).optional(),token_endpoint_auth_signing_alg_values_supported:s(e()).optional(),display_values_supported:s(e()).optional(),claim_types_supported:s(e()).optional(),claims_supported:s(e()).optional(),service_documentation:e().optional(),claims_locales_supported:s(e()).optional(),ui_locales_supported:s(e()).optional(),claims_parameter_supported:m().optional(),request_parameter_supported:m().optional(),request_uri_parameter_supported:m().optional(),require_request_uri_registration:m().optional(),op_policy_uri:w.optional(),op_tos_uri:w.optional(),client_id_metadata_document_supported:m().optional()}),fn=i({..._n.shape,...it.pick({code_challenge_methods_supported:!0}).shape}),Sn=i({access_token:e(),id_token:e().optional(),token_type:e(),expires_in:ft().optional(),scope:e().optional(),refresh_token:e().optional()}).strip(),gn=i({error:e(),error_description:e().optional(),error_uri:e().optional()}),qe=w.optional().or(r("").transform(()=>{})),Rn=i({redirect_uris:s(w),token_endpoint_auth_method:e().optional(),grant_types:s(e()).optional(),response_types:s(e()).optional(),client_name:e().optional(),client_uri:w.optional(),logo_uri:qe,scope:e().optional(),contacts:s(e()).optional(),tos_uri:qe,policy_uri:e().optional(),jwks_uri:w.optional(),jwks:St().optional(),software_id:e().optional(),software_version:e().optional(),software_statement:e().optional()}).strip(),wn=i({client_id:e(),client_secret:e().optional(),client_id_issued_at:u().optional(),client_secret_expires_at:u().optional()}).strip(),yn=Rn.merge(wn);i({error:e(),error_description:e().optional()}).strip();i({token:e(),token_type_hint:e().optional()}).strip();function Cn(t){const o=typeof t=="string"?new URL(t):new URL(t.href);return o.hash="",o}function xn({requestedResource:t,configuredResource:o}){const n=typeof t=="string"?new URL(t):new URL(t.href),a=typeof o=="string"?new URL(o):new URL(o.href);if(n.origin!==a.origin||n.pathname.length<a.pathname.length)return!1;const c=n.pathname.endsWith("/")?n.pathname:n.pathname+"/",p=a.pathname.endsWith("/")?a.pathname:a.pathname+"/";return c.startsWith(p)}class R extends Error{constructor(o,n){super(o),this.errorUri=n,this.name=this.constructor.name}toResponseObject(){const o={error:this.errorCode,error_description:this.message};return this.errorUri&&(o.error_uri=this.errorUri),o}get errorCode(){return this.constructor.errorCode}}class te extends R{}te.errorCode="invalid_request";class D extends R{}D.errorCode="invalid_client";class B extends R{}B.errorCode="invalid_grant";class J extends R{}J.errorCode="unauthorized_client";class oe extends R{}oe.errorCode="unsupported_grant_type";class ne extends R{}ne.errorCode="invalid_scope";class ae extends R{}ae.errorCode="access_denied";class I extends R{}I.errorCode="server_error";class se extends R{}se.errorCode="temporarily_unavailable";class ie extends R{}ie.errorCode="unsupported_response_type";class re extends R{}re.errorCode="unsupported_token_type";class ce extends R{}ce.errorCode="invalid_token";class le extends R{}le.errorCode="method_not_allowed";class pe extends R{}pe.errorCode="too_many_requests";class G extends R{}G.errorCode="invalid_client_metadata";class ue extends R{}ue.errorCode="insufficient_scope";class de extends R{}de.errorCode="invalid_target";const kn={[te.errorCode]:te,[D.errorCode]:D,[B.errorCode]:B,[J.errorCode]:J,[oe.errorCode]:oe,[ne.errorCode]:ne,[ae.errorCode]:ae,[I.errorCode]:I,[se.errorCode]:se,[ie.errorCode]:ie,[re.errorCode]:re,[ce.errorCode]:ce,[le.errorCode]:le,[pe.errorCode]:pe,[G.errorCode]:G,[ue.errorCode]:ue,[de.errorCode]:de};class ta extends Error{constructor(o){super(o??"Unauthorized")}}function Pn(t){return["client_secret_basic","client_secret_post","none"].includes(t)}const Y="code",Q="S256";function Tn(t,o){const n=t.client_secret!==void 0;return o.length===0?n?"client_secret_post":"none":"token_endpoint_auth_method"in t&&t.token_endpoint_auth_method&&Pn(t.token_endpoint_auth_method)&&o.includes(t.token_endpoint_auth_method)?t.token_endpoint_auth_method:n&&o.includes("client_secret_basic")?"client_secret_basic":n&&o.includes("client_secret_post")?"client_secret_post":o.includes("none")?"none":n?"client_secret_post":"none"}function Un(t,o,n,a){const{client_id:c,client_secret:p}=o;switch(t){case"client_secret_basic":bn(c,p,n);return;case"client_secret_post":qn(c,p,a);return;case"none":En(c,a);return;default:throw new Error(`Unsupported client authentication method: ${t}`)}}function bn(t,o,n){if(!o)throw new Error("client_secret_basic authentication requires a client_secret");const a=btoa(`${t}:${o}`);n.set("Authorization",`Basic ${a}`)}function qn(t,o,n){n.set("client_id",t),o&&n.set("client_secret",o)}function En(t,o){o.set("client_id",t)}async function rt(t){const o=t instanceof Response?t.status:void 0,n=t instanceof Response?await t.text():t;try{const a=gn.parse(JSON.parse(n)),{error:c,error_description:p,error_uri:d}=a,l=kn[c]||I;return new l(p||"",d)}catch(a){const c=`${o?`HTTP ${o}: `:""}Invalid OAuth error response: ${a}. Raw body: ${n}`;return new I(c)}}async function oa(t,o){try{return await X(t,o)}catch(n){if(n instanceof D||n instanceof J)return await t.invalidateCredentials?.("all"),await X(t,o);if(n instanceof B)return await t.invalidateCredentials?.("tokens"),await X(t,o);throw n}}async function X(t,{serverUrl:o,authorizationCode:n,scope:a,resourceMetadataUrl:c,fetchFn:p}){let d,l;try{d=await In(o,{resourceMetadataUrl:c},p),d.authorization_servers&&d.authorization_servers.length>0&&(l=d.authorization_servers[0])}catch{}l||(l=new URL("/",o));const f=await vn(o,t,d),P=await jn(l,{fetchFn:p});let E=await Promise.resolve(t.clientInformation());if(!E){if(n!==void 0)throw new Error("Existing OAuth client information is required when exchanging an authorization code");const L=P?.client_id_metadata_document_supported===!0,O=t.clientMetadataUrl;if(O&&!Ln(O))throw new G(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${O}`);if(L&&O)E={client_id:O},await t.saveClientInformation?.(E);else{if(!t.saveClientInformation)throw new Error("OAuth client information must be saveable for dynamic registration");const be=await Vn(l,{metadata:P,clientMetadata:t.clientMetadata,fetchFn:p});await t.saveClientInformation(be),E=be}}const K=!t.redirectUrl;if(n!==void 0||K){const L=await Hn(t,l,{metadata:P,resource:f,authorizationCode:n,fetchFn:p});return await t.saveTokens(L),"AUTHORIZED"}const Ue=await t.tokens();if(Ue?.refresh_token)try{const L=await $n(l,{metadata:P,clientInformation:E,refreshToken:Ue.refresh_token,resource:f,addClientAuthentication:t.addClientAuthentication,fetchFn:p});return await t.saveTokens(L),"AUTHORIZED"}catch(L){if(!(!(L instanceof R)||L instanceof I))throw L}const lt=t.state?await t.state():void 0,{authorizationUrl:pt,codeVerifier:ut}=await zn(l,{metadata:P,clientInformation:E,state:lt,redirectUrl:t.redirectUrl,scope:a||d?.scopes_supported?.join(" ")||t.clientMetadata.scope,resource:f});return await t.saveCodeVerifier(ut),await t.redirectToAuthorization(pt),"REDIRECT"}function Ln(t){if(!t)return!1;try{const o=new URL(t);return o.protocol==="https:"&&o.pathname!=="/"}catch{return!1}}async function vn(t,o,n){const a=Cn(t);if(o.validateResourceURL)return await o.validateResourceURL(a,n?.resource);if(n){if(!xn({requestedResource:a,configuredResource:n.resource}))throw new Error(`Protected resource ${n.resource} does not match expected ${a} (or origin)`);return new URL(n.resource)}}function na(t){const o=t.headers.get("WWW-Authenticate");if(!o)return{};const[n,a]=o.split(" ");if(n.toLowerCase()!=="bearer"||!a)return{};const c=ee(t,"resource_metadata")||void 0;let p;if(c)try{p=new URL(c)}catch{}const d=ee(t,"scope")||void 0,l=ee(t,"error")||void 0;return{resourceMetadataUrl:p,scope:d,error:l}}function ee(t,o){const n=t.headers.get("WWW-Authenticate");if(!n)return null;const a=new RegExp(`${o}=(?:"([^"]+)"|([^\\s,]+))`),c=n.match(a);return c?c[1]||c[2]:null}async function In(t,o,n=fetch){const a=await Mn(t,"oauth-protected-resource",n,{protocolVersion:o?.protocolVersion,metadataUrl:o?.resourceMetadataUrl});if(!a||a.status===404)throw await a?.body?.cancel(),new Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!a.ok)throw await a.body?.cancel(),new Error(`HTTP ${a.status} trying to load well-known OAuth protected resource metadata.`);return hn.parse(await a.json())}async function Pe(t,o,n=fetch){try{return await n(t,{headers:o})}catch(a){if(a instanceof TypeError)return o?Pe(t,void 0,n):void 0;throw a}}function An(t,o="",n={}){return o.endsWith("/")&&(o=o.slice(0,-1)),n.prependPathname?`${o}/.well-known/${t}`:`/.well-known/${t}${o}`}async function Ee(t,o,n=fetch){return await Pe(t,{"MCP-Protocol-Version":o},n)}function On(t,o){return!t||t.status>=400&&t.status<500&&o!=="/"}async function Mn(t,o,n,a){const c=new URL(t),p=a?.protocolVersion??me;let d;if(a?.metadataUrl)d=new URL(a.metadataUrl);else{const f=An(o,c.pathname);d=new URL(f,a?.metadataServerUrl??c),d.search=c.search}let l=await Ee(d,p,n);if(!a?.metadataUrl&&On(l,c.pathname)){const f=new URL(`/.well-known/${o}`,c);l=await Ee(f,p,n)}return l}function Nn(t){const o=typeof t=="string"?new URL(t):t,n=o.pathname!=="/",a=[];if(!n)return a.push({url:new URL("/.well-known/oauth-authorization-server",o.origin),type:"oauth"}),a.push({url:new URL("/.well-known/openid-configuration",o.origin),type:"oidc"}),a;let c=o.pathname;return c.endsWith("/")&&(c=c.slice(0,-1)),a.push({url:new URL(`/.well-known/oauth-authorization-server${c}`,o.origin),type:"oauth"}),a.push({url:new URL(`/.well-known/openid-configuration${c}`,o.origin),type:"oidc"}),a.push({url:new URL(`${c}/.well-known/openid-configuration`,o.origin),type:"oidc"}),a}async function jn(t,{fetchFn:o=fetch,protocolVersion:n=me}={}){const a={"MCP-Protocol-Version":n,Accept:"application/json"},c=Nn(t);for(const{url:p,type:d}of c){const l=await Pe(p,a,o);if(l){if(!l.ok){if(await l.body?.cancel(),l.status>=400&&l.status<500)continue;throw new Error(`HTTP ${l.status} trying to load ${d==="oauth"?"OAuth":"OpenID provider"} metadata from ${p}`)}return d==="oauth"?it.parse(await l.json()):fn.parse(await l.json())}}}async function zn(t,{metadata:o,clientInformation:n,redirectUrl:a,scope:c,state:p,resource:d}){let l;if(o){if(l=new URL(o.authorization_endpoint),!o.response_types_supported.includes(Y))throw new Error(`Incompatible auth server: does not support response type ${Y}`);if(o.code_challenge_methods_supported&&!o.code_challenge_methods_supported.includes(Q))throw new Error(`Incompatible auth server: does not support code challenge method ${Q}`)}else l=new URL("/authorize",t);const f=await mn(),P=f.code_verifier,E=f.code_challenge;return l.searchParams.set("response_type",Y),l.searchParams.set("client_id",n.client_id),l.searchParams.set("code_challenge",E),l.searchParams.set("code_challenge_method",Q),l.searchParams.set("redirect_uri",String(a)),p&&l.searchParams.set("state",p),c&&l.searchParams.set("scope",c),c?.includes("offline_access")&&l.searchParams.append("prompt","consent"),d&&l.searchParams.set("resource",d.href),{authorizationUrl:l,codeVerifier:P}}function ct(t,o,n){return new URLSearchParams({grant_type:"authorization_code",code:t,code_verifier:o,redirect_uri:String(n)})}async function Te(t,{metadata:o,tokenRequestParams:n,clientInformation:a,addClientAuthentication:c,resource:p,fetchFn:d}){const l=o?.token_endpoint?new URL(o.token_endpoint):new URL("/token",t),f=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});if(p&&n.set("resource",p.href),c)await c(f,n,l,o);else if(a){const E=o?.token_endpoint_auth_methods_supported??[],K=Tn(a,E);Un(K,a,f,n)}const P=await(d??fetch)(l,{method:"POST",headers:f,body:n});if(!P.ok)throw await rt(P);return Sn.parse(await P.json())}async function aa(t,{metadata:o,clientInformation:n,authorizationCode:a,codeVerifier:c,redirectUri:p,resource:d,addClientAuthentication:l,fetchFn:f}){const P=ct(a,c,p);return Te(t,{metadata:o,tokenRequestParams:P,clientInformation:n,addClientAuthentication:l,resource:d,fetchFn:f})}async function $n(t,{metadata:o,clientInformation:n,refreshToken:a,resource:c,addClientAuthentication:p,fetchFn:d}){const l=new URLSearchParams({grant_type:"refresh_token",refresh_token:a}),f=await Te(t,{metadata:o,tokenRequestParams:l,clientInformation:n,addClientAuthentication:p,resource:c,fetchFn:d});return{refresh_token:a,...f}}async function Hn(t,o,{metadata:n,resource:a,authorizationCode:c,fetchFn:p}={}){const d=t.clientMetadata.scope;let l;if(t.prepareTokenRequest&&(l=await t.prepareTokenRequest(d)),!l){if(!c)throw new Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!t.redirectUrl)throw new Error("redirectUrl is required for authorization_code flow");const P=await t.codeVerifier();l=ct(c,P,t.redirectUrl)}const f=await t.clientInformation();return Te(o,{metadata:n,tokenRequestParams:l,clientInformation:f??void 0,addClientAuthentication:t.addClientAuthentication,resource:a,fetchFn:p})}async function Vn(t,{metadata:o,clientMetadata:n,fetchFn:a}){let c;if(o){if(!o.registration_endpoint)throw new Error("Incompatible auth server: does not support dynamic client registration");c=new URL(o.registration_endpoint)}else c=new URL("/register",t);const p=await(a??fetch)(c,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!p.ok)throw await rt(p);return yn.parse(await p.json())}export{Fo as A,Yo as B,$e as C,Eo as D,V as E,Lo as F,Ge as G,oa as H,vt as I,na as J,Yn as K,Ke as L,xe as M,Qn as N,In as O,De as P,jn as Q,Rt as R,Bn as S,Je as T,ta as U,aa as V,We as a,Ze as b,Qe as c,Kn as d,Gn as e,Fn as f,Jn as g,Be as h,Zn as i,Fe as j,Ye as k,Xn as l,at as m,go as n,po as o,Jt as p,me as q,ze as r,on as s,lo as t,oo as u,$t as v,Vt as w,Bt as x,_o as y,ea as z};
@@ -1 +0,0 @@
1
- import{c as d,j as c,aQ as n,aR as l}from"./index-C4Akli_y.js";import{i as m}from"./project-context-provider-CjwpGeXi.js";import{c as b}from"./input-DotiBI6p.js";function f(o){const e=d.c(9);let r,a;e[0]!==o?({className:r,...a}=o,e[0]=o,e[1]=r,e[2]=a):(r=e[1],a=e[2]);let i;e[3]!==r?(i=b("peer border-foreground dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",r),e[3]=r,e[4]=i):i=e[4];let t;e[5]===Symbol.for("react.memo_cache_sentinel")?(t=c.jsx(l,{"data-slot":"checkbox-indicator",className:"flex items-center justify-center text-primary-foreground transition-none",children:c.jsx(m,{className:"size-3.5"})}),e[5]=t):t=e[5];let s;return e[6]!==a||e[7]!==i?(s=c.jsx(n,{"data-slot":"checkbox",className:i,...a,children:t}),e[6]=a,e[7]=i,e[8]=s):s=e[8],s}export{f as C};
@@ -1 +0,0 @@
1
- import{r as n,c as N,j as s}from"./index-C4Akli_y.js";import{c as C,B as y}from"./input-DotiBI6p.js";import{c as M,D as z,b as E,a as D}from"./dropdown-menu-C3Qw1eKg.js";import{a as S,c as T}from"./Grid01-B2ejilI6.js";import{i as L,a as V,c as B,b as _,T as W}from"./project-context-provider-CjwpGeXi.js";import{V as $}from"./view-mode-toggle-BWDHvHnZ.js";const w=({size:t=24,color:e="currentColor",...r})=>n.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},n.createElement("path",{d:"M12 5v14m0 0 7-7m-7 7-7-7"}));w.displayName="ArrowDown";const k=({size:t=24,color:e="currentColor",...r})=>n.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},n.createElement("path",{d:"M21 12H9m12-6H9m12 12H9m-4-6a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm0-6a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm0 12a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"}));k.displayName="List";const b=({size:t=24,color:e="currentColor",...r})=>n.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},n.createElement("path",{d:"M5 21v-7m0-4V3m7 18v-9m0-4V3m7 18v-5m0-4V3M2 14h6m1-6h6m1 8h6"}));b.displayName="Sliders01";function K(t){const e=N.c(16),{viewMode:r,onViewModeChange:g,sortKey:v,sortDirection:a,onSort:l,sortOptions:c}=t;let d;e[0]!==c?(d=c===void 0?[]:c,e[0]=c,e[1]=d):d=e[1];const m=d;let h;e[2]===Symbol.for("react.memo_cache_sentinel")?(h=s.jsx(V,{children:s.jsxs(B,{children:[s.jsx(_,{asChild:!0,children:s.jsx(z,{asChild:!0,children:s.jsx(y,{variant:"outline",size:"icon",className:"size-7 border border-input",children:s.jsx(b,{size:16})})})}),s.jsx(W,{children:"Search filters"})]})}),e[2]=h):h=e[2];let p;e[3]===Symbol.for("react.memo_cache_sentinel")?(p={value:"table",icon:s.jsx(k,{})},e[3]=p):p=e[3];let x;e[4]===Symbol.for("react.memo_cache_sentinel")?(x=[p,{value:"cards",icon:s.jsx(T,{})}],e[4]=x):x=e[4];let o;e[5]!==g||e[6]!==r?(o=s.jsx("div",{className:"p-2 border-b border-border",children:s.jsx($,{value:r,onValueChange:g,fullWidth:!0,options:x})}),e[5]=g,e[6]=r,e[7]=o):o=e[7];let i;e[8]!==l||e[9]!==a||e[10]!==v||e[11]!==m?(i=m.length>0&&l&&s.jsxs("div",{className:"p-1 flex flex-col gap-0.5",children:[s.jsx("div",{className:"px-2 py-1.5 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide",children:"Sort by"}),m.map(f=>{const j=v===f.id;return s.jsx(M,{onClick:()=>l(f.id),className:C("h-8 px-2 py-0 cursor-pointer",j&&"bg-accent"),children:s.jsxs("div",{className:"flex items-center gap-2 w-full",children:[j&&s.jsx(L,{size:16,className:"text-foreground shrink-0"}),!j&&s.jsx("div",{className:"w-4 shrink-0"}),s.jsx("span",{className:"text-sm text-foreground flex-1",children:f.label}),j&&a&&(a==="asc"?s.jsx(S,{size:16,className:"text-foreground shrink-0"}):s.jsx(w,{size:16,className:"text-foreground shrink-0"}))]})},f.id)})]}),e[8]=l,e[9]=a,e[10]=v,e[11]=m,e[12]=i):i=e[12];let u;return e[13]!==o||e[14]!==i?(u=s.jsxs(E,{children:[h,s.jsxs(D,{align:"end",className:"w-[200px] p-0 gap-0",children:[o,i]})]}),e[13]=o,e[14]=i,e[15]=u):u=e[15],u}export{K as C,w as n};
@@ -1 +0,0 @@
1
- import{c as g,j as a}from"./index-C4Akli_y.js";import{i as b}from"./Loading01-cH23qZPY.js";import{i as j}from"./use-connection-DRGfApkr.js";import{c as N,I as v}from"./input-DotiBI6p.js";function z(p){const e=g.c(17),{value:n,onChange:c,placeholder:h,onKeyDown:m,className:f,isSearching:d}=p,x=h===void 0?"Search...":h;let s;e[0]!==f?(s=N("shrink-0 w-full border-b border-border h-12",f),e[0]=f,e[1]=s):s=e[1];let t;e[2]!==d?(t=d?a.jsx(b,{size:16,className:"animate-spin text-muted-foreground shrink-0"}):a.jsx(j,{size:16,className:"text-muted-foreground shrink-0"}),e[2]=d,e[3]=t):t=e[3];let r;e[4]!==c?(r=u=>c(u.target.value),e[4]=c,e[5]=r):r=e[5];let l;e[6]!==m||e[7]!==x||e[8]!==r||e[9]!==n?(l=a.jsx(v,{value:n,onChange:r,onKeyDown:m,placeholder:x,className:"flex-1 border-0 shadow-none focus-visible:ring-0 px-0 h-full text-sm placeholder:text-muted-foreground/50 bg-transparent"}),e[6]=m,e[7]=x,e[8]=r,e[9]=n,e[10]=l):l=e[10];let o;e[11]!==t||e[12]!==l?(o=a.jsxs("label",{className:"flex items-center gap-2.5 h-12 px-4 cursor-text",children:[t,l]}),e[11]=t,e[12]=l,e[13]=o):o=e[13];let i;return e[14]!==s||e[15]!==o?(i=a.jsx("div",{className:s,children:o}),e[14]=s,e[15]=o,e[16]=i):i=e[16],i}export{z as C};
@@ -1 +0,0 @@
1
- import{c as F,j as o,h as W,i as J,r as z,d as ce,b as le,aF as ae}from"./index-C4Akli_y.js";import{b as G,E as q,I as Q,a as me}from"./use-connection-DRGfApkr.js";import{E as X}from"./error-boundary-BGesyhaJ.js";import{b as de}from"./use-binding-BEnmwZa_.js";import{u as ue,S as pe}from"./index-Bfp4h1_X.js";import{u as fe,a as he}from"./use-connection-resources-DaAINPef.js";import{B as xe}from"./input-DotiBI6p.js";import{i as Y}from"./Loading01-cH23qZPY.js";import{R as ge}from"./resource-tabs-BRFCSYqq.js";import{V as Z,a as be,b as je}from"./layout-DsjrzSQc.js";import{C as ye}from"./collection-tab-6VzVkwAS.js";import{C as ee}from"./collection-display-button-CBDNG6XS.js";import{C as te}from"./collection-search-BxG7OTzn.js";import{C as oe}from"./collection-table-wrapper-DPx6-uyv.js";import{P as se}from"./pin-to-sidebar-button-BSWGT8FU.js";import{C as ne}from"./card-DDmjO8CR.js";import{R as Se,T as Ce}from"./tools-list-D2G7Q2Ei.js";import"./project-context-provider-CjwpGeXi.js";import"./auth-DNL1eAzM.js";import"./mcp-oauth-B88skAsS.js";import"./env-vars-editor-3MawTyRU.js";import"./Plus-C3sMzSb2.js";import"./Trash01-BOhK9CaY.js";import"./use-tool-call-DKS5g1oj.js";import"./useQuery-B-W0X26_.js";import"./File06-DO-M7k7I.js";import"./Key01-HK8q2f9G.js";import"./form-DbjhNzLy.js";import"./select-Ddz2YDMz.js";import"./ChevronDown-CmCEYd2s.js";import"./Terminal-B_oPipdw.js";import"./use-gateway-BLvEfmJw.js";import"./Grid01-B2ejilI6.js";import"./useQueries-BTessZmq.js";import"./constants-oNAwRDlk.js";import"./registry-utils-B7t_ZBUi.js";import"./extract-connection-data-D2APHbQ5.js";import"./github-icon-Dp3wHhYE.js";import"./generate-id-Dyweu44Y.js";import"./index-6LdznHai.js";import"./index-ISUndXQ9.js";import"./AlertCircle-CEZnzBK4.js";import"./X-Di2SR_nX.js";import"./textarea-D4LPxHHZ.js";import"./localstorage-keys-Cbw-i0xB.js";import"./Copy01-BBFg9jKB.js";import"./monaco-editor-CvpUgIrR.js";import"./spinner-uWjdkCaT.js";import"./alert-dialog-BCer35jC.js";import"./use-mobile-CjWnbjwQ.js";import"./InfoCircle-Bb6yXfW4.js";import"./badge-DCqUYVs1.js";import"./ArrowLeft-YNVHoaqm.js";import"./dropdown-menu-C3Qw1eKg.js";import"./DotsVertical-B2qEmOww.js";import"./use-list-state-CB2CSejS.js";import"./empty-state-BD1JzJGu.js";import"./Inbox01-B__BrgQP.js";import"./avatar-D_QIlSd5.js";import"./view-mode-toggle-BWDHvHnZ.js";import"./use-organization-settings-BchwsUUI.js";function ve(t){const e=F.c(42),{prompts:r,connectionId:n,org:s,connectionTitle:l,connectionIcon:f,onPromptClick:j,showToolbar:g,emptyMessage:N}=t,V=g===void 0?!0:g,L=N===void 0?"This connection doesn't have any prompts yet.":N,u=W(),y=J().location.href,[p,i]=z.useState(""),[w,a]=z.useState("table"),[h,_]=z.useState("name"),[d,k]=z.useState("asc");let b;e[0]!==d||e[1]!==h?(b=x=>{h===x?(k(Ie),d==="desc"&&_(void 0)):(_(x),k("asc"))},e[0]=d,e[1]=h,e[2]=b):b=e[2];const T=b;let P;e[3]!==n||e[4]!==u||e[5]!==j||e[6]!==s?(P=x=>{j?j(x):n&&s&&u({to:"/$org/mcps/$connectionId/$collectionName/$itemId",params:{org:s,connectionId:n,collectionName:"prompts",itemId:encodeURIComponent(x.name)}})},e[3]=n,e[4]=u,e[5]=j,e[6]=s,e[7]=P):P=e[7];const A=P;let B;if(e[8]!==r||e[9]!==p||e[10]!==d||e[11]!==h){const x=!r||r.length===0?[]:p.trim()?(()=>{const S=p.toLowerCase();return r.filter(U=>U.name.toLowerCase().includes(S)||U.description&&U.description.toLowerCase().includes(S))})():r;B=!h||!d?x:[...x].sort((S,U)=>{const re=S[h]||"",ie=U[h]||"",H=String(re).localeCompare(String(ie));return d==="asc"?H:-H}),e[8]=r,e[9]=p,e[10]=d,e[11]=h,e[12]=B}else B=e[12];const m=B;let O;e[13]===Symbol.for("react.memo_cache_sentinel")?(O=[{id:"name",header:"Name",render:$e,sortable:!0},{id:"description",header:"Description",render:Te,cellClassName:"flex-1",sortable:!0}],e[13]=O):O=e[13];const E=O;let M;e[14]===Symbol.for("react.memo_cache_sentinel")?(M=E.filter(we).map(Ne),e[14]=M):M=e[14];const D=M;let $;e[15]!==f||e[16]!==l||e[17]!==T||e[18]!==V||e[19]!==d||e[20]!==h||e[21]!==y||e[22]!==w?($=V&&o.jsxs(Z,{children:[o.jsx(ee,{viewMode:w,onViewModeChange:a,sortKey:h,sortDirection:d,onSort:T,sortOptions:D}),o.jsx(se,{title:l?`${l}: Prompts`:"Prompts",url:y,icon:f??"description"})]}),e[15]=f,e[16]=l,e[17]=T,e[18]=V,e[19]=d,e[20]=h,e[21]=y,e[22]=w,e[23]=$):$=e[23];let I;e[24]===Symbol.for("react.memo_cache_sentinel")?(I=x=>{x.key==="Escape"&&(i(""),x.target.blur())},e[24]=I):I=e[24];let R;e[25]!==p?(R=o.jsx(te,{value:p,onChange:i,placeholder:"Search prompts...",onKeyDown:I}),e[25]=p,e[26]=R):R=e[26];let c;e[27]!==L||e[28]!==A||e[29]!==T||e[30]!==p||e[31]!==d||e[32]!==h||e[33]!==m||e[34]!==w?(c=w==="cards"?o.jsx("div",{className:"flex-1 overflow-auto p-5",children:m.length===0?o.jsx(q,{image:null,title:p?"No prompts found":"No prompts available",description:p?"Try adjusting your search terms":L}):o.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 lg:grid-cols-4 gap-4",children:m.map(x=>o.jsx(ne,{className:"cursor-pointer transition-colors",onClick:()=>A(x),children:o.jsxs("div",{className:"flex flex-col gap-4 p-6",children:[o.jsx(Q,{icon:null,name:x.name,size:"md",className:"shrink-0 shadow-sm"}),o.jsxs("div",{className:"flex flex-col gap-0",children:[o.jsx("h3",{className:"text-base font-medium text-foreground truncate",children:x.name}),o.jsx("p",{className:"text-base text-muted-foreground line-clamp-2",children:x.description||"No description"})]})]})},x.name))})}):o.jsx(oe,{columns:E,data:m,isLoading:!1,sortKey:h,sortDirection:d,onSort:T,onRowClick:x=>A(x),emptyState:o.jsx(q,{image:null,title:p?"No prompts found":"No prompts available",description:p?"Try adjusting your search terms":L})}),e[27]=L,e[28]=A,e[29]=T,e[30]=p,e[31]=d,e[32]=h,e[33]=m,e[34]=w,e[35]=c):c=e[35];let C;e[36]!==R||e[37]!==c?(C=o.jsxs("div",{className:"flex flex-col h-full overflow-hidden",children:[R,c]}),e[36]=R,e[37]=c,e[38]=C):C=e[38];let v;return e[39]!==C||e[40]!==$?(v=o.jsxs(o.Fragment,{children:[$,C]}),e[39]=C,e[40]=$,e[41]=v):v=e[41],v}function Ne(t){return{id:t.id,label:typeof t.header=="string"?t.header:t.id}}function we(t){return t.sortable}function Te(t){return o.jsx("span",{className:"text-sm text-foreground",children:t.description||"—"})}function $e(t){return o.jsx("span",{className:"text-sm font-medium font-mono text-foreground",children:t.name})}function Ie(t){return t==="asc"?"desc":t==="desc"?null:"asc"}function Re(t){const e=F.c(6),{prompts:r,connectionId:n,org:s}=t,l=G(n),f=l?.title,j=l?.icon;let g;return e[0]!==n||e[1]!==s||e[2]!==r||e[3]!==f||e[4]!==j?(g=o.jsx(ve,{prompts:r,connectionId:n,org:s,connectionTitle:f,connectionIcon:j}),e[0]=n,e[1]=s,e[2]=r,e[3]=f,e[4]=j,e[5]=g):g=e[5],g}function _e(t){const e=F.c(2),{repository:r}=t;let n;return e[0]!==r?(n=o.jsx("div",{className:"flex-1 overflow-y-auto bg-background",children:o.jsx(Se,{repository:r})}),e[0]=r,e[1]=n):n=e[1],n}function ke(t){const e=F.c(39),{resources:r,connectionTitle:n,connectionIcon:s,onResourceClick:l,showToolbar:f,emptyMessage:j}=t,g=f===void 0?!0:f,N=j===void 0?"This connection doesn't have any resources yet.":j,L=J().location.href,[u,K]=z.useState(""),[y,p]=z.useState("table"),[i,w]=z.useState("name"),[a,h]=z.useState("asc");let _;e[0]!==a||e[1]!==i?(_=c=>{i===c?(h(De),a==="desc"&&w(void 0)):(w(c),h("asc"))},e[0]=a,e[1]=i,e[2]=_):_=e[2];const d=_;let k;e[3]!==l?(k=c=>{l&&l(c)},e[3]=l,e[4]=k):k=e[4];const b=k;let T;if(e[5]!==r||e[6]!==u||e[7]!==a||e[8]!==i){const c=!r||r.length===0?[]:u.trim()?(()=>{const C=u.toLowerCase();return r.filter(v=>v.uri.toLowerCase().includes(C)||v.name&&v.name.toLowerCase().includes(C)||v.description&&v.description.toLowerCase().includes(C))})():r;T=!i||!a?c:[...c].sort((C,v)=>{const x=C[i]||"",S=v[i]||"",U=String(x).localeCompare(String(S));return a==="asc"?U:-U}),e[5]=r,e[6]=u,e[7]=a,e[8]=i,e[9]=T}else T=e[9];const P=T;let A;e[10]===Symbol.for("react.memo_cache_sentinel")?(A=[{id:"name",header:"Name",render:Ae,sortable:!0},{id:"uri",header:"URI",render:Me,sortable:!0},{id:"description",header:"Description",render:Ee,cellClassName:"flex-1",sortable:!0},{id:"mimeType",header:"Type",render:Le,sortable:!0}],e[10]=A):A=e[10];const B=A;let m;e[11]===Symbol.for("react.memo_cache_sentinel")?(m=B.filter(Ve).map(Pe),e[11]=m):m=e[11];const O=m;let E;e[12]!==s||e[13]!==n||e[14]!==d||e[15]!==g||e[16]!==a||e[17]!==i||e[18]!==L||e[19]!==y?(E=g&&o.jsxs(Z,{children:[o.jsx(ee,{viewMode:y,onViewModeChange:p,sortKey:i,sortDirection:a,onSort:d,sortOptions:O}),o.jsx(se,{title:n?`${n}: Resources`:"Resources",url:L,icon:s??"folder"})]}),e[12]=s,e[13]=n,e[14]=d,e[15]=g,e[16]=a,e[17]=i,e[18]=L,e[19]=y,e[20]=E):E=e[20];let M;e[21]===Symbol.for("react.memo_cache_sentinel")?(M=c=>{c.key==="Escape"&&(K(""),c.target.blur())},e[21]=M):M=e[21];let D;e[22]!==u?(D=o.jsx(te,{value:u,onChange:K,placeholder:"Search resources...",onKeyDown:M}),e[22]=u,e[23]=D):D=e[23];let $;e[24]!==N||e[25]!==b||e[26]!==d||e[27]!==u||e[28]!==a||e[29]!==i||e[30]!==P||e[31]!==y?($=y==="cards"?o.jsx("div",{className:"flex-1 overflow-auto p-5",children:P.length===0?o.jsx(q,{image:null,title:u?"No resources found":"No resources available",description:u?"Try adjusting your search terms":N}):o.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 lg:grid-cols-4 gap-4",children:P.map(c=>o.jsx(ne,{className:"cursor-pointer transition-colors",onClick:()=>b(c),children:o.jsxs("div",{className:"flex flex-col gap-4 p-6",children:[o.jsx(Q,{icon:null,name:c.name||c.uri,size:"md",className:"shrink-0 shadow-sm"}),o.jsxs("div",{className:"flex flex-col gap-1",children:[o.jsx("h3",{className:"text-base font-medium text-foreground truncate",children:c.name||c.uri}),o.jsx("p",{className:"text-xs font-mono text-muted-foreground truncate",children:c.uri}),c.description&&o.jsx("p",{className:"text-sm text-muted-foreground line-clamp-2 mt-1",children:c.description})]})]})},c.uri))})}):o.jsx(oe,{columns:B,data:P,isLoading:!1,sortKey:i,sortDirection:a,onSort:d,onRowClick:c=>b(c),emptyState:o.jsx(q,{image:null,title:u?"No resources found":"No resources available",description:u?"Try adjusting your search terms":N})}),e[24]=N,e[25]=b,e[26]=d,e[27]=u,e[28]=a,e[29]=i,e[30]=P,e[31]=y,e[32]=$):$=e[32];let I;e[33]!==D||e[34]!==$?(I=o.jsxs("div",{className:"flex flex-col h-full overflow-hidden",children:[D,$]}),e[33]=D,e[34]=$,e[35]=I):I=e[35];let R;return e[36]!==I||e[37]!==E?(R=o.jsxs(o.Fragment,{children:[E,I]}),e[36]=I,e[37]=E,e[38]=R):R=e[38],R}function Pe(t){return{id:t.id,label:typeof t.header=="string"?t.header:t.id}}function Ve(t){return t.sortable}function Le(t){return o.jsx("span",{className:"text-sm text-muted-foreground",children:t.mimeType||"—"})}function Ee(t){return o.jsx("span",{className:"text-sm text-foreground",children:t.description||"—"})}function Me(t){return o.jsx("span",{className:"text-sm font-mono text-muted-foreground",children:t.uri})}function Ae(t){return o.jsx("span",{className:"text-sm font-medium text-foreground",children:t.name||t.uri})}function De(t){return t==="asc"?"desc":t==="desc"?null:"asc"}function Be(t){const e=F.c(6),{resources:r,connectionId:n,org:s}=t,l=G(n),f=l?.title,j=l?.icon;let g;return e[0]!==n||e[1]!==s||e[2]!==r||e[3]!==f||e[4]!==j?(g=o.jsx(ke,{resources:r,connectionId:n,org:s,connectionTitle:f,connectionIcon:j}),e[0]=n,e[1]=s,e[2]=r,e[3]=f,e[4]=j,e[5]=g):g=e[5],g}function Ue(t){const e=F.c(4),{tools:r,connectionId:n,org:s}=t;let l;return e[0]!==n||e[1]!==s||e[2]!==r?(l=o.jsx(Ce,{tools:r,connectionId:n,org:s}),e[0]=n,e[1]=s,e[2]=r,e[3]=l):l=e[3],l}function Ke(t){const e=F.c(61),{connection:r,connectionId:n,org:s,requestedTabId:l,collections:f,onUpdate:j,isUpdating:g,prompts:N,resources:V}=t,L=ae();let u;e[0]===Symbol.for("react.memo_cache_sentinel")?(u={from:"/$org/mcps/$connectionId"},e[0]=u):u=e[0];const K=W(u);let y;e[1]!==n?(y={connectionId:n},e[1]=n,e[2]=y):y=e[2];const p=ue(y),i=p.isAuthenticated,w=r?.metadata?.repository,a=!!w?.url,h=r?.tools?.length??0,_=N.length,d=V.length;let k;e[3]===Symbol.for("react.memo_cache_sentinel")?(k={id:"settings",label:"Settings"},e[3]=k):k=e[3];let b;e[4]!==i||e[5]!==h?(b=i&&h>0?[{id:"tools",label:"Tools",count:h}]:[],e[4]=i,e[5]=h,e[6]=b):b=e[6];let T;e[7]!==i||e[8]!==_?(T=i&&_>0?[{id:"prompts",label:"Prompts",count:_}]:[],e[7]=i,e[8]=_,e[9]=T):T=e[9];let P;e[10]!==i||e[11]!==d?(P=i&&d>0?[{id:"resources",label:"Resources",count:d}]:[],e[10]=i,e[11]=d,e[12]=P):P=e[12];let A;if(e[13]!==f||e[14]!==a||e[15]!==i||e[16]!==b||e[17]!==T||e[18]!==P){let S;e[20]!==a?(S=a?[{id:"readme",label:"README"}]:[],e[20]=a,e[21]=S):S=e[21],A=[k,...b,...T,...P,...i?(f||[]).map(Oe):[],...S],e[13]=f,e[14]=a,e[15]=i,e[16]=b,e[17]=T,e[18]=P,e[19]=A}else A=e[19];const B=A,m=B.some(S=>S.id===l)?l:"settings";let O;e[22]!==K?(O=S=>{K({search:U=>({...U,tab:S}),replace:!0})},e[22]=K,e[23]=O):O=e[23];const E=O;let M;e[24]!==f?(M=f||[],e[24]=f,e[25]=M):M=e[25];let D;if(e[26]!==m||e[27]!==M){let S;e[29]!==m?(S=U=>U.name===m,e[29]=m,e[30]=S):S=e[30],D=M.find(S),e[26]=m,e[27]=M,e[28]=D}else D=e[28];const $=D;let I;e[31]!==L.history?(I=()=>L.history.back(),e[31]=L.history,e[32]=I):I=e[32];let R;e[33]!==m||e[34]!==E||e[35]!==B?(R=o.jsx(be,{children:o.jsx(ge,{tabs:B,activeTab:m,onTabChange:E})}),e[33]=m,e[34]=E,e[35]=B,e[36]=R):R=e[36];let c;e[37]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Y,{size:32,className:"animate-spin text-muted-foreground"})}),e[37]=c):c=e[37];let C;e[38]!==$||e[39]!==m||e[40]!==p.isServerError||e[41]!==p.supportsOAuth||e[42]!==r||e[43]!==n||e[44]!==E||e[45]!==a||e[46]!==i||e[47]!==g||e[48]!==j||e[49]!==s||e[50]!==N||e[51]!==w||e[52]!==V?(C=o.jsx(z.Suspense,{fallback:c,children:m==="tools"?o.jsx(Ue,{tools:r.tools??void 0,connectionId:n,org:s}):m==="prompts"?o.jsx(Re,{prompts:N,connectionId:n,org:s}):m==="resources"?o.jsx(Be,{resources:V,connectionId:n,org:s}):m==="settings"?o.jsx(pe,{connection:r,onUpdate:j,isUpdating:g,isMCPAuthenticated:i,supportsOAuth:p.supportsOAuth,isServerError:p.isServerError,onViewReadme:a?()=>E("readme"):void 0}):m==="readme"&&a?o.jsx(_e,{repository:w}):$&&i?o.jsx(ye,{connectionId:n,org:s,activeCollection:$},m):o.jsx(q,{title:"Collection not found",description:"This collection may have been deleted or you may not have access."})}),e[38]=$,e[39]=m,e[40]=p.isServerError,e[41]=p.supportsOAuth,e[42]=r,e[43]=n,e[44]=E,e[45]=a,e[46]=i,e[47]=g,e[48]=j,e[49]=s,e[50]=N,e[51]=w,e[52]=V,e[53]=C):C=e[53];let v;e[54]!==m||e[55]!==C?(v=o.jsx("div",{className:"flex h-full w-full bg-background overflow-hidden",children:o.jsx("div",{className:"flex-1 flex flex-col min-w-0 bg-background overflow-auto",children:o.jsx(X,{children:C},m)})}),e[54]=m,e[55]=C,e[56]=v):v=e[56];let x;return e[57]!==I||e[58]!==R||e[59]!==v?(x=o.jsxs(je,{onBack:I,children:[R,v]}),e[57]=I,e[58]=R,e[59]=v,e[60]=x):x=e[60],x}function Oe(t){return{id:t.name,label:t.displayName}}function ze(){const t=F.c(29);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e={from:"/$org/mcps/$connectionId"},t[0]=e):e=t[0];const r=W(e);let n;t[1]===Symbol.for("react.memo_cache_sentinel")?(n={from:"/shell/$org/mcps/$connectionId"},t[1]=n):n=t[1];const{connectionId:s,org:l}=ce(n);let f;t[2]===Symbol.for("react.memo_cache_sentinel")?(f={from:"/shell/$org/mcps/$connectionId"},t[2]=f):f=t[2];const g=le(f).tab||"settings",N=G(s),V=me(),L=de(N??void 0);let u;t[3]!==s?(u=[s],t[3]=s,t[4]=u):u=t[4];const{promptsMap:K}=fe(u);let y;t[5]!==s?(y=[s],t[5]=s,t[6]=y):y=t[6];const{resourcesMap:p}=he(y);let i;t[7]!==s||t[8]!==K?(i=K.get(s)??[],t[7]=s,t[8]=K,t[9]=i):i=t[9];const w=i;let a;t[10]!==s||t[11]!==p?(a=p.get(s)??[],t[10]=s,t[11]=p,t[12]=a):a=t[12];const h=a;let _;t[13]!==V.update||t[14]!==s?(_=async b=>{await V.update.mutateAsync({id:s,data:b})},t[13]=V.update,t[14]=s,t[15]=_):_=t[15];const d=_;if(!N){let b;return t[16]!==r||t[17]!==l?(b=o.jsx("div",{className:"flex h-full w-full bg-background",children:o.jsx(q,{title:"Connection not found",description:"This connection may have been deleted or you may not have access.",actions:o.jsx(xe,{variant:"outline",onClick:()=>r({to:"/$org/mcps",params:{org:l}}),children:"Back to connections"})})}),t[16]=r,t[17]=l,t[18]=b):b=t[18],b}let k;return t[19]!==V.update.isPending||t[20]!==L||t[21]!==N||t[22]!==s||t[23]!==d||t[24]!==l||t[25]!==w||t[26]!==g||t[27]!==h?(k=o.jsx(Ke,{org:l,connection:N,connectionId:s,requestedTabId:g,collections:L,onUpdate:d,isUpdating:V.update.isPending,prompts:w,resources:h}),t[19]=V.update.isPending,t[20]=L,t[21]=N,t[22]=s,t[23]=d,t[24]=l,t[25]=w,t[26]=g,t[27]=h,t[28]=k):k=t[28],k}function Fe(){const t=F.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx(X,{children:o.jsx(z.Suspense,{fallback:o.jsx("div",{className:"flex h-full items-center justify-center bg-background",children:o.jsx(Y,{size:32,className:"animate-spin text-muted-foreground"})}),children:o.jsx(ze,{})})}),t[0]=e):e=t[0],e}function Yt(){const t=F.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx(Fe,{}),t[0]=e):e=t[0],e}export{Yt as default};
@@ -1 +0,0 @@
1
- import{c as ge,j as e,r as M,h as xe,b as je,a as fe,u as ye,x as ve,w as _e,s as oe,W as Ce,v as y,a0 as ke}from"./index-C4Akli_y.js";import{C as Ne}from"./collection-header-Cuit0QLN.js";import{C as Se}from"./collection-page-DxiA3ghM.js";import{C as we}from"./collection-search-BxG7OTzn.js";import{C as Te}from"./collection-table-wrapper-DPx6-uyv.js";import{C as De}from"./connection-card-Bg0hUMHn.js";import{a as be,u as Pe,n as O,E as B,c as Ie,I as Ve}from"./use-connection-DRGfApkr.js";import{E as $e}from"./error-boundary-BGesyhaJ.js";import{a as Ee}from"./use-binding-BEnmwZa_.js";import{u as Ae,s as Q}from"./use-list-state-CB2CSejS.js";import{u as Fe}from"./project-context-provider-CjwpGeXi.js";import{f as He,a as Oe,b as Be,c as ze,d as Me,e as Re,A as Ue,g as Xe}from"./alert-dialog-BCer35jC.js";import{B as We}from"./badge-DCqUYVs1.js";import{I as k,B as _}from"./input-DotiBI6p.js";import{d as Le,c as Ke,D as Ge,a as qe,b as Ye,f as Qe}from"./dialog-zdGaBxwi.js";import{b as J,D as Z,a as ee,c as $}from"./dropdown-menu-C3Qw1eKg.js";import{a as Je,F as h,b as g,c as x,d as j,f}from"./form-DbjhNzLy.js";import{i as te}from"./DotsVertical-B2qEmOww.js";import{i as Ze,r as et,s as z,E as tt,e as re}from"./env-vars-editor-3MawTyRU.js";import{i as nt}from"./Loading01-cH23qZPY.js";import{i as st}from"./Terminal-B_oPipdw.js";import{s as ne}from"./Trash01-BOhK9CaY.js";import{S as ot,a as rt,b as it,c as at,d as P}from"./select-Ddz2YDMz.js";import{T as ct}from"./textarea-D4LPxHHZ.js";import{g as lt}from"./generate-id-Dyweu44Y.js";import{a as dt}from"./use-tool-call-DKS5g1oj.js";import{f as ut,e as mt}from"./registry-utils-B7t_ZBUi.js";import"./collection-display-button-CBDNG6XS.js";import"./Grid01-B2ejilI6.js";import"./view-mode-toggle-BWDHvHnZ.js";import"./card-DDmjO8CR.js";import"./auth-DNL1eAzM.js";import"./use-mobile-CjWnbjwQ.js";import"./X-Di2SR_nX.js";import"./Plus-C3sMzSb2.js";import"./ChevronDown-CmCEYd2s.js";import"./useQuery-B-W0X26_.js";const pt=oe({key:y(),value:y()}),ht=oe({title:y().min(1,"Name is required"),description:y().nullable().optional(),ui_type:ke(["HTTP","SSE","Websocket","NPX","STDIO"]),connection_url:y().optional(),connection_token:y().nullable().optional(),npx_package:y().optional(),stdio_command:y().optional(),stdio_args:y().optional(),stdio_cwd:y().optional(),env_vars:Ce(pt).optional()}).refine(n=>n.ui_type==="NPX"?!!n.npx_package?.trim():!0,{message:"NPM package is required",path:["npx_package"]}).refine(n=>n.ui_type==="STDIO"?!!n.stdio_command?.trim():!0,{message:"Command is required",path:["stdio_command"]}).refine(n=>n.ui_type==="HTTP"||n.ui_type==="SSE"||n.ui_type==="Websocket"?!!n.connection_url?.trim():!0,{message:"URL is required",path:["connection_url"]});function A(n){const o=n.trim();if(!o)return"";try{const i=new URL(o),d=i.pathname.length>1?i.pathname.replace(/\/+$/,""):i.pathname;return`${i.origin}${d}`}catch{return o.replace(/\/+$/,"")}}function gt(n){const o=n.trim().split(/\s+/).filter(Boolean);if(o.length<2)return null;const i=o[0]?.toLowerCase();if(i!=="npx"&&i!=="bunx")return null;const m=o.slice(1).find(a=>!a.startsWith("-"));return m?{packageName:m}:null}function E(n){const{uiType:o}=n,i=A(n.connectionUrl??"");if((o==="HTTP"||o==="SSE"||o==="Websocket")&&i===A("https://api.githubcopilot.com/mcp/"))return{id:"github",title:"GitHub",description:"GitHub Copilot MCP",token:{label:"GitHub PAT",placeholder:"github_pat_…",helperText:"Paste a GitHub Personal Access Token (PAT)"}};const d=(n.npxPackage??"").trim();return o==="NPX"&&d==="@perplexity-ai/mcp-server"?{id:"perplexity",title:"Perplexity",description:"Perplexity MCP Server",envVarKeys:["PERPLEXITY_API_KEY"]}:null}function se(n){if(n.registryItems.length===0||n.uiType!=="HTTP"&&n.uiType!=="SSE"&&n.uiType!=="Websocket")return null;const o=A(n.connectionUrl??"");if(!o)return null;const i=n.registryItems.find(a=>(a.server?.remotes??[]).some(N=>A(N.url??"")===o));if(!i)return null;const d=i.title||i.name||i.server?.title||i.server?.name||"",m=i.server?.description||i.description||i.summary||null;return d?{id:"registry",title:d,description:m}:null}function xt(n,o){const i={command:"npx",args:["-y",n]},d=re(o);return Object.keys(d).length>0&&(i.envVars=d),i}function jt(n,o,i,d){const m={command:n};o.trim()&&(m.args=o.trim().split(/\s+/)),i?.trim()&&(m.cwd=i.trim());const a=re(d);return Object.keys(a).length>0&&(m.envVars=a),m}function ft(n){return n.command==="npx"}function yt(n){return n.args?.find(o=>!o.startsWith("-"))??""}function vt(n){return{command:n.command,args:n.args?.join(" ")??"",cwd:n.cwd??""}}function _t(n,o){switch(o.type){case"edit":return{mode:"editing",connection:o.connection};case"delete":return{mode:"deleting",connection:o.connection};case"close":return{mode:"idle"}}}function Ct(){const{org:n}=Fe(),o=xe(),i=je({strict:!1}),{data:d}=fe.useSession(),{stdioEnabled:m}=ye(),a=Ae({namespace:n.slug,resource:"connections"}),I=be(),N=Pe(a),[v,S]=M.useReducer(_t,{mode:"idle"}),R=Ee(N)[0],F=R?.id??"",U=ut(R?.tools),ie=Ie(F||void 0),{data:ae}=dt({toolCaller:ie,toolName:U,toolInputParams:{limit:200},scope:F,enabled:!!(F&&U),staleTime:3600*1e3}),X=mt(ae??[]),W=i.action==="create",ce=()=>{o({to:"/$org/mcps",params:{org:n.slug},search:{action:"create"}})},L=()=>{o({to:"/$org/mcps",params:{org:n.slug},search:{}})},r=ve({resolver:_e(ht),defaultValues:{title:"",description:null,ui_type:"HTTP",connection_url:"",connection_token:null,npx_package:"",stdio_command:"",stdio_args:"",stdio_cwd:"",env_vars:[]}}),u=r.watch("ui_type"),K=r.watch("connection_url"),le=r.watch("npx_package"),D=E({uiType:u,connectionUrl:K??"",npxPackage:le??""})??se({uiType:u,connectionUrl:K??"",registryItems:X}),l=v.mode==="editing"?v.connection:null;M.useEffect(()=>{if(l){const t=Ze(l.connection_headers)?l.connection_headers:null;if(t&&l.connection_type==="STDIO"){const s=et(t.envVars);if(ft(t)){const c=yt(t);r.reset({title:l.title,description:l.description,ui_type:"NPX",connection_url:"",connection_token:null,npx_package:c,stdio_command:"",stdio_args:"",stdio_cwd:"",env_vars:s})}else{const c=vt(t);r.reset({title:l.title,description:l.description,ui_type:"STDIO",connection_url:"",connection_token:null,npx_package:"",stdio_command:c.command,stdio_args:c.args,stdio_cwd:c.cwd,env_vars:s})}}else r.reset({title:l.title,description:l.description,ui_type:l.connection_type,connection_url:l.connection_url??"",connection_token:null,npx_package:"",stdio_command:"",stdio_args:"",stdio_cwd:"",env_vars:[]})}else r.reset({title:"",description:null,ui_type:"HTTP",connection_url:"",connection_token:null,npx_package:"",stdio_command:"",stdio_args:"",stdio_cwd:"",env_vars:[]})},[l,r]);const de=async()=>{if(v.mode!=="deleting")return;const t=v.connection.id;S({type:"close"});try{await I.delete.mutateAsync(t)}catch{}},ue=async t=>{let s,c=null,w=null,C=null;if(t.ui_type==="NPX"?(s="STDIO",c="",C=xt(t.npx_package||"",t.env_vars||[])):t.ui_type==="STDIO"?(s="STDIO",c="",C=jt(t.stdio_command||"",t.stdio_args||"",t.stdio_cwd,t.env_vars||[])):(s=t.ui_type,c=t.connection_url||"",w=t.connection_token||null),l){await I.update.mutateAsync({id:l.id,data:{title:t.title,description:t.description||null,connection_type:s,connection_url:c,...w&&{connection_token:w},...C&&{connection_headers:C}}}),S({type:"close"}),r.reset();return}const T=lt("conn");await I.create.mutateAsync({id:T,title:t.title,description:t.description||null,connection_type:s,connection_url:c,connection_token:w,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),created_by:d?.user?.id||"system",organization_id:n.id,icon:null,app_name:null,app_id:null,connection_headers:C,oauth_config:null,configuration_state:null,metadata:null,tools:null,bindings:null,status:"inactive"}),L(),r.reset(),o({to:"/$org/mcps/$connectionId",params:{org:n.slug,connectionId:T}})},G=t=>{t||(W?L():S({type:"close"}),r.reset())},V=t=>{const s=t.trim();if(!s)return;const c=!!r.formState.dirtyFields.title,w=!!r.formState.dirtyFields.description,C=!!r.formState.dirtyFields.env_vars,T=p=>{if(p&&(!c&&!r.getValues("title").trim()&&p.title&&r.setValue("title",p.title,{shouldDirty:!1}),!w&&!(r.getValues("description")??"").trim()&&p.description&&r.setValue("description",p.description,{shouldDirty:!1}),!C&&p.envVarKeys?.length)){const q=r.getValues("env_vars")??[],he=new Set(q.map(b=>b.key)),Y=p.envVarKeys.filter(b=>!he.has(b));Y.length>0&&r.setValue("env_vars",[...q,...Y.map(b=>({key:b,value:""}))],{shouldDirty:!0})}},H=gt(s);if(H&&m){r.setValue("ui_type","NPX",{shouldDirty:!0}),r.setValue("npx_package",H.packageName,{shouldDirty:!0}),r.setValue("connection_url","",{shouldDirty:!0}),r.setValue("connection_token",null,{shouldDirty:!0}),T(E({uiType:"NPX",npxPackage:H.packageName}));return}if(s.startsWith("http://")||s.startsWith("https://")){const p=u==="HTTP"||u==="SSE"||u==="Websocket"?u:"HTTP";r.setValue("ui_type",p,{shouldDirty:!0}),r.setValue("connection_url",s,{shouldDirty:!0}),T(E({uiType:p,connectionUrl:s})??se({uiType:p,connectionUrl:s,registryItems:X}));return}u==="NPX"&&T(E({uiType:"NPX",npxPackage:s}))},me=[{id:"icon",header:"",render:t=>e.jsx(Ve,{icon:t.icon,name:t.title,size:"sm",className:"shrink-0 shadow-sm",fallbackIcon:e.jsx(O,{})}),cellClassName:"w-16 shrink-0",wrap:!0},{id:"title",header:"Name",render:t=>e.jsx("span",{className:"text-sm font-medium text-foreground truncate block",title:t.title,children:t.title}),cellClassName:"w-48 max-w-48 min-w-0 shrink-0",sortable:!0},{id:"description",header:"Description",render:t=>e.jsx("span",{className:"text-sm text-foreground line-clamp-2",children:t.description||"—"}),cellClassName:"flex-1 min-w-0",wrap:!0,sortable:!0},{id:"connection_type",header:"Type",accessor:t=>e.jsx("span",{className:"text-sm font-medium",children:t.connection_type}),cellClassName:"w-24 shrink-0",sortable:!0},{id:"connection_url",header:"URL",render:t=>{const s=t.connection_url??"",c=s.length>40?`${s.slice(0,40)}...`:s;return e.jsx("span",{className:"text-sm text-muted-foreground",children:c})},cellClassName:"w-48 min-w-0 shrink-0"},{id:"status",header:"Status",render:t=>e.jsx(We,{variant:t.status==="active"?"success":"outline",children:t.status}),cellClassName:"w-24 shrink-0",sortable:!0},{id:"actions",header:"",render:t=>e.jsxs(J,{children:[e.jsx(Z,{asChild:!0,children:e.jsx(_,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:s=>s.stopPropagation(),children:e.jsx(te,{size:20})})}),e.jsxs(ee,{align:"end",onClick:s=>s.stopPropagation(),children:[e.jsxs($,{onClick:s=>{s.stopPropagation(),o({to:"/$org/mcps/$connectionId",params:{org:n.slug,connectionId:t.id}})},children:[e.jsx(Q,{size:16}),"Inspect"]}),e.jsxs($,{variant:"destructive",onClick:s=>{s.stopPropagation(),S({type:"delete",connection:t})},children:[e.jsx(ne,{size:16}),"Delete"]})]})]}),cellClassName:"w-12 shrink-0"}],pe=e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(_,{variant:"outline",onClick:()=>o({to:"/$org/store",params:{org:n.slug}}),size:"sm",className:"h-7 px-3 rounded-lg text-sm font-medium",children:"Browse Store"}),e.jsx(_,{onClick:ce,size:"sm",className:"h-7 px-3 rounded-lg text-sm font-medium",children:"Custom Connection"})]});return e.jsxs(Se,{children:[e.jsx(Le,{open:W||v.mode==="editing",onOpenChange:G,children:e.jsxs(Ke,{className:"sm:max-w-[525px]",children:[e.jsxs(Ge,{children:[e.jsx(qe,{children:l?"Edit Connection":"Create Connection"}),e.jsx(Ye,{children:l?"Update the connection details below.":"Create a custom connection in your organization. Fill in the details below."})]}),e.jsx(Je,{...r,children:e.jsxs("form",{onSubmit:r.handleSubmit(ue),children:[e.jsxs("div",{className:"grid gap-4 py-4",children:[e.jsx(h,{control:r.control,name:"ui_type",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"Type *"}),e.jsxs(ot,{value:t.value,onValueChange:t.onChange,children:[e.jsx(j,{children:e.jsx(rt,{children:e.jsx(it,{})})}),e.jsxs(at,{children:[e.jsx(P,{value:"HTTP",children:e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(z,{className:"w-4 h-4"}),"HTTP"]})}),e.jsx(P,{value:"SSE",children:e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(z,{className:"w-4 h-4"}),"SSE"]})}),e.jsx(P,{value:"Websocket",children:e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(z,{className:"w-4 h-4"}),"Websocket"]})}),m&&e.jsxs(e.Fragment,{children:[e.jsx(P,{value:"NPX",children:e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(O,{className:"w-4 h-4"}),"NPX Package"]})}),e.jsx(P,{value:"STDIO",children:e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(st,{className:"w-4 h-4"}),"Custom Command"]})})]})]})]}),e.jsx(f,{})]})}),u==="NPX"&&e.jsx(e.Fragment,{children:e.jsx(h,{control:r.control,name:"npx_package",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"NPM Package *"}),e.jsx(j,{children:e.jsx(k,{placeholder:"@perplexity-ai/mcp-server",...t,value:t.value??"",onPaste:s=>{const c=s.clipboardData.getData("text");c&&(s.preventDefault(),r.setValue("npx_package",c.trim(),{shouldDirty:!0}),V(c))},onBlur:s=>{V(s.target.value),t.onBlur()}})}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"The npm package to run with npx"}),e.jsx(f,{})]})})}),u==="STDIO"&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4 items-start",children:[e.jsx(h,{control:r.control,name:"stdio_command",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"Command *"}),e.jsx(j,{children:e.jsx(k,{placeholder:"node, bun, python...",...t,value:t.value??""})}),e.jsx(f,{})]})}),e.jsx(h,{control:r.control,name:"stdio_args",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"Arguments"}),e.jsx(j,{children:e.jsx(k,{placeholder:"arg1 arg2 --flag value",...t,value:t.value??""})}),e.jsx(f,{})]})})]}),e.jsx(h,{control:r.control,name:"stdio_cwd",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"Working Directory"}),e.jsx(j,{children:e.jsx(k,{placeholder:"/path/to/project (optional)",...t,value:t.value??""})}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Directory where the command will be executed"}),e.jsx(f,{})]})})]}),(u==="NPX"||u==="STDIO")&&e.jsx(h,{control:r.control,name:"env_vars",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"Environment Variables"}),e.jsx(j,{children:e.jsx(tt,{value:t.value??[],onChange:t.onChange})}),e.jsx(f,{})]})}),u!=="NPX"&&u!=="STDIO"&&e.jsxs(e.Fragment,{children:[e.jsx(h,{control:r.control,name:"connection_url",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"URL *"}),e.jsx(j,{children:e.jsx(k,{placeholder:"https://example.com/mcp",...t,value:t.value??"",onPaste:s=>{const c=s.clipboardData.getData("text");c&&(s.preventDefault(),r.setValue("connection_url",c.trim(),{shouldDirty:!0}),V(c))},onBlur:s=>{V(s.target.value),t.onBlur()}})}),e.jsx(f,{})]})}),e.jsx(h,{control:r.control,name:"connection_token",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:D?.token?.label??"Token (optional)"}),e.jsx(j,{children:e.jsx(k,{type:"password",placeholder:D?.token?.placeholder??"Bearer token or API key",...t,value:t.value??""})}),D?.token?.helperText&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:[D.token.helperText,D.id==="github"&&e.jsxs(e.Fragment,{children:[" ","·"," ",e.jsx("a",{className:"text-foreground underline underline-offset-4 hover:text-foreground/80",href:"https://github.com/settings/personal-access-tokens",target:"_blank",rel:"noreferrer",children:"Open GitHub PAT settings"})]})]}),e.jsx(f,{})]})})]}),e.jsx(h,{control:r.control,name:"title",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"Name *"}),e.jsx(j,{children:e.jsx(k,{placeholder:"My Connection",...t})}),e.jsx(f,{})]})}),e.jsx(h,{control:r.control,name:"description",render:({field:t})=>e.jsxs(g,{children:[e.jsx(x,{children:"Description"}),e.jsx(j,{children:e.jsx(ct,{placeholder:"A brief description of this connection",rows:3,...t,value:t.value??""})}),e.jsx(f,{})]})})]}),e.jsxs(Qe,{children:[e.jsx(_,{type:"button",variant:"outline",onClick:()=>G(!1),children:"Cancel"}),e.jsx(_,{type:"submit",disabled:r.formState.isSubmitting,className:"min-w-40",children:r.formState.isSubmitting?"Saving...":l?"Update Connection":"Create Connection"})]})]})})]})}),e.jsx(He,{open:v.mode==="deleting",onOpenChange:t=>!t&&S({type:"close"}),children:e.jsxs(Oe,{children:[e.jsxs(Be,{children:[e.jsx(ze,{children:"Delete Connection?"}),e.jsxs(Me,{children:["This action cannot be undone. This will permanently delete"," ",e.jsx("span",{className:"font-medium text-foreground",children:v.mode==="deleting"&&v.connection.title}),"."]})]}),e.jsxs(Re,{children:[e.jsx(Ue,{children:"Cancel"}),e.jsx(Xe,{onClick:de,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),e.jsx(Ne,{title:"Connections",viewMode:a.viewMode,onViewModeChange:a.setViewMode,sortKey:a.sortKey,sortDirection:a.sortDirection,onSort:a.handleSort,sortOptions:[{id:"title",label:"Name"},{id:"description",label:"Description"},{id:"connection_type",label:"Type"},{id:"status",label:"Status"}],ctaButton:pe}),e.jsx(we,{value:a.search,onChange:a.setSearch,placeholder:"Search for a Connection...",onKeyDown:t=>{t.key==="Escape"&&(a.setSearch(""),t.target.blur())}}),a.viewMode==="cards"?e.jsx("div",{className:"flex-1 overflow-auto p-5",children:N.length===0?e.jsx(B,{image:e.jsx("img",{src:"/emptystate-mcp.svg",alt:"",width:336,height:320,"aria-hidden":"true"}),title:(a.search,"No Connections found"),description:a.search?`No Connections match "${a.search}"`:"Create a connection to get started.",actions:!a.search&&e.jsx(_,{variant:"outline",onClick:()=>o({to:"/$org/store",params:{org:n.slug}}),children:"Browse Store"})}):e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 lg:grid-cols-4 gap-4",children:N.map(t=>e.jsx(De,{connection:t,fallbackIcon:e.jsx(O,{}),onClick:()=>o({to:"/$org/mcps/$connectionId",params:{org:n.slug,connectionId:t.id}}),headerActions:e.jsxs(J,{children:[e.jsx(Z,{asChild:!0,children:e.jsx(_,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:s=>s.stopPropagation(),children:e.jsx(te,{size:20})})}),e.jsxs(ee,{align:"end",onClick:s=>s.stopPropagation(),children:[e.jsxs($,{onClick:s=>{s.stopPropagation(),o({to:"/$org/mcps/$connectionId",params:{org:n.slug,connectionId:t.id}})},children:[e.jsx(Q,{size:16}),"Inspect"]}),e.jsxs($,{variant:"destructive",onClick:s=>{s.stopPropagation(),S({type:"delete",connection:t})},children:[e.jsx(ne,{size:16}),"Delete"]})]})]})},t.id))})}):e.jsx(Te,{columns:me,data:N,isLoading:!1,sortKey:a.sortKey,sortDirection:a.sortDirection,onSort:a.handleSort,onRowClick:t=>o({to:"/$org/mcps/$connectionId",params:{org:n.slug,connectionId:t.id}}),emptyState:a.search?e.jsx(B,{image:e.jsx("img",{src:"/emptystate-mcp.svg",alt:"",width:400,height:178,"aria-hidden":"true"}),title:"No Connections found",description:`No Connections match "${a.search}"`}):e.jsx(B,{image:e.jsx("img",{src:"/emptystate-mcp.svg",alt:"",width:400,height:178,"aria-hidden":"true"}),title:"No Connections found",description:"Create a connection to get started.",actions:e.jsx(_,{variant:"outline",onClick:()=>o({to:"/$org/store",params:{org:n.slug}}),children:"Browse Store"})})})]})}function an(){const n=ge.c(1);let o;return n[0]===Symbol.for("react.memo_cache_sentinel")?(o=e.jsx($e,{children:e.jsx(M.Suspense,{fallback:e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(nt,{size:32,className:"animate-spin text-muted-foreground"})}),children:e.jsx(Ct,{})})}),n[0]=o):o=n[0],o}export{an as default};
@@ -1 +0,0 @@
1
- import{B as o}from"./use-binding-BEnmwZa_.js";import{F as t}from"./index-C4Akli_y.js";const s="mcp.mesh",m=t(o,{target:"draft-7"});export{m as B,s as M};
@@ -1 +0,0 @@
1
- import{c as n,j as i,R as g,C as m,T as u,D as x,P as j,O as N,aZ as b,e as D}from"./index-C4Akli_y.js";import{i as h}from"./X-Di2SR_nX.js";import{c}from"./input-DotiBI6p.js";function k(l){const e=n.c(4);let t;e[0]!==l?({...t}=l,e[0]=l,e[1]=t):t=e[1];let s;return e[2]!==t?(s=i.jsx(g,{"data-slot":"dialog",...t}),e[2]=t,e[3]=s):s=e[3],s}function w(l){const e=n.c(4);let t;e[0]!==l?({...t}=l,e[0]=l,e[1]=t):t=e[1];let s;return e[2]!==t?(s=i.jsx(b,{"data-slot":"dialog-trigger",...t}),e[2]=t,e[3]=s):s=e[3],s}function v(l){const e=n.c(4);let t;e[0]!==l?({...t}=l,e[0]=l,e[1]=t):t=e[1];let s;return e[2]!==t?(s=i.jsx(j,{"data-slot":"dialog-portal",...t}),e[2]=t,e[3]=s):s=e[3],s}function y(l){const e=n.c(8);let t,s;e[0]!==l?({className:t,...s}=l,e[0]=l,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let a;e[3]!==t?(a=c("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-background/60 backdrop-blur-[0.5px]",t),e[3]=t,e[4]=a):a=e[4];let o;return e[5]!==s||e[6]!==a?(o=i.jsx(N,{"data-slot":"dialog-overlay",className:a,...s}),e[5]=s,e[6]=a,e[7]=o):o=e[7],o}function $(l){const e=n.c(6),{className:t}=l;let s;e[0]!==t?(s=c("cursor-pointer ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground","absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2","focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),e[0]=t,e[1]=s):s=e[1];let a,o;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=i.jsx(h,{}),o=i.jsx("span",{className:"sr-only",children:"Close"}),e[2]=a,e[3]=o):(a=e[2],o=e[3]);let r;return e[4]!==s?(r=i.jsxs(D,{className:s,children:[a,o]}),e[4]=s,e[5]=r):r=e[5],r}function T(l){const e=n.c(15);let t,s,a,o;e[0]!==l?({className:s,children:t,closeButtonClassName:a,...o}=l,e[0]=l,e[1]=t,e[2]=s,e[3]=a,e[4]=o):(t=e[1],s=e[2],a=e[3],o=e[4]);let r;e[5]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsx(y,{}),e[5]=r):r=e[5];let d;e[6]!==s?(d=c("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-xl border p-6 shadow-md duration-200 sm:max-w-lg",s),e[6]=s,e[7]=d):d=e[7];let f;e[8]!==a?(f=i.jsx($,{className:a}),e[8]=a,e[9]=f):f=e[9];let p;return e[10]!==t||e[11]!==o||e[12]!==d||e[13]!==f?(p=i.jsxs(v,{"data-slot":"dialog-portal",children:[r,i.jsxs(m,{"data-slot":"dialog-content",className:d,...o,children:[t,f]})]}),e[10]=t,e[11]=o,e[12]=d,e[13]=f,e[14]=p):p=e[14],p}function R(l){const e=n.c(8);let t,s;e[0]!==l?({className:t,...s}=l,e[0]=l,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let a;e[3]!==t?(a=c("flex flex-col gap-2 text-center sm:text-left",t),e[3]=t,e[4]=a):a=e[4];let o;return e[5]!==s||e[6]!==a?(o=i.jsx("div",{"data-slot":"dialog-header",className:a,...s}),e[5]=s,e[6]=a,e[7]=o):o=e[7],o}function O(l){const e=n.c(8);let t,s;e[0]!==l?({className:t,...s}=l,e[0]=l,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let a;e[3]!==t?(a=c("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),e[3]=t,e[4]=a):a=e[4];let o;return e[5]!==s||e[6]!==a?(o=i.jsx("div",{"data-slot":"dialog-footer",className:a,...s}),e[5]=s,e[6]=a,e[7]=o):o=e[7],o}function P(l){const e=n.c(8);let t,s;e[0]!==l?({className:t,...s}=l,e[0]=l,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let a;e[3]!==t?(a=c("text-lg leading-none font-semibold",t),e[3]=t,e[4]=a):a=e[4];let o;return e[5]!==s||e[6]!==a?(o=i.jsx(u,{"data-slot":"dialog-title",className:a,...s}),e[5]=s,e[6]=a,e[7]=o):o=e[7],o}function B(l){const e=n.c(8);let t,s;e[0]!==l?({className:t,...s}=l,e[0]=l,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let a;e[3]!==t?(a=c("text-muted-foreground text-sm",t),e[3]=t,e[4]=a):a=e[4];let o;return e[5]!==s||e[6]!==a?(o=i.jsx(x,{"data-slot":"dialog-description",className:a,...s}),e[5]=s,e[6]=a,e[7]=o):o=e[7],o}export{R as D,P as a,B as b,T as c,k as d,w as e,O as f};
@@ -1 +0,0 @@
1
- import{r as N,s as y,a0 as D,W as k,v as t,V as m,Y as T,H,c as O,j as c}from"./index-C4Akli_y.js";import{I as z,B as V}from"./input-DotiBI6p.js";import{s as R}from"./Plus-C3sMzSb2.js";import{s as L}from"./Trash01-BOhK9CaY.js";const U=({size:o=24,color:e="currentColor",...n})=>N.createElement("svg",{viewBox:"0 0 24 24",width:o,height:o,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},N.createElement("path",{d:"M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10m0-20a15.3 15.3 0 0 0-4 10 15.3 15.3 0 0 0 4 10m0-20C6.477 2 2 6.477 2 12s4.477 10 10 10m0-20c5.523 0 10 4.477 10 10s-4.477 10-10 10M2.5 9h19m-19 6h19"}));U.displayName="Globe02";const B=y({authorizationEndpoint:t().url(),tokenEndpoint:t().url(),introspectionEndpoint:t().url().optional(),clientId:t(),clientSecret:t().optional(),scopes:k(t()),grantType:D(["authorization_code","client_credentials"])}),M=y({name:t(),description:t().optional(),inputSchema:m(t(),T()),outputSchema:m(t(),T()).optional()}),K=y({headers:m(t(),t()).optional()}),$=y({command:t().describe("Command to run (e.g., 'npx', 'node')"),args:k(t()).optional().describe("Command arguments"),cwd:t().optional().describe("Working directory"),envVars:m(t(),t()).optional().describe("Environment variables (encrypted in storage)")}),W=y({id:t().describe("Unique identifier for the connection"),title:t().describe("Human-readable name for the connection"),created_at:t().describe("When the connection was created"),updated_at:t().describe("When the connection was last updated"),created_by:t().describe("User ID who created the connection"),updated_by:t().optional().describe("User ID who last updated the connection"),organization_id:t().describe("Organization ID this connection belongs to"),description:t().nullable().describe("Description of the connection"),icon:t().nullable().describe("Icon URL for the connection"),app_name:t().nullable().describe("Associated app name"),app_id:t().nullable().describe("Associated app ID"),connection_type:D(["HTTP","SSE","Websocket","STDIO"]).describe("Type of connection"),connection_url:t().nullable().describe("URL for HTTP/SSE/WebSocket connections. Null for STDIO."),connection_token:t().nullable().describe("Authentication token (for HTTP connections)"),connection_headers:H([$,K]).nullable().describe("Connection parameters. HTTP: { headers }. STDIO: { command, args, cwd, envVars }"),oauth_config:B.nullable().describe("OAuth configuration"),configuration_state:m(t(),T()).nullable().describe("Configuration state (decrypted)"),configuration_scopes:k(t()).nullable().optional().describe("Configuration scopes"),metadata:m(t(),T()).nullable().describe("Additional metadata (includes repository info)"),tools:k(M).nullable().describe("Discovered tools from MCP"),bindings:k(t()).nullable().describe("Detected bindings"),status:D(["active","inactive","error"]).describe("Current status")});W.omit({created_at:!0,updated_at:!0,created_by:!0,updated_by:!0,organization_id:!0,tools:!0,bindings:!0,status:!0}).partial({id:!0,description:!0,icon:!0,app_name:!0,app_id:!0,connection_url:!0,connection_token:!0,connection_headers:!0,oauth_config:!0,configuration_state:!0,configuration_scopes:!0,metadata:!0});W.partial();function Q(o){return o!=null&&"command"in o}function q(o){const e=o.toLowerCase();return!!(["secret","password","passwd","credential","private","token","bearer","jwt","refresh","session","api_key","apikey","auth_key","access_key","secret_key","private_key","service_key","encryption_key","signing_key","license_key","auth","oauth","client_secret","app_secret","webhook","signing","signature","database_url","db_url","mongo_uri","redis_url","postgres_url","mysql_url","connection_string","dsn","service_role","anon_key","supabase_key","openai","anthropic","stripe","twilio","sendgrid","resend","firebase","sentry","datadog","newrelic","new_relic","pplx","replicate","pinecone","cohere","hugging","hf_token","gh_token","npm_token","certificate","cert","ssl","tls","encryption","salt","hash","hmac","personal_access","github_pat","gitlab_pat","bitbucket_pat"].some(l=>e.includes(l))||["sk_","rk_","whsec_","pk_live","sk_live"].some(l=>e.startsWith(l))||["_key","_secret","_token","_password","_auth","_pat"].some(l=>e.endsWith(l)))}function X(o){const e=O.c(34),{value:n,onChange:r,keyPlaceholder:j,valuePlaceholder:l,className:I}=o,f=j===void 0?"VARIABLE_NAME":j,_=l===void 0?"value...":l;let x;e[0]!==r||e[1]!==n?(x=()=>{r([...n,{key:"",value:""}])},e[0]=r,e[1]=n,e[2]=x):x=e[2];const A=x;let w;e[3]!==r||e[4]!==n?(w=i=>{r(n.filter((d,s)=>s!==i))},e[3]=r,e[4]=n,e[5]=w):w=e[5];const b=w;let S;e[6]!==r||e[7]!==n?(S=(i,d)=>{const s=[...n],a=s[i];a&&(s[i]={key:d,value:a.value},r(s))},e[6]=r,e[7]=n,e[8]=S):S=e[8];const g=S;let C;e[9]!==r||e[10]!==n?(C=(i,d)=>{const s=[...n],a=s[i];a&&(s[i]={key:a.key,value:d},r(s))},e[9]=r,e[10]=n,e[11]=C):C=e[11];const v=C;let u;if(e[12]!==g||e[13]!==b||e[14]!==v||e[15]!==f||e[16]!==n||e[17]!==_){let i;e[19]!==g||e[20]!==b||e[21]!==v||e[22]!==f||e[23]!==_?(i=(d,s)=>c.jsxs("div",{className:"flex gap-2 items-center",children:[c.jsx(z,{placeholder:f,value:d.key,onChange:a=>g(s,a.target.value),className:"h-10 rounded-lg flex-1 font-mono text-sm"}),c.jsx(z,{type:q(d.key)?"password":"text",placeholder:_,value:d.value,onChange:a=>v(s,a.target.value),className:"h-10 rounded-lg flex-1"}),c.jsx(V,{type:"button",variant:"ghost",size:"icon",className:"h-10 w-10 shrink-0 text-muted-foreground hover:text-destructive",onClick:()=>b(s),children:c.jsx(L,{size:16})})]},s),e[19]=g,e[20]=b,e[21]=v,e[22]=f,e[23]=_,e[24]=i):i=e[24],u=n.map(i),e[12]=g,e[13]=b,e[14]=v,e[15]=f,e[16]=n,e[17]=_,e[18]=u}else u=e[18];let E;e[25]===Symbol.for("react.memo_cache_sentinel")?(E=c.jsx(R,{size:16,className:"mr-1"}),e[25]=E):E=e[25];let p;e[26]!==A?(p=c.jsxs(V,{type:"button",variant:"outline",size:"sm",className:"w-full h-9 text-muted-foreground",onClick:A,children:[E,"Add Environment Variable"]}),e[26]=A,e[27]=p):p=e[27];let h;e[28]!==u||e[29]!==p?(h=c.jsxs("div",{className:"flex flex-col gap-2",children:[u,p]}),e[28]=u,e[29]=p,e[30]=h):h=e[30];let P;return e[31]!==I||e[32]!==h?(P=c.jsx("div",{className:I,children:h}),e[31]=I,e[32]=h,e[33]=P):P=e[33],P}function Z(o){const e={};for(const{key:n,value:r}of o)n.trim()&&(e[n.trim()]=r);return e}function ee(o){return o?Object.entries(o).map(([e,n])=>({key:e,value:n})):[]}export{X as E,Z as e,Q as i,ee as r,U as s};
@@ -1 +0,0 @@
1
- import{c as d,j as m,aS as $,bc as j,bd as C,r as f,g as v,be as N,bf as h}from"./index-C4Akli_y.js";import{c as u}from"./input-DotiBI6p.js";function S(t){const e=d.c(8);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);let l;e[3]!==s?(l=u("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",s),e[3]=s,e[4]=l):l=e[4];let r;return e[5]!==o||e[6]!==l?(r=m.jsx($,{"data-slot":"label",className:l,...o}),e[5]=o,e[6]=l,e[7]=r):r=e[7],r}const D=j,b=f.createContext({}),E=t=>{const e=d.c(9);let s;e[0]!==t?({...s}=t,e[0]=t,e[1]=s):s=e[1];let o;e[2]!==s.name?(o={name:s.name},e[2]=s.name,e[3]=o):o=e[3];let l;e[4]!==s?(l=m.jsx(C,{...s}),e[4]=s,e[5]=l):l=e[5];let r;return e[6]!==o||e[7]!==l?(r=m.jsx(b.Provider,{value:o,children:l}),e[6]=o,e[7]=l,e[8]=r):r=e[8],r},x=()=>{const t=d.c(13),e=f.useContext(b),s=f.useContext(I),{getFieldState:o}=N();let l;t[0]!==e.name?(l={name:e.name},t[0]=e.name,t[1]=l):l=t[1];const r=h(l);let a;t[2]!==e.name||t[3]!==r||t[4]!==o?(a=o(e.name,r),t[2]=e.name,t[3]=r,t[4]=o,t[5]=a):a=t[5];const n=a;if(!e)throw new Error("useFormField should be used within <FormField>");const{id:i}=s,c=`${i}-form-item`,F=`${i}-form-item-description`,g=`${i}-form-item-message`;let p;return t[6]!==e.name||t[7]!==n||t[8]!==i||t[9]!==c||t[10]!==F||t[11]!==g?(p={id:i,name:e.name,formItemId:c,formDescriptionId:F,formMessageId:g,...n},t[6]=e.name,t[7]=n,t[8]=i,t[9]=c,t[10]=F,t[11]=g,t[12]=p):p=t[12],p},I=f.createContext({});function M(t){const e=d.c(13);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);const l=f.useId();let r;e[3]!==l?(r={id:l},e[3]=l,e[4]=r):r=e[4];let a;e[5]!==s?(a=u("grid gap-2",s),e[5]=s,e[6]=a):a=e[6];let n;e[7]!==o||e[8]!==a?(n=m.jsx("div",{"data-slot":"form-item",className:a,...o}),e[7]=o,e[8]=a,e[9]=n):n=e[9];let i;return e[10]!==r||e[11]!==n?(i=m.jsx(I.Provider,{value:r,children:n}),e[10]=r,e[11]=n,e[12]=i):i=e[12],i}function P(t){const e=d.c(10);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);const{error:l,formItemId:r}=x(),a=!!l;let n;e[3]!==s?(n=u("text-foreground data-[error=true]:text-destructive",s),e[3]=s,e[4]=n):n=e[4];let i;return e[5]!==r||e[6]!==o||e[7]!==a||e[8]!==n?(i=m.jsx(S,{"data-slot":"form-label","data-error":a,className:n,htmlFor:r,...o}),e[5]=r,e[6]=o,e[7]=a,e[8]=n,e[9]=i):i=e[9],i}function R(t){const e=d.c(7);let s;e[0]!==t?({...s}=t,e[0]=t,e[1]=s):s=e[1];const{error:o,formItemId:l,formDescriptionId:r,formMessageId:a}=x(),n=o?`${r} ${a}`:`${r}`,i=!!o;let c;return e[2]!==l||e[3]!==s||e[4]!==n||e[5]!==i?(c=m.jsx(v,{"data-slot":"form-control",id:l,"aria-describedby":n,"aria-invalid":i,...s}),e[2]=l,e[3]=s,e[4]=n,e[5]=i,e[6]=c):c=e[6],c}function L(t){const e=d.c(9);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);const{formDescriptionId:l}=x();let r;e[3]!==s?(r=u("text-muted-foreground text-sm",s),e[3]=s,e[4]=r):r=e[4];let a;return e[5]!==l||e[6]!==o||e[7]!==r?(a=m.jsx("p",{"data-slot":"form-description",id:l,className:r,...o}),e[5]=l,e[6]=o,e[7]=r,e[8]=a):a=e[8],a}function k(t){const e=d.c(10);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);const{error:l,formMessageId:r}=x(),a=l?String(l?.message??""):o.children;if(!a)return null;let n;e[3]!==s?(n=u("text-destructive text-sm",s),e[3]=s,e[4]=n):n=e[4];let i;return e[5]!==a||e[6]!==r||e[7]!==o||e[8]!==n?(i=m.jsx("p",{"data-slot":"form-message",id:r,className:n,...o,children:a}),e[5]=a,e[6]=r,e[7]=o,e[8]=n,e[9]=i):i=e[9],i}export{E as F,D as a,M as b,P as c,R as d,L as e,k as f};
@@ -1 +0,0 @@
1
- import{r as I,a0 as ye,s as fe,W as G,v as S,Q as Ue,c as W,j as t,h as Be,d as nt,b as it,i as rt,aF as at,w as ct,x as dt,t as Ae}from"./index-C4Akli_y.js";import{I as Me,u as qe,E as mt}from"./use-connection-DRGfApkr.js";import{E as He}from"./error-boundary-BGesyhaJ.js";import{C as Je}from"./checkbox-BS_G5ImZ.js";import{c as te,B as L,I as $e}from"./input-DotiBI6p.js";import{i as ut}from"./ArrowLeft-YNVHoaqm.js";import{C as ft}from"./collection-search-BxG7OTzn.js";import{s as ht}from"./Plus-C3sMzSb2.js";import{i as xt}from"./X-Di2SR_nX.js";import{P as pt}from"./pin-to-sidebar-button-BSWGT8FU.js";import{T as gt,S as bt}from"./switch-CHifjljt.js";import{b as jt,a as yt,i as vt}from"./use-gateway-BLvEfmJw.js";import{u as _t,a as St}from"./use-connection-resources-DaAINPef.js";import{u as Ct}from"./use-gateway-system-prompt-CCBqlzxU.js";import{s as wt}from"./slugify-CEUa2lfQ.js";import{D as Nt,a as It,c as kt,d as Tt}from"./dialog-zdGaBxwi.js";import{F as be,a as $t,b as ve,d as _e,f as Se,c as Qe}from"./form-DbjhNzLy.js";import{R as zt}from"./resource-tabs-BRFCSYqq.js";import{S as Ze,a as Ke,b as Xe,c as Ye,d as je}from"./select-Ddz2YDMz.js";import{T as Pt}from"./textarea-D4LPxHHZ.js";import{a as K,c as X,b as Y,T as ee,i as De}from"./project-context-provider-CjwpGeXi.js";import{a as et}from"./Copy01-BBFg9jKB.js";import{i as Rt}from"./FlipBackward-BE61TB2y.js";import{i as tt}from"./InfoCircle-Bb6yXfW4.js";import{i as Ee}from"./Loading01-cH23qZPY.js";import{a as At,V as Dt,b as Et}from"./layout-DsjrzSQc.js";import"./use-organization-settings-BchwsUUI.js";import"./useQueries-BTessZmq.js";import"./localstorage-keys-Cbw-i0xB.js";import"./useQuery-B-W0X26_.js";import"./badge-DCqUYVs1.js";import"./ChevronDown-CmCEYd2s.js";const st=({size:o=24,color:e="currentColor",...s})=>I.createElement("svg",{viewBox:"0 0 24 24",width:o,height:o,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...s},I.createElement("path",{d:"M7 3v3.4c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C7.76 8 8.04 8 8.6 8h6.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C17 7.24 17 6.96 17 6.4V4m0 17v-6.4c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C16.24 13 15.96 13 15.4 13H8.6c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C7 13.76 7 14.04 7 14.6V21M21 9.325V16.2c0 1.68 0 2.52-.327 3.162a3 3 0 0 1-1.311 1.311C18.72 21 17.88 21 16.2 21H7.8c-1.68 0-2.52 0-3.162-.327a3 3 0 0 1-1.311-1.311C3 18.72 3 17.88 3 16.2V7.8c0-1.68 0-2.52.327-3.162a3 3 0 0 1 1.311-1.311C5.28 3 6.12 3 7.8 3h6.875c.489 0 .733 0 .963.055.204.05.4.13.579.24.201.123.374.296.72.642l3.126 3.126c.346.346.519.519.642.72.11.18.19.374.24.579.055.23.055.474.055.963Z"}));st.displayName="Save01";const ot=({size:o=24,color:e="currentColor",...s})=>I.createElement("svg",{viewBox:"0 0 24 24",width:o,height:o,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...s},I.createElement("path",{d:"m8.59 13.51 6.83 3.98m-.01-10.98-6.82 3.98M21 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm12 7a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"}));ot.displayName="Share07";const Oe=ye(["inclusion","exclusion"]).describe("Tool selection mode: 'inclusion' = include selected (default), 'exclusion' = exclude selected"),Ve=ye(["passthrough","smart_tool_selection","code_execution"]).describe("Gateway tool selection strategy: 'passthrough' (default), 'smart_tool_selection', or 'code_execution'"),Ut=fe({connection_id:S().describe("Connection ID"),selected_tools:G(S()).nullable().describe("Selected tool names. With 'inclusion' mode: null = all tools included. With 'exclusion' mode: null = entire connection excluded"),selected_resources:G(S()).nullable().describe("Selected resource URIs or patterns. Supports * and ** wildcards for pattern matching. With 'inclusion' mode: null = all resources included."),selected_prompts:G(S()).nullable().describe("Selected prompt names. With 'inclusion' mode: null = all prompts included. With 'exclusion' mode: null = entire connection excluded.")}),Mt=fe({id:S().describe("Unique identifier for the gateway"),title:S().describe("Human-readable name for the gateway"),description:S().nullable().describe("Description of the gateway"),icon:S().nullable().optional().describe("Icon URL for the gateway"),created_at:S().describe("When the gateway was created"),updated_at:S().describe("When the gateway was last updated"),created_by:S().describe("User ID who created the gateway"),updated_by:S().optional().describe("User ID who last updated the gateway"),organization_id:S().describe("Organization ID this gateway belongs to"),tool_selection_strategy:Ve.describe("Gateway behavior strategy (metadata for now): 'passthrough', 'smart_tool_selection', or 'code_execution'"),tool_selection_mode:Oe.describe("Tool selection mode: 'inclusion' = include selected, 'exclusion' = exclude selected"),status:ye(["active","inactive"]).describe("Current status"),is_default:Ue().describe("Whether this is the Organization Agent for the organization"),connections:G(Ut).describe("Connections with their selected tools (behavior depends on tool_selection_mode)")});fe({title:S().min(1).max(255).describe("Name for the gateway"),description:S().nullable().optional().describe("Optional description"),tool_selection_strategy:Ve.optional().default("passthrough").describe("Gateway behavior strategy (defaults to 'passthrough')"),tool_selection_mode:Oe.optional().default("inclusion").describe("Tool selection mode (defaults to 'inclusion')"),icon:S().nullable().optional().describe("Optional icon URL"),status:ye(["active","inactive"]).optional().default("active").describe("Initial status"),is_default:Ue().optional().default(!1).describe("Whether this is the Organization Agent for the organization"),connections:G(fe({connection_id:S().describe("Connection ID"),selected_tools:G(S()).nullable().optional().describe("Selected tool names (null/undefined = all tools or full exclusion)"),selected_resources:G(S()).nullable().optional().describe("Selected resource URIs or patterns with * and ** wildcards (null/undefined = all resources)"),selected_prompts:G(S()).nullable().optional().describe("Selected prompt names (null/undefined = all prompts or full exclusion)")})).describe("Connections to include/exclude (can be empty for exclusion mode)")});fe({title:S().min(1).max(255).optional().describe("New name"),description:S().nullable().optional().describe("New description (null to clear)"),tool_selection_strategy:Ve.optional().describe("New gateway behavior strategy"),tool_selection_mode:Oe.optional().describe("New tool selection mode"),icon:S().nullable().optional().describe("New icon URL (null to clear)"),status:ye(["active","inactive"]).optional().describe("New status"),is_default:Ue().optional().describe("Set as Organization Agent for the organization"),connections:G(fe({connection_id:S().describe("Connection ID"),selected_tools:G(S()).nullable().optional().describe("Selected tool names (null/undefined = all tools or full exclusion)"),selected_resources:G(S()).nullable().optional().describe("Selected resource URIs or patterns with * and ** wildcards (null/undefined = all resources)"),selected_prompts:G(S()).nullable().optional().describe("Selected prompt names (null/undefined = all prompts or full exclusion)")})).optional().describe("New connections (replaces existing)")});const Ot=I.memo(function(e){const s=W.c(20),{connection:l,isSelected:a,hasItemsEnabled:i,activeItemsCount:x,totalItemsCount:d,onSelect:m,onToggle:n}=e,c=a?"bg-accent/50":"hover:bg-muted/50";let u;s[0]!==c?(u=te("flex items-center gap-3 p-2 rounded-lg transition-colors will-change-auto",c),s[0]=c,s[1]=u):u=s[1];let r;s[2]!==l.icon||s[3]!==l.title?(r=t.jsx(Me,{icon:l.icon,name:l.title,size:"xs"}),s[2]=l.icon,s[3]=l.title,s[4]=r):r=s[4];let g;s[5]!==l.title?(g=t.jsx("div",{className:"flex-1 min-w-0",children:t.jsx("p",{className:"text-sm font-medium text-foreground truncate",children:l.title})}),s[5]=l.title,s[6]=g):g=s[6];let f;s[7]!==m||s[8]!==r||s[9]!==g?(f=t.jsxs("div",{className:"flex items-center gap-3 flex-1 min-w-0 cursor-pointer",onClick:m,children:[r,g]}),s[7]=m,s[8]=r,s[9]=g,s[10]=f):f=s[10];let p;s[11]!==x||s[12]!==i||s[13]!==n||s[14]!==d?(p=d>0&&t.jsxs(t.Fragment,{children:[t.jsxs("span",{className:"text-xs text-muted-foreground shrink-0",children:[x,"/",d]}),t.jsx(Je,{checked:i,onCheckedChange:n,onClick:Ft})]}),s[11]=x,s[12]=i,s[13]=n,s[14]=d,s[15]=p):p=s[15];let j;return s[16]!==u||s[17]!==f||s[18]!==p?(j=t.jsxs("div",{className:u,children:[f,p]}),s[16]=u,s[17]=f,s[18]=p,s[19]=j):j=s[19],j}),Vt=I.memo(function(e){const s=W.c(18),{connectionId:l,item:a,isSelected:i,onToggle:x}=e,d=`item-${l}-${a.id}`,m=i?"text-foreground":"text-muted-foreground";let n;s[0]!==m?(n=te("text-sm font-medium",m),s[0]=m,s[1]=n):n=s[1];let c;s[2]!==a.name||s[3]!==n?(c=t.jsx("div",{className:"flex items-center gap-2 mb-1",children:t.jsx("span",{className:n,children:a.name})}),s[2]=a.name,s[3]=n,s[4]=c):c=s[4];let u;s[5]!==a.description?(u=a.description&&t.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:a.description}),s[5]=a.description,s[6]=u):u=s[6];let r;s[7]!==c||s[8]!==u?(r=t.jsxs("div",{className:"flex-1 min-w-0",children:[c,u]}),s[7]=c,s[8]=u,s[9]=r):r=s[9];const g=`item-${l}-${a.id}`;let f;s[10]!==i||s[11]!==x||s[12]!==g?(f=t.jsx("div",{className:"flex items-center shrink-0",children:t.jsx(Je,{id:g,checked:i,onCheckedChange:x,onClick:Gt})}),s[10]=i,s[11]=x,s[12]=g,s[13]=f):f=s[13];let p;return s[14]!==d||s[15]!==r||s[16]!==f?(p=t.jsxs("label",{className:"flex items-center gap-3 p-3 rounded-lg hover:bg-muted/50 cursor-pointer group will-change-auto",htmlFor:d,children:[r,f]}),s[14]=d,s[15]=r,s[16]=f,s[17]=p):p=s[17],p});function lt({itemSet:o,onItemSetChange:e,getItems:s,itemLabel:l,emptyItemsMessage:a,extraContent:i}){const[x,d]=I.useState(""),m=I.useDeferredValue(x),[n,c]=I.useState("all"),[u,r]=I.useState(!1),g=I.useRef(new Set(Object.keys(o))),f=qe({searchTerm:m.trim()||void 0}),p=g.current,j=[...p.values()].map(h=>f.find(_=>_.id===h)).filter(h=>h!==void 0),y=f.filter(h=>!p.has(h.id)),v=[...j,...y],b=h=>{const _=o[h];return _!==void 0&&_.length>0},C=v.filter(h=>{if(n==="all")return!0;const _=b(h.id);return n==="selected"?_:n==="unselected"?!_:!0}),[N,k]=I.useState(v[0]?.id??null),w=N?v.find(h=>h.id===N)??null:null,E=w?s(w):[],A=(h,_)=>o[h]?.includes(_)??!1,B=(h,_)=>{const $=o[h]??[],z=$.includes(_),U={...o};if(z){const P=$.filter(M=>M!==_);P.length===0?delete U[h]:U[h]=P}else U[h]=[...$,_];e(U)},Z=h=>{const _=v.find(D=>D.id===h);if(!_)return;const $=s(_);if($.length===0)return;const z=o[h]??[],U=$.map(D=>D.id),P=z.length>0&&U.every(D=>z.includes(D)),M={...o};P?delete M[h]:(M[h]=U,k(h)),e(M)},O=h=>{k(h),r(!0)},V=()=>{r(!1)};return t.jsxs("div",{className:"flex h-full",children:[t.jsxs("div",{className:te("w-full md:w-80 border-r border-border flex flex-col",u&&"hidden md:flex"),children:[t.jsx(ft,{value:x,onChange:d,placeholder:"Search Connections..."}),t.jsxs("div",{className:"flex gap-1 p-2 border-b border-border",children:[t.jsx("button",{onClick:()=>c("all"),className:te("flex-1 px-3 py-1.5 text-xs font-medium rounded-md transition-colors border cursor-pointer",n==="all"?"bg-muted border-border":"border-border opacity-75 hover:opacity-100"),children:"All"}),t.jsx("button",{onClick:()=>c("selected"),className:te("flex-1 px-3 py-1.5 text-xs font-medium rounded-md transition-colors border cursor-pointer",n==="selected"?"bg-muted border-border":"border-border opacity-75 hover:opacity-100"),children:"Selected"}),t.jsx("button",{onClick:()=>c("unselected"),className:te("flex-1 px-3 py-1.5 text-xs font-medium rounded-md transition-colors border cursor-pointer",n==="unselected"?"bg-muted border-border":"border-border opacity-75 hover:opacity-100"),children:"Unselected"})]}),t.jsx("div",{className:"flex-1 overflow-auto",children:C.length===0?t.jsx("div",{className:"p-4 text-sm text-muted-foreground text-center",children:x?"No connections found":n==="selected"?"No servers selected":n==="unselected"?"No unselected servers":"No connections available"}):t.jsx("div",{className:"p-2 space-y-1",children:C.map(h=>{const $=s(h).length,z=o[h.id]?.length??0;return t.jsx(Ot,{connection:h,isSelected:N===h.id,hasItemsEnabled:b(h.id),activeItemsCount:z,totalItemsCount:$,onSelect:()=>O(h.id),onToggle:()=>Z(h.id)},h.id)})})})]}),t.jsx("div",{className:te("flex-1 flex-col",u?"flex":"hidden md:flex"),children:w?t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:"md:hidden border-b border-border p-4 flex items-center gap-3",children:[t.jsx(L,{variant:"ghost",size:"sm",onClick:V,className:"h-8 w-8 p-0 shrink-0",children:t.jsx(ut,{size:20})}),t.jsxs("div",{className:"flex items-center gap-3 flex-1 min-w-0",children:[t.jsx(Me,{icon:w.icon,name:w.title,size:"sm"}),t.jsxs("div",{className:"flex-1 min-w-0",children:[t.jsx("h3",{className:"text-base font-medium text-foreground truncate",children:w.title}),w.description&&t.jsx("p",{className:"text-sm text-muted-foreground truncate",children:w.description})]})]})]}),i,t.jsx("div",{className:"flex-1 overflow-auto p-4",children:E.length===0?t.jsx("div",{className:"text-sm text-muted-foreground text-center py-8",children:a||`This connection has no ${l} available`}):t.jsx("div",{className:"space-y-2",children:E.map(h=>t.jsx(Vt,{connectionId:w.id,item:h,isSelected:A(w.id,h.id),onToggle:()=>B(w.id,h.id)},h.id))})})]}):t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsxs("div",{className:"text-sm text-muted-foreground text-center",children:["Select a connection to view its ",l]})})})]})}function Ft(o){return o.stopPropagation()}function Gt(o){return o.stopPropagation()}function Lt(o){const e=W.c(6),{promptSet:s,onPromptSetChange:l,connectionPrompts:a}=o;let i;e[0]!==a?(i=m=>(a.get(m.id)??[]).map(Wt),e[0]=a,e[1]=i):i=e[1];const x=i;let d;return e[2]!==x||e[3]!==l||e[4]!==s?(d=t.jsx(lt,{itemSet:s,onItemSetChange:l,getItems:x,itemLabel:"prompts",emptyItemsMessage:"This connection has no prompts available"}),e[2]=x,e[3]=l,e[4]=s,e[5]=d):d=e[5],d}function Wt(o){return{id:o.name,name:o.name,description:o.description}}function Bt(o){return o.includes("*")}function qt(o){const e=W.c(27),{patterns:s,onAddPattern:l,onRemovePattern:a}=o,[i,x]=I.useState("");let d;e[0]!==i||e[1]!==l||e[2]!==s?(d=()=>{const r=i.trim();r&&!s.includes(r)&&(l(r),x(""))},e[0]=i,e[1]=l,e[2]=s,e[3]=d):d=e[3];const m=d;let n;e[4]!==m?(n=r=>{r.key==="Enter"&&(r.preventDefault(),m())},e[4]=m,e[5]=n):n=e[5];const c=n;let u;if(e[6]!==m||e[7]!==c||e[8]!==i||e[9]!==a||e[10]!==s){const r=s.filter(Bt);let g;e[12]===Symbol.for("react.memo_cache_sentinel")?(g=t.jsx("code",{children:"*"}),e[12]=g):g=e[12];let f;e[13]===Symbol.for("react.memo_cache_sentinel")?(f=t.jsxs("div",{className:"text-xs text-muted-foreground",children:["Add URI patterns to match multiple resources. Use ",g," for single segment and ",t.jsx("code",{children:"**"})," for multiple segments."]}),e[13]=f):f=e[13];let p;e[14]===Symbol.for("react.memo_cache_sentinel")?(p=k=>x(k.target.value),e[14]=p):p=e[14];let j;e[15]!==c||e[16]!==i?(j=t.jsx($e,{value:i,onChange:p,onKeyDown:c,placeholder:"e.g., file:///**/*.ts or db://users/*",className:"flex-1 text-sm"}),e[15]=c,e[16]=i,e[17]=j):j=e[17];let y;e[18]!==i?(y=i.trim(),e[18]=i,e[19]=y):y=e[19];const v=!y;let b;e[20]===Symbol.for("react.memo_cache_sentinel")?(b=t.jsx(ht,{size:16}),e[20]=b):b=e[20];let C;e[21]!==m||e[22]!==v?(C=t.jsx(L,{type:"button",variant:"outline",size:"sm",onClick:m,disabled:v,children:b}),e[21]=m,e[22]=v,e[23]=C):C=e[23];let N;e[24]!==C||e[25]!==j?(N=t.jsxs("div",{className:"flex gap-2",children:[j,C]}),e[24]=C,e[25]=j,e[26]=N):N=e[26],u=t.jsxs("div",{className:"border-b border-border p-4 space-y-3",children:[f,N,r.length>0&&t.jsx("div",{className:"flex flex-wrap gap-2",children:r.map(k=>t.jsxs("div",{className:"flex items-center gap-1 px-2 py-1 bg-muted rounded-md text-xs",children:[t.jsx("code",{className:"text-foreground",children:k}),t.jsx("button",{type:"button",onClick:()=>a(k),className:"text-muted-foreground hover:text-foreground",children:t.jsx(xt,{size:12})})]},k))})]}),e[6]=m,e[7]=c,e[8]=i,e[9]=a,e[10]=s,e[11]=u}else u=e[11];return u}function Ht(o){const e=W.c(23),{resourceSet:s,onResourceSetChange:l,connectionResources:a}=o,[i]=I.useState(null);let x;e[0]!==a?(x=b=>(a.get(b.id)??[]).map(Jt),e[0]=a,e[1]=x):x=e[1];const d=x;let m;e[2]!==l||e[3]!==s?(m=(b,C)=>{const N=s[b]??[];N.includes(C)||l({...s,[b]:[...N,C]})},e[2]=l,e[3]=s,e[4]=m):m=e[4];const n=m;let c;e[5]!==l||e[6]!==s?(c=(b,C)=>{const k=(s[b]??[]).filter(w=>w!==C);if(k.length===0){const w={...s};delete w[b],l(w)}else l({...s,[b]:k})},e[5]=l,e[6]=s,e[7]=c):c=e[7];const u=c;let r;e[8]!==l?(r=b=>{l(b)},e[8]=l,e[9]=r):r=e[9];const g=r;let f;e[10]!==s||e[11]!==i?(f=i?s[i]??[]:[],e[10]=s,e[11]=i,e[12]=f):f=e[12];const p=f;let j;e[13]!==n||e[14]!==u||e[15]!==i||e[16]!==p?(j=i?t.jsx(qt,{patterns:p,onAddPattern:b=>n(i,b),onRemovePattern:b=>u(i,b)}):null,e[13]=n,e[14]=u,e[15]=i,e[16]=p,e[17]=j):j=e[17];const y=j;let v;return e[18]!==y||e[19]!==d||e[20]!==g||e[21]!==s?(v=t.jsx("div",{className:"h-full",children:t.jsx(lt,{itemSet:s,onItemSetChange:g,getItems:d,itemLabel:"resources",emptyItemsMessage:"This connection has no resources available",extraContent:y})}),e[18]=y,e[19]=d,e[20]=g,e[21]=s,e[22]=v):v=e[22],v}function Jt(o){return{id:o.uri,name:o.name||o.uri,description:o.description||o.uri}}function Qt(o){const s=new TextEncoder().encode(o),l=Array.from(s,a=>String.fromCharCode(a)).join("");return btoa(l)}function Zt(o){const e=W.c(52),{serverName:s,gatewayUrl:l}=o,[a,i]=I.useState(!1),[x,d]=I.useState(null),m=wt(s);let n,c,u,r;if(e[0]!==l||e[1]!==m){const R={type:"http",url:l},he={[m]:R};n=JSON.stringify(he,null,2);const se=pe=>JSON.stringify({...R,headers:{"x-mesh-client":pe}},null,2),oe=Qt(se("Cursor"));c=`cursor://anysphere.cursor-deeplink/mcp/install?name=${encodeURIComponent(m)}&config=${encodeURIComponent(oe)}`;const xe=se("Claude Code");u=m;let Q;e[6]===Symbol.for("react.memo_cache_sentinel")?(Q=/'/g,e[6]=Q):Q=e[6],r=xe.replace(Q,"'\\''"),e[0]=l,e[1]=m,e[2]=n,e[3]=c,e[4]=u,e[5]=r}else n=e[2],c=e[3],u=e[4],r=e[5];const g=`claude mcp add "${u}" --config '${r}'`;let f;e[7]!==n?(f=async()=>{await navigator.clipboard.writeText(n),i(!0),Ae.success("Configuration copied to clipboard"),setTimeout(()=>i(!1),2e3)},e[7]=n,e[8]=f):f=e[8];const p=f;let j;e[9]===Symbol.for("react.memo_cache_sentinel")?(j=async(R,he)=>{await navigator.clipboard.writeText(R),d(he),Ae.success(`${he} command copied`),setTimeout(()=>d(null),2e3)},e[9]=j):j=e[9];const y=j,v=Kt;let b;e[10]===Symbol.for("react.memo_cache_sentinel")?(b=t.jsx("div",{children:t.jsx("h4",{className:"text-sm font-medium text-foreground mb-1",children:"Install in your IDE"})}),e[10]=b):b=e[10];let C;e[11]!==a?(C=a?t.jsx(De,{size:14}):t.jsx(et,{size:14}),e[11]=a,e[12]=C):C=e[12];let N;e[13]!==p||e[14]!==C?(N=t.jsx(Y,{asChild:!0,children:t.jsx(L,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 shrink-0",onClick:p,children:C})}),e[13]=p,e[14]=C,e[15]=N):N=e[15];let k;e[16]===Symbol.for("react.memo_cache_sentinel")?(k=t.jsx(ee,{children:"Copy configuration"}),e[16]=k):k=e[16];let w;e[17]!==N?(w=t.jsx("div",{className:"absolute top-2 right-2",children:t.jsx(K,{children:t.jsxs(X,{children:[N,k]})})}),e[17]=N,e[18]=w):w=e[18];let E;e[19]!==n||e[20]!==p?(E=t.jsx("pre",{className:"text-xs font-mono text-foreground overflow-auto max-h-40 whitespace-pre-wrap wrap-break-word cursor-pointer",onClick:p,children:n}),e[19]=n,e[20]=p,e[21]=E):E=e[21];let A;e[22]!==E||e[23]!==w?(A=t.jsxs("div",{className:"relative flex flex-col gap-2 p-3 bg-muted/50 rounded-lg",children:[w,E]}),e[22]=E,e[23]=w,e[24]=A):A=e[24];let B;e[25]!==c?(B=()=>v(c),e[25]=c,e[26]=B):B=e[26];let Z,O;e[27]===Symbol.for("react.memo_cache_sentinel")?(Z=t.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"h-6 w-6",style:{filter:"brightness(0) saturate(100%) invert(11%) sepia(8%) saturate(785%) hue-rotate(1deg) brightness(95%) contrast(89%)"}}),O=t.jsx("span",{className:"text-sm font-medium",children:"Cursor"}),e[27]=Z,e[28]=O):(Z=e[27],O=e[28]);let V;e[29]!==B?(V=t.jsx(Y,{asChild:!0,children:t.jsxs(L,{variant:"outline",className:"h-auto py-3 px-4 justify-center gap-2 flex-1 min-w-fit",onClick:B,children:[Z,O]})}),e[29]=B,e[30]=V):V=e[30];let h;e[31]===Symbol.for("react.memo_cache_sentinel")?(h=t.jsx(ee,{children:"Add to Cursor"}),e[31]=h):h=e[31];let _;e[32]!==V?(_=t.jsx(K,{children:t.jsxs(X,{children:[V,h]})}),e[32]=V,e[33]=_):_=e[33];let $;e[34]!==g?($=()=>y(g,"Claude"),e[34]=g,e[35]=$):$=e[35];let z,U;e[36]===Symbol.for("react.memo_cache_sentinel")?(z=t.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude Code",className:"h-6 w-6",style:{filter:"brightness(0) saturate(100%) invert(55%) sepia(31%) saturate(1264%) hue-rotate(331deg) brightness(92%) contrast(86%)"}}),U=t.jsx("span",{className:"text-sm font-medium",children:"Claude Code"}),e[36]=z,e[37]=U):(z=e[36],U=e[37]);let P;e[38]!==x?(P=x==="Claude"&&t.jsx(De,{size:14,className:"ml-2 text-green-500"}),e[38]=x,e[39]=P):P=e[39];let M;e[40]!==$||e[41]!==P?(M=t.jsx(Y,{asChild:!0,children:t.jsxs(L,{variant:"outline",className:"h-auto py-3 px-4 justify-center gap-2 flex-1 min-w-fit",onClick:$,children:[z,U,P]})}),e[40]=$,e[41]=P,e[42]=M):M=e[42];let D;e[43]===Symbol.for("react.memo_cache_sentinel")?(D=t.jsx(ee,{children:"Add to Claude Code"}),e[43]=D):D=e[43];let q;e[44]!==M?(q=t.jsx(K,{children:t.jsxs(X,{children:[M,D]})}),e[44]=M,e[45]=q):q=e[45];let H;e[46]!==_||e[47]!==q?(H=t.jsxs("div",{className:"flex flex-wrap gap-2",children:[_,q]}),e[46]=_,e[47]=q,e[48]=H):H=e[48];let J;return e[49]!==A||e[50]!==H?(J=t.jsxs("div",{className:"flex flex-col gap-4",children:[b,A,H]}),e[49]=A,e[50]=H,e[51]=J):J=e[51],J}function Kt(o){window.open(o,"_blank")}const Xt=Mt.pick({title:!0,description:!0,status:!0,tool_selection_mode:!0,tool_selection_strategy:!0}).extend({title:S().min(1,"Name is required").max(255)});function Ge(o,e){const s={};for(const l of o.connections)if(l.selected_tools===null){const a=e.get(l.connection_id)??[];a.length>0&&(s[l.connection_id]=a)}else l.selected_tools.length>0&&(s[l.connection_id]=l.selected_tools);return s}function Le(o){const e={};for(const s of o.connections)s.selected_resources!==null&&s.selected_resources!==void 0&&s.selected_resources.length>0&&(e[s.connection_id]=s.selected_resources);return e}function We(o){const e={};for(const s of o.connections)s.selected_prompts!==null&&s.selected_prompts!==void 0&&s.selected_prompts.length>0&&(e[s.connection_id]=s.selected_prompts);return e}function Yt(o,e,s,l){const a=new Set([...Object.keys(o),...Object.keys(e),...Object.keys(s)]);return Array.from(a).map(i=>{const x=o[i]??[],d=l.get(i)??[],m=d.length>0&&d.every(n=>x.includes(n));return{connection_id:i,selected_tools:x.length===0||m?null:x,selected_resources:e[i]??null,selected_prompts:s[i]??null}})}function es(o){const e=W.c(27),{open:s,onOpenChange:l,gateway:a}=o,[i,x]=I.useState(!1),d=`${window.location.origin}/mcp/gateway/${a.id}`;let m;e[0]!==d?(m=async()=>{await navigator.clipboard.writeText(d),x(!0),Ae.success("Agent URL copied to clipboard"),setTimeout(()=>x(!1),2e3)},e[0]=d,e[1]=m):m=e[1];const n=m;let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=t.jsx(Nt,{children:t.jsx(It,{children:"Share Agent"})}),e[2]=c):c=e[2];let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=t.jsxs("div",{children:[t.jsx("h4",{className:"text-sm font-medium text-foreground mb-1",children:"Agent URL"}),t.jsx("p",{className:"text-xs text-muted-foreground",children:"Share this URL to connect to the agent"})]}),e[3]=u):u=e[3];let r;e[4]!==d?(r=t.jsx($e,{value:d,readOnly:!0,className:"font-mono text-xs"}),e[4]=d,e[5]=r):r=e[5];let g;e[6]!==i?(g=i?t.jsx(De,{size:16}):t.jsx(et,{size:16}),e[6]=i,e[7]=g):g=e[7];let f;e[8]!==n||e[9]!==g?(f=t.jsx(L,{type:"button",variant:"outline",size:"icon",onClick:n,className:"shrink-0",children:g}),e[8]=n,e[9]=g,e[10]=f):f=e[10];let p;e[11]!==r||e[12]!==f?(p=t.jsxs("div",{className:"flex flex-col gap-3",children:[u,t.jsxs("div",{className:"flex gap-2",children:[r,f]})]}),e[11]=r,e[12]=f,e[13]=p):p=e[13];let j;e[14]!==a.id||e[15]!==a.title?(j=a.title||`agent-${a.id.slice(0,8)}`,e[14]=a.id,e[15]=a.title,e[16]=j):j=e[16];let y;e[17]!==d||e[18]!==j?(y=t.jsx("div",{className:"border-t border-border pt-6",children:t.jsx(Zt,{serverName:j,gatewayUrl:d})}),e[17]=d,e[18]=j,e[19]=y):y=e[19];let v;e[20]!==p||e[21]!==y?(v=t.jsxs(kt,{className:"max-w-2xl max-h-[80vh] overflow-y-auto",children:[c,t.jsxs("div",{className:"flex flex-col gap-6",children:[p,y]})]}),e[20]=p,e[21]=y,e[22]=v):v=e[22];let b;return e[23]!==l||e[24]!==s||e[25]!==v?(b=t.jsx(Tt,{open:s,onOpenChange:l,children:v}),e[23]=l,e[24]=s,e[25]=v,e[26]=b):b=e[26],b}function ts(o){const e=W.c(31),{form:s,icon:l,gatewayId:a}=o,[i,x]=Ct(a);let d;e[0]!==s?(d=s.watch("title")||"Agent",e[0]=s,e[1]=d):d=e[1];let m;e[2]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx(vt,{}),e[2]=m):m=e[2];let n;e[3]!==l||e[4]!==d?(n=t.jsx(Me,{icon:l,name:d,size:"lg",className:"shrink-0 shadow-sm",fallbackIcon:m}),e[3]=l,e[4]=d,e[5]=n):n=e[5];let c;e[6]!==s.control?(c=t.jsx(be,{control:s.control,name:"status",render:is}),e[6]=s.control,e[7]=c):c=e[7];let u;e[8]!==n||e[9]!==c?(u=t.jsxs("div",{className:"flex items-start justify-between",children:[n,c]}),e[8]=n,e[9]=c,e[10]=u):u=e[10];let r;e[11]!==s.control?(r=t.jsxs("div",{className:"flex flex-col",children:[t.jsx(be,{control:s.control,name:"title",render:ns}),t.jsx(be,{control:s.control,name:"description",render:ls})]}),e[11]=s.control,e[12]=r):r=e[12];let g;e[13]!==u||e[14]!==r?(g=t.jsxs("div",{className:"flex flex-col gap-4 p-5 border-b border-border",children:[u,r]}),e[13]=u,e[14]=r,e[15]=g):g=e[15];let f;e[16]!==s.control?(f=t.jsxs("div",{className:"flex flex-col gap-4 p-5 border-b border-border",children:[t.jsx(be,{control:s.control,name:"tool_selection_mode",render:os}),t.jsx(be,{control:s.control,name:"tool_selection_strategy",render:ss})]}),e[16]=s.control,e[17]=f):f=e[17];let p;e[18]===Symbol.for("react.memo_cache_sentinel")?(p=t.jsxs("div",{children:[t.jsx("h4",{className:"text-sm font-medium text-foreground mb-1",children:"System Prompt"}),t.jsx("p",{className:"text-xs text-muted-foreground",children:"Stored locally for now"})]}),e[18]=p):p=e[18];let j;e[19]!==x?(j=C=>x(C.target.value),e[19]=x,e[20]=j):j=e[20];let y;e[21]!==i||e[22]!==j?(y=t.jsxs("div",{className:"flex flex-col gap-3 p-5",children:[p,t.jsx(Pt,{value:i,onChange:j,placeholder:"Enter system prompt instructions...",className:"min-h-[240px] resize-none text-sm leading-relaxed"})]}),e[21]=i,e[22]=j,e[23]=y):y=e[23];let v;e[24]!==y||e[25]!==g||e[26]!==f?(v=t.jsxs("div",{className:"flex flex-col",children:[g,f,y]}),e[24]=y,e[25]=g,e[26]=f,e[27]=v):v=e[27];let b;return e[28]!==s||e[29]!==v?(b=t.jsx("div",{className:"flex flex-col h-full overflow-auto",children:t.jsx($t,{...s,children:v})}),e[28]=s,e[29]=v,e[30]=b):b=e[30],b}function ss(o){const{field:e}=o;return t.jsxs(ve,{children:[t.jsxs("div",{className:"flex items-center justify-between gap-3",children:[t.jsx(Qe,{className:"mb-0",children:"Agent Strategy"}),t.jsxs("div",{className:"flex items-center gap-1.5",children:[t.jsx(K,{children:t.jsxs(X,{children:[t.jsx(Y,{asChild:!0,children:t.jsx(L,{type:"button",variant:"ghost",size:"icon",className:"size-7","aria-label":"Agent strategy help",children:t.jsx(tt,{size:14,className:"text-muted-foreground"})})}),t.jsx(ee,{side:"left",className:"max-w-sm",children:t.jsxs("div",{className:"text-xs space-y-1",children:[t.jsxs("div",{children:[t.jsx("strong",{children:"Passthrough:"})," Pass tools through as-is (default)."]}),t.jsxs("div",{children:[t.jsx("strong",{children:"Smart Tool Selection:"})," ","Intelligent tool selection behavior."]}),t.jsxs("div",{children:[t.jsx("strong",{children:"Code Execution:"})," Code execution behavior."]})]})})]})}),t.jsxs(Ze,{value:e.value,onValueChange:e.onChange,children:[t.jsx(_e,{children:t.jsx(Ke,{className:"w-[180px]",children:t.jsx(Xe,{})})}),t.jsxs(Ye,{children:[t.jsx(je,{value:"passthrough",children:"Passthrough"}),t.jsx(je,{value:"smart_tool_selection",children:"Smart Tool Selection"}),t.jsx(je,{value:"code_execution",children:"Code Execution"})]})]})]})]}),t.jsx(Se,{})]})}function os(o){const{field:e}=o;return t.jsxs(ve,{children:[t.jsxs("div",{className:"flex items-center justify-between gap-3",children:[t.jsx(Qe,{className:"mb-0",children:"Selection Mode"}),t.jsxs("div",{className:"flex items-center gap-1.5",children:[t.jsx(K,{children:t.jsxs(X,{children:[t.jsx(Y,{asChild:!0,children:t.jsx(L,{type:"button",variant:"ghost",size:"icon",className:"size-7","aria-label":"Selection mode help",children:t.jsx(tt,{size:14,className:"text-muted-foreground"})})}),t.jsx(ee,{side:"left",className:"max-w-sm",children:t.jsxs("div",{className:"text-xs space-y-1",children:[t.jsxs("div",{children:[t.jsx("strong",{children:"Include:"})," Only selected items are exposed."]}),t.jsxs("div",{children:[t.jsx("strong",{children:"Exclude:"})," All items except selected ones are exposed."]})]})})]})}),t.jsxs(Ze,{value:e.value,onValueChange:e.onChange,children:[t.jsx(_e,{children:t.jsx(Ke,{className:"w-[180px]",children:t.jsx(Xe,{})})}),t.jsxs(Ye,{children:[t.jsx(je,{value:"inclusion",children:"Include Selected"}),t.jsx(je,{value:"exclusion",children:"Exclude Selected"})]})]})]})]}),t.jsx(Se,{})]})}function ls(o){const{field:e}=o;return t.jsxs(ve,{className:"w-full space-y-0",children:[t.jsx(_e,{children:t.jsx($e,{...e,value:e.value||"",className:"h-auto text-base text-muted-foreground leading-6 px-0 border-transparent hover:border-input focus:border-input bg-transparent transition-all",placeholder:"Add a description..."})}),t.jsx(Se,{})]})}function ns(o){const{field:e}=o;return t.jsxs(ve,{className:"w-full space-y-0",children:[t.jsx(_e,{children:t.jsx($e,{...e,className:"h-auto text-lg! font-medium leading-7 px-0 border-transparent hover:border-input focus:border-input bg-transparent transition-all",placeholder:"Agent Name"})}),t.jsx(Se,{})]})}function is(o){const{field:e}=o;return t.jsxs(ve,{children:[t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx("span",{className:"text-sm text-muted-foreground",children:e.value==="active"?"Active":"Inactive"}),t.jsx(_e,{children:t.jsx(bt,{checked:e.value==="active",onCheckedChange:s=>e.onChange(s?"active":"inactive")})})]}),t.jsx(Se,{})]})}function rs(o){const e=W.c(82),{gateway:s,gatewayId:l,requestedTabId:a}=o,x=rt().location.href,d=at();let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m={from:"/$org/gateways/$gatewayId"},e[0]=m):m=e[0];const n=Be(m),c=yt();let u;e[1]===Symbol.for("react.memo_cache_sentinel")?(u={},e[1]=u):u=e[1];const r=qe(u);let g;e[2]!==r?(g=r.map(cs),e[2]=r,e[3]=g):g=e[3];const f=g,{promptsMap:p}=_t(f),{resourcesMap:j}=St(f);let y;if(e[4]!==r){y=new Map;for(const T of r)T.tools&&T.tools.length>0&&y.set(T.id,T.tools.map(as));e[4]=r,e[5]=y}else y=e[5];let v;e[6]!==y||e[7]!==s?(v=()=>Ge(s,y),e[6]=y,e[7]=s,e[8]=v):v=e[8];const[b,C]=I.useState(v);let N;e[9]!==s?(N=()=>Le(s),e[9]=s,e[10]=N):N=e[10];const[k,w]=I.useState(N);let E;e[11]!==s?(E=()=>We(s),e[11]=s,e[12]=E):E=e[12];const[A,B]=I.useState(E),[Z,O]=I.useState(!1),[V,h]=I.useState(!1);let _;e[13]===Symbol.for("react.memo_cache_sentinel")?(_=T=>{C(T),O(!0)},e[13]=_):_=e[13];const $=_;let z;e[14]===Symbol.for("react.memo_cache_sentinel")?(z=T=>{w(T),O(!0)},e[14]=z):z=e[14];const U=z;let P;e[15]===Symbol.for("react.memo_cache_sentinel")?(P=T=>{B(T),O(!0)},e[15]=P):P=e[15];const M=P;let D;e[16]===Symbol.for("react.memo_cache_sentinel")?(D=ct(Xt),e[16]=D):D=e[16];const q=s.tool_selection_mode??"inclusion",H=s.tool_selection_strategy??"passthrough";let J;e[17]!==s.description||e[18]!==s.status||e[19]!==s.title||e[20]!==q||e[21]!==H?(J={resolver:D,defaultValues:{title:s.title,description:s.description,status:s.status,tool_selection_mode:q,tool_selection_strategy:H}},e[17]=s.description,e[18]=s.status,e[19]=s.title,e[20]=q,e[21]=H,e[22]=J):J=e[22];const R=dt(J),se=R.formState.isDirty||Z;let oe;e[23]!==c.update||e[24]!==y||e[25]!==R||e[26]!==l||e[27]!==A||e[28]!==k||e[29]!==b?(oe=async()=>{const T=R.getValues(),Re=Yt(b,k,A,y);await c.update.mutateAsync({id:l,data:{title:T.title,description:T.description,status:T.status,tool_selection_mode:T.tool_selection_mode,tool_selection_strategy:T.tool_selection_strategy,connections:Re}}),R.reset(T),O(!1)},e[23]=c.update,e[24]=y,e[25]=R,e[26]=l,e[27]=A,e[28]=k,e[29]=b,e[30]=oe):oe=e[30];const xe=oe;let Q;e[31]!==y||e[32]!==R||e[33]!==s?(Q=()=>{R.reset({title:s.title,description:s.description,status:s.status,tool_selection_mode:s.tool_selection_mode??"inclusion",tool_selection_strategy:s.tool_selection_strategy??"passthrough"}),C(Ge(s,y)),w(Le(s)),B(We(s)),O(!1)},e[31]=y,e[32]=R,e[33]=s,e[34]=Q):Q=e[34];const pe=Q;let Ce;e[35]===Symbol.for("react.memo_cache_sentinel")?(Ce=[{id:"settings",label:"Settings"},{id:"tools",label:"Tools"},{id:"resources",label:"Resources"},{id:"prompts",label:"Prompts"}],e[35]=Ce):Ce=e[35];const Fe=Ce,F=Fe.some(T=>T.id===a)?a:"settings";let we;e[36]!==n?(we=T=>{n({search:Re=>({...Re,tab:T}),replace:!0})},e[36]=n,e[37]=we):we=e[37];const ze=we,ge=c.update.isPending;let le;e[38]!==d.history?(le=()=>d.history.back(),e[38]=d.history,e[39]=le):le=e[39];let ne;e[40]!==F||e[41]!==ze?(ne=t.jsx(At,{children:t.jsx(zt,{tabs:Fe,activeTab:F,onTabChange:ze})}),e[40]=F,e[41]=ze,e[42]=ne):ne=e[42];let ie;e[43]!==pe||e[44]!==xe||e[45]!==se||e[46]!==ge?(ie=se&&t.jsxs(t.Fragment,{children:[t.jsx(K,{children:t.jsxs(X,{delayDuration:0,children:[t.jsx(Y,{asChild:!0,children:t.jsx("span",{className:"inline-block",children:t.jsx(L,{variant:"outline",size:"icon",className:"size-7 border border-input",disabled:ge,onClick:pe,"aria-label":"Cancel",children:t.jsx(Rt,{size:14})})})}),t.jsx(ee,{side:"bottom",children:"Cancel"})]})}),t.jsx(K,{children:t.jsxs(X,{delayDuration:0,children:[t.jsx(Y,{asChild:!0,children:t.jsx("span",{className:"inline-block",children:t.jsx(L,{variant:"outline",size:"icon",className:"size-7 border border-input",disabled:ge,onClick:xe,"aria-label":"Save",children:ge?t.jsx(Ee,{size:14,className:"animate-spin"}):t.jsx(st,{size:14})})})}),t.jsx(ee,{side:"bottom",children:"Save"})]})})]}),e[43]=pe,e[44]=xe,e[45]=se,e[46]=ge,e[47]=ie):ie=e[47];let Ne;e[48]===Symbol.for("react.memo_cache_sentinel")?(Ne=()=>h(!0),e[48]=Ne):Ne=e[48];let Ie;e[49]===Symbol.for("react.memo_cache_sentinel")?(Ie=t.jsx(K,{children:t.jsxs(X,{delayDuration:0,children:[t.jsx(Y,{asChild:!0,children:t.jsx("span",{className:"inline-block",children:t.jsx(L,{variant:"outline",size:"icon",className:"size-7 border border-input",onClick:Ne,"aria-label":"Share",children:t.jsx(ot,{size:14})})})}),t.jsx(ee,{side:"bottom",children:"Share"})]})}),e[49]=Ie):Ie=e[49];const Pe=s.icon??"cpu_chip";let re;e[50]!==s.title||e[51]!==Pe||e[52]!==x?(re=t.jsx(pt,{title:s.title,url:x,icon:Pe}),e[50]=s.title,e[51]=Pe,e[52]=x,e[53]=re):re=e[53];let ae;e[54]!==ie||e[55]!==re?(ae=t.jsxs(Dt,{children:[ie,Ie,re]}),e[54]=ie,e[55]=re,e[56]=ae):ae=e[56];let ke;e[57]===Symbol.for("react.memo_cache_sentinel")?(ke=t.jsx("div",{className:"flex h-full items-center justify-center",children:t.jsx(Ee,{size:32,className:"animate-spin text-muted-foreground"})}),e[57]=ke):ke=e[57];let ce;e[58]!==F||e[59]!==p||e[60]!==j||e[61]!==R||e[62]!==s.icon||e[63]!==l||e[64]!==A||e[65]!==k||e[66]!==b?(ce=F==="settings"?t.jsx(ts,{form:R,icon:s.icon,gatewayId:l}):F==="tools"?t.jsx(gt,{toolSet:b,onToolSetChange:$}):F==="resources"?t.jsx(Ht,{resourceSet:k,onResourceSetChange:U,connectionResources:j}):F==="prompts"?t.jsx(Lt,{promptSet:A,onPromptSetChange:M,connectionPrompts:p}):null,e[58]=F,e[59]=p,e[60]=j,e[61]=R,e[62]=s.icon,e[63]=l,e[64]=A,e[65]=k,e[66]=b,e[67]=ce):ce=e[67];let de;e[68]!==ce?(de=t.jsx(I.Suspense,{fallback:ke,children:ce}),e[68]=ce,e[69]=de):de=e[69];let me;e[70]!==F||e[71]!==de?(me=t.jsx("div",{className:"flex h-full w-full bg-background overflow-hidden",children:t.jsx("div",{className:"flex-1 flex flex-col min-w-0 bg-background overflow-hidden",children:t.jsx("div",{className:"h-full overflow-auto",children:t.jsx(He,{children:de},F)})})}),e[70]=F,e[71]=de,e[72]=me):me=e[72];let ue;e[73]!==s||e[74]!==V?(ue=t.jsx(es,{open:V,onOpenChange:h,gateway:s}),e[73]=s,e[74]=V,e[75]=ue):ue=e[75];let Te;return e[76]!==le||e[77]!==ne||e[78]!==ae||e[79]!==me||e[80]!==ue?(Te=t.jsxs(Et,{onBack:le,children:[ne,ae,me,ue]}),e[76]=le,e[77]=ne,e[78]=ae,e[79]=me,e[80]=ue,e[81]=Te):Te=e[81],Te}function as(o){return o.name}function cs(o){return o.id}function ds(){const o=W.c(10);let e;o[0]===Symbol.for("react.memo_cache_sentinel")?(e={from:"/$org/gateways/$gatewayId"},o[0]=e):e=o[0];const s=Be(e);let l;o[1]===Symbol.for("react.memo_cache_sentinel")?(l={from:"/shell/$org/gateways/$gatewayId"},o[1]=l):l=o[1];const{gatewayId:a,org:i}=nt(l);let x;o[2]===Symbol.for("react.memo_cache_sentinel")?(x={from:"/shell/$org/gateways/$gatewayId"},o[2]=x):x=o[2];const m=it(x).tab||"settings",n=jt(a);if(!n){let u;return o[3]!==s||o[4]!==i?(u=t.jsx("div",{className:"flex h-full w-full bg-background",children:t.jsx(mt,{title:"Agent not found",description:"This Agent may have been deleted or you may not have access.",actions:t.jsx(L,{variant:"outline",onClick:()=>s({to:"/$org/gateways",params:{org:i}}),children:"Back to agents"})})}),o[3]=s,o[4]=i,o[5]=u):u=o[5],u}let c;return o[6]!==n||o[7]!==a||o[8]!==m?(c=t.jsx(rs,{gateway:n,gatewayId:a,requestedTabId:m}),o[6]=n,o[7]=a,o[8]=m,o[9]=c):c=o[9],c}function ms(){const o=W.c(1);let e;return o[0]===Symbol.for("react.memo_cache_sentinel")?(e=t.jsx(He,{children:t.jsx(I.Suspense,{fallback:t.jsx("div",{className:"flex h-full items-center justify-center bg-background",children:t.jsx(Ee,{size:32,className:"animate-spin text-muted-foreground"})}),children:t.jsx(ds,{})})}),o[0]=e):e=o[0],e}function Ws(){const o=W.c(1);let e;return o[0]===Symbol.for("react.memo_cache_sentinel")?(e=t.jsx(ms,{}),o[0]=e):e=o[0],e}export{Ws as default};
@@ -1 +0,0 @@
1
- import{c as te,j as t,r as se,h as ne,t as re}from"./index-C4Akli_y.js";import{C as ie}from"./collection-header-Cuit0QLN.js";import{C as ae}from"./collection-page-DxiA3ghM.js";import{C as le}from"./collection-search-BxG7OTzn.js";import{C as ce}from"./collection-table-wrapper-DPx6-uyv.js";import{C as de}from"./connection-card-Bg0hUMHn.js";import{u as me,E as q,I as ue}from"./use-connection-DRGfApkr.js";import{E as ge}from"./error-boundary-BGesyhaJ.js";import{a as pe,u as he,i as j}from"./use-gateway-BLvEfmJw.js";import{u as fe,s as Q}from"./use-list-state-CB2CSejS.js";import{u as xe}from"./project-context-provider-CjwpGeXi.js";import{c as je,b as ye,d as we,A as Ce,e as Ne,g as De,a as Se,f as ve}from"./alert-dialog-BCer35jC.js";import{B as oe}from"./badge-DCqUYVs1.js";import{B as J}from"./input-DotiBI6p.js";import{b as U,D as X,a as Y,c as G}from"./dropdown-menu-C3Qw1eKg.js";import{i as Z}from"./DotsVertical-B2qEmOww.js";import{i as be}from"./Loading01-cH23qZPY.js";import{s as ee}from"./Trash01-BOhK9CaY.js";import"./collection-display-button-CBDNG6XS.js";import"./Grid01-B2ejilI6.js";import"./view-mode-toggle-BWDHvHnZ.js";import"./card-DDmjO8CR.js";import"./use-mobile-CjWnbjwQ.js";function ke(e,n){switch(n.type){case"delete":return{mode:"deleting",gateway:n.gateway};case"close":return{mode:"idle"}}}function _e(){const e=te.c(68),{org:n}=xe(),r=ne();let y;e[0]!==n.slug?(y={namespace:n.slug,resource:"gateways"},e[0]=n.slug,e[1]=y):y=e[1];const s=fe(y),i=pe(),x=he(s);let w;e[2]===Symbol.for("react.memo_cache_sentinel")?(w={},e[2]=w):w=e[2];const R=me(w);let C;e[3]===Symbol.for("react.memo_cache_sentinel")?(C={mode:"idle"},e[3]=C):C=e[3];const[a,N]=se.useReducer(ke,C);let D;e[4]!==i.create||e[5]!==R.length||e[6]!==r||e[7]!==n.slug?(D=async()=>{if(R.length===0){re.error("Create at least one Connection first");return}const o=await i.create.mutateAsync({title:"New Agent",description:"Agents let you securely expose integrated tools to the outside world.",status:"active",tool_selection_strategy:"passthrough",tool_selection_mode:"inclusion",connections:[]});r({to:"/$org/gateways/$gatewayId",params:{org:n.slug,gatewayId:o.id}})},e[4]=i.create,e[5]=R.length,e[6]=r,e[7]=n.slug,e[8]=D):D=e[8];const T=D;let S;e[9]!==i.delete||e[10]!==a.gateway||e[11]!==a.mode?(S=async()=>{if(a.mode!=="deleting")return;const o=a.gateway.id;N({type:"close"});try{await i.delete.mutateAsync(o)}catch{}},e[9]=i.delete,e[10]=a.gateway,e[11]=a.mode,e[12]=S):S=e[12];const O=S;let v,b,k,_,I,A;e[13]===Symbol.for("react.memo_cache_sentinel")?(b={id:"icon",header:"",render:Ge,cellClassName:"w-16 shrink-0",wrap:!0},k={id:"title",header:"Name",render:Be,cellClassName:"w-48 min-w-0 shrink-0",sortable:!0},_={id:"description",header:"Description",render:Ke,cellClassName:"flex-1 min-w-0",wrap:!0,sortable:!0},I={id:"mode",header:"Mode",accessor:Ee,cellClassName:"w-[100px]"},A={id:"connections",header:"Connections",render:Pe,cellClassName:"w-24 shrink-0"},v={id:"status",header:"Status",render:ze,cellClassName:"w-24 shrink-0",sortable:!0},e[13]=v,e[14]=b,e[15]=k,e[16]=_,e[17]=I,e[18]=A):(v=e[13],b=e[14],k=e[15],_=e[16],I=e[17],A=e[18]);let $;e[19]!==r||e[20]!==n.slug?($=[b,k,_,I,A,v,{id:"actions",header:"",render:o=>t.jsxs(U,{children:[t.jsx(X,{asChild:!0,children:t.jsx(J,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:Me,children:t.jsx(Z,{size:20})})}),t.jsxs(Y,{align:"end",onClick:$e,children:[t.jsxs(G,{onClick:l=>{l.stopPropagation(),r({to:"/$org/gateways/$gatewayId",params:{org:n.slug,gatewayId:o.id}})},children:[t.jsx(Q,{size:16}),"Inspect"]}),t.jsxs(G,{variant:"destructive",onClick:l=>{l.stopPropagation(),N({type:"delete",gateway:o})},children:[t.jsx(ee,{size:16}),"Delete"]})]})]}),cellClassName:"w-12 shrink-0"}],e[19]=r,e[20]=n.slug,e[21]=$):$=e[21];const V=$,H=i.create.isPending?"Creating...":"Create Agent";let M;e[22]!==i.create.isPending||e[23]!==T||e[24]!==H?(M=t.jsx(J,{onClick:T,size:"sm",className:"h-7 px-3 rounded-lg text-sm font-medium",disabled:i.create.isPending,children:H}),e[22]=i.create.isPending,e[23]=T,e[24]=H,e[25]=M):M=e[25];const L=M,F=a.mode==="deleting";let z;e[26]===Symbol.for("react.memo_cache_sentinel")?(z=o=>!o&&N({type:"close"}),e[26]=z):z=e[26];let P;e[27]===Symbol.for("react.memo_cache_sentinel")?(P=t.jsx(je,{children:"Delete Agent?"}),e[27]=P):P=e[27];const W=a.mode==="deleting"&&a.gateway.title;let c;e[28]!==W?(c=t.jsxs(ye,{children:[P,t.jsxs(we,{children:["This action cannot be undone. This will permanently delete"," ",t.jsx("span",{className:"font-medium text-foreground",children:W}),"."]})]}),e[28]=W,e[29]=c):c=e[29];let E;e[30]===Symbol.for("react.memo_cache_sentinel")?(E=t.jsx(Ce,{children:"Cancel"}),e[30]=E):E=e[30];let d;e[31]!==O?(d=t.jsxs(Ne,{children:[E,t.jsx(De,{onClick:O,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]}),e[31]=O,e[32]=d):d=e[32];let m;e[33]!==c||e[34]!==d?(m=t.jsxs(Se,{children:[c,d]}),e[33]=c,e[34]=d,e[35]=m):m=e[35];let u;e[36]!==F||e[37]!==m?(u=t.jsx(ve,{open:F,onOpenChange:z,children:m}),e[36]=F,e[37]=m,e[38]=u):u=e[38];let K;e[39]===Symbol.for("react.memo_cache_sentinel")?(K=[{id:"title",label:"Name"},{id:"description",label:"Description"},{id:"status",label:"Status"}],e[39]=K):K=e[39];let g;e[40]!==L||e[41]!==s.handleSort||e[42]!==s.setViewMode||e[43]!==s.sortDirection||e[44]!==s.sortKey||e[45]!==s.viewMode?(g=t.jsx(ie,{title:"Agents",viewMode:s.viewMode,onViewModeChange:s.setViewMode,sortKey:s.sortKey,sortDirection:s.sortDirection,onSort:s.handleSort,sortOptions:K,ctaButton:L}),e[40]=L,e[41]=s.handleSort,e[42]=s.setViewMode,e[43]=s.sortDirection,e[44]=s.sortKey,e[45]=s.viewMode,e[46]=g):g=e[46];let p;e[47]!==s?(p=o=>{o.key==="Escape"&&(s.setSearch(""),o.target.blur())},e[47]=s,e[48]=p):p=e[48];let h;e[49]!==s.search||e[50]!==s.setSearch||e[51]!==p?(h=t.jsx(le,{value:s.search,onChange:s.setSearch,placeholder:"Search for an agent...",onKeyDown:p}),e[49]=s.search,e[50]=s.setSearch,e[51]=p,e[52]=h):h=e[52];let f;e[53]!==V||e[54]!==x||e[55]!==s.handleSort||e[56]!==s.search||e[57]!==s.sortDirection||e[58]!==s.sortKey||e[59]!==s.viewMode||e[60]!==r||e[61]!==n.slug?(f=s.viewMode==="cards"?t.jsx("div",{className:"flex-1 overflow-auto p-5",children:x.length===0?t.jsx(q,{image:t.jsx(j,{size:36,className:"text-muted-foreground"}),title:s.search?"No agents found":"No agents yet",description:s.search?`No agents match "${s.search}"`:"Create an agent to aggregate tools from multiple Connections."}):t.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 lg:grid-cols-4 gap-4",children:x.map(o=>t.jsx(de,{connection:{id:o.id,title:o.title,description:o.description,icon:o.icon,status:o.status},fallbackIcon:t.jsx(j,{}),onClick:()=>r({to:"/$org/gateways/$gatewayId",params:{org:n.slug,gatewayId:o.id}}),footer:t.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[t.jsxs("span",{children:[o.connections.length," connection",o.connections.length!==1?"s":""]}),t.jsx("span",{children:"•"}),t.jsx("span",{children:o.tool_selection_mode==="exclusion"?"Exclude":"Include"})]}),headerActions:t.jsxs(U,{children:[t.jsx(X,{asChild:!0,children:t.jsx(J,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:Ae,children:t.jsx(Z,{size:20})})}),t.jsxs(Y,{align:"end",onClick:Ie,children:[t.jsxs(G,{onClick:l=>{l.stopPropagation(),r({to:"/$org/gateways/$gatewayId",params:{org:n.slug,gatewayId:o.id}})},children:[t.jsx(Q,{size:16}),"Inspect"]}),t.jsxs(G,{variant:"destructive",onClick:l=>{l.stopPropagation(),N({type:"delete",gateway:o})},children:[t.jsx(ee,{size:16}),"Delete"]})]})]})},o.id))})}):t.jsx(ce,{columns:V,data:x,isLoading:!1,sortKey:s.sortKey,sortDirection:s.sortDirection,onSort:s.handleSort,onRowClick:o=>r({to:"/$org/gateways/$gatewayId",params:{org:n.slug,gatewayId:o.id}}),emptyState:s.search?t.jsx(q,{image:t.jsx(j,{size:36,className:"text-muted-foreground"}),title:"No agents found",description:`No agents match "${s.search}"`}):t.jsx(q,{image:t.jsx(j,{size:36,className:"text-muted-foreground"}),title:"No agents yet",description:"Create an agent to aggregate tools from multiple Connections."})}),e[53]=V,e[54]=x,e[55]=s.handleSort,e[56]=s.search,e[57]=s.sortDirection,e[58]=s.sortKey,e[59]=s.viewMode,e[60]=r,e[61]=n.slug,e[62]=f):f=e[62];let B;return e[63]!==u||e[64]!==g||e[65]!==h||e[66]!==f?(B=t.jsxs(ae,{children:[u,g,h,f]}),e[63]=u,e[64]=g,e[65]=h,e[66]=f,e[67]=B):B=e[67],B}function Ie(e){return e.stopPropagation()}function Ae(e){return e.stopPropagation()}function $e(e){return e.stopPropagation()}function Me(e){return e.stopPropagation()}function ze(e){return t.jsx(oe,{variant:e.status==="active"?"default":"outline",children:e.status})}function Pe(e){return t.jsx("span",{className:"text-sm text-muted-foreground",children:e.connections.length})}function Ee(e){return t.jsx(oe,{variant:"outline",className:"text-xs",children:e.tool_selection_mode==="exclusion"?"Exclude":"Include"})}function Ke(e){return t.jsx("span",{className:"text-sm text-foreground line-clamp-2",children:e.description||"—"})}function Be(e){return t.jsx("span",{className:"text-sm font-medium text-foreground truncate",children:e.title})}function Ge(e){return t.jsx(ue,{icon:e.icon,name:e.title,size:"sm",className:"shrink-0 shadow-sm",fallbackIcon:t.jsx(j,{size:16})})}function lt(){const e=te.c(1);let n;return e[0]===Symbol.for("react.memo_cache_sentinel")?(n=t.jsx(ge,{children:t.jsx(se.Suspense,{fallback:t.jsx("div",{className:"flex h-full items-center justify-center",children:t.jsx(be,{size:32,className:"animate-spin text-muted-foreground"})}),children:t.jsx(_e,{})})}),e[0]=n):n=e[0],n}export{lt as default};
@@ -1 +0,0 @@
1
- import{c as u,j as i,a as w,r as C,h as E}from"./index-C4Akli_y.js";import{C as _}from"./card-DDmjO8CR.js";import{c as v,I as $,B as k}from"./input-DotiBI6p.js";import{A}from"./avatar-D_QIlSd5.js";import{i as O}from"./AlertCircle-CEZnzBK4.js";import{s as L}from"./Plus-C3sMzSb2.js";import{C as D}from"./create-organization-dialog-CC0rYuMf.js";import"./alert-dialog-BCer35jC.js";import"./form-DbjhNzLy.js";import"./spinner-uWjdkCaT.js";function F(t){const e=u.c(10),{children:n,className:l,onNavigate:s,showHoverRing:r}=t,x=r===void 0?!1:r;let o;e[0]!==s?(o=p=>{s&&s(p)},e[0]=s,e[1]=o):o=e[1];const m=o,d=s&&"cursor-pointer",c=x&&"hover:ring-2 hover:ring-primary";let a;e[2]!==l||e[3]!==d||e[4]!==c?(a=v("group transition-all flex flex-col gap-0",d,c,l),e[2]=l,e[3]=d,e[4]=c,e[5]=a):a=e[5];let g;return e[6]!==n||e[7]!==m||e[8]!==a?(g=i.jsx(_,{className:a,onClick:m,children:n}),e[6]=n,e[7]=m,e[8]=a,e[9]=g):g=e[9],g}function H(t){const e=u.c(7),{url:n,fallback:l,shape:s,size:r,objectFit:x,className:o}=t,m=s===void 0?"square":s,d=r===void 0?"lg":r,c=x===void 0?"contain":x;let a;return e[0]!==o||e[1]!==l||e[2]!==c||e[3]!==m||e[4]!==d||e[5]!==n?(a=i.jsx(A,{url:n,fallback:l,shape:m,size:d,objectFit:c,className:o}),e[0]=o,e[1]=l,e[2]=c,e[3]=m,e[4]=d,e[5]=n,e[6]=a):a=e[6],a}function R(t){const e=u.c(5),{children:n,className:l}=t;let s;e[0]!==l?(s=v("p-4 flex flex-col gap-4",l),e[0]=l,e[1]=s):s=e[1];let r;return e[2]!==n||e[3]!==s?(r=i.jsx("div",{className:s,children:n}),e[2]=n,e[3]=s,e[4]=r):r=e[4],r}function B(t){const e=u.c(5),{children:n,className:l}=t;let s;e[0]!==l?(s=v("font-medium truncate",l),e[0]=l,e[1]=s):s=e[1];let r;return e[2]!==n||e[3]!==s?(r=i.jsx("p",{className:s,children:n}),e[2]=n,e[3]=s,e[4]=r):r=e[4],r}function G(t){const e=u.c(5),{children:n,className:l}=t;let s;e[0]!==l?(s=v("text-sm text-muted-foreground truncate",l),e[0]=l,e[1]=s):s=e[1];let r;return e[2]!==n||e[3]!==s?(r=i.jsx("h3",{className:s,children:n}),e[2]=n,e[3]=s,e[4]=r):r=e[4],r}function q(t){const e=u.c(5),{children:n,className:l}=t;let s;e[0]!==l?(s=v("flex flex-col gap-[2px]",l),e[0]=l,e[1]=s):s=e[1];let r;return e[2]!==n||e[3]!==s?(r=i.jsx("div",{className:s,children:n}),e[2]=n,e[3]=s,e[4]=r):r=e[4],r}function I(t){const e=u.c(5),{children:n,className:l}=t;let s;e[0]!==l?(s=v("flex justify-between items-start",l),e[0]=l,e[1]=s):s=e[1];let r;return e[2]!==n||e[3]!==s?(r=i.jsx("div",{className:s,children:n}),e[2]=n,e[3]=s,e[4]=r):r=e[4],r}function M(t){const e=u.c(5),{children:n,className:l}=t;let s;e[0]!==l?(s=v("p-4 border-t border-border flex justify-between items-center",l),e[0]=l,e[1]=s):s=e[1];let r;return e[2]!==n||e[3]!==s?(r=i.jsx("div",{className:s,children:n}),e[2]=n,e[3]=s,e[4]=r):r=e[4],r}function Q(t){const e=u.c(5),{children:n,className:l}=t;let s;e[0]!==l?(s=v("flex items-center text-xs text-muted-foreground",l),e[0]=l,e[1]=s):s=e[1];let r;return e[2]!==n||e[3]!==s?(r=i.jsx("div",{className:s,children:n}),e[2]=n,e[3]=s,e[4]=r):r=e[4],r}function T(){const t=u.c(3);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=i.jsx("div",{className:"flex justify-between items-start",children:i.jsx("div",{className:"h-12 w-12 bg-muted rounded-lg animate-pulse"})}),t[0]=e):e=t[0];let n;t[1]===Symbol.for("react.memo_cache_sentinel")?(n=i.jsxs("div",{className:"p-4 flex flex-col gap-4",children:[e,i.jsxs("div",{className:"flex flex-col gap-[2px]",children:[i.jsx("div",{className:"h-4 w-32 bg-muted rounded-lg animate-pulse"}),i.jsx("div",{className:"h-4 w-40 bg-muted rounded-lg animate-pulse"})]})]}),t[1]=n):n=t[1];let l;return t[2]===Symbol.for("react.memo_cache_sentinel")?(l=i.jsxs(_,{className:"group transition-colors flex flex-col",children:[n,i.jsxs("div",{className:"p-4 border-t border-border flex justify-between items-center",children:[i.jsx("div",{className:"h-6 w-6 bg-muted rounded-full animate-pulse"}),i.jsx("div",{className:"h-6 w-6 bg-muted rounded-full animate-pulse -ml-2"})]})]}),t[2]=l):l=t[2],l}const b=Object.assign(F,{Avatar:H,AvatarSection:I,Header:R,Title:B,Subtitle:G,Content:q,Footer:M,Badge:Q,Skeleton:T}),P={0:"gap-0",1:"gap-1",2:"gap-2",3:"gap-3",4:"gap-4",5:"gap-5",6:"gap-6",8:"gap-8"},V={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6",7:"grid-cols-7",8:"grid-cols-8"},X={1:"@min-3xl:grid-cols-1",2:"@min-3xl:grid-cols-2",3:"@min-3xl:grid-cols-3",4:"@min-3xl:grid-cols-4",5:"@min-3xl:grid-cols-5",6:"@min-3xl:grid-cols-6",7:"@min-3xl:grid-cols-7",8:"@min-3xl:grid-cols-8"},J={1:"@min-6xl:grid-cols-1",2:"@min-6xl:grid-cols-2",3:"@min-6xl:grid-cols-3",4:"@min-6xl:grid-cols-4",5:"@min-6xl:grid-cols-5",6:"@min-6xl:grid-cols-6",7:"@min-6xl:grid-cols-7",8:"@min-6xl:grid-cols-8"},K={1:"@min-7xl:grid-cols-1",2:"@min-7xl:grid-cols-2",3:"@min-7xl:grid-cols-3",4:"@min-7xl:grid-cols-4",5:"@min-7xl:grid-cols-5",6:"@min-7xl:grid-cols-6",7:"@min-7xl:grid-cols-7",8:"@min-7xl:grid-cols-8"},U={1:"@min-8xl:grid-cols-1",2:"@min-8xl:grid-cols-2",3:"@min-8xl:grid-cols-3",4:"@min-8xl:grid-cols-4",5:"@min-8xl:grid-cols-5",6:"@min-8xl:grid-cols-6",7:"@min-8xl:grid-cols-7",8:"@min-8xl:grid-cols-8"};function z(t){const e=u.c(13),{children:n,columns:l,gap:s,className:r}=t;let x;e[0]!==l?(x=l===void 0?{sm:2,md:3,lg:4}:l,e[0]=l,e[1]=x):x=e[1];const o=x,d=P[s===void 0?4:s],c=o.sm&&V[o.sm],a=o.md&&X[o.md],g=o.lg&&J[o.lg],p=o.xl&&K[o.xl],j=o["2xl"]&&U[o["2xl"]];let h;e[2]!==r||e[3]!==d||e[4]!==c||e[5]!==a||e[6]!==g||e[7]!==p||e[8]!==j?(h=v("w-full grid",d,c,a,g,p,j,r),e[2]=r,e[3]=d,e[4]=c,e[5]=a,e[6]=g,e[7]=p,e[8]=j,e[9]=h):h=e[9];const N=h;let f;return e[10]!==n||e[11]!==N?(f=i.jsx("div",{className:N,children:n}),e[10]=n,e[11]=N,e[12]=f):f=e[12],f}function W(t){const e=u.c(9),{count:n,columns:l,gap:s,className:r}=t,x=n===void 0?8:n;let o;e[0]!==l?(o=l===void 0?{sm:2,md:3,lg:4}:l,e[0]=l,e[1]=o):o=e[1];const m=o,d=s===void 0?4:s;let c;e[2]!==x?(c=Array.from({length:x}).map(Y),e[2]=x,e[3]=c):c=e[3];let a;return e[4]!==r||e[5]!==m||e[6]!==d||e[7]!==c?(a=i.jsx(z,{columns:m,gap:d,className:r,children:c}),e[4]=r,e[5]=m,e[6]=d,e[7]=c,e[8]=a):a=e[8],a}function Y(t,e){return i.jsxs("div",{className:"bg-card hover:bg-accent transition-colors flex flex-col rounded-lg animate-pulse",children:[i.jsxs("div",{className:"p-4 flex flex-col gap-4",children:[i.jsx("div",{className:"h-12 w-12 bg-muted rounded-lg"}),i.jsx("div",{className:"h-4 w-32 bg-muted rounded-lg"}),i.jsx("div",{className:"h-4 w-32 bg-muted rounded-lg"})]}),i.jsxs("div",{className:"p-4 border-t border-border flex items-center",children:[i.jsx("div",{className:"h-6 w-6 bg-muted rounded-full animate-pulse"}),i.jsx("div",{className:"h-6 w-6 bg-muted rounded-full animate-pulse -ml-2"}),i.jsx("div",{className:"h-6 w-6 bg-muted rounded-full animate-pulse -ml-2"})]})]},e)}const S=Object.assign(z,{Skeleton:W});function Z(t){const e=u.c(14),{query:n}=t,{data:l}=w.useListOrganizations(),s=E();let r;e[0]!==l||e[1]!==n?(r=l?n?(()=>{const c=n.toLowerCase();return l.filter(a=>a.name.toLowerCase().includes(c)||a.slug.toLowerCase().includes(c))})():l:[],e[0]=l,e[1]=n,e[2]=r):r=e[2];const x=r;if(!l||l.length===0){let c;return e[3]===Symbol.for("react.memo_cache_sentinel")?(c=i.jsx("div",{className:"flex flex-col items-center justify-center min-h-[400px] gap-4 p-8",children:i.jsx("div",{className:"text-sm text-muted-foreground text-center",children:"No organizations yet. Create your first organization to get started."})}),e[3]=c):c=e[3],c}if(x.length===0){let c;return e[4]!==n?(c=i.jsx("div",{className:"flex flex-col items-center justify-center min-h-[400px] gap-4 p-8",children:i.jsxs("div",{className:"text-sm text-muted-foreground text-center",children:['No organizations found matching "',n,'".']})}),e[4]=n,e[5]=c):c=e[5],c}let o;e[6]===Symbol.for("react.memo_cache_sentinel")?(o={sm:2,md:3,lg:4},e[6]=o):o=e[6];let m;if(e[7]!==x||e[8]!==s){let c;e[10]!==s?(c=a=>i.jsxs(b,{onNavigate:()=>s({to:"/$org",params:{org:a.slug}}),children:[i.jsxs(b.Header,{children:[i.jsx(b.AvatarSection,{children:i.jsx(b.Avatar,{url:a.logo||"",fallback:a.name,size:"lg",objectFit:"contain"})}),i.jsxs(b.Content,{children:[i.jsxs(b.Subtitle,{children:["@",a.slug]}),i.jsx(b.Title,{children:a.name})]})]}),i.jsx(b.Footer,{children:i.jsxs("div",{className:"text-xs text-muted-foreground",children:["Created:"," ",new Date(a.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})]})})]},a.id),e[10]=s,e[11]=c):c=e[11],m=x.map(c),e[7]=x,e[8]=s,e[9]=m}else m=e[9];let d;return e[12]!==m?(d=i.jsx(S,{columns:o,children:m}),e[12]=m,e[13]=d):d=e[13],d}function ee(t){const e=u.c(3),{error:n}=t;let l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l=i.jsx(O,{size:24,className:"text-destructive"}),e[0]=l):l=e[0];let s;return e[1]!==n.message?(s=i.jsxs("div",{className:"flex flex-col items-center justify-center min-h-[400px] gap-4 p-8",children:[l,i.jsxs("div",{className:"text-sm text-muted-foreground text-center",children:["Error loading organizations: ",n.message]})]}),e[1]=n.message,e[2]=s):s=e[2],s}function te(){const t=u.c(20),{error:e,isPending:n}=w.useListOrganizations(),[l,s]=C.useState(""),[r,x]=C.useState(!1),o=C.useDeferredValue(l);if(n){let f;t[0]===Symbol.for("react.memo_cache_sentinel")?(f=i.jsx("div",{className:"flex items-center justify-between mb-8",children:i.jsx("h2",{className:"text-xl font-medium",children:"My organizations"})}),t[0]=f):f=t[0];let y;return t[1]===Symbol.for("react.memo_cache_sentinel")?(y=i.jsxs("div",{className:"max-w-6xl mx-auto p-8",children:[f,i.jsx("div",{className:"@container",children:i.jsx(S.Skeleton,{count:8,columns:{sm:2,md:3,lg:4}})})]}),t[1]=y):y=t[1],y}if(e){let f;return t[2]!==e?(f=i.jsx(ee,{error:e}),t[2]=e,t[3]=f):f=t[3],f}let m;t[4]===Symbol.for("react.memo_cache_sentinel")?(m=i.jsx("h2",{className:"text-xl font-medium",children:"My organizations"}),t[4]=m):m=t[4];let d;t[5]===Symbol.for("react.memo_cache_sentinel")?(d=f=>s(f.target.value),t[5]=d):d=t[5];let c;t[6]!==l?(c=i.jsx($,{className:"max-w-xs",placeholder:"Search",value:l,onChange:d}),t[6]=l,t[7]=c):c=t[7];let a;t[8]===Symbol.for("react.memo_cache_sentinel")?(a=i.jsxs(k,{variant:"default",onClick:()=>x(!0),children:[i.jsx(L,{size:16}),i.jsx("span",{children:"New organization"})]}),t[8]=a):a=t[8];let g;t[9]!==c?(g=i.jsxs("div",{className:"flex items-center justify-between mb-8",children:[m,i.jsxs("div",{className:"flex items-center gap-2",children:[c,a]})]}),t[9]=c,t[10]=g):g=t[10];let p;t[11]===Symbol.for("react.memo_cache_sentinel")?(p=i.jsx(S.Skeleton,{count:8,columns:{sm:2,md:3,lg:4}}),t[11]=p):p=t[11];let j;t[12]!==o?(j=i.jsx("div",{className:"@container",children:i.jsx(C.Suspense,{fallback:p,children:i.jsx(Z,{query:o})})}),t[12]=o,t[13]=j):j=t[13];let h;t[14]!==r?(h=i.jsx(D,{open:r,onOpenChange:x}),t[14]=r,t[15]=h):h=t[15];let N;return t[16]!==g||t[17]!==j||t[18]!==h?(N=i.jsxs("div",{className:"max-w-6xl mx-auto p-8",children:[g,j,h]}),t[16]=g,t[17]=j,t[18]=h,t[19]=N):N=t[19],N}function xe(){const t=u.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=i.jsx("div",{className:"min-h-full",children:i.jsx(te,{})}),t[0]=e):e=t[0],e}export{xe as default};