@lunora/studio 1.0.0-alpha.78 → 1.0.0-alpha.79
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +2 -1
- package/dist/index.js +1 -1
- package/dist/mount.js +1 -1
- package/dist/packem_chunks/ApiTab.js +1 -1
- package/dist/packem_chunks/AuditPanel.js +1 -1
- package/dist/packem_chunks/ExportImportPanel.js +1 -1
- package/dist/packem_chunks/FileBrowser.js +1 -1
- package/dist/packem_chunks/FunctionRunner.js +1 -1
- package/dist/packem_chunks/FunctionStatsPanel.js +1 -1
- package/dist/packem_chunks/HealthPanel.js +1 -1
- package/dist/packem_chunks/InsightsPanel.js +1 -1
- package/dist/packem_chunks/LogsPanel.js +1 -1
- package/dist/packem_chunks/MailPanel.js +1 -1
- package/dist/packem_chunks/MetricsPanel.js +1 -1
- package/dist/packem_chunks/MigrationsPanel.js +1 -1
- package/dist/packem_chunks/NotificationsPanel.js +1 -1
- package/dist/packem_chunks/PitrPanel.js +1 -1
- package/dist/packem_chunks/SchemaViewer.js +1 -1
- package/dist/packem_chunks/SecurityAdvisorPanel.js +1 -1
- package/dist/packem_chunks/SettingsPanel.js +1 -1
- package/dist/packem_chunks/SqlEditorPanel.js +1 -1
- package/dist/packem_chunks/TableEditor.js +1 -1
- package/dist/packem_chunks/agents-panel.js +1 -1
- package/dist/packem_chunks/auth-audit-panel.js +1 -1
- package/dist/packem_chunks/containers-panel.js +1 -1
- package/dist/packem_chunks/dashboards-panel.js +1 -1
- package/dist/packem_chunks/fanout-panel.js +1 -1
- package/dist/packem_chunks/flags-panel.js +1 -1
- package/dist/packem_chunks/issues-panel.js +1 -1
- package/dist/packem_chunks/kv-browser.js +1 -1
- package/dist/packem_chunks/organizations-panel.js +1 -1
- package/dist/packem_chunks/payments-panel.js +1 -1
- package/dist/packem_chunks/permissions-panel.js +1 -1
- package/dist/packem_chunks/queues-panel.js +1 -1
- package/dist/packem_chunks/rls-panel.js +1 -1
- package/dist/packem_chunks/storage-rules-panel.js +1 -1
- package/dist/packem_chunks/subscriptions-panel.js +1 -1
- package/dist/packem_chunks/traces-panel.js +1 -1
- package/dist/packem_chunks/users-panel.js +1 -1
- package/dist/packem_chunks/workflows-panel.js +1 -1
- package/dist/packem_shared/ADMIN_FUNCTIONS-CpgIo9pj.js +1 -0
- package/dist/packem_shared/{ApiDocsPanel-eJYZlylw.js → ApiDocsPanel-CjdsxN1t.js} +1 -1
- package/dist/packem_shared/{DataBrowser-B8J5lHjP.js → DataBrowser-Bfstz_au.js} +1 -1
- package/dist/packem_shared/{HomePanel-DL1HupAN.js → HomePanel-B8EFM4u3.js} +1 -1
- package/dist/packem_shared/{Studio-BWBclm_C.js → Studio-BDtS9C5g.js} +1 -1
- package/dist/packem_shared/{StudioApp-BFm73yVr.js → StudioApp-DjLzIO9E.js} +1 -1
- package/dist/packem_shared/{home-panel-B-8BCffw.js → home-panel-Cm88Nvqh.js} +1 -1
- package/dist/packem_shared/{studio-BHA7hnI3.js → studio-BmWFd-Rz.js} +1 -1
- package/dist/packem_shared/use-async-submit-DLNCqLFq.js +1 -0
- package/dist/packem_shared/use-auth-config-9S_K_W-G.js +1 -0
- package/dist/standalone/{chunk-EVN46TVV.js → chunk-2SHUN7KF.js} +1 -1
- package/dist/standalone/{chunk-C43X4M5U.js → chunk-3EXLKL6V.js} +1 -1
- package/dist/standalone/{chunk-KDOC2DP5.js → chunk-3KAERFMC.js} +1 -1
- package/dist/standalone/{chunk-GSPTEMYN.js → chunk-4XDMVUS5.js} +1 -1
- package/dist/standalone/{chunk-YD5NF6UT.js → chunk-5YWJNF5X.js} +1 -1
- package/dist/standalone/chunk-66YJ3IOZ.js +1 -0
- package/dist/standalone/{chunk-2F7G7IWQ.js → chunk-6CULAILE.js} +1 -1
- package/dist/standalone/{chunk-D7XXWV4E.js → chunk-6KHEBRBB.js} +1 -1
- package/dist/standalone/{chunk-4WLYA3XE.js → chunk-6WCIFGDW.js} +1 -1
- package/dist/standalone/{chunk-OHKRN65U.js → chunk-7RG3AKPY.js} +1 -1
- package/dist/standalone/{chunk-65OTWFS3.js → chunk-A2FPLOMJ.js} +1 -1
- package/dist/standalone/chunk-AADILRJW.js +14 -0
- package/dist/standalone/chunk-AADXUXZO.js +1 -0
- package/dist/standalone/{chunk-L7N7F3DA.js → chunk-ARI4JTIH.js} +1 -1
- package/dist/standalone/chunk-AVZGVZZ7.js +1 -0
- package/dist/standalone/{chunk-5U2THBI7.js → chunk-BDO4J5AP.js} +1 -1
- package/dist/standalone/{chunk-XSD4Y6SQ.js → chunk-BMQJ4CAO.js} +1 -1
- package/dist/standalone/{chunk-5L2MD6F6.js → chunk-CMUP7HPS.js} +1 -1
- package/dist/standalone/{chunk-QGKAJTQQ.js → chunk-CP7AUUOU.js} +1 -1
- package/dist/standalone/{chunk-UIS34ZPB.js → chunk-DX3RMFQU.js} +1 -1
- package/dist/standalone/{chunk-5OWIOACV.js → chunk-E2CJUP53.js} +1 -1
- package/dist/standalone/{chunk-FGTK44LR.js → chunk-EIT7ERYE.js} +1 -1
- package/dist/standalone/{chunk-35II7U25.js → chunk-EN2QAEO4.js} +1 -1
- package/dist/standalone/{chunk-QVEHPYA5.js → chunk-FLYO3XY5.js} +1 -1
- package/dist/standalone/{chunk-DVOBKIUX.js → chunk-FWCKM2CU.js} +1 -1
- package/dist/standalone/{chunk-VPAXCQ2Y.js → chunk-GITJXQOS.js} +1 -1
- package/dist/standalone/{chunk-SA3MDZC3.js → chunk-GP6IRITM.js} +1 -1
- package/dist/standalone/{chunk-VGHSEUEX.js → chunk-GXU3ATKS.js} +1 -1
- package/dist/standalone/{chunk-FPLGBHY4.js → chunk-H5Y5NQPL.js} +1 -1
- package/dist/standalone/{chunk-34UVAASH.js → chunk-HALNNKTC.js} +1 -1
- package/dist/standalone/{chunk-UNUU7CJJ.js → chunk-HK4OVYG3.js} +1 -1
- package/dist/standalone/{chunk-ZNNAGR6N.js → chunk-HQEMYD2K.js} +1 -1
- package/dist/standalone/{chunk-F6GOKFMU.js → chunk-HYT2ZUNP.js} +2 -2
- package/dist/standalone/{chunk-7RXOPYR5.js → chunk-I4WGRDL2.js} +1 -1
- package/dist/standalone/{chunk-P24JBHEZ.js → chunk-ISZSYNTI.js} +1 -1
- package/dist/standalone/chunk-JWG3VRGB.js +1 -0
- package/dist/standalone/{chunk-RAA2RGG6.js → chunk-KDYNM3GV.js} +1 -1
- package/dist/standalone/{chunk-T2JIUFOD.js → chunk-KP6JQSH2.js} +1 -1
- package/dist/standalone/{chunk-IDNNI63H.js → chunk-LSEZN2ZL.js} +1 -1
- package/dist/standalone/{chunk-LJDP7NRB.js → chunk-LU3GW7HI.js} +1 -1
- package/dist/standalone/chunk-MVGE3JJN.js +1 -0
- package/dist/standalone/chunk-MXSHWB3M.js +1 -0
- package/dist/standalone/{chunk-BEH5N5ZA.js → chunk-NG6LYBPJ.js} +1 -1
- package/dist/standalone/{chunk-HP2UCWND.js → chunk-NL2DZKFI.js} +1 -1
- package/dist/standalone/{chunk-EXFBIISG.js → chunk-OGVCXKRL.js} +1 -1
- package/dist/standalone/{chunk-EKRN4ZQM.js → chunk-OPC233PZ.js} +1 -1
- package/dist/standalone/{chunk-TLHJRWNK.js → chunk-P4CWOYFL.js} +1 -1
- package/dist/standalone/{chunk-QLJJ5YYZ.js → chunk-PRJ4RJDU.js} +1 -1
- package/dist/standalone/{chunk-XEDU5FO4.js → chunk-PUY3YDXI.js} +1 -1
- package/dist/standalone/{chunk-FGTABSAK.js → chunk-QZMR6MUG.js} +1 -1
- package/dist/standalone/{chunk-F5QWLENA.js → chunk-W6TE2I2D.js} +1 -1
- package/dist/standalone/{chunk-PF7V3G2Z.js → chunk-WCWYSOCN.js} +1 -1
- package/dist/standalone/{chunk-BNUJ7QMG.js → chunk-WEO3YVP6.js} +1 -1
- package/dist/standalone/{chunk-6DWCIIHE.js → chunk-XIZNYKOD.js} +1 -1
- package/dist/standalone/{chunk-3FUFEZ65.js → chunk-XS6Q6GGV.js} +1 -1
- package/dist/standalone/{chunk-XQBTNJUQ.js → chunk-Y3CQDULJ.js} +1 -1
- package/dist/standalone/{chunk-7J5N6DGQ.js → chunk-YCRMVBPW.js} +1 -1
- package/dist/standalone/{chunk-H7NIIBHH.js → chunk-Z2JPEI2V.js} +1 -1
- package/dist/standalone/studio.js +1 -1
- package/dist/styles.css +1 -1
- package/package.json +6 -6
- package/dist/packem_shared/ADMIN_FUNCTIONS-BYNSbBVE.js +0 -1
- package/dist/packem_shared/use-async-submit-H68GHPz8.js +0 -1
- package/dist/standalone/chunk-3QRTYSSX.js +0 -1
- package/dist/standalone/chunk-B43FTQJ7.js +0 -1
- package/dist/standalone/chunk-GXZAXNZI.js +0 -1
- package/dist/standalone/chunk-LE56LPNH.js +0 -13
- package/dist/standalone/chunk-PWWHP76O.js +0 -1
- package/dist/standalone/chunk-YI3WYUXK.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as u}from"react/compiler-runtime";import{useLunora as c}from"@lunora/react";import{T as m}from"./use-admin-query-Di3fLE8H.js";import{useState as f}from"react";import{f as d,e as g}from"./internal-AtZ4bTal.js";const p={capabilities:{accounts:!0,admin:!0,organization:!1,passkey:!1,twoFactor:!1},emailAndPassword:!1,organization:{enabled:!1,roles:!1,teams:!1},plugins:[],rateLimit:{enabled:!1},session:{},socialProviders:[],userFields:[]},L=()=>{const e=u(6),s=c();let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=["lunora-auth-config"],e[0]=r):r=e[0];let a;e[1]!==s?(a=()=>s.getAuthConfig(),e[1]=s,e[2]=a):a=e[2];const{data:t,isLoading:n}=m(r,a),i=t??p,l=!n;let o;return e[3]!==i||e[4]!==l?(o={config:i,ready:l},e[3]=i,e[4]=l,e[5]=o):o=e[5],o},_=()=>{const[e,s]=f(!1),[r,a]=f(null);return{busy:e,error:r,run:t=>{d((async()=>{s(!0),a(null);try{await t()}catch(n){a(g(n))}finally{s(!1)}})())}}};export{L as a,_ as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as g}from"./chunk-XSD4Y6SQ.js";import{f}from"./chunk-35II7U25.js";import{h as d,m as p}from"./chunk-4CGALXS3.js";import{a as t,e as u,f as b,g as h}from"./chunk-3XIESWL4.js";var y=u(h(),1);var m=u(b(),1);var L={capabilities:{accounts:!0,admin:!0,organization:!1,passkey:!1,twoFactor:!1},emailAndPassword:!1,organization:{enabled:!1,roles:!1,teams:!1},plugins:[],rateLimit:{enabled:!1},session:{},socialProviders:[],userFields:[]},A=t(()=>{let a=(0,y.c)(6),r=f(),s;a[0]===Symbol.for("react.memo_cache_sentinel")?(s=["lunora-auth-config"],a[0]=s):s=a[0];let o;a[1]!==r?(o=t(()=>r.getAuthConfig(),"a"),a[1]=r,a[2]=o):o=a[2];let{data:n,isLoading:i}=g(s,o),l=n??L,c=!i,e;return a[3]!==l||a[4]!==c?(e={config:l,ready:c},a[3]=l,a[4]=c,a[5]=e):e=a[5],e},"L"),F=t(()=>{let[a,r]=(0,m.useState)(!1),[s,o]=(0,m.useState)(null);return{busy:a,error:s,run:t(n=>{p((async()=>{r(!0),o(null);try{await n()}catch(i){o(d(i))}finally{r(!1)}})())},"run")}},"_");export{A as a,F as b};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as Ft,b as ie}from"./chunk-3QRTYSSX.js";import{a as Mt}from"./chunk-ESVP44Y3.js";import{a as At}from"./chunk-54MMVNPT.js";import{a as ue}from"./chunk-XSD4Y6SQ.js";import{a as zt,b as kt,c as Nt,d as tt,e as se,f as de}from"./chunk-MIQTKZAR.js";import{a as xt,e as wt}from"./chunk-UZERI5YC.js";import{a as St}from"./chunk-V53KNYRN.js";import{a as Rt}from"./chunk-5Y3QLNWX.js";import{R as G}from"./chunk-CFPZYHPY.js";import"./chunk-7QIFDWQV.js";import{c as P}from"./chunk-FXCBF4XT.js";import"./chunk-2OUPA2WJ.js";import"./chunk-6ST5ECQA.js";import{f as re}from"./chunk-35II7U25.js";import"./chunk-XBDKZZ67.js";import{a as ce}from"./chunk-XQCVZAGU.js";import{d as Z,h as Ot,l as S,m as Dt,q as $t}from"./chunk-4CGALXS3.js";import"./chunk-LE56LPNH.js";import{a as i,e as Ct,f as qt,g as Bt,h as Ht}from"./chunk-3XIESWL4.js";var Y=Ct(Bt(),1);var J=Ct(qt(),1);var a=Ct(Ht(),1);var Pt=i(t=>{let e=JSON.parse(t);if(typeof e!="object"||e===null||Array.isArray(e))throw new TypeError("Expected a JSON object");return e},"Ft"),Kt=i(t=>{let e=Pt(t),r={};for(let[d,u]of Object.entries(e)){if(!Array.isArray(u)||u.some(l=>typeof l!="string"))throw new TypeError(`"${d}" must map to an array of action strings`);r[d]=u}return r},"Ut"),Jt=i(t=>t==null||t===""?"":typeof t=="string"?t:JSON.stringify(t,null,2),"Rt"),X=i(t=>{let e=(0,Y.c)(6),{children:r,htmlFor:d,label:u}=t,l;e[0]!==d||e[1]!==u?(l=(0,a.jsx)(Rt,{htmlFor:d,children:u}),e[0]=d,e[1]=u,e[2]=l):l=e[2];let o;return e[3]!==r||e[4]!==l?(o=(0,a.jsxs)("div",{className:"flex flex-col gap-1",children:[l,r]}),e[3]=r,e[4]=l,e[5]=o):o=e[5],o},"Q"),me=i(({busy:t,canSubmit:e,children:r,destructive:d=!1,error:u,onClose:l,onSubmit:o,submitLabel:n,testId:s,title:m})=>{let c=Z();return(0,a.jsxs)(Mt,{label:m,onClose:l,panelTestId:`${s}-panel`,testId:`${s}-overlay`,variant:"dialog",children:[(0,a.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:m}),r,u!==null&&(0,a.jsx)("p",{className:"text-sm text-destructive","data-testid":`${s}-error`,role:"alert",children:u}),(0,a.jsxs)("div",{className:"flex justify-end gap-2 pt-1",children:[(0,a.jsx)(P,{"data-testid":`${s}-cancel`,onClick:l,size:"sm",type:"button",variant:"outline",children:c("Cancel")}),(0,a.jsx)(P,{"data-testid":`${s}-submit`,disabled:t||!e,onClick:o,size:"sm",type:"button",variant:d?"destructive":"default",children:t?c("Saving\u2026"):n})]})]})},"se"),Et=i(t=>{let e=(0,Y.c)(79),{mode:r,onClose:d,onDone:u,org:l}=t,o=re(),n=Z(),{busy:s,error:m,run:c}=ie(),v;e[0]!==l?(v=l?S(l.name):"",e[0]=l,e[1]=v):v=e[1];let[g,h]=(0,J.useState)(v),w;e[2]!==l?(w=l?S(l.slug):"",e[2]=l,e[3]=w):w=e[3];let[f,y]=(0,J.useState)(w),z;e[4]!==l?(z=l?S(l.logo):"",e[4]=l,e[5]=z):z=e[5];let[p,x]=(0,J.useState)(z),[b,k]=(0,J.useState)(""),I;e[6]!==r||e[7]!==l?.metadata?(I=r==="edit"?Jt(l?.metadata):"",e[6]=r,e[7]=l?.metadata,e[8]=I):I=e[8];let[C,N]=(0,J.useState)(I),D;e[9]!==o||e[10]!==p||e[11]!==C||e[12]!==r||e[13]!==g||e[14]!==d||e[15]!==u||e[16]!==l?.id||e[17]!==b||e[18]!==c||e[19]!==f?(D=i(()=>{c(async()=>{let L=C.trim()===""?void 0:Pt(C);r==="create"?await o.createAuthOrganization({logo:p.trim()===""?void 0:p.trim(),metadata:L,name:g.trim(),ownerId:b.trim()===""?void 0:b.trim(),slug:f.trim()===""?void 0:f.trim()}):await o.updateAuthOrganization({logo:p.trim()===""?void 0:p.trim(),metadata:L,name:g.trim()===""?void 0:g.trim(),organizationId:S(l?.id),slug:f.trim()===""?void 0:f.trim()}),u(),d()})},"O"),e[9]=o,e[10]=p,e[11]=C,e[12]=r,e[13]=g,e[14]=d,e[15]=u,e[16]=l?.id,e[17]=b,e[18]=c,e[19]=f,e[20]=D):D=e[20];let _=D,A;e[21]!==r||e[22]!==g?(A=g.trim()!==""||r==="edit",e[21]=r,e[22]=g,e[23]=A):A=e[23];let $;e[24]!==r||e[25]!==n?($=n(r==="create"?"Create":"Save"),e[24]=r,e[25]=n,e[26]=$):$=e[26];let R;e[27]!==r||e[28]!==n?(R=n(r==="create"?"New organization":"Edit organization"),e[27]=r,e[28]=n,e[29]=R):R=e[29];let U;e[30]!==n?(U=n("name"),e[30]=n,e[31]=U):U=e[31];let K;e[32]===Symbol.for("react.memo_cache_sentinel")?(K=i(L=>{h(L.target.value)},"q"),e[32]=K):K=e[32];let q;e[33]!==g?(q=(0,a.jsx)(G,{"data-testid":"org-form-name",id:"org-form-name",onChange:K,value:g}),e[33]=g,e[34]=q):q=e[34];let j;e[35]!==q||e[36]!==U?(j=(0,a.jsx)(X,{htmlFor:"org-form-name",label:U,children:q}),e[35]=q,e[36]=U,e[37]=j):j=e[37];let B;e[38]!==n?(B=n("Slug (optional \u2014 derived from name)"),e[38]=n,e[39]=B):B=e[39];let T;e[40]===Symbol.for("react.memo_cache_sentinel")?(T=i(L=>{y(L.target.value)},"K"),e[40]=T):T=e[40];let F;e[41]!==f?(F=(0,a.jsx)(G,{"data-testid":"org-form-slug",id:"org-form-slug",onChange:T,value:f}),e[41]=f,e[42]=F):F=e[42];let M;e[43]!==B||e[44]!==F?(M=(0,a.jsx)(X,{htmlFor:"org-form-slug",label:B,children:F}),e[43]=B,e[44]=F,e[45]=M):M=e[45];let H;e[46]!==n?(H=n("Logo URL (optional)"),e[46]=n,e[47]=H):H=e[47];let oe;e[48]===Symbol.for("react.memo_cache_sentinel")?(oe=i(L=>{x(L.target.value)},"re"),e[48]=oe):oe=e[48];let Q;e[49]!==p?(Q=(0,a.jsx)(G,{"data-testid":"org-form-logo",id:"org-form-logo",onChange:oe,value:p}),e[49]=p,e[50]=Q):Q=e[50];let V;e[51]!==H||e[52]!==Q?(V=(0,a.jsx)(X,{htmlFor:"org-form-logo",label:H,children:Q}),e[51]=H,e[52]=Q,e[53]=V):V=e[53];let W;e[54]!==r||e[55]!==b||e[56]!==n?(W=r==="create"&&(0,a.jsx)(X,{htmlFor:"org-form-owner",label:n("Owner user id (optional)"),children:(0,a.jsx)(G,{"data-testid":"org-form-owner",id:"org-form-owner",onChange:i(L=>{k(L.target.value)},"onChange"),value:b})}),e[54]=r,e[55]=b,e[56]=n,e[57]=W):W=e[57];let ee;e[58]!==n?(ee=n("Metadata (JSON, optional)"),e[58]=n,e[59]=ee):ee=e[59];let ae;e[60]===Symbol.for("react.memo_cache_sentinel")?(ae=i(L=>{N(L.target.value)},"oe"),e[60]=ae):ae=e[60];let te;e[61]!==C?(te=(0,a.jsx)(St,{"data-testid":"org-form-metadata",id:"org-form-metadata",onChange:ae,value:C}),e[61]=C,e[62]=te):te=e[62];let O;e[63]!==ee||e[64]!==te?(O=(0,a.jsx)(X,{htmlFor:"org-form-metadata",label:ee,children:te}),e[63]=ee,e[64]=te,e[65]=O):O=e[65];let ne;return e[66]!==s||e[67]!==m||e[68]!==d||e[69]!==_||e[70]!==j||e[71]!==M||e[72]!==V||e[73]!==W||e[74]!==O||e[75]!==A||e[76]!==$||e[77]!==R?(ne=(0,a.jsxs)(me,{busy:s,canSubmit:A,error:m,onClose:d,onSubmit:_,submitLabel:$,testId:"org-form",title:R,children:[j,M,V,W,O]}),e[66]=s,e[67]=m,e[68]=d,e[69]=_,e[70]=j,e[71]=M,e[72]=V,e[73]=W,e[74]=O,e[75]=A,e[76]=$,e[77]=R,e[78]=ne):ne=e[78],ne},"$t"),Tt=i(t=>{let e=(0,Y.c)(40),{onClose:r,onDone:d,organizationId:u}=t,l=re(),o=Z(),{busy:n,error:s,run:m}=ie(),[c,v]=(0,J.useState)(""),[g,h]=(0,J.useState)(""),w;e[0]!==l||e[1]!==r||e[2]!==d||e[3]!==u||e[4]!==g||e[5]!==m||e[6]!==c?(w=i(()=>{m(async()=>{await l.addAuthOrgMember({organizationId:u,role:g.trim()===""?void 0:g.trim(),userId:c.trim()}),d(),r()})},"C"),e[0]=l,e[1]=r,e[2]=d,e[3]=u,e[4]=g,e[5]=m,e[6]=c,e[7]=w):w=e[7];let f=w,y;e[8]!==c?(y=c.trim(),e[8]=c,e[9]=y):y=e[9];let z=y!=="",p;e[10]!==o?(p=o("Add member"),e[10]=o,e[11]=p):p=e[11];let x;e[12]!==o?(x=o("Add member"),e[12]=o,e[13]=x):x=e[13];let b;e[14]!==o?(b=o("User id"),e[14]=o,e[15]=b):b=e[15];let k;e[16]===Symbol.for("react.memo_cache_sentinel")?(k=i(R=>{v(R.target.value)},"x"),e[16]=k):k=e[16];let I;e[17]!==c?(I=(0,a.jsx)(G,{"data-testid":"org-add-member-user",id:"org-add-member-user",onChange:k,value:c}),e[17]=c,e[18]=I):I=e[18];let C;e[19]!==b||e[20]!==I?(C=(0,a.jsx)(X,{htmlFor:"org-add-member-user",label:b,children:I}),e[19]=b,e[20]=I,e[21]=C):C=e[21];let N;e[22]!==o?(N=o("Role (optional)"),e[22]=o,e[23]=N):N=e[23];let D;e[24]===Symbol.for("react.memo_cache_sentinel")?(D=i(R=>{h(R.target.value)},"O"),e[24]=D):D=e[24];let _;e[25]!==g?(_=(0,a.jsx)(G,{"data-testid":"org-add-member-role",id:"org-add-member-role",onChange:D,value:g}),e[25]=g,e[26]=_):_=e[26];let A;e[27]!==N||e[28]!==_?(A=(0,a.jsx)(X,{htmlFor:"org-add-member-role",label:N,children:_}),e[27]=N,e[28]=_,e[29]=A):A=e[29];let $;return e[30]!==n||e[31]!==s||e[32]!==r||e[33]!==f||e[34]!==A||e[35]!==z||e[36]!==p||e[37]!==x||e[38]!==C?($=(0,a.jsxs)(me,{busy:n,canSubmit:z,error:s,onClose:r,onSubmit:f,submitLabel:p,testId:"org-add-member",title:x,children:[C,A]}),e[30]=n,e[31]=s,e[32]=r,e[33]=f,e[34]=A,e[35]=z,e[36]=p,e[37]=x,e[38]=C,e[39]=$):$=e[39],$},"Bt"),Xt=i(t=>{let e=(0,Y.c)(40),{onClose:r,onDone:d,organizationId:u}=t,l=re(),o=Z(),{busy:n,error:s,run:m}=ie(),[c,v]=(0,J.useState)(""),[g,h]=(0,J.useState)(""),w;e[0]!==l||e[1]!==c||e[2]!==r||e[3]!==d||e[4]!==u||e[5]!==g||e[6]!==m?(w=i(()=>{m(async()=>{await l.inviteAuthOrgMember({email:c.trim(),organizationId:u,role:g.trim()===""?void 0:g.trim()}),d(),r()})},"C"),e[0]=l,e[1]=c,e[2]=r,e[3]=d,e[4]=u,e[5]=g,e[6]=m,e[7]=w):w=e[7];let f=w,y;e[8]!==c?(y=c.trim(),e[8]=c,e[9]=y):y=e[9];let z=y!=="",p;e[10]!==o?(p=o("Send invitation"),e[10]=o,e[11]=p):p=e[11];let x;e[12]!==o?(x=o("Invite member"),e[12]=o,e[13]=x):x=e[13];let b;e[14]!==o?(b=o("email"),e[14]=o,e[15]=b):b=e[15];let k;e[16]===Symbol.for("react.memo_cache_sentinel")?(k=i(R=>{v(R.target.value)},"x"),e[16]=k):k=e[16];let I;e[17]!==c?(I=(0,a.jsx)(G,{"data-testid":"org-invite-member-email",id:"org-invite-member-email",onChange:k,type:"email",value:c}),e[17]=c,e[18]=I):I=e[18];let C;e[19]!==b||e[20]!==I?(C=(0,a.jsx)(X,{htmlFor:"org-invite-member-email",label:b,children:I}),e[19]=b,e[20]=I,e[21]=C):C=e[21];let N;e[22]!==o?(N=o("Role (optional)"),e[22]=o,e[23]=N):N=e[23];let D;e[24]===Symbol.for("react.memo_cache_sentinel")?(D=i(R=>{h(R.target.value)},"O"),e[24]=D):D=e[24];let _;e[25]!==g?(_=(0,a.jsx)(G,{"data-testid":"org-invite-member-role",id:"org-invite-member-role",onChange:D,value:g}),e[25]=g,e[26]=_):_=e[26];let A;e[27]!==N||e[28]!==_?(A=(0,a.jsx)(X,{htmlFor:"org-invite-member-role",label:N,children:_}),e[27]=N,e[28]=_,e[29]=A):A=e[29];let $;return e[30]!==n||e[31]!==s||e[32]!==r||e[33]!==f||e[34]!==A||e[35]!==z||e[36]!==p||e[37]!==x||e[38]!==C?($=(0,a.jsxs)(me,{busy:n,canSubmit:z,error:s,onClose:r,onSubmit:f,submitLabel:p,testId:"org-invite-member",title:x,children:[C,A]}),e[30]=n,e[31]=s,e[32]=r,e[33]=f,e[34]=A,e[35]=z,e[36]=p,e[37]=x,e[38]=C,e[39]=$):$=e[39],$},"Ht"),Yt=i(t=>{let e=(0,Y.c)(32),{member:r,onClose:d,onDone:u}=t,l=re(),o=Z(),{busy:n,error:s,run:m}=ie(),c;e[0]!==r.role?(c=S(r.role),e[0]=r.role,e[1]=c):c=e[1];let[v,g]=(0,J.useState)(c),h;e[2]!==l||e[3]!==r.id||e[4]!==d||e[5]!==u||e[6]!==v||e[7]!==m?(h=i(()=>{m(async()=>{await l.setAuthOrgMemberRole({memberId:S(r.id),role:v.trim()}),u(),d()})},"g"),e[2]=l,e[3]=r.id,e[4]=d,e[5]=u,e[6]=v,e[7]=m,e[8]=h):h=e[8];let w=h,f;e[9]!==v?(f=v.trim(),e[9]=v,e[10]=f):f=e[10];let y=f!=="",z;e[11]!==o?(z=o("Save"),e[11]=o,e[12]=z):z=e[12];let p;e[13]!==o?(p=o("Change member role"),e[13]=o,e[14]=p):p=e[14];let x;e[15]!==o?(x=o("Role"),e[15]=o,e[16]=x):x=e[16];let b;e[17]===Symbol.for("react.memo_cache_sentinel")?(b=i(N=>{g(N.target.value)},"h"),e[17]=b):b=e[17];let k;e[18]!==v?(k=(0,a.jsx)(G,{"data-testid":"org-member-role-value",id:"org-member-role-value",onChange:b,value:v}),e[18]=v,e[19]=k):k=e[19];let I;e[20]!==x||e[21]!==k?(I=(0,a.jsx)(X,{htmlFor:"org-member-role-value",label:x,children:k}),e[20]=x,e[21]=k,e[22]=I):I=e[22];let C;return e[23]!==n||e[24]!==s||e[25]!==d||e[26]!==w||e[27]!==I||e[28]!==y||e[29]!==z||e[30]!==p?(C=(0,a.jsx)(me,{busy:n,canSubmit:y,error:s,onClose:d,onSubmit:w,submitLabel:z,testId:"org-member-role",title:p,children:I}),e[23]=n,e[24]=s,e[25]=d,e[26]=w,e[27]=I,e[28]=y,e[29]=z,e[30]=p,e[31]=C):C=e[31],C},"qt"),Lt=i(t=>{let e=(0,Y.c)(36),{mode:r,onClose:d,onDone:u,organizationId:l,team:o}=t,n=re(),s=Z(),{busy:m,error:c,run:v}=ie(),g;e[0]!==o?(g=o?S(o.name):"",e[0]=o,e[1]=g):g=e[1];let[h,w]=(0,J.useState)(g),f;e[2]!==n||e[3]!==r||e[4]!==h||e[5]!==d||e[6]!==u||e[7]!==l||e[8]!==v||e[9]!==o?.id?(f=i(()=>{v(async()=>{await(r==="create"?n.createAuthOrgTeam({name:h.trim(),organizationId:l}):n.updateAuthOrgTeam({name:h.trim(),teamId:S(o?.id)})),u(),d()})},"b"),e[2]=n,e[3]=r,e[4]=h,e[5]=d,e[6]=u,e[7]=l,e[8]=v,e[9]=o?.id,e[10]=f):f=e[10];let y=f,z;e[11]!==h?(z=h.trim(),e[11]=h,e[12]=z):z=e[12];let p=z!=="",x;e[13]!==r||e[14]!==s?(x=s(r==="create"?"Create":"Save"),e[13]=r,e[14]=s,e[15]=x):x=e[15];let b;e[16]!==r||e[17]!==s?(b=s(r==="create"?"New team":"Rename team"),e[16]=r,e[17]=s,e[18]=b):b=e[18];let k;e[19]!==s?(k=s("name"),e[19]=s,e[20]=k):k=e[20];let I;e[21]===Symbol.for("react.memo_cache_sentinel")?(I=i(_=>{w(_.target.value)},"y"),e[21]=I):I=e[21];let C;e[22]!==h?(C=(0,a.jsx)(G,{"data-testid":"org-team-form-name",id:"org-team-form-name",onChange:I,value:h}),e[22]=h,e[23]=C):C=e[23];let N;e[24]!==k||e[25]!==C?(N=(0,a.jsx)(X,{htmlFor:"org-team-form-name",label:k,children:C}),e[24]=k,e[25]=C,e[26]=N):N=e[26];let D;return e[27]!==m||e[28]!==c||e[29]!==d||e[30]!==y||e[31]!==N||e[32]!==p||e[33]!==x||e[34]!==b?(D=(0,a.jsx)(me,{busy:m,canSubmit:p,error:c,onClose:d,onSubmit:y,submitLabel:x,testId:"org-team-form",title:b,children:N}),e[27]=m,e[28]=c,e[29]=d,e[30]=y,e[31]=N,e[32]=p,e[33]=x,e[34]=b,e[35]=D):D=e[35],D},"xt"),Zt=i(t=>{let e=(0,Y.c)(30),{onClose:r,onDone:d,teamId:u}=t,l=re(),o=Z(),{busy:n,error:s,run:m}=ie(),[c,v]=(0,J.useState)(""),g;e[0]!==l||e[1]!==r||e[2]!==d||e[3]!==m||e[4]!==u||e[5]!==c?(g=i(()=>{m(async()=>{await l.addAuthOrgTeamMember({teamId:u,userId:c.trim()}),d(),r()})},"u"),e[0]=l,e[1]=r,e[2]=d,e[3]=m,e[4]=u,e[5]=c,e[6]=g):g=e[6];let h=g,w;e[7]!==c?(w=c.trim(),e[7]=c,e[8]=w):w=e[8];let f=w!=="",y;e[9]!==o?(y=o("Add member"),e[9]=o,e[10]=y):y=e[10];let z;e[11]!==o?(z=o("Add team member"),e[11]=o,e[12]=z):z=e[12];let p;e[13]!==o?(p=o("User id"),e[13]=o,e[14]=p):p=e[14];let x;e[15]===Symbol.for("react.memo_cache_sentinel")?(x=i(C=>{v(C.target.value)},"w"),e[15]=x):x=e[15];let b;e[16]!==c?(b=(0,a.jsx)(G,{"data-testid":"org-team-add-member-user",id:"org-team-add-member-user",onChange:x,value:c}),e[16]=c,e[17]=b):b=e[17];let k;e[18]!==p||e[19]!==b?(k=(0,a.jsx)(X,{htmlFor:"org-team-add-member-user",label:p,children:b}),e[18]=p,e[19]=b,e[20]=k):k=e[20];let I;return e[21]!==n||e[22]!==s||e[23]!==r||e[24]!==h||e[25]!==f||e[26]!==y||e[27]!==z||e[28]!==k?(I=(0,a.jsx)(me,{busy:n,canSubmit:f,error:s,onClose:r,onSubmit:h,submitLabel:y,testId:"org-team-add-member",title:z,children:k}),e[21]=n,e[22]=s,e[23]=r,e[24]=h,e[25]=f,e[26]=y,e[27]=z,e[28]=k,e[29]=I):I=e[29],I},"Kt"),jt=i(t=>{let e=(0,Y.c)(47),{mode:r,onClose:d,onDone:u,organizationId:l,role:o}=t,n=re(),s=Z(),{busy:m,error:c,run:v}=ie(),g;e[0]!==o?(g=o?S(o.role):"",e[0]=o,e[1]=g):g=e[1];let[h,w]=(0,J.useState)(g),f;e[2]!==r||e[3]!==o?.permission?(f=r==="edit"?Jt(o?.permission):"",e[2]=r,e[3]=o?.permission,e[4]=f):f=e[4];let[y,z]=(0,J.useState)(f),p;e[5]!==n||e[6]!==r||e[7]!==h||e[8]!==d||e[9]!==u||e[10]!==l||e[11]!==y||e[12]!==o?.id||e[13]!==v?(p=i(()=>{v(async()=>{let R=Kt(y);await(r==="create"?n.createAuthOrgRole({organizationId:l,permission:R,role:h.trim()}):n.updateAuthOrgRole({permission:R,roleId:S(o?.id)})),u(),d()})},"f"),e[5]=n,e[6]=r,e[7]=h,e[8]=d,e[9]=u,e[10]=l,e[11]=y,e[12]=o?.id,e[13]=v,e[14]=p):p=e[14];let x=p,b;e[15]!==r||e[16]!==h||e[17]!==y?(b=y.trim()!==""&&(r==="edit"||h.trim()!==""),e[15]=r,e[16]=h,e[17]=y,e[18]=b):b=e[18];let k;e[19]!==r||e[20]!==s?(k=s(r==="create"?"Create":"Save"),e[19]=r,e[20]=s,e[21]=k):k=e[21];let I;e[22]!==r||e[23]!==s?(I=s(r==="create"?"New role":"Edit role"),e[22]=r,e[23]=s,e[24]=I):I=e[24];let C;e[25]!==r||e[26]!==h||e[27]!==s?(C=r==="create"&&(0,a.jsx)(X,{htmlFor:"org-role-form-name",label:s("Role name"),children:(0,a.jsx)(G,{"data-testid":"org-role-form-name",id:"org-role-form-name",onChange:i(R=>{w(R.target.value)},"onChange"),value:h})}),e[25]=r,e[26]=h,e[27]=s,e[28]=C):C=e[28];let N;e[29]!==s?(N=s('Permission (JSON, e.g. {"project":["create","update"]})'),e[29]=s,e[30]=N):N=e[30];let D;e[31]===Symbol.for("react.memo_cache_sentinel")?(D=i(R=>{z(R.target.value)},"O"),e[31]=D):D=e[31];let _;e[32]!==y?(_=(0,a.jsx)(St,{"data-testid":"org-role-form-permission",id:"org-role-form-permission",onChange:D,value:y}),e[32]=y,e[33]=_):_=e[33];let A;e[34]!==_||e[35]!==N?(A=(0,a.jsx)(X,{htmlFor:"org-role-form-permission",label:N,children:_}),e[34]=_,e[35]=N,e[36]=A):A=e[36];let $;return e[37]!==m||e[38]!==c||e[39]!==d||e[40]!==x||e[41]!==A||e[42]!==b||e[43]!==k||e[44]!==I||e[45]!==C?($=(0,a.jsxs)(me,{busy:m,canSubmit:b,error:c,onClose:d,onSubmit:x,submitLabel:k,testId:"org-role-form",title:I,children:[C,A]}),e[37]=m,e[38]=c,e[39]=d,e[40]=x,e[41]=A,e[42]=b,e[43]=k,e[44]=I,e[45]=C,e[46]=$):$=e[46],$},"zt"),Ut=i(t=>{let e=(0,Y.c)(18),{action:r,message:d,onClose:u,onDone:l,testId:o,title:n}=t,s=Z(),{busy:m,error:c,run:v}=ie(),g;e[0]!==r||e[1]!==u||e[2]!==l||e[3]!==v?(g=i(()=>{v(async()=>{await r(),l(),u()})},"u"),e[0]=r,e[1]=u,e[2]=l,e[3]=v,e[4]=g):g=e[4];let h=g,w;e[5]!==s?(w=s("Delete"),e[5]=s,e[6]=w):w=e[6];let f;e[7]!==d?(f=(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:d}),e[7]=d,e[8]=f):f=e[8];let y;return e[9]!==m||e[10]!==c||e[11]!==u||e[12]!==h||e[13]!==w||e[14]!==f||e[15]!==o||e[16]!==n?(y=(0,a.jsx)(me,{busy:m,canSubmit:!0,destructive:!0,error:c,onClose:u,onSubmit:h,submitLabel:w,testId:o,title:n,children:f}),e[9]=m,e[10]=c,e[11]=u,e[12]=h,e[13]=w,e[14]=f,e[15]=o,e[16]=n,e[17]=y):y=e[17],y},"Tt"),rt=i(t=>{let e=(0,Y.c)(13),{action:r,children:d,heading:u,testId:l}=t,o;e[0]!==u?(o=(0,a.jsx)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:u}),e[0]=u,e[1]=o):o=e[1];let n;e[2]!==r?(n=r!==void 0&&(0,a.jsx)("div",{className:"flex items-center gap-2",children:r}),e[2]=r,e[3]=n):n=e[3];let s;e[4]!==o||e[5]!==n?(s=(0,a.jsxs)("header",{className:"flex items-center justify-between gap-2 border-b border-border px-4 py-3",children:[o,n]}),e[4]=o,e[5]=n,e[6]=s):s=e[6];let m;e[7]!==d?(m=(0,a.jsx)(wt,{className:"px-0",children:d}),e[7]=d,e[8]=m):m=e[8];let c;return e[9]!==s||e[10]!==m||e[11]!==l?(c=(0,a.jsxs)(xt,{className:"overflow-hidden py-0","data-testid":l,children:[s,m]}),e[9]=s,e[10]=m,e[11]=l,e[12]=c):c=e[12],c},"tt"),ot=i(t=>{let e=(0,Y.c)(23),{columns:r,rowActions:d,rowPrefix:u,rows:l}=t,o=Z(),n;e[0]!==r?(n=r.map(Qt),e[0]=r,e[1]=n):n=e[1];let s;e[2]!==o?(s=o("Actions"),e[2]=o,e[3]=s):s=e[3];let m;e[4]!==s?(m=(0,a.jsx)(se,{"aria-label":s}),e[4]=s,e[5]=m):m=e[5];let c;e[6]!==n||e[7]!==m?(c=(0,a.jsx)(kt,{children:(0,a.jsxs)(tt,{children:[n,m]})}),e[6]=n,e[7]=m,e[8]=c):c=e[8];let v;if(e[9]!==r||e[10]!==d||e[11]!==u||e[12]!==l){let w;e[14]!==r||e[15]!==d||e[16]!==u?(w=i(f=>{let y=S(f.id);return(0,a.jsxs)(tt,{"data-testid":`${u}-${y}`,children:[r.map(z=>(0,a.jsx)(de,{className:z.className,children:z.render(f)},z.head)),(0,a.jsx)(de,{children:(0,a.jsx)("div",{className:"flex justify-end gap-1",children:d(f)})})]},y)},"C"),e[14]=r,e[15]=d,e[16]=u,e[17]=w):w=e[17],v=l.map(w),e[9]=r,e[10]=d,e[11]=u,e[12]=l,e[13]=v}else v=e[13];let g;e[18]!==v?(g=(0,a.jsx)(Nt,{children:v}),e[18]=v,e[19]=g):g=e[19];let h;return e[20]!==c||e[21]!==g?(h=(0,a.jsxs)(zt,{children:[c,g]}),e[20]=c,e[21]=g,e[22]=h):h=e[22],h},"rt"),Gt=i(t=>{let e=(0,Y.c)(219),{organizationId:r,rolesEnabled:d,teamsEnabled:u}=t,l=re(),o=Z(),[n,s]=(0,J.useState)(null),[m,c]=(0,J.useState)(null),[v,g]=(0,J.useState)(!1),[h,w]=(0,J.useState)(null),f;e[0]!==r?(f=["lunora-auth-org-members",r],e[0]=r,e[1]=f):f=e[1];let y;e[2]!==l||e[3]!==r?(y=i(()=>l.listAuthOrgMembers({limit:200,organizationId:r}),"v"),e[2]=l,e[3]=r,e[4]=y):y=e[4];let z=ue(f,y),p;e[5]!==r?(p=["lunora-auth-org-invitations",r],e[5]=r,e[6]=p):p=e[6];let x;e[7]!==l||e[8]!==r?(x=i(()=>l.listAuthOrgInvitations({limit:200,organizationId:r}),"w"),e[7]=l,e[8]=r,e[9]=x):x=e[9];let b=ue(p,x),k;e[10]!==r?(k=["lunora-auth-org-teams",r],e[10]=r,e[11]=k):k=e[11];let I;e[12]!==l||e[13]!==r?(I=i(()=>l.listAuthOrgTeams({limit:200,organizationId:r}),"y"),e[12]=l,e[13]=r,e[14]=I):I=e[14];let C;e[15]!==u?(C={enabled:u},e[15]=u,e[16]=C):C=e[16];let N=ue(k,I,C),D;e[17]!==r?(D=["lunora-auth-org-roles",r],e[17]=r,e[18]=D):D=e[18];let _;e[19]!==l||e[20]!==r?(_=i(()=>l.listAuthOrgRoles({limit:200,organizationId:r}),"N"),e[19]=l,e[20]=r,e[21]=_):_=e[21];let A;e[22]!==d?(A={enabled:d},e[22]=d,e[23]=A):A=e[23];let $=ue(D,_,A),R;e[24]!==m?(R=["lunora-auth-org-team-members",m],e[24]=m,e[25]=R):R=e[25];let U;e[26]!==l||e[27]!==m?(U=i(()=>l.listAuthOrgTeamMembers({limit:200,teamId:m??""}),"J"),e[26]=l,e[27]=m,e[28]=U):U=e[28];let K=m!==null,q;e[29]!==K?(q={enabled:K},e[29]=K,e[30]=q):q=e[30];let j=ue(R,U,q),B;e[31]!==z.data?.rows?(B=z.data?.rows??[],e[31]=z.data?.rows,e[32]=B):B=e[32];let T=B,F;e[33]!==b.data?.rows?(F=b.data?.rows??[],e[33]=b.data?.rows,e[34]=F):F=e[34];let M=F,H;e[35]!==N.data?.rows?(H=N.data?.rows??[],e[35]=N.data?.rows,e[36]=H):H=e[36];let oe=H,Q;e[37]!==$.data?.rows?(Q=$.data?.rows??[],e[37]=$.data?.rows,e[38]=Q):Q=e[38];let V=Q,W;e[39]!==m||e[40]!==j?(W=m===null?[]:j.data?.rows??[],e[39]=m,e[40]=j,e[41]=W):W=e[41];let ee=W,ae=z.error??b.error??N.error??$.error??j.error,te;e[42]!==b||e[43]!==z||e[44]!==d||e[45]!==$||e[46]!==m||e[47]!==j||e[48]!==u||e[49]!==N?(te=i(()=>{z.refetch(),b.refetch(),u&&N.refetch(),d&&$.refetch(),m!==null&&j.refetch()},"te"),e[42]=b,e[43]=z,e[44]=d,e[45]=$,e[46]=m,e[47]=j,e[48]=u,e[49]=N,e[50]=te):te=e[50];let O=te;At(O,!0);let ne;e[51]===Symbol.for("react.memo_cache_sentinel")?(ne=i(()=>{s(null)},"ne"),e[51]=ne):ne=e[51];let L=ne,at;e[52]!==O?(at=i(E=>{Dt((async()=>{g(!0),w(null);try{await E(),O(),g(!1)}catch(ht){w(Ot(ht)),g(!1)}})())},"ot"),e[52]=O,e[53]=at):at=e[53];let le=at,nt;e[54]!==l||e[55]!==o?(nt=i(E=>{let ht=S(E.id);s({action:i(async()=>{await l.removeAuthOrgTeam({teamId:ht}),c(_t=>_t===ht?null:_t)},"action"),kind:"confirm",message:o("Delete this team and its memberships? This cannot be undone."),testId:"org-team-delete",title:o("Delete team")})},"nt"),e[54]=l,e[55]=o,e[56]=nt):nt=e[56];let bt=nt,ge;e[57]!==o?(ge=o("userId"),e[57]=o,e[58]=ge):ge=e[58];let he;e[59]!==ge?(he={head:ge,render:Vt},e[59]=ge,e[60]=he):he=e[60];let be;e[61]!==o?(be=o("role"),e[61]=o,e[62]=be):be=e[62];let fe;e[63]!==be?(fe={head:be,render:Wt},e[63]=be,e[64]=fe):fe=e[64];let lt;e[65]!==he||e[66]!==fe?(lt=[he,fe],e[65]=he,e[66]=fe,e[67]=lt):lt=e[67];let ft=lt,pe;e[68]!==o?(pe=o("email"),e[68]=o,e[69]=pe):pe=e[69];let ve;e[70]!==pe?(ve={head:pe,render:er},e[70]=pe,e[71]=ve):ve=e[71];let ye;e[72]!==o?(ye=o("role"),e[72]=o,e[73]=ye):ye=e[73];let Ie;e[74]!==ye?(Ie={head:ye,render:tr},e[74]=ye,e[75]=Ie):Ie=e[75];let Ce;e[76]!==o?(Ce=o("status"),e[76]=o,e[77]=Ce):Ce=e[77];let xe;e[78]!==Ce?(xe={head:Ce,render:rr},e[78]=Ce,e[79]=xe):xe=e[79];let it;e[80]!==ve||e[81]!==Ie||e[82]!==xe?(it=[ve,Ie,xe],e[80]=ve,e[81]=Ie,e[82]=xe,e[83]=it):it=e[83];let pt=it,we;e[84]!==o?(we=o("id"),e[84]=o,e[85]=we):we=e[85];let ze;e[86]!==we?(ze={className:"font-mono text-xs",head:we,render:or},e[86]=we,e[87]=ze):ze=e[87];let ke;e[88]!==o?(ke=o("name"),e[88]=o,e[89]=ke):ke=e[89];let Ne;e[90]!==ke?(Ne={head:ke,render:ar},e[90]=ke,e[91]=Ne):Ne=e[91];let st;e[92]!==ze||e[93]!==Ne?(st=[ze,Ne],e[92]=ze,e[93]=Ne,e[94]=st):st=e[94];let vt=st,Se;e[95]!==o?(Se=o("userId"),e[95]=o,e[96]=Se):Se=e[96];let dt;e[97]!==Se?(dt=[{head:Se,render:nr}],e[97]=Se,e[98]=dt):dt=e[98];let yt=dt,Ae;e[99]!==o?(Ae=o("role"),e[99]=o,e[100]=Ae):Ae=e[100];let _e;e[101]!==Ae?(_e={head:Ae,render:lr},e[101]=Ae,e[102]=_e):_e=e[102];let Oe;e[103]!==o?(Oe=o("Permission"),e[103]=o,e[104]=Oe):Oe=e[104];let De;e[105]!==Oe?(De={className:"font-mono text-xs whitespace-pre-wrap",head:Oe,render:ir},e[105]=Oe,e[106]=De):De=e[106];let mt;e[107]!==_e||e[108]!==De?(mt=[_e,De],e[107]=_e,e[108]=De,e[109]=mt):mt=e[109];let It=mt,$e;e[110]!==ae?($e=ae!==null&&(0,a.jsx)("p",{className:"text-sm text-destructive","data-testid":"org-detail-error",role:"alert",children:ae}),e[110]=ae,e[111]=$e):$e=e[111];let Re;e[112]!==h?(Re=h!==null&&(0,a.jsx)("p",{className:"text-sm text-destructive","data-testid":"org-action-error",role:"alert",children:h}),e[112]=h,e[113]=Re):Re=e[113];let ct;e[114]===Symbol.for("react.memo_cache_sentinel")?(ct=i(()=>{s({kind:"add-member"})},"dt"),e[114]=ct):ct=e[114];let Fe;e[115]!==o?(Fe=o("Add member"),e[115]=o,e[116]=Fe):Fe=e[116];let Me;e[117]!==Fe?(Me=(0,a.jsx)(P,{"data-testid":"org-open-add-member",onClick:ct,size:"xs",type:"button",variant:"outline",children:Fe}),e[117]=Fe,e[118]=Me):Me=e[118];let ut;e[119]===Symbol.for("react.memo_cache_sentinel")?(ut=i(()=>{s({kind:"invite-member"})},"ct"),e[119]=ut):ut=e[119];let Ee;e[120]!==o?(Ee=o("Invite member"),e[120]=o,e[121]=Ee):Ee=e[121];let Le;e[122]!==Ee?(Le=(0,a.jsx)(P,{"data-testid":"org-open-invite-member",onClick:ut,size:"xs",type:"button",variant:"outline",children:Ee}),e[122]=Ee,e[123]=Le):Le=e[123];let je;e[124]!==Me||e[125]!==Le?(je=(0,a.jsxs)(a.Fragment,{children:[Me,Le]}),e[124]=Me,e[125]=Le,e[126]=je):je=e[126];let Pe;e[127]!==o?(Pe=o("Members"),e[127]=o,e[128]=Pe):Pe=e[128];let Je;e[129]!==v||e[130]!==l||e[131]!==ft||e[132]!==T||e[133]!==le||e[134]!==o?(Je=T.length===0?(0,a.jsx)("div",{className:"p-3",children:(0,a.jsx)(ce,{testId:"org-members-empty",title:o("No members.")})}):(0,a.jsx)(ot,{columns:ft,rowActions:i(E=>(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(P,{"data-testid":`org-member-role-${S(E.id)}`,onClick:i(()=>{s({kind:"member-role",member:E})},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Change role")}),(0,a.jsx)(P,{"data-testid":`org-remove-member-${S(E.id)}`,disabled:v,onClick:i(()=>{le(()=>l.removeAuthOrgMember({memberId:S(E.id)}))},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Remove")})]}),"rowActions"),rowPrefix:"org-member",rows:T}),e[129]=v,e[130]=l,e[131]=ft,e[132]=T,e[133]=le,e[134]=o,e[135]=Je):Je=e[135];let Ue;e[136]!==je||e[137]!==Pe||e[138]!==Je?(Ue=(0,a.jsx)(rt,{action:je,heading:Pe,testId:"org-members",children:Je}),e[136]=je,e[137]=Pe,e[138]=Je,e[139]=Ue):Ue=e[139];let qe;e[140]!==v||e[141]!==l||e[142]!==pt||e[143]!==M||e[144]!==le||e[145]!==o?(qe=M.length>0&&(0,a.jsx)(rt,{heading:o("Invitations"),testId:"org-invitations",children:(0,a.jsx)(ot,{columns:pt,rowActions:i(E=>(0,a.jsx)(P,{"data-testid":`org-cancel-invitation-${S(E.id)}`,disabled:v,onClick:i(()=>{le(()=>l.cancelAuthOrgInvitation({invitationId:S(E.id)}))},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Cancel")}),"rowActions"),rowPrefix:"org-invitation",rows:M})}),e[140]=v,e[141]=l,e[142]=pt,e[143]=M,e[144]=le,e[145]=o,e[146]=qe):qe=e[146];let Be;e[147]!==bt||e[148]!==m||e[149]!==o||e[150]!==vt||e[151]!==oe||e[152]!==u?(Be=u&&(0,a.jsx)(rt,{action:(0,a.jsx)(P,{"data-testid":"org-open-create-team",onClick:i(()=>{s({kind:"team-create"})},"onClick"),size:"xs",type:"button",variant:"outline",children:o("New team")}),heading:o("Teams"),testId:"org-teams",children:oe.length===0?(0,a.jsx)("div",{className:"p-3",children:(0,a.jsx)(ce,{testId:"org-teams-empty",title:o("No teams.")})}):(0,a.jsx)(ot,{columns:vt,rowActions:i(E=>(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(P,{"aria-pressed":m===S(E.id),"data-testid":`org-team-select-${S(E.id)}`,onClick:i(()=>{c(S(E.id))},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Members")}),(0,a.jsx)(P,{"data-testid":`org-team-rename-${S(E.id)}`,onClick:i(()=>{s({kind:"team-rename",team:E})},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Rename")}),(0,a.jsx)(P,{"data-testid":`org-team-delete-${S(E.id)}`,onClick:i(()=>{bt(E)},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Delete")})]}),"rowActions"),rowPrefix:"org-team",rows:oe})}),e[147]=bt,e[148]=m,e[149]=o,e[150]=vt,e[151]=oe,e[152]=u,e[153]=Be):Be=e[153];let He;e[154]!==v||e[155]!==l||e[156]!==le||e[157]!==m||e[158]!==o||e[159]!==yt||e[160]!==ee||e[161]!==u?(He=u&&m!==null&&(0,a.jsx)(rt,{action:(0,a.jsx)(P,{"data-testid":"org-open-add-team-member",onClick:i(()=>{s({kind:"team-add-member",teamId:m})},"onClick"),size:"xs",type:"button",variant:"outline",children:o("Add member")}),heading:o("Team members"),testId:"org-team-members",children:ee.length===0?(0,a.jsx)("div",{className:"p-3",children:(0,a.jsx)(ce,{testId:"org-team-members-empty",title:o("No team members.")})}):(0,a.jsx)(ot,{columns:yt,rowActions:i(E=>(0,a.jsx)(P,{"data-testid":`org-team-remove-member-${S(E.id)}`,disabled:v,onClick:i(()=>{le(()=>l.removeAuthOrgTeamMember({teamMemberId:S(E.id)}))},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Remove")}),"rowActions"),rowPrefix:"org-team-member",rows:ee})}),e[154]=v,e[155]=l,e[156]=le,e[157]=m,e[158]=o,e[159]=yt,e[160]=ee,e[161]=u,e[162]=He):He=e[162];let Ke;e[163]!==l||e[164]!==It||e[165]!==V||e[166]!==d||e[167]!==o?(Ke=d&&(0,a.jsx)(rt,{action:(0,a.jsx)(P,{"data-testid":"org-open-create-role",onClick:i(()=>{s({kind:"role-create"})},"onClick"),size:"xs",type:"button",variant:"outline",children:o("New role")}),heading:o("Roles"),testId:"org-roles",children:V.length===0?(0,a.jsx)("div",{className:"p-3",children:(0,a.jsx)(ce,{testId:"org-roles-empty",title:o("No custom roles.")})}):(0,a.jsx)(ot,{columns:It,rowActions:i(E=>(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(P,{"data-testid":`org-role-edit-${S(E.id)}`,onClick:i(()=>{s({kind:"role-edit",role:E})},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Edit")}),(0,a.jsx)(P,{"data-testid":`org-role-delete-${S(E.id)}`,onClick:i(()=>{s({action:i(()=>l.deleteAuthOrgRole({roleId:S(E.id)}),"action"),kind:"confirm",message:o("Delete this custom role? Members keeping it will lose its grants."),testId:"org-role-delete",title:o("Delete role")})},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Delete")})]}),"rowActions"),rowPrefix:"org-role",rows:V})}),e[163]=l,e[164]=It,e[165]=V,e[166]=d,e[167]=o,e[168]=Ke):Ke=e[168];let Te;e[169]!==n?.kind||e[170]!==r||e[171]!==O?(Te=n?.kind==="add-member"&&(0,a.jsx)(Tt,{onClose:L,onDone:O,organizationId:r}),e[169]=n?.kind,e[170]=r,e[171]=O,e[172]=Te):Te=e[172];let Xe;e[173]!==n?.kind||e[174]!==r||e[175]!==O?(Xe=n?.kind==="invite-member"&&(0,a.jsx)(Xt,{onClose:L,onDone:O,organizationId:r}),e[173]=n?.kind,e[174]=r,e[175]=O,e[176]=Xe):Xe=e[176];let Ye;e[177]!==n||e[178]!==O?(Ye=n?.kind==="member-role"&&(0,a.jsx)(Yt,{member:n.member,onClose:L,onDone:O}),e[177]=n,e[178]=O,e[179]=Ye):Ye=e[179];let Ze;e[180]!==n?.kind||e[181]!==r||e[182]!==O?(Ze=n?.kind==="team-create"&&(0,a.jsx)(Lt,{mode:"create",onClose:L,onDone:O,organizationId:r}),e[180]=n?.kind,e[181]=r,e[182]=O,e[183]=Ze):Ze=e[183];let Ge;e[184]!==n||e[185]!==r||e[186]!==O?(Ge=n?.kind==="team-rename"&&(0,a.jsx)(Lt,{mode:"edit",onClose:L,onDone:O,organizationId:r,team:n.team}),e[184]=n,e[185]=r,e[186]=O,e[187]=Ge):Ge=e[187];let Qe;e[188]!==n||e[189]!==O?(Qe=n?.kind==="team-add-member"&&(0,a.jsx)(Zt,{onClose:L,onDone:O,teamId:n.teamId}),e[188]=n,e[189]=O,e[190]=Qe):Qe=e[190];let Ve;e[191]!==n?.kind||e[192]!==r||e[193]!==O?(Ve=n?.kind==="role-create"&&(0,a.jsx)(jt,{mode:"create",onClose:L,onDone:O,organizationId:r}),e[191]=n?.kind,e[192]=r,e[193]=O,e[194]=Ve):Ve=e[194];let We;e[195]!==n||e[196]!==r||e[197]!==O?(We=n?.kind==="role-edit"&&(0,a.jsx)(jt,{mode:"edit",onClose:L,onDone:O,organizationId:r,role:n.role}),e[195]=n,e[196]=r,e[197]=O,e[198]=We):We=e[198];let et;e[199]!==n||e[200]!==O?(et=n?.kind==="confirm"&&(0,a.jsx)(Ut,{action:n.action,message:n.message,onClose:L,onDone:O,testId:n.testId,title:n.title}),e[199]=n,e[200]=O,e[201]=et):et=e[201];let gt;return e[202]!==$e||e[203]!==Re||e[204]!==Ue||e[205]!==qe||e[206]!==Be||e[207]!==He||e[208]!==Ke||e[209]!==Te||e[210]!==Xe||e[211]!==Ye||e[212]!==Ze||e[213]!==Ge||e[214]!==Qe||e[215]!==Ve||e[216]!==We||e[217]!==et?(gt=(0,a.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"org-detail",children:[$e,Re,Ue,qe,Be,He,Ke,Te,Xe,Ye,Ze,Ge,Qe,Ve,We,et]}),e[202]=$e,e[203]=Re,e[204]=Ue,e[205]=qe,e[206]=Be,e[207]=He,e[208]=Ke,e[209]=Te,e[210]=Xe,e[211]=Ye,e[212]=Ze,e[213]=Ge,e[214]=Qe,e[215]=Ve,e[216]=We,e[217]=et,e[218]=gt):gt=e[218],gt},"Qt");function Qt(t){return(0,a.jsx)(se,{children:t.head},t.head)}i(Qt,"Gt");function Vt(t){return(0,a.jsx)("span",{className:"font-mono text-xs",children:S(t.userId)})}i(Vt,"Vt");function Wt(t){return S(t.role)}i(Wt,"Wt");function er(t){return S(t.email)}i(er,"Xt");function tr(t){return S(t.role)}i(tr,"Yt");function rr(t){return S(t.status)}i(rr,"Zt");function or(t){return S(t.id)}i(or,"er");function ar(t){return S(t.name)}i(ar,"tr");function nr(t){return(0,a.jsx)("span",{className:"font-mono text-xs",children:S(t.userId)})}i(nr,"rr");function lr(t){return S(t.role)}i(lr,"or");function ir(t){return S(t.permission)}i(ir,"nr");var xr=i(()=>{let t=(0,Y.c)(62),e=re(),r=Z(),{config:d,ready:u}=Ft(),l=d.capabilities.organization,[o,n]=(0,J.useState)(null),[s,m]=(0,J.useState)(null),c;t[0]===Symbol.for("react.memo_cache_sentinel")?(c=["lunora-auth-orgs"],t[0]=c):c=t[0];let v;t[1]!==e?(v=i(()=>e.listAuthOrganizations({limit:100}),"p"),t[1]=e,t[2]=v):v=t[2];let g;t[3]!==l?(g={enabled:l},t[3]=l,t[4]=g):g=t[4];let h=ue(c,v,g),w=h.data?.rows??null,f;t[5]!==h?(f=i(()=>{h.refetch()},"b"),t[5]=h,t[6]=f):f=t[6],At(f,l);let y;t[7]===Symbol.for("react.memo_cache_sentinel")?(y=i(()=>{m(null)},"v"),t[7]=y):y=t[7];let z=y,p;t[8]!==h?(p=i(()=>{h.refetch()},"f"),t[8]=h,t[9]=p):p=t[9];let x=p,b;t[10]===Symbol.for("react.memo_cache_sentinel")?(b=i(F=>{n(F)},"h"),t[10]=b):b=t[10];let k=b;if(u&&!l){let F;t[11]!==r?(F=r("Enable the organization() plugin in your auth config to manage organizations here."),t[11]=r,t[12]=F):F=t[12];let M;t[13]!==r?(M=r("Organizations are not enabled."),t[13]=r,t[14]=M):M=t[14];let H;return t[15]!==F||t[16]!==M?(H=(0,a.jsx)(ce,{description:F,testId:"org-disabled",title:M}),t[15]=F,t[16]=M,t[17]=H):H=t[17],H}let I;t[18]!==r?(I=r("Organizations"),t[18]=r,t[19]=I):I=t[19];let C;t[20]!==I?(C=(0,a.jsx)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:I}),t[20]=I,t[21]=C):C=t[21];let N;t[22]===Symbol.for("react.memo_cache_sentinel")?(N=i(()=>{m({kind:"create"})},"z"),t[22]=N):N=t[22];let D;t[23]!==r?(D=r("New organization"),t[23]=r,t[24]=D):D=t[24];let _;t[25]!==D?(_=(0,a.jsx)(P,{"data-testid":"org-new",onClick:N,size:"sm",type:"button",children:D}),t[25]=D,t[26]=_):_=t[26];let A;t[27]!==_||t[28]!==C?(A=(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[C,_]}),t[27]=_,t[28]=C,t[29]=A):A=t[29];let $;t[30]!==h.error?($=h.error!==null&&(0,a.jsx)("p",{className:"text-sm text-destructive","data-testid":"org-error",role:"alert",children:h.error}),t[30]=h.error,t[31]=$):$=t[31];let R;t[32]!==w||t[33]!==r?(R=w!==null&&w.length===0&&(0,a.jsx)(ce,{testId:"org-empty",title:r("No organizations.")}),t[32]=w,t[33]=r,t[34]=R):R=t[34];let U;t[35]!==w||t[36]!==o||t[37]!==r?(U=w!==null&&w.length>0&&(0,a.jsx)(xt,{className:"overflow-hidden py-0",children:(0,a.jsx)(wt,{className:"px-0",children:(0,a.jsxs)(zt,{"data-testid":"org-table",children:[(0,a.jsx)(kt,{children:(0,a.jsxs)(tt,{children:[(0,a.jsx)(se,{children:r("id")}),(0,a.jsx)(se,{children:r("name")}),(0,a.jsx)(se,{children:r("slug")}),(0,a.jsx)(se,{children:r("created")}),(0,a.jsx)(se,{"aria-label":r("Actions")})]})}),(0,a.jsx)(Nt,{children:w.map(F=>{let M=S(F.id);return(0,a.jsxs)(tt,{"data-testid":`org-row-${M}`,children:[(0,a.jsx)(de,{className:"font-mono text-xs",children:M}),(0,a.jsx)(de,{children:S(F.name)}),(0,a.jsx)(de,{children:S(F.slug)}),(0,a.jsx)(de,{className:"text-muted-foreground tabular-nums",children:$t(F.createdAt)}),(0,a.jsx)(de,{children:(0,a.jsxs)("div",{className:"flex justify-end gap-1",children:[(0,a.jsx)(P,{"aria-pressed":o===M,"data-testid":`org-select-${M}`,onClick:i(()=>{k(M)},"onClick"),size:"xs",type:"button",variant:"ghost",children:r("Manage")}),(0,a.jsx)(P,{"data-testid":`org-edit-${M}`,onClick:i(()=>{m({kind:"edit",org:F})},"onClick"),size:"xs",type:"button",variant:"ghost",children:r("Edit")}),(0,a.jsx)(P,{"data-testid":`org-delete-${M}`,onClick:i(()=>{m({kind:"delete",org:F})},"onClick"),size:"xs",type:"button",variant:"ghost",children:r("Delete")})]})})]},M)})})]})})}),t[35]=w,t[36]=o,t[37]=r,t[38]=U):U=t[38];let K;t[39]!==d.organization||t[40]!==o?(K=o!==null&&(0,a.jsx)(Gt,{organizationId:o,rolesEnabled:d.organization.roles,teamsEnabled:d.organization.teams}),t[39]=d.organization,t[40]=o,t[41]=K):K=t[41];let q;t[42]!==s?.kind||t[43]!==x?(q=s?.kind==="create"&&(0,a.jsx)(Et,{mode:"create",onClose:z,onDone:x}),t[42]=s?.kind,t[43]=x,t[44]=q):q=t[44];let j;t[45]!==s||t[46]!==x?(j=s?.kind==="edit"&&(0,a.jsx)(Et,{mode:"edit",onClose:z,onDone:x,org:s.org}),t[45]=s,t[46]=x,t[47]=j):j=t[47];let B;t[48]!==e||t[49]!==s||t[50]!==x||t[51]!==r?(B=s?.kind==="delete"&&(0,a.jsx)(Ut,{action:i(async()=>{let F=S(s.org.id);await e.deleteAuthOrganization({organizationId:F}),n(M=>M===F?null:M)},"action"),message:r("Delete this organization? Its members, invitations, teams, and custom roles are removed. This cannot be undone."),onClose:z,onDone:x,testId:"org-delete",title:r("Delete organization")}),t[48]=e,t[49]=s,t[50]=x,t[51]=r,t[52]=B):B=t[52];let T;return t[53]!==A||t[54]!==$||t[55]!==R||t[56]!==U||t[57]!==K||t[58]!==q||t[59]!==j||t[60]!==B?(T=(0,a.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"lunora-organizations",children:[A,$,R,U,K,q,j,B]}),t[53]=A,t[54]=$,t[55]=R,t[56]=U,t[57]=K,t[58]=q,t[59]=j,t[60]=B,t[61]=T):T=t[61],T},"Cr");export{xr as OrganizationsPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var _={assignIssue:"__lunora_admin__:assignIssue",clearCapturedMail:"__lunora_admin__:clearCapturedMail",clearQueueMessages:"__lunora_admin__:clearQueueMessages",clearTable:"__lunora_admin__:clearTable",createWorkflowInstance:"__lunora_admin__:createWorkflowInstance",deleteRows:"__lunora_admin__:deleteRows",describeTable:"__lunora_admin__:describeTable",describeTables:"__lunora_admin__:describeTables",exportShard:"__lunora_admin__:exportShard",facetColumn:"__lunora_admin__:facetColumn",getAdvisories:"__lunora_admin__:getAdvisories",getAuditLog:"__lunora_admin__:getAuditLog",getAuthAuditLog:"__lunora_admin__:getAuthAuditLog",getAuthMetrics:"__lunora_admin__:getAuthMetrics",getCapturedMail:"__lunora_admin__:getCapturedMail",getFanoutMetrics:"__lunora_admin__:getFanoutMetrics",getFunctionStats:"__lunora_admin__:getFunctionStats",getIssues:"__lunora_admin__:getIssues",listFlags:"__lunora_admin__:listFlags",listPushSubscriptions:"__lunora_admin__:listPushSubscriptions",listQueues:"__lunora_admin__:listQueues",listSubscriptions:"__lunora_admin__:listSubscriptions",listTableIndexes:"__lunora_admin__:listTableIndexes",listWorkflows:"__lunora_admin__:listWorkflows",getLogs:"__lunora_admin__:getLogs",getMetricHistory:"__lunora_admin__:getMetricHistory",getMetricSeries:"__lunora_admin__:getMetricSeries",getMetrics:"__lunora_admin__:getMetrics",getPitrBookmark:"__lunora_admin__:getPitrBookmark",getQueueMessages:"__lunora_admin__:getQueueMessages",getRequestLog:"__lunora_admin__:getRequestLog",getSecurityAudit:"__lunora_admin__:getSecurityAudit",getSettings:"__lunora_admin__:getSettings",getTraces:"__lunora_admin__:getTraces",getWorkflowInstanceStatus:"__lunora_admin__:getWorkflowInstanceStatus",ignoreIssue:"__lunora_admin__:ignoreIssue",importShard:"__lunora_admin__:importShard",listTables:"__lunora_admin__:listTables",maskPolicies:"__lunora_admin__:maskPolicies",migrationStatus:"__lunora_admin__:migrationStatus",pitrRestore:"__lunora_admin__:pitrRestore",readTablePage:"__lunora_admin__:readTablePage",replayQueueMessage:"__lunora_admin__:replayQueueMessage",resolveIssue:"__lunora_admin__:resolveIssue",rlsPolicies:"__lunora_admin__:rlsPolicies",runAs:"__lunora_admin__:runAs",runMigration:"__lunora_admin__:runMigration",runSql:"__lunora_admin__:runSql",sendQueueMessage:"__lunora_admin__:sendQueueMessage",sendTestMail:"__lunora_admin__:sendTestMail",setIssueSeverity:"__lunora_admin__:setIssueSeverity",storageOrphans:"__lunora_admin__:storageOrphans",storageReferences:"__lunora_admin__:storageReferences",storageRules:"__lunora_admin__:storageRules",studioFeatures:"__lunora_admin__:studioFeatures",writeRow:"__lunora_admin__:writeRow"};export{_ as a};
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import{a as t}from"./chunk-3XIESWL4.js";var s={BAD_REQUEST:{status:400,title:"Bad request"},UNAUTHORIZED:{status:401,title:"Unauthorized"},FORBIDDEN:{status:403,title:"Forbidden"},NOT_FOUND:{status:404,title:"Not found"},CONFLICT:{hint:["Another write changed this row while your mutation was running (optimistic concurrency conflict).","","Re-read the row and retry the mutation with the fresh value. Lunora serializes a DO's mutations, so a persistent conflict usually means the handler conflicts **with itself** (e.g. a trigger or cascade touching the same row) \u2014 split that work rather than adding a retry loop."],status:409,title:"Conflict"},NOT_UNIQUE:{hint:["`.unique()` matched more than one document \u2014 it expects the query to identify at most one row.","","- If several matches are legitimate, use `.first()` (take one) or `.collect()` (take all) instead.","- Otherwise tighten the query (e.g. filter on a unique/indexed field) so it can only match one row."],status:400,title:"Query matched more than one document"},VALIDATION_ERROR:{status:400,title:"Validation failed"},TOO_MANY_REQUESTS:{status:429,title:"Too many requests"},UNPROCESSABLE:{status:422,title:"Unprocessable"},NOT_IMPLEMENTED:{status:501,title:"Not implemented"},FUNCTION_NOT_FOUND:{status:404,title:"Function not found"},METHOD_NOT_ALLOWED:{status:405,title:"Method not allowed"},PAYLOAD_TOO_LARGE:{status:413,title:"Payload too large"},INTERNAL:{internal:!0,status:500,title:"Internal error"},INTERNAL_SERVER_ERROR:{internal:!0,status:500,title:"Internal error"},RPC_FAILED:{internal:!0,status:500,title:"Internal error"},COUNT_RLS_UNSUPPORTED:{status:422,title:"count() is unsupported under an RLS policy"},MASK_UNSUPPORTED:{status:422,title:"Aggregation over a masked column is unsupported"},RELATION_PREDICATE_UNSUPPORTED:{status:422,title:"Relation predicate is unsupported in a write policy"},RLS_REQUIRED:{hint:["This table is secure-by-default: it has no `.public()` marker and no RLS policy resolved for the caller, so the read fails closed.","","Add a read policy with `.rls(...)`, or mark the table `.public()` if it is intentionally world-readable."],status:403,title:"RLS policy required"},RUN_DEPTH_EXCEEDED:{internal:!0,status:500,title:"Run depth exceeded"},MIGRATION_NOT_FOUND:{status:404,title:"Data migration not found"},UNKNOWN_TABLE:{status:404,title:"Unknown table"},GLOBAL_TABLE_NOT_EDITABLE:{status:400,title:"Global table is not editable"},SHARD_ERROR:{status:503,title:"Shard error"},SHARD_UNAVAILABLE:{status:503,title:"Shard unavailable"},OFFLINE_IDENTITY_CHANGED:{status:409,title:"Offline identity changed"},CODEGEN_DIAGNOSTIC:{status:500,title:"Codegen diagnostic"},SCHEMA_SNAPSHOT_PARSE:{status:500,title:"Schema snapshot parse error"},ENV_INVALID:{internal:!0,status:500,title:"Invalid environment"},AUTH_HEADERS_MISSING:{internal:!0,status:500,title:"Auth headers missing"},EMAIL_DOMAIN_BLOCKED:{hint:["This address's domain is on the disposable/throwaway blocklist (or your configured deny-list).","","Sign up with a permanent mailbox. To tune the policy, pass `blockDisposable` / `allowDomains` / `denyDomains` to `emailGate(...)` (`@lunora/auth/email-guard`)."],status:400,title:"Email domain not allowed"},EMAIL_UNDELIVERABLE:{hint:["The address's domain publishes no MX (or fallback A/AAAA) records, so it can't receive mail.","","Check for a typo in the domain. MX verification is opt-in (`mx: true`) and needs DNS \u2014 leave it off on the edge path if DNS is unavailable."],status:400,title:"Email domain cannot receive mail"},ANALYTICS_SQL_ERROR:{status:502,title:"Analytics Engine SQL API error"},R2_SQL_ERROR:{status:502,title:"R2 SQL API error"},WORKFLOWS_REST_ERROR:{status:502,title:"Cloudflare Workflows REST API error"}},r=t(e=>Object.hasOwn(s,e)?s[e]:void 0,"n");var d=[{body:["Lunora codegen couldn't find a schema to generate from.","","Create `lunora/schema.ts` exporting a `defineSchema(...)` call:","","```ts",'import { defineSchema, defineTable, v } from "@lunora/server";',"","export default defineSchema({"," messages: defineTable({ body: v.string() }),","});","```","","Or run `lunora init` to scaffold Lunora (a sample `lunora/schema.ts` included) into your app."].join(`
|
|
2
|
-
`),header:"No Lunora schema found",id:"lunora-schema-missing",test:t(e=>e.includes("defineSchema() not found")||e.includes("schema.ts not found at"),"test")},{body:["`defineSchema(...)` must be called with an **inline object literal** mapping table names to `defineTable(...)`:","","```ts","export default defineSchema({"," todos: defineTable({ title: v.string(), done: v.boolean() }),","});","```","","Codegen reads the schema statically, so it can't follow a variable or a spread \u2014 pass the object literal directly."].join(`
|
|
3
|
-
`),header:"`defineSchema()` needs an inline object literal",id:"lunora-schema-not-object-literal",test:t(e=>e.includes("defineSchema() expects an object literal"),"test")},{body:["This table name collides with a built-in `ctx.db` member, so the generated client can't expose it.","","Rename the table to anything that isn't a reserved name (the error lists them) \u2014 e.g. `userAccounts` instead of `insert`."].join(`
|
|
4
|
-
`),header:"Table name is reserved",id:"lunora-table-reserved",test:t(e=>e.includes("is reserved")&&e.includes("ctx.db"),"test")},{body:["Two tables resolve to the same name \u2014 usually a base table and a schema **extension** both defining it.","","Rename one of them, or drop the duplicate from the extension. Each table name must be unique across `defineSchema(...)` and every `.extend(...)`."].join(`
|
|
5
|
-
`),header:"Duplicate table name",id:"lunora-table-duplicate",test:t(e=>e.includes("already exists")&&e.includes(".extend("),"test")},{body:['`.jurisdiction(...)` accepts only a **string literal** of `"eu"`, `"us"`, or `"fedramp"`:',"","```ts",'defineSchema({ /* \u2026 */ }).jurisdiction("eu");',"```"].join(`
|
|
6
|
-
`),header:"Invalid `.jurisdiction(...)` value",id:"lunora-jurisdiction",test:t(e=>e.includes("unknown jurisdiction")||e.includes("jurisdiction")&&e.includes('"eu", "us", or "fedramp"'),"test")},{body:["The `unique` flag on an index must be a **literal** `true` or `false`, not a computed value \u2014 codegen needs to read it statically:","","```ts",'defineTable({ email: v.string() }).index("by_email", ["email"], { unique: true });',"```"].join(`
|
|
7
|
-
`),header:"`unique` must be a literal",id:"lunora-unique-literal",test:t(e=>e.includes("must be a literal")&&e.includes("unique"),"test")},{body:["A declared container/workflow class isn't re-exported by your worker entry, so `wrangler deploy` would reject it.","","Add the generated re-export shown in the error to your worker entry (e.g. `src/index.ts`):","","```ts",'export * from "./lunora/_generated/containers";',"```"].join(`
|
|
8
|
-
`),header:"Binding not exported by your worker entry",id:"lunora-worker-entry-export-gap",test:t(e=>e.includes("not exported by your worker entry"),"test")},{body:["A row with the same value already exists in a `unique` index.","","- If you meant to upsert, use `ctx.db.<table>().upsert(...)` (or `.patch(...)` an existing row) instead of `.insert(...)`.",`- Otherwise pick a value that isn't already taken, and consider surfacing a friendly "already exists" message to the user.`].join(`
|
|
9
|
-
`),header:"Unique constraint violation",id:"lunora-runtime-unique",test:t(e=>e.includes("unique constraint violation on"),"test")},{body:s.CONFLICT.hint.join(`
|
|
10
|
-
`),header:"Optimistic concurrency conflict",id:"lunora-runtime-occ",test:t(e=>e.includes("optimistic concurrency conflict"),"test")}],u=t(e=>(typeof e=="string"?e:e.join(`
|
|
11
|
-
`)).split(`
|
|
12
|
-
`).filter(i=>!i.startsWith("```")).join(`
|
|
13
|
-
`).replaceAll(/\*\*(.+?)\*\*/gu,"$1").replaceAll(/`([^`]+)`/gu,"$1"),"s");var o=class extends Error{static{t(this,"c")}type="VisulimaError";hint;title;loc;code;status;docsUrl;data;constructor(i,l,a={}){let n=r(i);super(l??i,a.cause===void 0?void 0:{cause:a.cause}),this.name=a.name??"LunoraError",this.hint=a.hint??n?.hint,this.title=a.title??n?.title,this.loc=a.location,this.code=i,this.status=a.status??n?.status??500,this.docsUrl=a.docsUrl??n?.docsUrl,this.data=a.data}};export{u as a,o as b};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as me,b as pe,c as fe,d as ve,e as W}from"./chunk-3RTTXLMU.js";import"./chunk-2PJNAWB3.js";import{a as ue}from"./chunk-X2FQ6B5V.js";import"./chunk-SD4BERSA.js";import"./chunk-IC4L6G56.js";import"./chunk-7YEFOSPH.js";import"./chunk-BGBLQ563.js";import"./chunk-IVFHIQOT.js";import{a as oe}from"./chunk-LFKCLLPT.js";import"./chunk-T6VMSOBB.js";import{b as ne}from"./chunk-XSD4Y6SQ.js";import{a as de,b as ce,c as he,d as Q,e as m,f as p}from"./chunk-MIQTKZAR.js";import{a as ee,e as se}from"./chunk-UZERI5YC.js";import"./chunk-QBWRC5YX.js";import{a as le}from"./chunk-LFXFP4IF.js";import"./chunk-GRL5MG3Z.js";import"./chunk-7T7UOTYK.js";import{R as Z}from"./chunk-CFPZYHPY.js";import"./chunk-7QIFDWQV.js";import{c as $}from"./chunk-FXCBF4XT.js";import"./chunk-2OUPA2WJ.js";import{b as U}from"./chunk-THIXMMZD.js";import"./chunk-6ST5ECQA.js";import{a as I}from"./chunk-GXZAXNZI.js";import{f as X}from"./chunk-35II7U25.js";import"./chunk-XBDKZZ67.js";import{a as te}from"./chunk-XQCVZAGU.js";import{d as Y,f as C,g as ae,h as re,m as w,q as ie}from"./chunk-4CGALXS3.js";import"./chunk-LE56LPNH.js";import{a as r,e as P,f as $e,g as Ce,h as Ae}from"./chunk-3XIESWL4.js";var xe=P(Ce(),1);var A=P($e(),1);var t=P(Ae(),1);var B="none",ke=["all","open","resolved","ignored"],ze=["critical","high","medium","low"],Ee=C(I.resolveIssue),Ke=C(I.ignoreIssue),ge=C(I.assignIssue),Me=C(I.setIssueSeverity),Re=r(i=>Array.isArray(i?.issues)?i.issues:[],"Ee"),Te=r(i=>i==="resolved"?"success":i==="ignored"?"secondary":"warning","Ke"),je=r(i=>i==="critical"?"destructive":i==="high"?"warning":i==="medium"?"info":"secondary","Me"),es=r(i=>{let e=(0,xe.c)(42),{initialShardKey:ye}=i,a=Y(),S=X(),[h,Ne]=(0,A.useState)(ye??""),[l,we]=(0,A.useState)("all"),[V,G]=(0,A.useState)(Le),[_,H]=(0,A.useState)(De),k;e[0]!==h?(k=h.trim(),e[0]=h,e[1]=k):k=e[1];let u=oe(k,400),z;e[2]!==l?(z=l==="all"?{}:{status:l},e[2]=l,e[3]=z):z=e[3];let E;e[4]!==u?(E={live:!0,shardKey:u},e[4]=u,e[5]=E):E=e[5];let{data:K,error:v,liveError:b}=ne(I.getIssues,z,E),q=K!==void 0,M;if(e[6]!==_||e[7]!==V||e[8]!==S||e[9]!==K||e[10]!==u||e[11]!==v||e[12]!==b||e[13]!==q||e[14]!==h||e[15]!==l||e[16]!==a){let J=Re(K),R;e[18]!==S||e[19]!==u?(R=r(async(s,n,d)=>{H(c=>{if(!c.has(s))return c;let f=new Map(c);return f.delete(s),f}),G(c=>new Set(c).add(s));try{await S.query(n,{...d,hash:s},ae(u))}catch(c){let f=re(c);H(be=>new Map(be).set(s,f))}G(c=>{let f=new Set(c);return f.delete(s),f})},"K"),e[18]=S,e[19]=u,e[20]=R):R=e[20];let o=R,T;e[21]!==o?(T=r(s=>n=>{if(n.key!=="Enter")return;let d=n.currentTarget.value.trim();w(o(s.hash,ge,{assignee:d===""?null:d}))},"M"),e[21]=o,e[22]=T):T=e[22];let Ie=T,j;e[23]!==o?(j=r(s=>n=>{let d=n===null||n===B?null:n;w(o(s.hash,Me,{severity:d}))},"R"),e[23]=o,e[24]=j):j=e[24];let Se=j,L;e[25]!==a?(L=r(s=>a(s==="all"?"All":s==="open"?"Open":s==="resolved"?"Resolved":"Ignored"),"T"),e[25]=a,e[26]=L):L=e[26];let F=L,D;e[27]!==v?(D=v!==null&&(0,t.jsx)("p",{className:"text-sm text-destructive","data-testid":"issues-error",role:"alert",children:v}),e[27]=v,e[28]=D):D=e[28];let g;e[29]!==h?(g=(0,t.jsx)(le,{onChange:Ne,testId:"issues-shard-input",value:h}),e[29]=h,e[30]=g):g=e[30];let x;e[31]!==b?(x=(0,t.jsx)(ue,{message:b,prefix:"issues"}),e[31]=b,e[32]=x):x=e[32];let y;e[33]!==l||e[34]!==F?(y=ke.map(s=>(0,t.jsx)($,{"data-active":l===s?"":void 0,"data-testid":`issues-filter-${s}`,onClick:r(()=>{we(s)},"onClick"),size:"xs",variant:l===s?"default":"outline",children:F(s)},s)),e[33]=l,e[34]=F,e[35]=y):y=e[35];let N;e[36]!==y?(N=(0,t.jsx)("div",{className:"ms-auto flex items-center gap-1","data-testid":"issues-status-filter",role:"group",children:y}),e[36]=y,e[37]=N):N=e[37];let O;e[38]!==g||e[39]!==x||e[40]!==N?(O=(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[g,x,N]}),e[38]=g,e[39]=x,e[40]=N,e[41]=O):O=e[41],M=(0,t.jsxs)("div",{className:"flex flex-col gap-6","data-testid":"lunora-issues-panel",children:[D,O,q&&J.length===0?(0,t.jsx)(te,{description:a("No grouped errors yet. When a function throws or a container crashes, matching errors fold into a single issue here."),testId:"issues-empty",title:a("No issues")}):(0,t.jsx)(ee,{className:"overflow-hidden py-0",children:(0,t.jsx)(se,{className:"px-0",children:(0,t.jsxs)(de,{"data-testid":"issues-table",children:[(0,t.jsx)(ce,{children:(0,t.jsxs)(Q,{children:[(0,t.jsx)(m,{children:a("Issue")}),(0,t.jsx)(m,{children:a("Status")}),(0,t.jsx)(m,{children:a("Severity")}),(0,t.jsx)(m,{children:a("Assignee")}),(0,t.jsx)(m,{className:"text-right",children:a("Events")}),(0,t.jsx)(m,{children:a("Last seen")}),(0,t.jsx)(m,{className:"text-right",children:a("Actions")})]})}),(0,t.jsx)(he,{children:J.map(s=>{let n=V.has(s.hash),d=_.get(s.hash);return(0,t.jsxs)(Q,{"data-testid":`issues-row-${s.hash}`,children:[(0,t.jsxs)(p,{className:"max-w-80",children:[(0,t.jsx)("div",{className:"truncate font-medium",title:s.title,children:s.title}),(0,t.jsx)("div",{className:"truncate font-mono text-xs text-muted-foreground",title:s.culprit,children:s.culprit}),d!==void 0&&(0,t.jsx)("p",{className:"text-xs text-destructive","data-testid":`issues-action-error-${s.hash}`,role:"alert",children:d})]}),(0,t.jsx)(p,{children:(0,t.jsx)(U,{"data-testid":`issues-status-${s.hash}`,variant:Te(s.status),children:s.status})}),(0,t.jsx)(p,{children:(0,t.jsxs)(me,{disabled:n,onValueChange:Se(s),value:s.severity??B,children:[(0,t.jsx)(fe,{"aria-label":a("Set severity"),className:"h-7 w-[110px]","data-testid":`issues-severity-${s.hash}`,children:(0,t.jsx)(pe,{placeholder:a("\u2014"),children:s.severity===void 0?(0,t.jsx)("span",{className:"text-muted-foreground",children:a("\u2014")}):(0,t.jsx)(U,{variant:je(s.severity),children:s.severity})})}),(0,t.jsxs)(ve,{children:[ze.map(Oe),(0,t.jsx)(W,{value:B,children:a("Clear")})]})]})}),(0,t.jsx)(p,{children:(0,t.jsx)(Z,{"aria-label":a("Assignee"),className:"h-7 w-32","data-testid":`issues-assignee-${s.hash}`,defaultValue:s.assignee??"",disabled:n,onKeyDown:Ie(s),placeholder:a("Unassigned")},s.assignee??"")}),(0,t.jsx)(p,{className:"text-right",children:(0,t.jsx)(U,{variant:"secondary",children:s.count})}),(0,t.jsx)(p,{className:"text-xs tabular-nums text-muted-foreground",children:ie(s.lastSeen)}),(0,t.jsx)(p,{className:"text-right",children:(0,t.jsxs)("div",{className:"flex justify-end gap-1",children:[s.status!=="resolved"&&(0,t.jsx)($,{"data-testid":`issues-resolve-${s.hash}`,disabled:n,onClick:r(()=>{w(o(s.hash,Ee,{}))},"onClick"),size:"xs",variant:"outline",children:a("Resolve")}),s.status!=="ignored"&&(0,t.jsx)($,{"data-testid":`issues-ignore-${s.hash}`,disabled:n,onClick:r(()=>{w(o(s.hash,Ke,{}))},"onClick"),size:"xs",variant:"ghost",children:a("Ignore")}),s.status!=="open"&&(0,t.jsx)($,{"data-testid":`issues-reopen-${s.hash}`,disabled:n,onClick:r(()=>{w(o(s.hash,ge,{assignee:s.assignee??null}))},"onClick"),size:"xs",variant:"ghost",children:a("Reopen")})]})})]},s.hash)})})]})})})]}),e[6]=_,e[7]=V,e[8]=S,e[9]=K,e[10]=u,e[11]=v,e[12]=b,e[13]=q,e[14]=h,e[15]=l,e[16]=a,e[17]=M}else M=e[17];return M},"Qe");function Le(){return new Set}r(Le,"Re");function De(){return new Map}r(De,"Te");function Oe(i){return(0,t.jsx)(W,{value:i,children:i},i)}r(Oe,"ze");export{es as IssuesPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as Oe,b as Ke}from"./chunk-3QRTYSSX.js";import{a as Qe}from"./chunk-JN2Y24PY.js";import{a as Ve}from"./chunk-ESVP44Y3.js";import{a as Je}from"./chunk-54MMVNPT.js";import"./chunk-IVFHIQOT.js";import{a as He}from"./chunk-LFKCLLPT.js";import{a as Ge}from"./chunk-XSD4Y6SQ.js";import{a as Ue,b as _e,c as $e,d as M,e as U,f as _}from"./chunk-MIQTKZAR.js";import{a as we,e as Ce}from"./chunk-UZERI5YC.js";import{a as D}from"./chunk-5Y3QLNWX.js";import"./chunk-QBWRC5YX.js";import{R as T}from"./chunk-CFPZYHPY.js";import"./chunk-7QIFDWQV.js";import{c as z}from"./chunk-FXCBF4XT.js";import"./chunk-2OUPA2WJ.js";import{b as B}from"./chunk-THIXMMZD.js";import"./chunk-6ST5ECQA.js";import{f as E}from"./chunk-35II7U25.js";import"./chunk-XBDKZZ67.js";import{a as Ze}from"./chunk-XQCVZAGU.js";import{d as W,h as Pe,l as Ae,m as ze,q as Ie}from"./chunk-4CGALXS3.js";import"./chunk-LE56LPNH.js";import{a as r,e as Me,f as Ye,g as et,h as tt}from"./chunk-3XIESWL4.js";var k=Me(Ye(),1);var Z=Me(et(),1);var t=Me(tt(),1);var at=r(()=>{let u=(0,Z.c)(3),{config:e,ready:l}=Oe(),s;return u[0]!==e.capabilities||u[1]!==l?(s={capabilities:e.capabilities,ready:l},u[0]=e.capabilities,u[1]=l,u[2]=s):s=u[2],s},"et"),st={boolean:"checkbox",date:"datetime-local",number:"number",string:"text"},lt=r((u,e)=>u.type==="boolean"?!0:typeof e!="string"||e.trim()===""?!1:u.type!=="number"||!Number.isNaN(Number(e.trim())),"at"),rt=r((u,e)=>{if(u.type==="boolean")return e===!0?{value:!0}:u.required?{value:!1}:void 0;let l=typeof e=="string"?e.trim():"";if(l!==""){if(u.type==="number"){let s=Number(l);return Number.isNaN(s)?void 0:{value:s}}return{value:l}}},"lt"),it=r(u=>{let e=(0,Z.c)(105),{onClose:l,onCreated:s}=u,c=E(),a=W(),{config:o}=Oe(),{busy:i,error:n,run:m}=Ke(),[w,S]=(0,k.useState)(""),[b,C]=(0,k.useState)(""),[y,I]=(0,k.useState)(""),[h,g]=(0,k.useState)(""),v;e[0]===Symbol.for("react.memo_cache_sentinel")?(v={},e[0]=v):v=e[0];let[f,d]=(0,k.useState)(v),A;e[1]===Symbol.for("react.memo_cache_sentinel")?(A=r(p=>{S(p.target.value)},"C"),e[1]=A):A=e[1];let x=A,F;e[2]===Symbol.for("react.memo_cache_sentinel")?(F=r(p=>{C(p.target.value)},"F"),e[2]=F):F=e[2];let q=F,R;e[3]===Symbol.for("react.memo_cache_sentinel")?(R=r(p=>{I(p.target.value)},"_"),e[3]=R):R=e[3];let Te=R,G;e[4]===Symbol.for("react.memo_cache_sentinel")?(G=r(p=>{g(p.target.value)},"O"),e[4]=G):G=e[4];let Be=G,H;e[5]===Symbol.for("react.memo_cache_sentinel")?(H=r((p,$)=>{d(V=>({...V,[p]:$}))},"G"),e[5]=H):H=e[5];let Re=H,J;e[6]!==f?(J=r(p=>f[p.name]??(p.type==="boolean"?!1:""),"H"),e[6]=f,e[7]=J):J=e[7];let j=J,K;if(e[8]!==o.userFields||e[9]!==j){let p;e[11]!==j?(p=r($=>!$.required||lt($,j($)),"p"),e[11]=j,e[12]=p):p=e[12],K=o.userFields.every(p),e[8]=o.userFields,e[9]=j,e[10]=K}else K=e[10];let Fe=K,Q;e[13]!==i||e[14]!==w||e[15]!==b||e[16]!==Fe?(Q=!i&&w.trim()!==""&&b.trim()!==""&&Fe,e[13]=i,e[14]=w,e[15]=b,e[16]=Fe,e[17]=Q):Q=e[17];let De=Q,X;e[18]!==o.userFields||e[19]!==j?(X=r(()=>{let p={};for(let $ of o.userFields){let V=rt($,j($));V!==void 0&&(p[$.name]=V.value)}return Object.keys(p).length===0?void 0:p},"W"),e[18]=o.userFields,e[19]=j,e[20]=X):X=e[20];let Se=X,Y;e[21]!==Se||e[22]!==c||e[23]!==w||e[24]!==b||e[25]!==l||e[26]!==s||e[27]!==y||e[28]!==h||e[29]!==m?(Y=r(()=>{m(async()=>{await c.createAuthUser({data:Se(),email:w.trim(),name:b.trim(),password:y===""?void 0:y,role:h.trim()===""?void 0:h.trim()}),s(),l()})},"Z"),e[21]=Se,e[22]=c,e[23]=w,e[24]=b,e[25]=l,e[26]=s,e[27]=y,e[28]=h,e[29]=m,e[30]=Y):Y=e[30];let N=Y,P;e[31]!==a?(P=a("Create user"),e[31]=a,e[32]=P):P=e[32];let L;e[33]!==a?(L=a("Create user"),e[33]=a,e[34]=L):L=e[34];let O;e[35]!==L?(O=(0,t.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:L}),e[35]=L,e[36]=O):O=e[36];let ee;e[37]!==a?(ee=a("email"),e[37]=a,e[38]=ee):ee=e[38];let te;e[39]!==ee?(te=(0,t.jsx)(D,{htmlFor:"uc-email",children:ee}),e[39]=ee,e[40]=te):te=e[40];let ae;e[41]!==w?(ae=(0,t.jsx)(T,{"data-testid":"uc-email",id:"uc-email",onChange:x,type:"email",value:w}),e[41]=w,e[42]=ae):ae=e[42];let se;e[43]!==te||e[44]!==ae?(se=(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[te,ae]}),e[43]=te,e[44]=ae,e[45]=se):se=e[45];let le;e[46]!==a?(le=a("name"),e[46]=a,e[47]=le):le=e[47];let re;e[48]!==le?(re=(0,t.jsx)(D,{htmlFor:"uc-name",children:le}),e[48]=le,e[49]=re):re=e[49];let ie;e[50]!==b?(ie=(0,t.jsx)(T,{"data-testid":"uc-name",id:"uc-name",onChange:q,value:b}),e[50]=b,e[51]=ie):ie=e[51];let ne;e[52]!==re||e[53]!==ie?(ne=(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[re,ie]}),e[52]=re,e[53]=ie,e[54]=ne):ne=e[54];let de;e[55]!==a?(de=a("Password (optional)"),e[55]=a,e[56]=de):de=e[56];let oe;e[57]!==de?(oe=(0,t.jsx)(D,{htmlFor:"uc-password",children:de}),e[57]=de,e[58]=oe):oe=e[58];let ce;e[59]!==y?(ce=(0,t.jsx)(T,{"data-testid":"uc-password",id:"uc-password",onChange:Te,type:"password",value:y}),e[59]=y,e[60]=ce):ce=e[60];let ue;e[61]!==oe||e[62]!==ce?(ue=(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[oe,ce]}),e[61]=oe,e[62]=ce,e[63]=ue):ue=e[63];let me;e[64]!==a?(me=a("Role (optional)"),e[64]=a,e[65]=me):me=e[65];let he;e[66]!==me?(he=(0,t.jsx)(D,{htmlFor:"uc-role",children:me}),e[66]=me,e[67]=he):he=e[67];let pe;e[68]!==h?(pe=(0,t.jsx)(T,{"data-testid":"uc-role",id:"uc-role",onChange:Be,value:h}),e[68]=h,e[69]=pe):pe=e[69];let fe;e[70]!==he||e[71]!==pe?(fe=(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[he,pe]}),e[70]=he,e[71]=pe,e[72]=fe):fe=e[72];let ve;e[73]!==o.userFields||e[74]!==j||e[75]!==a?(ve=o.userFields.length>0&&(0,t.jsxs)("div",{className:"flex flex-col gap-3 border-t border-border pt-3","data-testid":"uc-plugin-fields",children:[(0,t.jsx)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:a("Plugin fields")}),o.userFields.map(p=>{let $=`uc-field-${p.name}`,V=p.required?"":` (${a("optional")})`;if(p.type==="boolean"){let Le=j(p)===!0;return(0,t.jsxs)("label",{className:"flex items-center gap-2",htmlFor:$,children:[(0,t.jsx)(Qe,{checked:Le,"data-testid":$,id:$,onCheckedChange:r(Xe=>{Re(p.name,Xe)},"onCheckedChange")}),(0,t.jsxs)("span",{className:"text-sm",children:[p.name,V]})]},p.name)}let We=j(p);return(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsxs)(D,{htmlFor:$,children:[p.name,V]}),(0,t.jsx)(T,{"data-testid":$,id:$,onChange:r(Le=>{Re(p.name,Le.target.value)},"onChange"),type:st[p.type],value:typeof We=="string"?We:""})]},p.name)})]}),e[73]=o.userFields,e[74]=j,e[75]=a,e[76]=ve):ve=e[76];let xe;e[77]!==n?(xe=n!==null&&(0,t.jsx)("p",{className:"text-sm text-destructive","data-testid":"uc-error",role:"alert",children:n}),e[77]=n,e[78]=xe):xe=e[78];let be;e[79]!==a?(be=a("Cancel"),e[79]=a,e[80]=be):be=e[80];let ye;e[81]!==l||e[82]!==be?(ye=(0,t.jsx)(z,{"data-testid":"uc-cancel",onClick:l,size:"sm",type:"button",variant:"outline",children:be}),e[81]=l,e[82]=be,e[83]=ye):ye=e[83];let qe=!De,ge;e[84]!==i||e[85]!==a?(ge=a(i?"Creating\u2026":"Create"),e[84]=i,e[85]=a,e[86]=ge):ge=e[86];let Ne;e[87]!==N||e[88]!==qe||e[89]!==ge?(Ne=(0,t.jsx)(z,{"data-testid":"uc-submit",disabled:qe,onClick:N,size:"sm",type:"button",children:ge}),e[87]=N,e[88]=qe,e[89]=ge,e[90]=Ne):Ne=e[90];let ke;e[91]!==ye||e[92]!==Ne?(ke=(0,t.jsxs)("div",{className:"flex justify-end gap-2 pt-1",children:[ye,Ne]}),e[91]=ye,e[92]=Ne,e[93]=ke):ke=e[93];let je;return e[94]!==l||e[95]!==P||e[96]!==O||e[97]!==se||e[98]!==ne||e[99]!==ue||e[100]!==fe||e[101]!==ve||e[102]!==xe||e[103]!==ke?(je=(0,t.jsxs)(Ve,{label:P,onClose:l,panelTestId:"uc-dialog",testId:"uc-overlay",variant:"dialog",children:[O,se,ne,ue,fe,ve,xe,ke]}),e[94]=l,e[95]=P,e[96]=O,e[97]=se,e[98]=ne,e[99]=ue,e[100]=fe,e[101]=ve,e[102]=xe,e[103]=ke,e[104]=je):je=e[104],je},"st"),Ee=r(u=>{let e=(0,Z.c)(2),{children:l}=u,s;return e[0]!==l?(s=(0,t.jsx)("h3",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:l}),e[0]=l,e[1]=s):s=e[1],s},"Le"),nt=r(u=>{let e=(0,Z.c)(29),{busy:l,runAction:s,userId:c,version:a}=u,o=E(),i=W(),[n,m]=(0,k.useState)(null),[w,S]=(0,k.useState)(null),b;e[0]!==o||e[1]!==c?(b=r(()=>{ze((async()=>{S(null);try{let x=await o.listAuthSessions({limit:50,userId:c});m(x.rows)}catch(x){let F=x;m(null),S(Pe(F))}})())},"x"),e[0]=o,e[1]=c,e[2]=b):b=e[2];let C;e[3]!==o||e[4]!==c||e[5]!==a?(C=[o,c,a],e[3]=o,e[4]=c,e[5]=a,e[6]=C):C=e[6],(0,k.useEffect)(b,C);let y;e[7]!==o||e[8]!==s?(y=r(x=>{s(()=>o.revokeAuthSession({sessionId:x}))},"y"),e[7]=o,e[8]=s,e[9]=y):y=e[9];let I=y,h;e[10]!==i?(h=i("Sessions"),e[10]=i,e[11]=h):h=e[11];let g;e[12]!==h?(g=(0,t.jsx)(Ee,{children:h}),e[12]=h,e[13]=g):g=e[13];let v;e[14]!==w?(v=w!==null&&(0,t.jsx)("p",{className:"text-sm text-destructive","data-testid":"ud-sessions-error",role:"alert",children:w}),e[14]=w,e[15]=v):v=e[15];let f;e[16]!==n||e[17]!==i?(f=n!==null&&n.length===0&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground","data-testid":"ud-sessions-empty",children:i("No active sessions.")}),e[16]=n,e[17]=i,e[18]=f):f=e[18];let d;e[19]!==l||e[20]!==I||e[21]!==n||e[22]!==i?(d=n!==null&&n.length>0&&(0,t.jsx)(we,{className:"overflow-hidden py-0",children:(0,t.jsx)(Ce,{className:"px-0",children:(0,t.jsxs)(Ue,{"data-testid":"ud-sessions-table",children:[(0,t.jsx)(_e,{children:(0,t.jsxs)(M,{children:[(0,t.jsx)(U,{children:i("expires")}),(0,t.jsx)(U,{children:i("ip")}),(0,t.jsx)(U,{children:i("user agent")}),(0,t.jsx)(U,{"aria-label":i("Actions")})]})}),(0,t.jsx)($e,{children:n.map(x=>(0,t.jsxs)(M,{"data-testid":`ud-session-${x.id}`,children:[(0,t.jsx)(_,{className:"text-muted-foreground tabular-nums",children:Ie(x.expiresAt)}),(0,t.jsx)(_,{children:x.ipAddress??""}),(0,t.jsx)(_,{className:"max-w-40 truncate",children:x.userAgent??""}),(0,t.jsx)(_,{children:(0,t.jsx)(z,{"data-testid":`ud-revoke-${x.id}`,disabled:l,onClick:r(()=>{I(x.id)},"onClick"),size:"xs",type:"button",variant:"ghost",children:i("Revoke")})})]},x.id))})]})})}),e[19]=l,e[20]=I,e[21]=n,e[22]=i,e[23]=d):d=e[23];let A;return e[24]!==g||e[25]!==v||e[26]!==f||e[27]!==d?(A=(0,t.jsxs)("div",{className:"flex flex-col gap-2","data-testid":"ud-sessions",children:[g,v,f,d]}),e[24]=g,e[25]=v,e[26]=f,e[27]=d,e[28]=A):A=e[28],A},"rt"),dt=r(u=>{let e=(0,Z.c)(30),{busy:l,runAction:s,userId:c,version:a}=u,o=E(),i=W(),[n,m]=(0,k.useState)(null),[w,S]=(0,k.useState)(null),b;e[0]!==o||e[1]!==c?(b=r(()=>{ze((async()=>{S(null);try{m(await o.listAuthAccounts({userId:c}))}catch(x){let F=x;m(null),S(Pe(F))}})())},"x"),e[0]=o,e[1]=c,e[2]=b):b=e[2];let C;e[3]!==o||e[4]!==c||e[5]!==a?(C=[o,c,a],e[3]=o,e[4]=c,e[5]=a,e[6]=C):C=e[6],(0,k.useEffect)(b,C);let y;e[7]!==o||e[8]!==s||e[9]!==c?(y=r(x=>{s(()=>o.unlinkAuthAccount({accountId:x,userId:c}))},"y"),e[7]=o,e[8]=s,e[9]=c,e[10]=y):y=e[10];let I=y,h;e[11]!==i?(h=i("Linked accounts"),e[11]=i,e[12]=h):h=e[12];let g;e[13]!==h?(g=(0,t.jsx)(Ee,{children:h}),e[13]=h,e[14]=g):g=e[14];let v;e[15]!==w?(v=w!==null&&(0,t.jsx)("p",{className:"text-sm text-destructive",role:"alert",children:w}),e[15]=w,e[16]=v):v=e[16];let f;e[17]!==n||e[18]!==i?(f=n!==null&&n.length===0&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:i("No linked accounts.")}),e[17]=n,e[18]=i,e[19]=f):f=e[19];let d;e[20]!==n||e[21]!==l||e[22]!==I||e[23]!==i?(d=n!==null&&n.length>0&&(0,t.jsx)(we,{className:"overflow-hidden py-0",children:(0,t.jsx)(Ce,{className:"px-0",children:(0,t.jsxs)(Ue,{"data-testid":"ud-accounts-table",children:[(0,t.jsx)(_e,{children:(0,t.jsxs)(M,{children:[(0,t.jsx)(U,{children:i("provider")}),(0,t.jsx)(U,{children:i("created")}),(0,t.jsx)(U,{"aria-label":i("Actions")})]})}),(0,t.jsx)($e,{children:n.map(x=>{let F=Ae(x.id);return(0,t.jsxs)(M,{"data-testid":`ud-account-${F}`,children:[(0,t.jsx)(_,{children:Ae(x.providerId)}),(0,t.jsx)(_,{className:"text-muted-foreground tabular-nums",children:Ie(x.createdAt)}),(0,t.jsx)(_,{children:(0,t.jsx)(z,{"data-testid":`ud-unlink-${F}`,disabled:l,onClick:r(()=>{I(F)},"onClick"),size:"xs",type:"button",variant:"ghost",children:i("Unlink")})})]},F)})})]})})}),e[20]=n,e[21]=l,e[22]=I,e[23]=i,e[24]=d):d=e[24];let A;return e[25]!==g||e[26]!==v||e[27]!==f||e[28]!==d?(A=(0,t.jsxs)("div",{className:"flex flex-col gap-2","data-testid":"ud-accounts",children:[g,v,f,d]}),e[25]=g,e[26]=v,e[27]=f,e[28]=d,e[29]=A):A=e[29],A},"it"),ot=r(u=>{let e=(0,Z.c)(40),{busy:l,capabilities:s,runAction:c,userId:a,version:o}=u,i=E(),n=W(),[m,w]=(0,k.useState)(null),S;e[0]!==s.passkey||e[1]!==i||e[2]!==a?(S=r(()=>{s.passkey&&ze((async()=>{try{w(await i.listAuthPasskeys({userId:a}))}catch{w(null)}})())},"I"),e[0]=s.passkey,e[1]=i,e[2]=a,e[3]=S):S=e[3];let b;e[4]!==s.passkey||e[5]!==i||e[6]!==a||e[7]!==o?(b=[s.passkey,i,a,o],e[4]=s.passkey,e[5]=i,e[6]=a,e[7]=o,e[8]=b):b=e[8],(0,k.useEffect)(S,b);let C;e[9]!==i||e[10]!==c||e[11]!==a?(C=r(()=>{c(()=>i.disableAuthTwoFactor({userId:a}))},"w"),e[9]=i,e[10]=c,e[11]=a,e[12]=C):C=e[12];let y=C,I;e[13]!==i||e[14]!==c?(I=r(F=>{c(()=>i.deleteAuthPasskey({passkeyId:F}))},"A"),e[13]=i,e[14]=c,e[15]=I):I=e[15];let h=I,g;e[16]!==n?(g=n("Security"),e[16]=n,e[17]=g):g=e[17];let v;e[18]!==g?(v=(0,t.jsx)(Ee,{children:g}),e[18]=g,e[19]=v):v=e[19];let f;e[20]!==l||e[21]!==s.twoFactor||e[22]!==y||e[23]!==n?(f=s.twoFactor&&(0,t.jsx)(z,{"data-testid":"ud-disable-2fa",disabled:l,onClick:y,size:"sm",type:"button",variant:"outline",children:n("Disable two-factor")}),e[20]=l,e[21]=s.twoFactor,e[22]=y,e[23]=n,e[24]=f):f=e[24];let d;e[25]!==s.passkey||e[26]!==m||e[27]!==n?(d=s.passkey&&m!==null&&m.length===0&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:n("No passkeys.")}),e[25]=s.passkey,e[26]=m,e[27]=n,e[28]=d):d=e[28];let A;e[29]!==l||e[30]!==s.passkey||e[31]!==h||e[32]!==m||e[33]!==n?(A=s.passkey&&m!==null&&m.length>0&&(0,t.jsx)(we,{className:"overflow-hidden py-0",children:(0,t.jsx)(Ce,{className:"px-0",children:(0,t.jsxs)(Ue,{"data-testid":"ud-passkeys-table",children:[(0,t.jsx)(_e,{children:(0,t.jsxs)(M,{children:[(0,t.jsx)(U,{children:n("name")}),(0,t.jsx)(U,{children:n("created")}),(0,t.jsx)(U,{"aria-label":n("Actions")})]})}),(0,t.jsx)($e,{children:m.map(F=>{let q=Ae(F.id);return(0,t.jsxs)(M,{"data-testid":`ud-passkey-${q}`,children:[(0,t.jsx)(_,{children:Ae(F.name)||q}),(0,t.jsx)(_,{className:"text-muted-foreground tabular-nums",children:Ie(F.createdAt)}),(0,t.jsx)(_,{children:(0,t.jsx)(z,{"data-testid":`ud-delete-passkey-${q}`,disabled:l,onClick:r(()=>{h(q)},"onClick"),size:"xs",type:"button",variant:"ghost",children:n("Delete")})})]},q)})})]})})}),e[29]=l,e[30]=s.passkey,e[31]=h,e[32]=m,e[33]=n,e[34]=A):A=e[34];let x;return e[35]!==v||e[36]!==f||e[37]!==d||e[38]!==A?(x=(0,t.jsxs)("div",{className:"flex flex-col gap-2","data-testid":"ud-security",children:[v,f,d,A]}),e[35]=v,e[36]=f,e[37]=d,e[38]=A,e[39]=x):x=e[39],x},"nt"),ct=/(?:at|expires)$/iu,ut=new Set(["banExpires","banned","banReason","email","emailVerified","id","name","role"]),mt=r((u,e)=>typeof e=="number"&&ct.test(u)?Ie(e):Ae(e),"ct"),ht=r(({capabilities:u,onChanged:e,onClose:l,user:s})=>{let c=E(),a=W(),o=s.banned===!0,[i,n]=(0,k.useState)(null),[m,w]=(0,k.useState)(!1),[S,b]=(0,k.useState)(0),[C,y]=(0,k.useState)(typeof s.role=="string"?s.role:""),[I,h]=(0,k.useState)(""),[g,v]=(0,k.useState)(""),[f,d]=(0,k.useState)(""),[A,x]=(0,k.useState)(null),[F,q]=(0,k.useState)(!1),R=r((N,P)=>{ze((async()=>{w(!0),n(null);try{let L=await N();P?.refresh!==!1&&(b(O=>O+1),e()),P?.onResult?.(L)}catch(L){n(Pe(L))}finally{w(!1)}})())},"_"),Te=r(N=>{y(N.target.value)},"De"),G=r(N=>{h(N.target.value)},"O"),Be=r(N=>{v(N.target.value)},"je"),H=r(N=>{d(N.target.value)},"G"),Re=r(()=>{let N=C.trim();N!==""&&R(async()=>{await c.setAuthUserRole({role:N,userId:s.id})})},"Se"),J=r(()=>{let N=Number.parseInt(g,10),P=Number.isFinite(N)&&N>0?N*86400:void 0;R(async()=>{await c.banAuthUser({expiresInSeconds:P,reason:I.trim()===""?void 0:I.trim(),userId:s.id})})},"H"),j=r(()=>{R(async()=>{await c.unbanAuthUser({userId:s.id})})},"R"),K=r(()=>{R(async()=>{await c.setAuthUserPassword({newPassword:f,userId:s.id}),d("")})},"J"),Fe=r(()=>{R(()=>c.impersonateAuthUser({userId:s.id}),{onResult:r(N=>{x(N.token)},"onResult"),refresh:!1})},"we"),Q=r(()=>{R(async()=>{await c.revokeAuthUserSessions({userId:s.id})})},"K"),De=r(()=>{R(async()=>{await c.removeAuthUser({userId:s.id}),l()})},"Te"),X=r(()=>{q(!0)},"W"),Se=r(()=>{q(!1)},"Ce"),Y=Object.entries(s).filter(([N])=>!ut.has(N));return(0,t.jsxs)(Ve,{label:a("User details"),onClose:l,panelTestId:"ud-panel",testId:"ud-overlay",variant:"drawer",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:s.name??s.email??s.id}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:s.id}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5 pt-1",children:[typeof s.role=="string"&&s.role!==""&&(0,t.jsx)(B,{variant:"secondary",children:s.role}),o?(0,t.jsx)(B,{variant:"destructive",children:a("Banned")}):(0,t.jsx)(B,{variant:"outline",children:a("Active")}),s.emailVerified===!0?(0,t.jsx)(B,{variant:"secondary",children:a("verified")}):(0,t.jsx)(B,{variant:"outline",children:a("unverified")})]})]}),(0,t.jsx)(z,{"data-testid":"ud-close",onClick:l,size:"sm",type:"button",variant:"ghost",children:a("Close")})]}),i!==null&&(0,t.jsx)("p",{className:"text-sm text-destructive","data-testid":"ud-action-error",role:"alert",children:i}),u.admin&&(0,t.jsxs)(we,{className:"gap-0 py-0",children:[(0,t.jsx)("header",{className:"border-b border-border px-4 py-3",children:(0,t.jsx)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:a("Actions")})}),(0,t.jsxs)(Ce,{className:"flex flex-col gap-3 p-3",children:[(0,t.jsxs)("div",{className:"flex items-end gap-2",children:[(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-1",children:[(0,t.jsx)(D,{htmlFor:"ud-role",children:a("Role")}),(0,t.jsx)(T,{"data-testid":"ud-role-input",id:"ud-role",onChange:Te,value:C})]}),(0,t.jsx)(z,{"data-testid":"ud-set-role",disabled:m||C.trim()==="",onClick:Re,size:"sm",type:"button",variant:"outline",children:a("Set role")})]}),o?(0,t.jsx)(z,{"data-testid":"ud-unban",disabled:m,onClick:j,size:"sm",type:"button",variant:"outline",children:a("Unban")}):(0,t.jsxs)("div",{className:"flex items-end gap-2",children:[(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-1",children:[(0,t.jsx)(D,{htmlFor:"ud-ban-reason",children:a("Ban reason (optional)")}),(0,t.jsx)(T,{"data-testid":"ud-ban-reason",id:"ud-ban-reason",onChange:G,value:I})]}),(0,t.jsxs)("div",{className:"flex w-24 flex-col gap-1",children:[(0,t.jsx)(D,{htmlFor:"ud-ban-days",children:a("Days")}),(0,t.jsx)(T,{"data-testid":"ud-ban-days",id:"ud-ban-days",onChange:Be,type:"number",value:g})]}),(0,t.jsx)(z,{"data-testid":"ud-ban",disabled:m,onClick:J,size:"sm",type:"button",variant:"destructive",children:a("Ban user")})]}),(0,t.jsxs)("div",{className:"flex items-end gap-2",children:[(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-1",children:[(0,t.jsx)(D,{htmlFor:"ud-password",children:a("New password")}),(0,t.jsx)(T,{"data-testid":"ud-password",id:"ud-password",onChange:H,type:"password",value:f})]}),(0,t.jsx)(z,{"data-testid":"ud-set-password",disabled:m||f==="",onClick:K,size:"sm",type:"button",variant:"outline",children:a("Set password")})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsx)(z,{"data-testid":"ud-impersonate",disabled:m,onClick:Fe,size:"sm",type:"button",variant:"outline",children:a("Impersonate")}),(0,t.jsx)(z,{"data-testid":"ud-revoke-all",disabled:m,onClick:Q,size:"sm",type:"button",variant:"outline",children:a("Revoke all sessions")}),F?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(z,{"data-testid":"ud-delete-confirm",disabled:m,onClick:De,size:"sm",type:"button",variant:"destructive",children:a("Confirm delete")}),(0,t.jsx)(z,{"data-testid":"ud-delete-cancel",onClick:Se,size:"sm",type:"button",variant:"ghost",children:a("Cancel")})]}):(0,t.jsx)(z,{"data-testid":"ud-delete",disabled:m,onClick:X,size:"sm",type:"button",variant:"destructive",children:a("Delete user")})]}),A!==null&&(0,t.jsxs)("div",{className:"flex flex-col gap-1","data-testid":"ud-impersonation",children:[(0,t.jsx)(D,{htmlFor:"ud-token",children:a("Impersonation token")}),(0,t.jsx)(T,{"data-testid":"ud-token",id:"ud-token",readOnly:!0,value:A})]})]})]}),(0,t.jsx)(nt,{busy:m,runAction:R,userId:s.id,version:S}),u.accounts&&(0,t.jsx)(dt,{busy:m,runAction:R,userId:s.id,version:S}),(u.twoFactor||u.passkey)&&(0,t.jsx)(ot,{busy:m,capabilities:u,runAction:R,userId:s.id,version:S}),(0,t.jsxs)("div",{className:"flex flex-col gap-1","data-testid":"ud-fields",children:[(0,t.jsx)("h3",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:a("Fields")}),(0,t.jsx)("dl",{className:"flex flex-col",children:Y.map(([N,P])=>(0,t.jsxs)("div",{className:"flex flex-col border-t border-border py-1.5",children:[(0,t.jsx)("dt",{className:"text-xs font-semibold text-muted-foreground",children:N}),(0,t.jsx)("dd",{className:"m-0 font-mono text-xs break-words",children:mt(N,P)})]},N))})]})]})},"ut"),pt=50,_t=r(({pageSize:u=pt}={})=>{let e=E(),l=W(),[s,c]=(0,k.useState)(""),[a,o]=(0,k.useState)(""),i=He(s),[n,m]=(0,k.useState)(null),[w,S]=(0,k.useState)(!1),{capabilities:b}=at(),C=i.trim(),y=a.trim(),I=Ge(["lunora-auth-users",C,y,u],()=>e.listAuthUsers({filterField:y===""?void 0:"role",filterValue:y===""?void 0:y,limit:u,search:C===""?void 0:C}),{keepPreviousData:!0}),h=I.data?.rows??null,g=I.error,v=r(()=>{I.refetch()},"v");Je(()=>{I.refetch()},!0);let f=n===null?null:h?.find(d=>d.id===n)??null;return(0,t.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"lunora-users",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)(T,{"aria-label":l("Search users"),className:"w-56","data-testid":"us-search",onChange:r(d=>{c(d.target.value)},"onChange"),placeholder:l("Search by email or name\u2026"),value:s}),(0,t.jsx)(T,{"aria-label":l("Filter by role"),className:"w-40","data-testid":"us-role-filter",onChange:r(d=>{o(d.target.value)},"onChange"),placeholder:l("Filter by role"),value:a}),(0,t.jsx)(z,{"data-testid":"us-new",onClick:r(()=>{S(!0)},"onClick"),size:"sm",type:"button",children:l("New user")})]}),g!==null&&(0,t.jsx)("p",{className:"text-sm text-destructive","data-testid":"us-users-error",role:"alert",children:g}),h!==null&&h.length===0&&(0,t.jsx)(Ze,{description:l("Users who sign up to your app will appear here."),icon:(0,t.jsx)("svg",{"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,t.jsx)("path",{d:"M16 20v-2a4 4 0 0 0-4-4H7a4 4 0 0 0-4 4v2M9.5 10a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7Zm11.5 10v-2a4 4 0 0 0-3-3.85"})}),testId:"us-empty",title:l("No users.")}),h!==null&&h.length>0&&(0,t.jsx)(we,{className:"overflow-hidden py-0",children:(0,t.jsx)(Ce,{className:"px-0",children:(0,t.jsxs)(Ue,{"data-testid":"us-table",children:[(0,t.jsx)(_e,{children:(0,t.jsxs)(M,{children:[(0,t.jsx)(U,{children:l("id")}),(0,t.jsx)(U,{children:l("email")}),(0,t.jsx)(U,{children:l("name")}),(0,t.jsx)(U,{children:l("role")}),(0,t.jsx)(U,{children:l("status")}),(0,t.jsx)(U,{children:l("verified")}),(0,t.jsx)(U,{children:l("created")}),(0,t.jsx)(U,{"aria-label":l("Actions")})]})}),(0,t.jsx)($e,{children:h.map(d=>(0,t.jsxs)(M,{"data-testid":`us-row-${d.id}`,children:[(0,t.jsx)(_,{className:"font-mono text-xs",children:d.id}),(0,t.jsx)(_,{children:d.email??""}),(0,t.jsx)(_,{children:d.name??""}),(0,t.jsx)(_,{children:typeof d.role=="string"&&d.role!==""?(0,t.jsx)(B,{variant:"secondary",children:d.role}):""}),(0,t.jsx)(_,{children:d.banned===!0?(0,t.jsx)(B,{variant:"destructive",children:l("Banned")}):(0,t.jsx)(B,{variant:"success",children:l("Active")})}),(0,t.jsx)(_,{children:d.emailVerified===!0?(0,t.jsx)(B,{variant:"success",children:l("yes")}):(0,t.jsx)(B,{variant:"outline",children:l("no")})}),(0,t.jsx)(_,{className:"text-muted-foreground tabular-nums",children:Ie(d.createdAt)}),(0,t.jsx)(_,{children:(0,t.jsx)(z,{"data-testid":`us-manage-${d.id}`,onClick:r(()=>{m(d.id)},"onClick"),size:"xs",type:"button",variant:"ghost",children:l("Manage")})})]},d.id))})]})})}),f!==null&&(0,t.jsx)(ht,{capabilities:b,onChanged:v,onClose:r(()=>{m(null)},"onClose"),user:f}),w&&(0,t.jsx)(it,{onClose:r(()=>{S(!1)},"onClose"),onCreated:v})]})},"Pt");export{_t as UsersPanel};
|