@decocms/mesh 1.0.0-alpha.38 → 1.0.0-alpha.39
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.
- package/dist/client/assets/{AlertCircle-BRDn8bYf.js → AlertCircle-BVeJaa8e.js} +1 -1
- package/dist/client/assets/{ArrowLeft-qWOemv4m.js → ArrowLeft-DIFvXA1o.js} +1 -1
- package/dist/client/assets/{CheckCircle-DNAL-vtD.js → CheckCircle-Rf04ZPr2.js} +1 -1
- package/dist/client/assets/{ChevronDown-CJBpL9ke.js → ChevronDown-CRNbAv_Y.js} +1 -1
- package/dist/client/assets/{Clock-s023drCB.js → Clock-CqxLgrwo.js} +1 -1
- package/dist/client/assets/{Copy01-Bm7GrXLR.js → Copy01-CxUl_QdH.js} +1 -1
- package/dist/client/assets/{CpuChip02-CY8-jTO9.js → CpuChip02-CuzFW9Og.js} +1 -1
- package/dist/client/assets/{DotsVertical-DakD93ro.js → DotsVertical-B-kvPa31.js} +1 -1
- package/dist/client/assets/{File06-CaEGX5DR.js → File06-B7NBxeI_.js} +1 -1
- package/dist/client/assets/{Grid01-DzkX4KgN.js → Grid01-Dz3rGiqv.js} +1 -1
- package/dist/client/assets/{Inbox01-BwvF7iId.js → Inbox01-CpdYbXLm.js} +1 -1
- package/dist/client/assets/{InfoCircle-D8u9C2rC.js → InfoCircle-C6jLk19v.js} +1 -1
- package/dist/client/assets/{Key01-CNozBS0S.js → Key01-B7ZQmNxs.js} +1 -1
- package/dist/client/assets/{LinkExternal01-v_wZOVfQ.js → LinkExternal01-DC2Eb6Fx.js} +1 -1
- package/dist/client/assets/{Loading01-Bg5ZbX7j.js → Loading01-COnx3ZgN.js} +1 -1
- package/dist/client/assets/{Plus-DHLB4x84.js → Plus-DF0BSUqr.js} +1 -1
- package/dist/client/assets/{SearchMd-dWvbF6MG.js → SearchMd-Dg5hjJMg.js} +1 -1
- package/dist/client/assets/{Trash01-B8SyVfGZ.js → Trash01-CQssb5zX.js} +1 -1
- package/dist/client/assets/{Upload01-B11bwIwD.js → Upload01-BRcWuo7v.js} +1 -1
- package/dist/client/assets/{X-B95LxPIt.js → X-B-teZACt.js} +1 -1
- package/dist/client/assets/{XClose-B0ejekJj.js → XClose-BcPIWa3O.js} +1 -1
- package/dist/client/assets/{alert-dialog-UMEPZCAs.js → alert-dialog-BUS87u9W.js} +1 -1
- package/dist/client/assets/{auth-DzSQcnhF.js → auth-Cb-IumFw.js} +1 -1
- package/dist/client/assets/{auth-catchall-BYr2zijL.js → auth-catchall-CxGnLOrb.js} +1 -1
- package/dist/client/assets/{avatar-BHmRC7PJ.js → avatar-m5AmEjFw.js} +1 -1
- package/dist/client/assets/{badge-CsN_0CQA.js → badge-C2HbJbQt.js} +1 -1
- package/dist/client/assets/{button-DGzvT_2A.js → button-DwabStBc.js} +1 -1
- package/dist/client/assets/{card-DhiM8w8S.js → card-C5wlKI6U.js} +1 -1
- package/dist/client/assets/{checkbox-CazM39DL.js → checkbox-BSrCVyq8.js} +1 -1
- package/dist/client/assets/collection-detail-BpB_6Zjk.js +1 -0
- package/dist/client/assets/{collection-display-button-HCh5o-4Q.js → collection-display-button-Y2mhlw1Q.js} +1 -1
- package/dist/client/assets/{collection-header-QrVAH4kj.js → collection-header-BjjVtD4O.js} +1 -1
- package/dist/client/assets/{collection-page-CUS5aOdu.js → collection-page-JbcdC8h1.js} +1 -1
- package/dist/client/assets/{collection-search-nvVuwapQ.js → collection-search-CuiMr39W.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-D0FdiE30.js → collection-table-wrapper-BbYDeeyt.js} +1 -1
- package/dist/client/assets/{connection-card-CtFpN05k.js → connection-card-DwP77JXn.js} +1 -1
- package/dist/client/assets/{connection-detail-DlPH1Rj9.js → connection-detail-DZ4teuU4.js} +1 -1
- package/dist/client/assets/{connections-CuXo1k5G.js → connections-owqzWNwt.js} +1 -1
- package/dist/client/assets/{core-CPQcCrZ7.js → core-Bo55zJKI.js} +1 -1
- package/dist/client/assets/{create-organization-dialog-CO78Byme.js → create-organization-dialog-CJ6vzvNw.js} +1 -1
- package/dist/client/assets/{deco-chat-skeleton-BAqDOmQt.js → deco-chat-skeleton-Dn3L9aNE.js} +4 -4
- package/dist/client/assets/{dialog-BQqZMrZX.js → dialog-CUe9mskV.js} +1 -1
- package/dist/client/assets/{dropdown-menu-D1IcmwBM.js → dropdown-menu-D49UF2Ht.js} +1 -1
- package/dist/client/assets/{error-boundary-BePJNb-A.js → error-boundary-BFkr9dNR.js} +1 -1
- package/dist/client/assets/{extract-connection-data-BzkcwZMq.js → extract-connection-data-CGRDUci8.js} +1 -1
- package/dist/client/assets/{form-CtkKIwlr.js → form-BZoUBeRw.js} +1 -1
- package/dist/client/assets/{gateway-detail-BFm1a022.js → gateway-detail-Bbr8XTi2.js} +1 -1
- package/dist/client/assets/{gateways-u5Ek3G6R.js → gateways-DGp-46dk.js} +1 -1
- package/dist/client/assets/{home-tHS3Zecm.js → home-VDADd2GP.js} +1 -1
- package/dist/client/assets/{index-B3hUglpl.js → index-BDs3ybL-.js} +1 -1
- package/dist/client/assets/{index-BFGV_ZyQ.js → index-Bct0X-7r.js} +2 -2
- package/dist/client/assets/{index-RtH5C8CP.js → index-BekZVg17.js} +1 -1
- package/dist/client/assets/{index-Co77-1xF.js → index-BghbZUIW.js} +1 -1
- package/dist/client/assets/index-CyW1ja-u.css +1 -0
- package/dist/client/assets/{input-CSN83rcG.js → input-B0bndeDO.js} +1 -1
- package/dist/client/assets/json-DEhIag3V.js +1 -0
- package/dist/client/assets/{json-syntax-highlighter-s54gEg6g.js → json-syntax-highlighter-Cfi9hCjS.js} +2 -2
- package/dist/client/assets/{layout-By0mCM-C.js → layout-Ba_82K5l.js} +1 -1
- package/dist/client/assets/{lazy-highlighter-BA7LoVJl.js → lazy-highlighter-BzHBbVlf.js} +1 -1
- package/dist/client/assets/{localstorage-keys-CKD_ZpQC.js → localstorage-keys-BJ5XIwxg.js} +1 -1
- package/dist/client/assets/{login-hHvv0tPc.js → login-BdW2k3fT.js} +1 -1
- package/dist/client/assets/{mcp-oauth-BXBge9LN.js → mcp-oauth-D8zZ1toP.js} +1 -1
- package/dist/client/assets/{members-Bvub8C8H.js → members-BvAkTWmh.js} +1 -1
- package/dist/client/assets/{monitoring-B76IY8Nx.js → monitoring-DPUwF7u_.js} +1 -1
- package/dist/client/assets/{oauth-callback-Buaygh1B.js → oauth-callback-Bh9CpgPj.js} +1 -1
- package/dist/client/assets/{page-X28UCcuA.js → page-BJ1Nb9nJ.js} +1 -1
- package/dist/client/assets/{popover-Bc_J6DJM.js → popover-BSFsrIpT.js} +1 -1
- package/dist/client/assets/prism-light-CttbsQBw.js +1 -0
- package/dist/client/assets/{resource-tabs-talmxE-P.js → resource-tabs-CzQaeRN8.js} +1 -1
- package/dist/client/assets/{schema-BNYaaxve.js → schema-FVv3eWtB.js} +1 -1
- package/dist/client/assets/{select-zI1MuLqv.js → select-CseJZN6S.js} +1 -1
- package/dist/client/assets/{settings-3CQfBwb4.js → settings-BvtEv3Mh.js} +1 -1
- package/dist/client/assets/{shell-layout-DrYzniBY.js → shell-layout-BFvWWVFt.js} +1 -1
- package/dist/client/assets/{spinner-Bz0yGoI-.js → spinner-D-QApPbK.js} +1 -1
- package/dist/client/assets/{store-DFp_70M-.js → store-BzUbpOlY.js} +1 -1
- package/dist/client/assets/{store-app-detail-lpZSA42O.js → store-app-detail-pbrXIdg3.js} +1 -1
- package/dist/client/assets/{switch-hr3MPsBc.js → switch-aaXk-2CC.js} +1 -1
- package/dist/client/assets/{textarea-B9KhTSks.js → textarea-JzHfAbEx.js} +1 -1
- package/dist/client/assets/{tooltip-B1UObqaJ.js → tooltip-CfcC-Rew.js} +1 -1
- package/dist/client/assets/{types-BH1WeggD.js → types-D6CtFlHv.js} +12 -12
- package/dist/client/assets/{use-binding-BAah0fz3.js → use-binding-D8RTw0Vg.js} +1 -1
- package/dist/client/assets/{use-connection-DfrXFTVM.js → use-connection-DmNS8HuU.js} +1 -1
- package/dist/client/assets/{use-gateway-MMJo-JLn.js → use-gateway-BBilRD-x.js} +1 -1
- package/dist/client/assets/{use-list-state-z01BeFuP.js → use-list-state-Cq2uqk_S.js} +1 -1
- package/dist/client/assets/{use-mcp-BM47vnpW.js → use-mcp-UYOQv_cb.js} +1 -1
- package/dist/client/assets/{use-members-ClMZBuqE.js → use-members-DNvtlweS.js} +1 -1
- package/dist/client/assets/{use-mobile-CZP-mMZd.js → use-mobile-Bnsdo500.js} +1 -1
- package/dist/client/assets/{use-organization-settings-GOa26Bje.js → use-organization-settings-BB1e5j5m.js} +1 -1
- package/dist/client/assets/{use-tool-call-De--YQMp.js → use-tool-call-BhdIf0c8.js} +1 -1
- package/dist/client/assets/useQuery-noukwpLn.js +1 -0
- package/dist/client/assets/utils-BrYcHRV_.js +1 -0
- package/dist/client/assets/{well-known-mcp-CJlqApJn.js → well-known-mcp-CrC-EGIx.js} +1 -1
- package/dist/client/index.html +2 -2
- package/package.json +1 -1
- package/dist/client/assets/collection-detail-Be2q4lq8.js +0 -1
- package/dist/client/assets/index-Bchib-vH.css +0 -1
- package/dist/client/assets/json-eo7c8zn7.js +0 -1
- package/dist/client/assets/prism-light-CJ5lsPAv.js +0 -1
- package/dist/client/assets/useQuery-B00cZGqv.js +0 -1
- package/dist/client/assets/utils-D8oc_Xja.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{K as Q,j as t,c as H,f as U,r as L}from"./index-
|
|
1
|
+
import{K as Q,j as t,c as H,f as U,r as L}from"./index-Bct0X-7r.js";import{u as W}from"./useQuery-noukwpLn.js";import{i as Y}from"./File06-B7NBxeI_.js";import{i as J}from"./Loading01-COnx3ZgN.js";import{e as P}from"./registry-utils-ulDDT0d8.js";import{C as X}from"./collection-display-button-Y2mhlw1Q.js";import{C as Z}from"./collection-search-CuiMr39W.js";import{C as ee}from"./collection-table-wrapper-BbYDeeyt.js";import{E as B}from"./SearchMd-Dg5hjJMg.js";import{I as te}from"./use-connection-DmNS8HuU.js";import{C as oe}from"./card-C5wlKI6U.js";import{V as re}from"./layout-Ba_82K5l.js";import{c as M}from"./utils-BrYcHRV_.js";import{B as se}from"./badge-C2HbJbQt.js";import{B as ne}from"./button-DwabStBc.js";function ae(o){return o.replace(/<a[^>]*class="[^"]*anchor[^"]*"[^>]*>.*?<\/a>/gi,"")}function ie(o){return o.replace(/<a\s+([^>]*href="[^"]*"[^>]*)>/gi,(e,a)=>a.includes("target=")?e.replace(/target="[^"]*"/gi,'target="_blank"'):`<a ${a} target="_blank" rel="noopener noreferrer">`)}function le(o){let e=ae(o);return e=ie(e),e}function ke({repository:o}){const e=o?P(o):null,{data:a,isLoading:c}=W({queryKey:Q.githubReadme(e?.owner,e?.repo),queryFn:async()=>{if(!e)return null;try{const s=await fetch(`https://api.github.com/repos/${e.owner}/${e.repo}/readme`,{headers:{Accept:"application/vnd.github.v3.html"}});if(!s.ok){if(s.status===404)return null;throw new Error(`Failed to fetch README: ${s.statusText}`)}const m=await s.text();return le(m)}catch(s){return console.error("Error fetching README:",s),null}},enabled:!!e&&!!o,staleTime:3600*1e3,gcTime:1440*60*1e3});return c?t.jsx("div",{className:"flex items-center justify-center h-full",children:t.jsx(J,{size:32,className:"animate-spin text-muted-foreground"})}):a?t.jsx("div",{className:"p-5 markdown-body",style:{backgroundColor:"transparent"},dangerouslySetInnerHTML:{__html:a}}):t.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-center p-6",children:[t.jsx(Y,{size:48,className:"text-muted-foreground mb-4"}),t.jsx("h3",{className:"text-lg font-medium mb-2",children:"README not found"}),t.jsx("p",{className:"text-muted-foreground max-w-md",children:"This repository doesn't have a README file, or it's not publicly accessible."})]})}function $e(o){const e=H.c(39),{tools:a,connectionId:c,org:s,onToolClick:m,showToolbar:u,emptyMessage:f}=o,h=u===void 0?!0:u,p=f===void 0?"This connection doesn't have any tools yet.":f,d=U(),[n,A]=L.useState(""),[x,F]=L.useState("table"),[i,_]=L.useState("name"),[l,V]=L.useState("asc");let C;e[0]!==l||e[1]!==i?(C=r=>{i===r?(V(fe),l==="desc"&&_(void 0)):(_(r),V("asc"))},e[0]=l,e[1]=i,e[2]=C):C=e[2];const g=C;let S;e[3]!==c||e[4]!==d||e[5]!==m||e[6]!==s?(S=r=>{m?m(r):c&&s&&d({to:"/$org/mcps/$connectionId/$collectionName/$itemId",params:{org:s,connectionId:c,collectionName:"tools",itemId:encodeURIComponent(r.name)}})},e[3]=c,e[4]=d,e[5]=m,e[6]=s,e[7]=S):S=e[7];const T=S;let E;if(e[8]!==n||e[9]!==l||e[10]!==i||e[11]!==a){const r=!a||a.length===0?[]:n.trim()?(()=>{const I=n.toLowerCase();return a.filter(w=>w.name.toLowerCase().includes(I)||w.description&&w.description.toLowerCase().includes(I))})():a;E=!i||!l?r:[...r].sort((I,w)=>{const G=I[i]||"",O=w[i]||"",z=String(G).localeCompare(String(O));return l==="asc"?z:-z}),e[8]=n,e[9]=l,e[10]=i,e[11]=a,e[12]=E}else E=e[12];const v=E;let R;e[13]===Symbol.for("react.memo_cache_sentinel")?(R=[{id:"name",header:"Name",render:ue,sortable:!0},{id:"description",header:"Description",render:de,cellClassName:"flex-1",sortable:!0}],e[13]=R):R=e[13];const K=R;let k;e[14]===Symbol.for("react.memo_cache_sentinel")?(k=K.filter(me).map(ce),e[14]=k):k=e[14];const q=k;let b;e[15]!==g||e[16]!==h||e[17]!==l||e[18]!==i||e[19]!==x?(b=h&&t.jsx(re,{children:t.jsx(X,{viewMode:x,onViewModeChange:F,sortKey:i,sortDirection:l,onSort:g,sortOptions:q})}),e[15]=g,e[16]=h,e[17]=l,e[18]=i,e[19]=x,e[20]=b):b=e[20];let $;e[21]===Symbol.for("react.memo_cache_sentinel")?($=r=>{r.key==="Escape"&&(A(""),r.target.blur())},e[21]=$):$=e[21];let j;e[22]!==n?(j=t.jsx(Z,{value:n,onChange:A,placeholder:"Search tools...",onKeyDown:$}),e[22]=n,e[23]=j):j=e[23];let N;e[24]!==p||e[25]!==g||e[26]!==T||e[27]!==n||e[28]!==l||e[29]!==i||e[30]!==v||e[31]!==x?(N=x==="cards"?t.jsx("div",{className:"flex-1 overflow-auto p-5",children:v.length===0?t.jsx(B,{image:null,title:n?"No tools found":"No tools available",description:n?"Try adjusting your search terms":p}):t.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 lg:grid-cols-4 gap-4",children:v.map(r=>t.jsx(oe,{className:"cursor-pointer transition-colors",onClick:()=>T(r),children:t.jsxs("div",{className:"flex flex-col gap-4 p-6",children:[t.jsx(te,{icon:null,name:r.name,size:"md",className:"shrink-0 shadow-sm"}),t.jsxs("div",{className:"flex flex-col gap-0",children:[t.jsx("h3",{className:"text-base font-medium text-foreground truncate",children:r.name}),t.jsx("p",{className:"text-base text-muted-foreground line-clamp-2",children:r.description||"No description"})]})]})},r.name))})}):t.jsx(ee,{columns:K,data:v,isLoading:!1,sortKey:i,sortDirection:l,onSort:g,onRowClick:r=>T(r),emptyState:t.jsx(B,{image:null,title:n?"No tools found":"No tools available",description:n?"Try adjusting your search terms":p})}),e[24]=p,e[25]=g,e[26]=T,e[27]=n,e[28]=l,e[29]=i,e[30]=v,e[31]=x,e[32]=N):N=e[32];let y;e[33]!==j||e[34]!==N?(y=t.jsxs("div",{className:"flex flex-col h-full overflow-hidden",children:[j,N]}),e[33]=j,e[34]=N,e[35]=y):y=e[35];let D;return e[36]!==y||e[37]!==b?(D=t.jsxs(t.Fragment,{children:[b,y]}),e[36]=y,e[37]=b,e[38]=D):D=e[38],D}function ce(o){return{id:o.id,label:typeof o.header=="string"?o.header:o.id}}function me(o){return o.sortable}function de(o){return t.jsx("span",{className:"text-sm text-foreground",children:o.description||"—"})}function ue(o){return t.jsx("span",{className:"text-sm font-medium font-mono text-foreground",children:o.name})}function fe(o){return o==="asc"?"desc":o==="desc"?null:"asc"}function De(o){const e=H.c(12),{tabs:a,activeTab:c,onTabChange:s,className:m}=o;let u;e[0]!==m?(u=M("flex items-center gap-2 overflow-x-auto no-scrollbar",m),e[0]=m,e[1]=u):u=e[1];let f;if(e[2]!==c||e[3]!==s||e[4]!==a){let p;e[6]!==c||e[7]!==s?(p=d=>{const n=c===d.id;return t.jsxs(ne,{variant:"outline",size:"sm",onClick:()=>s(d.id),className:M("h-8 rounded-lg border border-transparent bg-transparent px-3 py-1 hover:bg-muted",n&&"bg-muted border-input text-foreground font-medium",!n&&"text-muted-foreground font-normal"),children:[d.label,d.count!==void 0&&t.jsx(se,{variant:"secondary",className:M("ml-2 h-5 min-w-5 px-1 rounded-full text-[10px] font-mono",n?"bg-background text-foreground":"bg-muted-foreground/10 text-muted-foreground"),children:d.count})]},d.id)},e[6]=c,e[7]=s,e[8]=p):p=e[8],f=a.map(p),e[2]=c,e[3]=s,e[4]=a,e[5]=f}else f=e[5];let h;return e[9]!==u||e[10]!==f?(h=t.jsx("div",{className:u,children:f}),e[9]=u,e[10]=f,e[11]=h):h=e[11],h}export{De as R,$e as T,ke as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{v as a,bC as i,W as n,X as t,w as e,bD as o}from"./index-
|
|
1
|
+
import{v as a,bC as i,W as n,X as t,w as e,bD as o}from"./index-Bct0X-7r.js";const r=a({authorizationEndpoint:e().url(),tokenEndpoint:e().url(),introspectionEndpoint:e().url().optional(),clientId:e(),clientSecret:e().optional(),scopes:n(e()),grantType:i(["authorization_code","client_credentials"])}),s=a({name:e(),description:e().optional(),inputSchema:t(o()),outputSchema:t(o()).optional()}),c=a({id:e().describe("Unique identifier for the connection"),title:e().describe("Human-readable name for the connection"),created_at:e().describe("When the connection was created"),updated_at:e().describe("When the connection was last updated"),created_by:e().describe("User ID who created the connection"),updated_by:e().optional().describe("User ID who last updated the connection"),organization_id:e().describe("Organization ID this connection belongs to"),description:e().nullable().describe("Description of the connection"),icon:e().nullable().describe("Icon URL for the connection"),app_name:e().nullable().describe("Associated app name"),app_id:e().nullable().describe("Associated app ID"),connection_type:i(["HTTP","SSE","Websocket"]).describe("Type of connection"),connection_url:e().describe("URL for the connection"),connection_token:e().nullable().describe("Authentication token"),connection_headers:t(e(),e()).nullable().describe("Custom headers"),oauth_config:r.nullable().describe("OAuth configuration"),configuration_state:t(o()).nullable().describe("Configuration state (decrypted)"),configuration_scopes:n(e()).nullable().optional().describe("Configuration scopes"),metadata:t(o()).nullable().describe("Additional metadata (includes repository info)"),tools:n(s).nullable().describe("Discovered tools from MCP"),bindings:n(e()).nullable().describe("Detected bindings"),status:i(["active","inactive","error"]).describe("Current status")});c.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_token:!0,connection_headers:!0,oauth_config:!0,configuration_state:!0,configuration_scopes:!0,metadata:!0});c.partial();export{c as C};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as c,a6 as Pe,L as rt,z as _e,j as d,a7 as st,H as lt,a8 as Ie,bz as at,a2 as k,a9 as it,B as j,E as N,a5 as $,aa as ct,am as Ee,bx as dt,a4 as ut,ab as pt,ae as ft,ac as mt,ad as ht,af as vt,ag as gt,ah as xt,ai as St,c as ee}from"./index-BFGV_ZyQ.js";import{V as wt,i as yt}from"./tooltip-B1UObqaJ.js";import{t as Re}from"./ChevronDown-CJBpL9ke.js";import{c as oe}from"./utils-D8oc_Xja.js";function Ne(n,[e,t]){return Math.min(t,Math.max(e,n))}var Ct=[" ","Enter","ArrowUp","ArrowDown"],bt=[" ","Enter"],J="Select",[de,ue,It]=at(J),[ne]=lt(J,[It,Pe]),pe=Pe(),[Tt,G]=ne(J),[_t,Nt]=ne(J),je=n=>{const{__scopeSelect:e,children:t,open:o,defaultOpen:r,onOpenChange:i,value:s,defaultValue:l,onValueChange:a,dir:u,name:h,autoComplete:g,disabled:w,required:y,form:S}=n,p=pe(e),[v,C]=c.useState(null),[m,x]=c.useState(null),[U,M]=c.useState(!1),re=rt(u),[P,O]=_e({prop:o,defaultProp:r??!1,onChange:i,caller:J}),[F,q]=_e({prop:s,defaultProp:l,onChange:a,caller:J}),L=c.useRef(null),B=v?S||!!v.closest("form"):!0,[W,V]=c.useState(new Set),H=Array.from(W).map(E=>E.props.value).join(";");return d.jsx(st,{...p,children:d.jsxs(Tt,{required:y,scope:e,trigger:v,onTriggerChange:C,valueNode:m,onValueNodeChange:x,valueNodeHasChildren:U,onValueNodeHasChildrenChange:M,contentId:Ie(),value:F,onValueChange:q,open:P,onOpenChange:O,dir:re,triggerPointerDownPosRef:L,disabled:w,children:[d.jsx(de.Provider,{scope:e,children:d.jsx(_t,{scope:n.__scopeSelect,onNativeOptionAdd:c.useCallback(E=>{V(D=>new Set(D).add(E))},[]),onNativeOptionRemove:c.useCallback(E=>{V(D=>{const z=new Set(D);return z.delete(E),z})},[]),children:t})}),B?d.jsxs(Qe,{"aria-hidden":!0,required:y,tabIndex:-1,name:h,autoComplete:g,value:F,onChange:E=>q(E.target.value),disabled:w,form:S,children:[F===void 0?d.jsx("option",{value:""}):null,Array.from(W)]},H):null]})})};je.displayName=J;var Me="SelectTrigger",Ae=c.forwardRef((n,e)=>{const{__scopeSelect:t,disabled:o=!1,...r}=n,i=pe(t),s=G(Me,t),l=s.disabled||o,a=k(e,s.onTriggerChange),u=ue(t),h=c.useRef("touch"),[g,w,y]=tt(p=>{const v=u().filter(x=>!x.disabled),C=v.find(x=>x.value===s.value),m=ot(v,p,C);m!==void 0&&s.onValueChange(m.value)}),S=p=>{l||(s.onOpenChange(!0),y()),p&&(s.triggerPointerDownPosRef.current={x:Math.round(p.pageX),y:Math.round(p.pageY)})};return d.jsx(it,{asChild:!0,...i,children:d.jsx(j.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:l,"data-disabled":l?"":void 0,"data-placeholder":et(s.value)?"":void 0,...r,ref:a,onClick:N(r.onClick,p=>{p.currentTarget.focus(),h.current!=="mouse"&&S(p)}),onPointerDown:N(r.onPointerDown,p=>{h.current=p.pointerType;const v=p.target;v.hasPointerCapture(p.pointerId)&&v.releasePointerCapture(p.pointerId),p.button===0&&p.ctrlKey===!1&&p.pointerType==="mouse"&&(S(p),p.preventDefault())}),onKeyDown:N(r.onKeyDown,p=>{const v=g.current!=="";!(p.ctrlKey||p.altKey||p.metaKey)&&p.key.length===1&&w(p.key),!(v&&p.key===" ")&&Ct.includes(p.key)&&(S(),p.preventDefault())})})})});Ae.displayName=Me;var Oe="SelectValue",De=c.forwardRef((n,e)=>{const{__scopeSelect:t,className:o,style:r,children:i,placeholder:s="",...l}=n,a=G(Oe,t),{onValueNodeHasChildrenChange:u}=a,h=i!==void 0,g=k(e,a.onValueNodeChange);return $(()=>{u(h)},[u,h]),d.jsx(j.span,{...l,ref:g,style:{pointerEvents:"none"},children:et(a.value)?d.jsx(d.Fragment,{children:s}):i})});De.displayName=Oe;var Pt="SelectIcon",ke=c.forwardRef((n,e)=>{const{__scopeSelect:t,children:o,...r}=n;return d.jsx(j.span,{"aria-hidden":!0,...r,ref:e,children:o||"▼"})});ke.displayName=Pt;var Et="SelectPortal",Le=n=>d.jsx(ct,{asChild:!0,...n});Le.displayName=Et;var Q="SelectContent",Be=c.forwardRef((n,e)=>{const t=G(Q,n.__scopeSelect),[o,r]=c.useState();if($(()=>{r(new DocumentFragment)},[]),!t.open){const i=o;return i?Ee.createPortal(d.jsx(Ve,{scope:n.__scopeSelect,children:d.jsx(de.Slot,{scope:n.__scopeSelect,children:d.jsx("div",{children:n.children})})}),i):null}return d.jsx(He,{...n,ref:e})});Be.displayName=Q;var A=10,[Ve,Y]=ne(Q),Rt="SelectContentImpl",jt=ht("SelectContent.RemoveScroll"),He=c.forwardRef((n,e)=>{const{__scopeSelect:t,position:o="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:i,onPointerDownOutside:s,side:l,sideOffset:a,align:u,alignOffset:h,arrowPadding:g,collisionBoundary:w,collisionPadding:y,sticky:S,hideWhenDetached:p,avoidCollisions:v,...C}=n,m=G(Q,t),[x,U]=c.useState(null),[M,re]=c.useState(null),P=k(e,f=>U(f)),[O,F]=c.useState(null),[q,L]=c.useState(null),B=ue(t),[W,V]=c.useState(!1),H=c.useRef(!1);c.useEffect(()=>{if(x)return pt(x)},[x]),ft();const E=c.useCallback(f=>{const[T,...R]=B().map(_=>_.ref.current),[b]=R.slice(-1),I=document.activeElement;for(const _ of f)if(_===I||(_?.scrollIntoView({block:"nearest"}),_===T&&M&&(M.scrollTop=0),_===b&&M&&(M.scrollTop=M.scrollHeight),_?.focus(),document.activeElement!==I))return},[B,M]),D=c.useCallback(()=>E([O,x]),[E,O,x]);c.useEffect(()=>{W&&D()},[W,D]);const{onOpenChange:z,triggerPointerDownPosRef:K}=m;c.useEffect(()=>{if(x){let f={x:0,y:0};const T=b=>{f={x:Math.abs(Math.round(b.pageX)-(K.current?.x??0)),y:Math.abs(Math.round(b.pageY)-(K.current?.y??0))}},R=b=>{f.x<=10&&f.y<=10?b.preventDefault():x.contains(b.target)||z(!1),document.removeEventListener("pointermove",T),K.current=null};return K.current!==null&&(document.addEventListener("pointermove",T),document.addEventListener("pointerup",R,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",T),document.removeEventListener("pointerup",R,{capture:!0})}}},[x,z,K]),c.useEffect(()=>{const f=()=>z(!1);return window.addEventListener("blur",f),window.addEventListener("resize",f),()=>{window.removeEventListener("blur",f),window.removeEventListener("resize",f)}},[z]);const[fe,ae]=tt(f=>{const T=B().filter(I=>!I.disabled),R=T.find(I=>I.ref.current===document.activeElement),b=ot(T,f,R);b&&setTimeout(()=>b.ref.current.focus())}),me=c.useCallback((f,T,R)=>{const b=!H.current&&!R;(m.value!==void 0&&m.value===T||b)&&(F(f),b&&(H.current=!0))},[m.value]),he=c.useCallback(()=>x?.focus(),[x]),te=c.useCallback((f,T,R)=>{const b=!H.current&&!R;(m.value!==void 0&&m.value===T||b)&&L(f)},[m.value]),ie=o==="popper"?Se:ze,se=ie===Se?{side:l,sideOffset:a,align:u,alignOffset:h,arrowPadding:g,collisionBoundary:w,collisionPadding:y,sticky:S,hideWhenDetached:p,avoidCollisions:v}:{};return d.jsx(Ve,{scope:t,content:x,viewport:M,onViewportChange:re,itemRefCallback:me,selectedItem:O,onItemLeave:he,itemTextRefCallback:te,focusSelectedItem:D,selectedItemText:q,position:o,isPositioned:W,searchRef:fe,children:d.jsx(mt,{as:jt,allowPinchZoom:!0,children:d.jsx(vt,{asChild:!0,trapped:m.open,onMountAutoFocus:f=>{f.preventDefault()},onUnmountAutoFocus:N(r,f=>{m.trigger?.focus({preventScroll:!0}),f.preventDefault()}),children:d.jsx(gt,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:f=>f.preventDefault(),onDismiss:()=>m.onOpenChange(!1),children:d.jsx(ie,{role:"listbox",id:m.contentId,"data-state":m.open?"open":"closed",dir:m.dir,onContextMenu:f=>f.preventDefault(),...C,...se,onPlaced:()=>V(!0),ref:P,style:{display:"flex",flexDirection:"column",outline:"none",...C.style},onKeyDown:N(C.onKeyDown,f=>{const T=f.ctrlKey||f.altKey||f.metaKey;if(f.key==="Tab"&&f.preventDefault(),!T&&f.key.length===1&&ae(f.key),["ArrowUp","ArrowDown","Home","End"].includes(f.key)){let b=B().filter(I=>!I.disabled).map(I=>I.ref.current);if(["ArrowUp","End"].includes(f.key)&&(b=b.slice().reverse()),["ArrowUp","ArrowDown"].includes(f.key)){const I=f.target,_=b.indexOf(I);b=b.slice(_+1)}setTimeout(()=>E(b)),f.preventDefault()}})})})})})})});He.displayName=Rt;var Mt="SelectItemAlignedPosition",ze=c.forwardRef((n,e)=>{const{__scopeSelect:t,onPlaced:o,...r}=n,i=G(Q,t),s=Y(Q,t),[l,a]=c.useState(null),[u,h]=c.useState(null),g=k(e,P=>h(P)),w=ue(t),y=c.useRef(!1),S=c.useRef(!0),{viewport:p,selectedItem:v,selectedItemText:C,focusSelectedItem:m}=s,x=c.useCallback(()=>{if(i.trigger&&i.valueNode&&l&&u&&p&&v&&C){const P=i.trigger.getBoundingClientRect(),O=u.getBoundingClientRect(),F=i.valueNode.getBoundingClientRect(),q=C.getBoundingClientRect();if(i.dir!=="rtl"){const I=q.left-O.left,_=F.left-I,X=P.left-_,Z=P.width+X,ve=Math.max(Z,O.width),ge=window.innerWidth-A,xe=Ne(_,[A,Math.max(A,ge-ve)]);l.style.minWidth=Z+"px",l.style.left=xe+"px"}else{const I=O.right-q.right,_=window.innerWidth-F.right-I,X=window.innerWidth-P.right-_,Z=P.width+X,ve=Math.max(Z,O.width),ge=window.innerWidth-A,xe=Ne(_,[A,Math.max(A,ge-ve)]);l.style.minWidth=Z+"px",l.style.right=xe+"px"}const L=w(),B=window.innerHeight-A*2,W=p.scrollHeight,V=window.getComputedStyle(u),H=parseInt(V.borderTopWidth,10),E=parseInt(V.paddingTop,10),D=parseInt(V.borderBottomWidth,10),z=parseInt(V.paddingBottom,10),K=H+E+W+z+D,fe=Math.min(v.offsetHeight*5,K),ae=window.getComputedStyle(p),me=parseInt(ae.paddingTop,10),he=parseInt(ae.paddingBottom,10),te=P.top+P.height/2-A,ie=B-te,se=v.offsetHeight/2,f=v.offsetTop+se,T=H+E+f,R=K-T;if(T<=te){const I=L.length>0&&v===L[L.length-1].ref.current;l.style.bottom="0px";const _=u.clientHeight-p.offsetTop-p.offsetHeight,X=Math.max(ie,se+(I?he:0)+_+D),Z=T+X;l.style.height=Z+"px"}else{const I=L.length>0&&v===L[0].ref.current;l.style.top="0px";const X=Math.max(te,H+p.offsetTop+(I?me:0)+se)+R;l.style.height=X+"px",p.scrollTop=T-te+p.offsetTop}l.style.margin=`${A}px 0`,l.style.minHeight=fe+"px",l.style.maxHeight=B+"px",o?.(),requestAnimationFrame(()=>y.current=!0)}},[w,i.trigger,i.valueNode,l,u,p,v,C,i.dir,o]);$(()=>x(),[x]);const[U,M]=c.useState();$(()=>{u&&M(window.getComputedStyle(u).zIndex)},[u]);const re=c.useCallback(P=>{P&&S.current===!0&&(x(),m?.(),S.current=!1)},[x,m]);return d.jsx(Ot,{scope:t,contentWrapper:l,shouldExpandOnScrollRef:y,onScrollButtonChange:re,children:d.jsx("div",{ref:a,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:U},children:d.jsx(j.div,{...r,ref:g,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})});ze.displayName=Mt;var At="SelectPopperPosition",Se=c.forwardRef((n,e)=>{const{__scopeSelect:t,align:o="start",collisionPadding:r=A,...i}=n,s=pe(t);return d.jsx(xt,{...s,...i,ref:e,align:o,collisionPadding:r,style:{boxSizing:"border-box",...i.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});Se.displayName=At;var[Ot,Te]=ne(Q,{}),we="SelectViewport",Ue=c.forwardRef((n,e)=>{const{__scopeSelect:t,nonce:o,...r}=n,i=Y(we,t),s=Te(we,t),l=k(e,i.onViewportChange),a=c.useRef(0);return d.jsxs(d.Fragment,{children:[d.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),d.jsx(de.Slot,{scope:t,children:d.jsx(j.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:l,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:N(r.onScroll,u=>{const h=u.currentTarget,{contentWrapper:g,shouldExpandOnScrollRef:w}=s;if(w?.current&&g){const y=Math.abs(a.current-h.scrollTop);if(y>0){const S=window.innerHeight-A*2,p=parseFloat(g.style.minHeight),v=parseFloat(g.style.height),C=Math.max(p,v);if(C<S){const m=C+y,x=Math.min(S,m),U=m-x;g.style.height=x+"px",g.style.bottom==="0px"&&(h.scrollTop=U>0?U:0,g.style.justifyContent="flex-end")}}}a.current=h.scrollTop})})})]})});Ue.displayName=we;var Fe="SelectGroup",[Dt,kt]=ne(Fe),Lt=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n,r=Ie();return d.jsx(Dt,{scope:t,id:r,children:d.jsx(j.div,{role:"group","aria-labelledby":r,...o,ref:e})})});Lt.displayName=Fe;var We="SelectLabel",Bt=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n,r=kt(We,t);return d.jsx(j.div,{id:r.id,...o,ref:e})});Bt.displayName=We;var ce="SelectItem",[Vt,Ke]=ne(ce),$e=c.forwardRef((n,e)=>{const{__scopeSelect:t,value:o,disabled:r=!1,textValue:i,...s}=n,l=G(ce,t),a=Y(ce,t),u=l.value===o,[h,g]=c.useState(i??""),[w,y]=c.useState(!1),S=k(e,m=>a.itemRefCallback?.(m,o,r)),p=Ie(),v=c.useRef("touch"),C=()=>{r||(l.onValueChange(o),l.onOpenChange(!1))};if(o==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return d.jsx(Vt,{scope:t,value:o,disabled:r,textId:p,isSelected:u,onItemTextChange:c.useCallback(m=>{g(x=>x||(m?.textContent??"").trim())},[]),children:d.jsx(de.ItemSlot,{scope:t,value:o,disabled:r,textValue:h,children:d.jsx(j.div,{role:"option","aria-labelledby":p,"data-highlighted":w?"":void 0,"aria-selected":u&&w,"data-state":u?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...s,ref:S,onFocus:N(s.onFocus,()=>y(!0)),onBlur:N(s.onBlur,()=>y(!1)),onClick:N(s.onClick,()=>{v.current!=="mouse"&&C()}),onPointerUp:N(s.onPointerUp,()=>{v.current==="mouse"&&C()}),onPointerDown:N(s.onPointerDown,m=>{v.current=m.pointerType}),onPointerMove:N(s.onPointerMove,m=>{v.current=m.pointerType,r?a.onItemLeave?.():v.current==="mouse"&&m.currentTarget.focus({preventScroll:!0})}),onPointerLeave:N(s.onPointerLeave,m=>{m.currentTarget===document.activeElement&&a.onItemLeave?.()}),onKeyDown:N(s.onKeyDown,m=>{a.searchRef?.current!==""&&m.key===" "||(bt.includes(m.key)&&C(),m.key===" "&&m.preventDefault())})})})})});$e.displayName=ce;var le="SelectItemText",Ge=c.forwardRef((n,e)=>{const{__scopeSelect:t,className:o,style:r,...i}=n,s=G(le,t),l=Y(le,t),a=Ke(le,t),u=Nt(le,t),[h,g]=c.useState(null),w=k(e,C=>g(C),a.onItemTextChange,C=>l.itemTextRefCallback?.(C,a.value,a.disabled)),y=h?.textContent,S=c.useMemo(()=>d.jsx("option",{value:a.value,disabled:a.disabled,children:y},a.value),[a.disabled,a.value,y]),{onNativeOptionAdd:p,onNativeOptionRemove:v}=u;return $(()=>(p(S),()=>v(S)),[p,v,S]),d.jsxs(d.Fragment,{children:[d.jsx(j.span,{id:a.textId,...i,ref:w}),a.isSelected&&s.valueNode&&!s.valueNodeHasChildren?Ee.createPortal(i.children,s.valueNode):null]})});Ge.displayName=le;var Ye="SelectItemIndicator",qe=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n;return Ke(Ye,t).isSelected?d.jsx(j.span,{"aria-hidden":!0,...o,ref:e}):null});qe.displayName=Ye;var ye="SelectScrollUpButton",Xe=c.forwardRef((n,e)=>{const t=Y(ye,n.__scopeSelect),o=Te(ye,n.__scopeSelect),[r,i]=c.useState(!1),s=k(e,o.onScrollButtonChange);return $(()=>{if(t.viewport&&t.isPositioned){let l=function(){const u=a.scrollTop>0;i(u)};const a=t.viewport;return l(),a.addEventListener("scroll",l),()=>a.removeEventListener("scroll",l)}},[t.viewport,t.isPositioned]),r?d.jsx(Je,{...n,ref:s,onAutoScroll:()=>{const{viewport:l,selectedItem:a}=t;l&&a&&(l.scrollTop=l.scrollTop-a.offsetHeight)}}):null});Xe.displayName=ye;var Ce="SelectScrollDownButton",Ze=c.forwardRef((n,e)=>{const t=Y(Ce,n.__scopeSelect),o=Te(Ce,n.__scopeSelect),[r,i]=c.useState(!1),s=k(e,o.onScrollButtonChange);return $(()=>{if(t.viewport&&t.isPositioned){let l=function(){const u=a.scrollHeight-a.clientHeight,h=Math.ceil(a.scrollTop)<u;i(h)};const a=t.viewport;return l(),a.addEventListener("scroll",l),()=>a.removeEventListener("scroll",l)}},[t.viewport,t.isPositioned]),r?d.jsx(Je,{...n,ref:s,onAutoScroll:()=>{const{viewport:l,selectedItem:a}=t;l&&a&&(l.scrollTop=l.scrollTop+a.offsetHeight)}}):null});Ze.displayName=Ce;var Je=c.forwardRef((n,e)=>{const{__scopeSelect:t,onAutoScroll:o,...r}=n,i=Y("SelectScrollButton",t),s=c.useRef(null),l=ue(t),a=c.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return c.useEffect(()=>()=>a(),[a]),$(()=>{l().find(h=>h.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[l]),d.jsx(j.div,{"aria-hidden":!0,...r,ref:e,style:{flexShrink:0,...r.style},onPointerDown:N(r.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(o,50))}),onPointerMove:N(r.onPointerMove,()=>{i.onItemLeave?.(),s.current===null&&(s.current=window.setInterval(o,50))}),onPointerLeave:N(r.onPointerLeave,()=>{a()})})}),Ht="SelectSeparator",zt=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n;return d.jsx(j.div,{"aria-hidden":!0,...o,ref:e})});zt.displayName=Ht;var be="SelectArrow",Ut=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n,r=pe(t),i=G(be,t),s=Y(be,t);return i.open&&s.position==="popper"?d.jsx(St,{...r,...o,ref:e}):null});Ut.displayName=be;var Ft="SelectBubbleInput",Qe=c.forwardRef(({__scopeSelect:n,value:e,...t},o)=>{const r=c.useRef(null),i=k(o,r),s=dt(e);return c.useEffect(()=>{const l=r.current;if(!l)return;const a=window.HTMLSelectElement.prototype,h=Object.getOwnPropertyDescriptor(a,"value").set;if(s!==e&&h){const g=new Event("change",{bubbles:!0});h.call(l,e),l.dispatchEvent(g)}},[s,e]),d.jsx(j.select,{...t,style:{...wt,...t.style},ref:i,defaultValue:e})});Qe.displayName=Ft;function et(n){return n===""||n===void 0}function tt(n){const e=ut(n),t=c.useRef(""),o=c.useRef(0),r=c.useCallback(s=>{const l=t.current+s;e(l),(function a(u){t.current=u,window.clearTimeout(o.current),u!==""&&(o.current=window.setTimeout(()=>a(""),1e3))})(l)},[e]),i=c.useCallback(()=>{t.current="",window.clearTimeout(o.current)},[]);return c.useEffect(()=>()=>window.clearTimeout(o.current),[]),[t,r,i]}function ot(n,e,t){const r=e.length>1&&Array.from(e).every(u=>u===e[0])?e[0]:e,i=t?n.indexOf(t):-1;let s=Wt(n,Math.max(i,0));r.length===1&&(s=s.filter(u=>u!==t));const a=s.find(u=>u.textValue.toLowerCase().startsWith(r.toLowerCase()));return a!==t?a:void 0}function Wt(n,e){return n.map((t,o)=>n[(e+o)%n.length])}var Kt=je,$t=Ae,Gt=De,Yt=ke,qt=Le,Xt=Be,Zt=Ue,Jt=$e,Qt=Ge,eo=qe,to=Xe,oo=Ze;const nt=({size:n=24,color:e="currentColor",...t})=>c.createElement("svg",{viewBox:"0 0 24 24",width:n,height:n,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...t},c.createElement("path",{d:"m18 15-6-6-6 6"}));nt.displayName="ChevronUp";function co(n){const e=ee.c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let o;return e[2]!==t?(o=d.jsx(Kt,{"data-slot":"select",...t}),e[2]=t,e[3]=o):o=e[3],o}function uo(n){const e=ee.c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let o;return e[2]!==t?(o=d.jsx(Gt,{"data-slot":"select-value",...t}),e[2]=t,e[3]=o):o=e[3],o}function po(n){const e=ee.c(13);let t,o,r,i;e[0]!==n?({className:o,size:i,children:t,...r}=n,e[0]=n,e[1]=t,e[2]=o,e[3]=r,e[4]=i):(t=e[1],o=e[2],r=e[3],i=e[4]);const s=i===void 0?"default":i;let l;e[5]!==o?(l=oe("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 hover:bg-accent hover:text-accent-foreground dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-xl border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-10 data-[size=sm]:h-8 data-[size=xs]:h-7 data-[size=xs]:px-2.5 data-[size=xs]:py-1.5 data-[size=xs]:rounded-lg *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",o),e[5]=o,e[6]=l):l=e[6];let a;e[7]===Symbol.for("react.memo_cache_sentinel")?(a=d.jsx(Yt,{asChild:!0,children:d.jsx(Re,{className:"size-4 opacity-50"})}),e[7]=a):a=e[7];let u;return e[8]!==t||e[9]!==r||e[10]!==s||e[11]!==l?(u=d.jsxs($t,{"data-slot":"select-trigger","data-size":s,className:l,...r,children:[t,a]}),e[8]=t,e[9]=r,e[10]=s,e[11]=l,e[12]=u):u=e[12],u}function fo(n){const e=ee.c(20);let t,o,r,i;e[0]!==n?({className:o,children:t,position:i,...r}=n,e[0]=n,e[1]=t,e[2]=o,e[3]=r,e[4]=i):(t=e[1],o=e[2],r=e[3],i=e[4]);const s=i===void 0?"popper":i,l=s==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1";let a;e[5]!==o||e[6]!==l?(a=oe("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-xl border shadow-md",l,o),e[5]=o,e[6]=l,e[7]=a):a=e[7];let u;e[8]===Symbol.for("react.memo_cache_sentinel")?(u=d.jsx(no,{}),e[8]=u):u=e[8];const h=s==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1";let g;e[9]!==h?(g=oe("p-1",h),e[9]=h,e[10]=g):g=e[10];let w;e[11]!==t||e[12]!==g?(w=d.jsx(Zt,{className:g,children:t}),e[11]=t,e[12]=g,e[13]=w):w=e[13];let y;e[14]===Symbol.for("react.memo_cache_sentinel")?(y=d.jsx(ro,{}),e[14]=y):y=e[14];let S;return e[15]!==s||e[16]!==r||e[17]!==a||e[18]!==w?(S=d.jsx(qt,{children:d.jsxs(Xt,{"data-slot":"select-content",className:a,position:s,...r,children:[u,w,y]})}),e[15]=s,e[16]=r,e[17]=a,e[18]=w,e[19]=S):S=e[19],S}function mo(n){const e=ee.c(16);let t,o,r,i;e[0]!==n?({className:o,children:t,hideCheck:i,...r}=n,e[0]=n,e[1]=t,e[2]=o,e[3]=r,e[4]=i):(t=e[1],o=e[2],r=e[3],i=e[4]);const s=i===void 0?!1:i;let l;e[5]!==o?(l=oe("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-xl py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",o),e[5]=o,e[6]=l):l=e[6];let a;e[7]!==s?(a=!s&&d.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:d.jsx(eo,{children:d.jsx(yt,{className:"size-4"})})}),e[7]=s,e[8]=a):a=e[8];let u;e[9]!==t?(u=d.jsx(Qt,{children:t}),e[9]=t,e[10]=u):u=e[10];let h;return e[11]!==r||e[12]!==l||e[13]!==a||e[14]!==u?(h=d.jsxs(Jt,{"data-slot":"select-item",className:l,...r,children:[a,u]}),e[11]=r,e[12]=l,e[13]=a,e[14]=u,e[15]=h):h=e[15],h}function no(n){const e=ee.c(9);let t,o;e[0]!==n?({className:t,...o}=n,e[0]=n,e[1]=t,e[2]=o):(t=e[1],o=e[2]);let r;e[3]!==t?(r=oe("flex cursor-default items-center justify-center py-1",t),e[3]=t,e[4]=r):r=e[4];let i;e[5]===Symbol.for("react.memo_cache_sentinel")?(i=d.jsx(nt,{className:"size-4"}),e[5]=i):i=e[5];let s;return e[6]!==o||e[7]!==r?(s=d.jsx(to,{"data-slot":"select-scroll-up-button",className:r,...o,children:i}),e[6]=o,e[7]=r,e[8]=s):s=e[8],s}function ro(n){const e=ee.c(9);let t,o;e[0]!==n?({className:t,...o}=n,e[0]=n,e[1]=t,e[2]=o):(t=e[1],o=e[2]);let r;e[3]!==t?(r=oe("flex cursor-default items-center justify-center py-1",t),e[3]=t,e[4]=r):r=e[4];let i;e[5]===Symbol.for("react.memo_cache_sentinel")?(i=d.jsx(Re,{className:"size-4"}),e[5]=i):i=e[5];let s;return e[6]!==o||e[7]!==r?(s=d.jsx(oo,{"data-slot":"select-scroll-down-button",className:r,...o,children:i}),e[6]=o,e[7]=r,e[8]=s):s=e[8],s}export{co as S,po as a,uo as b,fo as c,mo as d,Ne as e,nt as n};
|
|
1
|
+
import{r as c,a6 as Pe,L as rt,z as _e,j as d,a7 as st,H as lt,a8 as Ie,bz as at,a2 as k,a9 as it,B as j,E as N,a5 as $,aa as ct,am as Ee,bx as dt,a4 as ut,ab as pt,ae as ft,ac as mt,ad as ht,af as vt,ag as gt,ah as xt,ai as St,c as ee}from"./index-Bct0X-7r.js";import{V as wt,i as yt}from"./tooltip-CfcC-Rew.js";import{t as Re}from"./ChevronDown-CRNbAv_Y.js";import{c as oe}from"./utils-BrYcHRV_.js";function Ne(n,[e,t]){return Math.min(t,Math.max(e,n))}var Ct=[" ","Enter","ArrowUp","ArrowDown"],bt=[" ","Enter"],J="Select",[de,ue,It]=at(J),[ne]=lt(J,[It,Pe]),pe=Pe(),[Tt,G]=ne(J),[_t,Nt]=ne(J),je=n=>{const{__scopeSelect:e,children:t,open:o,defaultOpen:r,onOpenChange:i,value:s,defaultValue:l,onValueChange:a,dir:u,name:h,autoComplete:g,disabled:w,required:y,form:S}=n,p=pe(e),[v,C]=c.useState(null),[m,x]=c.useState(null),[U,M]=c.useState(!1),re=rt(u),[P,O]=_e({prop:o,defaultProp:r??!1,onChange:i,caller:J}),[F,q]=_e({prop:s,defaultProp:l,onChange:a,caller:J}),L=c.useRef(null),B=v?S||!!v.closest("form"):!0,[W,V]=c.useState(new Set),H=Array.from(W).map(E=>E.props.value).join(";");return d.jsx(st,{...p,children:d.jsxs(Tt,{required:y,scope:e,trigger:v,onTriggerChange:C,valueNode:m,onValueNodeChange:x,valueNodeHasChildren:U,onValueNodeHasChildrenChange:M,contentId:Ie(),value:F,onValueChange:q,open:P,onOpenChange:O,dir:re,triggerPointerDownPosRef:L,disabled:w,children:[d.jsx(de.Provider,{scope:e,children:d.jsx(_t,{scope:n.__scopeSelect,onNativeOptionAdd:c.useCallback(E=>{V(D=>new Set(D).add(E))},[]),onNativeOptionRemove:c.useCallback(E=>{V(D=>{const z=new Set(D);return z.delete(E),z})},[]),children:t})}),B?d.jsxs(Qe,{"aria-hidden":!0,required:y,tabIndex:-1,name:h,autoComplete:g,value:F,onChange:E=>q(E.target.value),disabled:w,form:S,children:[F===void 0?d.jsx("option",{value:""}):null,Array.from(W)]},H):null]})})};je.displayName=J;var Me="SelectTrigger",Ae=c.forwardRef((n,e)=>{const{__scopeSelect:t,disabled:o=!1,...r}=n,i=pe(t),s=G(Me,t),l=s.disabled||o,a=k(e,s.onTriggerChange),u=ue(t),h=c.useRef("touch"),[g,w,y]=tt(p=>{const v=u().filter(x=>!x.disabled),C=v.find(x=>x.value===s.value),m=ot(v,p,C);m!==void 0&&s.onValueChange(m.value)}),S=p=>{l||(s.onOpenChange(!0),y()),p&&(s.triggerPointerDownPosRef.current={x:Math.round(p.pageX),y:Math.round(p.pageY)})};return d.jsx(it,{asChild:!0,...i,children:d.jsx(j.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:l,"data-disabled":l?"":void 0,"data-placeholder":et(s.value)?"":void 0,...r,ref:a,onClick:N(r.onClick,p=>{p.currentTarget.focus(),h.current!=="mouse"&&S(p)}),onPointerDown:N(r.onPointerDown,p=>{h.current=p.pointerType;const v=p.target;v.hasPointerCapture(p.pointerId)&&v.releasePointerCapture(p.pointerId),p.button===0&&p.ctrlKey===!1&&p.pointerType==="mouse"&&(S(p),p.preventDefault())}),onKeyDown:N(r.onKeyDown,p=>{const v=g.current!=="";!(p.ctrlKey||p.altKey||p.metaKey)&&p.key.length===1&&w(p.key),!(v&&p.key===" ")&&Ct.includes(p.key)&&(S(),p.preventDefault())})})})});Ae.displayName=Me;var Oe="SelectValue",De=c.forwardRef((n,e)=>{const{__scopeSelect:t,className:o,style:r,children:i,placeholder:s="",...l}=n,a=G(Oe,t),{onValueNodeHasChildrenChange:u}=a,h=i!==void 0,g=k(e,a.onValueNodeChange);return $(()=>{u(h)},[u,h]),d.jsx(j.span,{...l,ref:g,style:{pointerEvents:"none"},children:et(a.value)?d.jsx(d.Fragment,{children:s}):i})});De.displayName=Oe;var Pt="SelectIcon",ke=c.forwardRef((n,e)=>{const{__scopeSelect:t,children:o,...r}=n;return d.jsx(j.span,{"aria-hidden":!0,...r,ref:e,children:o||"▼"})});ke.displayName=Pt;var Et="SelectPortal",Le=n=>d.jsx(ct,{asChild:!0,...n});Le.displayName=Et;var Q="SelectContent",Be=c.forwardRef((n,e)=>{const t=G(Q,n.__scopeSelect),[o,r]=c.useState();if($(()=>{r(new DocumentFragment)},[]),!t.open){const i=o;return i?Ee.createPortal(d.jsx(Ve,{scope:n.__scopeSelect,children:d.jsx(de.Slot,{scope:n.__scopeSelect,children:d.jsx("div",{children:n.children})})}),i):null}return d.jsx(He,{...n,ref:e})});Be.displayName=Q;var A=10,[Ve,Y]=ne(Q),Rt="SelectContentImpl",jt=ht("SelectContent.RemoveScroll"),He=c.forwardRef((n,e)=>{const{__scopeSelect:t,position:o="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:i,onPointerDownOutside:s,side:l,sideOffset:a,align:u,alignOffset:h,arrowPadding:g,collisionBoundary:w,collisionPadding:y,sticky:S,hideWhenDetached:p,avoidCollisions:v,...C}=n,m=G(Q,t),[x,U]=c.useState(null),[M,re]=c.useState(null),P=k(e,f=>U(f)),[O,F]=c.useState(null),[q,L]=c.useState(null),B=ue(t),[W,V]=c.useState(!1),H=c.useRef(!1);c.useEffect(()=>{if(x)return pt(x)},[x]),ft();const E=c.useCallback(f=>{const[T,...R]=B().map(_=>_.ref.current),[b]=R.slice(-1),I=document.activeElement;for(const _ of f)if(_===I||(_?.scrollIntoView({block:"nearest"}),_===T&&M&&(M.scrollTop=0),_===b&&M&&(M.scrollTop=M.scrollHeight),_?.focus(),document.activeElement!==I))return},[B,M]),D=c.useCallback(()=>E([O,x]),[E,O,x]);c.useEffect(()=>{W&&D()},[W,D]);const{onOpenChange:z,triggerPointerDownPosRef:K}=m;c.useEffect(()=>{if(x){let f={x:0,y:0};const T=b=>{f={x:Math.abs(Math.round(b.pageX)-(K.current?.x??0)),y:Math.abs(Math.round(b.pageY)-(K.current?.y??0))}},R=b=>{f.x<=10&&f.y<=10?b.preventDefault():x.contains(b.target)||z(!1),document.removeEventListener("pointermove",T),K.current=null};return K.current!==null&&(document.addEventListener("pointermove",T),document.addEventListener("pointerup",R,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",T),document.removeEventListener("pointerup",R,{capture:!0})}}},[x,z,K]),c.useEffect(()=>{const f=()=>z(!1);return window.addEventListener("blur",f),window.addEventListener("resize",f),()=>{window.removeEventListener("blur",f),window.removeEventListener("resize",f)}},[z]);const[fe,ae]=tt(f=>{const T=B().filter(I=>!I.disabled),R=T.find(I=>I.ref.current===document.activeElement),b=ot(T,f,R);b&&setTimeout(()=>b.ref.current.focus())}),me=c.useCallback((f,T,R)=>{const b=!H.current&&!R;(m.value!==void 0&&m.value===T||b)&&(F(f),b&&(H.current=!0))},[m.value]),he=c.useCallback(()=>x?.focus(),[x]),te=c.useCallback((f,T,R)=>{const b=!H.current&&!R;(m.value!==void 0&&m.value===T||b)&&L(f)},[m.value]),ie=o==="popper"?Se:ze,se=ie===Se?{side:l,sideOffset:a,align:u,alignOffset:h,arrowPadding:g,collisionBoundary:w,collisionPadding:y,sticky:S,hideWhenDetached:p,avoidCollisions:v}:{};return d.jsx(Ve,{scope:t,content:x,viewport:M,onViewportChange:re,itemRefCallback:me,selectedItem:O,onItemLeave:he,itemTextRefCallback:te,focusSelectedItem:D,selectedItemText:q,position:o,isPositioned:W,searchRef:fe,children:d.jsx(mt,{as:jt,allowPinchZoom:!0,children:d.jsx(vt,{asChild:!0,trapped:m.open,onMountAutoFocus:f=>{f.preventDefault()},onUnmountAutoFocus:N(r,f=>{m.trigger?.focus({preventScroll:!0}),f.preventDefault()}),children:d.jsx(gt,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:f=>f.preventDefault(),onDismiss:()=>m.onOpenChange(!1),children:d.jsx(ie,{role:"listbox",id:m.contentId,"data-state":m.open?"open":"closed",dir:m.dir,onContextMenu:f=>f.preventDefault(),...C,...se,onPlaced:()=>V(!0),ref:P,style:{display:"flex",flexDirection:"column",outline:"none",...C.style},onKeyDown:N(C.onKeyDown,f=>{const T=f.ctrlKey||f.altKey||f.metaKey;if(f.key==="Tab"&&f.preventDefault(),!T&&f.key.length===1&&ae(f.key),["ArrowUp","ArrowDown","Home","End"].includes(f.key)){let b=B().filter(I=>!I.disabled).map(I=>I.ref.current);if(["ArrowUp","End"].includes(f.key)&&(b=b.slice().reverse()),["ArrowUp","ArrowDown"].includes(f.key)){const I=f.target,_=b.indexOf(I);b=b.slice(_+1)}setTimeout(()=>E(b)),f.preventDefault()}})})})})})})});He.displayName=Rt;var Mt="SelectItemAlignedPosition",ze=c.forwardRef((n,e)=>{const{__scopeSelect:t,onPlaced:o,...r}=n,i=G(Q,t),s=Y(Q,t),[l,a]=c.useState(null),[u,h]=c.useState(null),g=k(e,P=>h(P)),w=ue(t),y=c.useRef(!1),S=c.useRef(!0),{viewport:p,selectedItem:v,selectedItemText:C,focusSelectedItem:m}=s,x=c.useCallback(()=>{if(i.trigger&&i.valueNode&&l&&u&&p&&v&&C){const P=i.trigger.getBoundingClientRect(),O=u.getBoundingClientRect(),F=i.valueNode.getBoundingClientRect(),q=C.getBoundingClientRect();if(i.dir!=="rtl"){const I=q.left-O.left,_=F.left-I,X=P.left-_,Z=P.width+X,ve=Math.max(Z,O.width),ge=window.innerWidth-A,xe=Ne(_,[A,Math.max(A,ge-ve)]);l.style.minWidth=Z+"px",l.style.left=xe+"px"}else{const I=O.right-q.right,_=window.innerWidth-F.right-I,X=window.innerWidth-P.right-_,Z=P.width+X,ve=Math.max(Z,O.width),ge=window.innerWidth-A,xe=Ne(_,[A,Math.max(A,ge-ve)]);l.style.minWidth=Z+"px",l.style.right=xe+"px"}const L=w(),B=window.innerHeight-A*2,W=p.scrollHeight,V=window.getComputedStyle(u),H=parseInt(V.borderTopWidth,10),E=parseInt(V.paddingTop,10),D=parseInt(V.borderBottomWidth,10),z=parseInt(V.paddingBottom,10),K=H+E+W+z+D,fe=Math.min(v.offsetHeight*5,K),ae=window.getComputedStyle(p),me=parseInt(ae.paddingTop,10),he=parseInt(ae.paddingBottom,10),te=P.top+P.height/2-A,ie=B-te,se=v.offsetHeight/2,f=v.offsetTop+se,T=H+E+f,R=K-T;if(T<=te){const I=L.length>0&&v===L[L.length-1].ref.current;l.style.bottom="0px";const _=u.clientHeight-p.offsetTop-p.offsetHeight,X=Math.max(ie,se+(I?he:0)+_+D),Z=T+X;l.style.height=Z+"px"}else{const I=L.length>0&&v===L[0].ref.current;l.style.top="0px";const X=Math.max(te,H+p.offsetTop+(I?me:0)+se)+R;l.style.height=X+"px",p.scrollTop=T-te+p.offsetTop}l.style.margin=`${A}px 0`,l.style.minHeight=fe+"px",l.style.maxHeight=B+"px",o?.(),requestAnimationFrame(()=>y.current=!0)}},[w,i.trigger,i.valueNode,l,u,p,v,C,i.dir,o]);$(()=>x(),[x]);const[U,M]=c.useState();$(()=>{u&&M(window.getComputedStyle(u).zIndex)},[u]);const re=c.useCallback(P=>{P&&S.current===!0&&(x(),m?.(),S.current=!1)},[x,m]);return d.jsx(Ot,{scope:t,contentWrapper:l,shouldExpandOnScrollRef:y,onScrollButtonChange:re,children:d.jsx("div",{ref:a,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:U},children:d.jsx(j.div,{...r,ref:g,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})});ze.displayName=Mt;var At="SelectPopperPosition",Se=c.forwardRef((n,e)=>{const{__scopeSelect:t,align:o="start",collisionPadding:r=A,...i}=n,s=pe(t);return d.jsx(xt,{...s,...i,ref:e,align:o,collisionPadding:r,style:{boxSizing:"border-box",...i.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});Se.displayName=At;var[Ot,Te]=ne(Q,{}),we="SelectViewport",Ue=c.forwardRef((n,e)=>{const{__scopeSelect:t,nonce:o,...r}=n,i=Y(we,t),s=Te(we,t),l=k(e,i.onViewportChange),a=c.useRef(0);return d.jsxs(d.Fragment,{children:[d.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),d.jsx(de.Slot,{scope:t,children:d.jsx(j.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:l,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:N(r.onScroll,u=>{const h=u.currentTarget,{contentWrapper:g,shouldExpandOnScrollRef:w}=s;if(w?.current&&g){const y=Math.abs(a.current-h.scrollTop);if(y>0){const S=window.innerHeight-A*2,p=parseFloat(g.style.minHeight),v=parseFloat(g.style.height),C=Math.max(p,v);if(C<S){const m=C+y,x=Math.min(S,m),U=m-x;g.style.height=x+"px",g.style.bottom==="0px"&&(h.scrollTop=U>0?U:0,g.style.justifyContent="flex-end")}}}a.current=h.scrollTop})})})]})});Ue.displayName=we;var Fe="SelectGroup",[Dt,kt]=ne(Fe),Lt=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n,r=Ie();return d.jsx(Dt,{scope:t,id:r,children:d.jsx(j.div,{role:"group","aria-labelledby":r,...o,ref:e})})});Lt.displayName=Fe;var We="SelectLabel",Bt=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n,r=kt(We,t);return d.jsx(j.div,{id:r.id,...o,ref:e})});Bt.displayName=We;var ce="SelectItem",[Vt,Ke]=ne(ce),$e=c.forwardRef((n,e)=>{const{__scopeSelect:t,value:o,disabled:r=!1,textValue:i,...s}=n,l=G(ce,t),a=Y(ce,t),u=l.value===o,[h,g]=c.useState(i??""),[w,y]=c.useState(!1),S=k(e,m=>a.itemRefCallback?.(m,o,r)),p=Ie(),v=c.useRef("touch"),C=()=>{r||(l.onValueChange(o),l.onOpenChange(!1))};if(o==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return d.jsx(Vt,{scope:t,value:o,disabled:r,textId:p,isSelected:u,onItemTextChange:c.useCallback(m=>{g(x=>x||(m?.textContent??"").trim())},[]),children:d.jsx(de.ItemSlot,{scope:t,value:o,disabled:r,textValue:h,children:d.jsx(j.div,{role:"option","aria-labelledby":p,"data-highlighted":w?"":void 0,"aria-selected":u&&w,"data-state":u?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...s,ref:S,onFocus:N(s.onFocus,()=>y(!0)),onBlur:N(s.onBlur,()=>y(!1)),onClick:N(s.onClick,()=>{v.current!=="mouse"&&C()}),onPointerUp:N(s.onPointerUp,()=>{v.current==="mouse"&&C()}),onPointerDown:N(s.onPointerDown,m=>{v.current=m.pointerType}),onPointerMove:N(s.onPointerMove,m=>{v.current=m.pointerType,r?a.onItemLeave?.():v.current==="mouse"&&m.currentTarget.focus({preventScroll:!0})}),onPointerLeave:N(s.onPointerLeave,m=>{m.currentTarget===document.activeElement&&a.onItemLeave?.()}),onKeyDown:N(s.onKeyDown,m=>{a.searchRef?.current!==""&&m.key===" "||(bt.includes(m.key)&&C(),m.key===" "&&m.preventDefault())})})})})});$e.displayName=ce;var le="SelectItemText",Ge=c.forwardRef((n,e)=>{const{__scopeSelect:t,className:o,style:r,...i}=n,s=G(le,t),l=Y(le,t),a=Ke(le,t),u=Nt(le,t),[h,g]=c.useState(null),w=k(e,C=>g(C),a.onItemTextChange,C=>l.itemTextRefCallback?.(C,a.value,a.disabled)),y=h?.textContent,S=c.useMemo(()=>d.jsx("option",{value:a.value,disabled:a.disabled,children:y},a.value),[a.disabled,a.value,y]),{onNativeOptionAdd:p,onNativeOptionRemove:v}=u;return $(()=>(p(S),()=>v(S)),[p,v,S]),d.jsxs(d.Fragment,{children:[d.jsx(j.span,{id:a.textId,...i,ref:w}),a.isSelected&&s.valueNode&&!s.valueNodeHasChildren?Ee.createPortal(i.children,s.valueNode):null]})});Ge.displayName=le;var Ye="SelectItemIndicator",qe=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n;return Ke(Ye,t).isSelected?d.jsx(j.span,{"aria-hidden":!0,...o,ref:e}):null});qe.displayName=Ye;var ye="SelectScrollUpButton",Xe=c.forwardRef((n,e)=>{const t=Y(ye,n.__scopeSelect),o=Te(ye,n.__scopeSelect),[r,i]=c.useState(!1),s=k(e,o.onScrollButtonChange);return $(()=>{if(t.viewport&&t.isPositioned){let l=function(){const u=a.scrollTop>0;i(u)};const a=t.viewport;return l(),a.addEventListener("scroll",l),()=>a.removeEventListener("scroll",l)}},[t.viewport,t.isPositioned]),r?d.jsx(Je,{...n,ref:s,onAutoScroll:()=>{const{viewport:l,selectedItem:a}=t;l&&a&&(l.scrollTop=l.scrollTop-a.offsetHeight)}}):null});Xe.displayName=ye;var Ce="SelectScrollDownButton",Ze=c.forwardRef((n,e)=>{const t=Y(Ce,n.__scopeSelect),o=Te(Ce,n.__scopeSelect),[r,i]=c.useState(!1),s=k(e,o.onScrollButtonChange);return $(()=>{if(t.viewport&&t.isPositioned){let l=function(){const u=a.scrollHeight-a.clientHeight,h=Math.ceil(a.scrollTop)<u;i(h)};const a=t.viewport;return l(),a.addEventListener("scroll",l),()=>a.removeEventListener("scroll",l)}},[t.viewport,t.isPositioned]),r?d.jsx(Je,{...n,ref:s,onAutoScroll:()=>{const{viewport:l,selectedItem:a}=t;l&&a&&(l.scrollTop=l.scrollTop+a.offsetHeight)}}):null});Ze.displayName=Ce;var Je=c.forwardRef((n,e)=>{const{__scopeSelect:t,onAutoScroll:o,...r}=n,i=Y("SelectScrollButton",t),s=c.useRef(null),l=ue(t),a=c.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return c.useEffect(()=>()=>a(),[a]),$(()=>{l().find(h=>h.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[l]),d.jsx(j.div,{"aria-hidden":!0,...r,ref:e,style:{flexShrink:0,...r.style},onPointerDown:N(r.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(o,50))}),onPointerMove:N(r.onPointerMove,()=>{i.onItemLeave?.(),s.current===null&&(s.current=window.setInterval(o,50))}),onPointerLeave:N(r.onPointerLeave,()=>{a()})})}),Ht="SelectSeparator",zt=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n;return d.jsx(j.div,{"aria-hidden":!0,...o,ref:e})});zt.displayName=Ht;var be="SelectArrow",Ut=c.forwardRef((n,e)=>{const{__scopeSelect:t,...o}=n,r=pe(t),i=G(be,t),s=Y(be,t);return i.open&&s.position==="popper"?d.jsx(St,{...r,...o,ref:e}):null});Ut.displayName=be;var Ft="SelectBubbleInput",Qe=c.forwardRef(({__scopeSelect:n,value:e,...t},o)=>{const r=c.useRef(null),i=k(o,r),s=dt(e);return c.useEffect(()=>{const l=r.current;if(!l)return;const a=window.HTMLSelectElement.prototype,h=Object.getOwnPropertyDescriptor(a,"value").set;if(s!==e&&h){const g=new Event("change",{bubbles:!0});h.call(l,e),l.dispatchEvent(g)}},[s,e]),d.jsx(j.select,{...t,style:{...wt,...t.style},ref:i,defaultValue:e})});Qe.displayName=Ft;function et(n){return n===""||n===void 0}function tt(n){const e=ut(n),t=c.useRef(""),o=c.useRef(0),r=c.useCallback(s=>{const l=t.current+s;e(l),(function a(u){t.current=u,window.clearTimeout(o.current),u!==""&&(o.current=window.setTimeout(()=>a(""),1e3))})(l)},[e]),i=c.useCallback(()=>{t.current="",window.clearTimeout(o.current)},[]);return c.useEffect(()=>()=>window.clearTimeout(o.current),[]),[t,r,i]}function ot(n,e,t){const r=e.length>1&&Array.from(e).every(u=>u===e[0])?e[0]:e,i=t?n.indexOf(t):-1;let s=Wt(n,Math.max(i,0));r.length===1&&(s=s.filter(u=>u!==t));const a=s.find(u=>u.textValue.toLowerCase().startsWith(r.toLowerCase()));return a!==t?a:void 0}function Wt(n,e){return n.map((t,o)=>n[(e+o)%n.length])}var Kt=je,$t=Ae,Gt=De,Yt=ke,qt=Le,Xt=Be,Zt=Ue,Jt=$e,Qt=Ge,eo=qe,to=Xe,oo=Ze;const nt=({size:n=24,color:e="currentColor",...t})=>c.createElement("svg",{viewBox:"0 0 24 24",width:n,height:n,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...t},c.createElement("path",{d:"m18 15-6-6-6 6"}));nt.displayName="ChevronUp";function co(n){const e=ee.c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let o;return e[2]!==t?(o=d.jsx(Kt,{"data-slot":"select",...t}),e[2]=t,e[3]=o):o=e[3],o}function uo(n){const e=ee.c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let o;return e[2]!==t?(o=d.jsx(Gt,{"data-slot":"select-value",...t}),e[2]=t,e[3]=o):o=e[3],o}function po(n){const e=ee.c(13);let t,o,r,i;e[0]!==n?({className:o,size:i,children:t,...r}=n,e[0]=n,e[1]=t,e[2]=o,e[3]=r,e[4]=i):(t=e[1],o=e[2],r=e[3],i=e[4]);const s=i===void 0?"default":i;let l;e[5]!==o?(l=oe("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 hover:bg-accent hover:text-accent-foreground dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-xl border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-10 data-[size=sm]:h-8 data-[size=xs]:h-7 data-[size=xs]:px-2.5 data-[size=xs]:py-1.5 data-[size=xs]:rounded-lg *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",o),e[5]=o,e[6]=l):l=e[6];let a;e[7]===Symbol.for("react.memo_cache_sentinel")?(a=d.jsx(Yt,{asChild:!0,children:d.jsx(Re,{className:"size-4 opacity-50"})}),e[7]=a):a=e[7];let u;return e[8]!==t||e[9]!==r||e[10]!==s||e[11]!==l?(u=d.jsxs($t,{"data-slot":"select-trigger","data-size":s,className:l,...r,children:[t,a]}),e[8]=t,e[9]=r,e[10]=s,e[11]=l,e[12]=u):u=e[12],u}function fo(n){const e=ee.c(20);let t,o,r,i;e[0]!==n?({className:o,children:t,position:i,...r}=n,e[0]=n,e[1]=t,e[2]=o,e[3]=r,e[4]=i):(t=e[1],o=e[2],r=e[3],i=e[4]);const s=i===void 0?"popper":i,l=s==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1";let a;e[5]!==o||e[6]!==l?(a=oe("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-xl border shadow-md",l,o),e[5]=o,e[6]=l,e[7]=a):a=e[7];let u;e[8]===Symbol.for("react.memo_cache_sentinel")?(u=d.jsx(no,{}),e[8]=u):u=e[8];const h=s==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1";let g;e[9]!==h?(g=oe("p-1",h),e[9]=h,e[10]=g):g=e[10];let w;e[11]!==t||e[12]!==g?(w=d.jsx(Zt,{className:g,children:t}),e[11]=t,e[12]=g,e[13]=w):w=e[13];let y;e[14]===Symbol.for("react.memo_cache_sentinel")?(y=d.jsx(ro,{}),e[14]=y):y=e[14];let S;return e[15]!==s||e[16]!==r||e[17]!==a||e[18]!==w?(S=d.jsx(qt,{children:d.jsxs(Xt,{"data-slot":"select-content",className:a,position:s,...r,children:[u,w,y]})}),e[15]=s,e[16]=r,e[17]=a,e[18]=w,e[19]=S):S=e[19],S}function mo(n){const e=ee.c(16);let t,o,r,i;e[0]!==n?({className:o,children:t,hideCheck:i,...r}=n,e[0]=n,e[1]=t,e[2]=o,e[3]=r,e[4]=i):(t=e[1],o=e[2],r=e[3],i=e[4]);const s=i===void 0?!1:i;let l;e[5]!==o?(l=oe("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-xl py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",o),e[5]=o,e[6]=l):l=e[6];let a;e[7]!==s?(a=!s&&d.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:d.jsx(eo,{children:d.jsx(yt,{className:"size-4"})})}),e[7]=s,e[8]=a):a=e[8];let u;e[9]!==t?(u=d.jsx(Qt,{children:t}),e[9]=t,e[10]=u):u=e[10];let h;return e[11]!==r||e[12]!==l||e[13]!==a||e[14]!==u?(h=d.jsxs(Jt,{"data-slot":"select-item",className:l,...r,children:[a,u]}),e[11]=r,e[12]=l,e[13]=a,e[14]=u,e[15]=h):h=e[15],h}function no(n){const e=ee.c(9);let t,o;e[0]!==n?({className:t,...o}=n,e[0]=n,e[1]=t,e[2]=o):(t=e[1],o=e[2]);let r;e[3]!==t?(r=oe("flex cursor-default items-center justify-center py-1",t),e[3]=t,e[4]=r):r=e[4];let i;e[5]===Symbol.for("react.memo_cache_sentinel")?(i=d.jsx(nt,{className:"size-4"}),e[5]=i):i=e[5];let s;return e[6]!==o||e[7]!==r?(s=d.jsx(to,{"data-slot":"select-scroll-up-button",className:r,...o,children:i}),e[6]=o,e[7]=r,e[8]=s):s=e[8],s}function ro(n){const e=ee.c(9);let t,o;e[0]!==n?({className:t,...o}=n,e[0]=n,e[1]=t,e[2]=o):(t=e[1],o=e[2]);let r;e[3]!==t?(r=oe("flex cursor-default items-center justify-center py-1",t),e[3]=t,e[4]=r):r=e[4];let i;e[5]===Symbol.for("react.memo_cache_sentinel")?(i=d.jsx(Re,{className:"size-4"}),e[5]=i):i=e[5];let s;return e[6]!==o||e[7]!==r?(s=d.jsx(oo,{"data-slot":"select-scroll-down-button",className:r,...o,children:i}),e[6]=o,e[7]=r,e[8]=s):s=e[8],s}export{co as S,po as a,uo as b,fo as c,mo as d,Ne as e,nt as n};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as q,Z as D,r as U,y as B,x as K,j as s,v as P,c as $,t as y,K as I,a as Q,w as F}from"./index-
|
|
1
|
+
import{f as q,Z as D,r as U,y as B,x as K,j as s,v as P,c as $,t as y,K as I,a as Q,w as F}from"./index-Bct0X-7r.js";import{C as T}from"./collection-header-BjjVtD4O.js";import{C as A}from"./collection-page-JbcdC8h1.js";import{u as H}from"./tooltip-CfcC-Rew.js";import{u as Y,B as N}from"./button-DwabStBc.js";import{a as Z,F as R,b as O,c as E,d as L,f as k,e as G}from"./form-BZoUBeRw.js";import{I as M}from"./input-B0bndeDO.js";import{i as J}from"./Upload01-BRcWuo7v.js";import{i as V}from"./X-B-teZACt.js";import"./collection-display-button-Y2mhlw1Q.js";import"./dropdown-menu-D49UF2Ht.js";import"./Grid01-Dz3rGiqv.js";import"./utils-BrYcHRV_.js";const W=P({name:F().min(1,"Name is required").max(255,"Name is too long"),slug:F().min(1,"Slug is required").max(50,"Slug is too long").regex(/^[a-z0-9-]+$/,"Slug must contain only lowercase letters, numbers, and hyphens"),logo:F().optional()});function X(C){const e=$.c(24),{value:n,onChange:o,name:d}=C,a=U.useRef(null);let m;e[0]!==o?(m=w=>{const z=w.target.files?.[0];if(z){if(z.size>2097152){y.error("Image must be smaller than 2MB");return}const c=new FileReader;c.onerror=()=>{const b=c.error;console.error("FileReader error:",b),y.error(b?.message||"Failed to read image file. Please try again."),a.current&&(a.current.value="")},c.onloadend=()=>{if(c.readyState===FileReader.DONE&&c.result){const b=c.result;o(b)}},c.readAsDataURL(z)}},e[0]=o,e[1]=m):m=e[1];const p=m;let i;e[2]===Symbol.for("react.memo_cache_sentinel")?(i=()=>{a.current?.click()},e[2]=i):i=e[2];const t=i;let l;e[3]!==o?(l=w=>{w.stopPropagation(),o("")},e[3]=o,e[4]=l):l=e[4];const r=l;let u;e[5]!==p?(u=s.jsx("input",{type:"file",ref:a,className:"hidden",accept:"image/*",onChange:p}),e[5]=p,e[6]=u):u=e[6];let g;e[7]!==r||e[8]!==d||e[9]!==n?(g=n?s.jsxs("div",{className:"relative group",children:[s.jsx("div",{className:"h-20 w-20 rounded-lg border border-border bg-muted/20 overflow-hidden",children:s.jsx("img",{src:n,alt:d||"Organization logo",className:"w-full h-full object-cover"})}),s.jsx("button",{type:"button",onClick:r,className:"absolute -top-2 -right-2 h-6 w-6 rounded-full bg-destructive text-destructive-foreground opacity-0 group-hover:opacity-100 transition-opacity flex items-center justify-center",children:s.jsx(V,{className:"h-3 w-3"})})]}):s.jsxs("button",{type:"button",onClick:t,className:"h-20 w-20 rounded-lg border-2 border-dashed border-border hover:border-foreground/50 hover:bg-accent/50 transition-colors flex flex-col items-center justify-center gap-1 text-muted-foreground hover:text-foreground",children:[s.jsx(J,{className:"h-5 w-5"}),s.jsx("span",{className:"text-xs",children:"Upload"})]}),e[7]=r,e[8]=d,e[9]=n,e[10]=g):g=e[10];const S=n?"Change Logo":"Upload Logo";let x;e[11]!==S?(x=s.jsx(N,{type:"button",variant:"outline",size:"sm",onClick:t,className:"mb-2",children:S}),e[11]=S,e[12]=x):x=e[12];let h;e[13]!==r||e[14]!==n?(h=n&&s.jsx(N,{type:"button",variant:"ghost",size:"sm",onClick:r,className:"ml-2",children:"Remove"}),e[13]=r,e[14]=n,e[15]=h):h=e[15];let j;e[16]===Symbol.for("react.memo_cache_sentinel")?(j=s.jsx("p",{className:"text-xs text-muted-foreground mt-2",children:"Recommended: Square image, at least 200x200px. Max 2MB."}),e[16]=j):j=e[16];let f;e[17]!==x||e[18]!==h?(f=s.jsxs("div",{className:"flex-1",children:[x,h,j]}),e[17]=x,e[18]=h,e[19]=f):f=e[19];let v;return e[20]!==f||e[21]!==u||e[22]!==g?(v=s.jsxs("div",{className:"flex items-start gap-4",children:[u,g,f]}),e[20]=f,e[21]=u,e[22]=g,e[23]=v):v=e[23],v}function ue(){const C=q(),{org:e}=H(),n=D(),[o,d]=U.useState(!1),a=B({resolver:K(W),values:{name:e.name??"",slug:e.slug??"",logo:e.logo??""}}),m=Y({mutationFn:async t=>{const l={name:t.name,slug:t.slug};t.logo!==void 0&&(l.logo=t.logo||null);const r=await Q.organization.update({organizationId:e.id,data:l});if(r?.error)throw new Error(r.error.message||"Failed to update organization");return r},onSuccess:t=>{n.invalidateQueries({queryKey:I.organizations()}),n.invalidateQueries({queryKey:I.activeOrganization(e.slug)}),y.success("Organization settings updated successfully"),t?.data?.slug&&t.data.slug!==e.slug&&C({to:"/$org/settings",params:{org:t.data.slug}})},onError:t=>{y.error(t instanceof Error?t.message:"Failed to update organization")},onSettled:()=>{d(!1)}}),p=t=>{d(!0),m.mutate(t)},i=a.formState.isDirty;return s.jsxs(A,{children:[s.jsx(T,{title:"Settings"}),s.jsx("div",{className:"flex-1 overflow-auto",children:s.jsx("div",{className:"flex h-full",children:s.jsx("div",{className:"flex-1 overflow-auto",children:s.jsx("div",{className:"p-5 max-w-2xl",children:s.jsxs("div",{className:"space-y-6",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-lg font-semibold text-foreground",children:"Organization"}),s.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Update your organization's name, slug, and logo."})]}),s.jsx(Z,{...a,children:s.jsxs("form",{onSubmit:a.handleSubmit(p),className:"space-y-6",children:[s.jsx(R,{control:a.control,name:"name",render:({field:t})=>s.jsxs(O,{children:[s.jsx(E,{children:"Organization Name"}),s.jsx(L,{children:s.jsx(M,{placeholder:"My Organization",...t,disabled:o})}),s.jsx(k,{})]})}),s.jsx(R,{control:a.control,name:"slug",render:({field:t})=>s.jsxs(O,{children:[s.jsx(E,{children:"Organization Slug"}),s.jsx(L,{children:s.jsx(M,{placeholder:"my-organization",...t,disabled:o,onChange:l=>{const r=l.target.value.toLowerCase().replace(/[^a-z0-9-]/g,"");t.onChange(r)}})}),s.jsx(G,{children:"Used in URLs. Only lowercase letters, numbers, and hyphens are allowed."}),s.jsx(k,{})]})}),s.jsx(R,{control:a.control,name:"logo",render:({field:t})=>s.jsxs(O,{children:[s.jsx(E,{children:"Logo"}),s.jsx(L,{children:s.jsx(X,{value:t.value,onChange:t.onChange,name:a.watch("name")})}),s.jsx(k,{})]})}),s.jsxs("div",{className:"flex items-center gap-3 pt-4",children:[s.jsx(N,{type:"submit",disabled:!i||o,className:"min-w-24",children:o?"Saving...":"Save Changes"}),i&&s.jsx(N,{type:"button",variant:"outline",onClick:()=>a.reset(),disabled:o,children:"Cancel"})]})]})})]})})})})})]})}export{ue as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as x,c as N,j as r,e as Jn,f as lt,a as Ke,t as Qn,R as es,T as ts,D as ns,C as ss,P as os,g as as,O as rs,h as ls,i as is,k as cs,d as Ft,l as ds,G as us,U as fs,m as ms,S as Kt,n as ps,o as hs,N as xs,p as gs,q as bs,K as vs,s as Zt}from"./index-BFGV_ZyQ.js";import{i as ys,E as Ss}from"./SearchMd-dWvbF6MG.js";import{u as ws,I as Mt,n as js}from"./use-connection-DfrXFTVM.js";import{u as Be,L as Ze}from"./localstorage-keys-CKD_ZpQC.js";import{u as qe,T as Cs,a as Ns,b as zs,c as _s,L as Et,i as Is,P as ks,O as Ps}from"./tooltip-B1UObqaJ.js";import{B as Ce}from"./button-DGzvT_2A.js";import{c as H}from"./utils-D8oc_Xja.js";import{i as jt}from"./CpuChip02-CY8-jTO9.js";import{s as $s}from"./Plus-DHLB4x84.js";import{i as ot}from"./X-B95LxPIt.js";import{u as Ms,a as Es,b as Rs,c as As,d as Ds,C as se,D as Ts,e as Ls,f as Os,g as Hs,h as Bs,i as Us,j as Gs}from"./deco-chat-skeleton-BAqDOmQt.js";import{P as qt,a as Yt,b as Xt}from"./popover-Bc_J6DJM.js";import{s as Ws}from"./Clock-s023drCB.js";import{s as Vs}from"./Trash01-B8SyVfGZ.js";import{u as Fs}from"./use-binding-BAah0fz3.js";import{E as Jt}from"./error-boundary-BePJNb-A.js";import{i as Ks}from"./File06-CaEGX5DR.js";import{u as Ye}from"./use-mobile-CZP-mMZd.js";import{u as Qt,a as Zs}from"./use-organization-settings-GOa26Bje.js";import{C as qs}from"./create-organization-dialog-CO78Byme.js";import{I as Ys}from"./input-CSN83rcG.js";import{A as Ue}from"./avatar-BHmRC7PJ.js";import{c as Xs}from"./Grid01-DzkX4KgN.js";import{D as Js,a as Qs,b as eo,c as to,d as Rt}from"./dropdown-menu-D1IcmwBM.js";import{a as no}from"./Copy01-Bm7GrXLR.js";import{n as At}from"./LinkExternal01-v_wZOVfQ.js";import{D as en,a as tn,b as nn,c as sn,d as on}from"./dialog-BQqZMrZX.js";import"./useQuery-B00cZGqv.js";import"./textarea-B9KhTSks.js";import"./select-zI1MuLqv.js";import"./ChevronDown-CJBpL9ke.js";import"./use-gateway-MMJo-JLn.js";import"./AlertCircle-BRDn8bYf.js";import"./connection-card-CtFpN05k.js";import"./card-DhiM8w8S.js";import"./spinner-Bz0yGoI-.js";import"./InfoCircle-D8u9C2rC.js";import"./auth-DzSQcnhF.js";import"./alert-dialog-UMEPZCAs.js";import"./form-CtkKIwlr.js";const an=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M9 7H4.6c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C3 7.76 3 8.04 3 8.6v10.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C3.76 21 4.04 21 4.6 21H9m0 0h6m-6 0V4.6c0-.56 0-.84.109-1.054a1 1 0 0 1 .437-.437C9.76 3 10.04 3 10.6 3h2.8c.56 0 .84 0 1.054.109a1 1 0 0 1 .437.437C15 3.76 15 4.04 15 4.6V21m0-10h4.4c.56 0 .84 0 1.054.109a1 1 0 0 1 .437.437C21 11.76 21 12.04 21 12.6v6.8c0 .56 0 .84-.109 1.054a1 1 0 0 1-.437.437C20.24 21 19.96 21 19.4 21H15"}));an.displayName="BarChart10";const rn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M15 21v-5.4c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C14.24 14 13.96 14 13.4 14h-2.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C9 14.76 9 15.04 9 15.6V21M3 7a3 3 0 0 0 6 0 3 3 0 1 0 6 0 3 3 0 1 0 6 0M6.2 21h11.6c1.12 0 1.68 0 2.108-.218a2 2 0 0 0 .874-.874C21 19.48 21 18.92 21 17.8V6.2c0-1.12 0-1.68-.218-2.108a2 2 0 0 0-.874-.874C19.48 3 18.92 3 17.8 3H6.2c-1.12 0-1.68 0-2.108.218a2 2 0 0 0-.874.874C3 4.52 3 5.08 3 6.2v11.6c0 1.12 0 1.68.218 2.108a2 2 0 0 0 .874.874C4.52 21 5.08 21 6.2 21Z"}));rn.displayName="Building02";const ln=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"m7 15 5 5 5-5M7 9l5-5 5 5"}));ln.displayName="ChevronSelectorVertical";const cn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M12 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm7-14a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM5 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"}));cn.displayName="DotsGrid";const dn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M2 12h20M2 12c0 5.523 4.477 10 10 10M2 12C2 6.477 6.477 2 12 2m10 10c0 5.523-4.477 10-10 10m10-10c0-5.523-4.477-10-10-10m0 0a15.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 10"}));dn.displayName="Globe01";const un=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M9 21v-7.4c0-.56 0-.84.109-1.054a1 1 0 0 1 .437-.437C9.76 12 10.04 12 10.6 12h2.8c.56 0 .84 0 1.054.109a1 1 0 0 1 .437.437C15 12.76 15 13.04 15 13.6V21M11.018 2.764 4.235 8.039c-.453.353-.68.53-.843.75a2 2 0 0 0-.318.65C3 9.704 3 9.991 3 10.565V17.8c0 1.12 0 1.68.218 2.108a2 2 0 0 0 .874.874C4.52 21 5.08 21 6.2 21h11.6c1.12 0 1.68 0 2.108-.218a2 2 0 0 0 .874-.874C21 19.48 21 18.92 21 17.8v-7.235c0-.574 0-.861-.074-1.126a2.002 2.002 0 0 0-.318-.65c-.163-.22-.39-.397-.843-.75l-6.783-5.275c-.351-.273-.527-.41-.72-.462a1 1 0 0 0-.523 0c-.194.052-.37.189-.721.462Z"}));un.displayName="Home02";const fn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M15 3v18M7.8 3h8.4c1.68 0 2.52 0 3.162.327a3 3 0 0 1 1.311 1.311C21 5.28 21 6.12 21 7.8v8.4c0 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 3Z"}));fn.displayName="LayoutRight";const mn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"m16 17 5-5m0 0-5-5m5 5H9m0-9H7.8c-1.68 0-2.52 0-3.162.327a3 3 0 0 0-1.311 1.311C3 5.28 3 6.12 3 7.8v8.4c0 1.68 0 2.52.327 3.162a3 3 0 0 0 1.311 1.311C5.28 21 6.12 21 7.8 21H9"}));mn.displayName="LogOut01";const pn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"m2 7 8.165 5.715c.661.463.992.695 1.351.784a2 2 0 0 0 .968 0c.36-.09.69-.32 1.351-.784L22 7M6.8 20h10.4c1.68 0 2.52 0 3.162-.327a3 3 0 0 0 1.311-1.311C22 17.72 22 16.88 22 15.2V8.8c0-1.68 0-2.52-.327-3.162a3 3 0 0 0-1.311-1.311C19.72 4 18.88 4 17.2 4H6.8c-1.68 0-2.52 0-3.162.327a3 3 0 0 0-1.311 1.311C2 6.28 2 7.12 2 8.8v6.4c0 1.68 0 2.52.327 3.162a3 3 0 0 0 1.311 1.311C4.28 20 5.12 20 6.8 20Z"}));pn.displayName="Mail01";const hn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"}),x.createElement("path",{d:"M18.727 14.727a1.5 1.5 0 0 0 .3 1.655l.055.054a1.816 1.816 0 0 1 0 2.573 1.818 1.818 0 0 1-2.573 0l-.055-.055a1.5 1.5 0 0 0-1.654-.3 1.5 1.5 0 0 0-.91 1.373v.155a1.818 1.818 0 1 1-3.636 0V20.1a1.5 1.5 0 0 0-.981-1.373 1.5 1.5 0 0 0-1.655.3l-.054.055a1.818 1.818 0 0 1-3.106-1.287 1.818 1.818 0 0 1 .533-1.286l.054-.055a1.5 1.5 0 0 0 .3-1.654 1.5 1.5 0 0 0-1.372-.91h-.155a1.818 1.818 0 1 1 0-3.636H3.9a1.5 1.5 0 0 0 1.373-.981 1.5 1.5 0 0 0-.3-1.655l-.055-.054A1.818 1.818 0 1 1 7.491 4.99l.054.054a1.5 1.5 0 0 0 1.655.3h.073a1.5 1.5 0 0 0 .909-1.372v-.155a1.818 1.818 0 0 1 3.636 0V3.9a1.499 1.499 0 0 0 .91 1.373 1.5 1.5 0 0 0 1.654-.3l.054-.055a1.817 1.817 0 0 1 2.573 0 1.819 1.819 0 0 1 0 2.573l-.055.054a1.5 1.5 0 0 0-.3 1.655v.073a1.5 1.5 0 0 0 1.373.909h.155a1.818 1.818 0 0 1 0 3.636H20.1a1.499 1.499 0 0 0-1.373.91Z"}));hn.displayName="Settings01";const xn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M5.316 19.438A4.001 4.001 0 0 1 9 17h6a4.001 4.001 0 0 1 3.684 2.438M16 9.5a4 4 0 1 1-8 0 4 4 0 0 1 8 0Zm6 2.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z"}));xn.displayName="UserCircle";const gn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M22 21v-2a4.002 4.002 0 0 0-3-3.874M15.5 3.291a4.001 4.001 0 0 1 0 7.418M17 21c0-1.864 0-2.796-.305-3.53a4 4 0 0 0-2.164-2.165C13.796 15 12.864 15 11 15H8c-1.864 0-2.796 0-3.53.305a4 4 0 0 0-2.166 2.164C2 18.204 2 19.136 2 21M13.5 7a4 4 0 1 1-8 0 4 4 0 0 1 8 0Z"}));gn.displayName="Users01";function zt(){const t=N.c(4);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=Ze.decoChatOpen(),t[0]=e):e=t[0];const[n,s]=Be(e,so);let o;return t[1]!==n||t[2]!==s?(o=[n,s],t[1]=n,t[2]=s,t[3]=o):o=t[3],o}function so(t){return!!(t??!1)}function oo(t){const e=N.c(14),{title:n,description:s,avatar:o,avatarNode:a,className:l}=t,i=n===void 0?"Start a conversation":n;let c;e[0]!==l?(c=H("flex flex-col items-center justify-center gap-4 p-8 text-center",l),e[0]=l,e[1]=c):c=e[1];let d;e[2]!==o||e[3]!==a?(d=a||o&&r.jsx("img",{src:o,alt:"Chat avatar",className:"size-[60px] rounded-[18px] border-[1.875px] border-border/10"}),e[2]=o,e[3]=a,e[4]=d):d=e[4];let m;e[5]!==i?(m=i&&r.jsx("h3",{className:"text-xl font-medium text-foreground",children:i}),e[5]=i,e[6]=m):m=e[6];let f;e[7]!==s?(f=s&&r.jsx("div",{className:"text-muted-foreground text-center text-sm max-w-md",children:s}),e[7]=s,e[8]=f):f=e[8];let u;return e[9]!==c||e[10]!==d||e[11]!==m||e[12]!==f?(u=r.jsxs("div",{className:c,children:[d,m,f]}),e[9]=c,e[10]=d,e[11]=m,e[12]=f,e[13]=u):u=e[13],u}const bn=()=>crypto.randomUUID(),vn=x.createContext(null);function ao(t){const e=N.c(15),{children:n}=t,{locator:s}=qe(),o=Ms(),[a,l]=Be(Ze.threadManagerState(s)+":active-id",ro);let i;e[0]!==l||e[1]!==o?(i=p=>{const v=p?.id||crypto.randomUUID(),b=new Date().toISOString(),g={id:v,title:p?.title||"",created_at:p?.created_at||b,updated_at:p?.updated_at||b,hidden:p?.hidden??!1};return o.insert.mutate(g),l(v),g},e[0]=l,e[1]=o,e[2]=i):i=e[2];const c=i;let d;e[3]!==a||e[4]!==l||e[5]!==o?(d=p=>{o.update.mutate({id:p,updates:{hidden:!0,updated_at:new Date().toISOString()}}),a===p&&l(bn())},e[3]=a,e[4]=l,e[5]=o,e[6]=d):d=e[6];const m=d;let f;e[7]!==a||e[8]!==c||e[9]!==m||e[10]!==l?(f={activeThreadId:a,createThread:c,setActiveThreadId:l,hideThread:m},e[7]=a,e[8]=c,e[9]=m,e[10]=l,e[11]=f):f=e[11];const u=f;let h;return e[12]!==n||e[13]!==u?(h=r.jsx(vn.Provider,{value:u,children:n}),e[12]=n,e[13]=u,e[14]=h):h=e[14],h}function ro(t){return t||bn()}function lo(){const t=x.useContext(vn);if(!t)throw new Error("useChat must be used within a ChatProvider");return t}function io(t){const e=new Date(t),s=new Date().getTime()-e.getTime(),o=Math.floor(s/6e4),a=Math.floor(s/36e5);return o<1?"now":o<60?`${o}m`:`${a}h`}function co(t){const e=new Date,n=new Date(e.getFullYear(),e.getMonth(),e.getDate()),s=new Date(n.getTime()-864e5),o=new Date(n.getTime()-7*864e5),a=new Date(n.getTime()-30*864e5),l=[],i=[],c=[],d=[],m=[];for(const u of t){const h=new Date(u.updated_at);h>=n?l.push(u):h>=s?i.push(u):h>=o?c.push(u):h>=a?d.push(u):m.push(u)}const f=[];return l.length>0&&f.push({label:"Today",threads:l,showRelativeTime:!0}),i.length>0&&f.push({label:"Yesterday",threads:i,showRelativeTime:!1}),c.length>0&&f.push({label:"7 days ago",threads:c,showRelativeTime:!1}),d.length>0&&f.push({label:"30 days ago",threads:d,showRelativeTime:!1}),m.length>0&&f.push({label:"Older",threads:m,showRelativeTime:!1}),f}function uo(t){const e=N.c(36),{threads:n,activeThreadId:s,onSelectThread:o,onRemoveThread:a,onOpen:l}=t,[i,c]=x.useState("");let d,m,f,u,h,p,v,b,g;if(e[0]!==s||e[1]!==l||e[2]!==a||e[3]!==o||e[4]!==i||e[5]!==n){const _=i.trim()?n.filter($=>($.title||"New chat").toLowerCase().includes(i.toLowerCase())):n,C=co(_);let w;e[15]!==l?(w=$=>{$?l?.():c("")},e[15]=l,e[16]=w):w=e[16];const O=w;m=qt,b=O,e[17]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(Yt,{asChild:!0,children:r.jsx("button",{type:"button",className:"flex size-6 items-center justify-center rounded-full p-1 hover:bg-transparent group cursor-pointer",title:"Chat history",children:r.jsx(Ws,{size:16,className:"text-muted-foreground group-hover:text-foreground transition-colors"})})}),e[17]=g):g=e[17],d=Xt,h="end",p="w-80 p-0";let M;e[18]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx(ys,{size:16,className:"text-muted-foreground shrink-0"}),e[18]=M):M=e[18];let R;e[19]===Symbol.for("react.memo_cache_sentinel")?(R=$=>c($.target.value),e[19]=R):R=e[19],e[20]!==i?(v=r.jsx("div",{className:"border-b",children:r.jsxs("label",{className:"flex items-center gap-2.5 h-12 px-4 cursor-text",children:[M,r.jsx("input",{type:"text",placeholder:"Search chats...",value:i,onChange:R,className:"flex-1 border-0 shadow-none focus:outline-none px-0 h-full text-sm placeholder:text-muted-foreground/50 bg-transparent"})]})}),e[20]=i,e[21]=v):v=e[21],f="max-h-[300px] overflow-y-auto",u=_.length===0?r.jsx("div",{className:"p-4 text-center text-sm text-muted-foreground",children:i.trim()?"No chats found":"No chats yet"}):C.map(($,D)=>r.jsxs("div",{children:[D>0&&r.jsx("div",{className:"border-t mx-3"}),r.jsx("div",{className:"px-3 py-1",children:r.jsx("span",{className:"text-xs font-medium text-muted-foreground tracking-wide",children:$.label})}),$.threads.map(L=>{const Z=L.id===s;return r.jsxs("div",{className:`flex items-center gap-2 px-3 py-2 hover:bg-accent cursor-pointer group ${Z?"bg-accent/50":""}`,onClick:()=>o(L.id),children:[r.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-2",children:[r.jsx("span",{className:"text-sm truncate",children:L.title||"New chat"}),r.jsx("span",{className:"text-xs text-muted-foreground shrink-0",children:Z?"current":$.showRelativeTime?io(L.updated_at):null})]}),r.jsx("button",{type:"button",onClick:B=>{B.stopPropagation(),a(L.id)},className:"opacity-0 cursor-pointer group/trash group-hover:opacity-100 p-1 hover:bg-destructive/10 rounded transition-opacity",title:"Remove chat",children:r.jsx(Vs,{size:14,className:"text-muted-foreground group-hover/trash:text-destructive"})})]},L.id)})]},$.label)),e[0]=s,e[1]=l,e[2]=a,e[3]=o,e[4]=i,e[5]=n,e[6]=d,e[7]=m,e[8]=f,e[9]=u,e[10]=h,e[11]=p,e[12]=v,e[13]=b,e[14]=g}else d=e[6],m=e[7],f=e[8],u=e[9],h=e[10],p=e[11],v=e[12],b=e[13],g=e[14];let y;e[22]!==f||e[23]!==u?(y=r.jsx("div",{className:f,children:u}),e[22]=f,e[23]=u,e[24]=y):y=e[24];let j;e[25]!==d||e[26]!==h||e[27]!==p||e[28]!==v||e[29]!==y?(j=r.jsxs(d,{align:h,className:p,children:[v,y]}),e[25]=d,e[26]=h,e[27]=p,e[28]=v,e[29]=y,e[30]=j):j=e[30];let z;return e[31]!==m||e[32]!==b||e[33]!==g||e[34]!==j?(z=r.jsxs(m,{onOpenChange:b,children:[g,j]}),e[31]=m,e[32]=b,e[33]=g,e[34]=j,e[35]=z):z=e[35],z}function fo(t){const e=/\/[^/]+\/mcps\/([^/]+)\/([^/]+)\/([^/]+)/,n=t.match(e);return n&&n[1]&&n[2]&&n[3]?{connectionId:decodeURIComponent(n[1]),collectionName:decodeURIComponent(n[2]),itemId:decodeURIComponent(n[3])}:{connectionId:null,collectionName:null,itemId:null}}function mo(){const t=N.c(2),e=Jn();let n;t[0]!==e.location.pathname?(n=fo(e.location.pathname),t[0]=e.location.pathname,t[1]=n):n=t[1];const{connectionId:s,collectionName:o,itemId:a}=n;return`You are an AI assistant running in an MCP Mesh environment.
|
|
1
|
+
import{r as x,c as N,j as r,e as Jn,f as lt,a as Ke,t as Qn,R as es,T as ts,D as ns,C as ss,P as os,g as as,O as rs,h as ls,i as is,k as cs,d as Ft,l as ds,G as us,U as fs,m as ms,S as Kt,n as ps,o as hs,N as xs,p as gs,q as bs,K as vs,s as Zt}from"./index-Bct0X-7r.js";import{i as ys,E as Ss}from"./SearchMd-Dg5hjJMg.js";import{u as ws,I as Mt,n as js}from"./use-connection-DmNS8HuU.js";import{u as Be,L as Ze}from"./localstorage-keys-BJ5XIwxg.js";import{u as qe,T as Cs,a as Ns,b as zs,c as _s,L as Et,i as Is,P as ks,O as Ps}from"./tooltip-CfcC-Rew.js";import{B as Ce}from"./button-DwabStBc.js";import{c as H}from"./utils-BrYcHRV_.js";import{i as jt}from"./CpuChip02-CuzFW9Og.js";import{s as $s}from"./Plus-DF0BSUqr.js";import{i as ot}from"./X-B-teZACt.js";import{u as Ms,a as Es,b as Rs,c as As,d as Ds,C as se,D as Ts,e as Ls,f as Os,g as Hs,h as Bs,i as Us,j as Gs}from"./deco-chat-skeleton-Dn3L9aNE.js";import{P as qt,a as Yt,b as Xt}from"./popover-BSFsrIpT.js";import{s as Ws}from"./Clock-CqxLgrwo.js";import{s as Vs}from"./Trash01-CQssb5zX.js";import{u as Fs}from"./use-binding-D8RTw0Vg.js";import{E as Jt}from"./error-boundary-BFkr9dNR.js";import{i as Ks}from"./File06-B7NBxeI_.js";import{u as Ye}from"./use-mobile-Bnsdo500.js";import{u as Qt,a as Zs}from"./use-organization-settings-BB1e5j5m.js";import{C as qs}from"./create-organization-dialog-CJ6vzvNw.js";import{I as Ys}from"./input-B0bndeDO.js";import{A as Ue}from"./avatar-m5AmEjFw.js";import{c as Xs}from"./Grid01-Dz3rGiqv.js";import{D as Js,a as Qs,b as eo,c as to,d as Rt}from"./dropdown-menu-D49UF2Ht.js";import{a as no}from"./Copy01-CxUl_QdH.js";import{n as At}from"./LinkExternal01-DC2Eb6Fx.js";import{D as en,a as tn,b as nn,c as sn,d as on}from"./dialog-CUe9mskV.js";import"./useQuery-noukwpLn.js";import"./textarea-JzHfAbEx.js";import"./select-CseJZN6S.js";import"./ChevronDown-CRNbAv_Y.js";import"./use-gateway-BBilRD-x.js";import"./AlertCircle-BVeJaa8e.js";import"./connection-card-DwP77JXn.js";import"./card-C5wlKI6U.js";import"./spinner-D-QApPbK.js";import"./InfoCircle-C6jLk19v.js";import"./auth-Cb-IumFw.js";import"./alert-dialog-BUS87u9W.js";import"./form-BZoUBeRw.js";const an=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M9 7H4.6c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C3 7.76 3 8.04 3 8.6v10.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C3.76 21 4.04 21 4.6 21H9m0 0h6m-6 0V4.6c0-.56 0-.84.109-1.054a1 1 0 0 1 .437-.437C9.76 3 10.04 3 10.6 3h2.8c.56 0 .84 0 1.054.109a1 1 0 0 1 .437.437C15 3.76 15 4.04 15 4.6V21m0-10h4.4c.56 0 .84 0 1.054.109a1 1 0 0 1 .437.437C21 11.76 21 12.04 21 12.6v6.8c0 .56 0 .84-.109 1.054a1 1 0 0 1-.437.437C20.24 21 19.96 21 19.4 21H15"}));an.displayName="BarChart10";const rn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M15 21v-5.4c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C14.24 14 13.96 14 13.4 14h-2.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C9 14.76 9 15.04 9 15.6V21M3 7a3 3 0 0 0 6 0 3 3 0 1 0 6 0 3 3 0 1 0 6 0M6.2 21h11.6c1.12 0 1.68 0 2.108-.218a2 2 0 0 0 .874-.874C21 19.48 21 18.92 21 17.8V6.2c0-1.12 0-1.68-.218-2.108a2 2 0 0 0-.874-.874C19.48 3 18.92 3 17.8 3H6.2c-1.12 0-1.68 0-2.108.218a2 2 0 0 0-.874.874C3 4.52 3 5.08 3 6.2v11.6c0 1.12 0 1.68.218 2.108a2 2 0 0 0 .874.874C4.52 21 5.08 21 6.2 21Z"}));rn.displayName="Building02";const ln=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"m7 15 5 5 5-5M7 9l5-5 5 5"}));ln.displayName="ChevronSelectorVertical";const cn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M12 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm7-14a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM5 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"}));cn.displayName="DotsGrid";const dn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M2 12h20M2 12c0 5.523 4.477 10 10 10M2 12C2 6.477 6.477 2 12 2m10 10c0 5.523-4.477 10-10 10m10-10c0-5.523-4.477-10-10-10m0 0a15.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 10"}));dn.displayName="Globe01";const un=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M9 21v-7.4c0-.56 0-.84.109-1.054a1 1 0 0 1 .437-.437C9.76 12 10.04 12 10.6 12h2.8c.56 0 .84 0 1.054.109a1 1 0 0 1 .437.437C15 12.76 15 13.04 15 13.6V21M11.018 2.764 4.235 8.039c-.453.353-.68.53-.843.75a2 2 0 0 0-.318.65C3 9.704 3 9.991 3 10.565V17.8c0 1.12 0 1.68.218 2.108a2 2 0 0 0 .874.874C4.52 21 5.08 21 6.2 21h11.6c1.12 0 1.68 0 2.108-.218a2 2 0 0 0 .874-.874C21 19.48 21 18.92 21 17.8v-7.235c0-.574 0-.861-.074-1.126a2.002 2.002 0 0 0-.318-.65c-.163-.22-.39-.397-.843-.75l-6.783-5.275c-.351-.273-.527-.41-.72-.462a1 1 0 0 0-.523 0c-.194.052-.37.189-.721.462Z"}));un.displayName="Home02";const fn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M15 3v18M7.8 3h8.4c1.68 0 2.52 0 3.162.327a3 3 0 0 1 1.311 1.311C21 5.28 21 6.12 21 7.8v8.4c0 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 3Z"}));fn.displayName="LayoutRight";const mn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"m16 17 5-5m0 0-5-5m5 5H9m0-9H7.8c-1.68 0-2.52 0-3.162.327a3 3 0 0 0-1.311 1.311C3 5.28 3 6.12 3 7.8v8.4c0 1.68 0 2.52.327 3.162a3 3 0 0 0 1.311 1.311C5.28 21 6.12 21 7.8 21H9"}));mn.displayName="LogOut01";const pn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"m2 7 8.165 5.715c.661.463.992.695 1.351.784a2 2 0 0 0 .968 0c.36-.09.69-.32 1.351-.784L22 7M6.8 20h10.4c1.68 0 2.52 0 3.162-.327a3 3 0 0 0 1.311-1.311C22 17.72 22 16.88 22 15.2V8.8c0-1.68 0-2.52-.327-3.162a3 3 0 0 0-1.311-1.311C19.72 4 18.88 4 17.2 4H6.8c-1.68 0-2.52 0-3.162.327a3 3 0 0 0-1.311 1.311C2 6.28 2 7.12 2 8.8v6.4c0 1.68 0 2.52.327 3.162a3 3 0 0 0 1.311 1.311C4.28 20 5.12 20 6.8 20Z"}));pn.displayName="Mail01";const hn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"}),x.createElement("path",{d:"M18.727 14.727a1.5 1.5 0 0 0 .3 1.655l.055.054a1.816 1.816 0 0 1 0 2.573 1.818 1.818 0 0 1-2.573 0l-.055-.055a1.5 1.5 0 0 0-1.654-.3 1.5 1.5 0 0 0-.91 1.373v.155a1.818 1.818 0 1 1-3.636 0V20.1a1.5 1.5 0 0 0-.981-1.373 1.5 1.5 0 0 0-1.655.3l-.054.055a1.818 1.818 0 0 1-3.106-1.287 1.818 1.818 0 0 1 .533-1.286l.054-.055a1.5 1.5 0 0 0 .3-1.654 1.5 1.5 0 0 0-1.372-.91h-.155a1.818 1.818 0 1 1 0-3.636H3.9a1.5 1.5 0 0 0 1.373-.981 1.5 1.5 0 0 0-.3-1.655l-.055-.054A1.818 1.818 0 1 1 7.491 4.99l.054.054a1.5 1.5 0 0 0 1.655.3h.073a1.5 1.5 0 0 0 .909-1.372v-.155a1.818 1.818 0 0 1 3.636 0V3.9a1.499 1.499 0 0 0 .91 1.373 1.5 1.5 0 0 0 1.654-.3l.054-.055a1.817 1.817 0 0 1 2.573 0 1.819 1.819 0 0 1 0 2.573l-.055.054a1.5 1.5 0 0 0-.3 1.655v.073a1.5 1.5 0 0 0 1.373.909h.155a1.818 1.818 0 0 1 0 3.636H20.1a1.499 1.499 0 0 0-1.373.91Z"}));hn.displayName="Settings01";const xn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M5.316 19.438A4.001 4.001 0 0 1 9 17h6a4.001 4.001 0 0 1 3.684 2.438M16 9.5a4 4 0 1 1-8 0 4 4 0 0 1 8 0Zm6 2.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z"}));xn.displayName="UserCircle";const gn=({size:t=24,color:e="currentColor",...n})=>x.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n},x.createElement("path",{d:"M22 21v-2a4.002 4.002 0 0 0-3-3.874M15.5 3.291a4.001 4.001 0 0 1 0 7.418M17 21c0-1.864 0-2.796-.305-3.53a4 4 0 0 0-2.164-2.165C13.796 15 12.864 15 11 15H8c-1.864 0-2.796 0-3.53.305a4 4 0 0 0-2.166 2.164C2 18.204 2 19.136 2 21M13.5 7a4 4 0 1 1-8 0 4 4 0 0 1 8 0Z"}));gn.displayName="Users01";function zt(){const t=N.c(4);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=Ze.decoChatOpen(),t[0]=e):e=t[0];const[n,s]=Be(e,so);let o;return t[1]!==n||t[2]!==s?(o=[n,s],t[1]=n,t[2]=s,t[3]=o):o=t[3],o}function so(t){return!!(t??!1)}function oo(t){const e=N.c(14),{title:n,description:s,avatar:o,avatarNode:a,className:l}=t,i=n===void 0?"Start a conversation":n;let c;e[0]!==l?(c=H("flex flex-col items-center justify-center gap-4 p-8 text-center",l),e[0]=l,e[1]=c):c=e[1];let d;e[2]!==o||e[3]!==a?(d=a||o&&r.jsx("img",{src:o,alt:"Chat avatar",className:"size-[60px] rounded-[18px] border-[1.875px] border-border/10"}),e[2]=o,e[3]=a,e[4]=d):d=e[4];let m;e[5]!==i?(m=i&&r.jsx("h3",{className:"text-xl font-medium text-foreground",children:i}),e[5]=i,e[6]=m):m=e[6];let f;e[7]!==s?(f=s&&r.jsx("div",{className:"text-muted-foreground text-center text-sm max-w-md",children:s}),e[7]=s,e[8]=f):f=e[8];let u;return e[9]!==c||e[10]!==d||e[11]!==m||e[12]!==f?(u=r.jsxs("div",{className:c,children:[d,m,f]}),e[9]=c,e[10]=d,e[11]=m,e[12]=f,e[13]=u):u=e[13],u}const bn=()=>crypto.randomUUID(),vn=x.createContext(null);function ao(t){const e=N.c(15),{children:n}=t,{locator:s}=qe(),o=Ms(),[a,l]=Be(Ze.threadManagerState(s)+":active-id",ro);let i;e[0]!==l||e[1]!==o?(i=p=>{const v=p?.id||crypto.randomUUID(),b=new Date().toISOString(),g={id:v,title:p?.title||"",created_at:p?.created_at||b,updated_at:p?.updated_at||b,hidden:p?.hidden??!1};return o.insert.mutate(g),l(v),g},e[0]=l,e[1]=o,e[2]=i):i=e[2];const c=i;let d;e[3]!==a||e[4]!==l||e[5]!==o?(d=p=>{o.update.mutate({id:p,updates:{hidden:!0,updated_at:new Date().toISOString()}}),a===p&&l(bn())},e[3]=a,e[4]=l,e[5]=o,e[6]=d):d=e[6];const m=d;let f;e[7]!==a||e[8]!==c||e[9]!==m||e[10]!==l?(f={activeThreadId:a,createThread:c,setActiveThreadId:l,hideThread:m},e[7]=a,e[8]=c,e[9]=m,e[10]=l,e[11]=f):f=e[11];const u=f;let h;return e[12]!==n||e[13]!==u?(h=r.jsx(vn.Provider,{value:u,children:n}),e[12]=n,e[13]=u,e[14]=h):h=e[14],h}function ro(t){return t||bn()}function lo(){const t=x.useContext(vn);if(!t)throw new Error("useChat must be used within a ChatProvider");return t}function io(t){const e=new Date(t),s=new Date().getTime()-e.getTime(),o=Math.floor(s/6e4),a=Math.floor(s/36e5);return o<1?"now":o<60?`${o}m`:`${a}h`}function co(t){const e=new Date,n=new Date(e.getFullYear(),e.getMonth(),e.getDate()),s=new Date(n.getTime()-864e5),o=new Date(n.getTime()-7*864e5),a=new Date(n.getTime()-30*864e5),l=[],i=[],c=[],d=[],m=[];for(const u of t){const h=new Date(u.updated_at);h>=n?l.push(u):h>=s?i.push(u):h>=o?c.push(u):h>=a?d.push(u):m.push(u)}const f=[];return l.length>0&&f.push({label:"Today",threads:l,showRelativeTime:!0}),i.length>0&&f.push({label:"Yesterday",threads:i,showRelativeTime:!1}),c.length>0&&f.push({label:"7 days ago",threads:c,showRelativeTime:!1}),d.length>0&&f.push({label:"30 days ago",threads:d,showRelativeTime:!1}),m.length>0&&f.push({label:"Older",threads:m,showRelativeTime:!1}),f}function uo(t){const e=N.c(36),{threads:n,activeThreadId:s,onSelectThread:o,onRemoveThread:a,onOpen:l}=t,[i,c]=x.useState("");let d,m,f,u,h,p,v,b,g;if(e[0]!==s||e[1]!==l||e[2]!==a||e[3]!==o||e[4]!==i||e[5]!==n){const _=i.trim()?n.filter($=>($.title||"New chat").toLowerCase().includes(i.toLowerCase())):n,C=co(_);let w;e[15]!==l?(w=$=>{$?l?.():c("")},e[15]=l,e[16]=w):w=e[16];const O=w;m=qt,b=O,e[17]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(Yt,{asChild:!0,children:r.jsx("button",{type:"button",className:"flex size-6 items-center justify-center rounded-full p-1 hover:bg-transparent group cursor-pointer",title:"Chat history",children:r.jsx(Ws,{size:16,className:"text-muted-foreground group-hover:text-foreground transition-colors"})})}),e[17]=g):g=e[17],d=Xt,h="end",p="w-80 p-0";let M;e[18]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx(ys,{size:16,className:"text-muted-foreground shrink-0"}),e[18]=M):M=e[18];let R;e[19]===Symbol.for("react.memo_cache_sentinel")?(R=$=>c($.target.value),e[19]=R):R=e[19],e[20]!==i?(v=r.jsx("div",{className:"border-b",children:r.jsxs("label",{className:"flex items-center gap-2.5 h-12 px-4 cursor-text",children:[M,r.jsx("input",{type:"text",placeholder:"Search chats...",value:i,onChange:R,className:"flex-1 border-0 shadow-none focus:outline-none px-0 h-full text-sm placeholder:text-muted-foreground/50 bg-transparent"})]})}),e[20]=i,e[21]=v):v=e[21],f="max-h-[300px] overflow-y-auto",u=_.length===0?r.jsx("div",{className:"p-4 text-center text-sm text-muted-foreground",children:i.trim()?"No chats found":"No chats yet"}):C.map(($,D)=>r.jsxs("div",{children:[D>0&&r.jsx("div",{className:"border-t mx-3"}),r.jsx("div",{className:"px-3 py-1",children:r.jsx("span",{className:"text-xs font-medium text-muted-foreground tracking-wide",children:$.label})}),$.threads.map(L=>{const Z=L.id===s;return r.jsxs("div",{className:`flex items-center gap-2 px-3 py-2 hover:bg-accent cursor-pointer group ${Z?"bg-accent/50":""}`,onClick:()=>o(L.id),children:[r.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-2",children:[r.jsx("span",{className:"text-sm truncate",children:L.title||"New chat"}),r.jsx("span",{className:"text-xs text-muted-foreground shrink-0",children:Z?"current":$.showRelativeTime?io(L.updated_at):null})]}),r.jsx("button",{type:"button",onClick:B=>{B.stopPropagation(),a(L.id)},className:"opacity-0 cursor-pointer group/trash group-hover:opacity-100 p-1 hover:bg-destructive/10 rounded transition-opacity",title:"Remove chat",children:r.jsx(Vs,{size:14,className:"text-muted-foreground group-hover/trash:text-destructive"})})]},L.id)})]},$.label)),e[0]=s,e[1]=l,e[2]=a,e[3]=o,e[4]=i,e[5]=n,e[6]=d,e[7]=m,e[8]=f,e[9]=u,e[10]=h,e[11]=p,e[12]=v,e[13]=b,e[14]=g}else d=e[6],m=e[7],f=e[8],u=e[9],h=e[10],p=e[11],v=e[12],b=e[13],g=e[14];let y;e[22]!==f||e[23]!==u?(y=r.jsx("div",{className:f,children:u}),e[22]=f,e[23]=u,e[24]=y):y=e[24];let j;e[25]!==d||e[26]!==h||e[27]!==p||e[28]!==v||e[29]!==y?(j=r.jsxs(d,{align:h,className:p,children:[v,y]}),e[25]=d,e[26]=h,e[27]=p,e[28]=v,e[29]=y,e[30]=j):j=e[30];let z;return e[31]!==m||e[32]!==b||e[33]!==g||e[34]!==j?(z=r.jsxs(m,{onOpenChange:b,children:[g,j]}),e[31]=m,e[32]=b,e[33]=g,e[34]=j,e[35]=z):z=e[35],z}function fo(t){const e=/\/[^/]+\/mcps\/([^/]+)\/([^/]+)\/([^/]+)/,n=t.match(e);return n&&n[1]&&n[2]&&n[3]?{connectionId:decodeURIComponent(n[1]),collectionName:decodeURIComponent(n[2]),itemId:decodeURIComponent(n[3])}:{connectionId:null,collectionName:null,itemId:null}}function mo(){const t=N.c(2),e=Jn();let n;t[0]!==e.location.pathname?(n=fo(e.location.pathname),t[0]=e.location.pathname,t[1]=n):n=t[1];const{connectionId:s,collectionName:o,itemId:a}=n;return`You are an AI assistant running in an MCP Mesh environment.
|
|
2
2
|
|
|
3
3
|
## About MCP Mesh
|
|
4
4
|
The Model Context Protocol (MCP) Mesh allows users to connect external MCP servers and expose their capabilities through gateways. Each gateway provides access to a curated set of tools from connected MCP servers.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as C,h as d,j as a}from"./index-
|
|
1
|
+
import{c as C,h as d,j as a}from"./index-Bct0X-7r.js";import{c as m}from"./utils-BrYcHRV_.js";const u=d("animate-spin",{variants:{variant:{default:"fill-primary text-gray-200",destructive:"fill-destructive text-gray-200",secondary:"fill-secondary text-gray-200",special:"fill-special text-backround"},size:{default:"h-7 w-7",sm:"h-6 w-6",lg:"h-8 w-8",icon:"h-6 w-6",xs:"h-4 w-4"}},defaultVariants:{variant:"default",size:"default"}});function p(f){const e=C.c(10),{variant:c,size:o}=f;let t;e[0]!==o||e[1]!==c?(t=m(u({variant:c,size:o})),e[0]=o,e[1]=c,e[2]=t):t=e[2];let l,i;e[3]===Symbol.for("react.memo_cache_sentinel")?(l=a.jsx("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),i=a.jsx("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"}),e[3]=l,e[4]=i):(l=e[3],i=e[4]);let s;e[5]!==t?(s=a.jsxs("svg",{"aria-hidden":"true",className:t,viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[l,i]}),e[5]=t,e[6]=s):s=e[6];let r;e[7]===Symbol.for("react.memo_cache_sentinel")?(r=a.jsx("span",{className:"sr-only",children:"Loading..."}),e[7]=r):r=e[7];let n;return e[8]!==s?(n=a.jsxs("div",{role:"status",children:[s,r]}),e[8]=s,e[9]=n):n=e[9],n}export{p as S};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ap as U,aq as _,ar as H,as as G,at as q,au as Y,r as M,c as T,j as s,f as Z,K as J,a as X,e as ee,s as te}from"./index-BFGV_ZyQ.js";import{i as se,g as ie,a as le}from"./well-known-mcp-CJlqApJn.js";import{C as ne}from"./collection-header-QrVAH4kj.js";import{I as re,b as oe,c as ae,a as V,u as ce}from"./use-connection-DfrXFTVM.js";import{b as de,T as me,c as fe,u as D}from"./tooltip-B1UObqaJ.js";import{s as ue}from"./slugify-CEUa2lfQ.js";import{n as he}from"./Inbox01-BwvF7iId.js";import{i as z}from"./Loading01-Bg5ZbX7j.js";import{i as xe,E as pe}from"./SearchMd-dWvbF6MG.js";import{C as ge}from"./collection-search-nvVuwapQ.js";import{C as ve}from"./card-DhiM8w8S.js";import{g as je,f as Ne,a as ye}from"./registry-utils-ulDDT0d8.js";import{e as Ce}from"./app-name-gTETL9So.js";import{d as we,a as be,b as Se,c as Pe,S as Re}from"./select-zI1MuLqv.js";import{s as W}from"./Plus-DHLB4x84.js";import{C as Ie}from"./connection-card-CtFpN05k.js";import{B as ke}from"./button-DGzvT_2A.js";import{a as Ee}from"./use-binding-BAah0fz3.js";import{L as Le,u as Te}from"./localstorage-keys-CKD_ZpQC.js";import"./collection-display-button-HCh5o-4Q.js";import"./dropdown-menu-D1IcmwBM.js";import"./Grid01-DzkX4KgN.js";import"./utils-D8oc_Xja.js";import"./input-CSN83rcG.js";import"./ChevronDown-CJBpL9ke.js";import"./auth-DzSQcnhF.js";import"./useQuery-B00cZGqv.js";var $e=class extends U{constructor(t,e){super(t,e)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(t){super.setOptions({...t,behavior:_()})}getOptimisticResult(t){return t.behavior=_(),super.getOptimisticResult(t)}fetchNextPage(t){return this.fetch({...t,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(t){return this.fetch({...t,meta:{fetchMore:{direction:"backward"}}})}createResult(t,e){const{state:l}=t,m=super.createResult(t,e),{isFetching:r,isRefetching:h,isError:d,isRefetchError:a}=m,c=l.fetchMeta?.fetchMore?.direction,i=d&&c==="forward",n=r&&c==="forward",o=d&&c==="backward",f=r&&c==="backward";return{...m,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:G(e,l.data),hasPreviousPage:H(e,l.data),isFetchNextPageError:i,isFetchingNextPage:n,isFetchPreviousPageError:o,isFetchingPreviousPage:f,isRefetchError:a&&!i&&!o,isRefetching:h&&!n&&!f}}};function Me(t,e){return q({...t,enabled:!0,suspense:!0,throwOnError:Y},$e,e)}const Q=({size:t=24,color:e="currentColor",...l})=>M.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...l},M.createElement("path",{d:"m9 12 2 2 4.5-4.5m2.401-4.501a2.03 2.03 0 0 0 1.1 1.1l1.744.723a2.033 2.033 0 0 1 1.1 2.656l-.722 1.744a2.03 2.03 0 0 0 0 1.556l.722 1.744a2.033 2.033 0 0 1-1.1 2.656L19 17.901A2.033 2.033 0 0 0 17.9 19l-.723 1.745a2.032 2.032 0 0 1-2.656 1.1l-1.744-.722a2.032 2.032 0 0 0-1.555 0l-1.745.723a2.033 2.033 0 0 1-2.654-1.1L6.1 19.001A2.033 2.033 0 0 0 5 17.9l-1.744-.723a2.033 2.033 0 0 1-1.1-2.654l.721-1.744a2.033 2.033 0 0 0 0-1.556l-.722-1.746a2.033 2.033 0 0 1 1.1-2.657L5 6.098A2.03 2.03 0 0 0 6.1 5l.723-1.745a2.033 2.033 0 0 1 2.656-1.1l1.744.722a2.033 2.033 0 0 0 1.555-.001l1.746-.72a2.032 2.032 0 0 1 2.655 1.1l.723 1.746v-.003Z"}));Q.displayName="CheckVerified02";function Ae(t){const e=t.title||t.server.title||t.id||"Unnamed Item",l=t.server.description||null,m=t.server.icons?.[0]?.src||je(t.server.repository)||null,r=t._meta?.["mcp.mesh"]?.verified??!1,h=t.server.version,a=(t.server.remotes?.length??0)>0;let c=e,i=null;if(e.includes("/")){const n=e.split("/");n.length>=2&&(i=n[0]||null,c=Ce(e))}if(!i){const n=t._meta?.["mcp.mesh"]?.scopeName,o=t._meta?.["mcp.mesh"]?.appName;n&&o?i=`${n}/${o}`:n&&(i=n)}return{icon:m,scopeName:i,displayName:c,description:l,version:h||null,isVerified:r,canInstall:a}}function Ke(t){const e=T.c(39),{icon:l,scopeName:m,displayName:r,description:h,isVerified:d,canInstall:a,onClick:c}=t;let i;e[0]!==r||e[1]!==l?(i=s.jsx(re,{icon:l,name:r,size:"md",className:"shadow-sm"}),e[0]=r,e[1]=l,e[2]=i):i=e[2];let n;e[3]!==r?(n=s.jsx("span",{className:"truncate",children:r}),e[3]=r,e[4]=n):n=e[4];let o;e[5]!==d?(o=d&&s.jsx(Q,{size:16,className:"text-success shrink-0"}),e[5]=d,e[6]=o):o=e[6];let f;e[7]!==a?(f=!a&&s.jsx(se,{size:16,className:"text-muted-foreground shrink-0"}),e[7]=a,e[8]=f):f=e[8];let p;e[9]!==n||e[10]!==o||e[11]!==f?(p=s.jsx(de,{asChild:!0,children:s.jsxs("div",{className:"flex items-center gap-2 text-base font-medium min-w-0",children:[n,o,f]})}),e[9]=n,e[10]=o,e[11]=f,e[12]=p):p=e[12];let u;e[13]!==r?(u=s.jsx("p",{children:r}),e[13]=r,e[14]=u):u=e[14];let g;e[15]!==a?(g=!a&&s.jsx("p",{className:"text-xs mt-1",children:"No connection available"}),e[15]=a,e[16]=g):g=e[16];let v;e[17]!==u||e[18]!==g?(v=s.jsxs(me,{children:[u,g]}),e[17]=u,e[18]=g,e[19]=v):v=e[19];let y;e[20]!==p||e[21]!==v?(y=s.jsxs(fe,{children:[p,v]}),e[20]=p,e[21]=v,e[22]=y):y=e[22];let C;e[23]!==m?(C=m&&s.jsx("div",{className:"text-sm text-muted-foreground truncate",children:m}),e[23]=m,e[24]=C):C=e[24];let S;e[25]!==C||e[26]!==y?(S=s.jsx("div",{className:"flex gap-2 items-start min-w-0 flex-1",children:s.jsxs("div",{className:"min-w-0 flex-1",children:[y,C]})}),e[25]=C,e[26]=y,e[27]=S):S=e[27];let w;e[28]!==i||e[29]!==S?(w=s.jsxs("div",{className:"flex gap-3",children:[i,S]}),e[28]=i,e[29]=S,e[30]=w):w=e[30];const P=h||"No description available";let j;e[31]!==P?(j=s.jsx("div",{className:"grid grid-cols-1 gap-1 min-w-0",children:s.jsx("div",{className:"text-sm text-muted-foreground line-clamp-2",children:P})}),e[31]=P,e[32]=j):j=e[32];let x;e[33]!==w||e[34]!==j?(x=s.jsxs("div",{className:"flex flex-col gap-4 h-full relative",children:[w,j]}),e[33]=w,e[34]=j,e[35]=x):x=e[35];let b;return e[36]!==c||e[37]!==x?(b=s.jsx(ve,{className:"p-6 cursor-pointer hover:bg-muted/50 transition-colors",onClick:c,children:x}),e[36]=c,e[37]=x,e[38]=b):b=e[38],b}function B(t){const e=T.c(12),{items:l,title:m,onItemClick:r}=t;if(l.length===0)return null;let h;e[0]!==m?(h=m&&s.jsx("div",{className:"flex items-center justify-between w-max gap-2",children:s.jsx("h2",{className:"text-lg font-medium",children:m})}),e[0]=m,e[1]=h):h=e[1];let d;if(e[2]!==l||e[3]!==r){let i;e[5]!==r?(i=n=>{const o=Ae(n);return s.jsx(Ke,{...o,onClick:()=>r(n)},n.id)},e[5]=r,e[6]=i):i=e[6],d=l.map(i),e[2]=l,e[3]=r,e[4]=d}else d=e[4];let a;e[7]!==d?(a=s.jsx("div",{className:"grid grid-cols-4 gap-4",children:d}),e[7]=d,e[8]=a):a=e[8];let c;return e[9]!==h||e[10]!==a?(c=s.jsxs("div",{className:"flex flex-col gap-4",children:[h,a]}),e[9]=h,e[10]=a,e[11]=c):c=e[11],c}function Oe(t,e){if(!e)return t;const l=e.toLowerCase();return t.filter(m=>(m.name||m.title||"").toLowerCase().includes(l)||(m.description||m.server.description||"").toLowerCase().includes(l))}function Fe(t){return t.verified===!0||t._meta?.["mcp.mesh"]?.verified===!0||t.server._meta?.["mcp.mesh"]?.verified===!0}function De(t){const e=T.c(32),{items:l,isLoadingMore:m,registryId:r,hasMore:h,onLoadMore:d}=t,a=m===void 0?!1:m,c=h===void 0?!1:h,[i,n]=M.useState(""),o=Z(),{org:f}=D(),p=M.useRef(null);let u,g,v;e[0]!==l||e[1]!==i?(u=Oe(l,i),v=u.filter(Fe),g=u.filter(R=>!v.find(I=>I.id===R.id)),e[0]=l,e[1]=i,e[2]=u,e[3]=g,e[4]=v):(u=e[2],g=e[3],v=e[4]);const y=g;let C;e[5]!==o||e[6]!==f.slug||e[7]!==r?(C=R=>{const I=ue(R.name||R.title||R.server.title||""),L=R.server.name;o({to:"/$org/store/$appName",params:{org:f.slug,appName:I},search:{registryId:r,serverName:L}})},e[5]=o,e[6]=f.slug,e[7]=r,e[8]=C):C=e[8];const S=C;let w;e[9]!==c||e[10]!==a||e[11]!==d||e[12]!==i?(w=R=>{if(!c||!d||i||a)return;const I=R.currentTarget;I.scrollHeight-I.scrollTop-I.clientHeight<200&&d()},e[9]=c,e[10]=a,e[11]=d,e[12]=i,e[13]=w):w=e[13];const P=w;let j;e[14]===Symbol.for("react.memo_cache_sentinel")?(j=R=>{R.key==="Enter"&&n(R.currentTarget.value)},e[14]=j):j=e[14];let x;e[15]!==i?(x=s.jsx(ge,{value:i,onChange:n,placeholder:"Search for an MCP Server...",onKeyDown:j}),e[15]=i,e[16]=x):x=e[16];let b;e[17]!==y||e[18]!==u||e[19]!==S||e[20]!==c||e[21]!==a||e[22]!==l.length||e[23]!==i||e[24]!==v?(b=s.jsx("div",{className:"p-5",children:s.jsx("div",{children:l.length===0?s.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[s.jsx(he,{size:48,className:"text-muted-foreground mb-4"}),s.jsx("h3",{className:"text-lg font-medium mb-2",children:"No items available"}),s.jsx("p",{className:"text-muted-foreground",children:"This store doesn't have any available items yet."})]}):i&&u.length===0?s.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[s.jsx(xe,{size:48,className:"text-muted-foreground mb-4"}),s.jsx("h3",{className:"text-lg font-medium mb-2",children:"No results found"}),s.jsx("p",{className:"text-muted-foreground",children:"Try adjusting your search terms."})]}):s.jsxs("div",{className:"flex flex-col gap-8",children:[v.length>0&&s.jsx(B,{items:v,title:"Verified",onItemClick:S}),y.length>0&&s.jsx(B,{items:y,title:v.length>0?"All":"",onItemClick:S}),c&&!i&&a&&s.jsx("div",{className:"flex justify-center py-8",children:s.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground",children:[s.jsx(z,{size:20,className:"animate-spin"}),s.jsx("span",{className:"text-sm",children:"Loading more items..."})]})})]})})}),e[17]=y,e[18]=u,e[19]=S,e[20]=c,e[21]=a,e[22]=l.length,e[23]=i,e[24]=v,e[25]=b):b=e[25];let k;e[26]!==P||e[27]!==b?(k=s.jsx("div",{ref:p,className:"flex-1 overflow-y-auto",onScroll:P,children:b}),e[26]=P,e[27]=b,e[28]=k):k=e[28];let E;return e[29]!==x||e[30]!==k?(E=s.jsxs("div",{className:"flex flex-col h-full",children:[x,k]}),e[29]=x,e[30]=k,e[31]=E):E=e[31],E}const F=24;function ze(t){const e=T.c(27),{registryId:l}=t,m=oe(l);let r,h,d,a;if(e[0]!==m?.tools||e[1]!==l){if(r=Ne(m?.tools),!r)throw new Error("This registry does not support listing store items.");let x;e[6]!==l?(x=ae(l),e[6]=l,e[7]=x):x=e[7],a=x,d=Me,h=J.toolCall(l,r,JSON.stringify({limit:F})),e[0]=m?.tools,e[1]=l,e[2]=r,e[3]=h,e[4]=d,e[5]=a}else r=e[2],h=e[3],d=e[4],a=e[5];let c;e[8]!==r||e[9]!==a?(c=async x=>{const{pageParam:b}=x;return await a(r,b?{cursor:b,limit:F}:{limit:F})},e[8]=r,e[9]=a,e[10]=c):c=e[10];let i;e[11]!==h||e[12]!==c?(i={queryKey:h,queryFn:c,initialPageParam:void 0,getNextPageParam:_e,staleTime:36e5},e[11]=h,e[12]=c,e[13]=i):i=e[13];const{data:n,fetchNextPage:o,hasNextPage:f,isFetchingNextPage:p}=d(i);let u;e:{if(!n?.pages||n.pages.length===0){u=null;break e}const x=n.pages[0];if(typeof x=="object"&&x!==null&&"totalCount"in x&&typeof x.totalCount=="number"){u=x.totalCount;break e}u=null}const g=u,v=n?.pages;let y;e[14]!==v?(y=ye(v),e[14]=v,e[15]=y):y=e[15];const C=y;let S;e[16]!==o||e[17]!==f||e[18]!==p?(S=()=>{f&&!p&&o()},e[16]=o,e[17]=f,e[18]=p,e[19]=S):S=e[19];const w=S,P=f??!1;let j;return e[20]!==C||e[21]!==w||e[22]!==p||e[23]!==l||e[24]!==P||e[25]!==g?(j=s.jsx(De,{items:C,isLoadingMore:p,registryId:l,hasMore:P,onLoadMore:w,totalCount:g}),e[20]=C,e[21]=w,e[22]=p,e[23]=l,e[24]=P,e[25]=g,e[26]=j):j=e[26],j}function _e(t){if(typeof t=="object"&&t!==null){const e=t.nextCursor||t.cursor;if(e)return e}}function Be(t){const e=T.c(15),{registries:l,value:m,onValueChange:r,onAddWellKnown:h,wellKnownRegistries:d,placeholder:a}=t,c=a===void 0?"Select a registry...":a;let i;e[0]!==c?(i=s.jsx(be,{className:"w-[200px] h-8!",children:s.jsx(Se,{placeholder:c})}),e[0]=c,e[1]=i):i=e[1];let n;e[2]!==l?(n=l.map(Ve),e[2]=l,e[3]=n):n=e[3];let o;e[4]!==h||e[5]!==d?(o=d.length>0&&s.jsxs("div",{className:"border-t border-border pt-1",children:[s.jsx("p",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:"Other known registries"}),d.map(u=>s.jsxs("button",{onClick:g=>{g.preventDefault(),g.stopPropagation(),h(u)},className:"relative flex w-full cursor-pointer items-center gap-2 rounded-xl py-1.5 pr-8 pl-2 text-sm outline-hidden select-none hover:bg-accent hover:text-accent-foreground",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[u.icon?s.jsx("img",{src:u.icon,alt:u.title,className:"w-4 h-4 rounded"}):s.jsx("div",{className:"w-4 h-4 rounded bg-primary/10 flex items-center justify-center text-xs font-semibold text-primary",children:u.title.slice(0,1).toUpperCase()}),s.jsx("span",{className:"flex-1",children:u.title})]}),s.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center text-muted-foreground",children:s.jsx(W,{size:16})})]},u.id??u.title))]}),e[4]=h,e[5]=d,e[6]=o):o=e[6];let f;e[7]!==n||e[8]!==o?(f=s.jsxs(Pe,{children:[n,o]}),e[7]=n,e[8]=o,e[9]=f):f=e[9];let p;return e[10]!==r||e[11]!==i||e[12]!==f||e[13]!==m?(p=s.jsxs(Re,{value:m,onValueChange:r,children:[i,f]}),e[10]=r,e[11]=i,e[12]=f,e[13]=m,e[14]=p):p=e[14],p}function Ve(t){return s.jsx(we,{className:"cursor-pointer",value:t.id??t.name,children:s.jsxs("div",{className:"flex items-center gap-2",children:[t.icon?s.jsx("img",{src:t.icon,alt:t.name,className:"w-4 h-4 rounded"}):s.jsx("div",{className:"w-4 h-4 rounded from-primary/20 to-primary/10 flex items-center justify-center text-xs font-semibold text-primary",children:t.name.slice(0,1).toUpperCase()}),s.jsx("span",{children:t.name})]})},t.id??t.name)}function We(t){const e=T.c(13),{registries:l,onConnected:m}=t,r=l.length===1;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=s.jsx("img",{src:"/store-empty-state.svg",alt:"No store connected",width:423,height:279,className:"max-w-full h-auto"}),e[0]=h):h=e[0];const d=r?"Connect to registry":"Connect to a store",a=r?"Connect to discover and use MCP Servers from the community.":"Choose a registry to discover and connect MCP Servers from the community.",c=`grid gap-4 w-full ${r?"grid-cols-1 justify-items-center":"grid-cols-1 md:grid-cols-2"}`;let i;if(e[1]!==m||e[2]!==l){let f;e[4]!==m?(f=(p,u)=>{const g=p.id??`registry-${u}`;return s.jsx(Qe,{registry:{...p,id:g},onConnected:m},g)},e[4]=m,e[5]=f):f=e[5],i=l.map(f),e[1]=m,e[2]=l,e[3]=i}else i=e[3];let n;e[6]!==c||e[7]!==i?(n=s.jsx("div",{className:c,children:i}),e[6]=c,e[7]=i,e[8]=n):n=e[8];let o;return e[9]!==d||e[10]!==a||e[11]!==n?(o=s.jsx(pe,{image:h,title:d,description:a,descriptionClassName:"max-w-[500px]",actionsClassName:"w-full max-w-2xl",actions:n}),e[9]=d,e[10]=a,e[11]=n,e[12]=o):o=e[12],o}function Qe(t){const e=T.c(15),{registry:l,onConnected:m}=t,r=V(),{org:h}=D(),{data:d}=X.useSession(),a=!!h&&!!d?.user?.id;let c;e[0]!==r.create||e[1]!==a||e[2]!==m||e[3]!==l?(c=async()=>{if(!a)return;const u=await r.create.mutateAsync(l);m?.(u.id)},e[0]=r.create,e[1]=a,e[2]=m,e[3]=l,e[4]=c):c=e[4];const i=c,n=!a||r.create.isPending;let o;e[5]!==r.create.isPending?(o=r.create.isPending?s.jsxs(s.Fragment,{children:[s.jsx(z,{className:"animate-spin"}),"Connecting..."]}):s.jsxs(s.Fragment,{children:[s.jsx(W,{}),"Connect"]}),e[5]=r.create.isPending,e[6]=o):o=e[6];let f;e[7]!==i||e[8]!==n||e[9]!==o?(f=s.jsx(ke,{variant:"outline",className:"w-full",disabled:n,onClick:i,children:o}),e[7]=i,e[8]=n,e[9]=o,e[10]=f):f=e[10];let p;return e[11]!==i||e[12]!==l||e[13]!==f?(p=s.jsx(Ie,{connection:l,onClick:i,footer:f,className:"transition-all hover:border-primary/50 hover:shadow-md"}),e[11]=i,e[12]=l,e[13]=f,e[14]=p):p=e[14],p}function Ct(){const t=T.c(41),{org:e}=D(),l=ce(),m=V(),r=ee(),h=r.location.pathname.includes("/store/")&&r.location.pathname.split("/").length>3,d=Ee(l);let a;t[0]!==d?(a=d.map(Ge),t[0]=d,t[1]=a):a=t[1];const c=a;let i;t[2]!==e.slug?(i=Le.selectedRegistry(e.slug),t[2]=e.slug,t[3]=i):i=t[3];const[n,o]=Te(i,He);let f;if(t[4]!==d||t[5]!==n){let N;t[7]!==n?(N=O=>O.id===n,t[7]=n,t[8]=N):N=t[8],f=d.find(N),t[4]=d,t[5]=n,t[6]=f}else f=t[6];const u=f?.id||d[0]?.id||"";let g;t[9]!==e.id?(g=ie(e.id),t[9]=e.id,t[10]=g):g=t[10];let v;t[11]!==g?(v=[g],t[11]=g,t[12]=v):v=t[12];const y=v;let C;t[13]===Symbol.for("react.memo_cache_sentinel")?(C=[le()],t[13]=C):C=t[13];const S=C;let w;t[14]!==m.create||t[15]!==o?(w=async N=>{const O=await m.create.mutateAsync(N);o(O.id)},t[14]=m.create,t[15]=o,t[16]=w):w=t[16];const P=w;let j;t[17]!==d?(j=new Set(d.map(Ue)),t[17]=d,t[18]=j):j=t[18];const x=j;let b;t[19]!==x||t[20]!==y?(b=y.filter(N=>N.id&&!x.has(N.id)),t[19]=x,t[20]=y,t[21]=b):b=t[21];const k=b;let E;t[22]!==x?(E=S.filter(N=>N.id&&!x.has(N.id)),t[22]=x,t[23]=E):E=t[23];const R=E;if(h){let N;return t[24]===Symbol.for("react.memo_cache_sentinel")?(N=s.jsx(te,{}),t[24]=N):N=t[24],N}let I;t[25]!==P?(I=async N=>P(N),t[25]=P,t[26]=I):I=t[26];let L;t[27]!==k||t[28]!==u||t[29]!==c||t[30]!==o||t[31]!==I?(L=s.jsx(ne,{title:"Store",ctaButton:s.jsx(Be,{wellKnownRegistries:k,registries:c,value:u,onValueChange:o,onAddWellKnown:I,placeholder:"Select store..."})}),t[27]=k,t[28]=u,t[29]=c,t[30]=o,t[31]=I,t[32]=L):L=t[32];let A;t[33]===Symbol.for("react.memo_cache_sentinel")?(A=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full",children:[s.jsx(z,{size:32,className:"animate-spin text-muted-foreground mb-4"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading store items..."})]}),t[33]=A):A=t[33];let $;t[34]!==R||t[35]!==u||t[36]!==o?($=s.jsx("div",{className:"h-full flex flex-col overflow-hidden",children:s.jsx(M.Suspense,{fallback:A,children:u?s.jsx(ze,{registryId:u}):s.jsx("div",{className:"flex flex-col items-center justify-center h-full",children:s.jsx(We,{registries:R,onConnected:N=>{o(N)}})})})}),t[34]=R,t[35]=u,t[36]=o,t[37]=$):$=t[37];let K;return t[38]!==L||t[39]!==$?(K=s.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[L,$]}),t[38]=L,t[39]=$,t[40]=K):K=t[40],K}function Ue(t){return t.id}function He(){return""}function Ge(t){return{id:t.id,name:t.title,icon:t.icon||void 0}}export{Ct as default};
|
|
1
|
+
import{ap as U,aq as _,ar as H,as as G,at as q,au as Y,r as M,c as T,j as s,f as Z,K as J,a as X,e as ee,s as te}from"./index-Bct0X-7r.js";import{i as se,g as ie,a as le}from"./well-known-mcp-CrC-EGIx.js";import{C as ne}from"./collection-header-BjjVtD4O.js";import{I as re,b as oe,c as ae,a as V,u as ce}from"./use-connection-DmNS8HuU.js";import{b as de,T as me,c as fe,u as D}from"./tooltip-CfcC-Rew.js";import{s as ue}from"./slugify-CEUa2lfQ.js";import{n as he}from"./Inbox01-CpdYbXLm.js";import{i as z}from"./Loading01-COnx3ZgN.js";import{i as xe,E as pe}from"./SearchMd-Dg5hjJMg.js";import{C as ge}from"./collection-search-CuiMr39W.js";import{C as ve}from"./card-C5wlKI6U.js";import{g as je,f as Ne,a as ye}from"./registry-utils-ulDDT0d8.js";import{e as Ce}from"./app-name-gTETL9So.js";import{d as we,a as be,b as Se,c as Pe,S as Re}from"./select-CseJZN6S.js";import{s as W}from"./Plus-DF0BSUqr.js";import{C as Ie}from"./connection-card-DwP77JXn.js";import{B as ke}from"./button-DwabStBc.js";import{a as Ee}from"./use-binding-D8RTw0Vg.js";import{L as Le,u as Te}from"./localstorage-keys-BJ5XIwxg.js";import"./collection-display-button-Y2mhlw1Q.js";import"./dropdown-menu-D49UF2Ht.js";import"./Grid01-Dz3rGiqv.js";import"./utils-BrYcHRV_.js";import"./input-B0bndeDO.js";import"./ChevronDown-CRNbAv_Y.js";import"./auth-Cb-IumFw.js";import"./useQuery-noukwpLn.js";var $e=class extends U{constructor(t,e){super(t,e)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(t){super.setOptions({...t,behavior:_()})}getOptimisticResult(t){return t.behavior=_(),super.getOptimisticResult(t)}fetchNextPage(t){return this.fetch({...t,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(t){return this.fetch({...t,meta:{fetchMore:{direction:"backward"}}})}createResult(t,e){const{state:l}=t,m=super.createResult(t,e),{isFetching:r,isRefetching:h,isError:d,isRefetchError:a}=m,c=l.fetchMeta?.fetchMore?.direction,i=d&&c==="forward",n=r&&c==="forward",o=d&&c==="backward",f=r&&c==="backward";return{...m,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:G(e,l.data),hasPreviousPage:H(e,l.data),isFetchNextPageError:i,isFetchingNextPage:n,isFetchPreviousPageError:o,isFetchingPreviousPage:f,isRefetchError:a&&!i&&!o,isRefetching:h&&!n&&!f}}};function Me(t,e){return q({...t,enabled:!0,suspense:!0,throwOnError:Y},$e,e)}const Q=({size:t=24,color:e="currentColor",...l})=>M.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...l},M.createElement("path",{d:"m9 12 2 2 4.5-4.5m2.401-4.501a2.03 2.03 0 0 0 1.1 1.1l1.744.723a2.033 2.033 0 0 1 1.1 2.656l-.722 1.744a2.03 2.03 0 0 0 0 1.556l.722 1.744a2.033 2.033 0 0 1-1.1 2.656L19 17.901A2.033 2.033 0 0 0 17.9 19l-.723 1.745a2.032 2.032 0 0 1-2.656 1.1l-1.744-.722a2.032 2.032 0 0 0-1.555 0l-1.745.723a2.033 2.033 0 0 1-2.654-1.1L6.1 19.001A2.033 2.033 0 0 0 5 17.9l-1.744-.723a2.033 2.033 0 0 1-1.1-2.654l.721-1.744a2.033 2.033 0 0 0 0-1.556l-.722-1.746a2.033 2.033 0 0 1 1.1-2.657L5 6.098A2.03 2.03 0 0 0 6.1 5l.723-1.745a2.033 2.033 0 0 1 2.656-1.1l1.744.722a2.033 2.033 0 0 0 1.555-.001l1.746-.72a2.032 2.032 0 0 1 2.655 1.1l.723 1.746v-.003Z"}));Q.displayName="CheckVerified02";function Ae(t){const e=t.title||t.server.title||t.id||"Unnamed Item",l=t.server.description||null,m=t.server.icons?.[0]?.src||je(t.server.repository)||null,r=t._meta?.["mcp.mesh"]?.verified??!1,h=t.server.version,a=(t.server.remotes?.length??0)>0;let c=e,i=null;if(e.includes("/")){const n=e.split("/");n.length>=2&&(i=n[0]||null,c=Ce(e))}if(!i){const n=t._meta?.["mcp.mesh"]?.scopeName,o=t._meta?.["mcp.mesh"]?.appName;n&&o?i=`${n}/${o}`:n&&(i=n)}return{icon:m,scopeName:i,displayName:c,description:l,version:h||null,isVerified:r,canInstall:a}}function Ke(t){const e=T.c(39),{icon:l,scopeName:m,displayName:r,description:h,isVerified:d,canInstall:a,onClick:c}=t;let i;e[0]!==r||e[1]!==l?(i=s.jsx(re,{icon:l,name:r,size:"md",className:"shadow-sm"}),e[0]=r,e[1]=l,e[2]=i):i=e[2];let n;e[3]!==r?(n=s.jsx("span",{className:"truncate",children:r}),e[3]=r,e[4]=n):n=e[4];let o;e[5]!==d?(o=d&&s.jsx(Q,{size:16,className:"text-success shrink-0"}),e[5]=d,e[6]=o):o=e[6];let f;e[7]!==a?(f=!a&&s.jsx(se,{size:16,className:"text-muted-foreground shrink-0"}),e[7]=a,e[8]=f):f=e[8];let p;e[9]!==n||e[10]!==o||e[11]!==f?(p=s.jsx(de,{asChild:!0,children:s.jsxs("div",{className:"flex items-center gap-2 text-base font-medium min-w-0",children:[n,o,f]})}),e[9]=n,e[10]=o,e[11]=f,e[12]=p):p=e[12];let u;e[13]!==r?(u=s.jsx("p",{children:r}),e[13]=r,e[14]=u):u=e[14];let g;e[15]!==a?(g=!a&&s.jsx("p",{className:"text-xs mt-1",children:"No connection available"}),e[15]=a,e[16]=g):g=e[16];let v;e[17]!==u||e[18]!==g?(v=s.jsxs(me,{children:[u,g]}),e[17]=u,e[18]=g,e[19]=v):v=e[19];let y;e[20]!==p||e[21]!==v?(y=s.jsxs(fe,{children:[p,v]}),e[20]=p,e[21]=v,e[22]=y):y=e[22];let C;e[23]!==m?(C=m&&s.jsx("div",{className:"text-sm text-muted-foreground truncate",children:m}),e[23]=m,e[24]=C):C=e[24];let S;e[25]!==C||e[26]!==y?(S=s.jsx("div",{className:"flex gap-2 items-start min-w-0 flex-1",children:s.jsxs("div",{className:"min-w-0 flex-1",children:[y,C]})}),e[25]=C,e[26]=y,e[27]=S):S=e[27];let w;e[28]!==i||e[29]!==S?(w=s.jsxs("div",{className:"flex gap-3",children:[i,S]}),e[28]=i,e[29]=S,e[30]=w):w=e[30];const P=h||"No description available";let j;e[31]!==P?(j=s.jsx("div",{className:"grid grid-cols-1 gap-1 min-w-0",children:s.jsx("div",{className:"text-sm text-muted-foreground line-clamp-2",children:P})}),e[31]=P,e[32]=j):j=e[32];let x;e[33]!==w||e[34]!==j?(x=s.jsxs("div",{className:"flex flex-col gap-4 h-full relative",children:[w,j]}),e[33]=w,e[34]=j,e[35]=x):x=e[35];let b;return e[36]!==c||e[37]!==x?(b=s.jsx(ve,{className:"p-6 cursor-pointer hover:bg-muted/50 transition-colors",onClick:c,children:x}),e[36]=c,e[37]=x,e[38]=b):b=e[38],b}function B(t){const e=T.c(12),{items:l,title:m,onItemClick:r}=t;if(l.length===0)return null;let h;e[0]!==m?(h=m&&s.jsx("div",{className:"flex items-center justify-between w-max gap-2",children:s.jsx("h2",{className:"text-lg font-medium",children:m})}),e[0]=m,e[1]=h):h=e[1];let d;if(e[2]!==l||e[3]!==r){let i;e[5]!==r?(i=n=>{const o=Ae(n);return s.jsx(Ke,{...o,onClick:()=>r(n)},n.id)},e[5]=r,e[6]=i):i=e[6],d=l.map(i),e[2]=l,e[3]=r,e[4]=d}else d=e[4];let a;e[7]!==d?(a=s.jsx("div",{className:"grid grid-cols-4 gap-4",children:d}),e[7]=d,e[8]=a):a=e[8];let c;return e[9]!==h||e[10]!==a?(c=s.jsxs("div",{className:"flex flex-col gap-4",children:[h,a]}),e[9]=h,e[10]=a,e[11]=c):c=e[11],c}function Oe(t,e){if(!e)return t;const l=e.toLowerCase();return t.filter(m=>(m.name||m.title||"").toLowerCase().includes(l)||(m.description||m.server.description||"").toLowerCase().includes(l))}function Fe(t){return t.verified===!0||t._meta?.["mcp.mesh"]?.verified===!0||t.server._meta?.["mcp.mesh"]?.verified===!0}function De(t){const e=T.c(32),{items:l,isLoadingMore:m,registryId:r,hasMore:h,onLoadMore:d}=t,a=m===void 0?!1:m,c=h===void 0?!1:h,[i,n]=M.useState(""),o=Z(),{org:f}=D(),p=M.useRef(null);let u,g,v;e[0]!==l||e[1]!==i?(u=Oe(l,i),v=u.filter(Fe),g=u.filter(R=>!v.find(I=>I.id===R.id)),e[0]=l,e[1]=i,e[2]=u,e[3]=g,e[4]=v):(u=e[2],g=e[3],v=e[4]);const y=g;let C;e[5]!==o||e[6]!==f.slug||e[7]!==r?(C=R=>{const I=ue(R.name||R.title||R.server.title||""),L=R.server.name;o({to:"/$org/store/$appName",params:{org:f.slug,appName:I},search:{registryId:r,serverName:L}})},e[5]=o,e[6]=f.slug,e[7]=r,e[8]=C):C=e[8];const S=C;let w;e[9]!==c||e[10]!==a||e[11]!==d||e[12]!==i?(w=R=>{if(!c||!d||i||a)return;const I=R.currentTarget;I.scrollHeight-I.scrollTop-I.clientHeight<200&&d()},e[9]=c,e[10]=a,e[11]=d,e[12]=i,e[13]=w):w=e[13];const P=w;let j;e[14]===Symbol.for("react.memo_cache_sentinel")?(j=R=>{R.key==="Enter"&&n(R.currentTarget.value)},e[14]=j):j=e[14];let x;e[15]!==i?(x=s.jsx(ge,{value:i,onChange:n,placeholder:"Search for an MCP Server...",onKeyDown:j}),e[15]=i,e[16]=x):x=e[16];let b;e[17]!==y||e[18]!==u||e[19]!==S||e[20]!==c||e[21]!==a||e[22]!==l.length||e[23]!==i||e[24]!==v?(b=s.jsx("div",{className:"p-5",children:s.jsx("div",{children:l.length===0?s.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[s.jsx(he,{size:48,className:"text-muted-foreground mb-4"}),s.jsx("h3",{className:"text-lg font-medium mb-2",children:"No items available"}),s.jsx("p",{className:"text-muted-foreground",children:"This store doesn't have any available items yet."})]}):i&&u.length===0?s.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[s.jsx(xe,{size:48,className:"text-muted-foreground mb-4"}),s.jsx("h3",{className:"text-lg font-medium mb-2",children:"No results found"}),s.jsx("p",{className:"text-muted-foreground",children:"Try adjusting your search terms."})]}):s.jsxs("div",{className:"flex flex-col gap-8",children:[v.length>0&&s.jsx(B,{items:v,title:"Verified",onItemClick:S}),y.length>0&&s.jsx(B,{items:y,title:v.length>0?"All":"",onItemClick:S}),c&&!i&&a&&s.jsx("div",{className:"flex justify-center py-8",children:s.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground",children:[s.jsx(z,{size:20,className:"animate-spin"}),s.jsx("span",{className:"text-sm",children:"Loading more items..."})]})})]})})}),e[17]=y,e[18]=u,e[19]=S,e[20]=c,e[21]=a,e[22]=l.length,e[23]=i,e[24]=v,e[25]=b):b=e[25];let k;e[26]!==P||e[27]!==b?(k=s.jsx("div",{ref:p,className:"flex-1 overflow-y-auto",onScroll:P,children:b}),e[26]=P,e[27]=b,e[28]=k):k=e[28];let E;return e[29]!==x||e[30]!==k?(E=s.jsxs("div",{className:"flex flex-col h-full",children:[x,k]}),e[29]=x,e[30]=k,e[31]=E):E=e[31],E}const F=24;function ze(t){const e=T.c(27),{registryId:l}=t,m=oe(l);let r,h,d,a;if(e[0]!==m?.tools||e[1]!==l){if(r=Ne(m?.tools),!r)throw new Error("This registry does not support listing store items.");let x;e[6]!==l?(x=ae(l),e[6]=l,e[7]=x):x=e[7],a=x,d=Me,h=J.toolCall(l,r,JSON.stringify({limit:F})),e[0]=m?.tools,e[1]=l,e[2]=r,e[3]=h,e[4]=d,e[5]=a}else r=e[2],h=e[3],d=e[4],a=e[5];let c;e[8]!==r||e[9]!==a?(c=async x=>{const{pageParam:b}=x;return await a(r,b?{cursor:b,limit:F}:{limit:F})},e[8]=r,e[9]=a,e[10]=c):c=e[10];let i;e[11]!==h||e[12]!==c?(i={queryKey:h,queryFn:c,initialPageParam:void 0,getNextPageParam:_e,staleTime:36e5},e[11]=h,e[12]=c,e[13]=i):i=e[13];const{data:n,fetchNextPage:o,hasNextPage:f,isFetchingNextPage:p}=d(i);let u;e:{if(!n?.pages||n.pages.length===0){u=null;break e}const x=n.pages[0];if(typeof x=="object"&&x!==null&&"totalCount"in x&&typeof x.totalCount=="number"){u=x.totalCount;break e}u=null}const g=u,v=n?.pages;let y;e[14]!==v?(y=ye(v),e[14]=v,e[15]=y):y=e[15];const C=y;let S;e[16]!==o||e[17]!==f||e[18]!==p?(S=()=>{f&&!p&&o()},e[16]=o,e[17]=f,e[18]=p,e[19]=S):S=e[19];const w=S,P=f??!1;let j;return e[20]!==C||e[21]!==w||e[22]!==p||e[23]!==l||e[24]!==P||e[25]!==g?(j=s.jsx(De,{items:C,isLoadingMore:p,registryId:l,hasMore:P,onLoadMore:w,totalCount:g}),e[20]=C,e[21]=w,e[22]=p,e[23]=l,e[24]=P,e[25]=g,e[26]=j):j=e[26],j}function _e(t){if(typeof t=="object"&&t!==null){const e=t.nextCursor||t.cursor;if(e)return e}}function Be(t){const e=T.c(15),{registries:l,value:m,onValueChange:r,onAddWellKnown:h,wellKnownRegistries:d,placeholder:a}=t,c=a===void 0?"Select a registry...":a;let i;e[0]!==c?(i=s.jsx(be,{className:"w-[200px] h-8!",children:s.jsx(Se,{placeholder:c})}),e[0]=c,e[1]=i):i=e[1];let n;e[2]!==l?(n=l.map(Ve),e[2]=l,e[3]=n):n=e[3];let o;e[4]!==h||e[5]!==d?(o=d.length>0&&s.jsxs("div",{className:"border-t border-border pt-1",children:[s.jsx("p",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:"Other known registries"}),d.map(u=>s.jsxs("button",{onClick:g=>{g.preventDefault(),g.stopPropagation(),h(u)},className:"relative flex w-full cursor-pointer items-center gap-2 rounded-xl py-1.5 pr-8 pl-2 text-sm outline-hidden select-none hover:bg-accent hover:text-accent-foreground",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[u.icon?s.jsx("img",{src:u.icon,alt:u.title,className:"w-4 h-4 rounded"}):s.jsx("div",{className:"w-4 h-4 rounded bg-primary/10 flex items-center justify-center text-xs font-semibold text-primary",children:u.title.slice(0,1).toUpperCase()}),s.jsx("span",{className:"flex-1",children:u.title})]}),s.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center text-muted-foreground",children:s.jsx(W,{size:16})})]},u.id??u.title))]}),e[4]=h,e[5]=d,e[6]=o):o=e[6];let f;e[7]!==n||e[8]!==o?(f=s.jsxs(Pe,{children:[n,o]}),e[7]=n,e[8]=o,e[9]=f):f=e[9];let p;return e[10]!==r||e[11]!==i||e[12]!==f||e[13]!==m?(p=s.jsxs(Re,{value:m,onValueChange:r,children:[i,f]}),e[10]=r,e[11]=i,e[12]=f,e[13]=m,e[14]=p):p=e[14],p}function Ve(t){return s.jsx(we,{className:"cursor-pointer",value:t.id??t.name,children:s.jsxs("div",{className:"flex items-center gap-2",children:[t.icon?s.jsx("img",{src:t.icon,alt:t.name,className:"w-4 h-4 rounded"}):s.jsx("div",{className:"w-4 h-4 rounded from-primary/20 to-primary/10 flex items-center justify-center text-xs font-semibold text-primary",children:t.name.slice(0,1).toUpperCase()}),s.jsx("span",{children:t.name})]})},t.id??t.name)}function We(t){const e=T.c(13),{registries:l,onConnected:m}=t,r=l.length===1;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=s.jsx("img",{src:"/store-empty-state.svg",alt:"No store connected",width:423,height:279,className:"max-w-full h-auto"}),e[0]=h):h=e[0];const d=r?"Connect to registry":"Connect to a store",a=r?"Connect to discover and use MCP Servers from the community.":"Choose a registry to discover and connect MCP Servers from the community.",c=`grid gap-4 w-full ${r?"grid-cols-1 justify-items-center":"grid-cols-1 md:grid-cols-2"}`;let i;if(e[1]!==m||e[2]!==l){let f;e[4]!==m?(f=(p,u)=>{const g=p.id??`registry-${u}`;return s.jsx(Qe,{registry:{...p,id:g},onConnected:m},g)},e[4]=m,e[5]=f):f=e[5],i=l.map(f),e[1]=m,e[2]=l,e[3]=i}else i=e[3];let n;e[6]!==c||e[7]!==i?(n=s.jsx("div",{className:c,children:i}),e[6]=c,e[7]=i,e[8]=n):n=e[8];let o;return e[9]!==d||e[10]!==a||e[11]!==n?(o=s.jsx(pe,{image:h,title:d,description:a,descriptionClassName:"max-w-[500px]",actionsClassName:"w-full max-w-2xl",actions:n}),e[9]=d,e[10]=a,e[11]=n,e[12]=o):o=e[12],o}function Qe(t){const e=T.c(15),{registry:l,onConnected:m}=t,r=V(),{org:h}=D(),{data:d}=X.useSession(),a=!!h&&!!d?.user?.id;let c;e[0]!==r.create||e[1]!==a||e[2]!==m||e[3]!==l?(c=async()=>{if(!a)return;const u=await r.create.mutateAsync(l);m?.(u.id)},e[0]=r.create,e[1]=a,e[2]=m,e[3]=l,e[4]=c):c=e[4];const i=c,n=!a||r.create.isPending;let o;e[5]!==r.create.isPending?(o=r.create.isPending?s.jsxs(s.Fragment,{children:[s.jsx(z,{className:"animate-spin"}),"Connecting..."]}):s.jsxs(s.Fragment,{children:[s.jsx(W,{}),"Connect"]}),e[5]=r.create.isPending,e[6]=o):o=e[6];let f;e[7]!==i||e[8]!==n||e[9]!==o?(f=s.jsx(ke,{variant:"outline",className:"w-full",disabled:n,onClick:i,children:o}),e[7]=i,e[8]=n,e[9]=o,e[10]=f):f=e[10];let p;return e[11]!==i||e[12]!==l||e[13]!==f?(p=s.jsx(Ie,{connection:l,onClick:i,footer:f,className:"transition-all hover:border-primary/50 hover:shadow-md"}),e[11]=i,e[12]=l,e[13]=f,e[14]=p):p=e[14],p}function Ct(){const t=T.c(41),{org:e}=D(),l=ce(),m=V(),r=ee(),h=r.location.pathname.includes("/store/")&&r.location.pathname.split("/").length>3,d=Ee(l);let a;t[0]!==d?(a=d.map(Ge),t[0]=d,t[1]=a):a=t[1];const c=a;let i;t[2]!==e.slug?(i=Le.selectedRegistry(e.slug),t[2]=e.slug,t[3]=i):i=t[3];const[n,o]=Te(i,He);let f;if(t[4]!==d||t[5]!==n){let N;t[7]!==n?(N=O=>O.id===n,t[7]=n,t[8]=N):N=t[8],f=d.find(N),t[4]=d,t[5]=n,t[6]=f}else f=t[6];const u=f?.id||d[0]?.id||"";let g;t[9]!==e.id?(g=ie(e.id),t[9]=e.id,t[10]=g):g=t[10];let v;t[11]!==g?(v=[g],t[11]=g,t[12]=v):v=t[12];const y=v;let C;t[13]===Symbol.for("react.memo_cache_sentinel")?(C=[le()],t[13]=C):C=t[13];const S=C;let w;t[14]!==m.create||t[15]!==o?(w=async N=>{const O=await m.create.mutateAsync(N);o(O.id)},t[14]=m.create,t[15]=o,t[16]=w):w=t[16];const P=w;let j;t[17]!==d?(j=new Set(d.map(Ue)),t[17]=d,t[18]=j):j=t[18];const x=j;let b;t[19]!==x||t[20]!==y?(b=y.filter(N=>N.id&&!x.has(N.id)),t[19]=x,t[20]=y,t[21]=b):b=t[21];const k=b;let E;t[22]!==x?(E=S.filter(N=>N.id&&!x.has(N.id)),t[22]=x,t[23]=E):E=t[23];const R=E;if(h){let N;return t[24]===Symbol.for("react.memo_cache_sentinel")?(N=s.jsx(te,{}),t[24]=N):N=t[24],N}let I;t[25]!==P?(I=async N=>P(N),t[25]=P,t[26]=I):I=t[26];let L;t[27]!==k||t[28]!==u||t[29]!==c||t[30]!==o||t[31]!==I?(L=s.jsx(ne,{title:"Store",ctaButton:s.jsx(Be,{wellKnownRegistries:k,registries:c,value:u,onValueChange:o,onAddWellKnown:I,placeholder:"Select store..."})}),t[27]=k,t[28]=u,t[29]=c,t[30]=o,t[31]=I,t[32]=L):L=t[32];let A;t[33]===Symbol.for("react.memo_cache_sentinel")?(A=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full",children:[s.jsx(z,{size:32,className:"animate-spin text-muted-foreground mb-4"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading store items..."})]}),t[33]=A):A=t[33];let $;t[34]!==R||t[35]!==u||t[36]!==o?($=s.jsx("div",{className:"h-full flex flex-col overflow-hidden",children:s.jsx(M.Suspense,{fallback:A,children:u?s.jsx(ze,{registryId:u}):s.jsx("div",{className:"flex flex-col items-center justify-center h-full",children:s.jsx(We,{registries:R,onConnected:N=>{o(N)}})})})}),t[34]=R,t[35]=u,t[36]=o,t[37]=$):$=t[37];let K;return t[38]!==L||t[39]!==$?(K=s.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[L,$]}),t[38]=L,t[39]=$,t[40]=K):K=t[40],K}function Ue(t){return t.id}function He(){return""}function Ge(t){return{id:t.id,name:t.title,icon:t.icon||void 0}}export{Ct as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as q,c as _,j as s,f as ve,d as ke,b as Se,a as Ie,t as he}from"./index-BFGV_ZyQ.js";import{i as _e}from"./AlertCircle-BRDn8bYf.js";import{i as je}from"./Loading01-Bg5ZbX7j.js";import{B as ie}from"./button-DGzvT_2A.js";import{i as Le}from"./ArrowLeft-qWOemv4m.js";import{I as ye,a as Ae,u as De,b as Ee,c as Me}from"./use-connection-DfrXFTVM.js";import{i as Ue}from"./CheckCircle-DNAL-vtD.js";import{t as Ve}from"./ChevronDown-CJBpL9ke.js";import{s as ge}from"./Plus-DHLB4x84.js";import{b as $e,D as Pe,a as Re,c as ze}from"./dropdown-menu-D1IcmwBM.js";import{n as be}from"./LinkExternal01-v_wZOVfQ.js";import{E as Be}from"./SearchMd-dWvbF6MG.js";import{R as Ge,T as Fe,a as Oe}from"./resource-tabs-talmxE-P.js";import{a as He}from"./use-binding-BAah0fz3.js";import{u as We}from"./use-tool-call-De--YQMp.js";import{u as Ke}from"./use-mcp-BM47vnpW.js";import{u as Ne}from"./tooltip-B1UObqaJ.js";import{e as Ze}from"./extract-connection-data-BzkcwZMq.js";import{s as qe}from"./slugify-CEUa2lfQ.js";import{f as Je,e as Qe,b as Xe,c as Ye,g as et}from"./registry-utils-ulDDT0d8.js";import{e as tt}from"./app-name-gTETL9So.js";import{i as st}from"./InfoCircle-D8u9C2rC.js";import"./utils-D8oc_Xja.js";import"./Grid01-DzkX4KgN.js";import"./useQuery-B00cZGqv.js";import"./File06-CaEGX5DR.js";import"./collection-display-button-HCh5o-4Q.js";import"./collection-search-nvVuwapQ.js";import"./input-CSN83rcG.js";import"./collection-table-wrapper-D0FdiE30.js";import"./card-DhiM8w8S.js";import"./layout-By0mCM-C.js";import"./badge-CsN_0CQA.js";import"./auth-DzSQcnhF.js";import"./generate-id-Dyweu44Y.js";const we=({size:t=24,color:e="currentColor",...o})=>q.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...o},q.createElement("path",{d:"m21 21-3.5-3.5m2.5-6a8.5 8.5 0 1 1-17 0 8.5 8.5 0 0 1 17 0Z"}));we.displayName="SearchLg";function ot(t){const e=_.c(3),{message:o}=t,n=o===void 0?"Loading app details...":o;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=s.jsx(je,{size:48,className:"animate-spin mb-4"}),e[0]=r):r=e[0];let i;return e[1]!==n?(i=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full",children:[r,s.jsx("p",{className:"text-sm text-muted-foreground",children:n})]}),e[1]=n,e[2]=i):i=e[2],i}function rt(t){const e=_.c(9),{error:o,onBack:n}=t,r=o instanceof Error?o.message:o;let i,d;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=s.jsx(_e,{size:48,className:"text-destructive mb-4"}),d=s.jsx("h3",{className:"text-lg font-medium mb-2",children:"Error loading app"}),e[0]=i,e[1]=d):(i=e[0],d=e[1]);let a;e[2]!==r?(a=s.jsx("p",{className:"text-muted-foreground max-w-md text-center",children:r}),e[2]=r,e[3]=a):a=e[3];let l;e[4]!==n?(l=s.jsx("button",{onClick:n,className:"mt-4 px-4 py-2 bg-primary text-primary-foreground rounded-lg hover:bg-primary/90 transition-colors",children:"Go Back"}),e[4]=n,e[5]=l):l=e[5];let m;return e[6]!==a||e[7]!==l?(m=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full",children:[i,d,a,l]}),e[6]=a,e[7]=l,e[8]=m):m=e[8],m}function nt(t){const e=_.c(5),{onBack:o}=t;let n,r,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(we,{size:48,className:"text-muted-foreground mb-4"}),r=s.jsx("h3",{className:"text-lg font-medium mb-2",children:"App not found"}),i=s.jsx("p",{className:"text-muted-foreground max-w-md text-center",children:"The app you're looking for doesn't exist in this store."}),e[0]=n,e[1]=r,e[2]=i):(n=e[0],r=e[1],i=e[2]);let d;return e[3]!==o?(d=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full",children:[n,r,i,s.jsx("button",{onClick:o,className:"mt-4 px-4 py-2 bg-primary text-primary-foreground rounded-lg hover:bg-primary/90 transition-colors",children:"Go Back to Store"})]}),e[3]=o,e[4]=d):d=e[4],d}function it(t){const e=_.c(3),{onBack:o}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(Le,{}),e[0]=n):n=e[0];let r;return e[1]!==o?(r=s.jsx("div",{className:"flex items-center h-12 border-b border-border shrink-0",children:s.jsx("div",{className:"flex h-full px-2 border-r items-center",children:s.jsx(ie,{variant:"ghost",size:"icon",className:"items-center size-8 text-muted-foreground",onClick:o,"aria-label":"Go back",children:n})})}),e[1]=o,e[2]=r):r=e[2],r}function lt(t){const e=_.c(25),{data:o,itemVersions:n,onInstall:r,canInstall:i,isInstalling:d}=t,a=i===void 0?!0:i,l=d===void 0?!1:d,[m,p]=q.useState(0);let x;e[0]!==r?(x=S=>{p(S),r(S)},e[0]=r,e[1]=x):x=e[1];const f=x;let h;e[2]!==o.icon||e[3]!==o.name?(h=s.jsx(ye,{icon:o.icon,name:o.name,size:"lg",className:"shrink-0 shadow-sm"}),e[2]=o.icon,e[3]=o.name,e[4]=h):h=e[4];let g;e[5]!==o.name?(g=s.jsx("h1",{className:"text-3xl font-medium",children:o.name}),e[5]=o.name,e[6]=g):g=e[6];let b;e[7]!==o.verified?(b=o.verified&&s.jsx("img",{src:"/verified-badge.svg",alt:"Verified",className:"w-5 h-5 shrink-0"}),e[7]=o.verified,e[8]=b):b=e[8];let y;e[9]!==g||e[10]!==b?(y=s.jsx("div",{className:"flex-1 min-w-0",children:s.jsxs("div",{className:"flex items-center gap-2",children:[g,b]})}),e[9]=g,e[10]=b,e[11]=y):y=e[11];let N;e[12]!==a||e[13]!==f||e[14]!==l||e[15]!==n||e[16]!==r||e[17]!==m?(N=a?s.jsx("div",{className:"shrink-0",children:n.length>1?s.jsxs("div",{className:"flex",children:[s.jsxs(ie,{variant:"brand",onClick:()=>f(0),disabled:l,className:"shrink-0 rounded-r-none cursor-pointer",children:[s.jsx(ge,{size:20}),l?"Connecting...":"Connect MCP Server"]}),s.jsxs($e,{children:[s.jsx(Pe,{asChild:!0,children:s.jsx(ie,{variant:"brand",disabled:l,className:"shrink-0 rounded-l-none px-2 border-l-2 border-l-white/50 cursor-pointer",children:s.jsx(Ve,{size:20})})}),s.jsx(Re,{align:"end",className:"w-56 max-h-[300px] overflow-y-auto",children:n.map((S,C)=>{const I=S._meta?.["io.modelcontextprotocol.registry/official"];return s.jsx(ze,{onClick:()=>f(C),disabled:l,className:"cursor-pointer",children:s.jsxs("div",{className:"flex items-center justify-between gap-2 w-full",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"font-medium text-sm",children:["v",S.server?.version||"unknown"]}),I?.isLatest&&s.jsx("div",{className:"text-xs text-muted-foreground/50 font-semibold",children:"LATEST"})]}),C===m&&s.jsx(Ue,{size:16,className:"text-muted-foreground shrink-0"})]})},C)})})]})]}):s.jsxs(ie,{variant:"brand",onClick:()=>r(),disabled:n.length===0||l,className:"shrink-0",children:[s.jsx(ge,{size:20}),l?"Connecting...":"Connect MCP Server"]})}):s.jsx("div",{className:"shrink-0 px-4 py-2 text-sm text-muted-foreground bg-muted rounded-lg",children:"Cannot be connected"}),e[12]=a,e[13]=f,e[14]=l,e[15]=n,e[16]=r,e[17]=m,e[18]=N):N=e[18];let w;e[19]!==y||e[20]!==N?(w=s.jsxs("div",{className:"flex-1 min-w-0 flex items-center justify-between",children:[y,N]}),e[19]=y,e[20]=N,e[21]=w):w=e[21];let k;return e[22]!==h||e[23]!==w?(k=s.jsxs("div",{className:"flex items-center gap-4 py-8 px-5 border-b border-border",children:[h,w]}),e[22]=h,e[23]=w,e[24]=k):k=e[24],k}function at(t){if(!t)return"—";try{const e=new Date(t);return isNaN(e.getTime())?"—":e.toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"})}catch{return"—"}}function ct(t){const e=_.c(45),{data:o,publisherInfo:n,selectedItem:r}=t;let i;e[0]!==o.description?(i=o.description&&s.jsxs("div",{className:"px-5 pb-5 border-b border-border",children:[s.jsx("h2",{className:"text-base font-medium mb-3",children:"Overview"}),s.jsx("p",{className:"text-muted-foreground text-sm leading-relaxed",children:o.description})]}),e[0]=o.description,e[1]=i):i=e[1];const d=o.publisher==="io.modelcontextprotocol.registry/official"?"Official Registry":o.publisher;let a;e[2]!==n.logo||e[3]!==d?(a=s.jsx(ye,{icon:n.logo,name:d,size:"sm",className:"shrink-0 shadow-sm"}),e[2]=n.logo,e[3]=d,e[4]=a):a=e[4];let l;e[5]!==o.publisher?(l=o.publisher==="io.modelcontextprotocol.registry/official"?"Official Registry":o.publisher.charAt(0).toUpperCase()+o.publisher.slice(1),e[5]=o.publisher,e[6]=l):l=e[6];let m;e[7]!==l?(m=s.jsx("div",{className:"font-medium",children:l}),e[7]=l,e[8]=m):m=e[8];let p;e[9]!==n.count?(p=n.count>0?s.jsxs(s.Fragment,{children:[s.jsx("img",{src:"/globe.svg",alt:"globe",className:"w-3 h-3"}),s.jsxs("span",{children:[n.count," ",n.count===1?"published app":"published apps"]})]}):"Publisher",e[9]=n.count,e[10]=p):p=e[10];let x;e[11]!==p?(x=s.jsx("div",{className:"text-xs text-muted-foreground flex items-center gap-1",children:p}),e[11]=p,e[12]=x):x=e[12];let f;e[13]!==m||e[14]!==x?(f=s.jsxs("div",{children:[m,x]}),e[13]=m,e[14]=x,e[15]=f):f=e[15];let h;e[16]!==a||e[17]!==f?(h=s.jsx("div",{className:"px-5 border-b border-border",children:s.jsxs("div",{className:"flex items-center gap-3 py-5",children:[a,f]})}),e[16]=a,e[17]=f,e[18]=h):h=e[18];let g;e[19]!==o.version?(g=o.version&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Version"}),s.jsxs("span",{className:"text-muted-foreground uppercase text-xs",children:["v",o.version]})]}),e[19]=o.version,e[20]=g):g=e[20];let b;e[21]!==o.connectionType?(b=o.connectionType&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Connection Type"}),s.jsx("span",{className:"text-muted-foreground uppercase text-xs",children:o.connectionType})]}),e[21]=o.connectionType,e[22]=b):b=e[22];let y;e[23]!==o.schemaVersion?(y=o.schemaVersion&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Schema Version"}),s.jsx("span",{className:"text-muted-foreground text-xs",children:o.schemaVersion})]}),e[23]=o.schemaVersion,e[24]=y):y=e[24];let N;e[25]!==o.websiteUrl?(N=o.websiteUrl&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Website"}),s.jsxs("a",{href:o.websiteUrl,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:underline flex items-center gap-1 text-xs",children:[s.jsx("span",{children:"Visit"}),s.jsx(be,{size:14})]})]}),e[25]=o.websiteUrl,e[26]=N):N=e[26];let w;e[27]!==o.repository?(w=o.repository?.url&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Source"}),s.jsxs("a",{href:o.repository.url,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:underline flex items-center gap-1 text-xs",children:[s.jsx("span",{children:"GitHub"}),s.jsx(be,{size:14})]})]}),e[27]=o.repository,e[28]=w):w=e[28];let k;e[29]!==g||e[30]!==b||e[31]!==y||e[32]!==N||e[33]!==w?(k=s.jsxs("div",{className:"px-5 py-5 border-b border-border space-y-4",children:[g,b,y,N,w]}),e[29]=g,e[30]=b,e[31]=y,e[32]=N,e[33]=w,e[34]=k):k=e[34];let S;e[35]===Symbol.for("react.memo_cache_sentinel")?(S=s.jsx("span",{className:"text-foreground text-sm",children:"Last Updated"}),e[35]=S):S=e[35];let C;e[36]!==r.updated_at?(C=at(r.updated_at),e[36]=r.updated_at,e[37]=C):C=e[37];let I;e[38]!==C?(I=s.jsxs("div",{className:"px-5 py-5 text-sm flex justify-between items-center border-b border-border",children:[S,s.jsx("span",{className:"text-muted-foreground uppercase text-xs",children:C})]}),e[38]=C,e[39]=I):I=e[39];let u;return e[40]!==i||e[41]!==k||e[42]!==I||e[43]!==h?(u=s.jsxs("div",{className:"lg:col-span-1 flex flex-col pt-5",children:[i,h,k,I]}),e[40]=i,e[41]=k,e[42]=I,e[43]=h,e[44]=u):u=e[44],u}function dt(t){const e=_.c(18),{data:o,availableTabs:n,effectiveActiveTabId:r,effectiveTools:i,isLoadingTools:d,onTabChange:a}=t,l=d===void 0?!1:d;let m;e[0]!==i?(m=i.map(mt),e[0]=i,e[1]=m):m=e[1];const p=m;let x;e[2]!==n||e[3]!==r||e[4]!==a?(x=n.length>0&&s.jsx("div",{className:"px-4 py-2 border-b border-border bg-background",children:s.jsx(Ge,{tabs:n,activeTab:r,onTabChange:a})}),e[2]=n,e[3]=r,e[4]=a,e[5]=x):x=e[5];let f;e[6]!==r||e[7]!==i.length||e[8]!==l||e[9]!==p?(f=r==="tools"&&s.jsx("div",{className:"flex flex-col flex-1",children:l?s.jsxs("div",{className:"flex items-center justify-center p-8",children:[s.jsx(je,{size:24,className:"animate-spin"}),s.jsx("span",{className:"ml-2 text-sm text-muted-foreground",children:"Loading tools..."})]}):i.length>0?s.jsx(Fe,{tools:p,showToolbar:!1,emptyMessage:"This app doesn't have any tools."}):s.jsx(Be,{image:null,title:"No tools available",description:"This app doesn't have any tools."})}),e[6]=r,e[7]=i.length,e[8]=l,e[9]=p,e[10]=f):f=e[10];let h;e[11]!==o?.repository||e[12]!==r?(h=r==="readme"&&s.jsx("div",{className:"flex-1 overflow-y-auto bg-background",children:s.jsx(Oe,{repository:o?.repository})}),e[11]=o?.repository,e[12]=r,e[13]=h):h=e[13];let g;return e[14]!==x||e[15]!==f||e[16]!==h?(g=s.jsxs("div",{className:"lg:col-span-2 flex flex-col border-l border-border",children:[x,f,h]}),e[14]=x,e[15]=f,e[16]=h,e[17]=g):g=e[17],g}function mt(t){const e=t;return{name:e.name||"",description:e.description||void 0}}function ft(t,e){if(!t||!e)return;const o=e.toLowerCase();return t.find(n=>n.app_name?.toLowerCase()===o||n.app_id?.toLowerCase()===o||n.title.toLowerCase()===o)||t.find(n=>n.title.toLowerCase().includes(o))}function ut(t,e,o,n,r){if(!e||e==="Unknown")return{count:0};if(e==="io.modelcontextprotocol.registry/official")return{logo:n?.icon||void 0,count:r??t.length};const i=e.toLowerCase(),d=t.filter(l=>(l._meta?.["io.modelcontextprotocol.registry/official"]?"io.modelcontextprotocol.registry/official":l.publisher||l._meta?.["mcp.mesh"]?.scopeName||"Unknown").toLowerCase()===i);return{logo:o?.icon||d[0]?.publisher_logo||d[0]?.icon||void 0,count:d.length}}function pt(t){const e=t.server._meta?.["mcp.mesh/publisher-provided"],o=t._meta?.["mcp.mesh"],n=t._meta?.["io.modelcontextprotocol.registry/official"],r=t.server,i=Xe(r.remotes?.[0]?.type),d=Ye(r.$schema),a=n?"io.modelcontextprotocol.registry/official":t.publisher||o?.scopeName||"Unknown",l=et(r.repository),m=t.icon||t.image||t.logo||r.icons?.[0]?.src||l||null,p=t.name||t.title||t.server?.title||"Unnamed Item";return{name:tt(p),description:t.description||t.summary||t.server?.description||"",icon:m,verified:t.verified||o?.verified,publisher:a,version:r.version||null,websiteUrl:r.websiteUrl||null,repository:r.repository||null,schemaVersion:d??null,connectionType:i,connectionUrl:null,remoteUrl:null,tools:t.tools||r.tools||e?.tools||[],models:t.models||r.models||e?.models||[],emails:t.emails||r.emails||e?.emails||[],analytics:t.analytics||r.analytics||e?.analytics,cdn:t.cdn||r.cdn||e?.cdn}}class xt extends q.Component{state={hasError:!1,error:null};static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,o){console.error("Store app detail error:",e,o)}render(){return this.state.hasError?s.jsx(rt,{error:this.state.error||new Error("Unknown error"),onBack:this.props.onBack}):this.props.children}}function ht(){const t=_.c(70),{org:e}=Ne(),o=ve();let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n={strict:!1},t[0]=n):n=t[0];const{appName:r}=ke(n);let i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i={strict:!1},t[1]=i):i=t[1];const{registryId:d,serverName:a}=Se(i),[l,m]=q.useState("readme"),p=Ae(),x=De(),{data:f}=Ie.useSession(),h=He(x),g=d||h[0]?.id||"",b=Ee(g),y=Je(b?.tools),N=b?.tools&&b.tools.find(yt)?.name||"",w=b?.tools&&b.tools.find(jt)?.name||"",k=Me(g),S=!!a;let C,I;S?(C=N||w,I={name:a}):(C=y,I={});const{data:u}=We({toolCaller:k,toolName:C,toolInputParams:I,scope:g});let E=[],L=[],pe=null;if(u){if(Array.isArray(u))E=u;else if(typeof u=="object"&&u!==null)if("totalCount"in u&&typeof u.totalCount=="number"&&(pe=u.totalCount),"item"in u&&u.item){const c=u.item,T=c.id||"",M=c.server,U=c._meta;let D;t[2]!==c.title||t[3]!==T||t[4]!==M||t[5]!==U?(D=[{id:T,title:c.title,server:M,_meta:U}],t[2]=c.title,t[3]=T,t[4]=M,t[5]=U,t[6]=D):D=t[6],E=D}else{let c;"versions"in u&&Array.isArray(u.versions)?c="versions":"servers"in u&&Array.isArray(u.servers)?c="servers":c=Object.keys(u).find(T=>Array.isArray(u[T])),c&&(E=u[c],(c==="versions"||C?.includes("VERSIONS"))&&(L=E))}}let X;t[7]!==r?(X=c=>{const T=c.name||c.title||c.server.title||"";return qe(T)===r},t[7]=r,t[8]=X):X=t[8];let j=E.find(X);if(!j&&a){let c;t[9]!==a?(c=T=>T.server.name===a||T.name===a||T.title===a,t[9]=a,t[10]=c):c=t[10],j=E.find(c)}const v=j?pt(j):null,le=(v?.tools?.length||0)>0,ae=j?.server?.remotes?.[0]?.url||null,J=!le&&!!ae,Q=Ke({url:J?ae:""}),Y=J&&Q.state==="connecting";let ee;t[11]!==Q||t[12]!==J?(ee=J&&Q.state==="ready"?(Q.tools||[]).map(vt):[],t[11]=Q,t[12]=J,t[13]=ee):ee=t[13];const xe=ee,V=le?v?.tools||[]:xe,Ce=ft(x,v?.publisher),ce=v?ut(E,v.publisher,Ce,b??null,pe):{count:0},Te=v?.repository?Qe(v.repository):null,de=!!v?.repository&&!!Te;let $;t[14]!==de?($={id:"readme",label:"README",visible:de},t[14]=de,t[15]=$):$=t[15];const me=le||xe.length>0||Y&&!!ae;let P;t[16]!==V.length||t[17]!==me?(P={id:"tools",label:"Tools",count:V.length,visible:me},t[16]=V.length,t[17]=me,t[18]=P):P=t[18];let te;t[19]!==$||t[20]!==P?(te=[$,P].filter(bt),t[19]=$,t[20]=P,t[21]=te):te=t[21];const A=te;let se;t[22]!==l||t[23]!==A?(se=A.find(c=>c.id===l)?l:A.find(gt)?.id||A[0]?.id||"overview",t[22]=l,t[23]=A,t[24]=se):se=t[24];const fe=se;let oe;t[25]!==p||t[26]!==L||t[27]!==o||t[28]!==e||t[29]!==j||t[30]!==f?(oe=async c=>{const T=L[c??0]||j;if(!T||!e||!f?.user?.id)return;const M=Ze(T,e.id,f.user.id);if(!M.connection_url){he.error("This MCP Server cannot be connected: no connection URL available");return}try{const{id:U}=await p.create.mutateAsync(M);o({to:"/$org/mcps/$connectionId",params:{org:e.slug,connectionId:U}})}catch(U){const D=U;he.error(`Failed to connect MCP Server: ${D instanceof Error?D.message:String(D)}`)}},t[25]=p,t[26]=L,t[27]=o,t[28]=e,t[29]=j,t[30]=f,t[31]=oe):oe=t[31];const ue=oe;let re;t[32]!==o||t[33]!==e.slug?(re=()=>{o({to:"/$org/store",params:{org:e.slug}})},t[32]=o,t[33]=e.slug,t[34]=re):re=t[34];const R=re;if(!j){let c;return t[35]!==R?(c=s.jsx(nt,{onBack:R}),t[35]=R,t[36]=c):c=t[36],c}if(!v)return null;const z=(j?.server?.remotes?.length??0)>0;let B;t[37]!==R?(B=s.jsx(it,{onBack:R}),t[37]=R,t[38]=B):B=t[38];let G;t[39]!==z?(G=!z&&s.jsxs("div",{className:"mb-6 p-4 bg-amber-50 border border-amber-200 rounded-lg text-sm text-amber-900",children:[s.jsx(st,{size:16,className:"inline mr-2"}),"This MCP Server cannot be connected - no connection method available."]}),t[39]=z,t[40]=G):G=t[40];let F;t[41]!==L||t[42]!==j?(F=L.length>0?L:[j],t[41]=L,t[42]=j,t[43]=F):F=t[43];let O;t[44]!==p.create.isPending||t[45]!==z||t[46]!==v||t[47]!==ue||t[48]!==F?(O=s.jsx(lt,{data:v,itemVersions:F,onInstall:ue,canInstall:z,isInstalling:p.create.isPending}),t[44]=p.create.isPending,t[45]=z,t[46]=v,t[47]=ue,t[48]=F,t[49]=O):O=t[49];let H;t[50]!==v||t[51]!==ce||t[52]!==j?(H=s.jsx(ct,{data:v,publisherInfo:ce,selectedItem:j}),t[50]=v,t[51]=ce,t[52]=j,t[53]=H):H=t[53];let W;t[54]!==A||t[55]!==v||t[56]!==fe||t[57]!==V||t[58]!==Y?(W=s.jsx(dt,{data:v,availableTabs:A,effectiveActiveTabId:fe,effectiveTools:V,isLoadingTools:Y,onTabChange:m}),t[54]=A,t[55]=v,t[56]=fe,t[57]=V,t[58]=Y,t[59]=W):W=t[59];let K;t[60]!==H||t[61]!==W?(K=s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 min-h-[677px]",children:[H,W]}),t[60]=H,t[61]=W,t[62]=K):K=t[62];let Z;t[63]!==G||t[64]!==O||t[65]!==K?(Z=s.jsx("div",{className:"flex-1 overflow-y-auto h-full",children:s.jsx("div",{className:"h-full",children:s.jsxs("div",{className:"h-full",children:[G,O,K]})})}),t[63]=G,t[64]=O,t[65]=K,t[66]=Z):Z=t[66];let ne;return t[67]!==B||t[68]!==Z?(ne=s.jsxs("div",{className:"flex flex-col h-full border-l border-border",children:[B,Z]}),t[67]=B,t[68]=Z,t[69]=ne):ne=t[69],ne}function gt(t){return t.id==="readme"}function bt(t){return t.visible}function vt(t){return{name:t.name,description:t.description}}function jt(t){return t.name.endsWith("_GET")}function yt(t){return t.name.endsWith("_VERSIONS")}function os(){const t=_.c(6),{org:e}=Ne(),o=ve();let n;t[0]!==o||t[1]!==e.slug?(n=()=>{o({to:"/$org/store",params:{org:e.slug}})},t[0]=o,t[1]=e.slug,t[2]=n):n=t[2];const r=n;let i;t[3]===Symbol.for("react.memo_cache_sentinel")?(i=s.jsx(q.Suspense,{fallback:s.jsx(ot,{}),children:s.jsx(ht,{})}),t[3]=i):i=t[3];let d;return t[4]!==r?(d=s.jsx(xt,{onBack:r,children:i}),t[4]=r,t[5]=d):d=t[5],d}export{os as default};
|
|
1
|
+
import{r as q,c as _,j as s,f as ve,d as ke,b as Se,a as Ie,t as he}from"./index-Bct0X-7r.js";import{i as _e}from"./AlertCircle-BVeJaa8e.js";import{i as je}from"./Loading01-COnx3ZgN.js";import{B as ie}from"./button-DwabStBc.js";import{i as Le}from"./ArrowLeft-DIFvXA1o.js";import{I as ye,a as Ae,u as De,b as Ee,c as Me}from"./use-connection-DmNS8HuU.js";import{i as Ue}from"./CheckCircle-Rf04ZPr2.js";import{t as Ve}from"./ChevronDown-CRNbAv_Y.js";import{s as ge}from"./Plus-DF0BSUqr.js";import{b as $e,D as Pe,a as Re,c as ze}from"./dropdown-menu-D49UF2Ht.js";import{n as be}from"./LinkExternal01-DC2Eb6Fx.js";import{E as Be}from"./SearchMd-Dg5hjJMg.js";import{R as Ge,T as Fe,a as Oe}from"./resource-tabs-CzQaeRN8.js";import{a as He}from"./use-binding-D8RTw0Vg.js";import{u as We}from"./use-tool-call-BhdIf0c8.js";import{u as Ke}from"./use-mcp-UYOQv_cb.js";import{u as Ne}from"./tooltip-CfcC-Rew.js";import{e as Ze}from"./extract-connection-data-CGRDUci8.js";import{s as qe}from"./slugify-CEUa2lfQ.js";import{f as Je,e as Qe,b as Xe,c as Ye,g as et}from"./registry-utils-ulDDT0d8.js";import{e as tt}from"./app-name-gTETL9So.js";import{i as st}from"./InfoCircle-C6jLk19v.js";import"./utils-BrYcHRV_.js";import"./Grid01-Dz3rGiqv.js";import"./useQuery-noukwpLn.js";import"./File06-B7NBxeI_.js";import"./collection-display-button-Y2mhlw1Q.js";import"./collection-search-CuiMr39W.js";import"./input-B0bndeDO.js";import"./collection-table-wrapper-BbYDeeyt.js";import"./card-C5wlKI6U.js";import"./layout-Ba_82K5l.js";import"./badge-C2HbJbQt.js";import"./auth-Cb-IumFw.js";import"./generate-id-Dyweu44Y.js";const we=({size:t=24,color:e="currentColor",...o})=>q.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...o},q.createElement("path",{d:"m21 21-3.5-3.5m2.5-6a8.5 8.5 0 1 1-17 0 8.5 8.5 0 0 1 17 0Z"}));we.displayName="SearchLg";function ot(t){const e=_.c(3),{message:o}=t,n=o===void 0?"Loading app details...":o;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=s.jsx(je,{size:48,className:"animate-spin mb-4"}),e[0]=r):r=e[0];let i;return e[1]!==n?(i=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full",children:[r,s.jsx("p",{className:"text-sm text-muted-foreground",children:n})]}),e[1]=n,e[2]=i):i=e[2],i}function rt(t){const e=_.c(9),{error:o,onBack:n}=t,r=o instanceof Error?o.message:o;let i,d;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=s.jsx(_e,{size:48,className:"text-destructive mb-4"}),d=s.jsx("h3",{className:"text-lg font-medium mb-2",children:"Error loading app"}),e[0]=i,e[1]=d):(i=e[0],d=e[1]);let a;e[2]!==r?(a=s.jsx("p",{className:"text-muted-foreground max-w-md text-center",children:r}),e[2]=r,e[3]=a):a=e[3];let l;e[4]!==n?(l=s.jsx("button",{onClick:n,className:"mt-4 px-4 py-2 bg-primary text-primary-foreground rounded-lg hover:bg-primary/90 transition-colors",children:"Go Back"}),e[4]=n,e[5]=l):l=e[5];let m;return e[6]!==a||e[7]!==l?(m=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full",children:[i,d,a,l]}),e[6]=a,e[7]=l,e[8]=m):m=e[8],m}function nt(t){const e=_.c(5),{onBack:o}=t;let n,r,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(we,{size:48,className:"text-muted-foreground mb-4"}),r=s.jsx("h3",{className:"text-lg font-medium mb-2",children:"App not found"}),i=s.jsx("p",{className:"text-muted-foreground max-w-md text-center",children:"The app you're looking for doesn't exist in this store."}),e[0]=n,e[1]=r,e[2]=i):(n=e[0],r=e[1],i=e[2]);let d;return e[3]!==o?(d=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full",children:[n,r,i,s.jsx("button",{onClick:o,className:"mt-4 px-4 py-2 bg-primary text-primary-foreground rounded-lg hover:bg-primary/90 transition-colors",children:"Go Back to Store"})]}),e[3]=o,e[4]=d):d=e[4],d}function it(t){const e=_.c(3),{onBack:o}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(Le,{}),e[0]=n):n=e[0];let r;return e[1]!==o?(r=s.jsx("div",{className:"flex items-center h-12 border-b border-border shrink-0",children:s.jsx("div",{className:"flex h-full px-2 border-r items-center",children:s.jsx(ie,{variant:"ghost",size:"icon",className:"items-center size-8 text-muted-foreground",onClick:o,"aria-label":"Go back",children:n})})}),e[1]=o,e[2]=r):r=e[2],r}function lt(t){const e=_.c(25),{data:o,itemVersions:n,onInstall:r,canInstall:i,isInstalling:d}=t,a=i===void 0?!0:i,l=d===void 0?!1:d,[m,p]=q.useState(0);let x;e[0]!==r?(x=S=>{p(S),r(S)},e[0]=r,e[1]=x):x=e[1];const f=x;let h;e[2]!==o.icon||e[3]!==o.name?(h=s.jsx(ye,{icon:o.icon,name:o.name,size:"lg",className:"shrink-0 shadow-sm"}),e[2]=o.icon,e[3]=o.name,e[4]=h):h=e[4];let g;e[5]!==o.name?(g=s.jsx("h1",{className:"text-3xl font-medium",children:o.name}),e[5]=o.name,e[6]=g):g=e[6];let b;e[7]!==o.verified?(b=o.verified&&s.jsx("img",{src:"/verified-badge.svg",alt:"Verified",className:"w-5 h-5 shrink-0"}),e[7]=o.verified,e[8]=b):b=e[8];let y;e[9]!==g||e[10]!==b?(y=s.jsx("div",{className:"flex-1 min-w-0",children:s.jsxs("div",{className:"flex items-center gap-2",children:[g,b]})}),e[9]=g,e[10]=b,e[11]=y):y=e[11];let N;e[12]!==a||e[13]!==f||e[14]!==l||e[15]!==n||e[16]!==r||e[17]!==m?(N=a?s.jsx("div",{className:"shrink-0",children:n.length>1?s.jsxs("div",{className:"flex",children:[s.jsxs(ie,{variant:"brand",onClick:()=>f(0),disabled:l,className:"shrink-0 rounded-r-none cursor-pointer",children:[s.jsx(ge,{size:20}),l?"Connecting...":"Connect MCP Server"]}),s.jsxs($e,{children:[s.jsx(Pe,{asChild:!0,children:s.jsx(ie,{variant:"brand",disabled:l,className:"shrink-0 rounded-l-none px-2 border-l-2 border-l-white/50 cursor-pointer",children:s.jsx(Ve,{size:20})})}),s.jsx(Re,{align:"end",className:"w-56 max-h-[300px] overflow-y-auto",children:n.map((S,C)=>{const I=S._meta?.["io.modelcontextprotocol.registry/official"];return s.jsx(ze,{onClick:()=>f(C),disabled:l,className:"cursor-pointer",children:s.jsxs("div",{className:"flex items-center justify-between gap-2 w-full",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"font-medium text-sm",children:["v",S.server?.version||"unknown"]}),I?.isLatest&&s.jsx("div",{className:"text-xs text-muted-foreground/50 font-semibold",children:"LATEST"})]}),C===m&&s.jsx(Ue,{size:16,className:"text-muted-foreground shrink-0"})]})},C)})})]})]}):s.jsxs(ie,{variant:"brand",onClick:()=>r(),disabled:n.length===0||l,className:"shrink-0",children:[s.jsx(ge,{size:20}),l?"Connecting...":"Connect MCP Server"]})}):s.jsx("div",{className:"shrink-0 px-4 py-2 text-sm text-muted-foreground bg-muted rounded-lg",children:"Cannot be connected"}),e[12]=a,e[13]=f,e[14]=l,e[15]=n,e[16]=r,e[17]=m,e[18]=N):N=e[18];let w;e[19]!==y||e[20]!==N?(w=s.jsxs("div",{className:"flex-1 min-w-0 flex items-center justify-between",children:[y,N]}),e[19]=y,e[20]=N,e[21]=w):w=e[21];let k;return e[22]!==h||e[23]!==w?(k=s.jsxs("div",{className:"flex items-center gap-4 py-8 px-5 border-b border-border",children:[h,w]}),e[22]=h,e[23]=w,e[24]=k):k=e[24],k}function at(t){if(!t)return"—";try{const e=new Date(t);return isNaN(e.getTime())?"—":e.toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"})}catch{return"—"}}function ct(t){const e=_.c(45),{data:o,publisherInfo:n,selectedItem:r}=t;let i;e[0]!==o.description?(i=o.description&&s.jsxs("div",{className:"px-5 pb-5 border-b border-border",children:[s.jsx("h2",{className:"text-base font-medium mb-3",children:"Overview"}),s.jsx("p",{className:"text-muted-foreground text-sm leading-relaxed",children:o.description})]}),e[0]=o.description,e[1]=i):i=e[1];const d=o.publisher==="io.modelcontextprotocol.registry/official"?"Official Registry":o.publisher;let a;e[2]!==n.logo||e[3]!==d?(a=s.jsx(ye,{icon:n.logo,name:d,size:"sm",className:"shrink-0 shadow-sm"}),e[2]=n.logo,e[3]=d,e[4]=a):a=e[4];let l;e[5]!==o.publisher?(l=o.publisher==="io.modelcontextprotocol.registry/official"?"Official Registry":o.publisher.charAt(0).toUpperCase()+o.publisher.slice(1),e[5]=o.publisher,e[6]=l):l=e[6];let m;e[7]!==l?(m=s.jsx("div",{className:"font-medium",children:l}),e[7]=l,e[8]=m):m=e[8];let p;e[9]!==n.count?(p=n.count>0?s.jsxs(s.Fragment,{children:[s.jsx("img",{src:"/globe.svg",alt:"globe",className:"w-3 h-3"}),s.jsxs("span",{children:[n.count," ",n.count===1?"published app":"published apps"]})]}):"Publisher",e[9]=n.count,e[10]=p):p=e[10];let x;e[11]!==p?(x=s.jsx("div",{className:"text-xs text-muted-foreground flex items-center gap-1",children:p}),e[11]=p,e[12]=x):x=e[12];let f;e[13]!==m||e[14]!==x?(f=s.jsxs("div",{children:[m,x]}),e[13]=m,e[14]=x,e[15]=f):f=e[15];let h;e[16]!==a||e[17]!==f?(h=s.jsx("div",{className:"px-5 border-b border-border",children:s.jsxs("div",{className:"flex items-center gap-3 py-5",children:[a,f]})}),e[16]=a,e[17]=f,e[18]=h):h=e[18];let g;e[19]!==o.version?(g=o.version&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Version"}),s.jsxs("span",{className:"text-muted-foreground uppercase text-xs",children:["v",o.version]})]}),e[19]=o.version,e[20]=g):g=e[20];let b;e[21]!==o.connectionType?(b=o.connectionType&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Connection Type"}),s.jsx("span",{className:"text-muted-foreground uppercase text-xs",children:o.connectionType})]}),e[21]=o.connectionType,e[22]=b):b=e[22];let y;e[23]!==o.schemaVersion?(y=o.schemaVersion&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Schema Version"}),s.jsx("span",{className:"text-muted-foreground text-xs",children:o.schemaVersion})]}),e[23]=o.schemaVersion,e[24]=y):y=e[24];let N;e[25]!==o.websiteUrl?(N=o.websiteUrl&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Website"}),s.jsxs("a",{href:o.websiteUrl,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:underline flex items-center gap-1 text-xs",children:[s.jsx("span",{children:"Visit"}),s.jsx(be,{size:14})]})]}),e[25]=o.websiteUrl,e[26]=N):N=e[26];let w;e[27]!==o.repository?(w=o.repository?.url&&s.jsxs("div",{className:"flex justify-between items-center text-sm",children:[s.jsx("span",{className:"text-foreground text-sm",children:"Source"}),s.jsxs("a",{href:o.repository.url,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:underline flex items-center gap-1 text-xs",children:[s.jsx("span",{children:"GitHub"}),s.jsx(be,{size:14})]})]}),e[27]=o.repository,e[28]=w):w=e[28];let k;e[29]!==g||e[30]!==b||e[31]!==y||e[32]!==N||e[33]!==w?(k=s.jsxs("div",{className:"px-5 py-5 border-b border-border space-y-4",children:[g,b,y,N,w]}),e[29]=g,e[30]=b,e[31]=y,e[32]=N,e[33]=w,e[34]=k):k=e[34];let S;e[35]===Symbol.for("react.memo_cache_sentinel")?(S=s.jsx("span",{className:"text-foreground text-sm",children:"Last Updated"}),e[35]=S):S=e[35];let C;e[36]!==r.updated_at?(C=at(r.updated_at),e[36]=r.updated_at,e[37]=C):C=e[37];let I;e[38]!==C?(I=s.jsxs("div",{className:"px-5 py-5 text-sm flex justify-between items-center border-b border-border",children:[S,s.jsx("span",{className:"text-muted-foreground uppercase text-xs",children:C})]}),e[38]=C,e[39]=I):I=e[39];let u;return e[40]!==i||e[41]!==k||e[42]!==I||e[43]!==h?(u=s.jsxs("div",{className:"lg:col-span-1 flex flex-col pt-5",children:[i,h,k,I]}),e[40]=i,e[41]=k,e[42]=I,e[43]=h,e[44]=u):u=e[44],u}function dt(t){const e=_.c(18),{data:o,availableTabs:n,effectiveActiveTabId:r,effectiveTools:i,isLoadingTools:d,onTabChange:a}=t,l=d===void 0?!1:d;let m;e[0]!==i?(m=i.map(mt),e[0]=i,e[1]=m):m=e[1];const p=m;let x;e[2]!==n||e[3]!==r||e[4]!==a?(x=n.length>0&&s.jsx("div",{className:"px-4 py-2 border-b border-border bg-background",children:s.jsx(Ge,{tabs:n,activeTab:r,onTabChange:a})}),e[2]=n,e[3]=r,e[4]=a,e[5]=x):x=e[5];let f;e[6]!==r||e[7]!==i.length||e[8]!==l||e[9]!==p?(f=r==="tools"&&s.jsx("div",{className:"flex flex-col flex-1",children:l?s.jsxs("div",{className:"flex items-center justify-center p-8",children:[s.jsx(je,{size:24,className:"animate-spin"}),s.jsx("span",{className:"ml-2 text-sm text-muted-foreground",children:"Loading tools..."})]}):i.length>0?s.jsx(Fe,{tools:p,showToolbar:!1,emptyMessage:"This app doesn't have any tools."}):s.jsx(Be,{image:null,title:"No tools available",description:"This app doesn't have any tools."})}),e[6]=r,e[7]=i.length,e[8]=l,e[9]=p,e[10]=f):f=e[10];let h;e[11]!==o?.repository||e[12]!==r?(h=r==="readme"&&s.jsx("div",{className:"flex-1 overflow-y-auto bg-background",children:s.jsx(Oe,{repository:o?.repository})}),e[11]=o?.repository,e[12]=r,e[13]=h):h=e[13];let g;return e[14]!==x||e[15]!==f||e[16]!==h?(g=s.jsxs("div",{className:"lg:col-span-2 flex flex-col border-l border-border",children:[x,f,h]}),e[14]=x,e[15]=f,e[16]=h,e[17]=g):g=e[17],g}function mt(t){const e=t;return{name:e.name||"",description:e.description||void 0}}function ft(t,e){if(!t||!e)return;const o=e.toLowerCase();return t.find(n=>n.app_name?.toLowerCase()===o||n.app_id?.toLowerCase()===o||n.title.toLowerCase()===o)||t.find(n=>n.title.toLowerCase().includes(o))}function ut(t,e,o,n,r){if(!e||e==="Unknown")return{count:0};if(e==="io.modelcontextprotocol.registry/official")return{logo:n?.icon||void 0,count:r??t.length};const i=e.toLowerCase(),d=t.filter(l=>(l._meta?.["io.modelcontextprotocol.registry/official"]?"io.modelcontextprotocol.registry/official":l.publisher||l._meta?.["mcp.mesh"]?.scopeName||"Unknown").toLowerCase()===i);return{logo:o?.icon||d[0]?.publisher_logo||d[0]?.icon||void 0,count:d.length}}function pt(t){const e=t.server._meta?.["mcp.mesh/publisher-provided"],o=t._meta?.["mcp.mesh"],n=t._meta?.["io.modelcontextprotocol.registry/official"],r=t.server,i=Xe(r.remotes?.[0]?.type),d=Ye(r.$schema),a=n?"io.modelcontextprotocol.registry/official":t.publisher||o?.scopeName||"Unknown",l=et(r.repository),m=t.icon||t.image||t.logo||r.icons?.[0]?.src||l||null,p=t.name||t.title||t.server?.title||"Unnamed Item";return{name:tt(p),description:t.description||t.summary||t.server?.description||"",icon:m,verified:t.verified||o?.verified,publisher:a,version:r.version||null,websiteUrl:r.websiteUrl||null,repository:r.repository||null,schemaVersion:d??null,connectionType:i,connectionUrl:null,remoteUrl:null,tools:t.tools||r.tools||e?.tools||[],models:t.models||r.models||e?.models||[],emails:t.emails||r.emails||e?.emails||[],analytics:t.analytics||r.analytics||e?.analytics,cdn:t.cdn||r.cdn||e?.cdn}}class xt extends q.Component{state={hasError:!1,error:null};static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,o){console.error("Store app detail error:",e,o)}render(){return this.state.hasError?s.jsx(rt,{error:this.state.error||new Error("Unknown error"),onBack:this.props.onBack}):this.props.children}}function ht(){const t=_.c(70),{org:e}=Ne(),o=ve();let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n={strict:!1},t[0]=n):n=t[0];const{appName:r}=ke(n);let i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i={strict:!1},t[1]=i):i=t[1];const{registryId:d,serverName:a}=Se(i),[l,m]=q.useState("readme"),p=Ae(),x=De(),{data:f}=Ie.useSession(),h=He(x),g=d||h[0]?.id||"",b=Ee(g),y=Je(b?.tools),N=b?.tools&&b.tools.find(yt)?.name||"",w=b?.tools&&b.tools.find(jt)?.name||"",k=Me(g),S=!!a;let C,I;S?(C=N||w,I={name:a}):(C=y,I={});const{data:u}=We({toolCaller:k,toolName:C,toolInputParams:I,scope:g});let E=[],L=[],pe=null;if(u){if(Array.isArray(u))E=u;else if(typeof u=="object"&&u!==null)if("totalCount"in u&&typeof u.totalCount=="number"&&(pe=u.totalCount),"item"in u&&u.item){const c=u.item,T=c.id||"",M=c.server,U=c._meta;let D;t[2]!==c.title||t[3]!==T||t[4]!==M||t[5]!==U?(D=[{id:T,title:c.title,server:M,_meta:U}],t[2]=c.title,t[3]=T,t[4]=M,t[5]=U,t[6]=D):D=t[6],E=D}else{let c;"versions"in u&&Array.isArray(u.versions)?c="versions":"servers"in u&&Array.isArray(u.servers)?c="servers":c=Object.keys(u).find(T=>Array.isArray(u[T])),c&&(E=u[c],(c==="versions"||C?.includes("VERSIONS"))&&(L=E))}}let X;t[7]!==r?(X=c=>{const T=c.name||c.title||c.server.title||"";return qe(T)===r},t[7]=r,t[8]=X):X=t[8];let j=E.find(X);if(!j&&a){let c;t[9]!==a?(c=T=>T.server.name===a||T.name===a||T.title===a,t[9]=a,t[10]=c):c=t[10],j=E.find(c)}const v=j?pt(j):null,le=(v?.tools?.length||0)>0,ae=j?.server?.remotes?.[0]?.url||null,J=!le&&!!ae,Q=Ke({url:J?ae:""}),Y=J&&Q.state==="connecting";let ee;t[11]!==Q||t[12]!==J?(ee=J&&Q.state==="ready"?(Q.tools||[]).map(vt):[],t[11]=Q,t[12]=J,t[13]=ee):ee=t[13];const xe=ee,V=le?v?.tools||[]:xe,Ce=ft(x,v?.publisher),ce=v?ut(E,v.publisher,Ce,b??null,pe):{count:0},Te=v?.repository?Qe(v.repository):null,de=!!v?.repository&&!!Te;let $;t[14]!==de?($={id:"readme",label:"README",visible:de},t[14]=de,t[15]=$):$=t[15];const me=le||xe.length>0||Y&&!!ae;let P;t[16]!==V.length||t[17]!==me?(P={id:"tools",label:"Tools",count:V.length,visible:me},t[16]=V.length,t[17]=me,t[18]=P):P=t[18];let te;t[19]!==$||t[20]!==P?(te=[$,P].filter(bt),t[19]=$,t[20]=P,t[21]=te):te=t[21];const A=te;let se;t[22]!==l||t[23]!==A?(se=A.find(c=>c.id===l)?l:A.find(gt)?.id||A[0]?.id||"overview",t[22]=l,t[23]=A,t[24]=se):se=t[24];const fe=se;let oe;t[25]!==p||t[26]!==L||t[27]!==o||t[28]!==e||t[29]!==j||t[30]!==f?(oe=async c=>{const T=L[c??0]||j;if(!T||!e||!f?.user?.id)return;const M=Ze(T,e.id,f.user.id);if(!M.connection_url){he.error("This MCP Server cannot be connected: no connection URL available");return}try{const{id:U}=await p.create.mutateAsync(M);o({to:"/$org/mcps/$connectionId",params:{org:e.slug,connectionId:U}})}catch(U){const D=U;he.error(`Failed to connect MCP Server: ${D instanceof Error?D.message:String(D)}`)}},t[25]=p,t[26]=L,t[27]=o,t[28]=e,t[29]=j,t[30]=f,t[31]=oe):oe=t[31];const ue=oe;let re;t[32]!==o||t[33]!==e.slug?(re=()=>{o({to:"/$org/store",params:{org:e.slug}})},t[32]=o,t[33]=e.slug,t[34]=re):re=t[34];const R=re;if(!j){let c;return t[35]!==R?(c=s.jsx(nt,{onBack:R}),t[35]=R,t[36]=c):c=t[36],c}if(!v)return null;const z=(j?.server?.remotes?.length??0)>0;let B;t[37]!==R?(B=s.jsx(it,{onBack:R}),t[37]=R,t[38]=B):B=t[38];let G;t[39]!==z?(G=!z&&s.jsxs("div",{className:"mb-6 p-4 bg-amber-50 border border-amber-200 rounded-lg text-sm text-amber-900",children:[s.jsx(st,{size:16,className:"inline mr-2"}),"This MCP Server cannot be connected - no connection method available."]}),t[39]=z,t[40]=G):G=t[40];let F;t[41]!==L||t[42]!==j?(F=L.length>0?L:[j],t[41]=L,t[42]=j,t[43]=F):F=t[43];let O;t[44]!==p.create.isPending||t[45]!==z||t[46]!==v||t[47]!==ue||t[48]!==F?(O=s.jsx(lt,{data:v,itemVersions:F,onInstall:ue,canInstall:z,isInstalling:p.create.isPending}),t[44]=p.create.isPending,t[45]=z,t[46]=v,t[47]=ue,t[48]=F,t[49]=O):O=t[49];let H;t[50]!==v||t[51]!==ce||t[52]!==j?(H=s.jsx(ct,{data:v,publisherInfo:ce,selectedItem:j}),t[50]=v,t[51]=ce,t[52]=j,t[53]=H):H=t[53];let W;t[54]!==A||t[55]!==v||t[56]!==fe||t[57]!==V||t[58]!==Y?(W=s.jsx(dt,{data:v,availableTabs:A,effectiveActiveTabId:fe,effectiveTools:V,isLoadingTools:Y,onTabChange:m}),t[54]=A,t[55]=v,t[56]=fe,t[57]=V,t[58]=Y,t[59]=W):W=t[59];let K;t[60]!==H||t[61]!==W?(K=s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 min-h-[677px]",children:[H,W]}),t[60]=H,t[61]=W,t[62]=K):K=t[62];let Z;t[63]!==G||t[64]!==O||t[65]!==K?(Z=s.jsx("div",{className:"flex-1 overflow-y-auto h-full",children:s.jsx("div",{className:"h-full",children:s.jsxs("div",{className:"h-full",children:[G,O,K]})})}),t[63]=G,t[64]=O,t[65]=K,t[66]=Z):Z=t[66];let ne;return t[67]!==B||t[68]!==Z?(ne=s.jsxs("div",{className:"flex flex-col h-full border-l border-border",children:[B,Z]}),t[67]=B,t[68]=Z,t[69]=ne):ne=t[69],ne}function gt(t){return t.id==="readme"}function bt(t){return t.visible}function vt(t){return{name:t.name,description:t.description}}function jt(t){return t.name.endsWith("_GET")}function yt(t){return t.name.endsWith("_VERSIONS")}function os(){const t=_.c(6),{org:e}=Ne(),o=ve();let n;t[0]!==o||t[1]!==e.slug?(n=()=>{o({to:"/$org/store",params:{org:e.slug}})},t[0]=o,t[1]=e.slug,t[2]=n):n=t[2];const r=n;let i;t[3]===Symbol.for("react.memo_cache_sentinel")?(i=s.jsx(q.Suspense,{fallback:s.jsx(ot,{}),children:s.jsx(ht,{})}),t[3]=i):i=t[3];let d;return t[4]!==r?(d=s.jsx(xt,{onBack:r,children:i}),t[4]=r,t[5]=d):d=t[5],d}export{os as default};
|