@decocms/mesh 1.0.0-alpha.1 → 1.0.0-alpha.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/dist/README.md +288 -0
  2. package/dist/client/assets/{alert-dialog-DsYjmjQa.js → alert-dialog-Hgs2tcw0.js} +3 -3
  3. package/dist/client/assets/{auth-dQSMuI_r.js → auth-Dfo88onv.js} +1 -1
  4. package/dist/client/assets/{auth-catchall-vTieIyKZ.js → auth-catchall-pzDMkYZ_.js} +1 -1
  5. package/dist/client/assets/{avatar-DFNVHH7B.js → avatar-Dw1KHXJf.js} +1 -1
  6. package/dist/client/assets/{badge-D0svJbIE.js → badge-C29ypR-2.js} +1 -1
  7. package/dist/client/assets/{button-CB7Gt-Ba.js → button-Cv1rgJOF.js} +1 -1
  8. package/dist/client/assets/{card-BZePxfHz.js → card-BggFBtGd.js} +1 -1
  9. package/dist/client/assets/{checkbox-CJwRElzS.js → checkbox-Ay9B68Cb.js} +1 -1
  10. package/dist/client/assets/{circle-alert-FONBIc_T.js → circle-alert-C3-3ZyHM.js} +1 -1
  11. package/dist/client/assets/collection-detail-BihTkJuQ.js +1 -0
  12. package/dist/client/assets/{collection-display-button-Ccjj22Xn.js → collection-display-button-grM851Xd.js} +1 -1
  13. package/dist/client/assets/{collection-header-C3vTyWNy.js → collection-header-DsMf-88h.js} +1 -1
  14. package/dist/client/assets/{collection-page-BplXISpO.js → collection-page-C6Lt30BH.js} +1 -1
  15. package/dist/client/assets/{collection-search-BpPEPb0j.js → collection-search-CXcLRFBk.js} +1 -1
  16. package/dist/client/assets/{collection-table-wrapper-CJdrG443.js → collection-table-wrapper-DIAaiM6K.js} +1 -1
  17. package/dist/client/assets/{connection-card-B7VMSnFz.js → connection-card-BSv7-QCW.js} +1 -1
  18. package/dist/client/assets/connection-detail-B1R8nv6U.js +1 -0
  19. package/dist/client/assets/connections-hz-ahAKO.js +1 -0
  20. package/dist/client/assets/{create-organization-dialog-Mq1L8DSD.js → create-organization-dialog-Bvkdjwsj.js} +1 -1
  21. package/dist/client/assets/dialog-rRH3MQkl.js +1 -0
  22. package/dist/client/assets/{dropdown-menu-zoKN8fKM.js → dropdown-menu-dUgjswGX.js} +1 -1
  23. package/dist/client/assets/{empty-state-BCgOYCyG.js → empty-state-CCq1QaCi.js} +1 -1
  24. package/dist/client/assets/{error-boundary-L4NxoU-J.js → error-boundary-COxhsLlB.js} +1 -1
  25. package/dist/client/assets/{extract-connection-data-mJfi2GDs.js → extract-connection-data-DyKjnzFA.js} +1 -1
  26. package/dist/client/assets/{form-BmhZau8F.js → form-xpLXXjk9.js} +1 -1
  27. package/dist/client/assets/gateway-detail-DIqZF9Yz.js +1 -0
  28. package/dist/client/assets/gateways-BEpD9ssC.js +1 -0
  29. package/dist/client/assets/{home-RT_Ssleq.js → home-BP87nVNG.js} +1 -1
  30. package/dist/client/assets/{icon-Zm7eEeKG.js → icon-KZI-tyY2.js} +1 -1
  31. package/dist/client/assets/{index-CBL6DTCM.js → index-3kbMatbv.js} +15 -15
  32. package/dist/client/assets/{index-CoeZDSQf.js → index-B6JW-QRO.js} +1 -1
  33. package/dist/client/assets/{index-BAut7b_p.js → index-C3w_QZu6.js} +1 -1
  34. package/dist/client/assets/index-CMNfZDn2.css +1 -0
  35. package/dist/client/assets/index-kuMaGV9U.js +118 -0
  36. package/dist/client/assets/{input-DWY0hRYC.js → input-C0U94pom.js} +1 -1
  37. package/dist/client/assets/integration-icon-Dv-2D552.js +2 -0
  38. package/dist/client/assets/{layout-C75gYFRR.js → layout-B4csW0zk.js} +1 -1
  39. package/dist/client/assets/{lazy-highlighter-V_ETf5s5.js → lazy-highlighter-BeM-KnKF.js} +1 -1
  40. package/dist/client/assets/{localstorage-keys-CdMYd__a.js → localstorage-keys-BY-fTuiw.js} +1 -1
  41. package/dist/client/assets/login-Dl_POp8A.js +1 -0
  42. package/dist/client/assets/mcp-oauth-C8lkjJJ-.js +1 -0
  43. package/dist/client/assets/members-sRtGjt4B.js +1 -0
  44. package/dist/client/assets/{monitoring-stats-row-DiSEgwHP.js → monitoring-stats-row-Bmw8lKAo.js} +9 -9
  45. package/dist/client/assets/monitoring-wqV_ck_J.js +1 -0
  46. package/dist/client/assets/oauth-callback-D4bjzxVG.js +1 -0
  47. package/dist/client/assets/page-Dm4c28Rt.js +1 -0
  48. package/dist/client/assets/{popover-B7GJHYd2.js → popover-BLX5hifQ.js} +1 -1
  49. package/dist/client/assets/{prism-BsII3tZL.js → prism-a2E9dRRh.js} +1 -1
  50. package/dist/client/assets/{resource-tabs-Djqhz6PB.js → resource-tabs-C2-m37Rp.js} +1 -1
  51. package/dist/client/assets/{schema-CJRWBwzd.js → schema-DLIeWQJ0.js} +1 -1
  52. package/dist/client/assets/{select-CrueAR2N.js → select-BFyzpZOm.js} +1 -1
  53. package/dist/client/assets/settings-KJAP4FWc.js +1 -0
  54. package/dist/client/assets/{shell-layout-CwcEMEv3.js → shell-layout-DqWy6R9v.js} +4 -4
  55. package/dist/client/assets/{spinner-R42f7AVH.js → spinner-CYHX4tj_.js} +1 -1
  56. package/dist/client/assets/store-DoIp_x0L.js +1 -0
  57. package/dist/client/assets/store-app-detail-CkhxmJHm.js +1 -0
  58. package/dist/client/assets/switch-B0GAK0hk.js +1 -0
  59. package/dist/client/assets/{textarea-CAmjTm6l.js → textarea-7TwZjOJN.js} +1 -1
  60. package/dist/client/assets/tool-set-selector-BxJYXzYX.js +1 -0
  61. package/dist/client/assets/{tooltip-BLbXpJcn.js → tooltip-CyTpNpEt.js} +1 -1
  62. package/dist/client/assets/{upload-CG7PZ6WF.js → upload-CedwcKCT.js} +1 -1
  63. package/dist/client/assets/{use-binding-CeSgmpzj.js → use-binding-Dlf98XSv.js} +2 -2
  64. package/dist/client/assets/use-gateway-C6ADI4VP.js +1 -0
  65. package/dist/client/assets/{use-list-state-BTIryg2o.js → use-list-state-Cu8fsSjR.js} +1 -1
  66. package/dist/client/assets/use-mcp-Z1amXXTK.js +1 -0
  67. package/dist/client/assets/use-members-dDzJ30ii.js +1 -0
  68. package/dist/client/assets/{use-mobile-BPQzOCZP.js → use-mobile-Ct-F04sM.js} +1 -1
  69. package/dist/client/assets/use-organization-settings-D7E3skEu.js +1 -0
  70. package/dist/client/assets/{use-tool-call-BsMTRGjQ.js → use-tool-call-DSlbFKjt.js} +1 -1
  71. package/dist/client/assets/useQuery-DJ7WNdWe.js +1 -0
  72. package/dist/client/assets/utils-dJ2GyoL3.js +1 -0
  73. package/dist/client/index.html +2 -2
  74. package/dist/server/cli.js +169 -169
  75. package/dist/server/migrate.js +204 -204
  76. package/dist/server/server.js +232 -232
  77. package/package.json +18 -19
  78. package/dist/client/assets/chunk-2RRQPJJO-DGhxLrrR.js +0 -1
  79. package/dist/client/assets/collection-detail-CFf2hZjF.js +0 -1
  80. package/dist/client/assets/connection-detail-DGFMHZQW.js +0 -1
  81. package/dist/client/assets/connections-BFxMYtuo.js +0 -1
  82. package/dist/client/assets/dialog-DhrfZsqb.js +0 -1
  83. package/dist/client/assets/gateway-detail-BEN_sL0j.js +0 -1
  84. package/dist/client/assets/gateways-DPfP8fjF.js +0 -1
  85. package/dist/client/assets/index-CfNAXm02.js +0 -1
  86. package/dist/client/assets/index-VCe1FY3E.js +0 -118
  87. package/dist/client/assets/index-feMggVqN.css +0 -1
  88. package/dist/client/assets/integration-icon-Dgf9Pzxc.js +0 -1
  89. package/dist/client/assets/login-CaI2gNh0.js +0 -1
  90. package/dist/client/assets/members-BD990Z5F.js +0 -1
  91. package/dist/client/assets/monitoring-s9rrPP3V.js +0 -1
  92. package/dist/client/assets/oauth-callback-ChC_4XSg.js +0 -10
  93. package/dist/client/assets/page-BauA0SPJ.js +0 -1
  94. package/dist/client/assets/settings-85tu13fN.js +0 -1
  95. package/dist/client/assets/store-app-detail-D89e4NIX.js +0 -1
  96. package/dist/client/assets/store-zixro3Vs.js +0 -1
  97. package/dist/client/assets/tool-set-selector-BfScgRcK.js +0 -1
  98. package/dist/client/assets/use-connection-D5nZyekX.js +0 -2
  99. package/dist/client/assets/use-gateway-pRk3-ua4.js +0 -1
  100. package/dist/client/assets/use-members-OyBpbFn0.js +0 -1
  101. package/dist/client/assets/use-organization-settings-CMP1q4u_.js +0 -1
  102. package/dist/client/assets/useQuery-DEUZMq4A.js +0 -1
  103. package/dist/client/assets/utils-B-QWwgyW.js +0 -1
@@ -1 +1 @@
1
- import{c as s,j as a}from"./index-VCe1FY3E.js";import{c as d}from"./utils-B-QWwgyW.js";function p(l){const e=s.c(10);let i,r,t;e[0]!==l?({className:i,type:t,...r}=l,e[0]=l,e[1]=i,e[2]=r,e[3]=t):(i=e[1],r=e[2],t=e[3]);let n;e[4]!==i?(n=d("file:text-foreground text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-10 w-full min-w-0 rounded-lg border bg-transparent px-3 py-1 text-base transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] bg-background","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i),e[4]=i,e[5]=n):n=e[5];let o;return e[6]!==r||e[7]!==n||e[8]!==t?(o=a.jsx("input",{type:t,"data-slot":"input",className:n,...r}),e[6]=r,e[7]=n,e[8]=t,e[9]=o):o=e[9],o}export{p as I};
1
+ import{c as s,j as a}from"./index-kuMaGV9U.js";import{c as d}from"./utils-dJ2GyoL3.js";function p(l){const e=s.c(10);let i,r,t;e[0]!==l?({className:i,type:t,...r}=l,e[0]=l,e[1]=i,e[2]=r,e[3]=t):(i=e[1],r=e[2],t=e[3]);let n;e[4]!==i?(n=d("file:text-foreground text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-10 w-full min-w-0 rounded-lg border bg-transparent px-3 py-1 text-base transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] bg-background","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i),e[4]=i,e[5]=n):n=e[5];let o;return e[6]!==r||e[7]!==n||e[8]!==t?(o=a.jsx("input",{type:t,"data-slot":"input",className:n,...r}),e[6]=r,e[7]=n,e[8]=t,e[9]=o):o=e[9],o}export{p as I};
@@ -0,0 +1,2 @@
1
+ import{c as w,a1 as Q,a3 as P,a2 as _,a6 as v,r as k,j as I}from"./index-kuMaGV9U.js";import{u as N}from"./tooltip-CyTpNpEt.js";import{u as L}from"./button-Cv1rgJOF.js";import{c as F}from"./utils-dJ2GyoL3.js";import{I as z}from"./icon-KZI-tyY2.js";const U="UNKNOWN_CONNECTION_ID",A=async n=>{const r=(await n.text()).split(`
2
+ `).find(t=>t.startsWith("data: "));if(!r)throw new Error("No data received from the server");return JSON.parse(r.replace("data: ",""))};function $(n){if(n===U)return(async()=>{});const s=n?`/mcp/${n}`:"/mcp";return async(r,e)=>{const t=await fetch(s,{method:"POST",body:JSON.stringify({jsonrpc:"2.0",id:1,method:"tools/call",params:{name:r,arguments:e}}),headers:{"Content-Type":"application/json",Accept:"application/json, text/event-stream"},credentials:"include"});if(!t.ok)throw new Error(`HTTP error! status: ${t.status}`);const i=t.headers.get("Content-Type")==="application/json"?await t.json():await A(t);if(i.result?.isError)throw new Error(i.result.content?.[0]?.text||"Tool call failed");return i.result?.structuredContent||i.result}}function D(n,s,r){const e=[];if(n?.trim()){const t=n.trim(),i=r.map(u=>({field:[String(u)],operator:"contains",value:t}));i.length===1&&i[0]?e.push(i[0]):i.length>1&&e.push({operator:"or",conditions:i})}if(s&&s.length>0)for(const t of s)e.push({field:[t.column],operator:"eq",value:t.value});if(e.length!==0)return e.length===1?e[0]:{operator:"and",conditions:e}}function W(n,s,r){const e=n??r,t=s??"asc";return[{field:[String(e)],direction:t}]}function J(n,s,r,e){const t=w.c(13);let i;t[0]!==s?(i=s.toUpperCase(),t[0]=s,t[1]=i):i=t[1];const o=`COLLECTION_${i}_GET`;let a;t[2]!==s||t[3]!==r||t[4]!==n?(a=_.collectionItem(n,s,r??""),t[2]=s,t[3]=r,t[4]=n,t[5]=a):a=t[5];let f;t[6]!==o||t[7]!==r||t[8]!==e?(f=async()=>r?await e(o,{id:r}):{item:null},t[6]=o,t[7]=r,t[8]=e,t[9]=f):f=t[9];let c;t[10]!==a||t[11]!==f?(c={queryKey:a,queryFn:f,staleTime:6e4},t[10]=a,t[11]=f,t[12]=c):c=t[12];const{data:l}=P(c);return l.item}function R(n,s,r,e){const t=w.c(20);let i,u,o,a,f,c;if(t[0]!==s||t[1]!==n||t[2]!==e){const g=e===void 0?{}:e,{searchTerm:m,filters:T,sortKey:E,sortDirection:y,searchFields:p,defaultSortKey:O,pageSize:x}=g,b=p===void 0?["title","description"]:p,h=O===void 0?"updated_at":O;o=x===void 0?100:x;let C;t[9]!==s?(C=s.toUpperCase(),t[9]=s,t[10]=C):C=t[10],i=`COLLECTION_${C}_LIST`,c=D(m,T,b),u=W(E,y,h);const q=JSON.stringify({where:c,orderBy:u,limit:o});f=P,a=_.collectionList(n,s,q),t[0]=s,t[1]=n,t[2]=e,t[3]=i,t[4]=u,t[5]=o,t[6]=a,t[7]=f,t[8]=c}else i=t[3],u=t[4],o=t[5],a=t[6],f=t[7],c=t[8];let l;t[11]!==i||t[12]!==u||t[13]!==o||t[14]!==r||t[15]!==c?(l=async()=>{const g={...c&&{where:c},...u&&{orderBy:u},limit:o,offset:0};return await r(i,g)??[]},t[11]=i,t[12]=u,t[13]=o,t[14]=r,t[15]=c,t[16]=l):l=t[16];let d;t[17]!==a||t[18]!==l?(d={queryKey:a,queryFn:l},t[17]=a,t[18]=l,t[19]=d):d=t[19];const{data:S}=f(d);return S.items}function B(n,s,r){const e=w.c(36),t=Q();let i;e[0]!==s?(i=s.toUpperCase(),e[0]=s,e[1]=i):i=e[1];const u=i,o=`COLLECTION_${u}_CREATE`,a=`COLLECTION_${u}_UPDATE`,f=`COLLECTION_${u}_DELETE`;let c;e[2]!==o||e[3]!==r?(c=async h=>(await r(o,{data:h})).item,e[2]=o,e[3]=r,e[4]=c):c=e[4];let l;e[5]!==s||e[6]!==t||e[7]!==n?(l=()=>{t.invalidateQueries({queryKey:_.collectionListPrefix(n,s)}),t.invalidateQueries({queryKey:_.collectionListInfinitePrefix(n,s)}),v.success("Item created successfully")},e[5]=s,e[6]=t,e[7]=n,e[8]=l):l=e[8];let d;e[9]!==c||e[10]!==l?(d={mutationFn:c,onSuccess:l,onError:M},e[9]=c,e[10]=l,e[11]=d):d=e[11];const S=L(d);let g;e[12]!==r||e[13]!==a?(g=async h=>{const{id:C,data:j}=h;return(await r(a,{id:C,data:j})).item},e[12]=r,e[13]=a,e[14]=g):g=e[14];let m;e[15]!==s||e[16]!==t||e[17]!==n?(m=h=>{t.invalidateQueries({queryKey:_.collectionListPrefix(n,s)}),t.invalidateQueries({queryKey:_.collectionListInfinitePrefix(n,s)}),t.invalidateQueries({queryKey:_.collectionItem(n,s,h.id)}),v.success("Item updated successfully")},e[15]=s,e[16]=t,e[17]=n,e[18]=m):m=e[18];let T;e[19]!==g||e[20]!==m?(T={mutationFn:g,onSuccess:m,onError:H},e[19]=g,e[20]=m,e[21]=T):T=e[21];const E=L(T);let y;e[22]!==f||e[23]!==r?(y=async h=>(await r(f,{id:h})).item.id,e[22]=f,e[23]=r,e[24]=y):y=e[24];let p;e[25]!==s||e[26]!==t||e[27]!==n?(p=()=>{t.invalidateQueries({queryKey:_.collectionListPrefix(n,s)}),t.invalidateQueries({queryKey:_.collectionListInfinitePrefix(n,s)}),v.success("Item deleted successfully")},e[25]=s,e[26]=t,e[27]=n,e[28]=p):p=e[28];let O;e[29]!==y||e[30]!==p?(O={mutationFn:y,onSuccess:p,onError:G},e[29]=y,e[30]=p,e[31]=O):O=e[31];const x=L(O);let b;return e[32]!==S||e[33]!==x||e[34]!==E?(b={create:S,update:E,delete:x},e[32]=S,e[33]=x,e[34]=E,e[35]=b):b=e[35],b}function G(n){const s=n instanceof Error?n.message:String(n);v.error(`Failed to delete item: ${s}`)}function H(n){const s=n instanceof Error?n.message:String(n);v.error(`Failed to update item: ${s}`)}function M(n){const s=n instanceof Error?n.message:String(n);v.error(`Failed to create item: ${s}`)}function ee(n){const s=w.c(3);let r;s[0]!==n?(r=n===void 0?{}:n,s[0]=n,s[1]=r):r=s[1];const e=r,{org:t}=N();let i;s[2]===Symbol.for("react.memo_cache_sentinel")?(i=$(),s[2]=i):i=s[2];const u=i;return R(t.slug,"CONNECTIONS",u,e)}function te(n){const s=w.c(1),{org:r}=N();let e;s[0]===Symbol.for("react.memo_cache_sentinel")?(e=$(),s[0]=e):e=s[0];const t=e;return J(r.slug,"CONNECTIONS",n,t)}function se(){const n=w.c(1),{org:s}=N();let r;n[0]===Symbol.for("react.memo_cache_sentinel")?(r=$(),n[0]=r):r=n[0];const e=r;return B(s.slug,"CONNECTIONS",e)}function ne(n){const s=w.c(13),{icon:r,name:e,size:t,className:i,fallbackIcon:u}=n,o=t===void 0?"md":t,a=u===void 0?"extension":u,[f,c]=k.useState(!r);let l,d;if(s[0]!==i||s[1]!==a||s[2]!==r||s[3]!==f||s[4]!==e||s[5]!==o){d=Symbol.for("react.early_return_sentinel");e:{const S={xs:"h-6 w-6",sm:"h-8 w-8",md:"h-12 w-12",lg:"h-16 w-16"},g={xs:"min-w-6",sm:"min-w-8",md:"min-w-12",lg:"min-w-16"};let m;s[8]===Symbol.for("react.memo_cache_sentinel")?(m={xs:12,sm:16,md:24,lg:32},s[8]=m):m=s[8];const E=m[o];let y;if(s[9]!==a||s[10]!==E?(y=I.jsx(z,{name:a,size:E,className:"text-muted-foreground"}),s[9]=a,s[10]=E,s[11]=y):y=s[11],l=I.jsx("div",{className:F("rounded-lg flex items-center justify-center bg-muted border border-border shrink-0",S[o],g[o],i),children:y}),r&&!f){let p;s[12]===Symbol.for("react.memo_cache_sentinel")?(p=()=>c(!0),s[12]=p):p=s[12],d=I.jsx("img",{src:r,alt:e,onError:p,className:F("rounded-lg object-cover border border-border shrink-0",S[o],g[o],i)});break e}}s[0]=i,s[1]=a,s[2]=r,s[3]=f,s[4]=e,s[5]=o,s[6]=l,s[7]=d}else l=s[6],d=s[7];return d!==Symbol.for("react.early_return_sentinel")?d:l}export{ne as I,U,te as a,ee as b,$ as c,se as d,B as e,J as f,R as u};
@@ -1 +1 @@
1
- import{c as m,aJ as x,r as u,j as c,bQ as b}from"./index-VCe1FY3E.js";import{B as j}from"./button-CB7Gt-Ba.js";const d="view-details-tabs-portal",h="view-details-actions-portal";function p(n){const e=m.c(3),[l,s]=u.useState(null);let t,r;return e[0]!==n?(t=()=>{s(document.getElementById(n))},r=[n],e[0]=n,e[1]=t,e[2]=r):(t=e[1],r=e[2]),u.useEffect(t,r),l}function N(n){const e=m.c(3),{children:l}=n,s=p(d);if(!s)return null;let t;return e[0]!==l||e[1]!==s?(t=x.createPortal(l,s),e[0]=l,e[1]=s,e[2]=t):t=e[2],t}function w(n){const e=m.c(3),{children:l}=n,s=p(h);if(!s)return null;let t;return e[0]!==l||e[1]!==s?(t=x.createPortal(l,s),e[0]=l,e[1]=s,e[2]=t):t=e[2],t}function _(n){const e=m.c(11),{children:l,onBack:s}=n;let t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t=c.jsx(b,{}),e[0]=t):t=e[0];let r;e[1]!==s?(r=c.jsx("div",{className:"flex h-full px-2 border-r items-center",children:c.jsx(j,{variant:"ghost",size:"icon",className:"items-center size-8 text-muted-foreground",onClick:s,children:t})}),e[1]=s,e[2]=r):r=e[2];let i;e[3]===Symbol.for("react.memo_cache_sentinel")?(i=c.jsxs("div",{className:"flex justify-between px-4 items-center gap-4 flex-1",children:[c.jsx("div",{id:d,className:"flex items-center gap-2"}),c.jsx("div",{id:h,className:"flex items-center gap-2 ml-auto"})]}),e[3]=i):i=e[3];let o;e[4]!==r?(o=c.jsxs("div",{className:"flex items-center h-12 border-b border-border shrink-0",children:[r,i]}),e[4]=r,e[5]=o):o=e[5];let a;e[6]!==l?(a=c.jsx("div",{className:"flex-1 overflow-auto",children:l}),e[6]=l,e[7]=a):a=e[7];let f;return e[8]!==o||e[9]!==a?(f=c.jsxs("div",{className:"flex flex-col h-full bg-background",children:[o,a]}),e[8]=o,e[9]=a,e[10]=f):f=e[10],f}export{w as V,N as a,_ as b};
1
+ import{c as m,a_ as x,r as u,j as c,bQ as b}from"./index-kuMaGV9U.js";import{B as j}from"./button-Cv1rgJOF.js";const d="view-details-tabs-portal",h="view-details-actions-portal";function p(n){const e=m.c(3),[l,s]=u.useState(null);let t,r;return e[0]!==n?(t=()=>{s(document.getElementById(n))},r=[n],e[0]=n,e[1]=t,e[2]=r):(t=e[1],r=e[2]),u.useEffect(t,r),l}function N(n){const e=m.c(3),{children:l}=n,s=p(d);if(!s)return null;let t;return e[0]!==l||e[1]!==s?(t=x.createPortal(l,s),e[0]=l,e[1]=s,e[2]=t):t=e[2],t}function _(n){const e=m.c(3),{children:l}=n,s=p(h);if(!s)return null;let t;return e[0]!==l||e[1]!==s?(t=x.createPortal(l,s),e[0]=l,e[1]=s,e[2]=t):t=e[2],t}function w(n){const e=m.c(11),{children:l,onBack:s}=n;let t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t=c.jsx(b,{}),e[0]=t):t=e[0];let r;e[1]!==s?(r=c.jsx("div",{className:"flex h-full px-2 border-r items-center",children:c.jsx(j,{variant:"ghost",size:"icon",className:"items-center size-8 text-muted-foreground",onClick:s,children:t})}),e[1]=s,e[2]=r):r=e[2];let i;e[3]===Symbol.for("react.memo_cache_sentinel")?(i=c.jsxs("div",{className:"flex justify-between px-4 items-center gap-4 flex-1",children:[c.jsx("div",{id:d,className:"flex items-center gap-2"}),c.jsx("div",{id:h,className:"flex items-center gap-2 ml-auto"})]}),e[3]=i):i=e[3];let o;e[4]!==r?(o=c.jsxs("div",{className:"flex items-center h-12 border-b border-border shrink-0",children:[r,i]}),e[4]=r,e[5]=o):o=e[5];let a;e[6]!==l?(a=c.jsx("div",{className:"flex-1 overflow-auto",children:l}),e[6]=l,e[7]=a):a=e[7];let f;return e[8]!==o||e[9]!==a?(f=c.jsxs("div",{className:"flex flex-col h-full bg-background",children:[o,a]}),e[8]=o,e[9]=a,e[10]=f):f=e[10],f}export{_ as V,N as a,w as b};
@@ -1 +1 @@
1
- import{c as g,j as p}from"./index-VCe1FY3E.js";import{h as k}from"./prism-BsII3tZL.js";const b={'code[class*="language-"]':{background:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)",fontFamily:'"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace',direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"2",OTabSize:"2",tabSize:"2",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none"},'pre[class*="language-"]':{background:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)",fontFamily:'"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace',direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"2",OTabSize:"2",tabSize:"2",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none",padding:"1em",margin:"0.5em 0",overflow:"auto",borderRadius:"0.3em"},'code[class*="language-"]::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"] *::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'pre[class*="language-"] *::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"]::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"] *::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'pre[class*="language-"] *::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},':not(pre) > code[class*="language-"]':{padding:"0.2em 0.3em",borderRadius:"0.3em",whiteSpace:"normal"},comment:{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},prolog:{color:"hsl(220, 10%, 40%)"},cdata:{color:"hsl(220, 10%, 40%)"},doctype:{color:"hsl(220, 14%, 71%)"},punctuation:{color:"hsl(220, 14%, 71%)"},entity:{color:"hsl(220, 14%, 71%)",cursor:"help"},"attr-name":{color:"hsl(29, 54%, 61%)"},"class-name":{color:"hsl(29, 54%, 61%)"},boolean:{color:"hsl(29, 54%, 61%)"},constant:{color:"hsl(29, 54%, 61%)"},number:{color:"hsl(29, 54%, 61%)"},atrule:{color:"hsl(29, 54%, 61%)"},keyword:{color:"hsl(286, 60%, 67%)"},property:{color:"hsl(355, 65%, 65%)"},tag:{color:"hsl(355, 65%, 65%)"},symbol:{color:"hsl(355, 65%, 65%)"},deleted:{color:"hsl(355, 65%, 65%)"},important:{color:"hsl(355, 65%, 65%)"},selector:{color:"hsl(95, 38%, 62%)"},string:{color:"hsl(95, 38%, 62%)"},char:{color:"hsl(95, 38%, 62%)"},builtin:{color:"hsl(95, 38%, 62%)"},inserted:{color:"hsl(95, 38%, 62%)"},regex:{color:"hsl(95, 38%, 62%)"},"attr-value":{color:"hsl(95, 38%, 62%)"},"attr-value > .token.punctuation":{color:"hsl(95, 38%, 62%)"},variable:{color:"hsl(207, 82%, 66%)"},operator:{color:"hsl(207, 82%, 66%)"},function:{color:"hsl(207, 82%, 66%)"},url:{color:"hsl(187, 47%, 55%)"},"attr-value > .token.punctuation.attr-equals":{color:"hsl(220, 14%, 71%)"},"special-attr > .token.attr-value > .token.value.css":{color:"hsl(220, 14%, 71%)"},".language-css .token.selector":{color:"hsl(355, 65%, 65%)"},".language-css .token.property":{color:"hsl(220, 14%, 71%)"},".language-css .token.function":{color:"hsl(187, 47%, 55%)"},".language-css .token.url > .token.function":{color:"hsl(187, 47%, 55%)"},".language-css .token.url > .token.string.url":{color:"hsl(95, 38%, 62%)"},".language-css .token.important":{color:"hsl(286, 60%, 67%)"},".language-css .token.atrule .token.rule":{color:"hsl(286, 60%, 67%)"},".language-javascript .token.operator":{color:"hsl(286, 60%, 67%)"},".language-javascript .token.template-string > .token.interpolation > .token.interpolation-punctuation.punctuation":{color:"hsl(5, 48%, 51%)"},".language-json .token.operator":{color:"hsl(220, 14%, 71%)"},".language-json .token.null.keyword":{color:"hsl(29, 54%, 61%)"},".language-markdown .token.url":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url > .token.operator":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url-reference.url > .token.string":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url > .token.content":{color:"hsl(207, 82%, 66%)"},".language-markdown .token.url > .token.url":{color:"hsl(187, 47%, 55%)"},".language-markdown .token.url-reference.url":{color:"hsl(187, 47%, 55%)"},".language-markdown .token.blockquote.punctuation":{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},".language-markdown .token.hr.punctuation":{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},".language-markdown .token.code-snippet":{color:"hsl(95, 38%, 62%)"},".language-markdown .token.bold .token.content":{color:"hsl(29, 54%, 61%)"},".language-markdown .token.italic .token.content":{color:"hsl(286, 60%, 67%)"},".language-markdown .token.strike .token.content":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.strike .token.punctuation":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.list.punctuation":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.title.important > .token.punctuation":{color:"hsl(355, 65%, 65%)"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"},namespace:{Opacity:"0.8"},"token.tab:not(:empty):before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.cr:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.lf:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.space:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item":{marginRight:"0.4em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},".line-highlight.line-highlight":{background:"hsla(220, 100%, 80%, 0.04)"},".line-highlight.line-highlight:before":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 14%, 71%)",padding:"0.1em 0.6em",borderRadius:"0.3em",boxShadow:"0 2px 0 0 rgba(0, 0, 0, 0.2)"},".line-highlight.line-highlight[data-end]:after":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 14%, 71%)",padding:"0.1em 0.6em",borderRadius:"0.3em",boxShadow:"0 2px 0 0 rgba(0, 0, 0, 0.2)"},"pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows > span:hover:before":{backgroundColor:"hsla(220, 100%, 80%, 0.04)"},".line-numbers.line-numbers .line-numbers-rows":{borderRightColor:"hsla(220, 14%, 71%, 0.15)"},".command-line .command-line-prompt":{borderRightColor:"hsla(220, 14%, 71%, 0.15)"},".line-numbers .line-numbers-rows > span:before":{color:"hsl(220, 14%, 45%)"},".command-line .command-line-prompt > span:before":{color:"hsl(220, 14%, 45%)"},".rainbow-braces .token.token.punctuation.brace-level-1":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-5":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-9":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-2":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-6":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-10":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-3":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-7":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-11":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-4":{color:"hsl(286, 60%, 67%)"},".rainbow-braces .token.token.punctuation.brace-level-8":{color:"hsl(286, 60%, 67%)"},".rainbow-braces .token.token.punctuation.brace-level-12":{color:"hsl(286, 60%, 67%)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)":{backgroundColor:"hsla(353, 100%, 66%, 0.15)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)":{backgroundColor:"hsla(353, 100%, 66%, 0.15)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix) *::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix) *::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)":{backgroundColor:"hsla(137, 100%, 55%, 0.15)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)":{backgroundColor:"hsla(137, 100%, 55%, 0.15)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix) *::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix) *::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},".prism-previewer.prism-previewer:before":{borderColor:"hsl(224, 13%, 17%)"},".prism-previewer-gradient.prism-previewer-gradient div":{borderColor:"hsl(224, 13%, 17%)",borderRadius:"0.3em"},".prism-previewer-color.prism-previewer-color:before":{borderRadius:"0.3em"},".prism-previewer-easing.prism-previewer-easing:before":{borderRadius:"0.3em"},".prism-previewer.prism-previewer:after":{borderTopColor:"hsl(224, 13%, 17%)"},".prism-previewer-flipped.prism-previewer-flipped.after":{borderBottomColor:"hsl(224, 13%, 17%)"},".prism-previewer-angle.prism-previewer-angle:before":{background:"hsl(219, 13%, 22%)"},".prism-previewer-time.prism-previewer-time:before":{background:"hsl(219, 13%, 22%)"},".prism-previewer-easing.prism-previewer-easing":{background:"hsl(219, 13%, 22%)"},".prism-previewer-angle.prism-previewer-angle circle":{stroke:"hsl(220, 14%, 71%)",strokeOpacity:"1"},".prism-previewer-time.prism-previewer-time circle":{stroke:"hsl(220, 14%, 71%)",strokeOpacity:"1"},".prism-previewer-easing.prism-previewer-easing circle":{stroke:"hsl(220, 14%, 71%)",fill:"transparent"},".prism-previewer-easing.prism-previewer-easing path":{stroke:"hsl(220, 14%, 71%)"},".prism-previewer-easing.prism-previewer-easing line":{stroke:"hsl(220, 14%, 71%)"}};function f(h){const o=g.c(8),{language:d,content:n,fillHeight:s}=h,c=s===void 0?!1:s,t=d||"text",a=c?"100%":void 0,i=c?"100%":void 0;let e;o[0]!==a||o[1]!==i?(e={margin:0,padding:"1rem",fontSize:"0.8rem",borderRadius:"0.5rem",background:"#282c34",position:"relative",overflowX:"hidden",overflowY:"visible",width:"100%",maxWidth:"100%",display:"block",wordBreak:"break-word",overflowWrap:"break-word",height:a,minHeight:i},o[0]=a,o[1]=i,o[2]=e):e=o[2];let r;o[3]===Symbol.for("react.memo_cache_sentinel")?(r={className:"font-mono",style:{wordBreak:"break-word",overflowWrap:"break-word",whiteSpace:"pre-wrap"}},o[3]=r):r=o[3];let l;return o[4]!==n||o[5]!==t||o[6]!==e?(l=p.jsx(k,{language:t,style:b,customStyle:e,codeTagProps:r,wrapLongLines:!0,children:n}),o[4]=n,o[5]=t,o[6]=e,o[7]=l):l=o[7],l}export{f as default};
1
+ import{c as g,j as p}from"./index-kuMaGV9U.js";import{h as k}from"./prism-a2E9dRRh.js";const b={'code[class*="language-"]':{background:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)",fontFamily:'"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace',direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"2",OTabSize:"2",tabSize:"2",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none"},'pre[class*="language-"]':{background:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)",fontFamily:'"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace',direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"2",OTabSize:"2",tabSize:"2",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none",padding:"1em",margin:"0.5em 0",overflow:"auto",borderRadius:"0.3em"},'code[class*="language-"]::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"] *::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'pre[class*="language-"] *::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"]::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"] *::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'pre[class*="language-"] *::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},':not(pre) > code[class*="language-"]':{padding:"0.2em 0.3em",borderRadius:"0.3em",whiteSpace:"normal"},comment:{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},prolog:{color:"hsl(220, 10%, 40%)"},cdata:{color:"hsl(220, 10%, 40%)"},doctype:{color:"hsl(220, 14%, 71%)"},punctuation:{color:"hsl(220, 14%, 71%)"},entity:{color:"hsl(220, 14%, 71%)",cursor:"help"},"attr-name":{color:"hsl(29, 54%, 61%)"},"class-name":{color:"hsl(29, 54%, 61%)"},boolean:{color:"hsl(29, 54%, 61%)"},constant:{color:"hsl(29, 54%, 61%)"},number:{color:"hsl(29, 54%, 61%)"},atrule:{color:"hsl(29, 54%, 61%)"},keyword:{color:"hsl(286, 60%, 67%)"},property:{color:"hsl(355, 65%, 65%)"},tag:{color:"hsl(355, 65%, 65%)"},symbol:{color:"hsl(355, 65%, 65%)"},deleted:{color:"hsl(355, 65%, 65%)"},important:{color:"hsl(355, 65%, 65%)"},selector:{color:"hsl(95, 38%, 62%)"},string:{color:"hsl(95, 38%, 62%)"},char:{color:"hsl(95, 38%, 62%)"},builtin:{color:"hsl(95, 38%, 62%)"},inserted:{color:"hsl(95, 38%, 62%)"},regex:{color:"hsl(95, 38%, 62%)"},"attr-value":{color:"hsl(95, 38%, 62%)"},"attr-value > .token.punctuation":{color:"hsl(95, 38%, 62%)"},variable:{color:"hsl(207, 82%, 66%)"},operator:{color:"hsl(207, 82%, 66%)"},function:{color:"hsl(207, 82%, 66%)"},url:{color:"hsl(187, 47%, 55%)"},"attr-value > .token.punctuation.attr-equals":{color:"hsl(220, 14%, 71%)"},"special-attr > .token.attr-value > .token.value.css":{color:"hsl(220, 14%, 71%)"},".language-css .token.selector":{color:"hsl(355, 65%, 65%)"},".language-css .token.property":{color:"hsl(220, 14%, 71%)"},".language-css .token.function":{color:"hsl(187, 47%, 55%)"},".language-css .token.url > .token.function":{color:"hsl(187, 47%, 55%)"},".language-css .token.url > .token.string.url":{color:"hsl(95, 38%, 62%)"},".language-css .token.important":{color:"hsl(286, 60%, 67%)"},".language-css .token.atrule .token.rule":{color:"hsl(286, 60%, 67%)"},".language-javascript .token.operator":{color:"hsl(286, 60%, 67%)"},".language-javascript .token.template-string > .token.interpolation > .token.interpolation-punctuation.punctuation":{color:"hsl(5, 48%, 51%)"},".language-json .token.operator":{color:"hsl(220, 14%, 71%)"},".language-json .token.null.keyword":{color:"hsl(29, 54%, 61%)"},".language-markdown .token.url":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url > .token.operator":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url-reference.url > .token.string":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url > .token.content":{color:"hsl(207, 82%, 66%)"},".language-markdown .token.url > .token.url":{color:"hsl(187, 47%, 55%)"},".language-markdown .token.url-reference.url":{color:"hsl(187, 47%, 55%)"},".language-markdown .token.blockquote.punctuation":{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},".language-markdown .token.hr.punctuation":{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},".language-markdown .token.code-snippet":{color:"hsl(95, 38%, 62%)"},".language-markdown .token.bold .token.content":{color:"hsl(29, 54%, 61%)"},".language-markdown .token.italic .token.content":{color:"hsl(286, 60%, 67%)"},".language-markdown .token.strike .token.content":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.strike .token.punctuation":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.list.punctuation":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.title.important > .token.punctuation":{color:"hsl(355, 65%, 65%)"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"},namespace:{Opacity:"0.8"},"token.tab:not(:empty):before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.cr:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.lf:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.space:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item":{marginRight:"0.4em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},".line-highlight.line-highlight":{background:"hsla(220, 100%, 80%, 0.04)"},".line-highlight.line-highlight:before":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 14%, 71%)",padding:"0.1em 0.6em",borderRadius:"0.3em",boxShadow:"0 2px 0 0 rgba(0, 0, 0, 0.2)"},".line-highlight.line-highlight[data-end]:after":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 14%, 71%)",padding:"0.1em 0.6em",borderRadius:"0.3em",boxShadow:"0 2px 0 0 rgba(0, 0, 0, 0.2)"},"pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows > span:hover:before":{backgroundColor:"hsla(220, 100%, 80%, 0.04)"},".line-numbers.line-numbers .line-numbers-rows":{borderRightColor:"hsla(220, 14%, 71%, 0.15)"},".command-line .command-line-prompt":{borderRightColor:"hsla(220, 14%, 71%, 0.15)"},".line-numbers .line-numbers-rows > span:before":{color:"hsl(220, 14%, 45%)"},".command-line .command-line-prompt > span:before":{color:"hsl(220, 14%, 45%)"},".rainbow-braces .token.token.punctuation.brace-level-1":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-5":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-9":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-2":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-6":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-10":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-3":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-7":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-11":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-4":{color:"hsl(286, 60%, 67%)"},".rainbow-braces .token.token.punctuation.brace-level-8":{color:"hsl(286, 60%, 67%)"},".rainbow-braces .token.token.punctuation.brace-level-12":{color:"hsl(286, 60%, 67%)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)":{backgroundColor:"hsla(353, 100%, 66%, 0.15)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)":{backgroundColor:"hsla(353, 100%, 66%, 0.15)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix) *::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix) *::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)":{backgroundColor:"hsla(137, 100%, 55%, 0.15)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)":{backgroundColor:"hsla(137, 100%, 55%, 0.15)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix) *::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix) *::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},".prism-previewer.prism-previewer:before":{borderColor:"hsl(224, 13%, 17%)"},".prism-previewer-gradient.prism-previewer-gradient div":{borderColor:"hsl(224, 13%, 17%)",borderRadius:"0.3em"},".prism-previewer-color.prism-previewer-color:before":{borderRadius:"0.3em"},".prism-previewer-easing.prism-previewer-easing:before":{borderRadius:"0.3em"},".prism-previewer.prism-previewer:after":{borderTopColor:"hsl(224, 13%, 17%)"},".prism-previewer-flipped.prism-previewer-flipped.after":{borderBottomColor:"hsl(224, 13%, 17%)"},".prism-previewer-angle.prism-previewer-angle:before":{background:"hsl(219, 13%, 22%)"},".prism-previewer-time.prism-previewer-time:before":{background:"hsl(219, 13%, 22%)"},".prism-previewer-easing.prism-previewer-easing":{background:"hsl(219, 13%, 22%)"},".prism-previewer-angle.prism-previewer-angle circle":{stroke:"hsl(220, 14%, 71%)",strokeOpacity:"1"},".prism-previewer-time.prism-previewer-time circle":{stroke:"hsl(220, 14%, 71%)",strokeOpacity:"1"},".prism-previewer-easing.prism-previewer-easing circle":{stroke:"hsl(220, 14%, 71%)",fill:"transparent"},".prism-previewer-easing.prism-previewer-easing path":{stroke:"hsl(220, 14%, 71%)"},".prism-previewer-easing.prism-previewer-easing line":{stroke:"hsl(220, 14%, 71%)"}};function f(h){const o=g.c(8),{language:d,content:n,fillHeight:s}=h,c=s===void 0?!1:s,t=d||"text",a=c?"100%":void 0,i=c?"100%":void 0;let e;o[0]!==a||o[1]!==i?(e={margin:0,padding:"1rem",fontSize:"0.8rem",borderRadius:"0.5rem",background:"#282c34",position:"relative",overflowX:"hidden",overflowY:"visible",width:"100%",maxWidth:"100%",display:"block",wordBreak:"break-word",overflowWrap:"break-word",height:a,minHeight:i},o[0]=a,o[1]=i,o[2]=e):e=o[2];let r;o[3]===Symbol.for("react.memo_cache_sentinel")?(r={className:"font-mono",style:{wordBreak:"break-word",overflowWrap:"break-word",whiteSpace:"pre-wrap"}},o[3]=r):r=o[3];let l;return o[4]!==n||o[5]!==t||o[6]!==e?(l=p.jsx(k,{language:t,style:b,customStyle:e,codeTagProps:r,wrapLongLines:!0,children:n}),o[4]=n,o[5]=t,o[6]=e,o[7]=l):l=o[7],l}export{f as default};
@@ -1 +1 @@
1
- import{c as C,a1 as L}from"./index-VCe1FY3E.js";import{u as Q}from"./useQuery-DEUZMq4A.js";import{u as $}from"./button-CB7Gt-Ba.js";function q(e){try{return JSON.parse(e)}catch{return}}function O(e,n){const t=localStorage.getItem(e),s=t?q(t):void 0,a=typeof n=="function"?n(s):s??n;if(s===void 0||a!==s)try{const o=JSON.stringify(a);localStorage.setItem(e,o)}catch{}return a}function E(e,n){const t=C.c(25),s=L();let a;t[0]!==e?(a=["localStorage",e],t[0]=e,t[1]=a):a=t[1];const o=a;let r,i;t[2]!==n||t[3]!==e?(r=()=>O(e,n),i=()=>O(e,n),t[2]=n,t[3]=e,t[4]=r,t[5]=i):(r=t[4],i=t[5]);let m;t[6]!==o||t[7]!==r||t[8]!==i?(m={queryKey:o,queryFn:r,initialData:i,staleTime:1/0,gcTime:1/0},t[6]=o,t[7]=r,t[8]=i,t[9]=m):m=t[9];const{data:I}=Q(m);let l;t[10]!==e?(l=async c=>{const y=JSON.stringify(c);return localStorage.setItem(e,y),c},t[10]=e,t[11]=l):l=t[11];let u;t[12]!==s||t[13]!==o?(u=c=>{s.setQueryData(o,c)},t[12]=s,t[13]=o,t[14]=u):u=t[14];let f;t[15]!==l||t[16]!==u?(f={mutationFn:l,onSuccess:u},t[15]=l,t[16]=u,t[17]=f):f=t[17];const h=$(f);let g;t[18]!==h||t[19]!==s||t[20]!==o?(g=c=>{const y=s.getQueryData(o),x=typeof c=="function"?c(y):c;h.mutate(x)},t[18]=h,t[19]=s,t[20]=o,t[21]=g):g=t[21];const S=g,p=I;let d;return t[22]!==S||t[23]!==p?(d=[p,S],t[22]=S,t[23]=p,t[24]=d):d=t[24],d}const F={decoChatOpen:()=>"mesh:decochat:open",threadManagerState:e=>`mesh:thread-manager-state:${e}`,chatSelectedModel:e=>`mesh:chat:selectedModel:${e}`,decoChatPanelWidth:()=>"mesh:decochat:panel-width",sidebarOpen:()=>"mesh:sidebar-open",selectedRegistry:e=>`mesh:store:selected-registry:${e}`,orgHomeQuickstart:e=>`mesh:org-home:quickstart:${e}`};export{F as L,E as u};
1
+ import{c as C,a1 as L}from"./index-kuMaGV9U.js";import{u as Q}from"./useQuery-DJ7WNdWe.js";import{u as $}from"./button-Cv1rgJOF.js";function q(e){try{return JSON.parse(e)}catch{return}}function O(e,n){const t=localStorage.getItem(e),s=t?q(t):void 0,a=typeof n=="function"?n(s):s??n;if(s===void 0||a!==s)try{const o=JSON.stringify(a);localStorage.setItem(e,o)}catch{}return a}function E(e,n){const t=C.c(25),s=L();let a;t[0]!==e?(a=["localStorage",e],t[0]=e,t[1]=a):a=t[1];const o=a;let r,i;t[2]!==n||t[3]!==e?(r=()=>O(e,n),i=()=>O(e,n),t[2]=n,t[3]=e,t[4]=r,t[5]=i):(r=t[4],i=t[5]);let m;t[6]!==o||t[7]!==r||t[8]!==i?(m={queryKey:o,queryFn:r,initialData:i,staleTime:1/0,gcTime:1/0},t[6]=o,t[7]=r,t[8]=i,t[9]=m):m=t[9];const{data:I}=Q(m);let l;t[10]!==e?(l=async c=>{const y=JSON.stringify(c);return localStorage.setItem(e,y),c},t[10]=e,t[11]=l):l=t[11];let u;t[12]!==s||t[13]!==o?(u=c=>{s.setQueryData(o,c)},t[12]=s,t[13]=o,t[14]=u):u=t[14];let f;t[15]!==l||t[16]!==u?(f={mutationFn:l,onSuccess:u},t[15]=l,t[16]=u,t[17]=f):f=t[17];const h=$(f);let g;t[18]!==h||t[19]!==s||t[20]!==o?(g=c=>{const y=s.getQueryData(o),x=typeof c=="function"?c(y):c;h.mutate(x)},t[18]=h,t[19]=s,t[20]=o,t[21]=g):g=t[21];const S=g,p=I;let d;return t[22]!==S||t[23]!==p?(d=[p,S],t[22]=S,t[23]=p,t[24]=d):d=t[24],d}const F={decoChatOpen:()=>"mesh:decochat:open",threadManagerState:e=>`mesh:thread-manager-state:${e}`,chatSelectedModel:e=>`mesh:chat:selectedModel:${e}`,decoChatPanelWidth:()=>"mesh:decochat:panel-width",sidebarOpen:()=>"mesh:sidebar-open",selectedRegistry:e=>`mesh:store:selected-registry:${e}`,orgHomeQuickstart:e=>`mesh:org-home:quickstart:${e}`};export{F as L,E as u};
@@ -0,0 +1 @@
1
+ import{u as k,r as p,j as e,a as j,b as z,S as L,N as R,c as U}from"./index-kuMaGV9U.js";import{u as T,B as P}from"./button-Cv1rgJOF.js";import{I as E}from"./input-C0U94pom.js";import{c as b}from"./utils-dJ2GyoL3.js";function B({redirectUrl:r}){const{emailAndPassword:t}=k(),[s,d]=p.useState(""),[o,u]=p.useState(""),[l,v]=p.useState(""),[i,N]=p.useState(()=>globalThis.localStorage?.getItem("hasLoggedIn")!=="true"),[m,h]=p.useState(""),g=T({mutationFn:async({email:a,password:n,name:C})=>{try{if(i){const c=await j.signUp.email({email:a,password:n,name:C||""});if(c.error)throw new Error(c.error.message||"Sign up failed");return c}else{const c=await j.signIn.email({email:a,password:n});if(c.error)throw new Error(c.error.message||"Sign in failed");return c}}catch(c){throw c instanceof Error?c:new Error("Authentication failed")}},onSuccess:()=>{globalThis.localStorage?.setItem("hasLoggedIn","true"),r&&(window.location.href=r)}}),y=a=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(a),x=()=>{s.trim()&&!y(s)&&h("Invalid email address")},S=a=>{if(a.preventDefault(),!y(s)){h("Invalid email address");return}g.mutate({email:s,password:o,name:l})},_=a=>n=>{a(n.target.value),I&&g.reset(),a===d&&m&&h("")},f=g.isPending,I=g.error,w=i?s.trim()&&o.trim()&&l.trim():s.trim()&&o.trim(),A=a=>{if(!a)return null;const n=a.message.toLowerCase();return n.includes("unauthorized")||n.includes("401")?"Invalid email or password. Please try again.":n.includes("already exists")||n.includes("409")?"An account with this email already exists. Try signing in instead.":n.includes("network")||n.includes("fetch")?"Network error. Please check your connection and try again.":n.includes("rate limit")||n.includes("429")?"Too many attempts. Please wait a moment and try again.":a.message||"An error occurred. Please try again."};return e.jsxs("div",{className:"mx-auto w-full min-w-[400px] max-w-md grid gap-6 bg-card p-10 border border-primary-foreground/20",children:[e.jsx("div",{className:"flex justify-center",children:e.jsx("img",{src:"/logos/deco logo.svg",alt:"Deco",className:"h-12 w-12"})}),e.jsx("div",{className:"text-center space-y-1",children:e.jsx("p",{className:"text-sm text-foreground/70",children:i?"Create your account":"Login or signup below"})}),I&&e.jsx("div",{className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:A(I)}),t.enabled&&e.jsxs("form",{onSubmit:S,className:"grid gap-4",children:[e.jsx("div",{className:b("overflow-hidden transition-all duration-300 ease-[cubic-bezier(0.075,0.82,0.165,1)]",i?"max-h-[200px] opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:e.jsxs("div",{className:b("p-1",!i&&"pointer-events-none"),children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Name"}),e.jsx(E,{type:"text",placeholder:"Your name",value:l,onChange:_(v),required:!0,disabled:f||!i,"aria-hidden":!i})]})}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Email"}),e.jsx(E,{type:"email",placeholder:"you@example.com",value:s,onChange:_(d),onBlur:x,required:!0,disabled:f,"aria-invalid":!!m}),m&&e.jsx("p",{className:"text-xs text-destructive mt-1.5",children:m})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Password"}),e.jsx(E,{type:"password",placeholder:"••••••••",value:o,onChange:_(u),required:!0,disabled:f})]}),e.jsx("div",{className:b("overflow-hidden transition-all duration-300 ease-[cubic-bezier(0.075,0.82,0.165,1)]",w?"max-h-[100px] opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:e.jsx("div",{className:b("p-1",!w&&"pointer-events-none"),children:e.jsx(P,{type:"submit",disabled:f||!w,className:b("w-full font-semibold"),size:"lg","aria-hidden":!w,children:f?i?"Creating account...":"Signing in...":"Continue"})})})]}),e.jsx("div",{className:"text-center",children:e.jsx(P,{type:"button",variant:"link",onClick:()=>{N(!i),v(""),h(""),g.reset()},disabled:f,className:"text-sm text-muted-foreground hover:text-foreground",children:i?"Already have an account? Sign in":"Don't have an account? Sign up"})}),e.jsxs("div",{className:"flex justify-between text-xs text-muted-foreground pt-4",children:[e.jsx("a",{href:"https://www.decocms.com/terms-of-use",target:"_blank",rel:"noopener noreferrer",className:"hover:text-foreground transition-colors",children:"Terms of Service"}),e.jsx("a",{href:"https://www.decocms.com/privacy-policy",target:"_blank",rel:"noopener noreferrer",className:"hover:text-foreground transition-colors",children:"Privacy Policy"})]})]})}function M(r){if(!r.client_id||r.response_type!=="code")return null;const t=new URLSearchParams;return r.client_id&&t.set("client_id",r.client_id),r.redirect_uri&&t.set("redirect_uri",r.redirect_uri),r.response_type&&t.set("response_type",r.response_type),r.state&&t.set("state",r.state),r.scope&&t.set("scope",r.scope),r.code_challenge&&t.set("code_challenge",r.code_challenge),r.code_challenge_method&&t.set("code_challenge_method",r.code_challenge_method),`/api/auth/mcp/authorize?${t.toString()}`}function q(r){const t=U.c(5),{callbackURL:s,providerId:d}=r;let o,u;t[0]!==s||t[1]!==d?(o=()=>{(async()=>await j.signIn.sso({providerId:d,callbackURL:s}))()},u=[d,s],t[0]=s,t[1]=d,t[2]=o,t[3]=u):(o=t[2],u=t[3]),p.useEffect(o,u);let l;return t[4]===Symbol.for("react.memo_cache_sentinel")?(l=e.jsx(L,{}),t[4]=l):l=t[4],l}function Y(){const r=j.useSession(),t=z({from:"/login"}),{next:s="/",client_id:d,redirect_uri:o,response_type:u,state:l,scope:v,code_challenge:i,code_challenge_method:N}=t,{sso:m,emailAndPassword:h,magicLink:g,socialProviders:y}=k(),x=M({client_id:d,redirect_uri:o,response_type:u,state:l,scope:v,code_challenge:i,code_challenge_method:N}),S=x||s;return r.data?x?(window.location.href=x,e.jsx(L,{})):e.jsx(R,{to:s}):m.enabled?e.jsx(q,{callbackURL:S,providerId:m.providerId}):h.enabled||g.enabled||y.enabled?e.jsxs("main",{className:"relative flex min-h-screen items-center justify-center bg-gradient-to-br from-primary to-primary/75 p-4",children:[e.jsx("div",{className:"absolute inset-0",style:{backgroundImage:"radial-gradient(circle, var(--primary-foreground) 1px, transparent 1px)",backgroundSize:"16px 16px",opacity:.15}}),e.jsxs("div",{className:"relative z-10",children:[e.jsx("div",{className:"absolute top-0 left-1/2 -translate-x-1/2 w-screen h-px bg-primary-foreground/15"}),e.jsx("div",{className:"absolute bottom-0 left-1/2 -translate-x-1/2 w-screen h-px bg-primary-foreground/15"}),e.jsx("div",{className:"absolute left-0 top-1/2 -translate-y-1/2 w-px h-screen bg-primary-foreground/15"}),e.jsx("div",{className:"absolute right-0 top-1/2 -translate-y-1/2 w-px h-screen bg-primary-foreground/15"}),e.jsx(B,{redirectUrl:x})]})]}):e.jsx("div",{children:"No login options available"})}export{Y as default};
@@ -0,0 +1 @@
1
+ import{p as O,q as V,r as P,m as $}from"./auth-Dfo88onv.js";function y(r){let e=0;for(let t=0;t<r.length;t++){const o=r.charCodeAt(t);e=(e<<5)-e+o,e=e&e}return Math.abs(e).toString(16)}const U=new Map,C="mcp:oauth:callback:";class L{serverUrl;_clientMetadata;_redirectUrl;_state=null;_codeVerifier=null;_clientInfo=null;_tokens=null;constructor(e){this.serverUrl=e.serverUrl,this._redirectUrl=e.callbackUrl??`${window.location.origin}/oauth/callback`,this._clientMetadata={redirect_uris:[this._redirectUrl],token_endpoint_auth_method:"none",grant_types:["authorization_code","refresh_token"],response_types:["code"],client_name:e.clientName??"@decocms/mesh MCP client",scope:"mcp"},U.set(y(this.serverUrl),this)}get redirectUrl(){return this._redirectUrl}get clientMetadata(){return this._clientMetadata}state(){return this._state||(this._state=crypto.randomUUID()),this._state}getStoredState(){return this._state}clientInformation(){return this._clientInfo??void 0}saveClientInformation(e){this._clientInfo=e}tokens(){return this._tokens??void 0}saveTokens(e){this._tokens=e}redirectToAuthorization(e){const c=window.screenX+(window.outerWidth-600)/2,s=window.screenY+(window.outerHeight-700)/2;window.open(e.toString(),"mcp-oauth",`width=600,height=700,left=${c},top=${s},popup=yes`)}saveCodeVerifier(e){this._codeVerifier=e}codeVerifier(){if(!this._codeVerifier)throw new Error("Code verifier not found");return this._codeVerifier}invalidateCredentials(){this._clientInfo=null,this._tokens=null,this._codeVerifier=null,this._state=null}getServerUrl(){return this.serverUrl}cleanup(){U.delete(y(this.serverUrl))}}async function R(r){const e=new URL(`/mcp/${r.connectionId}`,window.location.origin),t=new L({serverUrl:e.href,clientName:r.clientName,clientUri:r.clientUri,callbackUrl:r.callbackUrl});try{const o=new Promise((d,n)=>{const l=r.timeout||12e4;let w,h=!1;const M=t.state(),p=`${C}${M}`,a=()=>{if(!h){h=!0,window.removeEventListener("message",g),window.removeEventListener("storage",_),clearTimeout(w);try{localStorage.removeItem(p)}catch{}}},m=async i=>{if(h)return;if(!i.success){a(),n(new Error(i.error||"OAuth authentication failed"));return}const{code:u,state:b}=i;if(!u){a(),n(new Error("Missing authorization code"));return}if(t.getStoredState()!==b){a(),n(new Error("OAuth state mismatch - possible CSRF attack"));return}try{const v=(await O(e))?.authorization_servers?.[0]||e,A=await V(v),S=t.clientInformation();if(!S){a(),n(new Error("Client information not found"));return}const E=t.codeVerifier(),I=await P(v,{metadata:A,clientInformation:S,authorizationCode:u,codeVerifier:E,redirectUri:t.redirectUrl,resource:new URL(e)});a(),d(I)}catch(k){a(),n(k)}},g=async i=>{i.origin===window.location.origin&&i.data?.type==="mcp:oauth:callback"&&await m(i.data)},_=async i=>{if(!(i.key!==p||!i.newValue))try{const u=JSON.parse(i.newValue);await m(u)}catch{}};window.addEventListener("message",g),window.addEventListener("storage",_),w=setTimeout(()=>{a(),n(new Error("OAuth authentication timeout"))},l)});return await $(t,{serverUrl:e})==="REDIRECT"?{token:(await o).access_token,error:null}:{token:t.tokens()?.access_token||null,error:null}}catch(o){return{token:null,error:o instanceof Error?o.message:String(o)}}finally{t.cleanup()}}function f(r,e){if(window.opener&&!window.opener.closed)return window.opener.postMessage(r,window.location.origin),!0;if(e)try{const t=`${C}${e}`;return localStorage.setItem(t,JSON.stringify(r)),!0}catch{}return!1}async function N(){const r=new URLSearchParams(window.location.search),e=r.get("code");let t=r.get("state");const o=r.get("error"),c=r.get("error_description");let s=t;if(t)try{const n=atob(t),l=JSON.parse(n);l.clientState&&(s=l.clientState)}catch{}if(o){const n=c||o;return f({type:"mcp:oauth:callback",success:!1,error:n},s),{success:!1,error:n}}if(!e||!t){const n="Missing code or state parameter";return f({type:"mcp:oauth:callback",success:!1,error:n},s),{success:!1,error:n}}return t=s||t,f({type:"mcp:oauth:callback",success:!0,code:e,state:t},t)?{success:!0}:{success:!1,error:"Parent window not available"}}async function D({url:r,token:e}){try{const t=new Headers;return t.set("Content-Type","application/json"),t.set("Accept","application/json, text/event-stream"),(await fetch(r,{method:"POST",headers:t,body:JSON.stringify({jsonrpc:"2.0",id:1,method:"initialize",params:{protocolVersion:"2025-06-18",capabilities:{},clientInfo:{name:"@decocms/mesh MCP client",version:"1.0.0"}}})})).ok}catch(t){return console.error("[isConnectionAuthenticated] Error:",t),!1}}export{R as a,N as h,D as i};
@@ -0,0 +1 @@
1
+ import{a2 as oe,a as X,ap as Pe,au as Se,av as os,aw as ls,aq as ie,r as D,a1 as Re,as as $e,ar as is,a6 as Q,j as t,c as ae}from"./index-kuMaGV9U.js";import{C as as}from"./collection-header-DsMf-88h.js";import{C as Te}from"./collection-page-C6Lt30BH.js";import{C as Ee}from"./collection-search-CXcLRFBk.js";import{C as cs}from"./collection-table-wrapper-DIAaiM6K.js";import{T as ds}from"./tool-set-selector-BxJYXzYX.js";import{b as ms}from"./integration-icon-Dv-2D552.js";import{u as _e}from"./use-members-dDzJ30ii.js";import{W as us}from"./well-known-mcp-Dq2j3ucM.js";import{u as ye}from"./tooltip-CyTpNpEt.js";import{u as Fe}from"./useQuery-DJ7WNdWe.js";import{A as we}from"./avatar-Dw1KHXJf.js";import{B as ge}from"./badge-C29ypR-2.js";import{u as ue,B as Y}from"./button-Cv1rgJOF.js";import{C as fs}from"./checkbox-Ay9B68Cb.js";import{f as he,a as pe,b as xe,c as be,d as Ce,e as Ne,A as je,g as ve}from"./alert-dialog-Hgs2tcw0.js";import{d as Ke,e as Ye,c as Qe,D as gs,a as hs,f as ps}from"./dialog-rRH3MQkl.js";import{b as Ze,D as qe,a as We,c as Oe,e as xs,f as bs,g as Cs,d as Ns}from"./dropdown-menu-dUgjswGX.js";import{I as q}from"./icon-KZI-tyY2.js";import{I as js}from"./input-C0U94pom.js";import{S as Me}from"./switch-B0GAK0hk.js";import{c as J}from"./utils-dJ2GyoL3.js";import{E as Ae}from"./empty-state-CCq1QaCi.js";import{E as vs}from"./error-boundary-COxhsLlB.js";import{a as Es,F as De,b as ze,d as ke,f as ys}from"./form-xpLXXjk9.js";import{c as He,a as Je,S as Xe,b as es,d as ss}from"./select-BFyzpZOm.js";import{C as ws}from"./card-BggFBtGd.js";import"./collection-display-button-grM851Xd.js";const ts=[{name:"ORGANIZATION_CREATE",description:"Create a new organization",category:"Organizations"},{name:"ORGANIZATION_LIST",description:"List organizations",category:"Organizations"},{name:"ORGANIZATION_GET",description:"View organization details",category:"Organizations"},{name:"ORGANIZATION_UPDATE",description:"Update organization",category:"Organizations"},{name:"ORGANIZATION_DELETE",description:"Delete organization",category:"Organizations",dangerous:!0},{name:"ORGANIZATION_SETTINGS_GET",description:"View organization settings",category:"Organizations"},{name:"ORGANIZATION_SETTINGS_UPDATE",description:"Update organization settings",category:"Organizations"},{name:"ORGANIZATION_MEMBER_ADD",description:"Add members",category:"Organizations"},{name:"ORGANIZATION_MEMBER_REMOVE",description:"Remove members",category:"Organizations",dangerous:!0},{name:"ORGANIZATION_MEMBER_LIST",description:"List members",category:"Organizations"},{name:"ORGANIZATION_MEMBER_UPDATE_ROLE",description:"Update member roles",category:"Organizations"},{name:"COLLECTION_CONNECTIONS_CREATE",description:"Create connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_LIST",description:"List connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_GET",description:"View connection details",category:"Connections"},{name:"COLLECTION_CONNECTIONS_UPDATE",description:"Update connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_DELETE",description:"Delete connections",category:"Connections",dangerous:!0},{name:"CONNECTION_TEST",description:"Test connections",category:"Connections"},{name:"DATABASES_RUN_SQL",description:"Run SQL queries",category:"Connections",dangerous:!0},{name:"COLLECTION_GATEWAY_CREATE",description:"Create gateways",category:"Gateways"},{name:"COLLECTION_GATEWAY_LIST",description:"List gateways",category:"Gateways"},{name:"COLLECTION_GATEWAY_GET",description:"View gateway details",category:"Gateways"},{name:"COLLECTION_GATEWAY_UPDATE",description:"Update gateways",category:"Gateways"},{name:"COLLECTION_GATEWAY_DELETE",description:"Delete gateways",category:"Gateways",dangerous:!0},{name:"MONITORING_LOGS_LIST",description:"List monitoring logs",category:"Monitoring"},{name:"MONITORING_STATS",description:"View monitoring statistics",category:"Monitoring"},{name:"API_KEY_CREATE",description:"Create API key",category:"API Keys"},{name:"API_KEY_LIST",description:"List API keys",category:"API Keys"},{name:"API_KEY_UPDATE",description:"Update API key",category:"API Keys"},{name:"API_KEY_DELETE",description:"Delete API key",category:"API Keys",dangerous:!0},{name:"EVENT_PUBLISH",description:"Publish events",category:"Event Bus"},{name:"EVENT_SUBSCRIBE",description:"Subscribe to events",category:"Event Bus"},{name:"EVENT_UNSUBSCRIBE",description:"Unsubscribe from events",category:"Event Bus"},{name:"EVENT_CANCEL",description:"Cancel recurring events",category:"Event Bus"},{name:"EVENT_ACK",description:"Acknowledge event delivery",category:"Event Bus"},{name:"EVENT_SUBSCRIPTION_LIST",description:"List event subscriptions",category:"Event Bus"},{name:"EVENT_SYNC_SUBSCRIPTIONS",description:"Sync subscriptions to desired state",category:"Event Bus"}],Ss={ORGANIZATION_CREATE:"Create organization",ORGANIZATION_LIST:"List organizations",ORGANIZATION_GET:"View organization details",ORGANIZATION_UPDATE:"Update organization",ORGANIZATION_DELETE:"Delete organization",ORGANIZATION_SETTINGS_GET:"View organization settings",ORGANIZATION_SETTINGS_UPDATE:"Update organization settings",ORGANIZATION_MEMBER_LIST:"List members",ORGANIZATION_MEMBER_ADD:"Add members",ORGANIZATION_MEMBER_REMOVE:"Remove members",ORGANIZATION_MEMBER_UPDATE_ROLE:"Update member roles",COLLECTION_CONNECTIONS_LIST:"List connections",COLLECTION_CONNECTIONS_GET:"View connection details",COLLECTION_CONNECTIONS_CREATE:"Create connections",COLLECTION_CONNECTIONS_UPDATE:"Update connections",COLLECTION_CONNECTIONS_DELETE:"Delete connections",CONNECTION_TEST:"Test connections",DATABASES_RUN_SQL:"Run SQL queries",COLLECTION_GATEWAY_CREATE:"Create gateways",COLLECTION_GATEWAY_LIST:"List gateways",COLLECTION_GATEWAY_GET:"View gateway details",COLLECTION_GATEWAY_UPDATE:"Update gateways",COLLECTION_GATEWAY_DELETE:"Delete gateways",MONITORING_LOGS_LIST:"List monitoring logs",MONITORING_STATS:"View monitoring statistics",API_KEY_CREATE:"Create API key",API_KEY_LIST:"List API keys",API_KEY_UPDATE:"Update API key",API_KEY_DELETE:"Delete API key",EVENT_PUBLISH:"Publish events",EVENT_SUBSCRIBE:"Subscribe to events",EVENT_UNSUBSCRIBE:"Unsubscribe from events",EVENT_CANCEL:"Cancel recurring events",EVENT_ACK:"Acknowledge event delivery",EVENT_SUBSCRIPTION_LIST:"List event subscriptions",EVENT_SYNC_SUBSCRIPTIONS:"Sync subscriptions to desired state"};function As(){const s={Organizations:[],Connections:[],Gateways:[],Monitoring:[],"API Keys":[],"Event Bus":[]};for(const e of ts)s[e.category]?.push(e);return s}function Is(){return ts.map(s=>({value:s.name,label:Ss[s.name],dangerous:s.dangerous}))}const Be=[{value:"owner",label:"Owner",isBuiltin:!0},{value:"admin",label:"Admin",isBuiltin:!0},{value:"user",label:"User",isBuiltin:!0}];function Ts(s){return s.replace(/-/g," ")}function Os(s){if(!s)return{staticPermissions:[],allowsAllStaticPermissions:!1,connectionIds:[],allowsAllConnections:!1,toolNames:[],allowsAllTools:!1};const e=[];let n=!1;const c=[];let u=!1;const h=new Set;let p=!1;for(const[f,j]of Object.entries(s)){if(f===us.SELF){j.includes("*")?n=!0:e.push(...j);continue}if(f==="*"){if(u=!0,j.includes("*"))p=!0;else for(const w of j)h.add(w);continue}if(c.push(f),j.includes("*"))p=!0;else for(const w of j)h.add(w)}return{staticPermissions:e,allowsAllStaticPermissions:n,connectionIds:c,allowsAllConnections:u,toolNames:Array.from(h),allowsAllTools:p}}function Le(){const{locator:s}=ye(),{data:e,isLoading:n,error:c,refetch:u}=Fe({queryKey:oe.organizationRoles(s),queryFn:async()=>{try{const f=await X.organization.listRoles();return f?.error?(console.error("[useOrganizationRoles] API error:",f.error),[]):f?.data??[]}catch(f){return console.error("[useOrganizationRoles] Fetch error:",f),[]}},staleTime:3e4}),h=Be.map(f=>({role:f.value,label:f.label,isBuiltin:f.isBuiltin}));if(e&&Array.isArray(e))for(const f of e){const j=f.role;if(!j||Be.some(y=>y.value===j))continue;const{staticPermissions:w,allowsAllStaticPermissions:i,connectionIds:O,allowsAllConnections:l,toolNames:b,allowsAllTools:x}=Os(f.permission);h.push({id:f.id,role:j,label:Ts(j),isBuiltin:!1,permission:f.permission??void 0,staticPermissionCount:i?-1:w.length,allowsAllStaticPermissions:i,connectionCount:l?-1:O.length,allowsAllConnections:l,toolCount:x?-1:b.length,allowsAllTools:x})}const p=h.filter(f=>!f.isBuiltin);return{roles:h,customRoles:p,builtinRoles:h.filter(f=>f.isBuiltin),isLoading:n,error:c,refetch:u}}const Rs=Pe({role:Pe({id:ie().optional(),slug:ie().optional(),label:ie()}),allowAllStaticPermissions:ls(),staticPermissions:Se(ie()),toolSet:os(Se(ie())),memberIds:Se(ie())});function ns(s){return s?s.split(" ").map(e=>e[0]).join("").toUpperCase().slice(0,2):"?"}const _s=[{role:"owner",label:"Owner",color:"bg-red-500"},{role:"admin",label:"Admin",color:"bg-blue-500"},{role:"user",label:"User",color:"bg-green-500"}],Ie=["bg-red-500","bg-orange-500","bg-amber-500","bg-yellow-500","bg-lime-500","bg-green-500","bg-emerald-500","bg-teal-500","bg-cyan-500","bg-sky-500","bg-blue-500","bg-indigo-500","bg-violet-500","bg-purple-500","bg-fuchsia-500","bg-pink-500","bg-rose-500"];function Ls(s){if(!s)return"bg-neutral-400";let e=0;for(let c=0;c<s.length;c++){const u=s.charCodeAt(c);e=(e<<5)-e+u,e=e&e}const n=Math.abs(e)%Ie.length;return Ie[n]??Ie[0]}function fe(){return{role:{id:void 0,slug:void 0,label:""},allowAllStaticPermissions:!1,staticPermissions:[],toolSet:{},memberIds:[]}}function Ps(s){const e=ae.c(35),{allowAllStaticPermissions:n,staticPermissions:c,onAllowAllChange:u,onPermissionsChange:h}=s,[p,f]=D.useState(""),j=D.useDeferredValue(p);let w,i,O,l,b;if(e[0]!==n||e[1]!==j||e[2]!==u||e[3]!==h||e[4]!==p||e[5]!==c){const R=As(),m=Is(),a=m.filter(d=>d.label.toLowerCase().includes(j.toLowerCase())),g=d=>{if(c.includes(d))h(c.filter(C=>C!==d));else{const C=[...c,d];C.length===m.length?(u(!0),h([])):h(C)}};O="flex flex-col h-full",e[11]!==p?(l=t.jsx("div",{className:"border-b border-border",children:t.jsx(Ee,{value:p,onChange:f,placeholder:"Search permissions...",className:"border-b-0"})}),e[11]=p,e[12]=l):l=e[12];let A;e[13]!==n||e[14]!==u||e[15]!==h?(A=()=>{u(!n),h([])},e[13]=n,e[14]=u,e[15]=h,e[16]=A):A=e[16];let v;e[17]===Symbol.for("react.memo_cache_sentinel")?(v=t.jsx("span",{className:"text-sm font-medium",children:"All organization permissions"}),e[17]=v):v=e[17];let S;e[18]!==u||e[19]!==h?(S=d=>{u(d),h([])},e[18]=u,e[19]=h,e[20]=S):S=e[20];let o;e[21]!==n||e[22]!==S?(o=t.jsx("div",{onClick:ks,children:t.jsx(Me,{checked:n,onCheckedChange:S})}),e[21]=n,e[22]=S,e[23]=o):o=e[23],e[24]!==A||e[25]!==o?(b=t.jsx("div",{className:"border-b border-border",children:t.jsxs("div",{className:"flex items-center justify-between px-4 py-3 rounded-lg hover:bg-muted/50 cursor-pointer",onClick:A,children:[v,o]})}),e[24]=A,e[25]=o,e[26]=b):b=e[26],w="flex-1 overflow-auto",i=Object.entries(R).map(d=>{const[C,E]=d,M=a.filter(N=>E.some(I=>I.name===N.value));return M.length===0?null:t.jsxs("div",{className:"mb-6 last:mb-0",children:[t.jsx("h4",{className:"text-sm font-medium p-3 pb-1.5 text-muted-foreground/75",children:C}),t.jsx("div",{className:"space-y-1",children:M.map(N=>t.jsxs("div",{className:"flex items-center justify-between gap-3 px-4 py-3 hover:bg-muted/50 cursor-pointer",onClick:()=>{if(n){u(!1);const I=m.map(zs);h(I.filter(L=>L!==N.value))}else g(N.value)},children:[t.jsx("div",{className:"flex-1 min-w-0",children:t.jsx("span",{className:"text-sm",children:N.label})}),t.jsx("div",{onClick:Ds,children:t.jsx(Me,{checked:n||c.includes(N.value),onCheckedChange:()=>{if(n){u(!1);const I=m.map(Ms);h(I.filter(L=>L!==N.value))}else g(N.value)}})})]},N.value))})]},C)}),e[0]=n,e[1]=j,e[2]=u,e[3]=h,e[4]=p,e[5]=c,e[6]=w,e[7]=i,e[8]=O,e[9]=l,e[10]=b}else w=e[6],i=e[7],O=e[8],l=e[9],b=e[10];let x;e[27]!==w||e[28]!==i?(x=t.jsx("div",{className:w,children:i}),e[27]=w,e[28]=i,e[29]=x):x=e[29];let y;return e[30]!==O||e[31]!==l||e[32]!==b||e[33]!==x?(y=t.jsxs("div",{className:O,children:[l,b,x]}),e[30]=O,e[31]=l,e[32]=b,e[33]=x,e[34]=y):y=e[34],y}function Ms(s){return s.value}function Ds(s){return s.stopPropagation()}function zs(s){return s.value}function ks(s){return s.stopPropagation()}function Bs(s){const e=ae.c(56),{open:n,onOpenChange:c,selectedMemberIds:u,onAddMembers:h}=s,[p,f]=D.useState(""),j=D.useDeferredValue(p);let w;e[0]===Symbol.for("react.memo_cache_sentinel")?(w=[],e[0]=w):w=e[0];const[i,O]=D.useState(w),{data:l}=_e();let b,x,y,R,m,a,g,A,v,S,o;if(e[1]!==l?.data?.members||e[2]!==j||e[3]!==h||e[4]!==c||e[5]!==n||e[6]!==i||e[7]!==p||e[8]!==u){const U=l?.data?.members??[];let K;e[20]!==j?(K=_=>{const z=j.toLowerCase();return _.user?.name?.toLowerCase().includes(z)||_.user?.email?.toLowerCase().includes(z)},e[20]=j,e[21]=K):K=e[21];const se=U.filter(K),le=Us;let ee;e[22]!==u?(ee=_=>u.includes(_),e[22]=u,e[23]=ee):ee=e[23];const ce=ee;let te;e[24]!==i?(te=_=>{i.includes(_)?O(i.filter(z=>z!==_)):O([...i,_])},e[24]=i,e[25]=te):te=e[25];const r=te;let P;e[26]!==h||e[27]!==c||e[28]!==i?(P=()=>{h(i),O([]),c(!1)},e[26]=h,e[27]=c,e[28]=i,e[29]=P):P=e[29],y=P,x=he,S=n,o=c,b=pe,A="sm:max-w-md p-0 overflow-hidden",e[30]===Symbol.for("react.memo_cache_sentinel")?(v=t.jsxs(xe,{className:"px-6 pt-6",children:[t.jsx(be,{children:"Add Members to Role"}),t.jsx(Ce,{children:"Select members to add to this role."})]}),e[30]=v):v=e[30],a="flex flex-col h-80",e[31]!==p?(g=t.jsx(Ee,{value:p,onChange:f,placeholder:"Search members...",className:"border-b border-t-0 border-x-0 rounded-none"}),e[31]=p,e[32]=g):g=e[32],R="flex-1 overflow-auto",m=se.length===0?t.jsx("div",{className:"flex items-center justify-center h-full px-6",children:t.jsx("p",{className:"text-sm text-muted-foreground",children:p?"No members found":"No members available"})}):t.jsx("div",{className:"px-6 py-2 space-y-1",children:se.map(_=>{const z=le(_),V=ce(_.id),G=i.includes(_.id);return t.jsxs("label",{className:J("flex items-center gap-3 p-2 rounded-lg",!z||V?"opacity-50 cursor-not-allowed":"cursor-pointer hover:bg-muted/50"),children:[t.jsx(fs,{checked:G||V,onCheckedChange:()=>{z&&!V&&r(_.id)},disabled:!z||V}),t.jsx(we,{url:_.user?.image??void 0,fallback:ns(_.user?.name),shape:"circle",size:"sm"}),t.jsxs("div",{className:"flex-1 min-w-0",children:[t.jsx("p",{className:"text-sm font-medium truncate",children:_.user?.name||"Unknown"}),t.jsx("p",{className:"text-xs text-muted-foreground truncate",children:_.user?.email})]}),!z&&t.jsx(ge,{variant:"secondary",className:"shrink-0",children:"Owner"}),V&&z&&t.jsx(ge,{variant:"outline",className:"shrink-0",children:"Added"})]},_.id)})}),e[1]=l?.data?.members,e[2]=j,e[3]=h,e[4]=c,e[5]=n,e[6]=i,e[7]=p,e[8]=u,e[9]=b,e[10]=x,e[11]=y,e[12]=R,e[13]=m,e[14]=a,e[15]=g,e[16]=A,e[17]=v,e[18]=S,e[19]=o}else b=e[9],x=e[10],y=e[11],R=e[12],m=e[13],a=e[14],g=e[15],A=e[16],v=e[17],S=e[18],o=e[19];let d;e[33]!==R||e[34]!==m?(d=t.jsx("div",{className:R,children:m}),e[33]=R,e[34]=m,e[35]=d):d=e[35];let C;e[36]!==d||e[37]!==a||e[38]!==g?(C=t.jsxs("div",{className:a,children:[g,d]}),e[36]=d,e[37]=a,e[38]=g,e[39]=C):C=e[39];let E;e[40]===Symbol.for("react.memo_cache_sentinel")?(E=t.jsx(je,{children:"Cancel"}),e[40]=E):E=e[40];const M=i.length===0,N=i.length>0&&`(${i.length})`;let I;e[41]!==y||e[42]!==M||e[43]!==N?(I=t.jsxs(Ne,{className:"px-6 pb-6",children:[E,t.jsxs(ve,{onClick:y,disabled:M,children:["Add ",N]})]}),e[41]=y,e[42]=M,e[43]=N,e[44]=I):I=e[44];let L;e[45]!==b||e[46]!==C||e[47]!==I||e[48]!==A||e[49]!==v?(L=t.jsxs(b,{className:A,children:[v,C,I]}),e[45]=b,e[46]=C,e[47]=I,e[48]=A,e[49]=v,e[50]=L):L=e[50];let T;return e[51]!==x||e[52]!==L||e[53]!==S||e[54]!==o?(T=t.jsx(x,{open:S,onOpenChange:o,children:L}),e[51]=x,e[52]=L,e[53]=S,e[54]=o,e[55]=T):T=e[55],T}function Us(s){return s.role!=="owner"}function Gs(s){const e=ae.c(37),{memberIds:n,onMemberIdsChange:c}=s,[u,h]=D.useState(""),p=D.useDeferredValue(u),[f,j]=D.useState(!1),{data:w}=_e();let i,O,l,b,x;if(e[0]!==w?.data?.members||e[1]!==p||e[2]!==n||e[3]!==c||e[4]!==u){const a=w?.data?.members??[];let g;e[10]!==n?(g=N=>n.includes(N.id),e[10]=n,e[11]=g):g=e[11];const A=a.filter(g);let v;e[12]!==p?(v=N=>{const I=p.toLowerCase();return N.user?.name?.toLowerCase().includes(I)||N.user?.email?.toLowerCase().includes(I)},e[12]=p,e[13]=v):v=e[13];const S=A.filter(v);let o;e[14]!==n||e[15]!==c?(o=N=>{c(n.filter(I=>I!==N))},e[14]=n,e[15]=c,e[16]=o):o=e[16];const d=o;let C;e[17]!==n||e[18]!==c?(C=N=>{c([...n,...N])},e[17]=n,e[18]=c,e[19]=C):C=e[19],i=C,b="flex flex-col h-full";let E;e[20]!==u?(E=t.jsx(Ee,{value:u,onChange:h,placeholder:"Search members...",className:"flex-1 border-b-0"}),e[20]=u,e[21]=E):E=e[21];let M;e[22]===Symbol.for("react.memo_cache_sentinel")?(M=t.jsx("div",{className:"pr-4",children:t.jsxs(Y,{variant:"outline",size:"sm",onClick:()=>j(!0),children:[t.jsx(q,{name:"add",size:16}),"Add Member"]})}),e[22]=M):M=e[22],e[23]!==E?(x=t.jsxs("div",{className:"flex items-center border-b border-border",children:[E,M]}),e[23]=E,e[24]=x):x=e[24],O="flex-1 overflow-auto",l=A.length===0?t.jsx("div",{className:"flex items-center justify-center h-full",children:t.jsxs("div",{className:"text-center",children:[t.jsx("h3",{className:"text-lg font-medium mb-2",children:"No members"}),t.jsx("p",{className:"text-sm text-muted-foreground",children:"Add members to this role to grant them the configured permissions."})]})}):S.length===0?t.jsx("div",{className:"flex items-center justify-center h-full",children:t.jsxs("p",{className:"text-sm text-muted-foreground",children:['No members match "',u,'"']})}):t.jsx("div",{className:"p-4 space-y-2",children:S.map(N=>t.jsxs("div",{className:"flex items-center gap-3 p-3 rounded-lg bg-muted/30",children:[t.jsx(we,{url:N.user?.image??void 0,fallback:ns(N.user?.name),shape:"circle",size:"sm"}),t.jsxs("div",{className:"flex-1 min-w-0",children:[t.jsx("p",{className:"text-sm font-medium truncate",children:N.user?.name||"Unknown"}),t.jsx("p",{className:"text-xs text-muted-foreground truncate",children:N.user?.email})]}),t.jsx(Y,{variant:"ghost",size:"sm",onClick:()=>d(N.id),children:t.jsx(q,{name:"close",size:16})})]},N.id))}),e[0]=w?.data?.members,e[1]=p,e[2]=n,e[3]=c,e[4]=u,e[5]=i,e[6]=O,e[7]=l,e[8]=b,e[9]=x}else i=e[5],O=e[6],l=e[7],b=e[8],x=e[9];let y;e[25]!==O||e[26]!==l?(y=t.jsx("div",{className:O,children:l}),e[25]=O,e[26]=l,e[27]=y):y=e[27];let R;e[28]!==f||e[29]!==i||e[30]!==n?(R=t.jsx(Bs,{open:f,onOpenChange:j,selectedMemberIds:n,onAddMembers:i}),e[28]=f,e[29]=i,e[30]=n,e[31]=R):R=e[31];let m;return e[32]!==b||e[33]!==x||e[34]!==y||e[35]!==R?(m=t.jsxs("div",{className:b,children:[x,y,R]}),e[32]=b,e[33]=x,e[34]=y,e[35]=R,e[36]=m):m=e[36],m}function Vs(s){const e=ae.c(3);let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=t.jsx("div",{className:"flex items-center justify-center h-full",children:t.jsx(q,{name:"progress_activity",size:24,className:"animate-spin text-muted-foreground"})}),e[0]=n):n=e[0];let c;return e[1]!==s?(c=t.jsx(D.Suspense,{fallback:n,children:t.jsx(Gs,{...s})}),e[1]=s,e[2]=c):c=e[2],c}function $s({trigger:s,onSuccess:e}){const[n,c]=D.useState(!1),[u,h]=D.useState("mcp"),{locator:p}=ye(),f=Re(),j=ms()??[],{customRoles:w,refetch:i}=Le(),{data:O}=Fe({queryKey:oe.members(p),queryFn:()=>X.organization.listMembers()}),l=$e({resolver:is(Rs),defaultValues:fe()}),b=l.formState.isValid,x=l.formState.isDirty,y=!l.watch("role.id"),[R,m]=D.useState(null),[a,g]=D.useState(null),[A,v]=D.useState(!1),[S,o]=D.useState(null),d=r=>{const P=r.permission||{},_=P.self||[],z=_.includes("*"),V=z?[]:_.filter(B=>B!=="*"),G={};for(const[B,F]of Object.entries(P))if(B!=="self")if(B==="*")for(const H of j)F.includes("*")?G[H.id]=H.tools?.map(re=>re.name)??[]:G[H.id]=F;else{const H=j.find(re=>re.id===B);H&&(F.includes("*")?G[B]=H.tools?.map(re=>re.name)??[]:G[B]=F)}const ne=(O?.data?.members??[]).filter(B=>B.role===r.role).map(B=>B.id);return{role:{id:r.id,slug:r.role,label:r.label},allowAllStaticPermissions:z,staticPermissions:V,toolSet:G,memberIds:ne}},C=r=>{const P=d(r);l.reset(P),m(r.id??null)},E=()=>{l.reset(fe()),m(null)},M=r=>{x&&b?(o(()=>()=>C(r)),v(!0)):C(r)},N=async()=>{x&&b&&await le(),E()},I=r=>{if(!r&&l.formState.isDirty&&b){o(()=>()=>{c(!1),l.reset(fe())}),v(!0);return}if(c(r),!r)l.reset(fe());else{const P=w[0];P?C(P):E()}},L=()=>{v(!1),S&&(S(),o(null))},T=r=>{const P={};r.allowAllStaticPermissions?P.self=["*"]:r.staticPermissions.length>0&&(P.self=r.staticPermissions);for(const[_,z]of Object.entries(r.toolSet))if(z.length>0){const G=j.find(W=>W.id===_)?.tools?.map(W=>W.name)??[];G.length>0&&G.every(W=>z.includes(W))?P[_]=["*"]:P[_]=z}return P},U=ue({mutationFn:async r=>{const P=T(r),_=r.role.label.toLowerCase().replace(/\s+/g,"-");if(r.role.id){const z=await X.organization.updateRole({roleId:r.role.id,data:{permission:P}});if(z?.error)throw new Error(z.error.message);const G=(O?.data?.members??[]).filter(B=>B.role===r.role.slug).map(B=>B.id),W=r.memberIds.filter(B=>!G.includes(B)),ne=G.filter(B=>!r.memberIds.includes(B));for(const B of W){const F=await X.organization.updateMemberRole({memberId:B,role:[r.role.slug]});if(F?.error)throw new Error(F.error.message)}for(const B of ne){const F=await X.organization.updateMemberRole({memberId:B,role:["user"]});if(F?.error)throw new Error(F.error.message)}return r}else{const z=await X.organization.createRole({role:_,permission:P});if(z?.error)throw new Error(z.error.message);for(const V of r.memberIds){const G=await X.organization.updateMemberRole({memberId:V,role:[_]});if(G?.error)throw new Error(G.error.message)}return{...r,role:{...r.role,id:z.data?.roleData?.id,slug:_}}}},onSuccess:(r,P)=>{f.invalidateQueries({queryKey:oe.members(p)}),f.invalidateQueries({queryKey:oe.organizationRoles(p)});const _=!P.role.id;Q.success(_?"Role created successfully!":"Role updated successfully!"),i(),l.reset(r),r.role.id&&m(r.role.id),e?.()},onError:r=>{Q.error(r instanceof Error?r.message:"Failed to save role")}}),K=ue({mutationFn:async r=>{const P=await X.organization.deleteRole({roleId:r});if(P?.error)throw new Error(P.error.message);return P?.data},onSuccess:()=>{if(f.invalidateQueries({queryKey:oe.members(p)}),f.invalidateQueries({queryKey:oe.organizationRoles(p)}),Q.success("Role deleted successfully!"),i(),a?.id===R){const r=w.filter(P=>P.id!==a?.id);r[0]?C(r[0]):E()}},onError:r=>{Q.error(r instanceof Error?r.message:"Failed to delete role")}}),se=U.isPending||K.isPending,le=async()=>{const r=l.getValues();if(!r.role.label.trim()){Q.error("Role name is required"),l.setFocus("role.label");return}await U.mutateAsync(r)},ee=l.handleSubmit(r=>{if(!r.role.label.trim()){Q.error("Role name is required"),l.setFocus("role.label");return}U.mutate(r)}),ce=r=>{r.id&&g({id:r.id,label:r.label})},te=()=>{a?.id&&K.mutate(a.id),g(null)};return t.jsxs(Ke,{open:n,onOpenChange:I,children:[t.jsx(Ye,{asChild:!0,children:s}),t.jsx(Qe,{className:"sm:max-w-5xl h-[80vh] max-h-[80vh] flex flex-col p-0 overflow-hidden w-[95vw]",children:t.jsxs("div",{className:"flex-1 flex overflow-hidden min-h-0 flex-col sm:flex-row",children:[t.jsxs("div",{className:"w-full sm:w-64 sm:border-r border-b sm:border-b-0 border-border flex flex-col bg-background sm:h-full max-h-[40vh] sm:max-h-full",children:[t.jsx("div",{className:"flex-1 overflow-auto px-3.5 py-3.5 pt-3.5",children:t.jsxs("div",{className:"flex flex-col gap-1",children:[_s.map(r=>t.jsxs("div",{className:"flex items-center gap-2 px-2 py-1.5 rounded-lg overflow-hidden opacity-50 cursor-not-allowed",children:[t.jsx("div",{className:J("shrink-0 size-3 rounded-full",r.color)}),t.jsx("p",{className:"text-sm font-medium truncate flex-1",children:r.label}),t.jsx(q,{name:"lock",size:14,className:"text-muted-foreground shrink-0"})]},r.role)),w.map(r=>{const P=R===r.id;return t.jsxs("div",{className:J("group flex items-center gap-2 px-2 py-1.5 rounded-lg overflow-hidden transition-colors cursor-pointer",P?"bg-accent":"hover:bg-muted/50"),onClick:()=>M(r),children:[t.jsx("div",{className:J("shrink-0 size-3 rounded-full",Ls(r.label))}),t.jsx("p",{className:"text-sm font-medium truncate flex-1",children:r.label}),w.length+(y?1:0)>1&&t.jsxs(Ze,{children:[t.jsx(qe,{asChild:!0,children:t.jsx(Y,{variant:"ghost",size:"icon",className:J("size-5 shrink-0 transition-opacity opacity-0 pointer-events-none","group-hover:opacity-100 group-hover:pointer-events-auto",P&&"opacity-100 pointer-events-auto"),onClick:_=>_.stopPropagation(),children:t.jsx(q,{name:"more_horiz",size:14})})}),t.jsx(We,{align:"end",children:t.jsxs(Oe,{className:"text-destructive",onClick:_=>{_.stopPropagation(),ce(r)},children:[t.jsx(q,{name:"delete",size:16}),"Delete"]})})]})]},r.id)}),y&&t.jsxs("div",{className:"flex items-center gap-2 px-2 py-1.5 rounded-lg overflow-hidden bg-accent",children:[t.jsx("div",{className:"shrink-0 size-3 rounded-full bg-neutral-400"}),t.jsx(js,{...l.register("role.label"),placeholder:"Enter role name",className:"flex-1 text-sm font-medium border-0 shadow-none h-auto px-0 py-0 focus-visible:ring-0 bg-transparent",autoFocus:!0}),t.jsx(ge,{variant:"secondary",className:"shrink-0 text-xs px-1.5 py-0",children:"New"})]})]})}),t.jsx("div",{className:"px-3.5 pb-3.5",children:t.jsxs(Y,{variant:"outline",size:"default",onClick:N,disabled:se||x,className:"w-full h-10",children:[t.jsx(q,{name:"add",size:16}),"Create new role"]})})]}),t.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[t.jsxs("div",{className:"h-12 border-b border-border px-4 py-3.5 flex items-center gap-2 shrink-0",children:[t.jsx(Y,{variant:"outline",size:"sm",onClick:()=>h("mcp"),className:J("h-8 rounded-lg px-2 py-1",u==="mcp"?"bg-muted border-input text-foreground":"border-input text-muted-foreground bg-transparent"),children:"MCP Permissions"}),t.jsx(Y,{variant:"outline",size:"sm",onClick:()=>h("org"),className:J("h-8 rounded-lg px-2 py-1",u==="org"?"bg-muted border-input text-foreground":"border-input text-muted-foreground bg-transparent"),children:"Organization Permissions"}),t.jsx(Y,{variant:"outline",size:"sm",onClick:()=>h("members"),className:J("h-8 rounded-lg px-2 py-1",u==="members"?"bg-muted border-input text-foreground":"border-input text-muted-foreground bg-transparent"),children:"Members"})]}),t.jsxs("div",{className:"flex-1 overflow-hidden min-h-0",children:[u==="mcp"&&t.jsx(ds,{toolSet:l.watch("toolSet"),onToolSetChange:r=>l.setValue("toolSet",r,{shouldDirty:!0})}),u==="org"&&t.jsx(Ps,{allowAllStaticPermissions:l.watch("allowAllStaticPermissions"),staticPermissions:l.watch("staticPermissions"),onAllowAllChange:r=>l.setValue("allowAllStaticPermissions",r,{shouldDirty:!0}),onPermissionsChange:r=>l.setValue("staticPermissions",r,{shouldDirty:!0})}),u==="members"&&t.jsx(Vs,{memberIds:l.watch("memberIds"),onMemberIdsChange:r=>l.setValue("memberIds",r,{shouldDirty:!0})})]}),t.jsxs("div",{className:"border-t border-border px-5 py-5 flex items-center justify-end gap-2.5 shrink-0",children:[t.jsx(Y,{variant:"outline",onClick:()=>I(!1),disabled:se,className:"h-10",children:"Cancel"}),t.jsx(Y,{onClick:ee,disabled:se||!b||!l.formState.isDirty,className:"h-10",children:U.isPending?"Saving...":y?"Create Role":"Save Changes"})]})]})]})}),t.jsx(he,{open:a!==null,onOpenChange:r=>!r&&g(null),children:t.jsxs(pe,{children:[t.jsxs(xe,{children:[t.jsx(be,{children:"Delete Role"}),t.jsxs(Ce,{children:['Are you sure you want to delete the "',a?.label,'" role? This action cannot be undone.']})]}),t.jsxs(Ne,{children:[t.jsx(je,{children:"Cancel"}),t.jsx(ve,{onClick:te,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),t.jsx(he,{open:A,onOpenChange:v,children:t.jsxs(pe,{children:[t.jsxs(xe,{children:[t.jsx(be,{children:"Discard Changes"}),t.jsx(Ce,{children:"You have unsaved changes. Are you sure you want to discard them?"})]}),t.jsxs(Ne,{children:[t.jsx(je,{onClick:()=>o(null),children:"Keep Editing"}),t.jsx(ve,{onClick:L,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Discard"})]})]})})]})}const Fs=ie().email("Invalid email address");function Ks({emails:s,onEmailsChange:e,disabled:n,placeholder:c="Emails, comma separated",validation:u,onToast:h,badgeClassName:p}){const[f,j]=D.useState(""),[w,i]=D.useState(new Map),O=D.useRef(null),l=D.useCallback(o=>{const d=o.trim().toLowerCase();return u?.validate?u.validate(d):u?.currentUserEmail&&d===u.currentUserEmail.toLowerCase()?"self":Fs.safeParse(d).success?"valid":"invalid"},[u]),b=D.useCallback(o=>{const d=o.trim().toLowerCase();if(!d||s.includes(d))return!1;const C=l(d),E=[...s,d];return e(E),i(M=>{const N=new Map(M);return N.set(d,C),N}),!0},[s,e,l]),x=D.useCallback(o=>{const d=s.filter(C=>C!==o);e(d),i(C=>{const E=new Map(C);return E.delete(o),E})},[s,e]),y=D.useCallback(o=>{const d=o.split(/[,;\n\r\t|]/).map(I=>I.trim()).filter(I=>I.length>0);let C=0,E=0;const M=[],N=new Map;if(d.forEach(I=>{E++;const L=I.trim().toLowerCase();if(s.includes(L)||M.includes(L))return;const T=l(L);M.push(L),N.set(L,T),C++}),M.length>0){const I=[...s,...M];e(I),i(L=>{const T=new Map(L);return N.forEach((U,K)=>{T.set(K,U)}),T})}return E>0&&(j(""),C>0&&h?h(`Added ${C} email${C>1?"s":""}`,"success"):E>C&&h&&h(`${E-C} email${E-C>1?"s were":" was"} already added or invalid`,"info")),C},[s,e,l,h]),R=o=>{const d=o.target.value;/[,;\n\r\t|]/.test(d)?y(d):j(d)},m=o=>{if(o.key==="Enter"&&!o.shiftKey)o.preventDefault(),f.trim()&&b(f)&&j("");else if(o.key==="Backspace"&&!f&&s.length>0){const d=s[s.length-1];d&&x(d)}},a=o=>{const d=o.clipboardData.getData("text");d.trim()&&(o.preventDefault(),/[,;\n\r\t|]/.test(d)?y(d):b(d.trim())||j(d.trim()))},g=D.useCallback(()=>{const o=O.current;o&&(o.style.height="auto",o.style.height=Math.max(96,Math.min(200,o.scrollHeight))+"px")},[]);D.useEffect(()=>{g()},[f,g]);const A=D.useMemo(()=>s.filter(o=>w.get(o)==="invalid"),[s,w]),v=D.useMemo(()=>s.filter(o=>w.get(o)==="self"),[s,w]),S=o=>{switch(w.get(o)){case"invalid":case"self":return"destructive";default:return"secondary"}};return t.jsxs("div",{className:"space-y-2",children:[t.jsx("div",{className:J("min-h-[96px] w-full rounded-xl border border-input bg-background px-3 py-2 text-sm transition-[color,box-shadow]","focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",n&&"opacity-50 cursor-not-allowed"),onClick:()=>O.current?.focus(),children:t.jsxs("div",{className:"flex flex-wrap gap-1 items-start",children:[s.map(o=>t.jsxs(ge,{variant:S(o),className:J("flex items-center gap-1 max-w-xs",p||"px-1 py-0.5"),children:[t.jsx("span",{className:"truncate",children:o}),t.jsx(Y,{type:"button",variant:"ghost",size:"icon",className:J("h-4 w-4 rounded-full transition-colors",S(o)==="destructive"?"text-destructive hover:text-foreground":"text-muted-foreground hover:text-foreground"),onClick:d=>{d.stopPropagation(),x(o)},disabled:n,children:t.jsx(q,{name:"close",size:12})})]},o)),t.jsx("textarea",{ref:O,value:f,onChange:R,onKeyDown:m,onPaste:a,className:"flex-1 min-w-[120px] bg-transparent border-none outline-none resize-none placeholder:text-muted-foreground overflow-hidden",placeholder:s.length===0?c:"Add more emails...",disabled:n,rows:4,style:{minHeight:"96px",maxHeight:"200px"}})]})}),v.length>0&&t.jsxs("div",{className:"text-sm text-destructive",children:["You're not able to send an invite to yourself: ",v.join(", ")]}),A.length>0&&t.jsxs("div",{className:"text-sm text-destructive",children:["Invalid email format: ",A.join(", ")]})]})}const Ys=ie().email("Invalid email address");function Qs({trigger:s}){const[e,n]=D.useState(!1),{locator:c}=ye(),u=Re(),{data:h}=X.useSession(),p=h?.user?.email,{roles:f,isLoading:j}=Le(),w=f.filter(m=>m.role!=="owner"),i=$e({mode:"onChange",defaultValues:{emails:[],role:"user"}}),O=i.watch("emails"),l=i.watch("role"),b=O.filter(m=>{const a=m.trim().toLowerCase(),g=Ys.safeParse(a).success,A=!p||a!==p.toLowerCase();return g&&A}),x=ue({mutationFn:async m=>{if(!m.role)throw new Error("Please select a role");const a=await Promise.allSettled(b.map(async A=>{const v=await X.organization.inviteMember({email:A,role:m.role});if(v.error)throw new Error(v.error.message);return v.data})),g=a.filter(A=>A.status==="rejected");if(g.length>0)throw new Error(`Failed to invite ${g.length} member${g.length>1?"s":""}`);return a},onSuccess:()=>{u.invalidateQueries({queryKey:oe.members(c)}),Q.success(b.length===1?"Member invited successfully!":`${b.length} members invited successfully!`),i.reset({emails:[],role:"user"}),n(!1)},onError:m=>{Q.error(m instanceof Error?m.message:"Failed to invite members")}}),y=m=>{if(b.length===0){Q.error("Please add at least one valid email address");return}if(!m.role){Q.error("Please select a role");return}x.mutate(m)},R=b.length>0&&!!l;return t.jsxs(Ke,{open:e,onOpenChange:n,children:[t.jsx(Ye,{asChild:!0,children:s}),t.jsxs(Qe,{className:"sm:max-w-lg",children:[t.jsx(gs,{children:t.jsx(hs,{children:"Invite members"})}),t.jsx(Es,{...i,children:t.jsxs("form",{onSubmit:i.handleSubmit(y),className:"space-y-4",children:[t.jsx(De,{control:i.control,name:"emails",render:({field:m})=>t.jsx(ze,{children:t.jsx(ke,{children:t.jsx(Ks,{emails:m.value??[],onEmailsChange:m.onChange,disabled:x.isPending,placeholder:"Emails, comma separated",validation:{currentUserEmail:p},onToast:(a,g)=>Q[g](a)})})})}),t.jsx(De,{control:i.control,name:"role",render:({field:m})=>t.jsxs(ze,{children:[t.jsx(ke,{children:t.jsxs(He,{value:m.value,onValueChange:m.onChange,disabled:x.isPending||j,children:[t.jsx(Je,{className:"w-full",children:t.jsx(Xe,{placeholder:"Select a role"})}),t.jsx(es,{children:w.map(a=>{const g=[];return a.isBuiltin||(a.allowsAllStaticPermissions?g.push("Full org access"):a.staticPermissionCount&&a.staticPermissionCount>0&&g.push(`${a.staticPermissionCount} org perm${a.staticPermissionCount!==1?"s":""}`),a.allowsAllConnections?g.push("All connections"):a.connectionCount&&a.connectionCount>0&&g.push(`${a.connectionCount} connection${a.connectionCount!==1?"s":""}`),(a.connectionCount!==0||a.allowsAllConnections)&&(a.allowsAllTools?g.push("all tools"):a.toolCount&&a.toolCount>0&&g.push(`${a.toolCount} tool${a.toolCount!==1?"s":""}`))),t.jsx(ss,{value:a.role,children:t.jsxs("div",{className:"flex flex-col",children:[t.jsx("span",{children:a.label}),!a.isBuiltin&&g.length>0&&t.jsx("span",{className:"text-xs text-muted-foreground",children:g.join(", ")})]})},a.role)})})]})}),t.jsx(ys,{})]})}),t.jsxs(ps,{children:[t.jsx(Y,{variant:"outline",onClick:()=>{i.reset({emails:[],role:"user"}),n(!1)},type:"button",disabled:x.isPending,children:"Cancel"}),t.jsx(Y,{type:"submit",disabled:x.isPending||!R,children:x.isPending?"Inviting...":`Invite ${b.length||0} Member${b.length!==1?"s":""}`})]})]})})]})]})}const Ue=["bg-neutral-400","bg-red-500","bg-orange-500","bg-amber-500","bg-yellow-500","bg-lime-500","bg-green-500","bg-emerald-500","bg-teal-500","bg-cyan-500","bg-sky-500","bg-blue-500","bg-indigo-500","bg-violet-500","bg-purple-500","bg-fuchsia-500","bg-pink-500","bg-rose-500","bg-slate-500"],Zs={owner:"bg-red-500",admin:"bg-blue-500",user:"bg-green-500"};function rs(s){return s?s.split(" ").map(e=>e[0]).join("").toUpperCase().slice(0,2):"?"}function qs(s){const e=new Map;for(const[n,c]of Object.entries(Zs))e.set(n,c);for(let n=0;n<s.length;n++){const c=s[n];c&&!e.has(c.role)&&e.set(c.role,Ue[n%Ue.length]??"bg-neutral-400")}return e}function Ws(s){return new Date(s).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}function Ge(s){const e=ae.c(50),{role:n,memberId:c,isOwner:u,roleColorMap:h,selectableRoles:p,onRoleChange:f,size:j,className:w}=s,i=j===void 0?"xs":j;let O,l,b,x,y,R,m,a,g,A;if(e[0]!==w||e[1]!==u||e[2]!==c||e[3]!==f||e[4]!==n||e[5]!==h||e[6]!==i){const I=h.get(n)??"bg-neutral-400";b=He,a=n,e[17]!==c||e[18]!==f?(g=L=>f(c,L),e[17]=c,e[18]=f,e[19]=g):g=e[19],A=u,l=Je,R=i,m=w,O=Xe,y="flex items-center gap-2 min-w-0",x=J("size-2 rounded-full shrink-0",I),e[0]=w,e[1]=u,e[2]=c,e[3]=f,e[4]=n,e[5]=h,e[6]=i,e[7]=O,e[8]=l,e[9]=b,e[10]=x,e[11]=y,e[12]=R,e[13]=m,e[14]=a,e[15]=g,e[16]=A}else O=e[7],l=e[8],b=e[9],x=e[10],y=e[11],R=e[12],m=e[13],a=e[14],g=e[15],A=e[16];let v;e[20]!==x?(v=t.jsx("div",{className:x}),e[20]=x,e[21]=v):v=e[21];let S;e[22]!==n?(S=t.jsx("span",{className:"capitalize truncate",children:n}),e[22]=n,e[23]=S):S=e[23];let o;e[24]!==S||e[25]!==y||e[26]!==v?(o=t.jsxs("div",{className:y,children:[v,S]}),e[24]=S,e[25]=y,e[26]=v,e[27]=o):o=e[27];let d;e[28]!==O||e[29]!==o?(d=t.jsx(O,{children:o}),e[28]=O,e[29]=o,e[30]=d):d=e[30];let C;e[31]!==l||e[32]!==d||e[33]!==R||e[34]!==m?(C=t.jsx(l,{size:R,className:m,children:d}),e[31]=l,e[32]=d,e[33]=R,e[34]=m,e[35]=C):C=e[35];let E;if(e[36]!==h||e[37]!==p){let I;e[39]!==h?(I=L=>{const T=h.get(L.role)??"bg-neutral-400";return t.jsx(ss,{value:L.role,children:t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx("div",{className:J("size-3 rounded-full",T)}),t.jsx("span",{className:"capitalize",children:L.label})]})},L.role)},e[39]=h,e[40]=I):I=e[40],E=p.map(I),e[36]=h,e[37]=p,e[38]=E}else E=e[38];let M;e[41]!==E?(M=t.jsx(es,{children:E}),e[41]=E,e[42]=M):M=e[42];let N;return e[43]!==b||e[44]!==C||e[45]!==M||e[46]!==a||e[47]!==g||e[48]!==A?(N=t.jsxs(b,{value:a,onValueChange:g,disabled:A,children:[C,M]}),e[43]=b,e[44]=C,e[45]=M,e[46]=a,e[47]=g,e[48]=A,e[49]=N):N=e[49],N}function Ve(s){const e=ae.c(51),{member:n,roles:c,onChangeRole:u,onRemove:h,isUpdating:p}=s,f=p===void 0?!1:p,j=n.role==="owner";let w,i,O,l,b,x,y,R,m;if(e[0]!==j||e[1]!==f||e[2]!==n.id||e[3]!==n.role||e[4]!==u||e[5]!==c){let E;e[15]!==n.role?(E=T=>T.role!==n.role&&T.role!=="owner",e[15]=n.role,e[16]=E):E=e[16];const M=c.filter(E);l=Ze;let N;e[17]===Symbol.for("react.memo_cache_sentinel")?(N=t.jsx(q,{name:"more_vert",size:20}),e[17]=N):N=e[17],e[18]!==j?(m=t.jsx(qe,{asChild:!0,children:t.jsx(Y,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",disabled:j,onClick:Js,children:N})}),e[18]=j,e[19]=m):m=e[19],O=We,y="end",R=Hs,i=xs;let I;e[20]===Symbol.for("react.memo_cache_sentinel")?(I=t.jsx(q,{name:"swap_horiz",size:16}),e[20]=I):I=e[20],e[21]!==f?(x=t.jsxs(bs,{disabled:f,children:[I,"Change Role"]}),e[21]=f,e[22]=x):x=e[22],w=Cs;let L;e[23]!==f||e[24]!==n.id||e[25]!==u?(L=T=>{const U=[];return T.isBuiltin||(T.allowsAllStaticPermissions?U.push("Full org access"):T.staticPermissionCount&&T.staticPermissionCount>0&&U.push(`${T.staticPermissionCount} org perm${T.staticPermissionCount!==1?"s":""}`),T.allowsAllConnections?U.push("All connections"):T.connectionCount&&T.connectionCount>0&&U.push(`${T.connectionCount} connection${T.connectionCount!==1?"s":""}`),(T.connectionCount!==0||T.allowsAllConnections)&&(T.allowsAllTools?U.push("all tools"):T.toolCount&&T.toolCount>0&&U.push(`${T.toolCount} tool${T.toolCount!==1?"s":""}`))),t.jsxs(Oe,{onClick:K=>{K.stopPropagation(),u(n.id,T.role)},disabled:f,children:[t.jsx(q,{name:T.isBuiltin?"shield":"key",size:16}),t.jsxs("span",{className:"flex flex-col",children:[t.jsx("span",{children:T.label}),!T.isBuiltin&&U.length>0&&t.jsx("span",{className:"text-xs text-muted-foreground",children:U.join(", ")})]})]},T.role)},e[23]=f,e[24]=n.id,e[25]=u,e[26]=L):L=e[26],b=M.map(L),e[0]=j,e[1]=f,e[2]=n.id,e[3]=n.role,e[4]=u,e[5]=c,e[6]=w,e[7]=i,e[8]=O,e[9]=l,e[10]=b,e[11]=x,e[12]=y,e[13]=R,e[14]=m}else w=e[6],i=e[7],O=e[8],l=e[9],b=e[10],x=e[11],y=e[12],R=e[13],m=e[14];let a;e[27]!==w||e[28]!==b?(a=t.jsx(w,{children:b}),e[27]=w,e[28]=b,e[29]=a):a=e[29];let g;e[30]!==i||e[31]!==x||e[32]!==a?(g=t.jsxs(i,{children:[x,a]}),e[30]=i,e[31]=x,e[32]=a,e[33]=g):g=e[33];let A;e[34]===Symbol.for("react.memo_cache_sentinel")?(A=t.jsx(Ns,{}),e[34]=A):A=e[34];let v;e[35]!==n.id||e[36]!==h?(v=E=>{E.stopPropagation(),h(n.id)},e[35]=n.id,e[36]=h,e[37]=v):v=e[37];let S;e[38]===Symbol.for("react.memo_cache_sentinel")?(S=t.jsx(q,{name:"delete",size:16}),e[38]=S):S=e[38];let o;e[39]!==v?(o=t.jsxs(Oe,{variant:"destructive",onClick:v,children:[S,"Remove Member"]}),e[39]=v,e[40]=o):o=e[40];let d;e[41]!==O||e[42]!==o||e[43]!==y||e[44]!==R||e[45]!==g?(d=t.jsxs(O,{align:y,onClick:R,children:[g,A,o]}),e[41]=O,e[42]=o,e[43]=y,e[44]=R,e[45]=g,e[46]=d):d=e[46];let C;return e[47]!==l||e[48]!==d||e[49]!==m?(C=t.jsxs(l,{children:[m,d]}),e[47]=l,e[48]=d,e[49]=m,e[50]=C):C=e[50],C}function Hs(s){return s.stopPropagation()}function Js(s){return s.stopPropagation()}function Xs(){const s=ae.c(72),{data:e}=_e(),n=Re(),{locator:c}=ye(),[u,h]=D.useState(null),[p,f]=D.useState(""),[j,w]=D.useState("table"),[i,O]=D.useState("member"),[l,b]=D.useState("asc"),x=e?.data?.members;let y;s[0]!==i?(y=k=>{i===k?b(it):(O(k),b("asc"))},s[0]=i,s[1]=y):y=s[1];const R=y;let m;if(s[2]!==x||s[3]!==p||s[4]!==l||s[5]!==i){if(m=x??[],p){const k=p.toLowerCase();m=m.filter($=>$.user?.name?.toLowerCase().includes(k)||$.user?.email?.toLowerCase().includes(k)||$.role?.toLowerCase().includes(k))}if(i&&l){let k;s[7]!==l||s[8]!==i?(k=($,Z)=>{let de,me;e:switch(i){case"member":{de=$.user?.name||"",me=Z.user?.name||"";break e}case"role":{de=$.role||"",me=Z.role||"";break e}case"joined":{de=$.createdAt?typeof $.createdAt=="string"?$.createdAt:$.createdAt.toISOString():"",me=Z.createdAt?typeof Z.createdAt=="string"?Z.createdAt:Z.createdAt.toISOString():"";break e}default:return 0}return l==="asc"?de.localeCompare(me):me.localeCompare(de)},s[7]=l,s[8]=i,s[9]=k):k=s[9],m=[...m].sort(k)}s[2]=x,s[3]=p,s[4]=l,s[5]=i,s[6]=m}else m=s[6];const a=m;let g;s[10]!==c||s[11]!==n?(g={mutationFn:lt,onSuccess:()=>{n.invalidateQueries({queryKey:oe.members(c)}),Q.success("Member has been removed from the organization"),h(null)},onError:ot},s[10]=c,s[11]=n,s[12]=g):g=s[12];const A=ue(g);let v;s[13]!==c||s[14]!==n?(v={mutationFn:rt,onSuccess:()=>{n.invalidateQueries({queryKey:oe.members(c)}),Q.success("Member's role has been updated")},onError:nt},s[13]=c,s[14]=n,s[15]=v):v=s[15];const S=ue(v),{roles:o,customRoles:d}=Le();let C;s[16]!==d?(C=qs(d),s[16]=d,s[17]=C):C=s[17];const E=C;let M;s[18]!==o?(M=o.filter(tt),s[18]=o,s[19]=M):M=s[19];const N=M;let I;s[20]===Symbol.for("react.memo_cache_sentinel")?(I={id:"member",header:"Member",render:st,cellClassName:"flex-1 min-w-0",sortable:!0},s[20]=I):I=s[20];let L;s[21]!==E||s[22]!==N||s[23]!==S?(L={id:"role",header:"Role",render:k=>t.jsx(Ge,{role:k.role,memberId:k.id,isOwner:k.role==="owner",roleColorMap:E,selectableRoles:N,onRoleChange:($,Z)=>S.mutate({memberId:$,role:Z}),className:"w-36"}),cellClassName:"w-36 shrink-0",sortable:!0},s[21]=E,s[22]=N,s[23]=S,s[24]=L):L=s[24];let T;s[25]===Symbol.for("react.memo_cache_sentinel")?(T={id:"joined",header:"Joined",render:et,cellClassName:"w-48 shrink-0",sortable:!0},s[25]=T):T=s[25];let U;s[26]!==o||s[27]!==S?(U={id:"actions",header:"",render:k=>t.jsx(Ve,{member:k,roles:o,onChangeRole:($,Z)=>S.mutate({memberId:$,role:Z}),onRemove:h,isUpdating:S.isPending}),cellClassName:"w-12 shrink-0"},s[26]=o,s[27]=S,s[28]=U):U=s[28];let K;s[29]!==L||s[30]!==U?(K=[I,L,T,U],s[29]=L,s[30]=U,s[31]=K):K=s[31];const se=K;let le;s[32]===Symbol.for("react.memo_cache_sentinel")?(le=t.jsx($s,{trigger:t.jsxs(Y,{variant:"outline",size:"sm",className:"h-7 px-3 rounded-lg text-sm font-medium",children:[t.jsx(q,{name:"shield",size:16}),"Manage Roles"]})}),s[32]=le):le=s[32];let ee;s[33]===Symbol.for("react.memo_cache_sentinel")?(ee=t.jsxs("div",{className:"flex items-center gap-2",children:[le,t.jsx(Qs,{trigger:t.jsx(Y,{size:"sm",className:"h-7 px-3 rounded-lg text-sm font-medium",children:"Invite Member"})})]}),s[33]=ee):ee=s[33];const ce=ee,te=!!u;let r;s[34]===Symbol.for("react.memo_cache_sentinel")?(r=()=>h(null),s[34]=r):r=s[34];let P;s[35]===Symbol.for("react.memo_cache_sentinel")?(P=t.jsxs(xe,{children:[t.jsx(be,{children:"Remove Member"}),t.jsx(Ce,{children:"Are you sure you want to remove this member from the organization? This action cannot be undone."})]}),s[35]=P):P=s[35];let _;s[36]===Symbol.for("react.memo_cache_sentinel")?(_=t.jsx(je,{children:"Cancel"}),s[36]=_):_=s[36];let z;s[37]!==u||s[38]!==A?(z=()=>u&&A.mutate(u),s[37]=u,s[38]=A,s[39]=z):z=s[39];let V;s[40]!==A.isPending||s[41]!==z?(V=t.jsxs(pe,{children:[P,t.jsxs(Ne,{children:[_,t.jsx(ve,{onClick:z,disabled:A.isPending,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Remove"})]})]}),s[40]=A.isPending,s[41]=z,s[42]=V):V=s[42];let G;s[43]!==te||s[44]!==V?(G=t.jsx(he,{open:te,onOpenChange:r,children:V}),s[43]=te,s[44]=V,s[45]=G):G=s[45];let W;s[46]===Symbol.for("react.memo_cache_sentinel")?(W=[{id:"member",label:"Name"},{id:"role",label:"Role"},{id:"joined",label:"Joined"}],s[46]=W):W=s[46];let ne;s[47]!==R||s[48]!==l||s[49]!==i||s[50]!==j?(ne=t.jsx(as,{title:"Members",viewMode:j,onViewModeChange:w,sortKey:i,sortDirection:l,onSort:R,sortOptions:W,ctaButton:ce}),s[47]=R,s[48]=l,s[49]=i,s[50]=j,s[51]=ne):ne=s[51];let B;s[52]===Symbol.for("react.memo_cache_sentinel")?(B=k=>{k.key==="Escape"&&(f(""),k.target.blur())},s[52]=B):B=s[52];let F;s[53]!==p?(F=t.jsx(Ee,{value:p,onChange:f,placeholder:"Search members...",onKeyDown:B}),s[53]=p,s[54]=F):F=s[54];let H;s[55]!==se||s[56]!==a||s[57]!==R||s[58]!==E||s[59]!==o||s[60]!==p||s[61]!==N||s[62]!==l||s[63]!==i||s[64]!==S||s[65]!==j?(H=j==="cards"?t.jsx("div",{className:"flex-1 overflow-auto p-5",children:a.length===0?t.jsx(Ae,{title:"No members found",description:p?`No members match "${p}"`:"Invite members to get started."}):t.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 lg:grid-cols-4 gap-4",children:a.map(k=>t.jsxs(ws,{className:"transition-colors relative",children:[t.jsx("div",{className:"absolute top-4 right-4 z-10",children:t.jsx(Ve,{member:k,roles:o,onChangeRole:($,Z)=>S.mutate({memberId:$,role:Z}),onRemove:h,isUpdating:S.isPending})}),t.jsxs("div",{className:"flex flex-col gap-4 p-6",children:[t.jsx(we,{url:k.user?.image??void 0,fallback:rs(k.user?.name),shape:"circle",size:"lg",className:"shrink-0"}),t.jsxs("div",{className:"flex flex-col gap-2",children:[t.jsx("h3",{className:"text-base font-medium text-foreground truncate",children:k.user?.name||"Unknown"}),t.jsx("p",{className:"text-sm text-muted-foreground truncate",children:k.user?.email}),t.jsx(Ge,{role:k.role,memberId:k.id,isOwner:k.role==="owner",roleColorMap:E,selectableRoles:N,onRoleChange:($,Z)=>S.mutate({memberId:$,role:Z}),className:"w-fit"})]})]})]},k.id))})}):t.jsx(cs,{columns:se,data:a,isLoading:!1,sortKey:i,sortDirection:l,onSort:R,emptyState:p?t.jsx(Ae,{title:"No members found",description:`No members match "${p}"`}):t.jsx(Ae,{title:"No members found",description:"Invite members to get started."})}),s[55]=se,s[56]=a,s[57]=R,s[58]=E,s[59]=o,s[60]=p,s[61]=N,s[62]=l,s[63]=i,s[64]=S,s[65]=j,s[66]=H):H=s[66];let re;return s[67]!==G||s[68]!==ne||s[69]!==F||s[70]!==H?(re=t.jsxs(Te,{children:[G,ne,F,H]}),s[67]=G,s[68]=ne,s[69]=F,s[70]=H,s[71]=re):re=s[71],re}function et(s){return t.jsx("span",{className:"text-sm text-foreground",children:s.createdAt?Ws(s.createdAt):"N/A"})}function st(s){return t.jsxs("div",{className:"flex items-center gap-3",children:[t.jsx(we,{url:s.user?.image??void 0,fallback:rs(s.user?.name),shape:"circle",size:"sm"}),t.jsxs("div",{className:"min-w-0",children:[t.jsx("div",{className:"text-sm font-medium text-foreground truncate",children:s.user?.name||"Unknown"}),t.jsx("div",{className:"text-sm text-muted-foreground truncate",children:s.user?.email})]})]})}function tt(s){return s.role!=="owner"}function nt(s){Q.error(s instanceof Error?s.message:"Failed to update role")}async function rt(s){const{memberId:e,role:n}=s,c=await X.organization.updateMemberRole({memberId:e,role:[n]});if(c?.error)throw new Error(c.error.message)}function ot(s){Q.error(s instanceof Error?s.message:"Failed to remove member")}async function lt(s){const e=await X.organization.removeMember({memberIdOrEmail:s});if(e?.error)throw new Error(e.error.message)}function it(s){return s==="asc"?"desc":s==="desc"?null:"asc"}function Dt(){const s=ae.c(2);let e;s[0]===Symbol.for("react.memo_cache_sentinel")?(e=t.jsx(Te,{children:t.jsx("div",{className:"flex items-center justify-center h-full",children:t.jsx("div",{className:"text-sm text-muted-foreground",children:"Failed to load members"})})}),s[0]=e):e=s[0];let n;return s[1]===Symbol.for("react.memo_cache_sentinel")?(n=t.jsx(vs,{fallback:e,children:t.jsx(D.Suspense,{fallback:t.jsx(Te,{children:t.jsx("div",{className:"flex items-center justify-center h-full",children:t.jsx(q,{name:"progress_activity",size:32,className:"animate-spin text-muted-foreground"})})}),children:t.jsx(Xs,{})})}),s[1]=n):n=s[1],n}export{Dt as default};