@lunora/studio 1.0.0-alpha.4 → 1.0.0-alpha.40
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/LICENSE.md +6 -0
- package/__assets__/package-og.svg +1 -1
- package/dist/index.d.ts +33 -18
- package/dist/index.js +29 -29
- package/dist/mount.d.ts +1 -1
- package/dist/mount.js +3 -2
- package/dist/{packem_shared/ApiTab-W3no0KOj.js → packem_chunks/ApiTab.js} +5 -5
- package/dist/{packem_shared/AuditPanel-Bq4o_IqT.js → packem_chunks/AuditPanel.js} +29 -41
- package/dist/{packem_shared/ExportImportPanel-dxY56TDF.js → packem_chunks/ExportImportPanel.js} +16 -11
- package/dist/{packem_shared/FileBrowser-Dhy4zES8.js → packem_chunks/FileBrowser.js} +15 -15
- package/dist/{packem_shared/FunctionRunner--fQJRPAD.js → packem_chunks/FunctionRunner.js} +10 -10
- package/dist/{packem_shared/FunctionStatsPanel-BjRUA_G3.js → packem_chunks/FunctionStatsPanel.js} +153 -208
- package/dist/{packem_shared/HealthPanel-PxclMWmA.js → packem_chunks/HealthPanel.js} +37 -29
- package/dist/{packem_shared/InsightsPanel-CWS_C-xW.js → packem_chunks/InsightsPanel.js} +108 -69
- package/dist/{packem_shared/LogsPanel-CTW8CFcM.js → packem_chunks/LogsPanel.js} +46 -58
- package/dist/{packem_shared/MailPanel-BwkvfIHF.js → packem_chunks/MailPanel.js} +45 -139
- package/dist/{packem_shared/MetricsPanel-BLuOhZQ4.js → packem_chunks/MetricsPanel.js} +41 -322
- package/dist/{packem_shared/MigrationsPanel-DT3lnwHF.js → packem_chunks/MigrationsPanel.js} +44 -51
- package/dist/{packem_shared/PitrPanel-CdErL7EJ.js → packem_chunks/PitrPanel.js} +9 -9
- package/dist/{packem_shared/SchemaViewer-LJDcmNIO.js → packem_chunks/SchemaViewer.js} +17 -16
- package/dist/{packem_shared/SecurityAdvisorPanel-C_ETsPih.js → packem_chunks/SecurityAdvisorPanel.js} +47 -31
- package/dist/packem_chunks/SettingsPanel.js +391 -0
- package/dist/{packem_shared/sql-editor-panel-BFRpzj6r.js → packem_chunks/SqlEditorPanel.js} +158 -387
- package/dist/{packem_shared/TableEditor-ChfUOZec.js → packem_chunks/TableEditor.js} +10 -68
- package/dist/packem_chunks/analytics-panel.js +261 -0
- package/dist/packem_chunks/auth-config-panel.js +365 -0
- package/dist/packem_chunks/auth-sessions-panel.js +175 -0
- package/dist/packem_chunks/containers-panel.js +247 -0
- package/dist/packem_chunks/dashboards-panel.js +780 -0
- package/dist/packem_chunks/fanout-panel.js +482 -0
- package/dist/packem_chunks/flags-panel.js +176 -0
- package/dist/packem_chunks/kv-browser.js +1896 -0
- package/dist/packem_chunks/log-drains-panel.js +273 -0
- package/dist/packem_chunks/organizations-panel.js +3178 -0
- package/dist/packem_chunks/payments-panel.js +186 -0
- package/dist/packem_chunks/permissions-panel.js +805 -0
- package/dist/packem_chunks/queues-panel.js +1075 -0
- package/dist/packem_chunks/rls-panel.js +315 -0
- package/dist/packem_chunks/schedule-panel.js +831 -0
- package/dist/packem_chunks/sparkline.js +79 -0
- package/dist/packem_chunks/storage-rules-panel.js +140 -0
- package/dist/packem_chunks/subscriptions-panel.js +238 -0
- package/dist/packem_chunks/users-panel.js +1731 -0
- package/dist/packem_chunks/vector-browser.js +281 -0
- package/dist/packem_chunks/workflows-panel.js +562 -0
- package/dist/packem_shared/{ADMIN_FUNCTIONS-DmBqMZ-z.js → ADMIN_FUNCTIONS-BHHJi3Gb.js} +7 -0
- package/dist/packem_shared/{ApiDocsPanel-C5-yJ1p7.js → ApiDocsPanel-CBma-lnp.js} +2 -2
- package/dist/packem_shared/{ApiReferencePanel-1vubqG5s.js → ApiReferencePanel-CQM3pPN7.js} +2 -1
- package/dist/packem_shared/{CommandPalette-BtgkBzZI.js → CommandPalette-X2tkbyHk.js} +1 -1
- package/dist/packem_shared/{DataBrowser-CtBe1So9.js → DataBrowser-D2ywrdId.js} +198 -247
- package/dist/packem_shared/{GlobalDataBrowser-BTEmGrph.js → GlobalDataBrowser-BkTPLzAY.js} +37 -66
- package/dist/packem_shared/HomePanel-D1Q9LZgK.js +14 -0
- package/dist/packem_shared/{OpenRpcReferencePanel-vbcYbv3V.js → OpenRpcReferencePanel-Dno-hfDb.js} +2 -1
- package/dist/packem_shared/{ScheduledJobs-CabfKbyM.js → ScheduledJobs-Ctw4jYtU.js} +163 -60
- package/dist/packem_shared/Studio-lJhzDAze.js +16 -0
- package/dist/packem_shared/{StudioApp-CHOZA-z-.js → StudioApp-DiMkupvZ.js} +276 -11
- package/dist/packem_shared/{advisor-view-CGcfMiPq.js → advisor-view-BX8OhG0w.js} +6 -6
- package/dist/packem_shared/alert-CdAET2K_.js +68 -0
- package/dist/packem_shared/{app.d-CCmwDEVs.d.ts → app.d-CNLRTrWw.d.ts} +1 -1
- package/dist/packem_shared/{bar-chart-CzJAgqkp.js → bar-chart-DSwcWIRy.js} +5 -4
- package/dist/packem_shared/browser-storage-BTrX4y3B.js +215 -0
- package/dist/packem_shared/{cf-links-2cktDedA.js → cf-links-BZfRdxSE.js} +1 -1
- package/dist/packem_shared/{data-grid-B5CaV3wS.js → data-grid-CdXztApG.js} +1 -1
- package/dist/packem_shared/data-view-params-Cd6yRVbv.js +96 -0
- package/dist/packem_shared/error-alert-CXjqyGw9.js +114 -0
- package/dist/packem_shared/{grid-features-CzUfqgsM.js → grid-features-BF-KBDFz.js} +131 -163
- package/dist/packem_shared/home-panel-TFcRf9Ui.js +1889 -0
- package/dist/packem_shared/{internal-rXJEAhXS.js → internal-CYcbqMjX.js} +44 -3
- package/dist/packem_shared/modal-shell-hyaJvIJ6.js +100 -0
- package/dist/packem_shared/{reference-view-B4E49Lip.js → reference-view-DUiJcILV.js} +6 -45
- package/dist/packem_shared/scroll-area-DLhcy-ml.js +93 -0
- package/dist/packem_shared/select-UkNYCT3s.js +273 -0
- package/dist/packem_shared/skeleton-CGhL0p20.js +45 -0
- package/dist/packem_shared/{sparkline-10dG-_f0.js → sparkline-BnA1kC9X.js} +1 -1
- package/dist/packem_shared/studio-Dh9UlaF_.js +4015 -0
- package/dist/packem_shared/{table-_RzNvy3R.js → table-DsCa9Qp9.js} +1 -1
- package/dist/packem_shared/{table-list-sidebar-Bg7uzbvC.js → table-list-sidebar-UVIXQJdU.js} +1 -1
- package/dist/packem_shared/use-admin-query-CfHYWx5n.js +106 -0
- package/dist/packem_shared/use-async-submit-DJQiPc-_.js +91 -0
- package/dist/standalone/chunk-23C4TCRO.js +1 -0
- package/dist/standalone/chunk-2K47A3P6.js +1 -0
- package/dist/standalone/chunk-2NGUNNGW.js +1 -0
- package/dist/standalone/chunk-3CJW6NWG.js +4 -0
- package/dist/standalone/chunk-3OA7PECS.js +6 -0
- package/dist/standalone/chunk-4QHKBC77.js +1 -0
- package/dist/standalone/chunk-5OIBXYZM.js +1 -0
- package/dist/standalone/chunk-5ZAA2PVR.js +1 -0
- package/dist/standalone/chunk-676HEBIR.js +3 -0
- package/dist/standalone/chunk-6VO23MMW.js +4 -0
- package/dist/standalone/chunk-7RE5UW27.js +8 -0
- package/dist/standalone/chunk-7TJJXVSE.js +1 -0
- package/dist/standalone/chunk-7YXOPTWI.js +1 -0
- package/dist/standalone/chunk-AAVIFQ4Y.js +2 -0
- package/dist/standalone/chunk-AHILM3ZP.js +1 -0
- package/dist/standalone/chunk-AJFQ3LNM.js +1 -0
- package/dist/standalone/chunk-AJULNB46.js +4 -0
- package/dist/standalone/chunk-BGXOXASQ.js +1 -0
- package/dist/standalone/chunk-BJGBHGK3.js +1 -0
- package/dist/standalone/chunk-BKW7FFEO.js +1 -0
- package/dist/standalone/chunk-BOXSWNXZ.js +1 -0
- package/dist/standalone/chunk-BXOYVWJR.js +13 -0
- package/dist/standalone/chunk-C7WTJLC3.js +1 -0
- package/dist/standalone/chunk-CACB34RQ.js +1 -0
- package/dist/standalone/chunk-CICVBMEN.js +1 -0
- package/dist/standalone/chunk-CKSHCYGC.js +2 -0
- package/dist/standalone/chunk-CWEAJUHW.js +1 -0
- package/dist/standalone/chunk-DC72CQY4.js +76 -0
- package/dist/standalone/chunk-DECHEGIC.js +1 -0
- package/dist/standalone/chunk-DWDILV2E.js +1 -0
- package/dist/standalone/chunk-E75ANNWX.js +19 -0
- package/dist/standalone/chunk-ERJNDIXC.js +1 -0
- package/dist/standalone/chunk-FKACHRWO.js +1 -0
- package/dist/standalone/chunk-FSGCANAU.js +1 -0
- package/dist/standalone/chunk-GLUNBZRI.js +1 -0
- package/dist/standalone/chunk-GMSGZDDH.js +13 -0
- package/dist/standalone/chunk-GTM65MVX.js +1 -0
- package/dist/standalone/chunk-H6RKXQZU.js +1 -0
- package/dist/standalone/chunk-HV7G6DFP.js +5 -0
- package/dist/standalone/chunk-HZTGDL4L.js +1 -0
- package/dist/standalone/chunk-I7ZZRM7I.js +1 -0
- package/dist/standalone/chunk-IXDH4GL5.js +1 -0
- package/dist/standalone/chunk-J46WXQYL.js +1 -0
- package/dist/standalone/chunk-J6J54MBP.js +1 -0
- package/dist/standalone/chunk-JSEXCW5Q.js +1 -0
- package/dist/standalone/chunk-JVODY4EP.js +1 -0
- package/dist/standalone/chunk-KEGAWN6Y.js +1 -0
- package/dist/standalone/chunk-KJJ3WM6H.js +4 -0
- package/dist/standalone/chunk-KSKXW5PX.js +1 -0
- package/dist/standalone/chunk-KZ6INM5M.js +1 -0
- package/dist/standalone/chunk-L7SK4ZZD.js +1 -0
- package/dist/standalone/chunk-LAK5VSPI.js +1 -0
- package/dist/standalone/chunk-LNZIB2MD.js +1 -0
- package/dist/standalone/chunk-LYB5L53X.js +1 -0
- package/dist/standalone/chunk-MJWVMKQ4.js +6 -0
- package/dist/standalone/chunk-MT2J3H7O.js +3 -0
- package/dist/standalone/chunk-N746FOQP.js +1 -0
- package/dist/standalone/chunk-NC6MBMSI.js +1 -0
- package/dist/standalone/chunk-NN27EDQB.js +1 -0
- package/dist/standalone/chunk-NY6GDADQ.js +1 -0
- package/dist/standalone/chunk-O3NAGRTR.js +1 -0
- package/dist/standalone/chunk-OY3HD7BJ.js +4 -0
- package/dist/standalone/chunk-P5HJXCZS.js +1 -0
- package/dist/standalone/chunk-PTS5TW3J.js +1 -0
- package/dist/standalone/chunk-Q52CHOSY.js +1 -0
- package/dist/standalone/chunk-QAFAJBAW.js +1 -0
- package/dist/standalone/chunk-QBAT52GB.js +1 -0
- package/dist/standalone/chunk-QDBOPDJ7.js +1 -0
- package/dist/standalone/chunk-QHFTGJPS.js +4 -0
- package/dist/standalone/chunk-RRCPZMC2.js +22 -0
- package/dist/standalone/chunk-SEU5V7I6.js +1 -0
- package/dist/standalone/chunk-SG3ALJJU.js +1 -0
- package/dist/standalone/chunk-SSI4G2MY.js +1 -0
- package/dist/standalone/chunk-TAD43CG5.js +1 -0
- package/dist/standalone/chunk-TBMYIZIO.js +1 -0
- package/dist/standalone/chunk-TH45YG6Q.js +1 -0
- package/dist/standalone/chunk-TQ36RWOP.js +1 -0
- package/dist/standalone/chunk-UGUEC6BC.js +1 -0
- package/dist/standalone/chunk-UK64ZSUW.js +1 -0
- package/dist/standalone/chunk-UKDJ4H7I.js +1 -0
- package/dist/standalone/chunk-V6IWFYAQ.js +1 -0
- package/dist/standalone/chunk-V7SRH36W.js +1 -0
- package/dist/standalone/chunk-VLXV72QE.js +1 -0
- package/dist/standalone/chunk-VON7JUPG.js +1 -0
- package/dist/standalone/chunk-WI7GWFEG.js +1 -0
- package/dist/standalone/chunk-WPNXY7IS.js +1 -0
- package/dist/standalone/chunk-X33MSJPP.js +1 -0
- package/dist/standalone/chunk-XNJNSCLM.js +1 -0
- package/dist/standalone/chunk-XRNXOIVZ.js +1 -0
- package/dist/standalone/chunk-YAECF5LW.js +1 -0
- package/dist/standalone/chunk-YBGC4PPD.js +1 -0
- package/dist/standalone/chunk-YNZ7ARWW.js +1 -0
- package/dist/standalone/chunk-YTO65GHS.js +1 -0
- package/dist/standalone/chunk-ZE6FT5Z3.js +1 -0
- package/dist/standalone/chunk-ZHVTQ37P.js +1 -0
- package/dist/standalone/chunk-ZIGWVHCS.js +1 -0
- package/dist/standalone/chunk-ZPP2KOR4.js +1 -0
- package/dist/standalone/chunk-ZPUO7FNI.js +1 -0
- package/dist/standalone/studio.js +104 -246
- package/dist/styles.css +2 -2
- package/package.json +15 -13
- package/dist/packem_shared/HomePanel-Cw16stjq.js +0 -1273
- package/dist/packem_shared/SettingsPanel-C0uLRf5P.js +0 -176
- package/dist/packem_shared/SqlEditorPanel-CguV7otm.js +0 -13
- package/dist/packem_shared/Studio-DFWAlcuf.js +0 -33
- package/dist/packem_shared/studio-Bj8psK1c.js +0 -10303
- package/dist/packem_shared/use-live-admin-Dq6g3daN.js +0 -73
- package/dist/packem_shared/use-live-shard-seed-Cuk3dnH0.js +0 -76
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as pe,c as fn,d as gn,e as xn}from"./chunk-QBAT52GB.js";import{a as Rn}from"./chunk-QAFAJBAW.js";import{a as $o,c as Ko,d as Qo,e as dn}from"./chunk-IXDH4GL5.js";import{A as To,D as U,E as wo,F as ko,I as _o,K as Do,L as Ao,O as Vo,P as Bo,Q as Fo,S as Lo,T as Uo,U as Go,V as Ho,W as jo,Y as Yo,_ as zo,aa as Jo,ba as at,ca as Wo,da as Xo,ea as ut,ha as qo,ia as Gt,ja as Ge,l as Ut,la as Zo,ma as en,n as Eo,na as on,o as Io,oa as nn,pa as rn,q as yo,qa as sn,r as nt,ra as an,s as rt,t as Po,ta as un,u as st,ua as cn,v as So,va as pn,w as No,x as Oo,y as it}from"./chunk-KSKXW5PX.js";import{b as tn}from"./chunk-5OIBXYZM.js";import{i as ln,k as mn}from"./chunk-4QHKBC77.js";import{C as Se,I as Fe,J as vo,K as Le,L as tt,M as ot,O as y,P as J,d as Ft,e as ee,h as We,i as Co,p as Lt}from"./chunk-3CJW6NWG.js";import{a as ct,b as Ue}from"./chunk-UK64ZSUW.js";import{a as me,b as xo,c as Be,i as Mo,q as ho,t as bo}from"./chunk-O3NAGRTR.js";import{a as he,c as go,d as et,f as Ro,h as Je,i as ce,j as E}from"./chunk-CKSHCYGC.js";import{a as Me}from"./chunk-3OA7PECS.js";import{a as n,d as Xn,e as f,f as C,g as qn,h as Qn,j as Ve}from"./chunk-RRCPZMC2.js";var ke=f(qn(),1),Oc=f(C(),1);var te={};Xn(te,{Arrow:()=>Ht,Backdrop:()=>jt,CheckboxItem:()=>$t,CheckboxItemIndicator:()=>Kt,Group:()=>zt,GroupLabel:()=>Jt,Handle:()=>Qe,Item:()=>Wt,LinkItem:()=>Xt,Popup:()=>qt,Portal:()=>Zt,Positioner:()=>eo,RadioGroup:()=>oo,RadioItem:()=>no,RadioItemIndicator:()=>ro,Root:()=>qe,Separator:()=>Rn,SubmenuRoot:()=>Vn,SubmenuTrigger:()=>po,Trigger:()=>uo,Viewport:()=>co,createHandle:()=>jn});var Mn=f(C(),1);var pt=f(C(),1);var dt=pt.createContext(void 0);dt.displayName="MenuPositionerContext";function W(t){let e=pt.useContext(dt);if(e===void 0&&!t)throw new Error("Base UI: MenuPositionerContext is missing. MenuPositioner parts must be placed within <Menu.Positioner>.");return e}n(W,"useMenuPositionerContext");var lt=f(C(),1);var mt=lt.createContext(void 0);mt.displayName="MenuRootContext";function O(t){let e=lt.useContext(mt);if(e===void 0&&!t)throw new Error("Base UI: MenuRootContext is missing. Menu parts must be placed within <Menu.Root>.");return e}n(O,"useMenuRootContext");var Ht=Mn.forwardRef(n(function(e,o){let{render:i,className:u,style:a,...d}=e,{store:l}=O(),{arrowRef:r,side:m,align:R,arrowUncentered:g,arrowStyles:x}=W(),v={open:l.useState("open"),side:m,align:R,uncentered:g};return E("div",e,{ref:[r,o],stateAttributesMapping:Ge,state:v,props:{style:x,"aria-hidden":!0,...d}})},"MenuArrow"));Ht.displayName="MenuArrow";var bn=f(C(),1);var ft=f(C(),1);var hn=ft.createContext(void 0);hn.displayName="ContextMenuRootContext";function be(t=!0){let e=ft.useContext(hn);if(e===void 0&&!t)throw new Error("Base UI: ContextMenuRootContext is missing. ContextMenu parts must be placed within <ContextMenu.Root>.");return e}n(be,"useContextMenuRootContext");var Zn={...Ge,...Fe},jt=bn.forwardRef(n(function(e,o){let{render:i,className:u,style:a,...d}=e,{store:l}=O(),r=l.useState("open"),m=l.useState("mounted"),R=l.useState("transitionStatus"),g=l.useState("lastOpenChangeReason"),x=be(),M={open:r,transitionStatus:R};return E("div",e,{ref:x?.backdropRef?[o,x.backdropRef]:o,state:M,stateAttributesMapping:Zn,props:[{role:"presentation",hidden:!m,style:{pointerEvents:g===y.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},d]})},"MenuBackdrop"));jt.displayName="MenuBackdrop";var Mt=f(C(),1);var gt=f(C(),1);var Rt=gt.createContext(void 0);Rt.displayName="MenuCheckboxItemContext";function Cn(){let t=gt.useContext(Rt);if(t===void 0)throw new Error("Base UI: MenuCheckboxItemContext is missing. MenuCheckboxItem parts must be placed within <Menu.CheckboxItem>.");return t}n(Cn,"useMenuCheckboxItemContext");var He=f(C(),1);var vn=f(C(),1);function xt(t){let{closeOnClick:e,highlighted:o,id:i,nodeId:u,store:a,typingRef:d,itemRef:l,itemMetadata:r}=t,{events:m}=a.useState("floatingTreeRoot"),R=a.useState("open"),g=be(!0),x=g!==void 0;return vn.useMemo(()=>({id:i,role:"menuitem",tabIndex:R&&o?0:-1,onKeyDown(M){M.key===" "&&d?.current&&M.preventDefault()},onMouseMove(M){u&&m.emit("itemhover",{nodeId:u,target:M.currentTarget})},onClick(M){e&&m.emit("close",{domEvent:M,reason:y.itemPress})},onMouseUp(M){if(g){let v=g.initialCursorPointRef.current;if(g.initialCursorPointRef.current=null,x&&v&&Math.abs(M.clientX-v.x)<=1&&Math.abs(M.clientY-v.y)<=1||x&&!Co.os.mac&&M.button===2)return}l.current&&a.context.allowMouseUpTriggerRef.current&&(!x||M.button===2)&&(!r||r.type==="regular-item")&&l.current.click()}}),[e,o,i,m,u,R,a,d,l,g,x,r])}n(xt,"useMenuItemCommonProps");var je={type:"regular-item"};function Ne(t){let{closeOnClick:e,disabled:o=!1,highlighted:i,id:u,store:a,typingRef:d=a.context.typingRef,nativeButton:l,itemMetadata:r,nodeId:m}=t,R=a.useState("disabled"),g=o||R,x=He.useRef(null),{getButtonProps:M,buttonRef:v}=Ue({disabled:g,focusableWhenDisabled:!0,native:l,composite:!0}),S=xt({closeOnClick:e,highlighted:i,id:u,nodeId:m,store:a,typingRef:d,itemRef:x,itemMetadata:r}),c=He.useCallback(b=>he(S,{onMouseEnter(){r.type==="submenu-trigger"&&r.setActive()}},b,M),[S,M,r]),h=et(x,v);return He.useMemo(()=>({getItemProps:c,itemRef:h}),[c,h])}n(Ne,"useMenuItem");var Yt=(function(t){return t.checked="data-checked",t.unchecked="data-unchecked",t.disabled="data-disabled",t.highlighted="data-highlighted",t})({});var Oe={checked(t){return t?{[Yt.checked]:""}:{[Yt.unchecked]:""}},...Fe};var En=f(Me(),1);var $t=Mt.forwardRef(n(function(e,o){let{render:i,className:u,id:a,label:d,nativeButton:l=!1,disabled:r=!1,closeOnClick:m=!1,checked:R,defaultChecked:g,onCheckedChange:x,style:M,...v}=e,S=pe({label:d}),c=W(!0),h=ee(a),{store:b}=O(),p=b.useState("isActive",S.index),T=b.useState("itemProps"),[V,s]=ot({controlled:R,default:g??!1,name:"MenuCheckboxItem",state:"checked"}),{getItemProps:k,itemRef:P}=Ne({closeOnClick:m,disabled:r,highlighted:p,id:h,store:b,nativeButton:l,nodeId:c?.context.nodeId,itemMetadata:je}),H=Mt.useMemo(()=>({disabled:r,highlighted:p,checked:V}),[r,p,V]);function N(D){let F=J(y.itemPress,D.nativeEvent,void 0,{preventUnmountOnClose(){}});x?.(!V,F),!F.isCanceled&&s(Y=>!Y)}n(N,"handleClick");let _=E("div",e,{state:H,stateAttributesMapping:Oe,props:[T,{role:"menuitemcheckbox","aria-checked":V,onClick:N},v,k],ref:[P,o,S.ref]});return(0,En.jsx)(Rt.Provider,{value:H,children:_})},"MenuCheckboxItem"));$t.displayName="MenuCheckboxItem";var ht=f(C(),1);var Kt=ht.forwardRef(n(function(e,o){let{render:i,className:u,style:a,keepMounted:d=!1,...l}=e,r=Cn(),m=ht.useRef(null),{transitionStatus:R,setMounted:g}=tt(r.checked);Le({open:r.checked,ref:m,onComplete(){r.checked||g(!1)}});let x={checked:r.checked,disabled:r.disabled,highlighted:r.highlighted,transitionStatus:R};return E("span",e,{state:x,ref:[o,m],stateAttributesMapping:Oe,props:{"aria-hidden":!0,...l},enabled:d||r.checked})},"MenuCheckboxItemIndicator"));Kt.displayName="MenuCheckboxItemIndicator";var Ct=f(C(),1);var bt=f(C(),1);var Ye=bt.createContext(void 0);Ye.displayName="MenuGroupContext";function In(){let t=bt.useContext(Ye);if(t===void 0)throw new Error("Base UI: MenuGroupContext is missing. Menu group parts must be used within <Menu.Group> or <Menu.RadioGroup>.");return t}n(In,"useMenuGroupRootContext");var yn=f(Me(),1);var zt=Ct.forwardRef(n(function(e,o){let{render:i,className:u,style:a,...d}=e,[l,r]=Ct.useState(void 0),m=E("div",e,{ref:o,props:{role:"group","aria-labelledby":l,...d}});return(0,yn.jsx)(Ye.Provider,{value:r,children:m})},"MenuGroup"));zt.displayName="MenuGroup";var Pn=f(C(),1);var Jt=Pn.forwardRef(n(function(e,o){let{render:i,className:u,style:a,id:d,...l}=e,r=ee(d),m=In();return me(()=>(m(r),()=>{m(void 0)}),[m,r]),E("div",e,{ref:o,props:{id:r,role:"presentation",...l}})},"MenuGroupLabel"));Jt.displayName="MenuGroupLabel";var Sn=f(C(),1);var Wt=Sn.forwardRef(n(function(e,o){let{render:i,className:u,id:a,label:d,nativeButton:l=!1,disabled:r=!1,closeOnClick:m=!0,style:R,...g}=e,x=pe({label:d}),M=W(!0),v=ee(a),{store:S}=O(),c=S.useState("isActive",x.index),h=S.useState("itemProps"),{getItemProps:b,itemRef:p}=Ne({closeOnClick:m,disabled:r,highlighted:c,id:v,store:S,nativeButton:l,nodeId:M?.context.nodeId,itemMetadata:je});return E("div",e,{state:{disabled:r,highlighted:c},props:[h,g,b],ref:[p,o,x.ref]})},"MenuItem"));Wt.displayName="MenuItem";var vt=f(C(),1);var Xt=vt.forwardRef(n(function(e,o){let{render:i,className:u,id:a,label:d,closeOnClick:l=!1,style:r,...m}=e,R=vt.useRef(null),g=pe({label:d}),M=W(!0)?.context.nodeId,v=ee(a),{store:S}=O(),c=S.useState("isActive",g.index),h=S.useState("itemProps"),b=S.context.typingRef,{getButtonProps:p,buttonRef:T}=Ue({native:!1,composite:!0}),V=xt({closeOnClick:l,highlighted:c,id:v,nodeId:M,store:S,typingRef:b,itemRef:R});function s(P){return he(V,P,p)}return n(s,"getItemProps"),E("a",e,{state:{highlighted:c},props:[h,m,s],ref:[R,T,o,g.ref]})},"MenuLinkItem"));Xt.displayName="MenuLinkItem";var $e=f(C(),1);var Nn=f(Me(),1);var er={...Ge,...Fe},qt=$e.forwardRef(n(function(e,o){let{render:i,className:u,style:a,finalFocus:d,...l}=e,{store:r}=O(),{side:m,align:R}=W(),g=pn(!0)!=null,x=r.useState("open"),M=r.useState("transitionStatus"),v=r.useState("popupProps"),S=r.useState("mounted"),c=r.useState("instantType"),h=r.useState("activeTriggerElement"),b=r.useState("parent"),p=r.useState("lastOpenChangeReason"),T=r.useState("rootId"),V=r.useState("floatingRootContext"),s=r.useState("floatingTreeRoot"),k=r.useState("closeDelay"),P=r.useState("activeTriggerElement"),H=r.useState("hoverEnabled"),N=r.useState("disabled"),_=r.useState("openMethod"),D=b.type==="context-menu";Le({open:x,ref:r.context.popupRef,onComplete(){x&&r.context.onOpenChangeComplete?.(!0)}}),$e.useEffect(()=>{function K(w){r.setOpen(!1,J(w.reason,w.domEvent))}return n(K,"handleClose"),s.events.on("close",K),()=>{s.events.off("close",K)}},[s.events,r]),Jo(V,{enabled:H&&!N&&!D&&b.type!=="menubar",closeDelay:k});let F=$e.useCallback(K=>{r.set("popupElement",K)},[r]),Y={transitionStatus:M,side:m,align:R,open:x,nested:b.type==="menu",instant:c},$=E("div",e,{state:Y,ref:[o,r.context.popupRef,F],stateAttributesMapping:er,props:[v,{onKeyDown(K){g&&cn.has(K.key)&&K.stopPropagation()}},sn(M),l,{"data-rootownerid":T}]}),q=b.type===void 0||D;return(h||b.type==="menubar"&&p!==y.outsidePress)&&(q=!0),(0,Nn.jsx)(Oo,{context:V,openInteractionType:_,modal:D,disabled:!S,returnFocus:d===void 0?q:d,initialFocus:b.type!=="menu",restoreFocus:!0,externalTree:b.type!=="menubar"?s:void 0,previousFocusableElement:P,nextFocusableElement:b.type===void 0?r.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:b.type===void 0?r.context.beforeContentFocusGuardRef:void 0,children:$})},"MenuPopup"));qt.displayName="MenuPopup";var Tn=f(C(),1);var Et=f(C(),1);var It=Et.createContext(void 0);It.displayName="MenuPortalContext";function On(){let t=Et.useContext(It);if(t===void 0)throw new Error("Base UI: <Menu.Portal> is missing.");return t}n(On,"useMenuPortalContext");var Qt=f(Me(),1);var Zt=Tn.forwardRef(n(function(e,o){let{keepMounted:i=!1,...u}=e,{store:a}=O();return a.useState("mounted")||i?(0,Qt.jsx)(It.Provider,{value:i,children:(0,Qt.jsx)(yo,{ref:o,...u})}):null},"MenuPortal"));Zt.displayName="MenuPortal";var Ce=f(C(),1);var Ke=f(Me(),1);var eo=Ce.forwardRef(n(function(e,o){let{anchor:i,positionMethod:u="absolute",className:a,render:d,side:l,align:r,sideOffset:m=0,alignOffset:R=0,collisionBoundary:g="clipping-ancestors",collisionPadding:x=5,arrowPadding:M=5,sticky:v=!1,disableAnchorTracking:S=!1,collisionAvoidance:c=Eo,style:h,...b}=e,{store:p}=O(),T=On(),V=be(!0),s=p.useState("parent"),k=p.useState("floatingRootContext"),P=p.useState("floatingTreeRoot"),H=p.useState("mounted"),N=p.useState("open"),_=p.useState("modal"),D=p.useState("openMethod"),F=p.useState("activeTriggerElement"),Y=p.useState("transitionStatus"),$=p.useState("positionerElement"),q=p.useState("instantType"),K=p.useState("hasViewport"),w=p.useState("lastOpenChangeReason"),Q=p.useState("floatingNodeId"),ne=p.useState("floatingParentNodeId"),ve=k.useState("domReferenceElement"),de=Ce.useRef(null),ie=vo($,!1,!1),fe=i,ge=m,ye=R,j=r,re=c;s.type==="context-menu"&&(fe=i??s.context?.anchor,j=j??"start",!l&&j!=="center"&&(ye=e.alignOffset??2,ge=e.sideOffset??-5));let ae=l,Re=j;s.type==="menu"?(ae=ae??"inline-end",Re=Re??"start",re=e.collisionAvoidance??Io):s.type==="menubar"&&(ae=ae??(s.context.orientation==="vertical"?"inline-end":"bottom"),Re=Re??"start");let xe=s.type==="context-menu",se=nn({anchor:fe,floatingRootContext:k,positionMethod:V?"fixed":u,mounted:H,side:ae,sideOffset:ge,align:Re,alignOffset:ye,arrowPadding:xe?0:M,collisionBoundary:g,collisionPadding:x,sticky:v,nodeId:Q,keepMounted:T,disableAnchorTracking:S,collisionAvoidance:re,shiftCrossAxis:xe&&!("side"in re&&re.side==="flip"),externalTree:P,adaptiveOrigin:K?on:void 0});Ce.useEffect(()=>{function B(A){A.open&&(A.parentNodeId===Q&&p.set("hoverEnabled",!1),A.nodeId!==Q&&A.parentNodeId===p.select("floatingParentNodeId")&&p.setOpen(!1,J(y.siblingOpen)))}return n(B,"onMenuOpenChange"),P.events.on("menuopenchange",B),()=>{P.events.off("menuopenchange",B)}},[p,P.events,Q]),Ce.useEffect(()=>{if(p.select("floatingParentNodeId")==null)return;function B(A){if(A.open||A.nodeId!==p.select("floatingParentNodeId"))return;let Ee=A.reason??y.siblingOpen;p.setOpen(!1,J(Ee))}return n(B,"onParentClose"),P.events.on("menuopenchange",B),()=>{P.events.off("menuopenchange",B)}},[P.events,p]);let ue=Se();Ce.useEffect(()=>{N||ue.clear()},[N,ue]),Ce.useEffect(()=>{function B(A){if(!(!N||A.nodeId!==p.select("floatingParentNodeId")))if(A.target&&F&&F!==A.target){let Ee=p.select("closeDelay");Ee>0?ue.isStarted()||ue.start(Ee,()=>{p.setOpen(!1,J(y.siblingOpen))}):p.setOpen(!1,J(y.siblingOpen))}else ue.clear()}return n(B,"onItemHover"),P.events.on("itemhover",B),()=>{P.events.off("itemhover",B)}},[P.events,N,F,p,ue]),Ce.useEffect(()=>{let B={open:N,nodeId:Q,parentNodeId:ne,reason:p.select("lastOpenChangeReason")};P.events.emit("menuopenchange",B)},[P.events,N,p,Q,ne]),me(()=>{let B=ve,A=de.current;if(B&&(de.current=B),A&&B&&B!==A){p.set("instantType",void 0);let Ee=new AbortController;return ie(()=>{p.set("instantType","trigger-change")},Ee.signal),()=>{Ee.abort()}}},[ve,ie,p]);let _e={open:N,side:se.side,align:se.align,anchorHidden:se.anchorHidden,nested:s.type==="menu",instant:q},Pe=s.type==="menubar"&&s.context.modal,le=_&&w!==y.triggerHover;un(N&&(Pe||le),D==="touch",$,F);let De=an(e,_e,{styles:se.positionerStyles,transitionStatus:Y,props:b,refs:[o,p.useStateSetter("positionerElement")],hidden:!H,inert:!N}),Ae=H&&s.type!=="menu"&&(s.type!=="menubar"&&_&&w!==y.triggerHover||s.type==="menubar"&&s.context.modal),L=null;return s.type==="menubar"?L=s.context.contentElement:s.type===void 0&&(L=F),(0,Ke.jsxs)(dt.Provider,{value:se,children:[Ae&&(0,Ke.jsx)(rn,{ref:s.type==="context-menu"||s.type==="nested-context-menu"?s.context.internalBackdropRef:null,inert:en(!N),cutout:L}),(0,Ke.jsx)(So,{id:Q,children:(0,Ke.jsx)(fn,{elementsRef:p.context.itemDomElements,labelsRef:p.context.itemLabels,children:De})})]})},"MenuPositioner"));eo.displayName="MenuPositioner";var Te=f(C(),1);var yt=f(C(),1);var Pt=yt.createContext(void 0);Pt.displayName="MenuRadioGroupContext";function wn(){let t=yt.useContext(Pt);if(t===void 0)throw new Error("Base UI: MenuRadioGroupContext is missing. MenuRadioGroup parts must be placed within <Menu.RadioGroup>.");return t}n(wn,"useMenuRadioGroupContext");var to=f(Me(),1);var oo=Te.memo(Te.forwardRef(n(function(e,o){let{render:i,className:u,value:a,defaultValue:d,onValueChange:l,disabled:r=!1,style:m,"aria-labelledby":R,...g}=e,[x,M]=Te.useState(void 0),[v,S]=ot({controlled:a,default:d,name:"MenuRadioGroup"}),c=Be((T,V)=>{l?.(T,V),!V.isCanceled&&S(T)}),b=E("div",e,{state:{disabled:r},ref:o,props:{role:"group","aria-labelledby":R??x,"aria-disabled":r||void 0,...g}}),p=Te.useMemo(()=>({value:v,setValue:c,disabled:r}),[v,c,r]);return(0,to.jsx)(Ye.Provider,{value:M,children:(0,to.jsx)(Pt.Provider,{value:p,children:b})})},"MenuRadioGroup")));oo.displayName="MenuRadioGroup";var Ot=f(C(),1);var St=f(C(),1);var Nt=St.createContext(void 0);Nt.displayName="MenuRadioItemContext";function kn(){let t=St.useContext(Nt);if(t===void 0)throw new Error("Base UI: MenuRadioItemContext is missing. MenuRadioItem parts must be placed within <Menu.RadioItem>.");return t}n(kn,"useMenuRadioItemContext");var _n=f(Me(),1);var no=Ot.forwardRef(n(function(e,o){let{render:i,className:u,id:a,label:d,nativeButton:l=!1,disabled:r=!1,closeOnClick:m=!1,value:R,style:g,...x}=e,M=pe({label:d}),v=W(!0),S=ee(a),{store:c}=O(),h=c.useState("isActive",M.index),b=c.useState("itemProps"),{value:p,setValue:T,disabled:V}=wn(),s=V||r,k=p===R,{getItemProps:P,itemRef:H}=Ne({closeOnClick:m,disabled:s,highlighted:h,id:S,store:c,nativeButton:l,nodeId:v?.context.nodeId,itemMetadata:je}),N=Ot.useMemo(()=>({disabled:s,highlighted:h,checked:k}),[s,h,k]);function _(F){let Y=J(y.itemPress,F.nativeEvent,void 0,{preventUnmountOnClose(){}});T(R,Y)}n(_,"handleClick");let D=E("div",e,{state:N,stateAttributesMapping:Oe,props:[b,{role:"menuitemradio","aria-checked":k,onClick:_},x,P],ref:[H,o,M.ref]});return(0,_n.jsx)(Nt.Provider,{value:N,children:D})},"MenuRadioItem"));no.displayName="MenuRadioItem";var Tt=f(C(),1);var ro=Tt.forwardRef(n(function(e,o){let{render:i,className:u,style:a,keepMounted:d=!1,...l}=e,r=kn(),m=Tt.useRef(null),{transitionStatus:R,setMounted:g}=tt(r.checked);Le({open:r.checked,ref:m,onComplete(){r.checked||g(!1)}});let x={checked:r.checked,disabled:r.disabled,highlighted:r.highlighted,transitionStatus:R};return E("span",e,{state:x,stateAttributesMapping:Oe,ref:[o,m],props:{"aria-hidden":!0,...l},enabled:d||r.checked})},"MenuRadioItemIndicator"));ro.displayName="MenuRadioItemIndicator";var G=f(C(),1);var wt=f(C(),1);var Dn=wt.createContext(null);Dn.displayName="MenubarContext";function kt(t){let e=wt.useContext(Dn);if(e===null&&!t)throw new Error("Base UI: MenubarContext is missing. Menubar parts must be placed within <Menubar>.");return e}n(kt,"useMenubarContext");var Xe=f(C(),1);var tr={...Ko,disabled:U(t=>t.parent.type==="menubar"&&t.parent.context.disabled||t.disabled),modal:U(t=>(t.parent.type===void 0||t.parent.type==="context-menu")&&(t.modal??!0)),openMethod:U(t=>t.openMethod),allowMouseEnter:U(t=>t.allowMouseEnter),highlightItemOnHover:U(t=>t.highlightItemOnHover),stickIfOpen:U(t=>t.stickIfOpen),parent:U(t=>t.parent),rootId:U(t=>t.parent.type==="menu"?t.parent.store.select("rootId"):t.parent.type!==void 0?t.parent.context.rootId:t.rootId),activeIndex:U(t=>t.activeIndex),isActive:U((t,e)=>t.activeIndex===e),hoverEnabled:U(t=>t.hoverEnabled),instantType:U(t=>t.instantType),lastOpenChangeReason:U(t=>t.openChangeReason),floatingTreeRoot:U(t=>t.parent.type==="menu"?t.parent.store.select("floatingTreeRoot"):t.floatingTreeRoot),floatingNodeId:U(t=>t.floatingNodeId),floatingParentNodeId:U(t=>t.floatingParentNodeId),itemProps:U(t=>t.itemProps),closeDelay:U(t=>t.closeDelay),hasViewport:U(t=>t.hasViewport),keyboardEventRelay:U(t=>{if(t.keyboardEventRelay)return t.keyboardEventRelay;if(t.parent.type==="menu")return t.parent.store.select("keyboardEventRelay")})},ze=class t extends _o{static{n(this,"MenuStore")}constructor(e){super({...or(),...e},{positionerRef:Xe.createRef(),popupRef:Xe.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:Xe.createRef(),beforeContentFocusGuardRef:Xe.createRef(),onOpenChangeComplete:void 0,triggerElements:new Yo},tr),this.unsubscribeParentListener=this.observe("parent",o=>{if(this.unsubscribeParentListener?.(),o.type==="menu"){let i=o.store.select("rootId"),u=o.store.select("floatingTreeRoot"),a=o.store.select("keyboardEventRelay");this.unsubscribeParentListener=o.store.subscribe(()=>{let d=o.store.select("rootId"),l=o.store.select("floatingTreeRoot"),r=o.store.select("keyboardEventRelay");i===d&&u===l&&a===r||(i=d,u=l,a=r,this.notifyAll())}),this.context.allowMouseUpTriggerRef=o.store.context.allowMouseUpTriggerRef;return}o.type!==void 0&&(this.context.allowMouseUpTriggerRef=o.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,o){this.state.floatingRootContext.context.events.emit("setOpen",{open:e,eventDetails:o})}static useStore(e,o){let i=go(()=>new t(o)).current;return e??i}unsubscribeParentListener=null};function or(){return{...$o(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,stickIfOpen:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new nt,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:ce,keyboardEventRelay:void 0,closeDelay:0,hasViewport:!1}}n(or,"createInitialState");var _t=f(C(),1);var Dt=_t.createContext(void 0);Dt.displayName="MenuSubmenuRootContext";function At(){return _t.useContext(Dt)}n(At,"useMenuSubmenuRootContext");var so=f(Me(),1);var qe=wo(n(function(e){let{children:o,open:i,onOpenChange:u,onOpenChangeComplete:a,defaultOpen:d=!1,disabled:l=!1,modal:r,loopFocus:m=!0,orientation:R="vertical",actionsRef:g,closeParentOnEsc:x=!1,handle:M,triggerId:v,defaultTriggerId:S=null,highlightItemOnHover:c=!0}=e,h=be(!0),b=O(!0),p=kt(!0),T=At(),V=G.useMemo(()=>T&&b?{type:"menu",store:b.store}:p?{type:"menubar",context:p}:h&&!b?{type:"context-menu",context:h}:{type:void 0},[h,b,p,T]),s=ze.useStore(M?.store,{open:d,openProp:i,activeTriggerId:S,triggerIdProp:v,parent:V});Lo(s,i,d,S),s.useControlledProp("openProp",i),s.useControlledProp("triggerIdProp",v),s.useContextCallback("onOpenChangeComplete",a);let k=Ft(),P=Ft(),H=s.useState("floatingTreeRoot"),N=st(H),_=rt(),D=s.useState("open"),F=s.useState("activeTriggerElement"),Y=s.useState("positionerElement"),$=s.useState("hoverEnabled"),q=s.useState("disabled"),K=s.useState("lastOpenChangeReason"),w=s.useState("parent"),Q=s.useState("activeIndex"),ne=s.useState("payload"),ve=s.useState("floatingParentNodeId"),de=G.useRef(null),ie=G.useRef(w.type!=="context-menu"),fe=Se(),ge=G.useRef(!0),ye=Se(),j=ve!=null;w.type!==void 0&&r!==void 0&&console.warn("Base UI: The `modal` prop is not supported on nested menus. It will be ignored.");let{openMethod:re,triggerProps:ae}=Zo(D);s.useSyncedValues({disabled:l,highlightItemOnHover:c,modal:w.type===void 0?r:void 0,openMethod:re,rootId:k}),Go(s);let{forceUnmount:Re}=Ho(D,s,()=>{s.update({allowMouseEnter:!1,stickIfOpen:!0})});me(()=>{h&&!b?s.update({parent:{type:"context-menu",context:h},floatingNodeId:N,floatingParentNodeId:_}):b&&s.update({floatingNodeId:N,floatingParentNodeId:_})},[h,b,N,_,s]),G.useEffect(()=>{if(D||(de.current=null),w.type==="context-menu"){if(!D){fe.clear(),ie.current=!1;return}fe.start(500,()=>{ie.current=!0})}},[fe,D,w.type]),me(()=>{!D&&!$&&s.set("hoverEnabled",!0)},[D,$,s]);let xe=Be((I,z)=>{let Z=z.reason;if(D===I&&z.trigger===F&&K===Z)return;let Jn=Fo(z);if(!I&&z.trigger==null&&(z.trigger=F??void 0),u?.(I,z),z.isCanceled)return;s.state.floatingRootContext.dispatchOpenChange(I,z);let Ze=z.event;if(I===!1&&Ze?.type==="click"&&Ze.pointerType==="touch"&&!ge.current)return;I&&Z===y.triggerFocus?(ge.current=!1,ye.start(300,()=>{ge.current=!0})):(ge.current=!0,ye.clear());let mo=(Z===y.triggerPress||Z===y.itemPress)&&Ze.detail===0&&Ze?.isTrusted,Wn=!I&&(Z===y.escapeKey||Z==null),fo={open:I,openChangeReason:Z};de.current=z.event??null,Bo(fo,I,z.trigger,Jn()),s.update(fo),w.type==="menubar"&&(Z===y.triggerFocus||Z===y.focusOut||Z===y.triggerHover||Z===y.listNavigation||Z===y.siblingOpen)?s.set("instantType","group"):mo||Wn?s.set("instantType",mo?"click":"dismiss"):s.set("instantType",void 0)}),se=Do({popupStore:s,floatingId:P,nested:_!=null,onOpenChange:xe}),ue=se.context.events;G.useEffect(()=>{let I=n(({open:z,eventDetails:Z})=>xe(z,Z),"handleSetOpenEvent");return ue.on("setOpen",I),()=>{ue?.off("setOpen",I)}},[ue,xe]);let _e=G.useCallback(()=>{s.setOpen(!1,J(y.imperativeAction))},[s]);G.useImperativeHandle(g,()=>({unmount:Re,close:_e}),[Re,_e]);let Pe;w.type==="context-menu"&&(Pe=w.context),G.useImperativeHandle(Pe?.positionerRef,()=>Y,[Y]),G.useImperativeHandle(Pe?.actionsRef,()=>({setOpen:xe}),[xe]);let le=To(se,{enabled:!q,bubbles:{escapeKey:x&&w.type==="menu"},outsidePress(){return w.type!=="context-menu"||de.current?.type==="contextmenu"?!0:ie.current},externalTree:j?H:void 0}),De=tn(),Ae=G.useCallback(I=>{s.select("activeIndex")!==I&&s.set("activeIndex",I)},[s]),L=Wo(se,{enabled:!q,listRef:s.context.itemDomElements,activeIndex:Q,nested:w.type!==void 0,loopFocus:m,orientation:R,parentOrientation:w.type==="menubar"?w.context.orientation:void 0,rtl:De==="rtl",disabledIndices:Je,onNavigate:Ae,openOnArrowKeyDown:w.type!=="context-menu",externalTree:j?H:void 0,focusItemOnHover:c}),B=G.useCallback(I=>{s.context.typingRef.current=I},[s]),A=Xo(se,{enabled:!q,listRef:s.context.itemLabels,elementsRef:s.context.itemDomElements,activeIndex:Q,resetMs:500,onMatch:n(I=>{D&&I!==Q&&s.set("activeIndex",I)},"onMatch"),onTyping:B}),Ee=G.useMemo(()=>{let I=he(A.reference,L.reference,le.reference,{onMouseMove(){s.set("allowMouseEnter",!0)}},ae);return I["aria-haspopup"]="menu",I["aria-expanded"]=D,I},[s,A.reference,L.reference,le.reference,ae,D]),Yn=G.useMemo(()=>{let I=he(L.trigger,le.trigger,ae);return I["aria-haspopup"]="menu",I["aria-expanded"]=!1,I},[L.trigger,le.trigger,ae]),$n=G.useMemo(()=>he(Ao,{id:P,role:"menu","aria-labelledby":F?.id,onMouseMove(){s.set("allowMouseEnter",!0),w.type==="menu"&&s.set("hoverEnabled",!1)},onClick(){s.select("hoverEnabled")&&s.set("hoverEnabled",!1)},onKeyDown(I){let z=s.select("keyboardEventRelay");z&&!I.isPropagationStopped()&&z(I)}},A.floating,L.floating,le.floating),[F,P,w.type,s,A.floating,L.floating,le.floating]),Kn=L.item??ce;jo(s,{floatingRootContext:se,activeTriggerProps:Ee,inactiveTriggerProps:Yn,popupProps:$n,itemProps:Kn});let zn=G.useMemo(()=>({store:s,parent:V}),[s,V]),lo=(0,so.jsx)(mt.Provider,{value:zn,children:typeof o=="function"?o({payload:ne}):o});return w.type===void 0||w.type==="context-menu"?(0,so.jsx)(No,{externalTree:H,children:lo}):lo},"MenuRoot"));qe.displayName="MenuRoot";var An=f(C(),1);var io=f(Me(),1);function Vn(t){let e=O().store,o=An.useMemo(()=>({parentMenu:e}),[e]);return(0,io.jsx)(Dt.Provider,{value:o,children:(0,io.jsx)(qe,{...t})})}n(Vn,"MenuSubmenuRoot");var X=f(C(),1);var Bn=f(C(),1);function Fn(t={}){let{highlightItemOnHover:e,highlightedIndex:o,onHighlightedIndexChange:i}=ct(),{ref:u,index:a}=pe(t),d=o===a,l=Bn.useRef(null),r=et(u,l);return{compositeProps:{tabIndex:d?0:-1,onFocus(){i(a)},onMouseMove(){let R=l.current;if(!e||!R)return;let g=R.hasAttribute("disabled")||R.ariaDisabled==="true";!d&&!g&&R.focus()}},compositeRef:r,index:a}}n(Fn,"useCompositeItem");function Ln(t){let{render:e,className:o,style:i,state:u=ce,props:a=Je,refs:d=Je,metadata:l,stateAttributesMapping:r,tag:m="div",...R}=t,{compositeProps:g,compositeRef:x}=Fn({metadata:l});return E(m,t,{state:u,ref:[...d,x],props:[g,...a,R],stateAttributesMapping:r})}n(Ln,"CompositeItem");function ao(t){if(Mo(t)&&t.hasAttribute("data-rootownerid"))return t.getAttribute("data-rootownerid")??void 0;if(!ho(t))return ao(bo(t))}n(ao,"findRootOwnerId");var Vt=f(C(),1);function Un(t){let{enabled:e=!0,mouseDownAction:o,open:i}=t,u=Vt.useRef(!1);return Vt.useMemo(()=>e?{onMouseDown:n(a=>{(o==="open"&&!i||o==="close"&&i)&&(u.current=!0,We(a.currentTarget).addEventListener("click",()=>{u.current=!1},{once:!0}))},"onMouseDown"),onClick:n(a=>{u.current&&(u.current=!1,a.preventBaseUIHandler())},"onClick")}:ce,[e,o,i])}n(Un,"useMixedToggleClickHandler");var we=f(Me(),1);var Bt=2,uo=ko(n(function(e,o){let{render:i,className:u,style:a,disabled:d=!1,nativeButton:l=!0,id:r,openOnHover:m,delay:R=100,closeDelay:g=0,handle:x,payload:M,...v}=e,S=O(!0),c=x?.store??S?.store;if(!c)throw new Error("Base UI: <Menu.Trigger> must be either used within a <Menu.Root> component or provided with a handle.");let h=ee(r),b=c.useState("isTriggerActive",h),p=c.useState("floatingRootContext"),T=c.useState("isOpenedByTrigger",h),V=c.useState("triggerPopupId",h),s=X.useRef(null),k=rr(),P=ct(!0),H=Po(),N=X.useMemo(()=>H??new nt,[H]),_=st(N),D=rt(),{registerTrigger:F,isMountedByThisTrigger:Y}=Uo(h,s,c,{payload:M,closeDelay:g,parent:k,floatingTreeRoot:N,floatingNodeId:_,floatingParentNodeId:D,keyboardEventRelay:P?.relayKeyboardEvent}),$=k.type==="menubar",q=c.useState("disabled"),K=d||q||$&&k.context.disabled,{getButtonProps:w,buttonRef:Q}=Ue({disabled:K,native:l});X.useEffect(()=>{!T&&k.type===void 0&&(c.context.allowMouseUpTriggerRef.current=!1)},[c,T,k.type]);let ne=X.useRef(null),ve=Se(),de=Be(L=>{if(!ne.current)return;ve.clear(),c.context.allowMouseUpTriggerRef.current=!1;let B=L.target;if(Lt(ne.current,B)||Lt(c.select("positionerElement"),B)||B===ne.current||B!=null&&ao(B)===c.select("rootId"))return;let A=gn(ne.current);L.clientX>=A.left-Bt&&L.clientX<=A.right+Bt&&L.clientY>=A.top-Bt&&L.clientY<=A.bottom+Bt||N.events.emit("close",{domEvent:L,reason:y.cancelOpen})});X.useEffect(()=>{T&&c.select("lastOpenChangeReason")===y.triggerHover&&We(ne.current).addEventListener("mouseup",de,{once:!0})},[T,de,c]);let ie=$&&k.context.hasSubmenuOpen,ge=at(p,{enabled:(m??ie)&&!K&&k.type!=="context-menu"&&(!$||ie&&!Y),handleClose:ut({blockPointerEvents:!$}),mouseOnly:!0,move:!1,restMs:k.type===void 0?R:void 0,delay:{close:g},triggerElementRef:s,externalTree:N,isActiveTrigger:b,isClosing:n(()=>c.select("transitionStatus")==="ending","isClosing")}),ye=nr(T,c.select("lastOpenChangeReason")),j=it(p,{enabled:!K&&k.type!=="context-menu",event:T&&$?"click":"mousedown",toggle:!0,ignoreMouse:!1,stickIfOpen:k.type===void 0?ye:!1}),re=zo(p,{enabled:!K&&ie}),ae=Un({open:T,enabled:$,mouseDownAction:"open"}),Re=X.useMemo(()=>he(re.reference,j.reference),[re.reference,j.reference]),xe=c.useState("triggerProps",Y),{preFocusGuardRef:se,handlePreFocusGuardFocus:ue,handleFocusTargetFocus:_e}=Qo(c,s),Pe={disabled:K,open:T},le=[ne,o,Q,F,s],De=[Re,ge??ce,xe,{"aria-haspopup":"menu","aria-controls":V,id:h,onMouseDown:n(L=>{if(c.select("open"))return;ve.start(200,()=>{c.context.allowMouseUpTriggerRef.current=!0}),We(L.currentTarget).addEventListener("mouseup",de,{once:!0})},"onMouseDown")},$?{role:"menuitem"}:{},ae,v,w],Ae=E("button",e,{enabled:!$,stateAttributesMapping:Gt,state:Pe,ref:le,props:De});return $?(0,we.jsx)(Ln,{tag:"button",render:i,className:u,style:a,state:Pe,refs:le,props:De,stateAttributesMapping:Gt}):T?(0,we.jsxs)(X.Fragment,{children:[(0,we.jsx)(Ut,{ref:se,onFocus:ue},`${h}-pre-focus-guard`),(0,we.jsx)(X.Fragment,{children:Ae},h),(0,we.jsx)(Ut,{ref:c.context.triggerFocusTargetRef,onFocus:_e},`${h}-post-focus-guard`)]}):(0,we.jsx)(X.Fragment,{children:Ae},h)},"MenuTrigger"));uo.displayName="MenuTrigger";function nr(t,e){let o=Se(),[i,u]=X.useState(!1);return me(()=>{t&&e==="trigger-hover"?(u(!0),o.start(500,()=>{u(!1)})):t||(o.clear(),u(!1))},[t,e,o]),i}n(nr,"useStickIfOpen");function rr(){let t=be(!0),e=O(!0),o=kt(!0);return X.useMemo(()=>o?{type:"menubar",context:o}:t&&!e?{type:"context-menu",context:t}:{type:void 0},[t,e,o])}n(rr,"useMenuParent");var Hn=f(C(),1);var Gn=(function(t){return t.popupWidth="--popup-width",t.popupHeight="--popup-height",t})({});var sr={activationDirection:n(t=>t?{"data-activation-direction":t}:null,"activationDirection")},co=Hn.forwardRef(n(function(e,o){let{render:i,className:u,style:a,children:d,...l}=e,{store:r}=O(),{side:m}=W(),R=r.useState("instantType"),{children:g,state:x}=dn({store:r,side:m,cssVars:Gn,children:d}),M={activationDirection:x.activationDirection,transitioning:x.transitioning,instant:R};return E("div",e,{state:M,ref:o,props:[l,{children:g}],stateAttributesMapping:sr})},"MenuViewport"));co.displayName="MenuViewport";var Ie=f(C(),1);var po=Ie.forwardRef(n(function(e,o){let{render:i,className:u,style:a,label:d,id:l,nativeButton:r=!1,openOnHover:m=!0,delay:R=100,closeDelay:g=0,disabled:x=!1,...M}=e,v=pe({label:d}),S=W(),{store:c}=O(),h=ee(l),b=c.useState("open"),p=c.useState("floatingRootContext"),T=c.useState("floatingTreeRoot"),V=c.useState("triggerPopupId",h),s=Vo(h,c),k=Ie.useCallback(j=>{let re=s(j);return j!==null&&c.select("open")&&c.select("activeTriggerId")==null&&c.update({activeTriggerId:h,activeTriggerElement:j,closeDelay:g}),re},[s,g,c,h]),P=Ie.useRef(null),H=Ie.useCallback(j=>{P.current=j,c.set("activeTriggerElement",j)},[c]),N=At();if(!N?.parentMenu)throw new Error("Base UI: <Menu.SubmenuTrigger> must be placed in <Menu.SubmenuRoot>.");c.useSyncedValue("closeDelay",g);let _=N.parentMenu,D=c.useState("disabled"),F=_.useState("disabled"),Y=x||D||F;me(()=>{let j=P.current;if(j&&xn(j)&&!Y){let re=xo.captureOwnerStack?.()||"";Ro(`A disabled element was detected on <Menu.SubmenuTrigger>. To properly disable the trigger, use the \`disabled\` prop on the component instead of setting it on the rendered element.${re}`)}});let $=_.useState("itemProps"),q=_.useState("isActive",v.index),K=Ie.useMemo(()=>({type:"submenu-trigger",setActive(){_.select("highlightItemOnHover")&&_.set("activeIndex",v.index)}}),[_,v.index]),{getItemProps:w,itemRef:Q}=Ne({closeOnClick:!1,disabled:Y,highlighted:q,id:h,store:c,typingRef:_.context.typingRef,nativeButton:r,itemMetadata:K,nodeId:S?.context.nodeId}),ne=c.useState("hoverEnabled"),ve=at(p,{enabled:ne&&m&&!Y,handleClose:ut({blockPointerEvents:!0}),mouseOnly:!0,move:!0,restMs:R,delay:{open:R,close:g},shouldOpen:R>0?()=>_.select("allowMouseEnter"):void 0,triggerElementRef:P,externalTree:T,isClosing:n(()=>c.select("transitionStatus")==="ending","isClosing")}),ie=it(p,{enabled:!Y,event:"mousedown",toggle:!m,ignoreMouse:m,stickIfOpen:!1}).reference??ce,fe=c.useState("triggerProps",!0);return delete fe.id,E("div",e,{state:{disabled:Y,highlighted:q,open:b},stateAttributesMapping:qo,props:[ie,ve,fe,$,{"aria-controls":V,tabIndex:b||q?0:-1,onBlur(){q&&_.set("activeIndex",null)}},M,w],ref:[o,v.ref,Q,k,H]})},"MenuSubmenuTrigger"));po.displayName="MenuSubmenuTrigger";var Qe=class{static{n(this,"MenuHandle")}constructor(){this.store=new ze}open(e){let o=e?this.store.context.triggerElements.getById(e):void 0;if(e&&!o)throw new Error(`Base UI: MenuHandle.open: No trigger found with id "${e}".`);this.store.setOpen(!0,J("imperative-action",void 0,o))}close(){this.store.setOpen(!1,J("imperative-action",void 0,void 0))}get isOpen(){return this.store.select("open")}};function jn(){return new Qe}n(jn,"createMenuHandle");var oe=f(Qn(),1);function Dc(t){let e=(0,ke.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let i;return e[2]!==o?(i=(0,oe.jsxDEV)(te.Root,{"data-slot":"dropdown-menu",...o},void 0,!1),e[2]=o,e[3]=i):i=e[3],i}n(Dc,"DropdownMenu");function Ac(t){let e=(0,ke.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let i;return e[2]!==o?(i=(0,oe.jsxDEV)(te.Trigger,{"data-slot":"dropdown-menu-trigger",...o},void 0,!1),e[2]=o,e[3]=i):i=e[3],i}n(Ac,"DropdownMenuTrigger");function Vc({align:t="start",alignOffset:e=0,side:o="bottom",sideOffset:i=4,className:u,...a}){return(0,oe.jsxDEV)(te.Portal,{children:(0,oe.jsxDEV)(te.Positioner,{className:"isolate z-50 outline-none",align:t,alignOffset:e,side:o,sideOffset:i,children:(0,oe.jsxDEV)(te.Popup,{"data-slot":"dropdown-menu-content",className:Ve("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-start-2 data-[side=inline-start]:slide-in-from-end-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!",u),...a},void 0,!1)},void 0,!1)},void 0,!1)}n(Vc,"DropdownMenuContent");function Bc(t){let e=(0,ke.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let i;return e[2]!==o?(i=(0,oe.jsxDEV)(te.Group,{"data-slot":"dropdown-menu-group",...o},void 0,!1),e[2]=o,e[3]=i):i=e[3],i}n(Bc,"DropdownMenuGroup");function Fc(t){let e=(0,ke.c)(10),o,i,u;e[0]!==t?({className:o,inset:i,...u}=t,e[0]=t,e[1]=o,e[2]=i,e[3]=u):(o=e[1],i=e[2],u=e[3]);let a;e[4]!==o?(a=Ve("px-2 py-2 text-xs text-muted-foreground data-inset:ps-7",o),e[4]=o,e[5]=a):a=e[5];let d;return e[6]!==i||e[7]!==u||e[8]!==a?(d=(0,oe.jsxDEV)(te.GroupLabel,{"data-slot":"dropdown-menu-label","data-inset":i,className:a,...u},void 0,!1),e[6]=i,e[7]=u,e[8]=a,e[9]=d):d=e[9],d}n(Fc,"DropdownMenuLabel");function Lc({className:t,inset:e,variant:o="default",...i}){return(0,oe.jsxDEV)(te.Item,{"data-slot":"dropdown-menu-item","data-inset":e,"data-variant":o,className:Ve("group/dropdown-menu-item relative flex cursor-default items-center gap-2 rounded-md px-2 py-2 text-xs outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:ps-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive",t),...i},void 0,!1)}n(Lc,"DropdownMenuItem");function Uc(t){let e=(0,ke.c)(15),o,i,u,a,d;e[0]!==t?({className:u,children:i,checked:o,inset:a,...d}=t,e[0]=t,e[1]=o,e[2]=i,e[3]=u,e[4]=a,e[5]=d):(o=e[1],i=e[2],u=e[3],a=e[4],d=e[5]);let l;e[6]!==u?(l=Ve("relative flex cursor-default items-center gap-2 rounded-md py-2 pe-8 ps-2 text-xs outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:ps-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",u),e[6]=u,e[7]=l):l=e[7];let r;e[8]===Symbol.for("react.memo_cache_sentinel")?(r=(0,oe.jsxDEV)("span",{className:"pointer-events-none absolute end-2 flex items-center justify-center","data-slot":"dropdown-menu-checkbox-item-indicator",children:(0,oe.jsxDEV)(te.CheckboxItemIndicator,{children:(0,oe.jsxDEV)(mn,{icon:ln,strokeWidth:2},void 0,!1)},void 0,!1)},void 0,!1),e[8]=r):r=e[8];let m;return e[9]!==o||e[10]!==i||e[11]!==a||e[12]!==d||e[13]!==l?(m=(0,oe.jsxDEV)(te.CheckboxItem,{"data-slot":"dropdown-menu-checkbox-item","data-inset":a,className:l,checked:o,...d,children:[r,i]},void 0,!0),e[9]=o,e[10]=i,e[11]=a,e[12]=d,e[13]=l,e[14]=m):m=e[14],m}n(Uc,"DropdownMenuCheckboxItem");function Gc(t){let e=(0,ke.c)(8),o,i;e[0]!==t?({className:o,...i}=t,e[0]=t,e[1]=o,e[2]=i):(o=e[1],i=e[2]);let u;e[3]!==o?(u=Ve("-mx-1 h-px bg-border",o),e[3]=o,e[4]=u):u=e[4];let a;return e[5]!==i||e[6]!==u?(a=(0,oe.jsxDEV)(te.Separator,{"data-slot":"dropdown-menu-separator",className:u,...i},void 0,!1),e[5]=i,e[6]=u,e[7]=a):a=e[7],a}n(Gc,"DropdownMenuSeparator");export{Dc as a,Ac as b,Vc as c,Bc as d,Fc as e,Lc as f,Uc as g,Gc as h};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as $,b as F,c as D,d as p,e as l,f as i}from"./chunk-GTM65MVX.js";import{a as se}from"./chunk-VLXV72QE.js";import{R as te}from"./chunk-3CJW6NWG.js";import{c as T}from"./chunk-UK64ZSUW.js";import"./chunk-O3NAGRTR.js";import"./chunk-HV7G6DFP.js";import{a as K}from"./chunk-BOXSWNXZ.js";import{a as B}from"./chunk-TAD43CG5.js";import{b as ae}from"./chunk-C7WTJLC3.js";import{a as R,e as _}from"./chunk-SEU5V7I6.js";import"./chunk-CKSHCYGC.js";import{f as Q}from"./chunk-GLUNBZRI.js";import"./chunk-ZHVTQ37P.js";import"./chunk-3OA7PECS.js";import{d as V,e as X,f as Y,g as E,k as W}from"./chunk-E75ANNWX.js";import"./chunk-GMSGZDDH.js";import{a as r,e as ee,f as re,h as le}from"./chunk-RRCPZMC2.js";var n=ee(re(),1);var e=ee(le(),1);var ie=["queued","running","paused","waiting","complete","errored","terminated"],ne=["pause","resume","terminate"],de="WORKFLOWS_NOT_CONFIGURED",ce=r(c=>typeof c=="object"&&c!==null&&c.code===de,"isNotConfigured"),fe=r(c=>{let s=c.error??c.output;if(s===void 0)return"\u2014";try{return JSON.stringify(s)}catch{return"(unserializable)"}},"formatStepPayload"),ue=r(({loadDetail:c,loadInstances:s,readOnly:y,runAction:L,workflowName:v})=>{let A=Q(),o=V(),[x,N]=(0,n.useState)(null),[k,I]=(0,n.useState)(null),[w,P]=(0,n.useState)(""),[g,h]=(0,n.useState)(null),[U,S]=(0,n.useState)(!1),[z,J]=(0,n.useState)(null),m=c??(a=>A.getWorkflowInstance(a)),O=y?void 0:L??(s===void 0?a=>A.setWorkflowInstanceStatus(a):void 0),j=r(async()=>{h(null),S(!1);let a=w===""?void 0:w;try{if(s===void 0){let d=await A.listWorkflowInstances({name:v,status:a});if(d.configured===!1){N(null),S(!0);return}N(d.instances);return}N(await s({name:v,status:a}))}catch(d){N(null),ce(d)?S(!0):h(E(d))}},"load");(0,n.useEffect)(()=>{I(null),W(j())},[v,w]);let G=r(async a=>{h(null);try{I(await m({id:a,name:v}))}catch(d){h(E(d))}},"openDetail"),H=r(async(a,d)=>{if(O!==void 0){J(a),h(null);try{await O({action:d,id:a,name:v}),await j()}catch(M){h(E(M))}finally{J(null)}}},"act");return(0,e.jsxDEV)("div",{className:"flex flex-col gap-3","data-testid":"lunora-workflow-instances",children:[(0,e.jsxDEV)("div",{className:"flex items-center justify-between gap-2",children:[(0,e.jsxDEV)("h3",{className:"text-sm font-medium",children:o("Instance history")},void 0,!1),(0,e.jsxDEV)("select",{"aria-label":o("Filter by status"),className:"h-8 rounded-md border border-input bg-transparent px-2.5 py-1 text-xs outline-none focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50","data-testid":"workflow-instances-filter",onChange:r(a=>{P(a.target.value)},"onChange"),value:w,children:[(0,e.jsxDEV)("option",{value:"",children:o("All statuses")},void 0,!1),ie.map(a=>(0,e.jsxDEV)("option",{value:a,children:a},a,!1))]},void 0,!0)]},void 0,!0),g!==null&&(0,e.jsxDEV)("p",{className:"text-sm text-destructive","data-testid":"workflow-instances-error",role:"alert",children:g},void 0,!1),U&&(0,e.jsxDEV)(B,{description:o("Set CLOUDFLARE_ACCOUNT_ID and CLOUDFLARE_API_TOKEN in your .dev.vars to enable workflow instance history."),testId:"workflow-instances-unconfigured",title:o("Workflow inspection not configured")},void 0,!1),!U&&x!==null&&x.length===0&&(0,e.jsxDEV)(B,{description:o("No instances match this filter for the selected workflow."),testId:"workflow-instances-empty",title:o("No instances")},void 0,!1),x!==null&&x.length>0&&(0,e.jsxDEV)(R,{className:"overflow-hidden py-0",children:(0,e.jsxDEV)(_,{className:"px-0",children:(0,e.jsxDEV)($,{"data-testid":"workflow-instances-table",children:[(0,e.jsxDEV)(F,{children:(0,e.jsxDEV)(p,{children:[(0,e.jsxDEV)(l,{children:o("Instance id")},void 0,!1),(0,e.jsxDEV)(l,{children:o("Status")},void 0,!1),(0,e.jsxDEV)(l,{children:o("Created")},void 0,!1),(0,e.jsxDEV)(l,{children:o("Ended")},void 0,!1),(0,e.jsxDEV)(l,{"aria-label":o("Actions")},void 0,!1)]},void 0,!0)},void 0,!1),(0,e.jsxDEV)(D,{children:x.map(a=>(0,e.jsxDEV)(p,{"data-testid":`workflow-instance-${a.id}`,children:[(0,e.jsxDEV)(i,{className:"font-mono text-xs",children:a.id},void 0,!1),(0,e.jsxDEV)(i,{className:"font-mono text-xs",children:a.status},void 0,!1),(0,e.jsxDEV)(i,{className:"text-muted-foreground tabular-nums",children:a.createdOn??"\u2014"},void 0,!1),(0,e.jsxDEV)(i,{className:"text-muted-foreground tabular-nums",children:a.endedOn??"\u2014"},void 0,!1),(0,e.jsxDEV)(i,{className:"text-right",children:(0,e.jsxDEV)("div",{className:"flex justify-end gap-1.5",children:[(0,e.jsxDEV)(T,{"data-testid":`workflow-instance-steps-${a.id}`,onClick:r(()=>{W(G(a.id))},"onClick"),size:"sm",type:"button",variant:"outline",children:o("Steps")},void 0,!1),O!==void 0&&ne.map(d=>(0,e.jsxDEV)(T,{"data-testid":`workflow-instance-${d}-${a.id}`,disabled:z===a.id,onClick:r(()=>{W(H(a.id,d))},"onClick"),size:"sm",type:"button",variant:"ghost",children:o(d)},d,!1))]},void 0,!0)},void 0,!1)]},a.id,!0))},void 0,!1)]},void 0,!0)},void 0,!1)},void 0,!1),k!==null&&(0,e.jsxDEV)(R,{className:"overflow-hidden py-0","data-testid":"workflow-instance-detail",children:(0,e.jsxDEV)(_,{className:"flex flex-col gap-2 px-4 py-3",children:[(0,e.jsxDEV)("div",{className:"flex items-center justify-between",children:[(0,e.jsxDEV)("span",{className:"font-mono text-xs",children:[o("Steps")," \xB7 ",k.id]},void 0,!0),(0,e.jsxDEV)(T,{"data-testid":"workflow-instance-detail-close",onClick:r(()=>{I(null)},"onClick"),size:"xs",type:"button",variant:"ghost",children:o("Close")},void 0,!1)]},void 0,!0),k.steps.length===0?(0,e.jsxDEV)("p",{className:"text-xs text-muted-foreground",children:o("This instance has no recorded steps yet.")},void 0,!1):(0,e.jsxDEV)($,{"data-testid":"workflow-instance-steps",children:[(0,e.jsxDEV)(F,{children:(0,e.jsxDEV)(p,{children:[(0,e.jsxDEV)(l,{children:o("Step")},void 0,!1),(0,e.jsxDEV)(l,{children:o("Type")},void 0,!1),(0,e.jsxDEV)(l,{children:o("Attempts")},void 0,!1),(0,e.jsxDEV)(l,{children:o("Started")},void 0,!1),(0,e.jsxDEV)(l,{children:o("Output")},void 0,!1)]},void 0,!0)},void 0,!1),(0,e.jsxDEV)(D,{children:k.steps.map((a,d)=>(0,e.jsxDEV)(p,{"data-testid":`workflow-step-${String(d)}`,children:[(0,e.jsxDEV)(i,{className:"font-mono text-xs",children:a.name},void 0,!1),(0,e.jsxDEV)(i,{className:"text-xs text-muted-foreground",children:a.type??"\u2014"},void 0,!1),(0,e.jsxDEV)(i,{className:"tabular-nums",children:a.attempts??"\u2014"},void 0,!1),(0,e.jsxDEV)(i,{className:"text-muted-foreground tabular-nums",children:a.start??"\u2014"},void 0,!1),(0,e.jsxDEV)(i,{className:"font-mono text-xs text-muted-foreground",children:fe(a)},void 0,!1)]},`${a.name}:${String(d)}`,!0))},void 0,!1)]},void 0,!0)]},void 0,!0)},void 0,!1)]},void 0,!0)},"WorkflowInstanceHistory"),me=X(K.createWorkflowInstance),ve=X(K.getWorkflowInstanceStatus),he=r(c=>{if(c.error)return`${c.error.name}: ${c.error.message}`;if(c.output===void 0)return"\u2014";try{return JSON.stringify(c.output)}catch{return"(unserializable)"}},"formatPayload"),Oe=r(()=>{let c=Q(),s=V(),{data:y,error:L}=ae(K.listWorkflows,{}),[v,A]=(0,n.useState)(""),[o,x]=(0,n.useState)(""),[N,k]=(0,n.useState)(""),[I,w]=(0,n.useState)(!1),[P,g]=(0,n.useState)(null),[h,U]=(0,n.useState)([]),[S,z]=(0,n.useState)(null),J=y!==void 0,m=(0,n.useMemo)(()=>Array.isArray(y?.workflows)?[...y.workflows].toSorted((t,u)=>t.exportName.localeCompare(u.exportName)):[],[y]),C=(0,n.useMemo)(()=>m.some(t=>t.exportName===v)?v:m[0]?.exportName??"",[m,v]),q=(0,n.useMemo)(()=>m.find(t=>t.exportName===C),[m,C]),O=r(t=>{U(u=>{let f=u.filter(b=>!(b.exportName===t.exportName&&b.id===t.id));return[t,...f]})},"upsertInstance"),j=r(async()=>{let t=C;if(t==="")return;let u,f=N.trim();if(f!=="")try{u=JSON.parse(f)}catch{g(s("Params must be valid JSON"));return}w(!0),g(null);try{let b=o.trim(),Z=await c.query(me,{exportName:t,id:b===""?void 0:b,params:u},Y(""));O({exportName:t,id:Z.id,status:Z.status}),x("")}catch(b){g(E(b))}finally{w(!1)}},"start"),G=r(()=>{W(j())},"startInstance"),H=r(async(t,u)=>{z(u);try{let f=await c.query(ve,{exportName:t,id:u},Y(""));O({error:f.error,exportName:t,id:f.id,output:f.output,status:f.status})}catch(f){g(E(f))}finally{z(null)}},"refreshInstance"),a=r(t=>{A(t.target.value)},"onSelectedExportChange"),d=r(t=>{x(t.target.value)},"onInstanceIdChange"),M=r(t=>{k(t.target.value)},"onParamsChange"),oe=r(t=>{let{export:u,id:f}=t.currentTarget.dataset;u!==void 0&&f!==void 0&&W(H(u,f))},"onRefreshClick");return(0,e.jsxDEV)("div",{className:"flex flex-col gap-6","data-testid":"lunora-workflows-panel",children:[L!==null&&(0,e.jsxDEV)("p",{className:"text-sm text-destructive","data-testid":"workflows-error",role:"alert",children:L},void 0,!1),(0,e.jsxDEV)("p",{className:"text-sm text-muted-foreground",children:s("Workflows are declared in code with defineWorkflow and run as durable Cloudflare Workflows. Start an instance and observe its status below.")},void 0,!1),J&&m.length===0?(0,e.jsxDEV)(B,{description:s("No defineWorkflow is declared in lunora/workflows.ts in this deployment. Add one to run a durable, multi-step workflow."),testId:"workflows-empty",title:s("No workflows defined")},void 0,!1):(0,e.jsxDEV)(R,{className:"overflow-hidden py-0",children:(0,e.jsxDEV)(_,{className:"px-0",children:(0,e.jsxDEV)($,{"data-testid":"workflows-table",children:[(0,e.jsxDEV)(F,{children:(0,e.jsxDEV)(p,{children:[(0,e.jsxDEV)(l,{children:s("Export")},void 0,!1),(0,e.jsxDEV)(l,{children:s("Name")},void 0,!1),(0,e.jsxDEV)(l,{children:s("Class")},void 0,!1),(0,e.jsxDEV)(l,{children:s("Binding")},void 0,!1)]},void 0,!0)},void 0,!1),(0,e.jsxDEV)(D,{children:m.map(t=>(0,e.jsxDEV)(p,{"data-testid":`workflows-row-${t.exportName}`,children:[(0,e.jsxDEV)(i,{className:"font-mono text-xs",children:t.exportName},void 0,!1),(0,e.jsxDEV)(i,{className:"font-mono text-xs text-muted-foreground",children:t.name},void 0,!1),(0,e.jsxDEV)(i,{className:"font-mono text-xs text-muted-foreground",children:t.className},void 0,!1),(0,e.jsxDEV)(i,{className:"font-mono text-xs text-muted-foreground",children:t.binding},void 0,!1)]},t.exportName,!0))},void 0,!1)]},void 0,!0)},void 0,!1)},void 0,!1),m.length>0&&(0,e.jsxDEV)("div",{className:"flex flex-col gap-3","data-testid":"workflows-start",children:[(0,e.jsxDEV)("h3",{className:"text-sm font-medium",children:s("Start instance")},void 0,!1),P!==null&&(0,e.jsxDEV)("p",{className:"text-sm text-destructive","data-testid":"workflows-start-error",role:"alert",children:P},void 0,!1),(0,e.jsxDEV)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,e.jsxDEV)("select",{"aria-label":s("Workflow"),className:"h-8 rounded-md border border-input bg-transparent px-2.5 py-1 text-xs outline-none focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50","data-testid":"workflows-start-select",onChange:a,value:C,children:m.map(t=>(0,e.jsxDEV)("option",{value:t.exportName,children:t.exportName},t.exportName,!1))},void 0,!1),(0,e.jsxDEV)(te,{"aria-label":s("Instance id (optional)"),className:"max-w-48","data-testid":"workflows-start-id",onChange:d,placeholder:s("Instance id (optional)"),value:o},void 0,!1),(0,e.jsxDEV)(T,{"data-testid":"workflows-start-button",disabled:I||C==="",onClick:G,children:s(I?"Starting\u2026":"Start instance")},void 0,!1)]},void 0,!0),(0,e.jsxDEV)(se,{"aria-label":s("Params (JSON)"),className:"font-mono","data-testid":"workflows-start-params",onChange:M,placeholder:s("Params (JSON, optional)"),value:N},void 0,!1)]},void 0,!0),h.length>0&&(0,e.jsxDEV)("div",{className:"flex flex-col gap-3","data-testid":"workflows-instances",children:[(0,e.jsxDEV)("h3",{className:"text-sm font-medium",children:s("Instances")},void 0,!1),(0,e.jsxDEV)(R,{className:"overflow-hidden py-0",children:(0,e.jsxDEV)(_,{className:"px-0",children:(0,e.jsxDEV)($,{"data-testid":"workflows-instances-table",children:[(0,e.jsxDEV)(F,{children:(0,e.jsxDEV)(p,{children:[(0,e.jsxDEV)(l,{children:s("Workflow")},void 0,!1),(0,e.jsxDEV)(l,{children:s("Instance id")},void 0,!1),(0,e.jsxDEV)(l,{children:s("Status")},void 0,!1),(0,e.jsxDEV)(l,{children:s("Output")},void 0,!1),(0,e.jsxDEV)(l,{},void 0,!1)]},void 0,!0)},void 0,!1),(0,e.jsxDEV)(D,{children:h.map(t=>(0,e.jsxDEV)(p,{"data-testid":`workflows-instance-${t.id}`,children:[(0,e.jsxDEV)(i,{className:"font-mono text-xs",children:t.exportName},void 0,!1),(0,e.jsxDEV)(i,{className:"font-mono text-xs text-muted-foreground",children:t.id},void 0,!1),(0,e.jsxDEV)(i,{className:"font-mono text-xs",children:t.status},void 0,!1),(0,e.jsxDEV)(i,{className:"font-mono text-xs text-muted-foreground",children:he(t)},void 0,!1),(0,e.jsxDEV)(i,{children:(0,e.jsxDEV)(T,{"data-export":t.exportName,"data-id":t.id,"data-testid":`workflows-instance-refresh-${t.id}`,disabled:S===t.id,onClick:oe,size:"xs",variant:"outline",children:S===t.id?s("Refreshing\u2026"):s("Refresh")},void 0,!1)},void 0,!1)]},`${t.exportName}:${t.id}`,!0))},void 0,!1)]},void 0,!0)},void 0,!1)},void 0,!1)]},void 0,!0),q!==void 0&&(0,e.jsxDEV)(ue,{workflowName:q.name},void 0,!1)]},void 0,!0)},"WorkflowsPanel");export{Oe as default};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{a as M,b as E,c as O,d as B,e as I,f as $,g as R,h as J}from"./chunk-LNZIB2MD.js";import{a as q}from"./chunk-AHILM3ZP.js";import{a as U}from"./chunk-YBGC4PPD.js";import{d as k,j as A,m as V}from"./chunk-E75ANNWX.js";import{a as C,e as j,f as z,g as K,h as P}from"./chunk-RRCPZMC2.js";var T=j(K(),1),H=j(z(),1);var a=j(P(),1);var D="inline-flex items-center gap-1 rounded-md border border-border px-2.5 py-1 text-xs font-medium text-foreground outline-none transition-colors hover:bg-accent focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50",W=/["\n,]/u,G=C(o=>{if(o==null)return"";let e;return typeof o=="string"?e=o:typeof o=="number"||typeof o=="boolean"||typeof o=="bigint"?e=String(o):e=JSON.stringify(o),W.test(e)?`"${e.replaceAll('"','""')}"`:e},"csvCell"),X=C((o,e)=>{let l=o.map(n=>G(n)).join(","),s=e.map(n=>o.map(t=>G(n[t])).join(","));return[l,...s].join(`
|
|
2
|
+
`)},"toCsv"),Y=C(o=>JSON.stringify(o,null,2),"toJson"),Q=500,F=C(o=>`"${o.replaceAll('"','""')}"`,"sqlIdentifier"),Z=C(o=>o==null?"NULL":typeof o=="number"?Number.isFinite(o)?String(o):"NULL":typeof o=="bigint"?String(o):typeof o=="boolean"?o?"1":"0":`'${(typeof o=="string"?o:JSON.stringify(o)).replaceAll("'","''")}'`,"sqlLiteral"),ee=C((o,e,l)=>{if(e.length===0||l.length===0)return"";let s=e.map(t=>F(t)).join(", "),n=[];for(let t=0;t<l.length;t+=Q){let r=l.slice(t,t+Q).map(m=>` (${e.map(i=>Z(m[i])).join(", ")})`).join(`,
|
|
3
|
+
`);n.push(`INSERT INTO ${F(o)} (${s}) VALUES
|
|
4
|
+
${r};`)}return n.join(`
|
|
5
|
+
|
|
6
|
+
`)},"toSql"),_=C((o,e,l)=>{if(!("document"in globalThis))return;let s=globalThis.URL.createObjectURL(new globalThis.Blob([e],{type:l})),n=globalThis.document.createElement("a");n.href=s,n.download=o,globalThis.document.body.append(n),n.click(),n.remove(),globalThis.URL.revokeObjectURL(s)},"downloadFile"),te=C(o=>{let e=(0,T.c)(36),{columns:l,name:s,rows:n}=o,t=k(),r;e[0]!==l||e[1]!==s||e[2]!==n?(r=C(()=>{_(`${s}.csv`,X(l,n),"text/csv;charset=utf-8")},"t1"),e[0]=l,e[1]=s,e[2]=n,e[3]=r):r=e[3];let m=r,i;e[4]!==s||e[5]!==n?(i=C(()=>{_(`${s}.json`,Y(n),"application/json")},"t2"),e[4]=s,e[5]=n,e[6]=i):i=e[6];let f=i,d;e[7]!==l||e[8]!==s||e[9]!==n?(d=C(()=>{_(`${s}.sql`,ee(s,l,n),"application/sql;charset=utf-8")},"t3"),e[7]=l,e[8]=s,e[9]=n,e[10]=d):d=e[10];let p=d,c=n.length===0,u;e[11]!==c?(u=(0,a.jsxDEV)(E,{className:D,"data-testid":"grid-export",disabled:c,title:"Exports only the rows loaded on the current page, not the whole table",children:"Export page"},void 0,!1),e[11]=c,e[12]=u):u=e[12];let v;e[13]===Symbol.for("react.memo_cache_sentinel")?(v=(0,a.jsxDEV)(I,{children:"Export loaded rows"},void 0,!1),e[13]=v):v=e[13];let g;e[14]!==t?(g=t("CSV"),e[14]=t,e[15]=g):g=e[15];let b;e[16]!==m||e[17]!==g?(b=(0,a.jsxDEV)($,{"data-testid":"grid-export-csv",onClick:m,children:g},void 0,!1),e[16]=m,e[17]=g,e[18]=b):b=e[18];let h;e[19]!==t?(h=t("JSON"),e[19]=t,e[20]=h):h=e[20];let x;e[21]!==f||e[22]!==h?(x=(0,a.jsxDEV)($,{"data-testid":"grid-export-json",onClick:f,children:h},void 0,!1),e[21]=f,e[22]=h,e[23]=x):x=e[23];let y;e[24]!==t?(y=t("SQL"),e[24]=t,e[25]=y):y=e[25];let w;e[26]!==p||e[27]!==y?(w=(0,a.jsxDEV)($,{"data-testid":"grid-export-sql",onClick:p,children:y},void 0,!1),e[26]=p,e[27]=y,e[28]=w):w=e[28];let S;e[29]!==x||e[30]!==w||e[31]!==b?(S=(0,a.jsxDEV)(O,{align:"end",children:[v,b,x,w]},void 0,!0),e[29]=x,e[30]=w,e[31]=b,e[32]=S):S=e[32];let N;return e[33]!==S||e[34]!==u?(N=(0,a.jsxDEV)(M,{children:[u,S]},void 0,!0),e[33]=S,e[34]=u,e[35]=N):N=e[35],N},"ExportMenu"),le=C(o=>{let e=(0,T.c)(9),{column:l}=o,s;e[0]!==l?(s=C(()=>{l.toggleVisibility()},"t1"),e[0]=l,e[1]=s):s=e[1];let n=s,t;e[2]!==l?(t=l.getIsVisible(),e[2]=l,e[3]=t):t=e[3];let r=`grid-column-${l.id}`,m;return e[4]!==l.id||e[5]!==n||e[6]!==t||e[7]!==r?(m=(0,a.jsxDEV)(R,{checked:t,closeOnClick:!1,"data-testid":r,onCheckedChange:n,children:l.id},void 0,!1),e[4]=l.id,e[5]=n,e[6]=t,e[7]=r,e[8]=m):m=e[8],m},"ColumnToggle"),oe=C(o=>{let e=(0,T.c)(30),{table:l}=o,s=k(),n;e[0]!==l?(n=l.getIsAllColumnsVisible(),e[0]=l,e[1]=n):n=e[1];let t=n,r;e[2]!==t||e[3]!==l?(r=C(()=>{l.toggleAllColumnsVisible(!t)},"t2"),e[2]=t,e[3]=l,e[4]=r):r=e[4];let m=r,i;e[5]!==s?(i=s("Columns"),e[5]=s,e[6]=i):i=e[6];let f;e[7]!==i?(f=(0,a.jsxDEV)(E,{className:D,"data-testid":"grid-columns",children:i},void 0,!1),e[7]=i,e[8]=f):f=e[8];let d;e[9]!==s?(d=s("Columns"),e[9]=s,e[10]=d):d=e[10];let p;e[11]!==d?(p=(0,a.jsxDEV)(I,{children:d},void 0,!1),e[11]=d,e[12]=p):p=e[12];let c;e[13]!==t||e[14]!==s?(c=s(t?"Hide all":"Show all"),e[13]=t,e[14]=s,e[15]=c):c=e[15];let u;e[16]!==t||e[17]!==m||e[18]!==c?(u=(0,a.jsxDEV)(R,{checked:t,closeOnClick:!1,"data-testid":"grid-columns-all",onCheckedChange:m,children:c},void 0,!1),e[16]=t,e[17]=m,e[18]=c,e[19]=u):u=e[19];let v;e[20]===Symbol.for("react.memo_cache_sentinel")?(v=(0,a.jsxDEV)(J,{},void 0,!1),e[20]=v):v=e[20];let g;e[21]!==l?(g=l.getAllLeafColumns().map(ne),e[21]=l,e[22]=g):g=e[22];let b;e[23]!==g||e[24]!==p||e[25]!==u?(b=(0,a.jsxDEV)(O,{align:"end",className:"max-h-80 overflow-y-auto",children:(0,a.jsxDEV)(B,{children:[p,u,v,g]},void 0,!0)},void 0,!1),e[23]=g,e[24]=p,e[25]=u,e[26]=b):b=e[26];let h;return e[27]!==b||e[28]!==f?(h=(0,a.jsxDEV)(M,{children:[f,b]},void 0,!0),e[27]=b,e[28]=f,e[29]=h):h=e[29],h},"ColumnsMenu"),se=C(o=>{let e=(0,T.c)(19),{count:l,editable:s,onClear:n,onDelete:t}=o,r=k(),m;e[0]!==l||e[1]!==r?(m=r("{count} selected",{count:l}),e[0]=l,e[1]=r,e[2]=m):m=e[2];let i;e[3]!==m?(i=(0,a.jsxDEV)("span",{className:"font-medium tabular-nums","data-testid":"grid-selection-count",children:m},void 0,!1),e[3]=m,e[4]=i):i=e[4];let f;e[5]!==r?(f=r("Clear"),e[5]=r,e[6]=f):f=e[6];let d;e[7]!==n||e[8]!==f?(d=(0,a.jsxDEV)("button",{className:D,"data-testid":"grid-selection-clear",onClick:n,type:"button",children:f},void 0,!1),e[7]=n,e[8]=f,e[9]=d):d=e[9];let p;e[10]!==l||e[11]!==s||e[12]!==t||e[13]!==r?(p=s&&(0,a.jsxDEV)(U,{confirmLabel:r("Delete {count} rows?",{count:l}),onConfirm:t,testId:"grid-selection-delete",children:r("Delete {count}",{count:l})},void 0,!1),e[10]=l,e[11]=s,e[12]=t,e[13]=r,e[14]=p):p=e[14];let c;return e[15]!==i||e[16]!==d||e[17]!==p?(c=(0,a.jsxDEV)("div",{className:"flex items-center gap-2 rounded-md border border-border bg-accent/40 px-3 py-1.5 text-xs","data-testid":"grid-selection-bar",children:[i,d,p]},void 0,!0),e[15]=i,e[16]=d,e[17]=p,e[18]=c):c=e[18],c},"SelectionBar"),me=C(o=>{let e=(0,T.c)(32),{column:l,onClose:s,value:n}=o,t=k(),[r,m]=(0,H.useState)(!1),i;e[0]!==n?(i=A(n),e[0]=n,e[1]=i):i=e[1];let f=i,d;e[2]!==f?(d=C(()=>{V(f)&&m(!0)},"t2"),e[2]=f,e[3]=d):d=e[3];let p=d,c;e[4]!==t?(c=t("Cell value"),e[4]=t,e[5]=c):c=e[5];let u;e[6]!==l?(u=(0,a.jsxDEV)("h2",{className:"truncate font-mono text-sm font-semibold text-foreground",children:l},void 0,!1),e[6]=l,e[7]=u):u=e[7];let v;e[8]!==r||e[9]!==t?(v=t(r?"Copied":"Copy"),e[8]=r,e[9]=t,e[10]=v):v=e[10];let g;e[11]!==p||e[12]!==v?(g=(0,a.jsxDEV)("button",{className:D,"data-testid":"grid-cell-copy",onClick:p,type:"button",children:v},void 0,!1),e[11]=p,e[12]=v,e[13]=g):g=e[13];let b;e[14]!==t?(b=t("Close"),e[14]=t,e[15]=b):b=e[15];let h;e[16]!==s||e[17]!==b?(h=(0,a.jsxDEV)("button",{className:D,"data-testid":"grid-cell-close",onClick:s,type:"button",children:b},void 0,!1),e[16]=s,e[17]=b,e[18]=h):h=e[18];let x;e[19]!==g||e[20]!==h?(x=(0,a.jsxDEV)("div",{className:"flex items-center gap-1.5",children:[g,h]},void 0,!0),e[19]=g,e[20]=h,e[21]=x):x=e[21];let y;e[22]!==u||e[23]!==x?(y=(0,a.jsxDEV)("div",{className:"flex items-center justify-between",children:[u,x]},void 0,!0),e[22]=u,e[23]=x,e[24]=y):y=e[24];let w;e[25]!==f?(w=(0,a.jsxDEV)("pre",{className:"min-h-0 flex-1 overflow-auto rounded-md border border-border bg-muted/30 p-3 font-mono text-xs whitespace-pre-wrap","data-testid":"grid-cell-value",children:f},void 0,!1),e[25]=f,e[26]=w):w=e[26];let S;return e[27]!==s||e[28]!==y||e[29]!==w||e[30]!==c?(S=(0,a.jsxDEV)(q,{className:"max-h-[70vh] w-[min(40rem,90vw)]",label:c,onClose:s,panelTestId:"grid-cell-dialog",testId:"grid-cell-dialog-overlay",variant:"dialog",children:[y,w]},void 0,!0),e[27]=s,e[28]=y,e[29]=w,e[30]=c,e[31]=S):S=e[31],S},"CellDetailDialog"),pe=C(o=>{let e=(0,T.c)(33),{columns:l,editable:s,name:n,onBulkDelete:t,onToggleTranspose:r,rows:m,table:i,transposed:f}=o,d=k(),p;e[0]!==i?(p=i.getSelectedRowModel(),e[0]=i,e[1]=p):p=e[1];let c=p.rows,u;e[2]!==i?(u=C(()=>{i.resetRowSelection()},"t2"),e[2]=i,e[3]=u):u=e[3];let v=u,g;e[4]!==t||e[5]!==c||e[6]!==i?(g=C(()=>{t(c.map(ie)),i.resetRowSelection()},"t3"),e[4]=t,e[5]=c,e[6]=i,e[7]=g):g=e[7];let b=g,h;e[8]!==l||e[9]!==n||e[10]!==m?(h=(0,a.jsxDEV)(te,{columns:l,name:n,rows:m},void 0,!1),e[8]=l,e[9]=n,e[10]=m,e[11]=h):h=e[11];let x;e[12]!==i?(x=(0,a.jsxDEV)(oe,{table:i},void 0,!1),e[12]=i,e[13]=x):x=e[13];let y;e[14]!==d?(y=d("Swap rows and columns"),e[14]=d,e[15]=y):y=e[15];let w;e[16]!==d?(w=d("Transpose"),e[16]=d,e[17]=w):w=e[17];let S;e[18]!==r||e[19]!==y||e[20]!==w||e[21]!==f?(S=(0,a.jsxDEV)("button",{"aria-pressed":f,className:D,"data-testid":"grid-transpose",onClick:r,title:y,type:"button",children:w},void 0,!1),e[18]=r,e[19]=y,e[20]=w,e[21]=f,e[22]=S):S=e[22];let N;e[23]!==s||e[24]!==v||e[25]!==b||e[26]!==c.length?(N=c.length>0&&(0,a.jsxDEV)(se,{count:c.length,editable:s,onClear:v,onDelete:b},void 0,!1),e[23]=s,e[24]=v,e[25]=b,e[26]=c.length,e[27]=N):N=e[27];let L;return e[28]!==h||e[29]!==x||e[30]!==S||e[31]!==N?(L=(0,a.jsxDEV)("div",{className:"flex flex-wrap items-center gap-1.5","data-testid":"grid-actions",children:[h,x,S,N]},void 0,!0),e[28]=h,e[29]=x,e[30]=S,e[31]=N,e[32]=L):L=e[32],L},"GridActionsBar");function ne(o){return(0,a.jsxDEV)(le,{column:o},o.id,!1)}C(ne,"_temp");function ie(o){return o.id}C(ie,"_temp2");export{te as a,se as b,me as c,pe as d};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as Hn}from"./chunk-ZPUO7FNI.js";import{a as oo,b as so,c as ro,d as Tn,e as ls}from"./chunk-IXDH4GL5.js";import{$ as Sn,A as Gt,C as xn,D as j,E as bn,F as yn,I as Kt,L as gt,M as qo,N as Qt,P as Go,Q as Cn,R as Pn,S as Ko,T as Yt,U as Jt,V as Xt,W as eo,X as Qo,Y as to,_ as Rn,aa as Yo,b as sn,ba as Jo,ea as Xo,fa as st,ga as Nn,ha as no,i as cn,ia as En,j as dn,ja as ue,k as pn,ka as es,l as Ks,m as jo,ma as ts,na as os,o as Uo,oa as ss,p as un,pa as rs,q as zo,qa as ns,ra as as,s as fn,sa as wn,ta as kn,u as mn,ua as is,v as gn,va as On,w as hn,x as Wo,y as Zo,z as vn}from"./chunk-KSKXW5PX.js";import{f as Jr}from"./chunk-ZIGWVHCS.js";import{a as Fn}from"./chunk-7TJJXVSE.js";import{a as $r,b as jr,d as Ur,e as ft,f as Ho,g as zr,h as Wr,i as Zr,j as qr,k as Gr}from"./chunk-WI7GWFEG.js";import{a as cs}from"./chunk-KZ6INM5M.js";import{c as Mn,h as _n,k as Qs}from"./chunk-4QHKBC77.js";import{B as rn,C as nn,I as He,J as an,K as qt,O as A,P as Y,R as ln,e as ye,p as vo,q as on}from"./chunk-3CJW6NWG.js";import{b as ht,c as ao}from"./chunk-UK64ZSUW.js";import{a as mt,c as en,h as $o,i as tn}from"./chunk-O3NAGRTR.js";import{a as Hr}from"./chunk-HV7G6DFP.js";import{a as St}from"./chunk-BOXSWNXZ.js";import{a as In}from"./chunk-TAD43CG5.js";import{b as io}from"./chunk-C7WTJLC3.js";import{a as ct,e as Ys}from"./chunk-SEU5V7I6.js";import{a as Gs,b as ho}from"./chunk-ZPP2KOR4.js";import{a as lt,i as Rt,j as F}from"./chunk-CKSHCYGC.js";import{f as qs}from"./chunk-GLUNBZRI.js";import{a as Xr}from"./chunk-ZHVTQ37P.js";import{a as be}from"./chunk-3OA7PECS.js";import{a as Kr,b as Qr,c as Yr,d as ae,e as Dn,f as An,k as $e,l as Vn,m as Bn,n as Ln}from"./chunk-E75ANNWX.js";import{b as Zs}from"./chunk-GMSGZDDH.js";import{a,d as Ws,e as S,f as M,g as Fo,h as go,j as z}from"./chunk-RRCPZMC2.js";var B=S(Fo(),1);var ut=S(M(),1),q=S(M(),1);var i=S(go(),1);var $n=S(M(),1),vt=S(go(),1);var vi={border:"1px solid var(--destructive)",color:"var(--destructive)",padding:12},xi={overflow:"auto",whiteSpace:"pre-wrap"},ds=class extends $n.Component{static{a(this,"ErrorBoundary")}static getDerivedStateFromError(e){return{error:e}}state={error:null};componentDidCatch(e,o){console.error("[lunora-studio] panel error",e,o.componentStack)}reset=a(()=>{this.setState({error:null})},"reset");render(){let{children:e,fallbackTitle:o,label:s,retryLabel:r}=this.props,{error:n}=this.state;if(n===null)return(0,vt.jsxDEV)(vt.Fragment,{children:e},void 0,!1);let l=o??(s===void 0?"Something went wrong":`${s} failed`);return(0,vt.jsxDEV)("div",{"data-testid":"dash-error-boundary",role:"alert",style:vi,children:[(0,vt.jsxDEV)("strong",{children:l},void 0,!1),(0,vt.jsxDEV)("pre",{"data-testid":"dash-error-message",style:xi,children:n.message},void 0,!1),(0,vt.jsxDEV)("button",{"data-testid":"dash-error-retry",onClick:this.reset,type:"button",children:r??"Try again"},void 0,!1)]},void 0,!0)}};var Ct={};Ws(Ct,{Arrow:()=>nr,Backdrop:()=>ar,Close:()=>cr,Description:()=>lr,Handle:()=>bo,Popup:()=>rr,Portal:()=>er,Positioner:()=>tr,Root:()=>zn,Title:()=>ir,Trigger:()=>Js,Viewport:()=>dr,createHandle:()=>ra});var dt=S(M(),1);var ps=S(M(),1);var us=ps.createContext(void 0);us.displayName="PopoverRootContext";function oe(t){let e=ps.useContext(us);if(e===void 0&&!t)throw new Error("Base UI: PopoverRootContext is missing. Popover parts must be placed within <Popover.Root>.");return e}a(oe,"usePopoverRootContext");var xt=S(M(),1),jn=S(Hr(),1);function bi(){return{...oo(),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,stickIfOpen:!0,nested:!1,openOnHover:!1,closeDelay:0,hasViewport:!1}}a(bi,"createInitialState");var yi={...ro,disabled:j(t=>t.disabled),instantType:j(t=>t.instantType),openMethod:j(t=>t.openMethod),openChangeReason:j(t=>t.openChangeReason),modal:j(t=>t.modal),focusManagerModal:j(t=>t.focusManagerModal),stickIfOpen:j(t=>t.stickIfOpen),titleElementId:j(t=>t.titleElementId),descriptionElementId:j(t=>t.descriptionElementId),openOnHover:j(t=>t.openOnHover),closeDelay:j(t=>t.closeDelay),hasViewport:j(t=>t.hasViewport)},lo=class t extends Kt{static{a(this,"PopoverStore")}constructor(e,o,s=!1){let r={...bi(),...e},n=new to;r.open&&e?.mounted===void 0&&(r.mounted=!0),r.floatingRootContext=so(n,o,s),super(r,{popupRef:xt.createRef(),backdropRef:xt.createRef(),internalBackdropRef:xt.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:xt.createRef(),beforeContentFocusGuardRef:xt.createRef(),stickIfOpenTimeout:new rn,triggerElements:n},yi)}setOpen=a((e,o)=>{let s=o.reason===A.triggerHover,r=o.reason===A.triggerPress&&o.event.detail===0,n=!e&&(o.reason===A.escapeKey||o.reason==null),l=Cn(o),d=this.select("activeTriggerId");if(!e&&o.reason===A.closePress&&o.trigger==null&&d!=null&&(o.trigger=this.context.triggerElements.getById(d)??this.select("activeTriggerElement")??void 0),this.context.onOpenChange?.(e,o),o.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,o);let p=a(()=>{let c={open:e,openChangeReason:o.reason};Go(c,e,o.trigger,l()),this.update(c)},"changeState");s?(this.set("stickIfOpen",!0),this.context.stickIfOpenTimeout.start(500,()=>{this.set("stickIfOpen",!1)}),jn.flushSync(p)):p(),r||n?this.set("instantType",r?"click":"dismiss"):o.reason===A.focusOut?this.set("instantType","focus"):this.set("instantType",void 0)},"setOpen");static useStore(e,o){let{store:s,internalStore:r}=Qt(e,(n,l)=>new t(o,n,l));return xt.useEffect(()=>r?.disposeEffect(),[r]),s}disposeEffect=a(()=>this.context.stickIfOpenTimeout.disposeEffect(),"disposeEffect")};var Nt=S(be(),1);function Un({props:t}){let{children:e,open:o,defaultOpen:s=!1,onOpenChange:r,onOpenChangeComplete:n,modal:l=!1,handle:d,triggerId:p,defaultTriggerId:c=null}=t,u=lo.useStore(d?.store,{modal:l,open:s,openProp:o,activeTriggerId:c,triggerIdProp:p});Ko(u,o,s,c),u.useControlledProp("openProp",o),u.useControlledProp("triggerIdProp",p);let g=u.useState("open"),m=u.useState("mounted"),h=u.useState("payload"),f=fn()!=null;u.useContextCallback("onOpenChange",r),u.useContextCallback("onOpenChangeComplete",n),Qo(u,g),Jt(u);let{forceUnmount:v}=Xt(g,u,()=>{u.update({stickIfOpen:!0,openChangeReason:null})});u.useSyncedValues({modal:l,nested:f}),dt.useEffect(()=>{g||u.context.stickIfOpenTimeout.clear()},[u,g]);let x=dt.useCallback(()=>{u.setOpen(!1,Y(A.imperativeAction))},[u]);dt.useImperativeHandle(t.actionsRef,()=>({unmount:v,close:x}),[v,x]);let b=g||m,C=dt.useMemo(()=>({store:u}),[u]);return(0,Nt.jsxs)(us.Provider,{value:C,children:[b&&(0,Nt.jsx)(Ci,{store:u,modal:l}),typeof e=="function"?e({payload:h}):e]})}a(Un,"PopoverRootComponent");function zn(t){return oe(!0)?(0,Nt.jsx)(Un,{props:t}):(0,Nt.jsx)(hn,{children:(0,Nt.jsx)(Un,{props:t})})}a(zn,"PopoverRoot");function Ci({store:t,modal:e}){let o=t.useState("floatingRootContext"),s=Gt(o,{outsidePressEvent:{mouse:e==="trap-focus"?"sloppy":"intentional",touch:"sloppy"}}),r=s.reference??Rt,n=s.trigger??Rt,l=dt.useMemo(()=>lt(gt,s.floating),[s.floating]);return eo(t,{activeTriggerProps:r,inactiveTriggerProps:n,popupProps:l}),null}a(Ci,"PopoverInteractions");var bt=S(M(),1);var Et=S(be(),1);var Js=bt.forwardRef(a(function(e,o){let{render:s,className:r,style:n,disabled:l=!1,nativeButton:d=!0,handle:p,payload:c,openOnHover:u=!1,delay:g=300,closeDelay:m=0,id:h,...f}=e,v=oe(!0),x=p?.store??v?.store;if(!x)throw new Error("Base UI: <Popover.Trigger> must be either used within a <Popover.Root> component or provided with a handle.");let b=ye(h),C=x.useState("isTriggerActive",b),P=x.useState("floatingRootContext"),N=x.useState("isOpenedByTrigger",b),R=x.useState("triggerPopupId",b),E=bt.useRef(null),{registerTrigger:T,isMountedByThisTrigger:k}=Yt(b,E,x,{payload:c,disabled:l,openOnHover:u,closeDelay:m}),w=x.useState("openChangeReason"),O=x.useState("stickIfOpen"),V=x.useState("openMethod"),W=x.useState("focusManagerModal"),D=Jo(P,{enabled:!l&&P!=null&&u&&(V!=="touch"||w!==A.triggerPress),mouseOnly:!0,move:!1,handleClose:Xo(),restMs:g,delay:{close:m},triggerElementRef:E,isActiveTrigger:C,isClosing:a(()=>x.select("transitionStatus")==="ending","isClosing")}),H=Zo(P,{enabled:P!=null,stickIfOpen:O}),$=es(()=>x.select("open"),ee=>{x.set("openMethod",ee)}),Z=x.useState("triggerProps",k),{getButtonProps:K,buttonRef:I}=ht({disabled:l,native:d}),_={open(ee){return ee&&w===A.triggerPress?En.open(ee):no.open(ee)}},{preFocusGuardRef:U,handlePreFocusGuardFocus:te,handleFocusTargetFocus:re}=Tn(x,E),J=F("button",e,{state:{disabled:l,open:N},ref:[I,o,T,E],props:[H.reference,D,Z,$,{[jo]:"",id:b,"aria-haspopup":"dialog","aria-expanded":N,"aria-controls":R},f,K],stateAttributesMapping:_});return k&&!W?(0,Et.jsxs)(bt.Fragment,{children:[(0,Et.jsx)(Ks,{ref:U,onFocus:te}),(0,Et.jsx)(bt.Fragment,{children:J},b),(0,Et.jsx)(Ks,{ref:x.context.triggerFocusTargetRef,onFocus:re})]}):(0,Et.jsx)(bt.Fragment,{children:J},b)},"PopoverTrigger"));Js.displayName="PopoverTrigger";var Zn=S(M(),1);var fs=S(M(),1);var ms=fs.createContext(void 0);ms.displayName="PopoverPortalContext";function Wn(){let t=fs.useContext(ms);if(t===void 0)throw new Error("Base UI: <Popover.Portal> is missing.");return t}a(Wn,"usePopoverPortalContext");var Xs=S(be(),1);var er=Zn.forwardRef(a(function(e,o){let{keepMounted:s=!1,...r}=e,{store:n}=oe();return n.useState("mounted")||s?(0,Xs.jsx)(ms.Provider,{value:s,children:(0,Xs.jsx)(zo,{ref:o,...r})}):null},"PopoverPortal"));er.displayName="PopoverPortal";var po=S(M(),1);var gs=S(M(),1);var hs=gs.createContext(void 0);hs.displayName="PopoverPositionerContext";function co(){let t=gs.useContext(hs);if(!t)throw new Error("Base UI: PopoverPositionerContext is missing. PopoverPositioner parts must be placed within <Popover.Positioner>.");return t}a(co,"usePopoverPositionerContext");var xo=S(be(),1);var tr=po.forwardRef(a(function(e,o){let{render:s,className:r,style:n,anchor:l,positionMethod:d="absolute",side:p="bottom",align:c="center",sideOffset:u=0,alignOffset:g=0,collisionBoundary:m="clipping-ancestors",collisionPadding:h=5,arrowPadding:f=5,sticky:v=!1,disableAnchorTracking:x=!1,collisionAvoidance:b=Uo,...C}=e,{store:P}=oe(),N=Wn(),R=mn(),E=P.useState("floatingRootContext"),T=P.useState("mounted"),k=P.useState("open"),w=P.useState("openChangeReason"),O=P.useState("activeTriggerElement"),V=P.useState("modal"),W=P.useState("openMethod"),D=P.useState("positionerElement"),H=P.useState("instantType"),$=P.useState("transitionStatus"),Z=P.useState("hasViewport"),K=po.useRef(null),I=an(D,!1,!1),_=ss({anchor:l,floatingRootContext:E,positionMethod:d,mounted:T,side:p,sideOffset:u,align:c,alignOffset:g,arrowPadding:f,collisionBoundary:m,collisionPadding:h,sticky:v,disableAnchorTracking:x,keepMounted:N,nodeId:R,collisionAvoidance:b,adaptiveOrigin:Z?os:void 0}),U=E.useState("domReferenceElement");mt(()=>{let J=U,ee=K.current;if(J&&(K.current=J),ee&&J&&J!==ee){P.set("instantType",void 0);let ie=new AbortController;return I(()=>{P.set("instantType","trigger-change")},ie.signal),()=>{ie.abort()}}},[U,I,P]),kn(k&&V===!0&&w!==A.triggerHover,W==="touch",D,O);let te=po.useCallback(J=>{P.set("positionerElement",J)},[P]),re={open:k,side:_.side,align:_.align,anchorHidden:_.anchorHidden,instant:H},ne=as(e,re,{styles:_.positionerStyles,transitionStatus:$,props:C,refs:[o,te],hidden:!T,inert:!k});return(0,xo.jsxs)(hs.Provider,{value:_,children:[T&&V===!0&&w!==A.triggerHover&&(0,xo.jsx)(rs,{ref:P.context.internalBackdropRef,inert:ts(!k),cutout:O}),(0,xo.jsx)(gn,{id:R,children:ne})]})},"PopoverPositioner"));tr.displayName="PopoverPositioner";var vs=S(M(),1);var yt=S(M(),1);var qn=S(be(),1);var or=yt.createContext(void 0);or.displayName="ClosePartContext";function Gn(){let[t,e]=yt.useState(0),o=en(()=>(e(r=>r+1),()=>{e(r=>Math.max(0,r-1))}));return{context:yt.useMemo(()=>({register:o}),[o]),hasClosePart:t>0}}a(Gn,"useClosePartCount");function Kn(t){let{value:e,children:o}=t;return(0,qn.jsx)(or.Provider,{value:e,children:o})}a(Kn,"ClosePartProvider");function Qn(){let t=yt.useContext(or);mt(()=>t?.register(),[t])}a(Qn,"useClosePartRegistration");var sr=S(be(),1);var Pi={...ue,...He},rr=vs.forwardRef(a(function(e,o){let{render:s,className:r,style:n,initialFocus:l,finalFocus:d,...p}=e,{store:c}=oe(),u=co(),g=On(!0)!=null,{context:m,hasClosePart:h}=Gn(),f=c.useState("open"),v=c.useState("openMethod"),x=c.useState("instantType"),b=c.useState("transitionStatus"),C=c.useState("popupProps"),P=c.useState("titleElementId"),N=c.useState("descriptionElementId"),R=c.useState("modal"),E=c.useState("mounted"),T=c.useState("openChangeReason"),k=c.useState("activeTriggerElement"),w=c.useState("floatingRootContext"),O=w.useState("floatingId"),V=c.useState("disabled"),W=c.useState("openOnHover"),D=c.useState("closeDelay"),H=p.id??O;qt({open:f,ref:c.context.popupRef,onComplete(){f&&c.context.onOpenChangeComplete?.(!0)}}),Yo(w,{enabled:W&&!V,closeDelay:D});let $=l===void 0?qo(c.context.popupRef):l,Z=R!==!1&&h;c.useSyncedValue("focusManagerModal",Z);let K=vs.useCallback(U=>{c.set("popupElement",U)},[c]),I={open:f,side:u.side,align:u.align,instant:x,transitionStatus:b},_=F("div",e,{state:I,ref:[o,c.context.popupRef,K],props:[C,{id:H,role:"dialog",...gt,"aria-labelledby":P,"aria-describedby":N,onKeyDown(U){g&&is.has(U.key)&&U.stopPropagation()}},ns(b),p],stateAttributesMapping:Pi});return(0,sr.jsx)(Wo,{context:w,openInteractionType:v,modal:Z,disabled:!E||T===A.triggerHover,initialFocus:$,returnFocus:d,restoreFocus:"popup",previousFocusableElement:tn(k)?k:void 0,nextFocusableElement:c.context.triggerFocusTargetRef,beforeContentFocusGuardRef:c.context.beforeContentFocusGuardRef,children:(0,sr.jsx)(Kn,{value:m,children:_})})},"PopoverPopup"));rr.displayName="PopoverPopup";var Yn=S(M(),1);var nr=Yn.forwardRef(a(function(e,o){let{render:s,className:r,style:n,...l}=e,{store:d}=oe(),p=d.useState("open"),{arrowRef:c,side:u,align:g,arrowUncentered:m,arrowStyles:h}=co();return F("div",e,{state:{open:p,side:u,align:g,uncentered:m},ref:[o,c],props:[{style:h,"aria-hidden":!0},l],stateAttributesMapping:ue})},"PopoverArrow"));nr.displayName="PopoverArrow";var Jn=S(M(),1);var Ri={...ue,...He},ar=Jn.forwardRef(a(function(e,o){let{render:s,className:r,style:n,...l}=e,{store:d}=oe(),p=d.useState("open"),c=d.useState("mounted"),u=d.useState("transitionStatus"),g=d.useState("openChangeReason");return F("div",e,{state:{open:p,transitionStatus:u},ref:[d.context.backdropRef,o],props:[{role:"presentation",hidden:!c,style:{pointerEvents:g===A.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},l],stateAttributesMapping:Ri})},"PopoverBackdrop"));ar.displayName="PopoverBackdrop";var Xn=S(M(),1);var ir=Xn.forwardRef(a(function(e,o){let{render:s,className:r,style:n,...l}=e,{store:d}=oe(),p=ye(l.id);return d.useSyncedValueWithCleanup("titleElementId",p),F("h2",e,{ref:o,props:[{id:p},l]})},"PopoverTitle"));ir.displayName="PopoverTitle";var ea=S(M(),1);var lr=ea.forwardRef(a(function(e,o){let{render:s,className:r,style:n,...l}=e,{store:d}=oe(),p=ye(l.id);return d.useSyncedValueWithCleanup("descriptionElementId",p),F("p",e,{ref:o,props:[{id:p},l]})},"PopoverDescription"));lr.displayName="PopoverDescription";var ta=S(M(),1);var cr=ta.forwardRef(a(function(e,o){let{render:s,className:r,style:n,disabled:l=!1,nativeButton:d=!0,...p}=e,{buttonRef:c,getButtonProps:u}=ht({disabled:l,focusableWhenDisabled:!1,native:d}),{store:g}=oe();return Qn(),F("button",e,{ref:[o,c],props:[{onClick(h){g.setOpen(!1,Y(A.closePress,h.nativeEvent))}},p,u]})},"PopoverClose"));cr.displayName="PopoverClose";var sa=S(M(),1);var oa=(function(t){return t.popupWidth="--popup-width",t.popupHeight="--popup-height",t})({});var Si={activationDirection:a(t=>t?{"data-activation-direction":t}:null,"activationDirection")},dr=sa.forwardRef(a(function(e,o){let{render:s,className:r,style:n,children:l,...d}=e,{store:p}=oe(),{side:c}=co(),u=p.useState("instantType"),{children:g,state:m}=ls({store:p,side:c,cssVars:oa,children:l}),h={activationDirection:m.activationDirection,transitioning:m.transitioning,instant:u};return F("div",e,{state:h,ref:o,props:[d,{children:g}],stateAttributesMapping:Si})},"PopoverViewport"));dr.displayName="PopoverViewport";var bo=class{static{a(this,"PopoverHandle")}constructor(){this.store=new lo}open(e){let o=e?this.store.context.triggerElements.getById(e)??void 0:void 0;if(e&&!o)throw new Error(`Base UI: PopoverHandle.open: No trigger found with id "${e}".`);this.store.setOpen(!0,Y(A.imperativeAction,void 0,o))}close(){this.store.setOpen(!1,Y(A.imperativeAction,void 0,void 0))}get isOpen(){return this.store.select("open")}};function ra(){return new bo}a(ra,"createPopoverHandle");var fe={};Ws(fe,{Backdrop:()=>pr,Close:()=>ur,Description:()=>fr,Handle:()=>So,Popup:()=>mr,Portal:()=>gr,Root:()=>xa,Title:()=>xr,Trigger:()=>br,Viewport:()=>vr,createHandle:()=>Ca});var na=S(M(),1);var yo=S(M(),1);var Co=yo.createContext(!1);Co.displayName="IsDrawerContext";var xs=yo.createContext(void 0);xs.displayName="DialogRootContext";function le(t){let e=yo.useContext(xs);if(t===!1&&e===void 0)throw new Error("Base UI: DialogRootContext is missing. Dialog parts must be placed within <Dialog.Root>.");return e}a(le,"useDialogRootContext");var Ni={...ue,...He},pr=na.forwardRef(a(function(e,o){let{render:s,className:r,style:n,forceRender:l=!1,...d}=e,{store:p}=le(),c=p.useState("open"),u=p.useState("nested"),g=p.useState("mounted"),m=p.useState("transitionStatus");return F("div",e,{state:{open:c,transitionStatus:m},ref:[p.context.backdropRef,o],stateAttributesMapping:Ni,props:[{role:"presentation",hidden:!g,style:{userSelect:"none",WebkitUserSelect:"none"}},d],enabled:l||!u})},"DialogBackdrop"));pr.displayName="DialogBackdrop";var aa=S(M(),1);var ur=aa.forwardRef(a(function(e,o){let{render:s,className:r,style:n,disabled:l=!1,nativeButton:d=!0,...p}=e,{store:c}=le(),u=c.useState("open"),{getButtonProps:g,buttonRef:m}=ht({disabled:l,native:d}),h={disabled:l};function f(v){u&&c.setOpen(!1,Y(A.closePress,v.nativeEvent))}return a(f,"handleClick"),F("button",e,{state:h,ref:[o,m],props:[{onClick:f},p,g]})},"DialogClose"));ur.displayName="DialogClose";var ia=S(M(),1);var fr=ia.forwardRef(a(function(e,o){let{render:s,className:r,style:n,id:l,...d}=e,{store:p}=le(),c=ye(l);return p.useSyncedValueWithCleanup("descriptionElementId",c),F("p",e,{ref:o,props:[{id:c},d]})},"DialogDescription"));fr.displayName="DialogDescription";var da=S(M(),1);var la=(function(t){return t.nestedDialogs="--nested-dialogs",t})({});var ca=(function(t){return t[t.open=st.open]="open",t[t.closed=st.closed]="closed",t[t.startingStyle=st.startingStyle]="startingStyle",t[t.endingStyle=st.endingStyle]="endingStyle",t.nested="data-nested",t.nestedDialogOpen="data-nested-dialog-open",t})({});var bs=S(M(),1);var ys=bs.createContext(void 0);ys.displayName="DialogPortalContext";function Cs(){let t=bs.useContext(ys);if(t===void 0)throw new Error("Base UI: <Dialog.Portal> is missing.");return t}a(Cs,"useDialogPortalContext");var pa=S(be(),1);var Ei={...ue,...He,nestedDialogOpen(t){return t?{[ca.nestedDialogOpen]:""}:null}},mr=da.forwardRef(a(function(e,o){let{render:s,className:r,style:n,finalFocus:l,initialFocus:d,...p}=e,{store:c}=le(),u=c.useState("descriptionElementId"),g=c.useState("disablePointerDismissal"),m=c.useState("floatingRootContext"),h=c.useState("popupProps"),f=c.useState("modal"),v=c.useState("mounted"),x=c.useState("nested"),b=c.useState("nestedOpenDialogCount"),C=c.useState("open"),P=c.useState("openMethod"),N=c.useState("titleElementId"),R=c.useState("transitionStatus"),E=c.useState("role"),T=m.useState("floatingId"),k=p.id??T;Cs(),qt({open:C,ref:c.context.popupRef,onComplete(){C&&c.context.onOpenChangeComplete?.(!0)}});let w=d===void 0?qo(c.context.popupRef):d,O=b>0,V=c.useStateSetter("popupElement"),D=F("div",e,{state:{open:C,nested:x,transitionStatus:R,nestedDialogOpen:O},props:[h,{id:k,"aria-labelledby":N??void 0,"aria-describedby":u??void 0,role:E,...gt,hidden:!v,onKeyDown(H){is.has(H.key)&&H.stopPropagation()},style:{[la.nestedDialogs]:b}},p],ref:[o,c.context.popupRef,V],stateAttributesMapping:Ei});return(0,pa.jsx)(Wo,{context:m,openInteractionType:P,disabled:!v,closeOnFocusOut:!g,initialFocus:w,returnFocus:l,modal:f!==!1,restoreFocus:"popup",children:D})},"DialogPopup"));mr.displayName="DialogPopup";var ua=S(M(),1);var Po=S(be(),1);var gr=ua.forwardRef(a(function(e,o){let{keepMounted:s=!1,...r}=e,{store:n}=le(),l=n.useState("mounted"),d=n.useState("modal"),p=n.useState("open");return l||s?(0,Po.jsx)(ys.Provider,{value:s,children:(0,Po.jsxs)(zo,{ref:o,...r,children:[l&&d===!0&&(0,Po.jsx)(rs,{ref:n.context.internalBackdropRef,inert:ts(!p)}),e.children]})}):null},"DialogPortal"));gr.displayName="DialogPortal";var va=S(M(),1);var ga=S(M(),1);var pt=S(M(),1);function fa(t){let{store:e,actionsRef:o}=t,s=e.useState("open");Qo(e,s),Jt(e);let{forceUnmount:r}=Xt(s,e),n=pt.useCallback(()=>{e.setOpen(!1,Y(A.imperativeAction))},[e]);pt.useImperativeHandle(o,()=>({unmount:r,close:n}),[r,n])}a(fa,"useDialogRoot");function ma({store:t,parentContext:e,isDrawer:o}){let s=t.useState("open"),r=t.useState("disablePointerDismissal"),n=t.useState("modal"),l=t.useState("popupElement"),d=t.useState("floatingRootContext"),[p,c]=pt.useState(0),[u,g]=pt.useState(0),m=p===0,h=Gt(d,{outsidePressEvent(){return t.context.internalBackdropRef.current||t.context.backdropRef.current?"intentional":{mouse:n==="trap-focus"?"sloppy":"intentional",touch:"sloppy"}},outsidePress(b){if(!t.context.outsidePressEnabledRef.current||"button"in b&&b.button!==0||"touches"in b&&b.touches.length!==1)return!1;let C=on(b);return m&&!r?n&&(t.context.internalBackdropRef.current||t.context.backdropRef.current)?t.context.internalBackdropRef.current===C||t.context.backdropRef.current===C||vo(C,l)&&!C?.hasAttribute("data-base-ui-portal"):!0:!1},escapeKey:m});wn(s&&n===!0,l),t.useContextCallback("onNestedDialogOpen",(b,C)=>{c(b),g(C)}),t.useContextCallback("onNestedDialogClose",()=>{c(0),g(0)}),pt.useEffect(()=>(e?.onNestedDialogOpen&&s&&e.onNestedDialogOpen(p+1,u+(o?1:0)),e?.onNestedDialogClose&&!s&&e.onNestedDialogClose(),()=>{e?.onNestedDialogClose&&s&&e.onNestedDialogClose()}),[o,s,p,u,e]);let f=h.reference??Rt,v=h.trigger??Rt,x=h.floating??Rt;return eo(t,{activeTriggerProps:f,inactiveTriggerProps:v,popupProps:x,nestedOpenDialogCount:p,nestedOpenDrawerCount:u}),null}a(ma,"DialogInteractions");var Ps=S(M(),1);var Ti={...ro,modal:j(t=>t.modal),nested:j(t=>t.nested),nestedOpenDialogCount:j(t=>t.nestedOpenDialogCount),nestedOpenDrawerCount:j(t=>t.nestedOpenDrawerCount),disablePointerDismissal:j(t=>t.disablePointerDismissal),openMethod:j(t=>t.openMethod),descriptionElementId:j(t=>t.descriptionElementId),titleElementId:j(t=>t.titleElementId),viewportElement:j(t=>t.viewportElement),role:j(t=>t.role)},uo=class t extends Kt{static{a(this,"DialogStore")}constructor(e,o,s=!1){let r=new to,n=wi(e);n.floatingRootContext=so(r,o,s),super(n,{popupRef:Ps.createRef(),backdropRef:Ps.createRef(),internalBackdropRef:Ps.createRef(),outsidePressEnabledRef:{current:!0},triggerElements:r,onOpenChange:void 0,onOpenChangeComplete:void 0},Ti)}setOpen=a((e,o)=>{if(o.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},!e&&o.trigger==null&&this.state.activeTriggerId!=null&&(o.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(e,o),o.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,o);let s={open:e};Go(s,e,o.trigger),this.update(s)},"setOpen");static useStore(e,o){return Qt(e,(r,n)=>new t(o,r,n),!0).store}};function wi(t={}){return{...oo(),modal:!0,disablePointerDismissal:!1,popupElement:null,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,nestedOpenDrawerCount:0,role:"dialog",...t}}a(wi,"createInitialState");var Ro=S(be(),1);function ha(t,e="dialog"){let{children:o,open:s,defaultOpen:r=!1,onOpenChange:n,onOpenChangeComplete:l,disablePointerDismissal:d=!1,modal:p=!0,actionsRef:c,handle:u,triggerId:g,defaultTriggerId:m=null}=t,h=e==="drawer",f=e==="alert-dialog",v=f?!0:p,x=f||d,b=f?"alertdialog":"dialog",C=le(!0),N={modal:v,disablePointerDismissal:x,nested:!!C,role:b},R=uo.useStore(u?.store,{open:r,openProp:s,activeTriggerId:m,triggerIdProp:g,...N});xn(()=>{let V=s===void 0&&R.state.open===!1&&r===!0?{open:!0,activeTriggerId:m}:null;f?R.update(V?{...N,...V}:N):V&&R.update(V)}),R.useControlledProp("openProp",s),R.useControlledProp("triggerIdProp",g),R.useSyncedValues(N),R.useContextCallback("onOpenChange",n),R.useContextCallback("onOpenChangeComplete",l);let E=R.useState("open"),T=R.useState("mounted"),k=R.useState("payload");fa({store:R,actionsRef:c});let w=E||T,O=ga.useMemo(()=>({store:R}),[R]);return(0,Ro.jsx)(Co.Provider,{value:!1,children:(0,Ro.jsxs)(xs.Provider,{value:O,children:[w&&(0,Ro.jsx)(ma,{store:R,parentContext:C?.store.context,isDrawer:h}),typeof o=="function"?o({payload:k}):o]})})}a(ha,"useRenderDialogRoot");function xa(t){let e=va.useContext(Co)?"drawer":"dialog";return ha(t,e)}a(xa,"DialogRoot");var ba=S(M(),1);var hr=(function(t){return t[t.open=st.open]="open",t[t.closed=st.closed]="closed",t[t.startingStyle=st.startingStyle]="startingStyle",t[t.endingStyle=st.endingStyle]="endingStyle",t.nested="data-nested",t.nestedDialogOpen="data-nested-dialog-open",t})({});var ki={...ue,...He,nested(t){return t?{[hr.nested]:""}:null},nestedDialogOpen(t){return t?{[hr.nestedDialogOpen]:""}:null}},vr=ba.forwardRef(a(function(e,o){let{render:s,className:r,style:n,children:l,...d}=e,p=Cs(),{store:c}=le(),u=c.useState("open"),g=c.useState("nested"),m=c.useState("transitionStatus"),h=c.useState("nestedOpenDialogCount"),f=c.useState("mounted"),v=c.useStateSetter("viewportElement"),x=h>0;return F("div",e,{enabled:p||f,state:{open:u,nested:g,transitionStatus:m,nestedDialogOpen:x},ref:[o,v],stateAttributesMapping:ki,props:[{role:"presentation",hidden:!f,style:{pointerEvents:u?void 0:"none"},children:l},d]})},"DialogViewport"));vr.displayName="DialogViewport";var ya=S(M(),1);var xr=ya.forwardRef(a(function(e,o){let{render:s,className:r,style:n,id:l,...d}=e,{store:p}=le(),c=ye(l);return p.useSyncedValueWithCleanup("titleElementId",c),F("h2",e,{ref:o,props:[{id:c},d]})},"DialogTitle"));xr.displayName="DialogTitle";var Rs=S(M(),1);var br=Rs.forwardRef(a(function(e,o){let{render:s,className:r,style:n,disabled:l=!1,nativeButton:d=!0,id:p,payload:c,handle:u,...g}=e,m=le(!0),h=u?.store??m?.store;if(!h)throw new Error("Base UI: <Dialog.Trigger> must be used within <Dialog.Root> or provided with a handle.");let f=ye(p),v=h.useState("floatingRootContext"),x=h.useState("isOpenedByTrigger",f),b=h.useState("triggerPopupId",f),C=Rs.useRef(null),{registerTrigger:P,isMountedByThisTrigger:N}=Yt(f,C,h,{payload:c}),{getButtonProps:R,buttonRef:E}=ht({disabled:l,native:d}),T=Zo(v,{enabled:v!=null}),k=es(()=>h.select("open"),V=>{h.set("openMethod",V)}),w={disabled:l,open:x},O=h.useState("triggerProps",N);return F("button",e,{state:w,ref:[E,o,P,C],props:[T.reference,O,k,{[jo]:"",id:f,"aria-haspopup":"dialog","aria-expanded":x,"aria-controls":b},g,R],stateAttributesMapping:no})},"DialogTrigger"));br.displayName="DialogTrigger";var So=class{static{a(this,"DialogHandle")}constructor(e){this.store=e??new uo}open(e){let o=e?this.store.context.triggerElements.getById(e):void 0;e&&!o&&console.warn(`Base UI: DialogHandle.open: No trigger found with id "${e}". The dialog will open, but the trigger will not be associated with the dialog.`),this.store.setOpen(!0,Y(A.imperativeAction,void 0,o))}openWithPayload(e){this.store.set("payload",e),this.store.setOpen(!0,Y(A.imperativeAction,void 0,void 0))}close(){this.store.setOpen(!1,Y(A.imperativeAction,void 0,void 0))}get isOpen(){return this.store.select("open")}};function Ca(){return new So}a(Ca,"createDialogHandle");var nt={};Ws(nt,{Arrow:()=>Tr,Handle:()=>No,Popup:()=>Er,Portal:()=>Sr,Positioner:()=>Nr,Provider:()=>Or,Root:()=>yr,Trigger:()=>Cr,Viewport:()=>Mr,createHandle:()=>Va});var rt=S(M(),1);var Ss=S(M(),1);var Ns=Ss.createContext(void 0);Ns.displayName="TooltipRootContext";function je(t){let e=Ss.useContext(Ns);if(e===void 0&&!t)throw new Error("Base UI: TooltipRootContext is missing. Tooltip parts must be placed within <Tooltip.Root>.");return e}a(je,"useTooltipRootContext");var Pa=S(M(),1);var Oi={...ro,disabled:j(t=>t.disabled),instantType:j(t=>t.instantType),isInstantPhase:j(t=>t.isInstantPhase),trackCursorAxis:j(t=>t.trackCursorAxis),disableHoverablePopup:j(t=>t.disableHoverablePopup),lastOpenChangeReason:j(t=>t.openChangeReason),closeOnClick:j(t=>t.closeOnClick),closeDelay:j(t=>t.closeDelay),hasViewport:j(t=>t.hasViewport)},fo=class t extends Kt{static{a(this,"TooltipStore")}constructor(e,o,s=!1){let r=new to,n={...Mi(),...e};n.floatingRootContext=so(r,o,s),super(n,{popupRef:Pa.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:r},Oi)}setOpen=a((e,o)=>{Pn(this,e,o,{extraState:{openChangeReason:o.reason}})},"setOpen");cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,Y(A.triggerPress,e))}static useStore(e,o){return Qt(e,(r,n)=>new t(o,r,n)).store}};function Mi(){return{...oo(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:"none",disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,hasViewport:!1}}a(Mi,"createInitialState");var Es=S(be(),1);var yr=bn(a(function(e){let{disabled:o=!1,defaultOpen:s=!1,open:r,disableHoverablePopup:n=!1,trackCursorAxis:l="none",actionsRef:d,onOpenChange:p,onOpenChangeComplete:c,handle:u,triggerId:g,defaultTriggerId:m=null,children:h}=e,f=fo.useStore(u?.store,{open:s,openProp:r,activeTriggerId:m,triggerIdProp:g});Ko(f,r,s,m),f.useControlledProp("openProp",r),f.useControlledProp("triggerIdProp",g),f.useContextCallback("onOpenChange",p),f.useContextCallback("onOpenChangeComplete",c);let v=f.useState("open"),x=!o&&v,b=f.useState("activeTriggerId"),C=f.useState("mounted"),P=f.useState("payload");f.useSyncedValues({trackCursorAxis:l,disableHoverablePopup:n}),f.useSyncedValue("disabled",o),Jt(f,{closeOnActiveTriggerUnmount:!0});let{forceUnmount:N,transitionStatus:R}=Xt(x,f),E=f.useState("isInstantPhase"),T=f.useState("instantType"),k=f.useState("lastOpenChangeReason"),w=rt.useRef(null);mt(()=>{v&&o&&f.setOpen(!1,Y(A.disabled))},[v,o,f]),mt(()=>{R==="ending"&&k===A.none||R!=="ending"&&E?(T!=="delay"&&(w.current=T),f.set("instantType","delay")):w.current!==null&&(f.set("instantType",w.current),w.current=null)},[R,E,k,T,f]),mt(()=>{x&&b==null&&f.set("payload",void 0)},[f,b,x]);let O=rt.useCallback(()=>{f.setOpen(!1,Y(A.imperativeAction))},[f]);rt.useImperativeHandle(d,()=>({unmount:N,close:O}),[N,O]);let V=x||C||!o&&l!=="none";return(0,Es.jsxs)(Ns.Provider,{value:f,children:[V&&(0,Es.jsx)(_i,{store:f,disabled:o,trackCursorAxis:l}),typeof h=="function"?h({payload:P}):h]})},"TooltipRoot"));yr.displayName="TooltipRoot";function _i({store:t,disabled:e,trackCursorAxis:o}){let s=t.useState("floatingRootContext"),r=Gt(s,{enabled:!e,referencePress:a(()=>t.select("closeOnClick"),"referencePress")}),n=vn(s,{enabled:!e&&o!=="none",axis:o==="none"?void 0:o}),l=rt.useMemo(()=>lt(n.reference,r.reference),[n.reference,r.reference]),d=rt.useMemo(()=>lt(n.trigger,r.trigger),[n.trigger,r.trigger]),p=rt.useMemo(()=>lt(gt,n.floating,r.floating),[n.floating,r.floating]);return eo(t,{activeTriggerProps:l,inactiveTriggerProps:d,popupProps:p}),null}a(_i,"TooltipInteractions");var ks=S(M(),1);var Ts=S(M(),1);var ws=Ts.createContext(void 0);ws.displayName="TooltipProviderContext";function Ra(){return Ts.useContext(ws)}a(Ra,"useTooltipProviderContext");var Sa=(function(t){return t[t.popupOpen=Nn.popupOpen]="popupOpen",t.triggerDisabled="data-trigger-disabled",t})({});var Ea="data-base-ui-tooltip-trigger";function Na(t){if("composedPath"in t){let o=t.composedPath();for(let s=0;s<o.length;s+=1){let r=o[s];if($o(r))return r}}let e=t.target;return $o(e)?e:null}a(Na,"getTargetElement");function Ii(t){let e=t;for(;e;){if(e.hasAttribute(Ea))return e;let o=e.parentElement;if(o){e=o;continue}let s=e.getRootNode();e="host"in s&&$o(s.host)?s.host:null}return null}a(Ii,"closestEnabledTooltipTrigger");var Cr=yn(a(function(e,o){let{render:s,className:r,style:n,handle:l,payload:d,disabled:p,delay:c,closeOnClick:u=!0,closeDelay:g,id:m,...h}=e,f=je(!0),v=l?.store??f;if(!v)throw new Error("Base UI: <Tooltip.Trigger> must be either used within a <Tooltip.Root> component or provided with a handle.");let x=ye(m),b=v.useState("isTriggerActive",x),C=v.useState("isOpenedByTrigger",x),P=v.useState("floatingRootContext"),N=ks.useRef(null),R=c??600,E=g??0,{registerTrigger:T,isMountedByThisTrigger:k}=Yt(x,N,v,{payload:d,closeOnClick:u,closeDelay:E}),w=Ra(),{delayRef:O,isInstantPhase:V,hasProvider:W}=dn(P,{open:C}),D=Sn(P);v.useSyncedValue("isInstantPhase",V);let H=v.useState("disabled"),$=p??H,Z=pn($),K=v.useState("trackCursorAxis"),I=v.useState("disableHoverablePopup"),_=ks.useRef(!1),U=nn(),te=ks.useRef(void 0);function re(){let L=w?.delay,Q=typeof O.current=="object"?O.current.open:void 0,X=R;return W&&(Q!==0?X=c??L??R:X=0),X}a(re,"getOpenDelay");function ne(L){let Q=N.current;if(!Q||!L)return!1;let X=Ii(L);return X!==null&&X!==Q&&vo(Q,X)}a(ne,"isEnabledNestedTriggerTarget");function J(L){let Q=ne(L);return _.current=Q,Q&&(D.openChangeTimeout.clear(),D.restTimeout.clear(),D.restTimeoutPending=!1,U.clear()),Q}a(J,"detectNestedTriggerHover");let ee=Jo(P,{enabled:!$,mouseOnly:!0,move:!1,handleClose:!I&&K!=="both"?Xo():null,restMs:re,delay(){let L=typeof O.current=="object"?O.current.close:void 0,Q=E;return g==null&&W&&(Q=L),{close:Q}},triggerElementRef:N,isActiveTrigger:b,isClosing:a(()=>v.select("transitionStatus")==="ending","isClosing"),shouldOpen(){return!_.current}}),ie=Rn(P,{enabled:!$}).reference,Be=a(L=>{let Q=_.current,X=Na(L),xe=J(X),se=N.current,Fe=se&&X&&vo(se,X);if(xe&&v.select("open")&&v.select("lastOpenChangeReason")===A.triggerHover){v.setOpen(!1,Y(A.triggerHover,L));return}if(Q&&!xe&&Fe&&!Z.current&&!v.select("open")&&se&&sn(te.current)){let de=a(()=>{!_.current&&!Z.current&&!v.select("open")&&v.setOpen(!0,Y(A.triggerHover,L,se))},"open"),pe=re();pe===0?(U.clear(),de()):U.start(pe,de)}},"handleNestedTriggerHover"),me=v.useState("triggerProps",k);return F("button",e,{state:{open:C},ref:[o,T,N],props:[ee,ie,k||K!=="none"?me:void 0,{onMouseOver(L){Be(L.nativeEvent)},onFocus(L){ne(Na(L.nativeEvent))&&L.preventBaseUIHandler()},onMouseLeave(){_.current=!1,U.clear(),te.current=void 0},onPointerEnter(L){te.current=L.pointerType},onPointerDown(L){te.current=L.pointerType,v.set("closeOnClick",u),u&&!v.select("open")&&v.cancelPendingOpen(L.nativeEvent)},onClick(L){u&&!v.select("open")&&v.cancelPendingOpen(L.nativeEvent)},id:x,[Sa.triggerDisabled]:$?"":void 0,[Ea]:$?void 0:""},h],stateAttributesMapping:no})},"TooltipTrigger"));Cr.displayName="TooltipTrigger";var Oa=S(M(),1);var Os=S(M(),1);var Ms=Os.createContext(void 0);Ms.displayName="TooltipPortalContext";function Ta(){let t=Os.useContext(Ms);if(t===void 0)throw new Error("Base UI: <Tooltip.Portal> is missing.");return t}a(Ta,"useTooltipPortalContext");var _s=S(M(),1),wa=S(Hr(),1);var ka=S(be(),1);var Pr=_s.forwardRef(a(function(e,o){let{children:s,container:r,className:n,render:l,style:d,...p}=e,{portalNode:c,portalSubtree:u}=un({container:r,ref:o,componentProps:e,elementProps:p});return!u&&!c?null:(0,ka.jsxs)(_s.Fragment,{children:[u,c&&wa.createPortal(s,c)]})},"FloatingPortalLite"));Pr.displayName="FloatingPortalLite";var Rr=S(be(),1);var Sr=Oa.forwardRef(a(function(e,o){let{keepMounted:s=!1,...r}=e;return je().useState("mounted")||s?(0,Rr.jsx)(Ms.Provider,{value:s,children:(0,Rr.jsx)(Pr,{ref:o,...r})}):null},"TooltipPortal"));Sr.displayName="TooltipPortal";var As=S(M(),1);var Is=S(M(),1);var Ds=Is.createContext(void 0);Ds.displayName="TooltipPositionerContext";function mo(){let t=Is.useContext(Ds);if(t===void 0)throw new Error("Base UI: TooltipPositionerContext is missing. TooltipPositioner parts must be placed within <Tooltip.Positioner>.");return t}a(mo,"useTooltipPositionerContext");var Ma=S(be(),1);var Nr=As.forwardRef(a(function(e,o){let{render:s,className:r,anchor:n,positionMethod:l="absolute",side:d="top",align:p="center",sideOffset:c=0,alignOffset:u=0,collisionBoundary:g="clipping-ancestors",collisionPadding:m=5,arrowPadding:h=5,sticky:f=!1,disableAnchorTracking:v=!1,collisionAvoidance:x=Uo,style:b,...C}=e,P=je(),N=Ta(),R=P.useState("open"),E=P.useState("mounted"),T=P.useState("trackCursorAxis"),k=P.useState("disableHoverablePopup"),w=P.useState("floatingRootContext"),O=P.useState("instantType"),V=P.useState("transitionStatus"),W=P.useState("hasViewport"),D=ss({anchor:n,positionMethod:l,floatingRootContext:w,mounted:E,side:d,sideOffset:c,align:p,alignOffset:u,collisionBoundary:g,collisionPadding:m,sticky:f,arrowPadding:h,disableAnchorTracking:v,keepMounted:N,collisionAvoidance:x,adaptiveOrigin:W?os:void 0}),H=As.useMemo(()=>({open:R,side:D.side,align:D.align,anchorHidden:D.anchorHidden,instant:T!=="none"?"tracking-cursor":O}),[R,D.side,D.align,D.anchorHidden,T,O]),$=as(e,H,{styles:D.positionerStyles,transitionStatus:V,props:C,refs:[o,P.useStateSetter("positionerElement")],hidden:!E,inert:!R||T==="both"||k});return(0,Ma.jsx)(Ds.Provider,{value:D,children:$})},"TooltipPositioner"));Nr.displayName="TooltipPositioner";var _a=S(M(),1);var Di={...ue,...He},Er=_a.forwardRef(a(function(e,o){let{render:s,className:r,style:n,...l}=e,d=je(),{side:p,align:c}=mo(),u=d.useState("open"),g=d.useState("instantType"),m=d.useState("transitionStatus"),h=d.useState("popupProps"),f=d.useState("floatingRootContext"),v=d.useState("disabled"),x=d.useState("closeDelay");qt({open:u,ref:d.context.popupRef,onComplete(){u&&d.context.onOpenChangeComplete?.(!0)}}),Yo(f,{enabled:!v,closeDelay:x});let b=d.useStateSetter("popupElement");return F("div",e,{state:{open:u,side:p,align:c,instant:g,transitionStatus:m},ref:[o,d.context.popupRef,b],props:[h,ns(m),l],stateAttributesMapping:Di})},"TooltipPopup"));Er.displayName="TooltipPopup";var Ia=S(M(),1);var Tr=Ia.forwardRef(a(function(e,o){let{render:s,className:r,style:n,...l}=e,d=je(),{arrowRef:p,side:c,align:u,arrowUncentered:g,arrowStyles:m}=mo(),h=d.useState("open"),f=d.useState("instantType");return F("div",e,{state:{open:h,side:c,align:u,uncentered:g,instant:f},ref:[o,p],props:[{style:m,"aria-hidden":!0},l],stateAttributesMapping:ue})},"TooltipArrow"));Tr.displayName="TooltipArrow";var wr=S(M(),1);var kr=S(be(),1);var Or=a(function(e){let{delay:o,closeDelay:s,timeout:r=400}=e,n=wr.useMemo(()=>({delay:o,closeDelay:s}),[o,s]),l=wr.useMemo(()=>({open:o,close:s}),[o,s]);return(0,kr.jsx)(ws.Provider,{value:n,children:(0,kr.jsx)(cn,{delay:l,timeoutMs:r,children:e.children})})},"TooltipProvider");Or.displayName="TooltipProvider";var Aa=S(M(),1);var Da=(function(t){return t.popupWidth="--popup-width",t.popupHeight="--popup-height",t})({});var Ai={activationDirection:a(t=>t?{"data-activation-direction":t}:null,"activationDirection")},Mr=Aa.forwardRef(a(function(e,o){let{render:s,className:r,style:n,children:l,...d}=e,p=je(),c=mo(),u=p.useState("instantType"),{children:g,state:m}=ls({store:p,side:c.side,cssVars:Da,children:l}),h={activationDirection:m.activationDirection,transitioning:m.transitioning,instant:u};return F("div",e,{state:h,ref:o,props:[d,{children:g}],stateAttributesMapping:Ai})},"TooltipViewport"));Mr.displayName="TooltipViewport";var No=class{static{a(this,"TooltipHandle")}constructor(){this.store=new fo}open(e){let o=e?this.store.context.triggerElements.getById(e):void 0;if(e&&!o)throw new Error(`Base UI: TooltipHandle.open: No trigger found with id "${e}".`);this.store.setOpen(!0,Y(A.imperativeAction,void 0,o))}close(){this.store.setOpen(!1,Y(A.imperativeAction,void 0,void 0))}get isOpen(){return this.store.select("open")}};function Va(){return new No}a(Va,"createTooltipHandle");var Ce=S(Fo(),1);var Ue=S(M(),1);var y=S(go(),1);var Vi=Dn(St.studioFeatures),$a={analytics:!0,auth:!0,containers:!0,flags:!0,kv:!0,mail:!0,payments:!0,queues:!0,scheduler:!0,storage:!0,vectors:!0,workflows:!0},Bi=a(t=>{if(t===null||typeof t!="object")return $a;let e=t,o=a(s=>typeof e[s]=="boolean"?e[s]:!0,"flag");return{analytics:o("analytics"),auth:o("auth"),containers:o("containers"),flags:o("flags"),kv:o("kv"),mail:o("mail"),payments:o("payments"),queues:o("queues"),scheduler:o("scheduler"),storage:o("storage"),vectors:o("vectors"),workflows:o("workflows")}},"coerceFeatures"),Dr=a(()=>{let t=(0,Ce.c)(3),e=qs(),[o,s]=(0,Ue.useState)($a),r,n;return t[0]!==e?(r=a(()=>{$e((async()=>{try{s(Bi(await e.query(Vi,{},An(""))))}catch{}})())},"t0"),n=[e],t[0]=e,t[1]=r,t[2]=n):(r=t[1],n=t[2]),(0,Ue.useEffect)(r,n),o},"useStudioFeatures"),Li=a(()=>{let t=(0,Ce.c)(1),e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,y.jsxDEV)("svg",{"aria-hidden":"true",className:"size-4 text-muted-foreground",fill:"none",stroke:"currentColor",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,y.jsxDEV)("path",{d:"m9 6 6 6-6 6",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1)},void 0,!1),t[0]=e):e=t[0],e},"ChevronRight$1"),Fi=a(t=>{let e=(0,Ce.c)(24),{group:o}=t,s=ae(),r=ft(),n;e[0]!==o.tab||e[1]!==r?(n=a(()=>{$e(r({to:`/${o.tab}`}))},"t1"),e[0]=o.tab,e[1]=r,e[2]=n):n=e[2];let l=n,d=o.bindings.length,p;e[3]!==o.label?(p=(0,y.jsxDEV)("span",{className:"text-sm font-medium text-foreground",children:o.label},void 0,!1),e[3]=o.label,e[4]=p):p=e[4];let c;e[5]===Symbol.for("react.memo_cache_sentinel")?(c=(0,y.jsxDEV)(Li,{},void 0,!1),e[5]=c):c=e[5];let u;e[6]!==p?(u=(0,y.jsxDEV)("div",{className:"flex items-center justify-between",children:[p,c]},void 0,!0),e[6]=p,e[7]=u):u=e[7];let g;e[8]!==d||e[9]!==s?(g=d===1?s("1 binding"):s("{count} bindings",{count:d}),e[8]=d,e[9]=s,e[10]=g):g=e[10];let m;e[11]!==g?(m=(0,y.jsxDEV)("span",{className:"text-xs text-muted-foreground",children:g},void 0,!1),e[11]=g,e[12]=m):m=e[12];let h;e[13]!==d||e[14]!==o.bindings?(h=d>0&&(0,y.jsxDEV)("div",{className:"flex flex-wrap gap-1.5",children:o.bindings.map(ji)},void 0,!1),e[13]=d,e[14]=o.bindings,e[15]=h):h=e[15];let f;e[16]!==u||e[17]!==m||e[18]!==h?(f=(0,y.jsxDEV)(Ys,{className:"flex flex-col gap-2 py-4",children:[u,m,h]},void 0,!0),e[16]=u,e[17]=m,e[18]=h,e[19]=f):f=e[19];let v;return e[20]!==o.testId||e[21]!==l||e[22]!==f?(v=(0,y.jsxDEV)(ct,{className:"cursor-pointer gap-0 py-0 transition-colors hover:bg-muted/40","data-testid":o.testId,onClick:l,children:f},void 0,!1),e[20]=o.testId,e[21]=l,e[22]=f,e[23]=v):v=e[23],v},"BindingCard"),Ba=["kv","files","vectors"],Hi=a((t,e)=>[...t.filter(o=>o.tab!==e.tab),e].toSorted((o,s)=>Ba.indexOf(o.tab)-Ba.indexOf(s.tab)),"upsertCard"),$i=a(()=>{let t=(0,Ce.c)(19),e=qs(),o=Dr(),s=ae(),r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r=[],t[0]=r):r=t[0];let[n,l]=(0,Ue.useState)(r),d,p;if(t[1]!==e||t[2]!==o.kv||t[3]!==o.storage||t[4]!==o.vectors||t[5]!==s?(d=a(()=>{let f={cancelled:!1},v=[{enabled:o.kv,label:s("KV Namespaces"),load:a(async()=>(await e.listKvNamespaces()).map(Ui),"load"),tab:"kv",testId:"home-binding-kv"},{enabled:o.storage,label:s("R2 Buckets"),load:a(()=>e.listStorageBuckets(),"load"),tab:"files",testId:"home-binding-r2"},{enabled:o.vectors,label:s("Vectorize Indexes"),load:a(async()=>(await e.listVectorIndexes()).map(zi),"load"),tab:"vectors",testId:"home-binding-vectors"}];for(let x of v)x.enabled&&$e((async()=>{try{let b=await x.load();if(!f.cancelled){let C={bindings:b,label:x.label,tab:x.tab,testId:x.testId};l(P=>Hi(P,C))}}catch{}})());return()=>{f.cancelled=!0}},"t1"),p=[e,o.kv,o.storage,o.vectors,s],t[1]=e,t[2]=o.kv,t[3]=o.storage,t[4]=o.vectors,t[5]=s,t[6]=d,t[7]=p):(d=t[6],p=t[7]),(0,Ue.useEffect)(d,p),n.length===0)return null;let c;t[8]!==s?(c=s("Bindings"),t[8]=s,t[9]=c):c=t[9];let u;t[10]!==c?(u=(0,y.jsxDEV)("h2",{className:"text-sm font-semibold tracking-tight text-foreground",children:c},void 0,!1),t[10]=c,t[11]=u):u=t[11];let g;t[12]!==n?(g=n.map(Wi),t[12]=n,t[13]=g):g=t[13];let m;t[14]!==g?(m=(0,y.jsxDEV)("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3",children:g},void 0,!1),t[14]=g,t[15]=m):m=t[15];let h;return t[16]!==u||t[17]!==m?(h=(0,y.jsxDEV)("section",{className:"flex flex-col gap-3","data-testid":"home-bindings",children:[u,m]},void 0,!0),t[16]=u,t[17]=m,t[18]=h):h=t[18],h},"BindingsOverview");function ji(t){return(0,y.jsxDEV)(ho,{variant:"secondary",children:t},t,!1)}a(ji,"_temp$1");function Ui(t){return t.binding}a(Ui,"_temp2$1");function zi(t){return t.name}a(zi,"_temp3$1");function Wi(t){return(0,y.jsxDEV)(Fi,{group:t},t.tab,!1)}a(Wi,"_temp4");var Zi=[{name:"lunora_list_functions",summary:"list every query, mutation, and action with its path"},{name:"lunora_list_tables",summary:"list the schema's tables"},{name:"lunora_get_function_schema",summary:"read a function's argument JSON Schema before calling it"},{name:"lunora_run_query",summary:"run a read-only query"},{name:"lunora_run_mutation",summary:"run a mutation \u2014 writes; only when LUNORA_MCP_ALLOW_WRITES is set"},{name:"lunora_run_action",summary:"run an action \u2014 writes/effects; only when LUNORA_MCP_ALLOW_WRITES is set"}],qi=a(t=>JSON.stringify({mcpServers:{lunora:{args:["-y","@lunora/mcp"],command:"npx",env:{LUNORA_ADMIN_TOKEN:"<your-admin-token>",LUNORA_URL:t}}}},null,2),"buildMcpConfig"),Gi=a(t=>{let e=Zi.map(o=>`- ${o.name} \u2014 ${o.summary}`).join(`
|
|
2
|
+
`);return[`You have a Lunora MCP server connected to the deployment at ${t}.`,"It exposes this backend's functions and schema so you can inspect and operate it:",e,"",`Start by calling lunora_list_functions and lunora_list_tables to learn what exists, then lunora_get_function_schema before any run call. The full HTTP API is also documented at ${t}/_lunora/admin/openapi (that endpoint needs the same admin token the MCP server is configured with).`].join(`
|
|
3
|
+
`)},"buildAgentPrompt"),Ki=1500,Qi=a(()=>{let t=(0,Ce.c)(35),e=ae(),o;t[0]===Symbol.for("react.memo_cache_sentinel")?(o=Vn(),t[0]=o):o=t[0];let s=o,[r,n]=(0,Ue.useState)(null),l,d;t[1]!==r?(l=a(()=>{if(r===null)return;let O=globalThis.setTimeout(()=>{n(null)},Ki);return()=>{globalThis.clearTimeout(O)}},"t1"),d=[r],t[1]=r,t[2]=l,t[3]=d):(l=t[2],d=t[3]),(0,Ue.useEffect)(l,d);let p;t[4]===Symbol.for("react.memo_cache_sentinel")?(p=a((O,V)=>{Bn(V)&&n(O)},"t3"),t[4]=p):p=t[4];let c=p,u;t[5]===Symbol.for("react.memo_cache_sentinel")?(u=a(()=>{c("config",qi(s))},"t4"),t[5]=u):u=t[5];let g=u,m;t[6]===Symbol.for("react.memo_cache_sentinel")?(m=a(()=>{c("prompt",Gi(s))},"t5"),t[6]=m):m=t[6];let h=m,f;t[7]!==e?(f=e("Connect an AI agent"),t[7]=e,t[8]=f):f=t[8];let v;t[9]!==f?(v=(0,y.jsxDEV)("span",{className:"text-sm font-medium text-foreground",children:f},void 0,!1),t[9]=f,t[10]=v):v=t[10];let x;t[11]!==e?(x=e("Drive this deployment from an AI agent over the Model Context Protocol \u2014 it can list functions and tables, read schemas, and run read-only queries. Writes stay off unless you opt in."),t[11]=e,t[12]=x):x=t[12];let b;t[13]!==x?(b=(0,y.jsxDEV)("span",{className:"text-xs text-muted-foreground",children:x},void 0,!1),t[13]=x,t[14]=b):b=t[14];let C;t[15]!==v||t[16]!==b?(C=(0,y.jsxDEV)("div",{className:"flex flex-col gap-1.5 p-4",children:[v,b]},void 0,!0),t[15]=v,t[16]=b,t[17]=C):C=t[17];let P;t[18]===Symbol.for("react.memo_cache_sentinel")?(P=(0,y.jsxDEV)("code",{className:"font-mono text-xs text-muted-foreground","data-testid":"home-connect-agent-command",children:"npx -y @lunora/mcp"},void 0,!1),t[18]=P):P=t[18];let N;t[19]!==r||t[20]!==e?(N=e(r==="config"?"Copied":"Copy MCP config"),t[19]=r,t[20]=e,t[21]=N):N=t[21];let R;t[22]!==N?(R=(0,y.jsxDEV)(ao,{"data-testid":"home-connect-agent-copy-config",onClick:g,size:"xs",variant:"outline",children:N},void 0,!1),t[22]=N,t[23]=R):R=t[23];let E;t[24]!==r||t[25]!==e?(E=e(r==="prompt"?"Copied":"Copy agent prompt"),t[24]=r,t[25]=e,t[26]=E):E=t[26];let T;t[27]!==E?(T=(0,y.jsxDEV)(ao,{"data-testid":"home-connect-agent-copy-prompt",onClick:h,size:"xs",variant:"outline",children:E},void 0,!1),t[27]=E,t[28]=T):T=t[28];let k;t[29]!==R||t[30]!==T?(k=(0,y.jsxDEV)("div",{className:"flex flex-col gap-3 border-t border-border bg-muted/50 px-4 py-3",children:[P,(0,y.jsxDEV)("div",{className:"flex flex-wrap gap-2",children:[R,T]},void 0,!0)]},void 0,!0),t[29]=R,t[30]=T,t[31]=k):k=t[31];let w;return t[32]!==C||t[33]!==k?(w=(0,y.jsxDEV)(ct,{className:"gap-0 py-0","data-testid":"home-connect-agent",children:[C,k]},void 0,!0),t[32]=C,t[33]=k,t[34]=w):w=t[34],w},"ConnectAgentCard"),Yi=(0,Ue.lazy)(()=>import("./chunk-Q52CHOSY.js").then(t=>({default:t.Sparkline}))),Ir=a(t=>{if(t<1e3)return`${String(Math.round(t))}ms`;let e=t>=1e4?0:1;return`${(t/1e3).toFixed(e)}s`},"formatMs"),Ji=a((t,e)=>{let o=Math.max(0,Math.round((e-t)/1e3));if(o<60)return`${String(o)}s ago`;let s=Math.round(o/60);if(s<60)return`${String(s)}m ago`;let r=Math.round(s/60);return r<24?`${String(r)}h ago`:`${String(Math.round(r/24))}d ago`},"relativeTime"),La=a((t,e)=>{if(t===void 0||t.length===0)return[];let o=new Map;for(let s of t)o.set(s.bucketMs,(o.get(s.bucketMs)??0)+s[e]);return[...o.entries()].toSorted(([s],[r])=>s-r).map(([,s])=>s)},"bucketSeries"),Fa=a((t,e=!0)=>{if(t.length<4)return null;let o=Math.floor(t.length/2),s=t.slice(0,o).reduce((l,d)=>l+d,0),r=t.slice(o).reduce((l,d)=>l+d,0);if(s===0)return null;let n=(r-s)/s*100;return{positive:e?n>=0:n<=0,text:`${n>=0?"+":""}${n.toFixed(1)}%`}},"seriesDelta"),Vs=a(t=>{let e=(0,Ce.c)(24),{delta:o,footer:s,label:r,trend:n,unit:l,value:d}=t,p=ae(),c;e[0]!==r?(c=(0,y.jsxDEV)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:r},void 0,!1),e[0]=r,e[1]=c):c=e[1];let u;e[2]!==d?(u=(0,y.jsxDEV)("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:d},void 0,!1),e[2]=d,e[3]=u):u=e[3];let g;e[4]!==l?(g=l!==void 0&&(0,y.jsxDEV)("span",{className:"text-xs text-muted-foreground",children:l},void 0,!1),e[4]=l,e[5]=g):g=e[5];let m;e[6]!==u||e[7]!==g?(m=(0,y.jsxDEV)("span",{className:"flex items-baseline gap-1.5",children:[u,g]},void 0,!0),e[6]=u,e[7]=g,e[8]=m):m=e[8];let h;e[9]!==n?(h=n!==void 0&&(0,y.jsxDEV)(Ue.Suspense,{fallback:(0,y.jsxDEV)("div",{"aria-hidden":"true",className:"h-8 w-28"},void 0,!1),children:(0,y.jsxDEV)(Yi,{data:n},void 0,!1)},void 0,!1),e[9]=n,e[10]=h):h=e[10];let f;e[11]!==m||e[12]!==h?(f=(0,y.jsxDEV)("div",{className:"flex items-center justify-between gap-3",children:[m,h]},void 0,!0),e[11]=m,e[12]=h,e[13]=f):f=e[13];let v;e[14]!==c||e[15]!==f?(v=(0,y.jsxDEV)("div",{className:"flex flex-col gap-2.5 p-4",children:[c,f]},void 0,!0),e[14]=c,e[15]=f,e[16]=v):v=e[16];let x;e[17]!==o||e[18]!==s||e[19]!==p?(x=o==null?s!=null&&(0,y.jsxDEV)("div",{className:"border-t border-border bg-muted/50 px-4 py-2.5 text-[11px] text-muted-foreground",children:s},void 0,!1):(0,y.jsxDEV)("div",{className:"border-t border-border bg-muted/50 px-4 py-2.5 text-[11px]",children:[(0,y.jsxDEV)("span",{className:z("font-semibold",o.positive?"text-success":"text-destructive"),children:o.text},void 0,!1)," ",(0,y.jsxDEV)("span",{className:"text-muted-foreground",children:p("vs. prev.")},void 0,!1)]},void 0,!0),e[17]=o,e[18]=s,e[19]=p,e[20]=x):x=e[20];let b;return e[21]!==v||e[22]!==x?(b=(0,y.jsxDEV)(ct,{className:"justify-between gap-0 py-0",children:[v,x]},void 0,!0),e[21]=v,e[22]=x,e[23]=b):b=e[23],b},"StatCard"),Xi=a(()=>{let t=(0,Ce.c)(1),e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,y.jsxDEV)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.8,viewBox:"0 0 24 24",children:(0,y.jsxDEV)("path",{d:"m9 6 6 6-6 6"},void 0,!1)},void 0,!1),t[0]=e):e=t[0],e},"ChevronRight"),_r=a(t=>{let e=(0,Ce.c)(7),{command:o,label:s}=t,r;e[0]!==s?(r=(0,y.jsxDEV)("div",{className:"p-4",children:(0,y.jsxDEV)("span",{className:"text-sm font-medium text-foreground",children:s},void 0,!1)},void 0,!1),e[0]=s,e[1]=r):r=e[1];let n;e[2]!==o?(n=(0,y.jsxDEV)("div",{className:"border-t border-border bg-muted/50 px-4 py-2.5",children:(0,y.jsxDEV)("code",{className:"font-mono text-xs text-muted-foreground",children:o},void 0,!1)},void 0,!1),e[2]=o,e[3]=n):n=e[3];let l;return e[4]!==r||e[5]!==n?(l=(0,y.jsxDEV)(ct,{className:"justify-between gap-0 py-0",children:[r,n]},void 0,!0),e[4]=r,e[5]=n,e[6]=l):l=e[6],l},"ConnectCard"),Ha=a(t=>{let e=(0,Ce.c)(18),{count:o,onView:s,testId:r,title:n}=t,l=ae(),d;e[0]!==n?(d=(0,y.jsxDEV)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:n},void 0,!1),e[0]=n,e[1]=d):d=e[1];let p;e[2]!==o||e[3]!==l?(p=o===null?(0,y.jsxDEV)("span",{className:"text-xs text-muted-foreground",children:l("No data yet")},void 0,!1):(0,y.jsxDEV)(ho,{variant:o>0?"destructive":"success",children:o>0?o:l("All clear")},void 0,!1),e[2]=o,e[3]=l,e[4]=p):p=e[4];let c;e[5]!==d||e[6]!==p?(c=(0,y.jsxDEV)("div",{className:"flex items-start justify-between gap-2 p-4",children:[d,p]},void 0,!0),e[5]=d,e[6]=p,e[7]=c):c=e[7];let u;e[8]!==l?(u=l("View"),e[8]=l,e[9]=u):u=e[9];let g;e[10]===Symbol.for("react.memo_cache_sentinel")?(g=(0,y.jsxDEV)(Xi,{},void 0,!1),e[10]=g):g=e[10];let m;e[11]!==s||e[12]!==u?(m=(0,y.jsxDEV)("button",{className:"flex items-center gap-1 border-t border-border bg-muted/50 px-4 py-2.5 text-[12px] font-medium text-foreground outline-none transition-colors hover:bg-muted focus-visible:bg-muted",onClick:s,type:"button",children:[u,g]},void 0,!0),e[11]=s,e[12]=u,e[13]=m):m=e[13];let h;return e[14]!==c||e[15]!==m||e[16]!==r?(h=(0,y.jsxDEV)(ct,{className:"justify-between gap-0 py-0","data-testid":r,children:[c,m]},void 0,!0),e[14]=c,e[15]=m,e[16]=r,e[17]=h):h=e[17],h},"AdvisorCard"),el=a(t=>{let e=(0,Ce.c)(7),{functions:o}=t,s=ae(),r;if(e[0]!==o||e[1]!==s){let n=[...o].toSorted(rl).slice(0,5),l;e[3]!==s?(l=s("Top functions"),e[3]=s,e[4]=l):l=e[4];let d;e[5]!==l?(d=(0,y.jsxDEV)("div",{className:"border-b border-border px-4 py-3",children:(0,y.jsxDEV)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:l},void 0,!1)},void 0,!1),e[5]=l,e[6]=d):d=e[6],r=(0,y.jsxDEV)(ct,{className:"gap-0 py-0","data-testid":"home-top-functions",children:[d,n.length===0?(0,y.jsxDEV)("p",{className:"px-4 py-8 text-center text-xs text-muted-foreground",children:s("No functions called yet.")},void 0,!1):(0,y.jsxDEV)("div",{className:"divide-y divide-border",children:[(0,y.jsxDEV)("div",{className:"grid grid-cols-[1fr_auto_auto_auto] gap-4 px-4 py-1.5 font-mono text-[10px] tracking-wide text-muted-foreground uppercase",children:[(0,y.jsxDEV)("span",{children:s("Function")},void 0,!1),(0,y.jsxDEV)("span",{className:"text-end",children:s("Calls")},void 0,!1),(0,y.jsxDEV)("span",{className:"w-12 text-end",children:s("Avg")},void 0,!1),(0,y.jsxDEV)("span",{className:"w-8 text-end",children:s("Err")},void 0,!1)]},void 0,!0),n.map(nl)]},void 0,!0)]},void 0,!0),e[0]=o,e[1]=s,e[2]=r}else r=e[2];return r},"TopFunctionsCard"),tl=a(t=>{let e=(0,Ce.c)(26),{subs:o}=t,s=ae(),r;e[0]!==s?(r=s("Live connections"),e[0]=s,e[1]=r):r=e[1];let n;e[2]!==r?(n=(0,y.jsxDEV)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:r},void 0,!1),e[2]=r,e[3]=n):n=e[3];let l=o?.totalConnections??0,d;e[4]!==l?(d=l.toLocaleString(),e[4]=l,e[5]=d):d=e[5];let p;e[6]!==d?(p=(0,y.jsxDEV)("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:d},void 0,!1),e[6]=d,e[7]=p):p=e[7];let c;e[8]!==s?(c=s("sockets"),e[8]=s,e[9]=c):c=e[9];let u;e[10]!==c?(u=(0,y.jsxDEV)("span",{className:"text-xs text-muted-foreground",children:c},void 0,!1),e[10]=c,e[11]=u):u=e[11];let g;e[12]!==p||e[13]!==u?(g=(0,y.jsxDEV)("span",{className:"flex items-baseline gap-1.5",children:[p,u]},void 0,!0),e[12]=p,e[13]=u,e[14]=g):g=e[14];let m=o?.totalSubscriptions??0,h;e[15]!==m?(h=m.toLocaleString(),e[15]=m,e[16]=h):h=e[16];let f;e[17]!==s?(f=s("active subscriptions"),e[17]=s,e[18]=f):f=e[18];let v;e[19]!==h||e[20]!==f?(v=(0,y.jsxDEV)("span",{className:"text-[11px] text-muted-foreground",children:[h," ",f]},void 0,!0),e[19]=h,e[20]=f,e[21]=v):v=e[21];let x;return e[22]!==v||e[23]!==n||e[24]!==g?(x=(0,y.jsxDEV)(ct,{"data-testid":"home-live-connections",children:(0,y.jsxDEV)(Ys,{className:"flex flex-col gap-2.5 py-4",children:[n,g,v]},void 0,!0)},void 0,!1),e[22]=v,e[23]=n,e[24]=g,e[25]=x):x=e[25],x},"LiveConnectionsCard"),ol=a(t=>{let e=(0,Ce.c)(7),{entries:o}=t,s=ae(),r;if(e[0]!==o||e[1]!==s){let n=Date.now(),l;e[3]!==s?(l=s("Recent activity"),e[3]=s,e[4]=l):l=e[4];let d;e[5]!==l?(d=(0,y.jsxDEV)("div",{className:"border-b border-border px-4 py-3",children:(0,y.jsxDEV)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:l},void 0,!1)},void 0,!1),e[5]=l,e[6]=d):d=e[6],r=(0,y.jsxDEV)(ct,{className:"gap-0 py-0","data-testid":"home-recent-activity",children:[d,o.length===0?(0,y.jsxDEV)("p",{className:"px-4 py-8 text-center text-xs text-muted-foreground",children:s("No recent activity.")},void 0,!1):(0,y.jsxDEV)("ul",{className:"divide-y divide-border",children:o.slice(0,5).map(p=>(0,y.jsxDEV)("li",{className:"flex items-center justify-between gap-3 px-4 py-2 text-[13px]",children:[(0,y.jsxDEV)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,y.jsxDEV)("span",{"aria-hidden":"true",className:"size-1.5 shrink-0 rounded-full bg-muted-foreground/40"},void 0,!1),(0,y.jsxDEV)("span",{className:"truncate text-foreground",children:[p.op,p.table!==void 0&&(0,y.jsxDEV)("span",{className:"text-muted-foreground",children:[" \xB7 ",p.table,p.id===void 0?"":`#${p.id}`]},void 0,!0)]},void 0,!0)]},void 0,!0),(0,y.jsxDEV)("span",{className:"shrink-0 text-xs tabular-nums text-muted-foreground",children:Ji(p.ts,n)},void 0,!1)]},p.seq,!0))},void 0,!1)]},void 0,!0),e[0]=o,e[1]=s,e[2]=r}else r=e[2];return r},"RecentActivityCard"),sl=a(t=>{let e=t.reduce((o,s)=>o+s.calls,0);return e===0?null:t.reduce((o,s)=>o+s.totalDurationMs,0)/e},"averageLatencyMs"),ja=a(t=>{let e=(0,Ce.c)(151),{initialShardKey:o}=t,s=ae(),r=ft(),n=o??"",l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l={},e[0]=l):l=e[0];let d;e[1]!==n?(d={shardKey:n},e[1]=n,e[2]=d):d=e[2];let p=io(St.getMetrics,l,d),c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c={},e[3]=c):c=e[3];let u;e[4]!==n?(u={shardKey:n},e[4]=n,e[5]=u):u=e[5];let g=io(St.getFunctionStats,c,u),m,h;e[6]===Symbol.for("react.memo_cache_sentinel")?(m={},h={shardKey:""},e[6]=m,e[7]=h):(m=e[6],h=e[7]);let f=io(St.getSecurityAudit,m,h),v;e[8]===Symbol.for("react.memo_cache_sentinel")?(v={},e[8]=v):v=e[8];let x;e[9]!==n?(x={shardKey:n},e[9]=n,e[10]=x):x=e[10];let b=io(St.listSubscriptions,v,x),C;e[11]===Symbol.for("react.memo_cache_sentinel")?(C={},e[11]=C):C=e[11];let P;e[12]!==n?(P={shardKey:n},e[12]=n,e[13]=P):P=e[13];let N=io(St.getAuditLog,C,P),R=p.data??null,E,T,k,w,O,V,W,D,H,$,Z,K,I,_,U,te,re,ne;if(e[14]!==N.data||e[15]!==f.data||e[16]!==R||e[17]!==p.data||e[18]!==r||e[19]!==g.data||e[20]!==b.data||e[21]!==s){w=Array.isArray(g.data?.functions)?g.data.functions:[],W=b.data??null;let Ze;e[40]!==N.data?(Ze=Array.isArray(N.data?.entries)?N.data.entries:[],e[40]=N.data,e[41]=Ze):Ze=e[41],T=Ze,O=p.data===void 0||g.data===void 0?null:Fn(R,w).length,V=Array.isArray(f.data?.findings)?f.data.findings.length:null;let qe;e[42]!==r?(qe=a(()=>{$e(r({to:"/security"}))},"t212"),e[42]=r,e[43]=qe):qe=e[43],ne=qe;let Ge;e[44]!==r?(Ge=a(()=>{$e(r({to:"/insights"}))},"t222"),e[44]=r,e[45]=Ge):Ge=e[45],re=Ge;let Ke=La(R?.history,"calls"),Qe=La(R?.history,"errors"),at=sl(w),Ye=Math.max(0,...w.map(al)),ge=R?.cache,Je;e[46]!==ge?(Je=ge!=null&&ge.hits+ge.misses>0?Math.round(ge.hits/(ge.hits+ge.misses)*100):null,e[46]=ge,e[47]=Je):Je=e[47],k=Je,U="flex flex-col gap-6",te="lunora-home",Z="grid gap-3 sm:grid-cols-2 xl:grid-cols-4",K="home-health";let Xe=Fa(Ke),Ie;e[48]!==s?(Ie=s("Requests"),e[48]=s,e[49]=Ie):Ie=e[49];let et=R?.requests??0,De;e[50]!==et?(De=et.toLocaleString(),e[50]=et,e[51]=De):De=e[51],e[52]!==Ke||e[53]!==Xe||e[54]!==Ie||e[55]!==De?(I=(0,y.jsxDEV)(Vs,{delta:Xe,label:Ie,trend:Ke,value:De},void 0,!1),e[52]=Ke,e[53]=Xe,e[54]=Ie,e[55]=De,e[56]=I):I=e[56];let tt=Fa(Qe,!1),Ae;e[57]!==s?(Ae=s("Errors"),e[57]=s,e[58]=Ae):Ae=e[58];let ot=R?.errors??0,Ve;e[59]!==ot?(Ve=ot.toLocaleString(),e[59]=ot,e[60]=Ve):Ve=e[60],e[61]!==Qe||e[62]!==tt||e[63]!==Ae||e[64]!==Ve?(_=(0,y.jsxDEV)(Vs,{delta:tt,label:Ae,trend:Qe,value:Ve},void 0,!1),e[61]=Qe,e[62]=tt,e[63]=Ae,e[64]=Ve,e[65]=_):_=e[65],E=Vs,e[66]!==Ye||e[67]!==s?(D=Ye>0?`${s("max")} ${Ir(Ye)}`:void 0,e[66]=Ye,e[67]=s,e[68]=D):D=e[68],e[69]!==s?(H=s("Avg latency"),e[69]=s,e[70]=H):H=e[70],$=at===null?"\u2014":Ir(at),e[14]=N.data,e[15]=f.data,e[16]=R,e[17]=p.data,e[18]=r,e[19]=g.data,e[20]=b.data,e[21]=s,e[22]=E,e[23]=T,e[24]=k,e[25]=w,e[26]=O,e[27]=V,e[28]=W,e[29]=D,e[30]=H,e[31]=$,e[32]=Z,e[33]=K,e[34]=I,e[35]=_,e[36]=U,e[37]=te,e[38]=re,e[39]=ne}else E=e[22],T=e[23],k=e[24],w=e[25],O=e[26],V=e[27],W=e[28],D=e[29],H=e[30],$=e[31],Z=e[32],K=e[33],I=e[34],_=e[35],U=e[36],te=e[37],re=e[38],ne=e[39];let J;e[71]!==E||e[72]!==D||e[73]!==H||e[74]!==$?(J=(0,y.jsxDEV)(E,{footer:D,label:H,value:$},void 0,!1),e[71]=E,e[72]=D,e[73]=H,e[74]=$,e[75]=J):J=e[75];let ee;e[76]!==k||e[77]!==s?(ee=k===null?void 0:`${String(k)}% ${s("cache hit")}`,e[76]=k,e[77]=s,e[78]=ee):ee=e[78];let ie;e[79]!==s?(ie=s("Database size"),e[79]=s,e[80]=ie):ie=e[80];let Be=R?.databaseSize??null,me;e[81]!==Be?(me=Ln(Be),e[81]=Be,e[82]=me):me=e[82];let he;e[83]!==ee||e[84]!==ie||e[85]!==me?(he=(0,y.jsxDEV)(Vs,{footer:ee,label:ie,value:me},void 0,!1),e[83]=ee,e[84]=ie,e[85]=me,e[86]=he):he=e[86];let ve;e[87]!==Z||e[88]!==K||e[89]!==I||e[90]!==_||e[91]!==J||e[92]!==he?(ve=(0,y.jsxDEV)("div",{className:Z,"data-testid":K,children:[I,_,J,he]},void 0,!0),e[87]=Z,e[88]=K,e[89]=I,e[90]=_,e[91]=J,e[92]=he,e[93]=ve):ve=e[93];let Le;e[94]===Symbol.for("react.memo_cache_sentinel")?(Le=(0,y.jsxDEV)($i,{},void 0,!1),e[94]=Le):Le=e[94];let L;e[95]!==w?(L=(0,y.jsxDEV)("div",{className:"lg:col-span-2",children:(0,y.jsxDEV)(el,{functions:w},void 0,!1)},void 0,!1),e[95]=w,e[96]=L):L=e[96];let Q;e[97]!==W?(Q=(0,y.jsxDEV)(tl,{subs:W},void 0,!1),e[97]=W,e[98]=Q):Q=e[98];let X;e[99]!==T?(X=(0,y.jsxDEV)(ol,{entries:T},void 0,!1),e[99]=T,e[100]=X):X=e[100];let xe;e[101]!==Q||e[102]!==X?(xe=(0,y.jsxDEV)("div",{className:"flex flex-col gap-3",children:[Q,X]},void 0,!0),e[101]=Q,e[102]=X,e[103]=xe):xe=e[103];let se;e[104]!==L||e[105]!==xe?(se=(0,y.jsxDEV)("div",{className:"grid gap-3 lg:grid-cols-3",children:[L,xe]},void 0,!0),e[104]=L,e[105]=xe,e[106]=se):se=e[106];let Fe;e[107]!==s?(Fe=s("Advisors"),e[107]=s,e[108]=Fe):Fe=e[108];let de;e[109]!==Fe?(de=(0,y.jsxDEV)("h2",{className:"text-sm font-semibold tracking-tight text-foreground",children:Fe},void 0,!1),e[109]=Fe,e[110]=de):de=e[110];let pe;e[111]!==O||e[112]!==V||e[113]!==s||e[114]!==re||e[115]!==ne?(pe=V===0&&O===0?(0,y.jsxDEV)(In,{description:s("No security or performance issues detected."),icon:(0,y.jsxDEV)("svg",{"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:[(0,y.jsxDEV)("path",{d:"M12 3 4 6v5c0 5 3.4 8.5 8 10 4.6-1.5 8-5 8-10V6l-8-3Z"},void 0,!1),(0,y.jsxDEV)("path",{d:"m9 12 2 2 4-4"},void 0,!1)]},void 0,!0),testId:"home-advisors-clear",title:s("No issues found")},void 0,!1):(0,y.jsxDEV)("div",{className:"grid gap-3 sm:grid-cols-2",children:[(0,y.jsxDEV)(Ha,{count:V,onView:ne,testId:"home-security",title:s("Security findings")},void 0,!1),(0,y.jsxDEV)(Ha,{count:O,onView:re,testId:"home-performance",title:s("Performance issues")},void 0,!1)]},void 0,!0),e[111]=O,e[112]=V,e[113]=s,e[114]=re,e[115]=ne,e[116]=pe):pe=e[116];let Pe;e[117]!==de||e[118]!==pe?(Pe=(0,y.jsxDEV)("section",{className:"flex flex-col gap-3","data-testid":"home-advisors",children:[de,pe]},void 0,!0),e[117]=de,e[118]=pe,e[119]=Pe):Pe=e[119];let Re;e[120]!==s?(Re=s("Get connected"),e[120]=s,e[121]=Re):Re=e[121];let Se;e[122]!==Re?(Se=(0,y.jsxDEV)("h2",{className:"text-sm font-semibold tracking-tight text-foreground",children:Re},void 0,!1),e[122]=Re,e[123]=Se):Se=e[123];let Ne;e[124]!==s?(Ne=s("Client SDK"),e[124]=s,e[125]=Ne):Ne=e[125];let Ee;e[126]!==Ne?(Ee=(0,y.jsxDEV)(_r,{command:"npm i @lunora/client",label:Ne},void 0,!1),e[126]=Ne,e[127]=Ee):Ee=e[127];let Te;e[128]!==s?(Te=s("React"),e[128]=s,e[129]=Te):Te=e[129];let we;e[130]!==Te?(we=(0,y.jsxDEV)(_r,{command:"npm i @lunora/react",label:Te},void 0,!1),e[130]=Te,e[131]=we):we=e[131];let ke;e[132]!==s?(ke=s("CLI"),e[132]=s,e[133]=ke):ke=e[133];let Oe;e[134]!==ke?(Oe=(0,y.jsxDEV)(_r,{command:"lunora dev",label:ke},void 0,!1),e[134]=ke,e[135]=Oe):Oe=e[135];let Me;e[136]!==Ee||e[137]!==we||e[138]!==Oe?(Me=(0,y.jsxDEV)("div",{className:"grid gap-3 sm:grid-cols-3",children:[Ee,we,Oe]},void 0,!0),e[136]=Ee,e[137]=we,e[138]=Oe,e[139]=Me):Me=e[139];let ze;e[140]===Symbol.for("react.memo_cache_sentinel")?(ze=(0,y.jsxDEV)(Qi,{},void 0,!1),e[140]=ze):ze=e[140];let _e;e[141]!==Se||e[142]!==Me?(_e=(0,y.jsxDEV)("section",{className:"flex flex-col gap-3","data-testid":"home-get-connected",children:[Se,Me,ze]},void 0,!0),e[141]=Se,e[142]=Me,e[143]=_e):_e=e[143];let We;return e[144]!==U||e[145]!==te||e[146]!==ve||e[147]!==se||e[148]!==Pe||e[149]!==_e?(We=(0,y.jsxDEV)("div",{className:U,"data-testid":te,children:[ve,Le,se,Pe,_e]},void 0,!0),e[144]=U,e[145]=te,e[146]=ve,e[147]=se,e[148]=Pe,e[149]=_e,e[150]=We):We=e[150],We},"HomePanel");function rl(t,e){return e.calls-t.calls}a(rl,"_temp");function nl(t){return(0,y.jsxDEV)("div",{className:"grid grid-cols-[1fr_auto_auto_auto] items-center gap-4 px-4 py-2 text-[13px]",children:[(0,y.jsxDEV)("span",{className:"truncate font-mono text-xs text-foreground",children:t.path},void 0,!1),(0,y.jsxDEV)("span",{className:"text-end tabular-nums",children:t.calls.toLocaleString()},void 0,!1),(0,y.jsxDEV)("span",{className:"w-12 text-end tabular-nums text-muted-foreground",children:Ir(t.calls>0?t.totalDurationMs/t.calls:0)},void 0,!1),(0,y.jsxDEV)("span",{className:z("w-8 text-end tabular-nums",t.errors>0?"text-destructive":"text-muted-foreground"),children:t.errors},void 0,!1)]},t.path,!0)}a(nl,"_temp2");function al(t){return t.maxDurationMs}a(al,"_temp3");var Ua=S(Fo(),1);var za=S(go(),1);var il=a((t,e,o)=>t!==void 0?t:e===void 0&&o===void 0?Qr:Kr(e,o),"resolveInstance"),Wa=a(t=>{let e=(0,Ua.c)(7),{catalogs:o,children:s,i18n:r,locale:n}=t,l;e[0]!==o||e[1]!==r||e[2]!==n?(l=il(r,n,o),e[0]=o,e[1]=r,e[2]=n,e[3]=l):l=e[3];let d=l,p;return e[4]!==s||e[5]!==d?(p=(0,za.jsxDEV)(Yr,{value:d,children:s},void 0,!1),e[4]=s,e[5]=d,e[6]=p):p=e[6],p},"StudioI18nProvider");var Vr=S(Fo(),1);var Pt=S(M(),1);var ce=S(go(),1);var Ar="lunora:command-palette",Za=a(()=>{"window"in globalThis&&globalThis.dispatchEvent(new Event(Ar))},"openCommandPalette"),ll=a(t=>{let e=(0,Vr.c)(18),{active:o,index:s,item:r,onActivate:n,onSelect:l}=t,d;e[0]!==r||e[1]!==l?(d=a(()=>{l(r)},"t1"),e[0]=r,e[1]=l,e[2]=d):d=e[2];let p=d,c;e[3]!==s||e[4]!==n?(c=a(()=>{n(s)},"t2"),e[3]=s,e[4]=n,e[5]=c):c=e[5];let u=c,g=o?"bg-accent text-accent-foreground":"text-foreground",m;e[6]!==g?(m=z("flex w-full items-center justify-between gap-3 rounded-md px-3 py-2 text-start text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground",g),e[6]=g,e[7]=m):m=e[7];let h;e[8]!==r.label?(h=(0,ce.jsxDEV)("span",{children:r.label},void 0,!1),e[8]=r.label,e[9]=h):h=e[9];let f;e[10]!==r.group?(f=(0,ce.jsxDEV)("span",{className:"text-xs text-muted-foreground",children:r.group},void 0,!1),e[10]=r.group,e[11]=f):f=e[11];let v;return e[12]!==p||e[13]!==u||e[14]!==m||e[15]!==h||e[16]!==f?(v=(0,ce.jsxDEV)("li",{children:(0,ce.jsxDEV)("button",{className:m,onClick:p,onMouseEnter:u,type:"button",children:[h,f]},void 0,!0)},void 0,!1),e[12]=p,e[13]=u,e[14]=m,e[15]=h,e[16]=f,e[17]=v):v=e[17],v},"CommandRow"),qa=a(t=>{let e=(0,Vr.c)(39),{items:o}=t,s=ae(),r=ft(),[n,l]=(0,Pt.useState)(!1),[d,p]=(0,Pt.useState)(""),[c,u]=(0,Pt.useState)(0),g=(0,Pt.useRef)(null),m,h;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=a(()=>{let I=a(U=>{(U.metaKey||U.ctrlKey)&&U.key.toLowerCase()==="k"&&(U.preventDefault(),l(!0))},"onKeyDown"),_=a(()=>{l(!0)},"onOpen");return globalThis.addEventListener("keydown",I),globalThis.addEventListener(Ar,_),()=>{globalThis.removeEventListener("keydown",I),globalThis.removeEventListener(Ar,_)}},"t1"),h=[],e[0]=m,e[1]=h):(m=e[0],h=e[1]),(0,Pt.useEffect)(m,h);let f;if(e[2]!==o||e[3]!==d){e:{let I=d.trim().toLowerCase();if(I===""){f=o;break e}f=o.filter(_=>_.label.toLowerCase().includes(I)||_.group.toLowerCase().includes(I))}e[2]=o,e[3]=d,e[4]=f}else f=e[4];let v=f,x;e[5]===Symbol.for("react.memo_cache_sentinel")?(x=a(I=>{l(I),I||(p(""),u(0))},"t4"),e[5]=x):x=e[5];let b=x,C;e[6]!==r?(C=a(I=>{b(!1),$e(r({to:I.to}))},"t5"),e[6]=r,e[7]=C):C=e[7];let P=C,N;e[8]===Symbol.for("react.memo_cache_sentinel")?(N=a(I=>{p(I.target.value),u(0)},"t6"),e[8]=N):N=e[8];let R=N,E;e[9]!==c||e[10]!==v||e[11]!==P?(E=a(I=>{e:switch(I.key){case"ArrowDown":{I.preventDefault(),u(_=>v.length===0?0:(_+1)%v.length);break e}case"ArrowUp":{I.preventDefault(),u(_=>v.length===0?0:(_-1+v.length)%v.length);break e}case"Enter":{I.preventDefault();let _=v[c];_!==void 0&&P(_);break e}}},"t7"),e[9]=c,e[10]=v,e[11]=P,e[12]=E):E=e[12];let T=E,k;e[13]===Symbol.for("react.memo_cache_sentinel")?(k=(0,ce.jsxDEV)(fe.Backdrop,{className:"fixed inset-0 z-50 bg-black/40 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0"},void 0,!1),e[13]=k):k=e[13];let w;e[14]!==s?(w=s("Command palette"),e[14]=s,e[15]=w):w=e[15];let O;e[16]!==w?(O=(0,ce.jsxDEV)(fe.Title,{className:"sr-only",children:w},void 0,!1),e[16]=w,e[17]=O):O=e[17];let V;e[18]===Symbol.for("react.memo_cache_sentinel")?(V=(0,ce.jsxDEV)("svg",{"aria-hidden":"true",className:"size-4 text-muted-foreground",fill:"none",stroke:"currentColor",strokeWidth:1.8,viewBox:"0 0 24 24",children:[(0,ce.jsxDEV)("circle",{cx:"11",cy:"11",r:"7"},void 0,!1),(0,ce.jsxDEV)("path",{d:"m21 21-4.3-4.3",strokeLinecap:"round"},void 0,!1)]},void 0,!0),e[18]=V):V=e[18];let W;e[19]!==s?(W=s("Search\u2026"),e[19]=s,e[20]=W):W=e[20];let D;e[21]!==T||e[22]!==d||e[23]!==W?(D=(0,ce.jsxDEV)("div",{className:"flex items-center gap-2 border-b border-border px-3",children:[V,(0,ce.jsxDEV)("input",{className:"h-11 w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground","data-testid":"dash-command-input",onChange:R,onKeyDown:T,placeholder:W,ref:g,type:"text",value:d},void 0,!1)]},void 0,!0),e[21]=T,e[22]=d,e[23]=W,e[24]=D):D=e[24];let H;e[25]!==c||e[26]!==v||e[27]!==P||e[28]!==s?(H=v.length===0?(0,ce.jsxDEV)("li",{className:"px-3 py-6 text-center text-sm text-muted-foreground",children:s("No results.")},void 0,!1):v.map((I,_)=>(0,ce.jsxDEV)(ll,{active:_===c,index:_,item:I,onActivate:u,onSelect:P},I.to,!1)),e[25]=c,e[26]=v,e[27]=P,e[28]=s,e[29]=H):H=e[29];let $;e[30]!==H?($=(0,ce.jsxDEV)("ul",{className:"max-h-80 overflow-y-auto p-1.5","data-testid":"dash-command-list",children:H},void 0,!1),e[30]=H,e[31]=$):$=e[31];let Z;e[32]!==O||e[33]!==D||e[34]!==$?(Z=(0,ce.jsxDEV)(fe.Portal,{children:[k,(0,ce.jsxDEV)(fe.Popup,{className:"fixed start-1/2 top-24 z-50 w-[36rem] max-w-[90vw] -translate-x-1/2 overflow-hidden rounded-lg border border-border bg-popover text-popover-foreground shadow-lg outline-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95","data-testid":"dash-command-palette",initialFocus:g,children:[O,D,$]},void 0,!0)]},void 0,!0),e[32]=O,e[33]=D,e[34]=$,e[35]=Z):Z=e[35];let K;return e[36]!==n||e[37]!==Z?(K=(0,ce.jsxDEV)(fe.Root,{onOpenChange:b,open:n,children:Z},void 0,!1),e[36]=n,e[37]=Z,e[38]=K):K=e[38],K},"CommandPalette");var Xa="(prefers-color-scheme: dark)",ei=a(()=>{try{return globalThis.localStorage}catch{return}},"store"),cl=a(t=>t==="system"||t==="light"||t==="dark","isPreference"),ti=a(()=>globalThis.matchMedia,"matchMedia"),oi="lunora-studio-theme",Br=["system","light","dark"],dl=a((t="system")=>{try{let e=ei()?.getItem(oi);return cl(e)?e:t}catch{return t}},"loadThemePreference"),Ga=a(t=>{let e=ei();if(e!==void 0)try{e.setItem(oi,t)}catch{}},"saveThemePreference"),pl=a(()=>{try{return ti()?.(Xa).matches?"dark":"light"}catch{return"light"}},"getSystemTheme"),ul=a((t,e)=>t==="system"?e:t,"resolveTheme"),fl=a(t=>{let e;try{e=ti()?.(Xa)}catch{e=void 0}if(e===void 0)return()=>{};let o=a(s=>{t(s.matches?"dark":"light")},"handler");return e.addEventListener("change",o),()=>{e.removeEventListener("change",o)}},"subscribeSystemTheme"),si=(0,q.createContext)(null),S0=a(({children:t,defaultTheme:e="system"})=>{let[o,s]=(0,q.useState)(()=>dl(e)),[r,n]=(0,q.useState)(()=>pl());(0,q.useEffect)(()=>fl(n),[]);let l=a(c=>{Ga(c),s(c)},"setTheme"),p={cycleTheme:a(()=>{s(c=>{let u=Br[(Br.indexOf(c)+1)%Br.length]??c;return Ga(u),u})},"cycleTheme"),resolvedTheme:ul(o,r),setTheme:l,systemTheme:r,theme:o};return(0,i.jsxDEV)(si,{value:p,children:t},void 0,!1)},"ThemeProvider"),ml=a(()=>{let t=(0,q.use)(si);if(t===null)throw new Zs("INTERNAL","useTheme must be used within a <ThemeProvider>");return t},"useTheme");function N0({delay:t=0,...e}){return(0,i.jsxDEV)(nt.Provider,{"data-slot":"tooltip-provider",delay:t,...e},void 0,!1)}a(N0,"TooltipProvider");function gl(t){let e=(0,B.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let s;return e[2]!==o?(s=(0,i.jsxDEV)(nt.Root,{"data-slot":"tooltip",...o},void 0,!1),e[2]=o,e[3]=s):s=e[3],s}a(gl,"Tooltip");function hl(t){let e=(0,B.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let s;return e[2]!==o?(s=(0,i.jsxDEV)(nt.Trigger,{"data-slot":"tooltip-trigger",...o},void 0,!1),e[2]=o,e[3]=s):s=e[3],s}a(hl,"TooltipTrigger");function vl({className:t,side:e="top",sideOffset:o=4,align:s="center",alignOffset:r=0,children:n,...l}){return(0,i.jsxDEV)(nt.Portal,{children:(0,i.jsxDEV)(nt.Positioner,{align:s,alignOffset:r,side:e,sideOffset:o,className:"isolate z-50",children:(0,i.jsxDEV)(nt.Popup,{"data-slot":"tooltip-content",className:z("z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pe-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-start-2 data-[side=inline-start]:slide-in-from-end-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-md data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",t),...l,children:[n,(0,i.jsxDEV)(nt.Arrow,{className:"z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-md bg-foreground fill-foreground data-[side=bottom]:top-1 data-[side=inline-end]:top-1/2! data-[side=inline-end]:-start-1 data-[side=inline-end]:-translate-y-1/2 data-[side=inline-start]:top-1/2! data-[side=inline-start]:-end-1 data-[side=inline-start]:-translate-y-1/2 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5"},void 0,!1)]},void 0,!0)},void 0,!1)},void 0,!1)}a(vl,"TooltipContent");var xl=a(t=>{let e=(0,B.c)(5),{className:o}=t,s;e[0]!==o?(s=z("h-full w-full text-foreground",o),e[0]=o,e[1]=s):s=e[1];let r;e[2]===Symbol.for("react.memo_cache_sentinel")?(r=(0,i.jsxDEV)("path",{d:"M 259.500 10.552 C 220.080 15.859, 182.424 32.566, 152.500 58.025 C 110.179 94.031, 85.380 137.183, 77.518 188.500 C 75.410 202.255, 74.569 225.677, 75.796 236.466 C 76.757 244.917, 76.683 245.692, 74.518 249.966 C 63.118 272.466, 53.141 303.876, 51.382 322.799 L 50.718 329.943 71.960 320.471 C 83.643 315.262, 93.326 311, 93.478 311 C 93.630 311, 96.547 316.063, 99.959 322.250 C 103.371 328.438, 107.249 334.850, 108.577 336.500 L 110.990 339.500 110.981 336 C 110.977 334.075, 111.499 324.991, 112.143 315.813 L 113.312 299.127 121.406 293.336 C 132.495 285.403, 149.593 271.554, 161 261.268 C 171.556 251.748, 189.116 235, 188.540 235 C 188.337 235, 183.069 238.648, 176.835 243.106 C 142.318 267.789, 68.537 314, 63.646 314 C 61.843 314, 72.791 281.179, 80.905 262.259 C 92.233 235.845, 107.473 212.389, 132.106 183.453 L 138.451 176 148.268 176 C 176.192 176, 197.512 187.154, 212.868 209.797 C 216.470 215.108, 217.035 216.595, 216.477 219.297 C 211.386 243.968, 202.359 274.496, 193.797 296 C 183.898 320.861, 167.147 352.101, 152.395 373.215 L 147.004 380.930 152.891 385.830 C 161.400 392.911, 165.563 396, 166.594 395.998 C 167.092 395.998, 168.772 391.641, 170.327 386.317 C 176.279 365.934, 188.422 338.749, 200.942 317.778 C 223.060 280.731, 256.432 244.369, 294.500 215.836 C 309.956 204.252, 313.937 201.603, 314.719 202.385 C 315.116 202.783, 315.449 213.096, 315.460 225.304 C 315.474 241.855, 315.021 250.405, 313.680 258.924 C 307.009 301.272, 291.175 336.677, 263.112 372 C 255.259 381.883, 227.182 410.673, 218.516 417.727 L 213.532 421.783 223.439 424.880 C 281.705 443.093, 349.165 436.018, 398.616 406.508 C 446.728 377.797, 483.322 331.466, 497.366 281.481 C 503.381 260.075, 504.480 250.741, 504.491 221 C 504.501 191.997, 503.598 184.047, 497.987 163.732 C 484.768 115.871, 452.505 72.708, 407.718 42.964 C 381.051 25.254, 352.818 14.828, 319.695 10.460 C 305.932 8.645, 273.298 8.695, 259.500 10.552",fillRule:"evenodd"},void 0,!1),e[2]=r):r=e[2];let n;return e[3]!==s?(n=(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:s,fill:"currentColor",viewBox:"0 0 543 446",children:r},void 0,!1),e[3]=s,e[4]=n):n=e[4],n},"BrandMark"),ri="lunora.studio.rulesBannerDismissed",bl=a(()=>{try{return globalThis.localStorage.getItem(ri)==="1"}catch{return!1}},"readBannerDismissed"),yl=a(()=>{try{globalThis.localStorage.setItem(ri,"1")}catch{}},"writeBannerDismissed"),Cl=a(()=>{let t=(0,B.c)(18),e=ae(),[o,s]=(0,q.useState)(Pl),r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r=a(()=>{s(!0),yl()},"t0"),t[0]=r):r=t[0];let n=r;if(o)return null;let l;t[1]===Symbol.for("react.memo_cache_sentinel")?(l=(0,i.jsxDEV)("span",{"aria-hidden":"true",className:"text-warning",children:"\u26A0"},void 0,!1),t[1]=l):l=t[1];let d;t[2]!==e?(d=e("Lunora AI rules aren't installed."),t[2]=e,t[3]=d):d=t[3];let p;t[4]===Symbol.for("react.memo_cache_sentinel")?(p=(0,i.jsxDEV)("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px]",children:"lunora rules install"},void 0,!1),t[4]=p):p=t[4];let c;t[5]!==e?(c=e("lets your coding agent use Lunora correctly."),t[5]=e,t[6]=c):c=t[6];let u;t[7]!==d||t[8]!==c?(u=(0,i.jsxDEV)("span",{children:[d," ",p," ",c]},void 0,!0),t[7]=d,t[8]=c,t[9]=u):u=t[9];let g;t[10]!==e?(g=e("Dismiss"),t[10]=e,t[11]=g):g=t[11];let m;t[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeWidth:1.8,viewBox:"0 0 24 24",children:(0,i.jsxDEV)("path",{d:"M18 6 6 18M6 6l12 12"},void 0,!1)},void 0,!1),t[12]=m):m=t[12];let h;t[13]!==g?(h=(0,i.jsxDEV)("button",{"aria-label":g,className:"ms-auto flex size-5 items-center justify-center rounded text-muted-foreground outline-none transition-colors hover:bg-accent hover:text-foreground focus-visible:bg-accent","data-testid":"dash-app-rules-banner-dismiss",onClick:n,type:"button",children:m},void 0,!1),t[13]=g,t[14]=h):h=t[14];let f;return t[15]!==u||t[16]!==h?(f=(0,i.jsxDEV)("div",{className:"flex shrink-0 items-center gap-2 border-b border-warning/30 bg-warning/10 px-6 py-2 text-[12px] text-foreground","data-testid":"dash-app-rules-banner",role:"note",children:[l,u,h]},void 0,!0),t[15]=u,t[16]=h,t[17]=f):f=t[17],f},"RulesBanner");function Pl(){return bl()}a(Pl,"_temp$1");var Rl=a(()=>{let t=(0,B.c)(1),e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.8,viewBox:"0 0 24 24",children:[(0,i.jsxDEV)("rect",{height:"14",rx:"2",width:"20",x:"2",y:"3"},void 0,!1),(0,i.jsxDEV)("path",{d:"M8 21h8M12 17v4"},void 0,!1)]},void 0,!0),t[0]=e):e=t[0],e},"MonitorIcon"),Sl=a(()=>{let t=(0,B.c)(1),e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.8,viewBox:"0 0 24 24",children:[(0,i.jsxDEV)("circle",{cx:"12",cy:"12",r:"4"},void 0,!1),(0,i.jsxDEV)("path",{d:"M12 2v2m0 16v2M4.9 4.9l1.4 1.4m11.4 11.4 1.4 1.4M2 12h2m16 0h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"},void 0,!1)]},void 0,!0),t[0]=e):e=t[0],e},"SunIcon"),Nl=a(()=>{let t=(0,B.c)(1),e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.8,viewBox:"0 0 24 24",children:(0,i.jsxDEV)("path",{d:"M21 12.8A9 9 0 1 1 11.2 3a7 7 0 0 0 9.8 9.8Z"},void 0,!1)},void 0,!1),t[0]=e):e=t[0],e},"MoonIcon"),El=[{Icon:Rl,value:"system"},{Icon:Sl,value:"light"},{Icon:Nl,value:"dark"}],Tl=a(()=>{let t=(0,B.c)(19),{theme:e,setTheme:o}=ml(),s=ae(),r;t[0]!==s?(r=s("Dark theme"),t[0]=s,t[1]=r):r=t[1];let n;t[2]!==s?(n=s("Light theme"),t[2]=s,t[3]=n):n=t[3];let l;t[4]!==s?(l=s("System theme"),t[4]=s,t[5]=l):l=t[5];let d;t[6]!==r||t[7]!==n||t[8]!==l?(d={dark:r,light:n,system:l},t[6]=r,t[7]=n,t[8]=l,t[9]=d):d=t[9];let p=d,c;t[10]!==s?(c=s("Theme"),t[10]=s,t[11]=c):c=t[11];let u;t[12]!==p||t[13]!==o||t[14]!==e?(u=El.map(m=>{let{Icon:h,value:f}=m,v=e===f;return(0,i.jsxDEV)("button",{"aria-checked":v,"aria-label":p[f],className:z("relative flex size-7 cursor-pointer items-center justify-center rounded-md outline-none transition-colors focus-visible:bg-accent",v?"text-foreground":"text-muted-foreground hover:text-foreground"),"data-testid":`dash-app-theme-${f}`,onClick:a(()=>{o(f)},"onClick"),role:"radio",title:p[f],type:"button",children:[v&&(0,i.jsxDEV)(Jr.span,{className:"absolute inset-0 rounded-md border border-muted-foreground/40 bg-background/40",layoutId:"studio-theme-active",transition:{bounce:.1,duration:.45,type:"spring"}},void 0,!1),(0,i.jsxDEV)("span",{className:"relative",children:(0,i.jsxDEV)(h,{},void 0,!1)},void 0,!1)]},f,!0)}),t[12]=p,t[13]=o,t[14]=e,t[15]=u):u=t[15];let g;return t[16]!==c||t[17]!==u?(g=(0,i.jsxDEV)("div",{"aria-label":c,className:"inline-flex items-center gap-0.5 overflow-hidden rounded-md border border-border bg-muted/60 p-0.5","data-testid":"dash-app-theme",role:"radiogroup",children:u},void 0,!1),t[16]=c,t[17]=u,t[18]=g):g=t[18],g},"ThemeToggle");function ni(t){let e=(0,B.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let s;return e[2]!==o?(s=(0,i.jsxDEV)(Ct.Root,{"data-slot":"popover",...o},void 0,!1),e[2]=o,e[3]=s):s=e[3],s}a(ni,"Popover");function ai(t){let e=(0,B.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let s;return e[2]!==o?(s=(0,i.jsxDEV)(Ct.Trigger,{"data-slot":"popover-trigger",...o},void 0,!1),e[2]=o,e[3]=s):s=e[3],s}a(ai,"PopoverTrigger");function ii({align:t="end",alignOffset:e=0,className:o,keepMounted:s=!1,side:r="bottom",sideOffset:n=6,...l}){return(0,i.jsxDEV)(Ct.Portal,{keepMounted:s,children:(0,i.jsxDEV)(Ct.Positioner,{align:t,alignOffset:e,className:"isolate z-50 outline-none",side:r,sideOffset:n,children:(0,i.jsxDEV)(Ct.Popup,{className:z("z-50 w-72 origin-(--transform-origin) rounded-lg border border-border bg-popover p-3 text-popover-foreground shadow-md outline-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",o),"data-slot":"popover-content",...l},void 0,!1)},void 0,!1)},void 0,!1)}a(ii,"PopoverContent");var Lr=768;function wl(){let t=(0,B.c)(2),[e,o]=(0,q.useState)(void 0),s,r;return t[0]===Symbol.for("react.memo_cache_sentinel")?(s=a(()=>{let n=globalThis.matchMedia(`(max-width: ${Lr-1}px)`),l=a(()=>{o(globalThis.innerWidth<Lr)},"onChange");return n.addEventListener("change",l),o(globalThis.innerWidth<Lr),()=>{n.removeEventListener("change",l)}},"t0"),r=[],t[0]=s,t[1]=r):(s=t[0],r=t[1]),(0,q.useEffect)(s,r),!!e}a(wl,"useIsMobile");function kl(t){let e=(0,B.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let s;return e[2]!==o?(s=(0,i.jsxDEV)(fe.Root,{"data-slot":"sheet",...o},void 0,!1),e[2]=o,e[3]=s):s=e[3],s}a(kl,"Sheet");function Ol(t){let e=(0,B.c)(4),o;e[0]!==t?({...o}=t,e[0]=t,e[1]=o):o=e[1];let s;return e[2]!==o?(s=(0,i.jsxDEV)(fe.Portal,{"data-slot":"sheet-portal",...o},void 0,!1),e[2]=o,e[3]=s):s=e[3],s}a(Ol,"SheetPortal");function Ml(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("fixed inset-0 z-50 bg-black/10 text-xs/relaxed transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)(fe.Backdrop,{"data-slot":"sheet-overlay",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Ml,"SheetOverlay");function _l({className:t,children:e,side:o="right",showCloseButton:s=!0,...r}){return(0,i.jsxDEV)(Ol,{children:[(0,i.jsxDEV)(Ml,{},void 0,!1),(0,i.jsxDEV)(fe.Popup,{"data-slot":"sheet-content","data-side":o,className:z("fixed z-50 flex flex-col bg-popover bg-clip-padding text-xs/relaxed text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-e data-[side=left]:data-ending-style:translate-x-[-2.5rem] rtl:data-[side=left]:data-ending-style:-translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] rtl:data-[side=left]:data-starting-style:-translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-s data-[side=right]:data-ending-style:translate-x-[2.5rem] rtl:data-[side=right]:data-ending-style:-translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] rtl:data-[side=right]:data-starting-style:-translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm",t),...r,children:[e,s&&(0,i.jsxDEV)(fe.Close,{"data-slot":"sheet-close",render:(0,i.jsxDEV)(ao,{variant:"ghost",className:"absolute top-3 end-3",size:"icon-sm"},void 0,!1),children:[(0,i.jsxDEV)(Qs,{icon:Mn,strokeWidth:2},void 0,!1),(0,i.jsxDEV)("span",{className:"sr-only",children:"Close"},void 0,!1)]},void 0,!0)]},void 0,!0)]},void 0,!0)}a(_l,"SheetContent");function Il(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("flex flex-col gap-0.5 p-4",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("div",{"data-slot":"sheet-header",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Il,"SheetHeader");function Dl(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("text-sm font-medium text-foreground",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)(fe.Title,{"data-slot":"sheet-title",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Dl,"SheetTitle");function Al(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("text-xs/relaxed text-muted-foreground",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)(fe.Description,{"data-slot":"sheet-description",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Al,"SheetDescription");var Vl="sidebar_state",Bl=3600*24*7,Ll="16rem",Fl="18rem",Hl="3rem",$l="b",li=ut.createContext(null);function Bs(){let t=ut.useContext(li);if(!t)throw new Zs("INTERNAL","useSidebar must be used within a SidebarProvider.");return t}a(Bs,"useSidebar");function jl({defaultOpen:t=!0,open:e,onOpenChange:o,className:s,style:r,children:n,...l}){let d=wl(),[p,c]=ut.useState(!1),[u,g]=ut.useState(t),m=e??u,h=a(b=>{let C=typeof b=="function"?b(m):b;o?o(C):g(C),document.cookie=`${Vl}=${C}; path=/; max-age=${Bl}`},"setOpen"),f=a(()=>d?c(b=>!b):h(b=>!b),"toggleSidebar");ut.useEffect(()=>{let b=a(C=>{C.key===$l&&(C.metaKey||C.ctrlKey)&&(C.preventDefault(),f())},"handleKeyDown");return globalThis.addEventListener("keydown",b),()=>globalThis.removeEventListener("keydown",b)},[f]);let x={state:m?"expanded":"collapsed",open:m,setOpen:h,isMobile:d,openMobile:p,setOpenMobile:c,toggleSidebar:f};return(0,i.jsxDEV)(li.Provider,{value:x,children:(0,i.jsxDEV)("div",{"data-slot":"sidebar-wrapper",style:{"--sidebar-width":Ll,"--sidebar-width-icon":Hl,...r},className:z("group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar",s),...l,children:n},void 0,!1)},void 0,!1)}a(jl,"SidebarProvider");function Ul({side:t="left",variant:e="sidebar",collapsible:o="offcanvas",className:s,children:r,dir:n,...l}){let{isMobile:d,state:p,openMobile:c,setOpenMobile:u}=Bs();return o==="none"?(0,i.jsxDEV)("div",{"data-slot":"sidebar",className:z("flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",s),...l,children:r},void 0,!1):d?(0,i.jsxDEV)(kl,{open:c,onOpenChange:u,...l,children:(0,i.jsxDEV)(_l,{dir:n,"data-sidebar":"sidebar","data-slot":"sidebar","data-mobile":"true",className:"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",style:{"--sidebar-width":Fl},side:t,children:[(0,i.jsxDEV)(Il,{className:"sr-only",children:[(0,i.jsxDEV)(Dl,{children:"Sidebar"},void 0,!1),(0,i.jsxDEV)(Al,{children:"Displays the mobile sidebar."},void 0,!1)]},void 0,!0),(0,i.jsxDEV)("div",{className:"flex h-full w-full flex-col",children:r},void 0,!1)]},void 0,!0)},void 0,!1):(0,i.jsxDEV)("div",{className:"group peer hidden text-sidebar-foreground md:block","data-state":p,"data-collapsible":p==="collapsed"?o:"","data-variant":e,"data-side":t,"data-slot":"sidebar",children:[(0,i.jsxDEV)("div",{"data-slot":"sidebar-gap",className:z("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180",e==="floating"||e==="inset"?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon)")},void 0,!1),(0,i.jsxDEV)("div",{"data-slot":"sidebar-container","data-side":t,className:z("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex",e==="floating"||e==="inset"?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-e group-data-[side=right]:border-s",s),...l,children:(0,i.jsxDEV)("div",{"data-sidebar":"sidebar","data-slot":"sidebar-inner",className:"flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-none group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border",children:r},void 0,!1)},void 0,!1)]},void 0,!0)}a(Ul,"Sidebar");function zl(t){let e=(0,B.c)(15),o,s,r;e[0]!==t?({className:o,onClick:s,...r}=t,e[0]=t,e[1]=o,e[2]=s,e[3]=r):(o=e[1],s=e[2],r=e[3]);let{toggleSidebar:n}=Bs(),l;e[4]!==o?(l=z(o),e[4]=o,e[5]=l):l=e[5];let d;e[6]!==s||e[7]!==n?(d=a(g=>{s?.(g),n()},"t2"),e[6]=s,e[7]=n,e[8]=d):d=e[8];let p,c;e[9]===Symbol.for("react.memo_cache_sentinel")?(p=(0,i.jsxDEV)(Qs,{icon:_n,strokeWidth:2,className:"rtl:rotate-180"},void 0,!1),c=(0,i.jsxDEV)("span",{className:"sr-only",children:"Toggle Sidebar"},void 0,!1),e[9]=p,e[10]=c):(p=e[9],c=e[10]);let u;return e[11]!==r||e[12]!==l||e[13]!==d?(u=(0,i.jsxDEV)(ao,{"data-sidebar":"trigger","data-slot":"sidebar-trigger",variant:"ghost",size:"icon-sm",className:l,onClick:d,...r,children:[p,c]},void 0,!0),e[11]=r,e[12]=l,e[13]=d,e[14]=u):u=e[14],u}a(zl,"SidebarTrigger");function Wl(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ms-0 md:peer-data-[variant=inset]:rounded-none md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ms-2",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("main",{"data-slot":"sidebar-inset",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Wl,"SidebarInset");function Zl(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("flex flex-col gap-2 p-2",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("div",{"data-slot":"sidebar-header","data-sidebar":"header",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Zl,"SidebarHeader");function ql(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("flex flex-col gap-2 p-2",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("div",{"data-slot":"sidebar-footer","data-sidebar":"footer",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(ql,"SidebarFooter");function Gl(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("flex min-h-0 flex-1 flex-col gap-0 overflow-x-hidden overflow-y-auto [scrollbar-color:color-mix(in_oklch,var(--muted-foreground)_25%,transparent)_transparent] [scrollbar-width:thin] [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-muted-foreground/25 [&::-webkit-scrollbar-track]:bg-transparent [&::-webkit-scrollbar]:w-1.5 hover:[scrollbar-color:color-mix(in_oklch,var(--muted-foreground)_50%,transparent)_transparent] hover:[&::-webkit-scrollbar-thumb]:bg-muted-foreground/50",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("div",{"data-slot":"sidebar-content","data-sidebar":"content",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Gl,"SidebarContent");function Kl(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("relative flex w-full min-w-0 flex-col p-2",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("div",{"data-slot":"sidebar-group","data-sidebar":"group",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Kl,"SidebarGroup");function Ql(t){let e=(0,B.c)(10),o,s,r,n;if(e[0]!==t){let{className:p,render:c,...u}=t;o=c,n=Gs,s="div",r=lt({className:z("flex h-8 shrink-0 items-center rounded-none px-2 text-xs text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",p)},u),e[0]=t,e[1]=o,e[2]=s,e[3]=r,e[4]=n}else o=e[1],s=e[2],r=e[3],n=e[4];let l;e[5]===Symbol.for("react.memo_cache_sentinel")?(l={slot:"sidebar-group-label",sidebar:"group-label"},e[5]=l):l=e[5];let d;return e[6]!==o||e[7]!==s||e[8]!==r?(d={defaultTagName:s,props:r,render:o,state:l},e[6]=o,e[7]=s,e[8]=r,e[9]=d):d=e[9],n(d)}a(Ql,"SidebarGroupLabel");function Yl(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("w-full text-xs",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("div",{"data-slot":"sidebar-group-content","data-sidebar":"group-content",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Yl,"SidebarGroupContent");function Ka(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("flex w-full min-w-0 flex-col gap-0",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("ul",{"data-slot":"sidebar-menu","data-sidebar":"menu",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Ka,"SidebarMenu");function Qa(t){let e=(0,B.c)(8),o,s;e[0]!==t?({className:o,...s}=t,e[0]=t,e[1]=o,e[2]=s):(o=e[1],s=e[2]);let r;e[3]!==o?(r=z("group/menu-item relative",o),e[3]=o,e[4]=r):r=e[4];let n;return e[5]!==s||e[6]!==r?(n=(0,i.jsxDEV)("li",{"data-slot":"sidebar-menu-item","data-sidebar":"menu-item",className:r,...s},void 0,!1),e[5]=s,e[6]=r,e[7]=n):n=e[7],n}a(Qa,"SidebarMenuItem");var Jl=Xr("peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-none p-2 text-start text-xs ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pe-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]"},size:{default:"h-8 text-xs",sm:"h-7 text-xs",lg:"h-12 text-xs group-data-[collapsible=icon]:p-0!"}},defaultVariants:{variant:"default",size:"default"}});function ci({render:t,isActive:e=!1,variant:o="default",size:s="default",tooltip:r,className:n,...l}){let{isMobile:d,state:p}=Bs(),c=Gs({defaultTagName:"button",props:lt({className:z(Jl({variant:o,size:s}),n)},l),render:r?(0,i.jsxDEV)(hl,{render:t},void 0,!1):t,state:{slot:"sidebar-menu-button",sidebar:"menu-button",size:s,active:e}});return r?(typeof r=="string"&&(r={children:r}),(0,i.jsxDEV)(gl,{children:[c,(0,i.jsxDEV)(vl,{side:"right",align:"center",hidden:p!=="collapsed"||d,...r},void 0,!1)]},void 0,!0)):c}a(ci,"SidebarMenuButton");var G=a((t,e)=>(0,q.lazy)(()=>t().then(o=>({default:o[e]}))),"lazyNamed"),Xl=G(()=>import("./chunk-WPNXY7IS.js"),"InsightsPanel"),ec=(0,q.lazy)(()=>import("./chunk-ZE6FT5Z3.js")),tc=(0,q.lazy)(()=>import("./chunk-ERJNDIXC.js")),oc=G(()=>import("./chunk-I7ZZRM7I.js"),"AnalyticsPanel"),sc=(0,q.lazy)(()=>import("./chunk-BXOYVWJR.js")),rc=G(()=>import("./chunk-NY6GDADQ.js"),"AuthConfigPanel"),nc=G(()=>import("./chunk-NC6MBMSI.js"),"AuthSessionsPanel"),ac=G(()=>import("./chunk-V6IWFYAQ.js"),"OrganizationsPanel"),ic=G(()=>import("./chunk-QDBOPDJ7.js"),"UsersPanel"),lc=G(()=>import("./chunk-FKACHRWO.js"),"ContainersPanel"),cc=G(()=>import("./chunk-QHFTGJPS.js"),"TableEditor"),dc=G(()=>import("./chunk-676HEBIR.js"),"ExportImportPanel"),pc=G(()=>import("./chunk-23C4TCRO.js"),"MigrationsPanel"),uc=G(()=>import("./chunk-XRNXOIVZ.js"),"PitrPanel"),fc=G(()=>import("./chunk-5ZAA2PVR.js"),"FlagsPanel"),mc=G(()=>import("./chunk-CWEAJUHW.js"),"FunctionRunner"),gc=G(()=>import("./chunk-J46WXQYL.js"),"FunctionStatsPanel"),hc=G(()=>import("./chunk-DECHEGIC.js"),"AuditPanel"),vc=G(()=>import("./chunk-6VO23MMW.js"),"LogDrainsPanel"),xc=(0,q.lazy)(()=>import("./chunk-YNZ7ARWW.js").then(t=>({default:t.LogsPanel}))),bc=G(()=>import("./chunk-AAVIFQ4Y.js"),"MailPanel"),yc=G(()=>import("./chunk-H6RKXQZU.js"),"SchedulePanel"),Cc=(0,q.lazy)(()=>import("./chunk-JVODY4EP.js")),Pc=G(()=>import("./chunk-SSI4G2MY.js"),"KvBrowser"),Rc=G(()=>import("./chunk-YTO65GHS.js"),"PaymentsPanel"),Sc=G(()=>import("./chunk-CICVBMEN.js"),"PermissionsPanel"),Nc=(0,q.lazy)(()=>import("./chunk-HZTGDL4L.js")),Ec=(0,q.lazy)(()=>import("./chunk-AJFQ3LNM.js")),Tc=(0,q.lazy)(()=>import("./chunk-FSGCANAU.js")),wc=G(()=>import("./chunk-BKW7FFEO.js"),"HealthPanel"),kc=G(()=>import("./chunk-TH45YG6Q.js"),"MetricsPanel"),Oc=G(()=>import("./chunk-7RE5UW27.js"),"SchemaViewer"),Mc=G(()=>import("./chunk-P5HJXCZS.js"),"SettingsPanel"),_c=G(()=>import("./chunk-AJULNB46.js"),"SqlEditorPanel"),Ic=G(()=>import("./chunk-OY3HD7BJ.js"),"FileBrowser"),Dc=G(()=>import("./chunk-N746FOQP.js"),"StorageRulesPanel"),Ac=G(()=>import("./chunk-V7SRH36W.js"),"VectorBrowser"),Vc=(0,q.lazy)(()=>import("./chunk-LYB5L53X.js")),di=(0,q.createContext)(null),Bc={analytics:(0,i.jsxDEV)("path",{d:"M5 20V10m6.5 10V4M18 20v-7M3 20h18"},void 0,!1),api:(0,i.jsxDEV)("path",{d:"m9 8-4 4 4 4m6-8 4 4-4 4M13 5l-2 14"},void 0,!1),audit:(0,i.jsxDEV)("path",{d:"M7 4h7l4 4v11a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1Zm6 0v5h5M9 13h6M9 16h6M9 10h2"},void 0,!1),authConfig:(0,i.jsxDEV)("path",{d:"M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm7.4-3a7.4 7.4 0 0 0-.1-1.2l2-1.6-2-3.4-2.4 1a7.3 7.3 0 0 0-2-1.2l-.4-2.6h-3.6l-.4 2.6a7.3 7.3 0 0 0-2 1.2l-2.4-1-2 3.4 2 1.6a7.4 7.4 0 0 0 0 2.4l-2 1.6 2 3.4 2.4-1a7.3 7.3 0 0 0 2 1.2l.4 2.6h3.6l.4-2.6a7.3 7.3 0 0 0 2-1.2l2.4 1 2-3.4-2-1.6a7.4 7.4 0 0 0 .1-1.2Z"},void 0,!1),authSessions:(0,i.jsxDEV)("path",{d:"M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18Zm0-13.5V12l4 2"},void 0,!1),containers:(0,i.jsxDEV)("path",{d:"M3 7.5 12 3l9 4.5v9L12 21l-9-4.5v-9Zm0 0 9 4.5m0 0 9-4.5m-9 4.5V21"},void 0,!1),dashboards:(0,i.jsxDEV)("path",{d:"M4 5h7v6H4V5Zm9 0h7v4h-7V5ZM4 14h7v5H4v-5Zm9-1h7v6h-7v-6Z"},void 0,!1),drains:(0,i.jsxDEV)("path",{d:"M5 5h14M7 5v6a5 5 0 0 0 10 0V5M10 16h4v3h-4zM12 19v2"},void 0,!1),data:(0,i.jsxDEV)("path",{d:"M5 6c0-1.4 3.1-2.5 7-2.5s7 1.1 7 2.5-3.1 2.5-7 2.5S5 7.4 5 6Zm0 0v12c0 1.4 3.1 2.5 7 2.5s7-1.1 7-2.5V6M5 12c0 1.4 3.1 2.5 7 2.5s7-1.1 7-2.5"},void 0,!1),export:(0,i.jsxDEV)("path",{d:"M12 3v11m0 0 4-4m-4 4-4-4M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2"},void 0,!1),fanout:(0,i.jsxDEV)("path",{d:"M12 5a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm-7 16a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm14 0a2 2 0 1 0 0-4 2 2 0 0 0 0 4ZM12 7v3.5M12 10.5 6 17m6-6.5 6 6.5"},void 0,!1),files:(0,i.jsxDEV)("path",{d:"M4 7a2 2 0 0 1 2-2h3l2 2.5h7a2 2 0 0 1 2 2V18a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V7Z"},void 0,!1),flags:(0,i.jsxDEV)("path",{d:"M6 21V4m0 0h11l-2 3 2 3H6"},void 0,!1),functions:(0,i.jsxDEV)("path",{d:"m9 8-4 4 4 4m6-8 4 4-4 4"},void 0,!1),health:(0,i.jsxDEV)("path",{d:"M3 12h4l2 6 4-14 2 8h6"},void 0,!1),home:(0,i.jsxDEV)("path",{d:"M3 11.5 12 4l9 7.5M5 10v9a1 1 0 0 0 1 1h4v-6h4v6h4a1 1 0 0 0 1-1v-9"},void 0,!1),insights:(0,i.jsxDEV)("path",{d:"M12 3a6 6 0 0 0-3.6 10.8c.5.4.8.9.9 1.5l.2 1.2h5l.2-1.2c.1-.6.4-1.1.9-1.5A6 6 0 0 0 12 3ZM9.5 20.5h5M10 18h4"},void 0,!1),kv:(0,i.jsxDEV)("path",{d:"M5 5h14v4H5V5Zm0 5h14v4H5v-4Zm0 5h14v4H5v-4Z"},void 0,!1),logs:(0,i.jsxDEV)("path",{d:"M5 6h14M5 10h14M5 14h9M5 18h11"},void 0,!1),mail:(0,i.jsxDEV)("path",{d:"M4 5h16v14H4V5Zm0 1.5 8 6 8-6"},void 0,!1),payments:(0,i.jsxDEV)("path",{d:"M3 7h18v10H3V7Zm0 3h18M7 14h4"},void 0,!1),metrics:(0,i.jsxDEV)("path",{d:"M5 20V10m6.5 10V4M18 20v-7M3 20h18"},void 0,!1),migrations:(0,i.jsxDEV)("path",{d:"M4 12a8 8 0 0 1 13.7-5.6L20 8M20 4v4h-4M20 12a8 8 0 0 1-13.7 5.6L4 16m0 4v-4h4"},void 0,!1),organizations:(0,i.jsxDEV)("path",{d:"M3 21V8l6-4 6 4v13M9 21v-5h2v5M15 11h6v10M18 14v.01M18 17v.01M6 9v.01M6 12v.01M6 15v.01"},void 0,!1),permissions:(0,i.jsxDEV)("path",{d:"M12 3 5 6v5c0 4.5 3 7.8 7 9 4-1.2 7-4.5 7-9V6l-7-3Zm-3 8 2.2 2.2L15 9.5M8.5 16h7"},void 0,!1),pitr:(0,i.jsxDEV)("path",{d:"M12 21a9 9 0 1 0-9-9M12 7.5V12l3 2M3 12l-2-2m2 2 2-2"},void 0,!1),queues:(0,i.jsxDEV)("path",{d:"M4 6h16M4 10h16M4 14h10M4 18h10m4-2 3 2-3 2v-4Z"},void 0,!1),realtime:(0,i.jsxDEV)("path",{d:"M5 12a7 7 0 0 1 14 0M8 12a4 4 0 0 1 8 0M12 12v8m0-8a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"},void 0,!1),rls:(0,i.jsxDEV)("path",{d:"M12 3 5 6v5c0 4.5 3 7.8 7 9 4-1.2 7-4.5 7-9V6l-7-3ZM8.5 10h7M8.5 13h7"},void 0,!1),schedule:(0,i.jsxDEV)("path",{d:"M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18Zm0-13.5V12l4 2"},void 0,!1),schema:(0,i.jsxDEV)("path",{d:"M4 5h16v14H4V5Zm0 5h16M10 10v9M4 14.5h16"},void 0,!1),sql:(0,i.jsxDEV)("path",{d:"M4 5h16v14H4V5Zm3 4 3 3-3 3m6 0h4"},void 0,!1),storageRules:(0,i.jsxDEV)("path",{d:"M7 10V7a5 5 0 0 1 10 0v3m-11 0h12a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-8a1 1 0 0 1 1-1Zm6 4v2"},void 0,!1),security:(0,i.jsxDEV)("path",{d:"M12 3 5 6v5c0 4.5 3 7.8 7 9 4-1.2 7-4.5 7-9V6l-7-3Zm-2.5 8.5 2 2 4-4"},void 0,!1),settings:(0,i.jsxDEV)("path",{d:"M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm7.4-3a7.4 7.4 0 0 0-.1-1.2l2-1.6-2-3.4-2.4 1a7.3 7.3 0 0 0-2-1.2l-.4-2.6H10.5l-.4 2.6a7.3 7.3 0 0 0-2 1.2l-2.4-1-2 3.4 2 1.6a7.4 7.4 0 0 0 0 2.4l-2 1.6 2 3.4 2.4-1a7.3 7.3 0 0 0 2 1.2l.4 2.6h3.6l.4-2.6a7.3 7.3 0 0 0 2-1.2l2.4 1 2-3.4-2-1.6a7.4 7.4 0 0 0 .1-1.2Z"},void 0,!1),users:(0,i.jsxDEV)("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.85M16 3.13A4 4 0 0 1 16 11"},void 0,!1),vectors:(0,i.jsxDEV)("path",{d:"M4 7l8-4 8 4-8 4-8-4Zm0 5 8 4 8-4M4 17l8 4 8-4"},void 0,!1),workflows:(0,i.jsxDEV)("path",{d:"M5 5h5v5H5V5Zm9 9h5v5h-5v-5ZM7.5 10v2a2 2 0 0 0 2 2H14m2.5-4V8a2 2 0 0 0-2-2H10"},void 0,!1)},Ya=[{key:"overview",tabs:["home","dashboards"]},{key:"database",tabs:["data","sql","schema","migrations","vectors","pitr","export"]},{key:"functions",tabs:["functions","api","workflows","queues","containers"]},{key:"auth",tabs:["users","organizations","authSessions","authConfig"]},{key:"storage",tabs:["files","storageRules","kv"]},{key:"observability",tabs:["logs","audit","realtime","fanout","metrics","analytics","health"]},{key:"advisors",tabs:["security","rls","permissions","insights"]},{key:"operations",tabs:["schedule","mail","drains","payments","flags"]},{key:"settings",tabs:["settings"]}],Lc={analytics:"analytics",authConfig:"auth",authSessions:"auth",containers:"containers",files:"storage",flags:"flags",kv:"kv",mail:"mail",organizations:"auth",payments:"payments",queues:"queues",schedule:"scheduler",storageRules:"storage",users:"auth",vectors:"vectors",workflows:"workflows"},Ja=a((t,e)=>{let o=Lc[t];return o===void 0||e[o]},"isTabVisible"),Fr=a(t=>{let e=(0,B.c)(2),{tab:o}=t,s=Bc[o],r;return e[0]!==s?(r=(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:"size-4 shrink-0",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:s},void 0,!1),e[0]=s,e[1]=r):r=e[1],r},"TabIcon"),Fc=a(t=>t,"exhaustiveRouteTabs"),pi=Fc(["home","data","sql","functions","api","workflows","queues","containers","schema","migrations","vectors","export","pitr","users","organizations","authSessions","authConfig","files","storageRules","kv","dashboards","metrics","analytics","health","security","rls","permissions","insights","logs","realtime","fanout","mail","payments","audit","schedule","drains","flags","settings"]),Hc=new Set(["api","data","sql"]),$c=a(t=>{let e=t.split("/").findLast(Boolean)??"";return pi.includes(e)?e:"home"},"tabFromPathname"),jc=a(t=>{let e=(0,B.c)(19),{chrome:o,connected:s}=t,r=ae(),n;e[0]!==r?(n=r("admin token"),e[0]=r,e[1]=n):n=e[1];let l;e[2]!==n?(l=(0,i.jsxDEV)("label",{className:"text-xs font-medium text-foreground",htmlFor:"dash-app-token",children:n},void 0,!1),e[2]=n,e[3]=l):l=e[3];let d;e[4]!==o.onTokenChange||e[5]!==o.token?(d=(0,i.jsxDEV)(ln,{className:"h-8","data-testid":"dash-app-token",id:"dash-app-token",onChange:o.onTokenChange,placeholder:"LUNORA_ADMIN_TOKEN",type:"password",value:o.token},void 0,!1),e[4]=o.onTokenChange,e[5]=o.token,e[6]=d):d=e[6];let p;e[7]!==s||e[8]!==r?(p=s&&(0,i.jsxDEV)("p",{className:"flex items-start gap-1.5 text-[11px] text-muted-foreground","data-testid":"dash-app-token-warning",role:"note",children:[(0,i.jsxDEV)("span",{"aria-hidden":"true",className:"text-warning",children:"\u26A0"},void 0,!1),r("Token rides the WebSocket URL \u2014 it can surface in browser DevTools and server logs. Use a dev-only token.")]},void 0,!0),e[7]=s,e[8]=r,e[9]=p):p=e[9];let c;e[10]!==o.clearToken||e[11]!==s||e[12]!==r?(c=s&&(0,i.jsxDEV)("button",{className:"self-start rounded-md border border-border px-2.5 py-1 text-xs font-medium outline-none transition-colors hover:bg-accent focus-visible:bg-accent","data-testid":"dash-app-clear-token",onClick:o.clearToken,type:"button",children:r("Clear")},void 0,!1),e[10]=o.clearToken,e[11]=s,e[12]=r,e[13]=c):c=e[13];let u;return e[14]!==l||e[15]!==d||e[16]!==p||e[17]!==c?(u=(0,i.jsxDEV)("div",{className:"flex flex-col gap-2",children:[l,d,p,c]},void 0,!0),e[14]=l,e[15]=d,e[16]=p,e[17]=c,e[18]=u):u=e[18],u},"ConnectPopoverContent"),Uc=a(t=>{let e=(0,B.c)(25),{current:o,group:s,groupLabel:r,selectTab:n,tabDescription:l,tabLabel:d}=t,p=s.tabs.includes(o)?"page":void 0,c=r[s.key],u=s.tabs[0],g;e[0]!==u?(g=(0,i.jsxDEV)(Fr,{tab:u},void 0,!1),e[0]=u,e[1]=g):g=e[1];let m;e[2]!==p||e[3]!==c||e[4]!==g?(m=(0,i.jsxDEV)(ai,{"aria-current":p,"aria-label":c,className:"mx-auto flex size-8 items-center justify-center rounded-md text-muted-foreground outline-none transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:bg-sidebar-accent data-[popup-open]:bg-sidebar-accent data-[popup-open]:text-sidebar-accent-foreground data-[popup-open]:shadow-xs aria-[current=page]:bg-sidebar-accent aria-[current=page]:text-sidebar-accent-foreground aria-[current=page]:shadow-xs",delay:120,openOnHover:!0,children:g},void 0,!1),e[2]=p,e[3]=c,e[4]=g,e[5]=m):m=e[5];let h=r[s.key],f;e[6]!==h?(f=(0,i.jsxDEV)("div",{className:"px-2 py-1.5 text-[11px] font-medium tracking-wider text-muted-foreground uppercase",children:h},void 0,!1),e[6]=h,e[7]=f):f=e[7];let v;if(e[8]!==o||e[9]!==s.tabs||e[10]!==n||e[11]!==l||e[12]!==d){let C;e[14]!==o||e[15]!==n||e[16]!==l||e[17]!==d?(C=a(P=>(0,i.jsxDEV)("button",{"aria-current":o===P?"page":void 0,className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-start text-[13px] text-foreground outline-none transition-colors hover:bg-accent focus-visible:bg-accent aria-[current=page]:bg-accent aria-[current=page]:font-medium [&_svg]:opacity-70 aria-[current=page]:[&_svg]:opacity-100","data-tab":P,"data-testid":`dash-tab-${P}`,onClick:n,title:l[P],type:"button",children:[(0,i.jsxDEV)(Fr,{tab:P},void 0,!1),(0,i.jsxDEV)("span",{children:d[P]},void 0,!1)]},P,!0),"t92"),e[14]=o,e[15]=n,e[16]=l,e[17]=d,e[18]=C):C=e[18],v=s.tabs.map(C),e[8]=o,e[9]=s.tabs,e[10]=n,e[11]=l,e[12]=d,e[13]=v}else v=e[13];let x;e[19]!==f||e[20]!==v?(x=(0,i.jsxDEV)(ii,{align:"start",className:"w-56 p-1",side:"right",sideOffset:8,children:[f,v]},void 0,!0),e[19]=f,e[20]=v,e[21]=x):x=e[21];let b;return e[22]!==m||e[23]!==x?(b=(0,i.jsxDEV)(ni,{children:[m,x]},void 0,!0),e[22]=m,e[23]=x,e[24]=b):b=e[24],b},"CollapsedGroupNav"),zc=a(t=>{let e=(0,B.c)(45),{chrome:o,collapsed:s,connected:r}=t,n=ae();if(o===null){let P;e[0]!==n?(P=n("Admin"),e[0]=n,e[1]=P):P=e[1];let N;e[2]===Symbol.for("react.memo_cache_sentinel")?(N=(0,i.jsxDEV)("span",{className:"flex size-8 items-center justify-center rounded-full bg-sidebar-accent text-[11px] font-medium",children:"C"},void 0,!1),e[2]=N):N=e[2];let R;e[3]!==n?(R=n("Admin"),e[3]=n,e[4]=R):R=e[4];let E;e[5]!==R?(E=(0,i.jsxDEV)("span",{className:"truncate text-[13px] font-medium",children:R},void 0,!1),e[5]=R,e[6]=E):E=e[6];let T;e[7]!==n?(T=n("Studio"),e[7]=n,e[8]=T):T=e[8];let k;e[9]!==T?(k=(0,i.jsxDEV)("span",{className:"truncate text-[11px] text-muted-foreground",children:T},void 0,!1),e[9]=T,e[10]=k):k=e[10];let w;e[11]!==E||e[12]!==k?(w=(0,i.jsxDEV)("span",{className:"grid flex-1 text-start leading-tight",children:[E,k]},void 0,!0),e[11]=E,e[12]=k,e[13]=w):w=e[13];let O;return e[14]!==P||e[15]!==w?(O=(0,i.jsxDEV)(ci,{className:"data-active:bg-transparent",size:"lg",tooltip:P,children:[N,w]},void 0,!0),e[14]=P,e[15]=w,e[16]=O):O=e[16],O}let l=s?"mx-auto size-8 justify-center":"w-full p-2",d;e[17]!==l?(d=z("flex items-center gap-2 rounded-md text-start outline-none transition-colors hover:bg-sidebar-accent focus-visible:bg-sidebar-accent",l),e[17]=l,e[18]=d):d=e[18];let p;e[19]!==r||e[20]!==n?(p=n(r?"Connected":"Not connected"),e[19]=r,e[20]=n,e[21]=p):p=e[21];let c=r?"bg-success":"bg-muted-foreground/50",u;e[22]!==c?(u=z("absolute -end-0.5 -bottom-0.5 size-2.5 rounded-full border-2 border-sidebar",c),e[22]=c,e[23]=u):u=e[23];let g;e[24]!==u?(g=(0,i.jsxDEV)("span",{className:"relative flex size-8 shrink-0 items-center justify-center rounded-full bg-sidebar-accent text-[11px] font-medium",children:["C",(0,i.jsxDEV)("span",{"aria-hidden":"true",className:u},void 0,!1)]},void 0,!0),e[24]=u,e[25]=g):g=e[25];let m;e[26]!==s||e[27]!==r||e[28]!==n?(m=!s&&(0,i.jsxDEV)(i.Fragment,{children:[(0,i.jsxDEV)("span",{className:"grid flex-1 text-start leading-tight",children:[(0,i.jsxDEV)("span",{className:"truncate text-[13px] font-medium",children:n("Admin")},void 0,!1),(0,i.jsxDEV)("span",{className:"truncate text-[11px] text-muted-foreground",children:n(r?"Connected":"Not connected")},void 0,!1)]},void 0,!0),(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:"size-4 text-muted-foreground",fill:"none",stroke:"currentColor",strokeWidth:1.7,viewBox:"0 0 24 24",children:(0,i.jsxDEV)("path",{d:"m8 9 4-4 4 4M8 15l4 4 4-4",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1)},void 0,!1)]},void 0,!0),e[26]=s,e[27]=r,e[28]=n,e[29]=m):m=e[29];let h;e[30]!==d||e[31]!==p||e[32]!==g||e[33]!==m?(h=(0,i.jsxDEV)(ai,{className:d,"data-testid":"dash-app-connect",title:p,children:[g,m]},void 0,!0),e[30]=d,e[31]=p,e[32]=g,e[33]=m,e[34]=h):h=e[34];let f=s?"end":"start",v=s?"right":"top",x;e[35]!==o||e[36]!==r?(x=(0,i.jsxDEV)(jc,{chrome:o,connected:r},void 0,!1),e[35]=o,e[36]=r,e[37]=x):x=e[37];let b;e[38]!==v||e[39]!==x||e[40]!==f?(b=(0,i.jsxDEV)(ii,{align:f,keepMounted:!0,side:v,children:x},void 0,!1),e[38]=v,e[39]=x,e[40]=f,e[41]=b):b=e[41];let C;return e[42]!==b||e[43]!==h?(C=(0,i.jsxDEV)(ni,{children:[h,b]},void 0,!0),e[42]=b,e[43]=h,e[44]=C):C=e[44],C},"SidebarFooterProfile"),Wc=a(t=>{let e=(0,B.c)(28),{chrome:o,connected:s,current:r,groupLabel:n,groups:l,selectTab:d,tabDescription:p,tabLabel:c}=t,u=ae(),{state:g}=Bs(),m=g==="collapsed",h=m&&"justify-center px-0",f;e[0]!==h?(f=z("flex items-center gap-2.5 px-1.5 py-1",h),e[0]=h,e[1]=f):f=e[1];let v;e[2]===Symbol.for("react.memo_cache_sentinel")?(v=(0,i.jsxDEV)(xl,{className:"size-9 shrink-0 text-foreground"},void 0,!1),e[2]=v):v=e[2];let x;e[3]!==m||e[4]!==s||e[5]!==u?(x=!m&&(0,i.jsxDEV)(i.Fragment,{children:[(0,i.jsxDEV)("span",{className:"grid flex-1 leading-tight",children:[(0,i.jsxDEV)("span",{className:"truncate text-sm font-semibold text-foreground",children:"lunora"},void 0,!1),(0,i.jsxDEV)("span",{className:"truncate text-[11px] text-muted-foreground",children:u("Studio")},void 0,!1)]},void 0,!0),(0,i.jsxDEV)(ho,{className:"px-1.5 text-[10px] tracking-wider uppercase",variant:"secondary",children:u(s?"Live":"Local")},void 0,!1)]},void 0,!0),e[3]=m,e[4]=s,e[5]=u,e[6]=x):x=e[6];let b;e[7]!==f||e[8]!==x?(b=(0,i.jsxDEV)(Zl,{children:(0,i.jsxDEV)("div",{className:f,children:[v,x]},void 0,!0)},void 0,!1),e[7]=f,e[8]=x,e[9]=b):b=e[9];let C;e[10]!==m||e[11]!==r||e[12]!==n||e[13]!==l||e[14]!==d||e[15]!==p||e[16]!==c?(C=m?l.map(E=>(0,i.jsxDEV)(Uc,{current:r,group:E,groupLabel:n,selectTab:d,tabDescription:p,tabLabel:c},E.key,!1)):l.map(E=>(0,i.jsxDEV)(Kl,{children:[(0,i.jsxDEV)(Ql,{className:"text-[11px] font-medium tracking-wider uppercase",children:n[E.key]},void 0,!1),(0,i.jsxDEV)(Yl,{children:(0,i.jsxDEV)(Ka,{children:E.tabs.map(T=>(0,i.jsxDEV)(Qa,{children:(0,i.jsxDEV)(ci,{className:"data-active:text-foreground dark:data-active:text-royal-amethyst data-active:shadow-[inset_2px_0_0_0_var(--royal-amethyst)]","data-tab":T,"data-testid":`dash-tab-${T}`,isActive:r===T,onClick:d,title:p[T],tooltip:p[T],children:[(0,i.jsxDEV)(Fr,{tab:T},void 0,!1),(0,i.jsxDEV)("span",{children:c[T]},void 0,!1)]},void 0,!0)},T,!1))},void 0,!1)},void 0,!1)]},E.key,!0)),e[10]=m,e[11]=r,e[12]=n,e[13]=l,e[14]=d,e[15]=p,e[16]=c,e[17]=C):C=e[17];let P;e[18]!==C?(P=(0,i.jsxDEV)(Gl,{children:C},void 0,!1),e[18]=C,e[19]=P):P=e[19];let N;e[20]!==o||e[21]!==m||e[22]!==s?(N=(0,i.jsxDEV)(ql,{children:(0,i.jsxDEV)(Ka,{children:(0,i.jsxDEV)(Qa,{children:(0,i.jsxDEV)(zc,{chrome:o,collapsed:m,connected:s},void 0,!1)},void 0,!1)},void 0,!1)},void 0,!1),e[20]=o,e[21]=m,e[22]=s,e[23]=N):N=e[23];let R;return e[24]!==b||e[25]!==P||e[26]!==N?(R=(0,i.jsxDEV)(Ul,{collapsible:"icon",variant:"inset",children:[b,P,N]},void 0,!0),e[24]=b,e[25]=P,e[26]=N,e[27]=R):R=e[27],R},"StudioSidebar"),ui=a(()=>{let t=(0,B.c)(1),e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,i.jsxDEV)("div",{className:"flex flex-col gap-4","data-testid":"dash-pending",children:[(0,i.jsxDEV)("div",{className:"flex items-center gap-2",children:[(0,i.jsxDEV)(cs,{className:"h-8 w-40"},void 0,!1),(0,i.jsxDEV)(cs,{className:"h-8 w-24"},void 0,!1)]},void 0,!0),(0,i.jsxDEV)(cs,{className:"h-72 w-full"},void 0,!1)]},void 0,!0),t[0]=e):e=t[0],e},"RoutePending"),Zc=a(()=>{let t=(0,B.c)(294),e=ae(),o=ft(),s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s={select:Yc},t[0]=s):s=t[0];let r=Gr(s),n,l;t[1]!==r?(n=$c(r),l=Hc.has(n),t[1]=r,t[2]=n,t[3]=l):(n=t[2],l=t[3]);let d=l,p=Dr(),c;t[4]!==p?(c=a(it=>({...it,tabs:it.tabs.filter(Lo=>Ja(Lo,p))}),"t2"),t[4]=p,t[5]=c):c=t[5];let u=Ya.map(c).filter(Jc),g,m;t[6]!==n||t[7]!==p||t[8]!==o?(g=a(()=>{Ja(n,p)||$e(o({replace:!0,to:"/home"}))},"t3"),m=[n,p,o],t[6]=n,t[7]=p,t[8]=o,t[9]=g,t[10]=m):(g=t[9],m=t[10]),(0,q.useEffect)(g,m);let h;t[11]!==e?(h=e("Analytics"),t[11]=e,t[12]=h):h=t[12];let f;t[13]!==e?(f=e("API"),t[13]=e,t[14]=f):f=t[14];let v;t[15]!==e?(v=e("Audit"),t[15]=e,t[16]=v):v=t[16];let x;t[17]!==e?(x=e("Configuration"),t[17]=e,t[18]=x):x=t[18];let b;t[19]!==e?(b=e("Sessions"),t[19]=e,t[20]=b):b=t[20];let C;t[21]!==e?(C=e("Containers"),t[21]=e,t[22]=C):C=t[22];let P;t[23]!==e?(P=e("Dashboards"),t[23]=e,t[24]=P):P=t[24];let N;t[25]!==e?(N=e("Data"),t[25]=e,t[26]=N):N=t[26];let R;t[27]!==e?(R=e("Log drains"),t[27]=e,t[28]=R):R=t[28];let E;t[29]!==e?(E=e("Export / Import"),t[29]=e,t[30]=E):E=t[30];let T;t[31]!==e?(T=e("Fan-out"),t[31]=e,t[32]=T):T=t[32];let k;t[33]!==e?(k=e("Files"),t[33]=e,t[34]=k):k=t[34];let w;t[35]!==e?(w=e("Flags"),t[35]=e,t[36]=w):w=t[36];let O;t[37]!==e?(O=e("Functions"),t[37]=e,t[38]=O):O=t[38];let V;t[39]!==e?(V=e("Health"),t[39]=e,t[40]=V):V=t[40];let W;t[41]!==e?(W=e("Home"),t[41]=e,t[42]=W):W=t[42];let D;t[43]!==e?(D=e("Performance"),t[43]=e,t[44]=D):D=t[44];let H;t[45]!==e?(H=e("KV"),t[45]=e,t[46]=H):H=t[46];let $;t[47]!==e?($=e("Logs"),t[47]=e,t[48]=$):$=t[48];let Z;t[49]!==e?(Z=e("Metrics"),t[49]=e,t[50]=Z):Z=t[50];let K;t[51]!==e?(K=e("Migrations"),t[51]=e,t[52]=K):K=t[52];let I;t[53]!==e?(I=e("Organizations"),t[53]=e,t[54]=I):I=t[54];let _;t[55]!==e?(_=e("Time Travel"),t[55]=e,t[56]=_):_=t[56];let U;t[57]!==e?(U=e("Mail"),t[57]=e,t[58]=U):U=t[58];let te;t[59]!==e?(te=e("Payments"),t[59]=e,t[60]=te):te=t[60];let re;t[61]!==e?(re=e("Permissions"),t[61]=e,t[62]=re):re=t[62];let ne;t[63]!==e?(ne=e("Queues"),t[63]=e,t[64]=ne):ne=t[64];let J;t[65]!==e?(J=e("Realtime"),t[65]=e,t[66]=J):J=t[66];let ee;t[67]!==e?(ee=e("RLS Policies"),t[67]=e,t[68]=ee):ee=t[68];let ie;t[69]!==e?(ie=e("Scheduled"),t[69]=e,t[70]=ie):ie=t[70];let Be;t[71]!==e?(Be=e("Schema"),t[71]=e,t[72]=Be):Be=t[72];let me;t[73]!==e?(me=e("Security"),t[73]=e,t[74]=me):me=t[74];let he;t[75]!==e?(he=e("Settings"),t[75]=e,t[76]=he):he=t[76];let ve;t[77]!==e?(ve=e("SQL editor"),t[77]=e,t[78]=ve):ve=t[78];let Le;t[79]!==e?(Le=e("Access Rules"),t[79]=e,t[80]=Le):Le=t[80];let L;t[81]!==e?(L=e("Users"),t[81]=e,t[82]=L):L=t[82];let Q;t[83]!==e?(Q=e("Vectors"),t[83]=e,t[84]=Q):Q=t[84];let X;t[85]!==e?(X=e("Workflows"),t[85]=e,t[86]=X):X=t[86];let xe;t[87]!==C||t[88]!==P||t[89]!==N||t[90]!==R||t[91]!==E||t[92]!==T||t[93]!==k||t[94]!==w||t[95]!==O||t[96]!==V||t[97]!==W||t[98]!==D||t[99]!==H||t[100]!==$||t[101]!==Z||t[102]!==K||t[103]!==I||t[104]!==_||t[105]!==U||t[106]!==te||t[107]!==re||t[108]!==ne||t[109]!==J||t[110]!==ee||t[111]!==ie||t[112]!==Be||t[113]!==me||t[114]!==he||t[115]!==ve||t[116]!==Le||t[117]!==L||t[118]!==Q||t[119]!==X||t[120]!==h||t[121]!==f||t[122]!==v||t[123]!==x||t[124]!==b?(xe={analytics:h,api:f,audit:v,authConfig:x,authSessions:b,containers:C,dashboards:P,data:N,drains:R,export:E,fanout:T,files:k,flags:w,functions:O,health:V,home:W,insights:D,kv:H,logs:$,metrics:Z,migrations:K,organizations:I,pitr:_,mail:U,payments:te,permissions:re,queues:ne,realtime:J,rls:ee,schedule:ie,schema:Be,security:me,settings:he,sql:ve,storageRules:Le,users:L,vectors:Q,workflows:X},t[87]=C,t[88]=P,t[89]=N,t[90]=R,t[91]=E,t[92]=T,t[93]=k,t[94]=w,t[95]=O,t[96]=V,t[97]=W,t[98]=D,t[99]=H,t[100]=$,t[101]=Z,t[102]=K,t[103]=I,t[104]=_,t[105]=U,t[106]=te,t[107]=re,t[108]=ne,t[109]=J,t[110]=ee,t[111]=ie,t[112]=Be,t[113]=me,t[114]=he,t[115]=ve,t[116]=Le,t[117]=L,t[118]=Q,t[119]=X,t[120]=h,t[121]=f,t[122]=v,t[123]=x,t[124]=b,t[125]=xe):xe=t[125];let se=xe,Fe={advisors:e("Advisors"),auth:e("Auth"),database:e("Database"),functions:e("Functions"),observability:e("Observability"),operations:e("Operations"),overview:e("Overview"),settings:e("Settings"),storage:e("Storage")},de;t[126]!==e?(de=e("Usage and latency from Analytics Engine \u2014 request volume, p50/p95, and hot shards."),t[126]=e,t[127]=de):de=t[127];let pe;t[128]!==e?(pe=e("Interactive OpenAPI reference and copy-paste snippets for your functions."),t[128]=e,t[129]=pe):pe=t[129];let Pe;t[130]!==e?(Pe=e("A durable log of admin state-changing operations."),t[130]=e,t[131]=Pe):Pe=t[131];let Re;t[132]!==e?(Re=e("Enabled plugins and session config (read-only)."),t[132]=e,t[133]=Re):Re=t[133];let Se;t[134]!==e?(Se=e("Browse and revoke active sessions across all users."),t[134]=e,t[135]=Se):Se=t[135];let Ne;t[136]!==e?(Ne=e("Live Cloudflare Containers \u2014 current lifecycle state per container from the log stream."),t[136]=e,t[137]=Ne):Ne=t[137];let Ee;t[138]!==e?(Ee=e("Chart widgets backed by saved read-only SQL queries."),t[138]=e,t[139]=Ee):Ee=t[139];let Te;t[140]!==e?(Te=e("Browse and edit rows across your shard and global tables."),t[140]=e,t[141]=Te):Te=t[141];let we;t[142]!==e?(we=e("Forward logs to Logpush, Tail Workers, or a webhook collector."),t[142]=e,t[143]=we):we=t[143];let ke;t[144]!==e?(ke=e("Export a shard to NDJSON, or import rows from it."),t[144]=e,t[145]=ke):ke=t[145];let Oe;t[146]!==e?(Oe=e("Realtime fan-out cost and per-topic subscriber counts for this shard."),t[146]=e,t[147]=Oe):Oe=t[147];let Me;t[148]!==e?(Me=e("Browse objects in your R2 storage buckets."),t[148]=e,t[149]=Me):Me=t[149];let ze;t[150]!==e?(ze=e("Inspect feature flags and their live evaluation under a targeting context."),t[150]=e,t[151]=ze):ze=t[151];let _e;t[152]!==e?(_e=e("Run registered queries, mutations, and actions."),t[152]=e,t[153]=_e):_e=t[153];let We;t[154]!==e?(We=e("At-a-glance connection, error, and shard signals."),t[154]=e,t[155]=We):We=t[155];let Ze;t[156]!==e?(Ze=e("Connection, health, and advisor summary for your deployment."),t[156]=e,t[157]=Ze):Ze=t[157];let qe;t[158]!==e?(qe=e("Surface slow functions, error spikes, and cache problems."),t[158]=e,t[159]=qe):qe=t[159];let Ge;t[160]!==e?(Ge=e("A live stream of recent function logs."),t[160]=e,t[161]=Ge):Ge=t[161];let Ke;t[162]!==e?(Ke=e("Per-shard health and aggregate metrics."),t[162]=e,t[163]=Ke):Ke=t[163];let Qe;t[164]!==e?(Qe=e("Review migration status and run them."),t[164]=e,t[165]=Qe):Qe=t[165];let at;t[166]!==e?(at=e("Browse and manage organizations, members, and invitations."),t[166]=e,t[167]=at):at=t[167];let Ye;t[168]!==e?(Ye=e("Restore a shard to a point in the last 30 days."),t[168]=e,t[169]=Ye):Ye=t[169];let ge;t[170]!==e?(ge=e("Email your app sent, captured in dev."),t[170]=e,t[171]=ge):ge=t[171];let Je;t[172]!==e?(Je=e("Synced customers, subscriptions, and webhook events."),t[172]=e,t[173]=Je):Je=t[173];let Xe;t[174]!==e?(Xe=e("Inspect access policies per table, and probe a function as any identity."),t[174]=e,t[175]=Xe):Xe=t[175];let Ie;t[176]!==e?(Ie=e("Inspect declared Cloudflare Queues \u2014 their producer bindings, consumer mode, and dead-letter queue."),t[176]=e,t[177]=Ie):Ie=t[177];let et;t[178]!==e?(et=e("Active WebSocket subscriptions on this shard."),t[178]=e,t[179]=et):et=t[179];let De;t[180]!==e?(De=e("Inspect row-level-security policies and roles, per table."),t[180]=e,t[181]=De):De=t[181];let tt;t[182]!==e?(tt=e("Inspect and cancel scheduled jobs."),t[182]=e,t[183]=tt):tt=t[183];let Ae;t[184]!==e?(Ae=e("Inspect each table and its columns."),t[184]=e,t[185]=Ae):Ae=t[185];let ot;t[186]!==e?(ot=e("Review admin gates, credentials, and log redaction."),t[186]=e,t[187]=ot):ot=t[187];let Ve;t[188]!==e?(Ve=e("Read-only deployment config \u2014 vars, secrets, and bindings."),t[188]=e,t[189]=Ve):Ve=t[189];let Tt;t[190]!==e?(Tt=e("Run read-only SQL against a shard."),t[190]=e,t[191]=Tt):Tt=t[191];let wt;t[192]!==e?(wt=e("Browse and edit key-value pairs in your Workers KV namespaces."),t[192]=e,t[193]=wt):wt=t[193];let kt;t[194]!==e?(kt=e("Inspect storage access rules \u2014 per bucket, operation, and key prefix."),t[194]=e,t[195]=kt):kt=t[195];let Ot;t[196]!==e?(Ot=e("Manage auth users \u2014 roles, bans, sessions, and identity."),t[196]=e,t[197]=Ot):Ot=t[197];let Mt;t[198]!==e?(Mt=e("Browse Vectorize indexes and run similarity searches."),t[198]=e,t[199]=Mt):Mt=t[199];let _t;t[200]!==e?(_t=e("Inspect declared Cloudflare Workflows and their bindings."),t[200]=e,t[201]=_t):_t=t[201];let Eo;t[202]!==de||t[203]!==pe||t[204]!==Pe||t[205]!==Re||t[206]!==Se||t[207]!==Ne||t[208]!==Ee||t[209]!==Te||t[210]!==we||t[211]!==ke||t[212]!==Oe||t[213]!==Me||t[214]!==ze||t[215]!==_e||t[216]!==We||t[217]!==Ze||t[218]!==qe||t[219]!==Ge||t[220]!==Ke||t[221]!==Qe||t[222]!==at||t[223]!==Ye||t[224]!==ge||t[225]!==Je||t[226]!==Xe||t[227]!==Ie||t[228]!==et||t[229]!==De||t[230]!==tt||t[231]!==Ae||t[232]!==ot||t[233]!==Ve||t[234]!==Tt||t[235]!==wt||t[236]!==kt||t[237]!==Ot||t[238]!==Mt||t[239]!==_t?(Eo={analytics:de,api:pe,audit:Pe,authConfig:Re,authSessions:Se,containers:Ne,dashboards:Ee,data:Te,drains:we,export:ke,fanout:Oe,files:Me,flags:ze,functions:_e,health:We,home:Ze,insights:qe,logs:Ge,metrics:Ke,migrations:Qe,organizations:at,pitr:Ye,mail:ge,payments:Je,permissions:Xe,queues:Ie,realtime:et,rls:De,schedule:tt,schema:Ae,security:ot,settings:Ve,sql:Tt,kv:wt,storageRules:kt,users:Ot,vectors:Mt,workflows:_t},t[202]=de,t[203]=pe,t[204]=Pe,t[205]=Re,t[206]=Se,t[207]=Ne,t[208]=Ee,t[209]=Te,t[210]=we,t[211]=ke,t[212]=Oe,t[213]=Me,t[214]=ze,t[215]=_e,t[216]=We,t[217]=Ze,t[218]=qe,t[219]=Ge,t[220]=Ke,t[221]=Qe,t[222]=at,t[223]=Ye,t[224]=ge,t[225]=Je,t[226]=Xe,t[227]=Ie,t[228]=et,t[229]=De,t[230]=tt,t[231]=Ae,t[232]=ot,t[233]=Ve,t[234]=Tt,t[235]=wt,t[236]=kt,t[237]=Ot,t[238]=Mt,t[239]=_t,t[240]=Eo):Eo=t[240];let fi=Eo,To;t[241]!==o?(To=a(it=>{$e(o({to:`/${it.currentTarget.dataset.tab??""}`}))},"t83"),t[241]=o,t[242]=To):To=t[242];let mi=To,wo,ko;t[243]!==n||t[244]!==se?(wo=a(()=>{typeof document<"u"&&(document.title=`${se[n]} \xB7 lunora`)},"t84"),ko=[n,se],t[243]=n,t[244]=se,t[245]=wo,t[246]=ko):(wo=t[245],ko=t[246]),(0,q.useEffect)(wo,ko);let gi=u.find(it=>it.tabs.includes(n))??Ya[0],Ls=u.flatMap(it=>it.tabs.map(Lo=>({group:Fe[it.key],label:se[Lo],to:`/${Lo}`}))),It=(0,q.use)(di),hi=It!==null&&It.token!=="",Oo;t[247]!==Ls?(Oo=(0,i.jsxDEV)(qa,{items:Ls},void 0,!1),t[247]=Ls,t[248]=Oo):Oo=t[248];let Mo;t[249]===Symbol.for("react.memo_cache_sentinel")?(Mo=(0,i.jsxDEV)(zl,{className:"-ms-1"},void 0,!1),t[249]=Mo):Mo=t[249];let Dt;t[250]!==e?(Dt=e("Breadcrumb"),t[250]=e,t[251]=Dt):Dt=t[251];let Fs=Fe[gi.key],At;t[252]!==Fs?(At=(0,i.jsxDEV)("span",{className:"text-muted-foreground",children:Fs},void 0,!1),t[252]=Fs,t[253]=At):At=t[253];let _o;t[254]===Symbol.for("react.memo_cache_sentinel")?(_o=(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:"size-3.5 text-muted-foreground/60",fill:"none",stroke:"currentColor",strokeWidth:1.7,viewBox:"0 0 24 24",children:(0,i.jsxDEV)("path",{d:"m9 6 6 6-6 6",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1)},void 0,!1),t[254]=_o):_o=t[254];let Hs=se[n],Vt;t[255]!==Hs?(Vt=(0,i.jsxDEV)("span",{className:"font-medium text-foreground",children:Hs},void 0,!1),t[255]=Hs,t[256]=Vt):Vt=t[256];let Bt;t[257]!==Dt||t[258]!==At||t[259]!==Vt?(Bt=(0,i.jsxDEV)("nav",{"aria-label":Dt,className:"flex items-center gap-1.5 text-[13px]",children:[At,_o,Vt]},void 0,!0),t[257]=Dt,t[258]=At,t[259]=Vt,t[260]=Bt):Bt=t[260];let Io;t[261]===Symbol.for("react.memo_cache_sentinel")?(Io=(0,i.jsxDEV)("svg",{"aria-hidden":"true",className:"size-3.5",fill:"none",stroke:"currentColor",strokeWidth:1.8,viewBox:"0 0 24 24",children:[(0,i.jsxDEV)("circle",{cx:"11",cy:"11",r:"7"},void 0,!1),(0,i.jsxDEV)("path",{d:"m21 21-4.3-4.3",strokeLinecap:"round"},void 0,!1)]},void 0,!0),t[261]=Io):Io=t[261];let Lt;t[262]!==e?(Lt=e("Search\u2026"),t[262]=e,t[263]=Lt):Lt=t[263];let Do;t[264]===Symbol.for("react.memo_cache_sentinel")?(Do=(0,i.jsxDEV)("kbd",{className:"ms-auto rounded border border-border bg-background px-1 font-sans text-[10px] text-muted-foreground",children:"\u2318K"},void 0,!1),t[264]=Do):Do=t[264];let Ft;t[265]!==Lt?(Ft=(0,i.jsxDEV)("button",{className:"mx-auto hidden h-8 w-72 items-center gap-2 rounded-lg border border-border bg-muted/40 px-3 text-xs text-muted-foreground transition-colors hover:bg-muted md:flex","data-testid":"dash-app-search",onClick:Za,type:"button",children:[Io,Lt,Do]},void 0,!0),t[265]=Lt,t[266]=Ft):Ft=t[266];let Ao;t[267]===Symbol.for("react.memo_cache_sentinel")?(Ao=(0,i.jsxDEV)("div",{className:"ms-auto flex items-center gap-1.5 md:ms-0",children:(0,i.jsxDEV)(Tl,{},void 0,!1)},void 0,!1),t[267]=Ao):Ao=t[267];let Ht;t[268]!==Bt||t[269]!==Ft?(Ht=(0,i.jsxDEV)("header",{className:"flex h-11 shrink-0 items-center gap-2 border-b border-border px-4","data-testid":"dash-app-header",children:[Mo,Bt,Ft,Ao]},void 0,!0),t[268]=Bt,t[269]=Ft,t[270]=Ht):Ht=t[270];let $t;t[271]!==It?.rulesInstalled?($t=It?.rulesInstalled===!1&&(0,i.jsxDEV)(Cl,{},void 0,!1),t[271]=It?.rulesInstalled,t[272]=$t):$t=t[272];let $s=`dash-tab-${n}`,js=d?"flex min-w-0 flex-1 flex-col overflow-hidden":"min-w-0 flex-1 overflow-auto p-6",Us=se[n],jt;t[273]!==e||t[274]!==Us?(jt=e("{title} failed",{title:Us}),t[273]=e,t[274]=Us,t[275]=jt):jt=t[275];let zs=se[n],Ut;t[276]!==e?(Ut=e("Try again"),t[276]=e,t[277]=Ut):Ut=t[277];let Vo;t[278]===Symbol.for("react.memo_cache_sentinel")?(Vo=(0,i.jsxDEV)(q.Suspense,{fallback:(0,i.jsxDEV)(ui,{},void 0,!1),children:(0,i.jsxDEV)(Wr,{},void 0,!1)},void 0,!1),t[278]=Vo):Vo=t[278];let zt;t[279]!==n||t[280]!==jt||t[281]!==zs||t[282]!==Ut?(zt=(0,i.jsxDEV)(ds,{fallbackTitle:jt,label:zs,retryLabel:Ut,children:Vo},n,!1),t[279]=n,t[280]=jt,t[281]=zs,t[282]=Ut,t[283]=zt):zt=t[283];let Wt;t[284]!==js||t[285]!==zt?(Wt=(0,i.jsxDEV)("div",{className:js,children:zt},void 0,!1),t[284]=js,t[285]=zt,t[286]=Wt):Wt=t[286];let Zt;t[287]!==$s||t[288]!==Wt?(Zt=(0,i.jsxDEV)("div",{"aria-labelledby":$s,className:"flex min-w-0 flex-1 flex-col overflow-hidden","data-testid":"dash-panel",id:"dash-panel",role:"tabpanel",children:Wt},void 0,!1),t[287]=$s,t[288]=Wt,t[289]=Zt):Zt=t[289];let Bo;return t[290]!==Ht||t[291]!==$t||t[292]!==Zt?(Bo=(0,i.jsxDEV)(Wl,{className:"overflow-hidden md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm",children:[Ht,$t,Zt]},void 0,!0),t[290]=Ht,t[291]=$t,t[292]=Zt,t[293]=Bo):Bo=t[293],(0,i.jsxDEV)(jl,{className:"min-h-0 flex-1","data-testid":"lunora-studio",children:[Oo,(0,i.jsxDEV)(Wc,{chrome:It,connected:hi,current:n,groupLabel:Fe,groups:u,selectTab:mi,tabDescription:fi,tabLabel:se},void 0,!1),Bo]},void 0,!0)},"StudioLayout"),qc=a(t=>{let e=(0,B.c)(5),{initialShardKey:o,schemaEditable:s}=t,r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r={strict:!1},e[0]=r):r=e[0];let n=Ur(r),{table:l}=n,d=typeof l=="string"?l:void 0,p;return e[1]!==o||e[2]!==d||e[3]!==s?(p=(0,i.jsxDEV)(Oc,{initialShardKey:o,initialTable:d,schemaEditable:s},void 0,!1),e[1]=o,e[2]=d,e[3]=s,e[4]=p):p=e[4],p},"SchemaRoutePanel"),Gc=a(()=>{let t=(0,B.c)(3),e=ft(),o,s;return t[0]!==e?(o=a(()=>{$e(e({replace:!0,to:"/home"}))},"t0"),s=[e],t[0]=e,t[1]=o,t[2]=s):(o=t[1],s=t[2]),(0,q.useEffect)(o,s),null},"NotFoundRedirect"),Kc=a(({basePath:t,dataEditable:e=!1,functions:o,initialShardKey:s,openApiSpec:r,openRpcSpec:n,runAsIdentity:l=!1,schemaEditable:d=!1,scheduledCancel:p,scheduledCron:c,scheduledLoad:u})=>{let g=zr({component:Zc}),m={analytics:(0,i.jsxDEV)(oc,{},void 0,!1),api:(0,i.jsxDEV)(sc,{functions:o,initialShardKey:s,openApiSpec:r,openRpcSpec:n},void 0,!1),audit:(0,i.jsxDEV)(hc,{initialShardKey:s},void 0,!1),authConfig:(0,i.jsxDEV)(rc,{},void 0,!1),authSessions:(0,i.jsxDEV)(nc,{},void 0,!1),containers:(0,i.jsxDEV)(lc,{},void 0,!1),dashboards:(0,i.jsxDEV)(Ec,{initialShardKey:s},void 0,!1),data:(0,i.jsxDEV)(cc,{editable:e,initialShardKey:s},void 0,!1),drains:(0,i.jsxDEV)(vc,{},void 0,!1),export:(0,i.jsxDEV)(dc,{initialShardKey:s},void 0,!1),fanout:(0,i.jsxDEV)(Tc,{initialShardKey:s},void 0,!1),files:(0,i.jsxDEV)(Ic,{},void 0,!1),kv:(0,i.jsxDEV)(Pc,{},void 0,!1),flags:(0,i.jsxDEV)(fc,{initialShardKey:s},void 0,!1),functions:(0,i.jsxDEV)("div",{className:"flex flex-col gap-8",children:[(0,i.jsxDEV)(gc,{functions:o,initialShardKey:s},void 0,!1),(0,i.jsxDEV)(mc,{functions:o,runAsIdentity:l},void 0,!1)]},void 0,!0),health:(0,i.jsxDEV)(wc,{initialShardKey:s},void 0,!1),home:(0,i.jsxDEV)(ja,{initialShardKey:s},void 0,!1),insights:(0,i.jsxDEV)(Xl,{initialShardKey:s},void 0,!1),logs:(0,i.jsxDEV)(xc,{initialShardKey:s},void 0,!1),metrics:(0,i.jsxDEV)(kc,{initialShardKey:s},void 0,!1),migrations:(0,i.jsxDEV)(pc,{initialShardKey:s},void 0,!1),organizations:(0,i.jsxDEV)(ac,{},void 0,!1),permissions:(0,i.jsxDEV)(Sc,{functions:o,runAsIdentity:l,schemaEditable:d},void 0,!1),pitr:(0,i.jsxDEV)(uc,{initialShardKey:s},void 0,!1),mail:(0,i.jsxDEV)(bc,{},void 0,!1),payments:(0,i.jsxDEV)(Rc,{},void 0,!1),queues:(0,i.jsxDEV)(Nc,{},void 0,!1),realtime:(0,i.jsxDEV)(Cc,{initialShardKey:s},void 0,!1),rls:(0,i.jsxDEV)(ec,{},void 0,!1),schedule:(0,i.jsxDEV)(yc,{loadCronJobs:c,scheduledCancel:p,scheduledLoad:u},void 0,!1),schema:(0,i.jsxDEV)(qc,{initialShardKey:s,schemaEditable:d},void 0,!1),security:(0,i.jsxDEV)(tc,{},void 0,!1),settings:(0,i.jsxDEV)(Mc,{initialShardKey:s},void 0,!1),sql:(0,i.jsxDEV)(_c,{initialShardKey:s},void 0,!1),storageRules:(0,i.jsxDEV)(Dc,{},void 0,!1),users:(0,i.jsxDEV)(ic,{},void 0,!1),vectors:(0,i.jsxDEV)(Ac,{},void 0,!1),workflows:(0,i.jsxDEV)(Vc,{},void 0,!1)},h=Ho({component:a(()=>m.home,"component"),getParentRoute:a(()=>g,"getParentRoute"),path:"/"}),f=pi.map(b=>b==="data"?Ho({component:a(()=>m[b],"component"),getParentRoute:a(()=>g,"getParentRoute"),path:`/${b}`,validateSearch:Hn}):Ho({component:a(()=>m[b],"component"),getParentRoute:a(()=>g,"getParentRoute"),path:`/${b}`})),v=g.addChildren([h,...f]),x="window"in globalThis?$r():jr({initialEntries:["/home"]});return Zr({...t===void 0||t==="/"?{}:{basepath:t},defaultNotFoundComponent:Gc,defaultPendingComponent:ui,defaultPendingMinMs:0,defaultPendingMs:0,history:x,routeTree:v})},"buildRouter"),Qc=a(t=>{let e=(0,B.c)(17),{basePath:o,chrome:s,dataEditable:r,functions:n,initialShardKey:l,openApiSpec:d,openRpcSpec:p,runAsIdentity:c,schemaEditable:u,scheduledCancel:g,scheduledCron:m,scheduledLoad:h}=t,f;e[0]!==o||e[1]!==r||e[2]!==n||e[3]!==l||e[4]!==d||e[5]!==p||e[6]!==c||e[7]!==g||e[8]!==m||e[9]!==h||e[10]!==u?(f=Kc({basePath:o,dataEditable:r,functions:n,initialShardKey:l,openApiSpec:d,openRpcSpec:p,runAsIdentity:c,schemaEditable:u,scheduledCancel:g,scheduledCron:m,scheduledLoad:h}),e[0]=o,e[1]=r,e[2]=n,e[3]=l,e[4]=d,e[5]=p,e[6]=c,e[7]=g,e[8]=m,e[9]=h,e[10]=u,e[11]=f):f=e[11];let v=f,x=s??null,b;e[12]!==v?(b=(0,i.jsxDEV)(qr,{router:v},void 0,!1),e[12]=v,e[13]=b):b=e[13];let C;return e[14]!==x||e[15]!==b?(C=(0,i.jsxDEV)(di,{value:x,children:b},void 0,!1),e[14]=x,e[15]=b,e[16]=C):C=e[16],C},"StudioShell"),E0=a(t=>{let e=(0,B.c)(17),{basePath:o,chrome:s,dataEditable:r,functions:n,i18n:l,initialShardKey:d,locale:p,openApiSpec:c,openRpcSpec:u,runAsIdentity:g,schemaEditable:m,scheduledCancel:h,scheduledCron:f,scheduledLoad:v}=t,x;e[0]!==o||e[1]!==s||e[2]!==r||e[3]!==n||e[4]!==d||e[5]!==c||e[6]!==u||e[7]!==g||e[8]!==h||e[9]!==f||e[10]!==v||e[11]!==m?(x=(0,i.jsxDEV)(Qc,{basePath:o,chrome:s,dataEditable:r,functions:n,initialShardKey:d,openApiSpec:c,openRpcSpec:u,runAsIdentity:g,scheduledCancel:h,scheduledCron:f,scheduledLoad:v,schemaEditable:m},void 0,!1),e[0]=o,e[1]=s,e[2]=r,e[3]=n,e[4]=d,e[5]=c,e[6]=u,e[7]=g,e[8]=h,e[9]=f,e[10]=v,e[11]=m,e[12]=x):x=e[12];let b=x;if(l===void 0&&p===void 0)return b;let C;return e[13]!==l||e[14]!==p||e[15]!==b?(C=(0,i.jsxDEV)(Wa,{i18n:l,locale:p,children:b},void 0,!1),e[13]=l,e[14]=p,e[15]=b,e[16]=C):C=e[16],C},"Studio");function Yc(t){return t.location.pathname}a(Yc,"_temp");function Jc(t){return t.tabs.length>0}a(Jc,"_temp2");export{ds as a,Wa as b,S0 as c,ml as d,N0 as e,xl as f,kl as g,_l as h,Il as i,Dl as j,E0 as k};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as w}from"./chunk-CACB34RQ.js";import"./chunk-XNJNSCLM.js";import{a as C,b as $,c as A,d as v,e as n,f as c}from"./chunk-GTM65MVX.js";import{a as S}from"./chunk-BOXSWNXZ.js";import{a as T}from"./chunk-TAD43CG5.js";import{b as k}from"./chunk-C7WTJLC3.js";import{a as N,e as R}from"./chunk-SEU5V7I6.js";import{b as y}from"./chunk-ZPP2KOR4.js";import"./chunk-CKSHCYGC.js";import"./chunk-GLUNBZRI.js";import"./chunk-ZHVTQ37P.js";import"./chunk-3OA7PECS.js";import{d as b}from"./chunk-E75ANNWX.js";import"./chunk-GMSGZDDH.js";import{a as p,e as x,g as O,h as B}from"./chunk-RRCPZMC2.js";var I=x(O(),1);var t=x(B(),1);var D=p((e,r)=>({delete:e("Delete"),list:e("List"),read:e("Read"),write:e("Write")})[r],"operationLabel"),E={delete:2,list:3,read:0,write:1},_=p(e=>[...e].toSorted((r,a)=>r.bucket.localeCompare(a.bucket)||E[r.on]-E[a.on]||(r.prefix??"").localeCompare(a.prefix??"")),"sortRules"),Q=p(()=>{let e=(0,I.c)(14),r=b(),a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a={},e[0]=a):a=e[0];let{data:l,error:d,errorSource:i}=k(S.storageRules,a),h=l!==void 0,f;if(e[1]!==l||e[2]!==d||e[3]!==i||e[4]!==h||e[5]!==r){let g=_(Array.isArray(l?.rules)?l.rules:[]),m;e[7]!==d||e[8]!==i?(m=d!==null&&(0,t.jsxDEV)(w,{error:i,testId:"storage-rules-error"},void 0,!1),e[7]=d,e[8]=i,e[9]=m):m=e[9];let s;e[10]!==r?(s=r("Storage rules are declared in code with defineStorageRule and gate ctx.storage access per bucket. This view is read-only."),e[10]=r,e[11]=s):s=e[11];let u;e[12]!==s?(u=(0,t.jsxDEV)("p",{className:"text-sm text-muted-foreground","data-testid":"storage-rules-note",children:s},void 0,!1),e[12]=s,e[13]=u):u=e[13],f=(0,t.jsxDEV)("div",{className:"flex flex-col gap-4","data-testid":"lunora-storage-rules-panel",children:[m,u,h&&g.length===0?(0,t.jsxDEV)(T,{description:r("No defineStorageRule is wired through .use(storageRules(...)) in this deployment. Add one to gate object access by key prefix."),testId:"storage-rules-empty",title:r("No storage rules defined")},void 0,!1):(0,t.jsxDEV)(N,{className:"overflow-hidden py-0",children:(0,t.jsxDEV)(R,{className:"px-0",children:(0,t.jsxDEV)(C,{"data-testid":"storage-rules-table",children:[(0,t.jsxDEV)($,{children:(0,t.jsxDEV)(v,{children:[(0,t.jsxDEV)(n,{children:r("Bucket")},void 0,!1),(0,t.jsxDEV)(n,{children:r("Operation")},void 0,!1),(0,t.jsxDEV)(n,{children:r("Key prefix")},void 0,!1),(0,t.jsxDEV)(n,{children:r("Guarded by")},void 0,!1)]},void 0,!0)},void 0,!1),(0,t.jsxDEV)(A,{children:g.map(o=>(0,t.jsxDEV)(v,{"data-testid":`storage-rule-${o.bucket}-${o.on}-${o.prefix??""}`,children:[(0,t.jsxDEV)(c,{className:"font-mono text-xs",children:o.bucket},void 0,!1),(0,t.jsxDEV)(c,{children:(0,t.jsxDEV)(y,{variant:"secondary",children:D(r,o.on)},void 0,!1)},void 0,!1),(0,t.jsxDEV)(c,{className:"font-mono text-xs",children:o.prefix??(0,t.jsxDEV)("span",{className:"text-muted-foreground",children:r("(whole bucket)")},void 0,!1)},void 0,!1),(0,t.jsxDEV)(c,{className:"font-mono text-xs text-muted-foreground",children:o.procedure},void 0,!1)]},`${o.bucket}:${o.on}:${o.prefix??""}:${o.procedure}`,!0))},void 0,!1)]},void 0,!0)},void 0,!1)},void 0,!1)]},void 0,!0),e[1]=l,e[2]=d,e[3]=i,e[4]=h,e[5]=r,e[6]=f}else f=e[6];return f},"StorageRulesPanel");export{Q as StorageRulesPanel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as H}from"./chunk-J6J54MBP.js";import{a as R,b as _,c as $,d as N,e as o,f as r}from"./chunk-GTM65MVX.js";import{c as S}from"./chunk-UK64ZSUW.js";import"./chunk-O3NAGRTR.js";import{a as w}from"./chunk-TAD43CG5.js";import{a as E}from"./chunk-C7WTJLC3.js";import{a as C,e as k}from"./chunk-SEU5V7I6.js";import"./chunk-CKSHCYGC.js";import{f as A}from"./chunk-GLUNBZRI.js";import"./chunk-ZHVTQ37P.js";import"./chunk-3OA7PECS.js";import{d as g,k as I,o as B}from"./chunk-E75ANNWX.js";import"./chunk-GMSGZDDH.js";import{a as m,e as T,g as j,h as z}from"./chunk-RRCPZMC2.js";var Q=T(j(),1);var t=T(z(),1);var L=200,K=m(()=>{let e=(0,Q.c)(21),d=A(),s=g(),u;e[0]===Symbol.for("react.memo_cache_sentinel")?(u=["lunora-auth-sessions",L],e[0]=u):u=e[0];let h;e[1]!==d?(h=m(()=>d.listAuthSessions({limit:L}),"t1"),e[1]=d,e[2]=h):h=e[2];let l=E(u,h),{error:v}=l,i=l.data?.rows??null,p;e[3]!==l?(p=m(()=>{l.refetch()},"t2"),e[3]=l,e[4]=p):p=e[4],H(p,!0);let x;e[5]!==d||e[6]!==l?(x=m(a=>{I((async()=>{await d.revokeAuthSession({sessionId:a}),l.refetch()})())},"t3"),e[5]=d,e[6]=l,e[7]=x):x=e[7];let y=x,n;e[8]!==v?(n=v!==null&&(0,t.jsxDEV)("p",{className:"text-sm text-destructive","data-testid":"auth-sessions-error",role:"alert",children:v},void 0,!1),e[8]=v,e[9]=n):n=e[9];let c;e[10]!==i||e[11]!==s?(c=i!==null&&i.length===0&&(0,t.jsxDEV)(w,{testId:"auth-sessions-empty",title:s("No active sessions.")},void 0,!1),e[10]=i,e[11]=s,e[12]=c):c=e[12];let f;e[13]!==y||e[14]!==i||e[15]!==s?(f=i!==null&&i.length>0&&(0,t.jsxDEV)(C,{className:"overflow-hidden py-0",children:(0,t.jsxDEV)(k,{className:"px-0",children:(0,t.jsxDEV)(R,{"data-testid":"auth-sessions-table",children:[(0,t.jsxDEV)(_,{children:(0,t.jsxDEV)(N,{children:[(0,t.jsxDEV)(o,{children:s("user")},void 0,!1),(0,t.jsxDEV)(o,{children:s("expires")},void 0,!1),(0,t.jsxDEV)(o,{children:s("ip")},void 0,!1),(0,t.jsxDEV)(o,{children:s("user agent")},void 0,!1),(0,t.jsxDEV)(o,{children:s("impersonated by")},void 0,!1),(0,t.jsxDEV)(o,{"aria-label":s("Actions")},void 0,!1)]},void 0,!0)},void 0,!1),(0,t.jsxDEV)($,{children:i.map(a=>(0,t.jsxDEV)(N,{"data-testid":`auth-session-${a.id}`,children:[(0,t.jsxDEV)(r,{className:"font-mono text-xs",children:a.userId},void 0,!1),(0,t.jsxDEV)(r,{className:"text-muted-foreground tabular-nums",children:B(a.expiresAt)},void 0,!1),(0,t.jsxDEV)(r,{children:a.ipAddress??""},void 0,!1),(0,t.jsxDEV)(r,{className:"max-w-40 truncate",children:a.userAgent??""},void 0,!1),(0,t.jsxDEV)(r,{className:"font-mono text-xs",children:a.impersonatedBy??""},void 0,!1),(0,t.jsxDEV)(r,{children:(0,t.jsxDEV)(S,{"data-testid":`auth-session-revoke-${a.id}`,onClick:m(()=>{y(a.id)},"onClick"),size:"xs",type:"button",variant:"ghost",children:s("Revoke")},void 0,!1)},void 0,!1)]},a.id,!0))},void 0,!1)]},void 0,!0)},void 0,!1)},void 0,!1),e[13]=y,e[14]=i,e[15]=s,e[16]=f):f=e[16];let b;return e[17]!==n||e[18]!==c||e[19]!==f?(b=(0,t.jsxDEV)("div",{className:"flex flex-col gap-4","data-testid":"auth-sessions",children:[n,c,f]},void 0,!0),e[17]=n,e[18]=c,e[19]=f,e[20]=b):b=e[20],b},"AuthSessionsPanel");export{K as AuthSessionsPanel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as T,b as w,c as A,d as C}from"./chunk-DC72CQY4.js";import{d as y,j as N}from"./chunk-E75ANNWX.js";import{a as i,e as b,f as x,g as E,h as I}from"./chunk-RRCPZMC2.js";var g=b(E(),1);var m=b(I(),1),S=b(x(),1);var _=50,B={value:{colors:{dark:["var(--chart-1)"],light:["var(--chart-1)"]},label:"value"}},J=i(s=>{let t=s.columns.find(l=>s.rows.length>0&&s.rows.every(n=>typeof n[l]=="number"))??null;return{label:s.columns.find(l=>l!==t)??null,value:t}},"pickColumns"),X=i(s=>{let t=(0,g.c)(15),{result:e}=s,l=y(),n;t[0]!==e?(n=J(e),t[0]=e,t[1]=n):n=t[1];let{label:o,value:r}=n,a;t[2]!==o||t[3]!==e||t[4]!==r?(a=r===null?[]:e.rows.slice(0,_).map((c,h)=>({label:o===null?`#${(h+1).toString()}`:N(c[o]),value:Number(c[r])||0})),t[2]=o,t[3]=e,t[4]=r,t[5]=a):a=t[5];let u=a;if(r===null){let c;t[6]!==l?(c=l("No numeric column to chart."),t[6]=l,t[7]=c):c=t[7];let h;return t[8]!==c?(h=(0,m.jsxDEV)("p",{className:"p-4 text-sm text-muted-foreground","data-testid":"sql-chart-empty",children:c},void 0,!1),t[8]=c,t[9]=h):h=t[9],h}let f,d,v;t[10]===Symbol.for("react.memo_cache_sentinel")?(f=(0,m.jsxDEV)(A,{dataKey:"label"},void 0,!1),d=(0,m.jsxDEV)(w,{dataKey:"value"},void 0,!1),v=(0,m.jsxDEV)(C,{},void 0,!1),t[10]=f,t[11]=d,t[12]=v):(f=t[10],d=t[11],v=t[12]);let p;return t[13]!==u?(p=(0,m.jsxDEV)("div",{className:"h-80 w-full p-3","data-testid":"sql-chart",children:(0,m.jsxDEV)(T,{className:"h-full w-full",config:B,data:u,children:[f,d,v]},void 0,!0)},void 0,!1),t[13]=u,t[14]=p):p=t[14],p},"SqlResultChart"),$=i(()=>{try{return globalThis.localStorage}catch{return}},"store"),R=i(function(s){try{let t=$()?.getItem(s)??void 0,e=t===void 0?[]:JSON.parse(t);return Array.isArray(e)?e:[]}catch{return[]}},"loadJsonArray"),V=i((s,t)=>{let e=$();if(e!==void 0)try{e.setItem(s,JSON.stringify(t))}catch{}},"saveJson"),q=i(function(s){let t=(0,g.c)(8),e;t[0]!==s?(e=i(()=>R(s),"t0"),t[0]=s,t[1]=e):e=t[1];let[l,n]=(0,S.useState)(e),o,r;t[2]!==s||t[3]!==l?(o=i(()=>{V(s,l)},"t1"),r=[s,l],t[2]=s,t[3]=l,t[4]=o,t[5]=r):(o=t[4],r=t[5]),(0,S.useEffect)(o,r);let a;return t[6]!==l?(a=[l,n],t[6]=l,t[7]=a):a=t[7],a},"usePersistedList"),D=i(function(s,t){let e=(0,g.c)(6),[l,n]=q(s),o;e[0]!==t||e[1]!==n?(o=i(f=>{n(d=>{let v=d[0]??t;return[typeof f=="function"?f(v):f]})},"t0"),e[0]=t,e[1]=n,e[2]=o):o=e[2];let r=o,a=l[0]??t,u;return e[3]!==r||e[4]!==a?(u=[a,r],e[3]=r,e[4]=a,e[5]=u):u=e[5],u},"usePersistedValue"),K=i(s=>globalThis.crypto?.randomUUID?.()??`${s}-${globalThis.performance.now().toString(36)}`,"newId");export{X as a,q as b,D as c,K as d};
|