okengine 0.15.2 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/site/content/docs/elements/flow.mdx +6 -0
- package/site/content/docs/elements/gate.mdx +55 -0
- package/site/content/docs/elements/store.mdx +13 -15
- package/site/content/docs/elements/vault.mdx +3 -0
- package/site/content/docs/reference/client.mdx +3 -0
- package/site/content/docs/reference/fx.mdx +29 -18
- package/site/content/docs/reference/security.md +1 -1
- package/src/auth/api-key-sql.test.ts +47 -0
- package/src/auth/api-key-sql.ts +254 -0
- package/src/auth/api-keys.ts +273 -14
- package/src/auth/auth.test.ts +56 -0
- package/src/auth/config.ts +5 -5
- package/src/auth/index.ts +25 -1
- package/src/auth/schema.ts +8 -0
- package/src/cli/attach-host-console.test.ts +37 -0
- package/src/cli/attach-host-console.ts +6 -0
- package/src/compiler/effects-infer.ts +17 -2
- package/src/console/server/access.test.ts +116 -8
- package/src/console/server/access.ts +70 -23
- package/src/console/server/app.ts +1 -0
- package/src/console/server/dev-identities.test.ts +127 -0
- package/src/console/server/dev-identities.ts +229 -0
- package/src/console/server/flows-invoke.test.ts +21 -4
- package/src/console/server/flows.ts +113 -58
- package/src/console/server/gates.test.ts +24 -0
- package/src/console/server/gates.ts +8 -21
- package/src/console/server/index.ts +1 -0
- package/src/console/server/live.test.ts +26 -1
- package/src/console/server/live.ts +4 -2
- package/src/console/server/operator-db.ts +2 -0
- package/src/console/server/state.ts +29 -55
- package/src/console/ui-next/dist/assets/access-page-CAGHrA9H.js +4 -0
- package/src/console/ui-next/dist/assets/{agent-disclosure-C0X1fbWF.js → agent-disclosure-BP0Y0Sux.js} +1 -1
- package/src/console/ui-next/dist/assets/cache-glyph-B5X-NM0-.js +1 -0
- package/src/console/ui-next/dist/assets/call-pii-button-ChAUiLo9.js +1 -0
- package/src/console/ui-next/dist/assets/collapsible-DGnOM2ph.js +1 -0
- package/src/console/ui-next/dist/assets/copy-inline-button-DBHhgHKP.js +1 -0
- package/src/console/ui-next/dist/assets/detail-header-DhHM1iaZ.js +1 -0
- package/src/console/ui-next/dist/assets/dropdown-menu-_NjTEo5_.js +1 -0
- package/src/console/ui-next/dist/assets/element-icons-BVXtRyd3.js +1 -0
- package/src/console/ui-next/dist/assets/explorer-empty-2uIhBu0_.js +1 -0
- package/src/console/ui-next/dist/assets/flows-page-B-OUtiAu.js +1 -0
- package/src/console/ui-next/dist/assets/{highlighted-json-CS_O8L-r.js → highlighted-json-Awq7gYdu.js} +1 -1
- package/src/console/ui-next/dist/assets/http-method-_UHM2ODJ.js +1 -0
- package/src/console/ui-next/dist/assets/index-CGoZkILK.js +66 -0
- package/src/console/ui-next/dist/assets/index-Ck88Jmv8.css +2 -0
- package/src/console/ui-next/dist/assets/link-BX6Vqztd.js +1 -0
- package/src/console/ui-next/dist/assets/observability-page-BDyXalNR.js +4 -0
- package/src/console/ui-next/dist/assets/replica-lag-DKRrbvdo.js +18 -0
- package/src/console/ui-next/dist/assets/request-meta-DV0ywz7t.js +1 -0
- package/src/console/ui-next/dist/assets/shortcut-JQIZlWfm.js +1 -0
- package/src/console/ui-next/dist/assets/shortcut-keys-DKxNTe_m.js +1 -0
- package/src/console/ui-next/dist/assets/skeleton-D-czQJT6.js +1 -0
- package/src/console/ui-next/dist/assets/store-page-Xh8Kn3rx.js +41 -0
- package/src/console/ui-next/dist/assets/trace-detail-sheet-B09O8rA6.js +2 -0
- package/src/console/ui-next/dist/assets/tree-expand-toggle-DkOXA12R.js +54 -0
- package/src/console/ui-next/dist/assets/units-page-Dpk40kOQ.js +1 -0
- package/src/console/ui-next/dist/assets/{use-vault-list-BLbZhzyF.js → use-vault-list-uk4WVboC.js} +1 -1
- package/src/console/ui-next/dist/assets/useMutation-B8EO02Ej.js +1 -0
- package/src/console/ui-next/dist/assets/useRender-BE2A9BWC.js +1 -0
- package/src/console/ui-next/dist/assets/vault-page-B1dB9Ft0.js +2 -0
- package/src/console/ui-next/dist/index.html +11 -9
- package/src/console/ui-next/index.html +3 -3
- package/src/console/ui-next/src/client.ts +167 -0
- package/src/console/ui-next/src/components/shell/app-sidebar.tsx +2 -0
- package/src/console/ui-next/src/components/shell/command-items.test.ts +1 -0
- package/src/console/ui-next/src/components/shell/command-items.ts +8 -0
- package/src/console/ui-next/src/components/shell/shell-layout.tsx +2 -1
- package/src/console/ui-next/src/components/ui/sheet-form.tsx +8 -3
- package/src/console/ui-next/src/features/access/access-page.tsx +347 -0
- package/src/console/ui-next/src/features/access/data/use-access.ts +23 -0
- package/src/console/ui-next/src/features/access/detail/access-detail.tsx +552 -0
- package/src/console/ui-next/src/features/access/explorer/access-list.tsx +125 -0
- package/src/console/ui-next/src/features/access/lib/format-when.test.ts +139 -0
- package/src/console/ui-next/src/features/access/lib/format-when.ts +296 -0
- package/src/console/ui-next/src/features/access/lib/scope-groups.test.ts +34 -0
- package/src/console/ui-next/src/features/access/lib/scope-groups.ts +40 -0
- package/src/console/ui-next/src/features/access/sheets/access-allow-fields.tsx +236 -0
- package/src/console/ui-next/src/features/access/sheets/access-create-sheet.tsx +316 -0
- package/src/console/ui-next/src/features/access/sheets/access-edit-sheet.tsx +240 -0
- package/src/console/ui-next/src/features/access/sheets/access-expiry-fields.tsx +66 -0
- package/src/console/ui-next/src/features/access/sheets/access-refresh-sheet.tsx +104 -0
- package/src/console/ui-next/src/features/access/sheets/access-scope-field.tsx +115 -0
- package/src/console/ui-next/src/features/access/sheets/access-secret-sheet.tsx +89 -0
- package/src/console/ui-next/src/features/access/sheets/access-sheet-search.tsx +49 -0
- package/src/console/ui-next/src/features/access/state/access-selection.ts +84 -0
- package/src/console/ui-next/src/features/auth/auth-redirect.test.ts +5 -0
- package/src/console/ui-next/src/features/auth/auth-redirect.ts +18 -2
- package/src/console/ui-next/src/features/not-found/not-found-page.tsx +1 -1
- package/src/console/ui-next/src/lib/document-meta.test.ts +1 -0
- package/src/console/ui-next/src/lib/document-meta.ts +2 -1
- package/src/console/ui-next/src/lib/last-module-search.test.ts +1 -0
- package/src/console/ui-next/src/lib/last-module-search.ts +2 -1
- package/src/console/ui-next/src/lib/shortcut.test.ts +2 -0
- package/src/console/ui-next/src/lib/shortcut.ts +3 -0
- package/src/console/ui-next/src/router.tsx +10 -1
- package/src/console/ui-next/ui-next-seed-app-schema.ts +88 -37
- package/src/console/ui-next/ui-next-seed-store.ts +43 -15
- package/src/console/xss.gate.test.ts +1 -0
- package/src/elements/gate/declare.ts +2 -0
- package/src/elements/store/cache.ts +1 -1
- package/src/elements/store/runtime.ts +14 -0
- package/src/elements/store/schema-decl.ts +99 -41
- package/src/elements/store/sql-select.types.test.ts +71 -0
- package/src/elements/store/sql-session.ts +54 -32
- package/src/elements/store.ts +3 -0
- package/src/index.ts +1 -0
- package/src/kernel/api-key-host-persist.test.ts +143 -0
- package/src/kernel/app.ts +14 -2
- package/src/kernel/auth-resolve.ts +10 -5
- package/src/kernel/boot.test.ts +4 -4
- package/src/kernel/fx-auth-keys.test.ts +88 -0
- package/src/kernel/fx-auth-keys.ts +198 -0
- package/src/kernel/fx.test.ts +17 -1
- package/src/kernel/fx.ts +36 -18
- package/src/kernel/pipeline-api-key.test.ts +192 -7
- package/src/kernel/pipeline.ts +4 -2
- package/src/manifest/types.ts +9 -3
- package/src/release/build-lib.ts +1 -0
- package/src/console/ui-next/dist/assets/cache-glyph-F1FI122b.js +0 -1
- package/src/console/ui-next/dist/assets/call-pii-button-DEDCl_j3.js +0 -1
- package/src/console/ui-next/dist/assets/collapsible-LPqGvfoz.js +0 -1
- package/src/console/ui-next/dist/assets/confirm-sheet-3ptDzXbz.js +0 -1
- package/src/console/ui-next/dist/assets/explorer-empty-BvYrygyO.js +0 -1
- package/src/console/ui-next/dist/assets/flows-page-Dluo1Bd7.js +0 -1
- package/src/console/ui-next/dist/assets/http-method--sWDdXSB.js +0 -1
- package/src/console/ui-next/dist/assets/index-Ca3HZMVq.js +0 -66
- package/src/console/ui-next/dist/assets/index-UtTDRQpS.css +0 -2
- package/src/console/ui-next/dist/assets/link-COeyggt-.js +0 -1
- package/src/console/ui-next/dist/assets/observability-page-HK9-BO8z.js +0 -4
- package/src/console/ui-next/dist/assets/replica-lag-DBIFFf7d.js +0 -18
- package/src/console/ui-next/dist/assets/sheet-form-Dnwa5oOR.js +0 -1
- package/src/console/ui-next/dist/assets/shortcut-Cgzuv4k1.js +0 -1
- package/src/console/ui-next/dist/assets/shortcut-keys-CoqwEIi0.js +0 -1
- package/src/console/ui-next/dist/assets/skeleton-BHcfDYcb.js +0 -1
- package/src/console/ui-next/dist/assets/store-page-BSohH3wM.js +0 -41
- package/src/console/ui-next/dist/assets/trace-detail-sheet-CFIGRnnA.js +0 -2
- package/src/console/ui-next/dist/assets/tree-expand-toggle-BgLl34w7.js +0 -54
- package/src/console/ui-next/dist/assets/units-page-B0cFE76A.js +0 -1
- package/src/console/ui-next/dist/assets/vault-page-B1SbYe10.js +0 -2
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{$ as t,$t as n,At as r,B as i,Bn as a,Bt as o,C as s,Cn as c,Cr as l,Ct as u,Dn as d,Dt as f,En as p,Et as m,Fn as h,Ft as g,Gn as _,Gt as v,H as y,Hn as b,Ht as x,In as S,It as C,Jn as w,Jt as T,K as ee,Kn as E,Kt as D,Ln as O,Lt as k,Mn as A,Mt as j,Nn as M,Nt as N,On as P,Ot as te,Pn as F,Q as I,Rn as ne,Rt as L,S as re,Sn as R,St as z,T as B,Tn as V,Tr as H,Tt as ie,U,Un as W,Ut as ae,V as G,Vn as oe,Vt as K,W as q,Wn as se,Wt as ce,X as le,Xn as ue,Yn as J,Z as de,Zn as fe,Zt as pe,an as me,at as he,bn as ge,cn as _e,ct as ve,dt as ye,en as Y,et as be,ft as xe,g as Se,gn as Ce,gt as we,ht as Te,in as X,it as Ee,jn as De,jt as Oe,k as ke,kn as Ae,kt as je,ln as Me,lt as Ne,m as Pe,mt as Fe,nn as Ie,nt as Le,ot as Re,pn as ze,pt as Be,q as Ve,qn as He,rt as Ue,sn as We,sr as Ge,st as Ke,ta as qe,tn as Je,tt as Ye,un as Xe,ut as Ze,v as Qe,vn as $e,vt as et,w as tt,wn as nt,wr as Z,wt as rt,xn as it,xt as at,yn as ot,z as st,zn as ct,zt as lt}from"./shortcut-keys-CoqwEIi0.js";import{n as ut,r as dt}from"./react-dom-Bph1y7z7.js";import{A as ft}from"./xyflow-D7n4g6go.js";var Q=e(dt(),1);function pt(e,t={}){let{enabled:r=!0,event:i=`click`,toggle:a=!0,ignoreMouse:o=!1,stickIfOpen:s=!0,touchOpenDelay:l=0,reason:u=Ce}=t,d=`rootStore`in e?e.rootStore:e,f=d.context.dataRef,p=Q.useRef(void 0),m=n(),g=oe(),v=Q.useMemo(()=>{function e(e,t,n,r){let i=X(u,t,n);e&&r===`touch`&&l>0?g.start(l,()=>{d.setOpen(!0,i)}):d.setOpen(e,i)}function t(e,t,n){let r=f.current.openEvent,i=d.select(`domReferenceElement`)!==t;return e&&i||!e||!a?!0:r&&s?!n(r.type):!1}return{onPointerDown(e){p.current=M(e.pointerType,!0)&&h(e.nativeEvent)?`virtual`:e.pointerType},onMouseDown(n){let r=p.current,a=n.nativeEvent,s=d.select(`open`);if(n.button!==0||i===`click`||M(r,!0)&&o)return;let l=t(s,n.currentTarget,e=>e===`click`||e===`mousedown`),u=c(a);if(ge(u)){e(l,a,u,r);return}let f=n.currentTarget;m.request(()=>{e(l,a,f,r)})},onClick(n){if(i===`mousedown-only`)return;let r=p.current;if(i===`mousedown`&&r){p.current=void 0;return}M(r,!0)&&o||e(t(d.select(`open`),n.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),n.nativeEvent,n.currentTarget,r)},onKeyDown(){p.current=void 0}}},[f,i,o,u,d,s,a,m,g,l]);return Q.useMemo(()=>r?{reference:v}:_,[r,v])}var mt=`Escape`;function ht(e){return ne&&e.movementX===0&&e.movementY===0}function gt(e,t,n){switch(e){case`vertical`:return t;case`horizontal`:return n;default:return t||n}}function _t(e,t){return gt(t,e===`ArrowUp`||e===`ArrowDown`,e===`ArrowLeft`||e===`ArrowRight`)}function vt(e,t,n){return gt(t,e===`ArrowDown`,n?e===`ArrowLeft`:e===`ArrowRight`)||e===`Enter`||e===` `||e===``}function yt(e,t,n){return gt(t,n?e===V:e===p,e===nt)}function bt(e,t,n,r){return t===`both`||t===`horizontal`&&r?e===mt:gt(t,n?e===p:e===V,e===d)}function xt(e,t){let{listRef:r,activeIndex:i,onNavigate:a=()=>{},enabled:o=!0,selectedIndex:s=null,allowEscape:l=!1,loopFocus:u=!1,nested:d=!1,rtl:p=!1,virtual:g=!1,focusItemOnOpen:_=`auto`,focusItemOnHover:y=!0,openOnArrowKeyDown:b=!0,disabledIndices:w=void 0,orientation:T=`vertical`,parentOrientation:ee,id:E,resetOnPointerLeave:D=!0,externalTree:O,grid:k}=t,A=k!=null,j=`rootStore`in e?e.rootStore:e,M=j.useState(`open`),N=j.useState(`floatingElement`),P=j.useState(`domReferenceElement`),te=j.context.dataRef,I=$e(N),ne=ot(P),L=Je(I),re=m(),z=f(O),B=Q.useRef(_),V=Q.useRef(s??-1),H=Q.useRef(null),ie=Q.useRef(!0),U=Y(e=>{a(V.current===-1?null:V.current,e)}),G=Q.useRef(!!N),oe=Q.useRef(M),q=Q.useRef(!1),se=Q.useRef(!1),ce=Q.useRef(null),le=Je(w),ue=Je(M),J=Je(s),de=Je(D),fe=n(),me=n(),he=Y(()=>{function e(e){g?z?.events.emit(`virtualfocus`,e):ce.current=C(e,{sync:q.current,preventScroll:!0})}let t=r.current[V.current],n=se.current;t&&e(t),(q.current?e=>e():e=>fe.request(e))(()=>{let i=r.current[V.current]||t;i&&(t||e(i),xe&&(n||!ie.current)&&i.scrollIntoView?.({block:`nearest`,inline:`nearest`}))})});W(()=>{te.current.orientation=T},[te,T]),W(()=>{o&&(M&&N?(V.current=s??-1,B.current&&s!=null&&(se.current=!0,U())):G.current&&(V.current=-1,U()))},[o,M,N,s,U]),W(()=>{if(o){if(!M){q.current=!1;return}if(N)if(i==null){if(q.current=!1,J.current!=null)return;if(G.current&&(V.current=-1,he()),(!oe.current||!G.current)&&B.current&&(H.current!=null||B.current===!0&&H.current==null)){let e=0,t=()=>{r.current[0]==null?(e<2&&(e?e=>me.request(e):queueMicrotask)(t),e+=1):(V.current=H.current==null||vt(H.current,T,p)||d?ae(r):x(r),H.current=null,U())};t()}}else v(r.current,i)||(V.current=i,he(),se.current=!1)}},[o,M,N,i,J,d,r,T,p,U,he,me]),W(()=>{if(!o||N||!z||g||!G.current)return;let e=z.nodesRef.current,t=e.find(e=>e.id===re)?.context?.elements.floating,n=it(pe(P??t??null)),r=e.some(e=>e.context&&R(e.context.elements.floating,n));t&&!r&&ie.current&&t.focus({preventScroll:!0})},[o,N,P,z,re,g]),W(()=>{oe.current=M,G.current=!!N}),W(()=>{M||(H.current=null,B.current=_)},[M,_]);let ge=i!=null,_e=Y(e=>{if(!ue.current)return;let t=r.current.indexOf(e.currentTarget);t!==-1&&(V.current!==t||i!==t)&&(V.current=t,U(e))}),ve=Y(()=>ee??z?.nodesRef.current.find(e=>e.id===re)?.context?.dataRef?.current.orientation),ye=Y(()=>ae(r,le.current)),be=Y(e=>{if(ie.current=!1,q.current=!0,e.which===229||!ue.current&&e.currentTarget===L.current)return;if(d&&bt(e.key,T,p,A)){_t(e.key,ve())||S(e),j.setOpen(!1,X(Xe,e.nativeEvent)),De(P)&&(g?z?.events.emit(`virtualfocus`,P):P.focus());return}let t=V.current,n=ae(r,w),i=x(r,w);if(ne||(e.key===`Home`&&(S(e),V.current=n,U(e)),e.key===`End`&&(S(e),V.current=i,U(e))),k!=null){let t=k(e,V.current,r,T,u,p,w,n,i);if(t!=null&&(V.current=t,U(e)),T===`both`)return}if(_t(e.key,T)){if(S(e),M&&!g&&it(e.currentTarget.ownerDocument)===e.currentTarget){V.current=vt(e.key,T,p)?n:i,U(e);return}vt(e.key,T,p)?u?t>=i?l&&t!==r.current.length?V.current=-1:(q.current=!1,V.current=n):V.current=K(r.current,{startingIndex:t,disabledIndices:w}):V.current=Math.min(i,K(r.current,{startingIndex:t,disabledIndices:w})):u?t<=n?l&&t!==-1?V.current=r.current.length:(q.current=!1,V.current=i):V.current=K(r.current,{startingIndex:t,decrement:!0,disabledIndices:w}):V.current=Math.max(n,K(r.current,{startingIndex:t,decrement:!0,disabledIndices:w})),v(r.current,V.current)&&(V.current=-1),U(e)}}),xe=Q.useMemo(()=>({onFocus(e){q.current=!0,_e(e)},onClick:({currentTarget:e})=>e.focus({preventScroll:!0}),onMouseMove(e){ht(e)||(q.current=!0,se.current=!1,y&&_e(e))},onPointerLeave(e){if(!ue.current||!ie.current||e.pointerType===`touch`)return;q.current=!0;let t=e.relatedTarget;if(!(!y||r.current.includes(t))&&de.current&&(ce.current?.(),ce.current=null,V.current=-1,U(e),!g)){let e=L.current,t=it(pe(e));e&&R(e,t)&&e.focus({preventScroll:!0})}}}),[_e,ue,L,y,r,U,de,g]),Se=Q.useMemo(()=>g&&M&&ge&&{"aria-activedescendant":`${E}-${i}`},[g,M,ge,E,i]),Ce=Q.useMemo(()=>({"aria-orientation":T===`both`?void 0:T,...ne?{}:Se,onKeyDown(e){if(e.key===`Tab`&&e.shiftKey&&M&&!g){let t=c(e.nativeEvent);if(t&&!R(L.current,t))return;S(e),j.setOpen(!1,X(We,e.nativeEvent)),De(P)&&P.focus();return}be(e)},onPointerMove(e){ht(e)||(ie.current=!0)}}),[Se,be,L,T,ne,j,M,g,P]),we=Q.useMemo(()=>{function e(e){j.setOpen(!0,X(Xe,e.nativeEvent,e.currentTarget))}function t(e){_===`auto`&&F(e.nativeEvent)&&(B.current=!g)}function n(e){B.current=_,_===`auto`&&h(e.nativeEvent)&&(B.current=!0)}return{onKeyDown(t){let n=j.select(`open`);ie.current=!1;let r=t.key.startsWith(`Arrow`),i=yt(t.key,ve(),p),a=_t(t.key,T),o=(d?i:a)||t.key===`Enter`||t.key.trim()===``;if(g&&n)return be(t);if(!(!n&&!b&&r)){if(o){let e=_t(t.key,ve());H.current=d&&e?null:t.key}if(d){i&&(S(t),n?(V.current=ye(),U(t)):e(t));return}a&&(J.current!=null&&(V.current=J.current),S(t),!n&&b?e(t):be(t),n&&U(t))}},onFocus(e){j.select(`open`)&&!g&&(V.current=-1,U(e))},onPointerDown:n,onPointerEnter:n,onMouseDown:t,onClick:t}},[be,_,ye,d,U,j,b,T,ve,p,J,g]),Te=Q.useMemo(()=>({...Se,...we}),[Se,we]);return Q.useMemo(()=>o?{reference:Te,floating:Ce,item:xe,trigger:we}:{},[o,Te,Ce,we,xe])}function St(e,t){let{listRef:n,elementsRef:r,activeIndex:i,onMatch:a,disabledIndices:o,onTyping:s,enabled:c=!0,resetMs:l=750,selectedIndex:u=null}=t,d=`rootStore`in e?e.rootStore:e,f=d.useState(`open`),p=oe(),m=Q.useRef(``),h=Q.useRef(u??i??-1),g=Q.useRef(null),_=Y(e=>{function t(e){return r?.current[e]}function c(e){let n=t(e);return n&&!ce(n)||n?.matches(`:disabled`)?!1:o==null||!D(se,e,o)}function d(e,t,n=0){if(e.length===0)return-1;let r=(n%e.length+e.length)%e.length,i=t.toLowerCase();for(let t=0;t<e.length;t+=1){let n=(r+t)%e.length;if(!(!e[n]?.toLowerCase().startsWith(i)||!c(n)))return n}return-1}let _=n.current;if(m.current.length>0&&e.key===` `&&(S(e),s?.(!0)),m.current.length>0&&m.current[0]!==` `&&d(_,m.current)===-1&&e.key!==` `&&s?.(!1),_==null||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey)return;f&&e.key!==` `&&(S(e),s?.(!0));let v=m.current===``;v&&(h.current=u??i??-1),_.every((e,t)=>e&&c(t)?e[0]?.toLowerCase()!==e[1]?.toLowerCase():!0)&&m.current===e.key&&(m.current=``,h.current=g.current),m.current+=e.key,p.start(l,()=>{m.current=``,h.current=g.current,s?.(!1)});let y=((v?u??i??-1:h.current)??0)+1,b=d(_,m.current,y);b===-1?e.key!==` `&&(m.current=``,s?.(!1)):(a?.(b),g.current=b)}),v=Y(e=>{let t=e.relatedTarget,n=d.select(`domReferenceElement`),r=d.select(`floatingElement`);R(n,t)||R(r,t)||(p.clear(),m.current=``,h.current=g.current,s?.(!1))});W(()=>{!f&&u!==null||(p.clear(),g.current=null,m.current!==``&&(m.current=``))},[f,u,p]);let y=Q.useMemo(()=>({onKeyDown:_,onBlur:v}),[_,v]);return Q.useMemo(()=>c?{reference:y,floating:y}:{},[c,y])}var Ct=Q.forwardRef(function(e,t){let{className:n,render:r,orientation:i=`horizontal`,style:a,...o}=e;return j(`div`,e,{state:{orientation:i},ref:t,props:[{role:`separator`,"aria-orientation":i},o]})}),$=ft();function wt(e){let t=Q.useRef(``),n=Q.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:Q.useCallback(n=>{if(n.detail===0){e(n,`keyboard`);return}`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``},[e]),onPointerDown:n}}function Tt(e,t){let n=Q.useRef(e),r=Y(t);W(()=>{n.current!==e&&r(n.current),n.current=e},[e,r])}function Et(e,t){let{onClick:n,onPointerDown:r}=wt(Y((n,r)=>{(typeof e==`function`?e():e)||t(r||(ct?`touch`:``))}));return Q.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function Dt(e){let[t,n]=Q.useState(null),r=Et(e,n);return Tt(e,t=>{t&&!e&&n(null)}),Q.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}function Ot({icon:e,wellClassName:t,wellStyle:n,title:r,badge:i,subtitle:a,leading:o,actions:s,sticky:c=!1,className:u,dataSlot:d=`detail-header`}){return(0,$.jsxs)(`header`,{className:Z(ue,c&&`sticky top-0 z-10`,u),"data-slot":d,children:[o?(0,$.jsxs)(`div`,{className:`-ml-2 flex h-full shrink-0 items-stretch`,children:[o,(0,$.jsx)(`span`,{className:`w-px shrink-0 self-stretch bg-border/60`,"aria-hidden":!0})]}):null,(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,$.jsx)(`span`,{className:Z(Ge,`flex shrink-0 items-center justify-center`,l(t??`text-muted-foreground`)),style:n?.color?{color:n.color}:void 0,"aria-hidden":!0,children:e}),(0,$.jsx)(`h2`,{className:Z(fe,`leading-none`),children:r}),i?(0,$.jsx)(`div`,{className:`flex min-w-0 shrink-0 items-center gap-2 leading-none`,children:i}):null,a?(0,$.jsx)(`div`,{className:`flex min-w-0 items-center gap-1.5 leading-none`,children:a}):null]}),s?(0,$.jsx)(`div`,{className:`flex h-full shrink-0 items-stretch`,children:s}):null]})}var kt=Q.createContext(void 0);function At(e){let t=Q.useContext(kt);if(t===void 0&&!e)throw Error(b(33));return t}var jt=Q.createContext(void 0);function Mt(e){let t=Q.useContext(jt);if(t===void 0&&!e)throw Error(b(36));return t}var Nt=Q.createContext(void 0);function Pt(e=!0){let t=Q.useContext(Nt);if(t===void 0&&!e)throw Error(b(25));return t}var Ft=Q.createContext(void 0);function It(){let e=Q.useContext(Ft);if(e===void 0)throw Error(b(30));return e}function Lt(e){let{closeOnClick:t,highlighted:n,id:r,nodeId:i,store:o,typingRef:s,itemRef:c,itemMetadata:l}=e,{events:u}=o.useState(`floatingTreeRoot`),d=o.useState(`open`),f=Pt(!0),p=f!==void 0;return Q.useMemo(()=>({id:r,role:`menuitem`,tabIndex:d&&n?0:-1,onKeyDown(e){e.key===` `&&s?.current&&e.preventDefault()},onMouseMove(e){i&&u.emit(`itemhover`,{nodeId:i,target:e.currentTarget})},onClick(e){t&&u.emit(`close`,{domEvent:e,reason:Me})},onMouseUp(e){if(f){let t=f.initialCursorPointRef.current;if(f.initialCursorPointRef.current=null,p&&t&&Math.abs(e.clientX-t.x)<=1&&Math.abs(e.clientY-t.y)<=1||p&&!a&&e.button===2)return}c.current&&o.context.allowMouseUpTriggerRef.current&&(!p||e.button===2)&&l.type===`regular-item`&&tt(c.current,e,{detail:1})}}),[t,n,r,u,i,d,o,s,c,f,p,l])}var Rt={type:`regular-item`};function zt(e){let{closeOnClick:t,disabled:n,highlighted:r,id:i,store:a,typingRef:o=a.context.typingRef,nativeButton:c,itemMetadata:l,nodeId:u}=e,d=Q.useRef(null),{getButtonProps:f,buttonRef:p}=s({disabled:n,focusableWhenDisabled:!0,native:c,composite:!0}),m=Lt({closeOnClick:t,highlighted:r,id:i,nodeId:u,store:a,typingRef:o,itemRef:d,itemMetadata:l}),h=Q.useCallback(e=>N(m,{onMouseEnter(){l.type===`submenu-trigger`&&l.setActive()}},e,f),[m,f,l]),g=Ie(d,p);return Q.useMemo(()=>({getItemProps:h,itemRef:g}),[h,g])}var Bt=Q.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},nextIndexRef:{current:0}});function Vt(){return Q.useContext(Bt)}function Ht(e={}){let{guess:t,label:n,metadata:r,textRef:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,nextIndexRef:l}=Vt(),u=Q.useRef(-1),[d,f]=Q.useState(a==null&&t?()=>{if(u.current===-1){let e=l.current;l.current+=1,u.current=e}return u.current}:-1),p=a??d,m=Q.useRef(null),h=Q.useCallback(e=>{let t=m.current;t&&s(t),m.current=e,e&&o(e,{metadata:r??null,index:a??null,label:n,textRef:i})},[a,o,s,r,n,i]);return W(()=>{if(a==null)return c(e=>{let t=m.current?e.get(m.current)?.index:null;t!=null&&f(t)})},[a,c]),{ref:h,index:p}}var Ut=function(e){return e.checked=`data-checked`,e.unchecked=`data-unchecked`,e.disabled=`data-disabled`,e.highlighted=`data-highlighted`,e}({}),Wt={checked(e){return e?{[Ut.checked]:``}:{[Ut.unchecked]:``}},...le},Gt=Q.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!1,checked:l,defaultChecked:u,onCheckedChange:d,style:f,...p}=e,m=Ht({guess:!0,label:a}),h=At(!0),g=q(i),{store:_}=Mt(),v=_.useState(`disabled`),y=s||v,b=_.useState(`isActive`,m.index),x=_.useState(`itemProps`),[S,C]=ke({controlled:l,default:u??!1,name:`MenuCheckboxItem`,state:`checked`}),{getItemProps:w,itemRef:T}=zt({closeOnClick:c,disabled:y,highlighted:b,id:g,store:_,nativeButton:o,nodeId:h?.context.nodeId,itemMetadata:Rt}),ee=Q.useMemo(()=>({disabled:y,highlighted:b,checked:S}),[y,b,S]);function D(e){let t=X(Me,e.nativeEvent,void 0,{preventUnmountOnClose:E});d?.(!S,t),!t.isCanceled&&C(e=>!e)}let O=j(`div`,e,{state:ee,stateAttributesMapping:Wt,props:[x,{role:`menuitemcheckbox`,"aria-checked":S,onClick:D},p,w],ref:[T,t,m.ref]});return(0,$.jsx)(Ft.Provider,{value:ee,children:O})}),Kt=Q.forwardRef(function(e,t){let{render:n,className:r,style:i,keepMounted:a=!1,...o}=e,s=It(),c=Q.useRef(null),{transitionStatus:l,mounted:u,setMounted:d}=Te(s.checked);Be({open:s.checked,ref:c,onComplete(){s.checked||d(!1)}});let f={checked:s.checked,disabled:s.disabled,highlighted:s.highlighted,transitionStatus:l};return j(`span`,e,{state:f,ref:[t,c],stateAttributesMapping:Wt,props:{"aria-hidden":!0,...o},enabled:a||u})}),qt=Q.createContext(void 0);function Jt(){let e=Q.useContext(qt);if(e===void 0)throw Error(b(31));return e}var Yt=Q.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,[o,s]=Q.useState(void 0),c=j(`div`,e,{ref:t,props:{role:`group`,"aria-labelledby":o,...a}});return(0,$.jsx)(qt.Provider,{value:s,children:c})}),Xt=Q.forwardRef(function(e,t){let{render:n,className:r,style:i,id:a,...o}=e,s=q(a),c=Jt();return W(()=>(c(s),()=>{c(e=>e===s?void 0:e)}),[c,s]),j(`div`,e,{ref:t,props:{id:s,role:`presentation`,...o}})}),Zt=Q.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!0,style:l,...u}=e,d=Ht({guess:!0,label:a}),f=At(!0),p=q(i),{store:m}=Mt(),h=m.useState(`disabled`),g=s||h,_=m.useState(`isActive`,d.index),v=m.useState(`itemProps`),{getItemProps:y,itemRef:b}=zt({closeOnClick:c,disabled:g,highlighted:_,id:p,store:m,nativeButton:o,nodeId:f?.context.nodeId,itemMetadata:Rt});return j(`div`,e,{state:{disabled:g,highlighted:_},props:[v,u,y],ref:[b,t,d.ref]})}),Qt=Q.createContext(void 0);function $t(e){let t=Q.useContext(Qt);if(t===void 0&&!e)throw Error(b(69));return t}var en=Q.forwardRef(function(e,n){let{render:r,className:i,style:a,finalFocus:o,...s}=e,{store:c}=Mt(),{side:l,align:u}=At(),d=$t(!0)!=null,f=c.useState(`open`),p=c.useState(`transitionStatus`),m=c.useState(`popupProps`),h=c.useState(`mounted`),g=c.useState(`instantType`),_=c.useState(`activeTriggerElement`),v=c.useState(`parent`),y=c.useState(`lastOpenChangeReason`),b=c.useState(`rootId`),x=c.useState(`floatingRootContext`),S=c.useState(`floatingTreeRoot`),C=c.useState(`closeDelay`),w=c.useState(`hoverEnabled`),T=c.useState(`disabled`),E=c.useState(`openMethod`),D=v.type===`context-menu`;Be({open:f,ref:c.context.popupRef,onComplete(){f&&c.context.onOpenChangeComplete?.(!0)}}),Q.useEffect(()=>{function e(e){c.setOpen(!1,X(e.reason,e.domEvent))}return S.events.on(`close`,e),()=>{S.events.off(`close`,e)}},[S.events,c]),t(x,{enabled:w&&!T&&!D&&v.type!==`menubar`,closeDelay:C});let O=c.useStateSetter(`popupElement`),k={transitionStatus:p,side:l,align:u,open:f,nested:v.type===`menu`,instant:g},A=j(`div`,e,{state:k,ref:[n,c.context.popupRef,O],stateAttributesMapping:ee,props:[m,{onKeyDown(e){d&&Qe.has(e.key)&&e.stopPropagation()}},G(p),s,{"data-rootownerid":b}]}),M=v.type===void 0||D;return(_||v.type===`menubar`&&y!==`outside-press`)&&(M=!0),(0,$.jsx)(z,{context:x,openInteractionType:E,modal:D,disabled:!h,returnFocus:o===void 0?M:o,initialFocus:v.type!==`menu`,restoreFocus:!0,externalTree:v.type===`menubar`?void 0:S,previousFocusableElement:_,nextFocusableElement:v.type===void 0?c.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:v.type===void 0?c.context.beforeContentFocusGuardRef:void 0,children:A})}),tn=Q.createContext(void 0);function nn(){let e=Q.useContext(tn);if(e===void 0)throw Error(b(32));return e}var rn=Q.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=Mt();return i.useState(`mounted`)||n?(0,$.jsx)(tn.Provider,{value:n,children:(0,$.jsx)(je,{ref:t,...r})}):null});function an(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:i}=e,a=Y(i),[,o]=Q.useState(!1),s=J(sn).current,c=J(on).current,l=Q.useRef(0),u=Q.useRef(!0),d=Q.useRef([]),f=Q.useRef(null),p=Y(()=>{u.current||(u.current=!0,o(e=>!e))}),m=Y((e,t)=>{c.set(e,t),p()}),h=Y(e=>{c.delete(e),p()}),g=Y(e=>{let t=new Map;return n.current.length=0,r&&(r.current.length=0),e.forEach(e=>{t.set(e.element,{...e.registration.metadata??{},index:e.index}),n.current[e.index]=e.element,r&&(r.current[e.index]=e.registration.label===void 0?e.registration.textRef?.current?.textContent??e.element.textContent:e.registration.label)}),l.current=n.current.length,t});function _(e){if(f.current?.disconnect(),f.current=null,typeof MutationObserver!=`function`||e.length<2)return;let t=new MutationObserver(n=>{if(!un(n))return;let r=null;for(let n of e)if(n.isConnected){if(r&&dn(r,n)>0){t.disconnect(),p();return}r=n}});f.current=t;let n=new Set;for(let t=1;t<e.length;t+=1){let r=ln(e[t-1],e[t]);r&&n.add(r)}n.forEach(e=>t.observe(e,{childList:!0}))}let v=Y(()=>{let[e,t]=cn(c),n=g(e);_(t),d.current=e,u.current=!1,s.forEach(e=>e(n)),a(n)});W(()=>(u.current||g(d.current),()=>{n.current=[],r&&(r.current=[])}),[n,r,g]),W(()=>{u.current&&v()}),W(()=>()=>{f.current?.disconnect(),u.current=!0},[]);let y=Y(e=>(s.add(e),()=>{s.delete(e)})),b=Q.useMemo(()=>({register:m,unregister:h,subscribeMapChange:y,nextIndexRef:l}),[m,h,y,l]);return(0,$.jsx)(Bt.Provider,{value:b,children:t})}function on(){return new Map}function sn(){return new Set}function cn(e){let t=new Set,n=[],r=[];e.forEach((e,i)=>{if(!i.isConnected)return;let a=e.index,o={index:a??-1,element:i,registration:e};a===null?r.push(o):a>=0&&(t.add(a),n.push(o))});let i=0;return r.sort((e,t)=>dn(e.element,t.element)),r.forEach(e=>{for(;t.has(i);)i+=1;e.index=i,n.push(e),i+=1}),t.size>0&&n.sort((e,t)=>e.index-t.index),[n,r.map(e=>e.element)]}function ln(e,t){let n=e.parentElement;for(;n&&!n.contains(t);)n=n.parentElement;return n}function un(e){for(let t of e)for(let e=0;e<t.removedNodes.length;e+=1)if(t.removedNodes[e].isConnected)return!0;return!1}function dn(e,t){return e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}var fn=20;function pn(e,t,n,r){let[i,a]=Q.useState(!1);W(()=>{if(!e||!t||n==null){a(!1);return}let r=pe(n).documentElement.clientWidth,i=n.offsetWidth;a(r>0&&i>0&&i>=r-fn)},[e,t,n]),Pe(e&&(!t||i),r)}var mn=Q.forwardRef(function(e,t){let{anchor:n,positionMethod:a=`absolute`,className:o,render:s,side:c,align:l,sideOffset:d=0,alignOffset:f=0,collisionBoundary:p=`clipping-ancestors`,collisionPadding:m=5,arrowPadding:h=5,sticky:g=!1,disableAnchorTracking:_=!1,collisionAvoidance:v=r,style:b,...x}=e,{store:S}=Mt(),C=nn(),w=Pt(!0),T=S.useState(`parent`),ee=S.useState(`floatingRootContext`),E=S.useState(`floatingTreeRoot`),D=S.useState(`mounted`),O=S.useState(`open`),k=S.useState(`modal`),A=S.useState(`openMethod`),j=S.useState(`activeTriggerElement`),M=S.useState(`transitionStatus`),N=S.useState(`positionerElement`),P=S.useState(`instantType`),te=S.useState(`adaptiveOrigin`),F=S.useState(`lastOpenChangeReason`),I=S.useState(`floatingNodeId`),ne=S.useState(`floatingParentNodeId`),L=ee.useState(`domReferenceElement`),re=Q.useRef(null),R=Fe(N),z=n,B=d,V=f,H=l,ie=v;T.type===`context-menu`&&(z=n??T.context?.anchor,H??=`start`,!c&&H!==`center`&&(V=e.alignOffset??2,B=e.sideOffset??-5));let U=c,ae=H;T.type===`menu`?(U??=`inline-end`,ae??=`start`,ie=e.collisionAvoidance??Oe):T.type===`menubar`&&(U??=T.context.orientation===`vertical`?`inline-end`:`bottom`,ae??=`start`);let G=T.type===`context-menu`,K=y({anchor:z,floatingRootContext:ee,positionMethod:w?`fixed`:a,mounted:D,side:U,sideOffset:B,align:ae,alignOffset:V,arrowPadding:G?0:h,collisionBoundary:p,collisionPadding:m,sticky:g,nodeId:I,keepMounted:C,disableAnchorTracking:_,collisionAvoidance:ie,shift:G?{crossAxis:!(`side`in ie&&ie.side===`flip`),rootBoundary:`layoutViewport`}:void 0,externalTree:E,adaptiveOrigin:te});Q.useEffect(()=>{function e(e){e.open&&(e.parentNodeId===I&&S.set(`hoverEnabled`,!1),e.nodeId!==I&&e.parentNodeId===S.select(`floatingParentNodeId`)&&S.setOpen(!1,X(ze)))}return E.events.on(`menuopenchange`,e),()=>{E.events.off(`menuopenchange`,e)}},[S,E.events,I]),Q.useEffect(()=>{if(S.select(`floatingParentNodeId`)==null)return;function e(e){if(e.open||e.nodeId!==S.select(`floatingParentNodeId`))return;let t=e.reason??`sibling-open`;S.setOpen(!1,X(t))}return E.events.on(`menuopenchange`,e),()=>{E.events.off(`menuopenchange`,e)}},[E.events,S]);let q=oe();Q.useEffect(()=>{O||q.clear()},[O,q]),Q.useEffect(()=>{function e(e){if(!(!O||e.nodeId!==S.select(`floatingParentNodeId`)))if(e.target&&j&&j!==e.target){let e=S.select(`closeDelay`);e>0?q.isStarted()||q.start(e,()=>{S.setOpen(!1,X(ze))}):S.setOpen(!1,X(ze))}else q.clear()}return E.events.on(`itemhover`,e),()=>{E.events.off(`itemhover`,e)}},[E.events,O,j,S,q]),Q.useEffect(()=>{let e={open:O,nodeId:I,parentNodeId:ne,reason:S.select(`lastOpenChangeReason`)};E.events.emit(`menuopenchange`,e)},[E.events,O,S,I,ne]),W(()=>{let e=L,t=re.current;if(e&&(re.current=e),t&&e&&e!==t){S.set(`instantType`,void 0);let e=new AbortController;return R(()=>{S.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[L,R,S]);let se={open:O,side:K.side,align:K.align,anchorHidden:K.anchorHidden,nested:T.type===`menu`,instant:P},ce=T.type===`menubar`&&T.context.modal;pn(O&&(ce||k&&F!==`trigger-hover`),A===`touch`,N,j);let le=i(e,se,{styles:K.positionerStyles,transitionStatus:M,props:x,refs:[t,S.useStateSetter(`positionerElement`)],hidden:!D,inert:!O}),ue=D&&T.type!==`menu`&&(T.type!==`menubar`&&k&&F!==`trigger-hover`||T.type===`menubar`&&T.context.modal),J=null;return T.type===`menubar`?J=T.context.contentElement:T.type===void 0&&(J=j),(0,$.jsxs)(kt.Provider,{value:K,children:[ue&&(0,$.jsx)(Se,{ref:T.type===`context-menu`||T.type===`nested-context-menu`?T.context.internalBackdropRef:null,inert:st(!O),cutout:J}),(0,$.jsx)(u,{id:I,children:(0,$.jsx)(an,{elementsRef:S.context.itemDomElements,labelsRef:S.context.itemLabels,children:le})})]})}),hn=Q.createContext(void 0);function gn(){let e=Q.useContext(hn);if(e===void 0)throw Error(b(34));return e}var _n=Q.memo(Q.forwardRef(function(e,t){let{render:n,className:r,value:i,defaultValue:a,onValueChange:o,disabled:s=!1,style:c,"aria-labelledby":l,...u}=e,[d,f]=Q.useState(void 0),[p,m]=ke({controlled:i,default:a,name:`MenuRadioGroup`}),h=Y((e,t)=>{o?.(e,t),!t.isCanceled&&m(e)}),g=j(`div`,e,{state:{disabled:s},ref:t,props:{role:`group`,"aria-labelledby":l??d,"aria-disabled":s||void 0,...u}}),_=Q.useMemo(()=>({value:p,setValue:h,disabled:s}),[p,h,s]);return(0,$.jsx)(qt.Provider,{value:f,children:(0,$.jsx)(hn.Provider,{value:_,children:g})})})),vn=Q.createContext(void 0);function yn(){let e=Q.useContext(vn);if(e===void 0)throw Error(b(35));return e}var bn=Q.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!1,value:l,style:u,...d}=e,f=Ht({guess:!0,label:a}),p=At(!0),m=q(i),{store:h}=Mt(),g=h.useState(`isActive`,f.index),_=h.useState(`itemProps`),{value:v,setValue:y,disabled:b}=gn(),x=h.useState(`disabled`),S=s||b||x,C=v===l,{getItemProps:w,itemRef:T}=zt({closeOnClick:c,disabled:S,highlighted:g,id:m,store:h,nativeButton:o,nodeId:p?.context.nodeId,itemMetadata:Rt}),ee=Q.useMemo(()=>({disabled:S,highlighted:g,checked:C}),[S,g,C]);function D(e){let t=X(Me,e.nativeEvent,void 0,{preventUnmountOnClose:E});y(l,t)}let O=j(`div`,e,{state:ee,stateAttributesMapping:Wt,props:[_,{role:`menuitemradio`,"aria-checked":C,onClick:D},d,w],ref:[T,t,f.ref]});return(0,$.jsx)(vn.Provider,{value:ee,children:O})}),xn=Q.forwardRef(function(e,t){let{render:n,className:r,style:i,keepMounted:a=!1,...o}=e,s=yn(),c=Q.useRef(null),{transitionStatus:l,mounted:u,setMounted:d}=Te(s.checked);Be({open:s.checked,ref:c,onComplete(){s.checked||d(!1)}});let f={checked:s.checked,disabled:s.disabled,highlighted:s.highlighted,transitionStatus:l};return j(`span`,e,{state:f,stateAttributesMapping:Wt,ref:[t,c],props:{"aria-hidden":!0,...o},enabled:a||u})}),Sn=Q.createContext(null);function Cn(e){let t=Q.useContext(Sn);if(t===null&&!e)throw Error(b(5));return t}var wn={...Ue,disabled:e=>e.parent.type===`menubar`&&e.parent.context.disabled||e.disabled,modal:e=>(e.parent.type===void 0||e.parent.type===`context-menu`)&&(e.modal??!0),openMethod:e=>e.openMethod,allowMouseEnter:e=>e.allowMouseEnter,highlightItemOnHover:e=>e.highlightItemOnHover,parent:e=>e.parent,rootId:e=>e.parent.type===`menu`?e.parent.store.select(`rootId`):e.parent.type===void 0?e.rootId:e.parent.context.rootId,activeIndex:e=>e.activeIndex,isActive:(e,t)=>e.activeIndex===t,hoverEnabled:e=>e.hoverEnabled,instantType:e=>e.instantType,lastOpenChangeReason:e=>e.openChangeReason,floatingTreeRoot:e=>e.parent.type===`menu`?e.parent.store.select(`floatingTreeRoot`):e.floatingTreeRoot,floatingNodeId:e=>e.floatingNodeId,floatingParentNodeId:e=>e.floatingParentNodeId,itemProps:e=>e.itemProps,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin,keyboardEventRelay:e=>{if(e.keyboardEventRelay)return e.keyboardEventRelay;if(e.parent.type===`menu`)return e.parent.store.select(`keyboardEventRelay`)}},Tn=class extends et{constructor(e){super({...Dn(),...e},En(),wn),this.unsubscribeParentListener=this.observe(`parent`,e=>{if(this.unsubscribeParentListener?.(),e.type===`menu`){let t=e.store.select(`rootId`),n=e.store.select(`floatingTreeRoot`),r=e.store.select(`keyboardEventRelay`);this.unsubscribeParentListener=e.store.subscribe(()=>{let i=e.store.select(`rootId`),a=e.store.select(`floatingTreeRoot`),o=e.store.select(`keyboardEventRelay`);(t!==i||n!==a||r!==o)&&(t=i,n=a,r=o,this.notifyAll())}),this.context.allowMouseUpTriggerRef=e.store.context.allowMouseUpTriggerRef;return}e.type!==void 0&&(this.context.allowMouseUpTriggerRef=e.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,t){this.state.floatingRootContext.context.events.emit(`setOpen`,{open:e,eventDetails:t})}unsubscribeParentListener=null};function En(){return{positionerRef:Q.createRef(),popupRef:Q.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:Q.createRef(),beforeContentFocusGuardRef:Q.createRef(),onOpenChangeComplete:void 0,triggerElements:new Ee}}function Dn(){return{...Le(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new te,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:_,keyboardEventRelay:void 0,closeDelay:0,adaptiveOrigin:void 0}}var On=Q.createContext(void 0);function kn(){return Q.useContext(On)}var An=He(function(e){let{children:t,open:n,onOpenChange:r,onOpenChangeComplete:i,defaultOpen:a=!1,disabled:o=!1,modal:s,loopFocus:c=!0,orientation:l=`vertical`,actionsRef:u,closeParentOnEsc:d=!1,handle:f,triggerId:p,defaultTriggerId:h=null,highlightItemOnHover:v=!0}=e,y=Pt(!0),b=Mt(!0),x=Cn(!0),S=kn(),C=Q.useMemo(()=>S&&b?{type:`menu`,store:b.store}:x?{type:`menubar`,context:x}:y&&!b?{type:`context-menu`,context:y}:{type:void 0},[y,b,x,S]),w=jn({open:a,openProp:n,activeTriggerId:h,triggerIdProp:p,parent:C});w.useControlledProp(`openProp`,n),w.useControlledProp(`triggerIdProp`,p),w.useContextCallback(`onOpenChangeComplete`,i);let T=g(),ee=g(),E=w.useState(`floatingTreeRoot`),D=ie(E),O=m(),k=w.useState(`open`),A=w.useState(`activeTriggerElement`),j=w.useState(`positionerElement`),M=w.useState(`hoverEnabled`),P=w.useState(`disabled`),te=w.useState(`lastOpenChangeReason`),F=w.useState(`parent`),I=w.useState(`activeIndex`),ne=w.useState(`payload`),L=w.useState(`floatingParentNodeId`),re=Q.useRef(null),R=Q.useRef(F.type!==`context-menu`),z=oe(),B=Q.useRef(!0),V=oe(),H=L!=null,{openMethod:ae,triggerProps:G}=Dt(k);w.useSyncedValues({disabled:o,highlightItemOnHover:v,modal:F.type===void 0?s:void 0,openMethod:ae,rootId:T}),Ne(w);let{forceUnmount:K}=Ze(k,w,()=>{w.set(`allowMouseEnter`,!1)});W(()=>{y&&!b?w.update({parent:{type:`context-menu`,context:y},floatingNodeId:D,floatingParentNodeId:O}):b&&w.update({floatingNodeId:D,floatingParentNodeId:O})},[y,b,D,O,w]),Q.useEffect(()=>{if(k||(re.current=null),F.type===`context-menu`){if(!k){z.clear(),R.current=!1;return}z.start(500,()=>{R.current=!0})}},[z,k,F.type]),W(()=>{!k&&!M&&w.set(`hoverEnabled`,!0)},[k,M,w]);let q=Y((e,t)=>{let n=t.reason;if(!e&&!w.select(`open`)||k===e&&t.trigger===A&&te===n)return;let i=Ke(t);if(!e&&t.trigger==null&&(t.trigger=A??void 0),r?.(e,t),t.isCanceled)return;w.state.floatingRootContext.dispatchOpenChange(e,t);let a=t.event;if(e===!1&&a?.type===`click`&&a.pointerType===`touch`&&!B.current)return;e&&n===`trigger-focus`?(B.current=!1,V.start(300,()=>{B.current=!0})):(B.current=!0,V.clear());let o=(n===`trigger-press`||n===`item-press`)&&a.detail===0,s=!e&&(n===`escape-key`||n==null),c={open:e,openChangeReason:n};re.current=t.event,ve(c,e,t.trigger,i()),w.update(c),F.type===`menubar`&&(n===`trigger-focus`||n===`focus-out`||n===`trigger-hover`||n===`list-navigation`||n===`sibling-open`)?w.set(`instantType`,`group`):o||s?w.set(`instantType`,o?`click`:`dismiss`):w.set(`instantType`,void 0)}),ce=we({popupStore:w,floatingId:ee,nested:O!=null,onOpenChange:q}),le=ce.context.events;W(()=>{let e=({open:e,eventDetails:t})=>q(e,t);return le.on(`setOpen`,e),()=>{le?.off(`setOpen`,e)}},[le,q]);let ue=Q.useCallback(()=>{w.setOpen(!1,X(_e))},[w]);Q.useImperativeHandle(u,()=>({unmount:K,close:ue}),[K,ue]);let J;F.type===`context-menu`&&(J=F.context),Q.useImperativeHandle(J?.positionerRef,()=>j,[j]),Q.useImperativeHandle(J?.actionsRef,()=>({setOpen:q}),[q]);let de=at(ce,{enabled:!P,bubbles:{escapeKey:d&&F.type===`menu`},outsidePress(){return F.type!==`context-menu`||re.current?.type===`contextmenu`||R.current},externalTree:H?E:void 0}),fe=U(),pe=Q.useCallback(e=>{w.select(`activeIndex`)!==e&&w.set(`activeIndex`,e)},[w]),me=xt(ce,{enabled:!P,listRef:w.context.itemDomElements,activeIndex:I,nested:F.type!==void 0,loopFocus:c,orientation:l,parentOrientation:F.type===`menubar`?F.context.orientation:void 0,rtl:fe===`rtl`,disabledIndices:se,onNavigate:pe,openOnArrowKeyDown:F.type!==`context-menu`,externalTree:H?E:void 0,focusItemOnHover:v}),ge=Q.useCallback(e=>{w.context.typingRef.current=e},[w]),be=St(ce,{enabled:!P,listRef:w.context.itemLabels,elementsRef:w.context.itemDomElements,activeIndex:I,resetMs:500,onMatch:e=>{k&&e!==I&&w.set(`activeIndex`,e)},onTyping:ge}),xe=Q.useMemo(()=>{let e=N(be.reference,me.reference,de.reference,{onMouseMove(){w.set(`allowMouseEnter`,!0)}},G);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=k,e},[w,be.reference,me.reference,de.reference,G,k]),Se=Q.useMemo(()=>{let e=N(me.trigger,de.trigger,G);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=!1,e},[me.trigger,de.trigger,G]),Ce=Q.useMemo(()=>N(he,{id:ee,role:`menu`,"aria-labelledby":A?.id,onMouseMove(){w.set(`allowMouseEnter`,!0),F.type===`menu`&&w.set(`hoverEnabled`,!1)},onClick(){w.select(`hoverEnabled`)&&w.set(`hoverEnabled`,!1)},onKeyDown(e){let t=w.select(`keyboardEventRelay`);t&&!e.isPropagationStopped()&&t(e)}},be.floating,me.floating,de.floating),[A,ee,F.type,w,be.floating,me.floating,de.floating]),Te=me.item??_;ye(w,{floatingRootContext:ce,activeTriggerProps:xe,inactiveTriggerProps:Se,popupProps:Ce,itemProps:Te});let Ee=Q.useMemo(()=>({store:w,parent:C}),[w,C]),De=(0,$.jsxs)(jt.Provider,{value:Ee,children:[f&&(0,$.jsx)(Re,{handle:f,store:w}),typeof t==`function`?t({payload:ne}):t]});return F.type===void 0||F.type===`context-menu`?(0,$.jsx)(rt,{externalTree:E,children:De}):De});function jn(e){return J(()=>new Tn(e)).current}var Mn=5;function Nn(e,t){let n=Pn(t);return e.clientX>=n.left-Mn&&e.clientX<=n.right+Mn&&e.clientY>=n.top-Mn&&e.clientY<=n.bottom+Mn}function Pn(e){let t=e.getBoundingClientRect(),n=Ae(e);if(O)return t;let r=n.getComputedStyle(e,`::before`),i=n.getComputedStyle(e,`::after`);if(r.content===`none`&&i.content===`none`)return t;let a=parseFloat(r.width)||0,o=parseFloat(r.height)||0,s=parseFloat(i.width)||0,c=parseFloat(i.height)||0,l=Math.max(t.width,a,s),u=Math.max(t.height,o,c),d=l-t.width,f=u-t.height;return{left:t.left-d/2,right:t.right+d/2,top:t.top-f/2,bottom:t.bottom+f/2}}function Fn(e={}){let{highlightItemOnHover:t,highlightedIndex:n,onHighlightedIndexChange:r}=B(),{ref:i,index:a}=Ht(e),o=n===a,s=Q.useRef(null),c=Ie(i,s);return{compositeProps:{tabIndex:o?0:-1,onFocus(){r(a)},onMouseMove(){let e=s.current;if(!t||!e)return;let n=e.hasAttribute(`disabled`)||e.ariaDisabled===`true`;!o&&!n&&e.focus()}},compositeRef:c,index:a}}function In(e){let{render:t,className:n,style:r,state:i=_,props:a=se,refs:o=se,metadata:s,stateAttributesMapping:c,tag:l=`div`,...u}=e,{compositeProps:d,compositeRef:f}=Fn({metadata:s});return j(l,e,{state:i,ref:[f,...o],props:[d,...a,u],stateAttributesMapping:c})}function Ln(e){if(De(e)&&e.hasAttribute(`data-rootownerid`))return e.getAttribute(`data-rootownerid`);if(!A(e))return Ln(P(e))}var Rn=e(ut(),1);function zn(e,t){let n=Q.useRef(null);function r(t){Rn.flushSync(()=>{e.setOpen(!1,X(We,t.nativeEvent,t.currentTarget))}),lt(n.current)?.focus()}function i(n){let r=e.select(`positionerElement`);if(r&&o(n,r))e.context.beforeContentFocusGuardRef.current?.focus();else{Rn.flushSync(()=>{e.setOpen(!1,X(We,n.nativeEvent,n.currentTarget))});let i=L(e.context.triggerFocusTargetRef.current||t.current);for(;i!==null&&R(r,i);){let e=i;if(i=k(i),i===e)break}i?.focus()}}return{preFocusGuardRef:n,handlePreFocusGuardFocus:r,handleFocusTargetFocus:i}}function Bn(e){let{enabled:t=!0,mouseDownAction:n,open:r}=e,i=Q.useRef(!1);return Q.useMemo(()=>t?{onMouseDown:e=>{(n===`open`&&!r||n===`close`&&r)&&(i.current=!0,pe(e.currentTarget).addEventListener(`click`,()=>{i.current=!1},{once:!0}))},onClick:e=>{i.current&&(i.current=!1,e.preventBaseUIHandler())}}:_,[t,n,r])}var Vn=w(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,id:c,openOnHover:l,delay:u=100,closeDelay:d=0,handle:p,payload:h,...g}=e,v=Mt(!0),y=Ye(p)??v?.store;if(!y)throw Error(b(85));let x=q(c),S=y.useState(`isTriggerActive`,x),C=y.useState(`floatingRootContext`),w=y.useState(`isOpenedByTrigger`,x),ee=y.useState(`triggerPopupId`,x),E=Q.useRef(null),D=Un(),O=B(!0),k=f(),A=Q.useMemo(()=>k??new te,[k]),M=ie(A),P=m(),{registerTrigger:F,isMountedByThisTrigger:ne}=xe(x,E,y,{payload:h,closeDelay:d,parent:D,floatingTreeRoot:A,floatingNodeId:M,floatingParentNodeId:P,keyboardEventRelay:O?.relayKeyboardEvent}),L=D.type===`menubar`,re=y.useState(`disabled`),z=a||re||L&&D.context.disabled,{getButtonProps:V,buttonRef:H}=s({disabled:z,native:o});Q.useEffect(()=>{!w&&D.type===void 0&&(y.context.allowMouseUpTriggerRef.current=!1)},[y,w,D.type]);let U=Q.useRef(null),W=oe(),ae=Y(e=>{if(!U.current)return;W.clear(),y.context.allowMouseUpTriggerRef.current=!1;let t=e.target;R(U.current,t)||R(y.select(`positionerElement`),t)||t===U.current||(t==null||Ln(t)!==y.select(`rootId`))&&(Nn(e,U.current)||A.events.emit(`close`,{domEvent:e,reason:me}))});Q.useEffect(()=>{w&&y.select(`lastOpenChangeReason`)===`trigger-hover`&&pe(U.current).addEventListener(`mouseup`,ae,{once:!0})},[w,ae,y]);let G=L&&D.context.hasSubmenuOpen,K=I(C,{enabled:(l??G)&&!z&&(!L||G&&!ne),handleClose:de({blockPointerEvents:!L}),mouseOnly:!0,move:!1,restMs:D.type===void 0?u:void 0,delay:{close:d},triggerElementRef:E,externalTree:A,isActiveTrigger:S,isClosing:()=>y.select(`transitionStatus`)===`ending`}),se=Hn(w,y.select(`lastOpenChangeReason`)),ce=pt(C,{enabled:!z,event:w&&L?`click`:`mousedown`,toggle:!0,ignoreMouse:!1,stickIfOpen:D.type===void 0&&se}),le=be(C,{enabled:!z&&G}),ue=Bn({open:w,enabled:L,mouseDownAction:`open`}),J=Q.useMemo(()=>N(le.reference,ce.reference),[le.reference,ce.reference]),fe=y.useState(`triggerProps`,ne),{preFocusGuardRef:he,handlePreFocusGuardFocus:ge,handleFocusTargetFocus:_e}=zn(y,E),ve={disabled:z,open:w},ye=[U,t,H,F,E],Se=[J,K??_,fe,{"aria-haspopup":`menu`,"aria-controls":ee,id:x,onMouseDown:e=>{y.select(`open`)||(W.start(200,()=>{y.context.allowMouseUpTriggerRef.current=!0}),pe(e.currentTarget).addEventListener(`mouseup`,ae,{once:!0}))}},L?{role:`menuitem`}:{},ue,g,V],Ce=j(`button`,e,{enabled:!L,stateAttributesMapping:Ve,state:ve,ref:ye,props:Se});return L?(0,$.jsx)(In,{tag:`button`,render:n,className:r,style:i,state:ve,refs:ye,props:Se,stateAttributesMapping:Ve}):w?(0,$.jsxs)(Q.Fragment,{children:[(0,$.jsx)(T,{ref:he,onFocus:ge},`${x}-pre-focus-guard`),(0,$.jsx)(Q.Fragment,{children:Ce},x),(0,$.jsx)(T,{ref:y.context.triggerFocusTargetRef,onFocus:_e},`${x}-post-focus-guard`)]}):(0,$.jsx)(Q.Fragment,{children:Ce},x)});function Hn(e,t){let n=oe(),[r,i]=Q.useState(!1);return W(()=>{e&&t===`trigger-hover`?(i(!0),n.start(500,()=>{i(!1)})):e||(n.clear(),i(!1))},[e,t,n]),r}function Un(){let e=Cn(!0);return Q.useMemo(()=>e?{type:`menubar`,context:e}:{type:void 0},[e])}function Wn({...e}){return(0,$.jsx)(An,{"data-slot":`dropdown-menu`,...e})}function Gn({...e}){return(0,$.jsx)(Vn,{"data-slot":`dropdown-menu-trigger`,...e})}function Kn({align:e=`start`,alignOffset:t=0,side:n=`bottom`,sideOffset:r=4,className:i,...a}){return(0,$.jsx)(rn,{children:(0,$.jsx)(mn,{className:`isolate z-50 outline-none`,align:e,alignOffset:t,side:n,sideOffset:r,children:(0,$.jsx)(en,{"data-slot":`dropdown-menu-content`,className:Z(`cn-menu-target cn-menu-translucent z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 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-left-2 data-[side=inline-start]:slide-in-from-right-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`,i),...a})})})}function qn({...e}){return(0,$.jsx)(Yt,{"data-slot":`dropdown-menu-group`,...e})}function Jn({className:e,inset:t,...n}){return(0,$.jsx)(Xt,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:Z(`px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7`,e),...n})}function Yn({className:e,inset:t,variant:n=`default`,...r}){return(0,$.jsx)(Zt,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:Z(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-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`,e),...r})}function Xn({className:e,children:t,checked:n,inset:r,...i}){return(0,$.jsxs)(Gt,{"data-slot":`dropdown-menu-checkbox-item`,"data-inset":r,className:Z(`relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),checked:n,...i,children:[(0,$.jsx)(`span`,{className:`pointer-events-none absolute right-2 flex items-center justify-center`,"data-slot":`dropdown-menu-checkbox-item-indicator`,children:(0,$.jsx)(Kt,{children:(0,$.jsx)(H,{icon:qe,size:16,color:`currentColor`,strokeWidth:1.5})})}),t]})}function Zn({...e}){return(0,$.jsx)(_n,{"data-slot":`dropdown-menu-radio-group`,...e})}function Qn({className:e,children:t,inset:n,...r}){return(0,$.jsxs)(bn,{"data-slot":`dropdown-menu-radio-item`,"data-inset":n,className:Z(`relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...r,children:[(0,$.jsx)(`span`,{className:`pointer-events-none absolute right-2 flex items-center justify-center`,"data-slot":`dropdown-menu-radio-item-indicator`,children:(0,$.jsx)(xn,{children:(0,$.jsx)(H,{icon:qe,size:16,color:`currentColor`,strokeWidth:1.5})})}),t]})}function $n({className:e,...t}){return(0,$.jsx)(Ct,{"data-slot":`dropdown-menu-separator`,className:Z(`-mx-1 my-1 h-px bg-border`,e),...t})}function er({className:e,...t}){return(0,$.jsx)(`span`,{"data-slot":`dropdown-menu-shortcut`,className:Z(`ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground`,e),...t})}var tr=`h-8 rounded-none border-0 bg-transparent px-4 text-[12px] shadow-none focus-visible:border-0 focus-visible:ring-0 dark:bg-transparent`,nr=`h-8 rounded-none border-0 bg-transparent pr-4 pl-9 text-[12px] shadow-none focus-visible:border-0 focus-visible:ring-0 dark:bg-transparent`,rr=`h-11 flex-1 rounded-none border-0 shadow-none focus-visible:ring-0`;function ir({label:e,hint:t,className:n,split:r,dense:i=!1,children:a}){return(0,$.jsxs)(`label`,{className:Z(`block min-w-0 border-b border-border/50`,r===`start`&&`border-r border-b-0`,r===`end`&&`border-b-0`,n),children:[i?(0,$.jsxs)(`span`,{className:`flex items-baseline justify-between gap-2 px-2 pt-1`,children:[(0,$.jsx)(`span`,{className:`min-w-0 truncate text-[10px] font-semibold tracking-[0.12em] text-muted-foreground uppercase`,children:e}),t?(0,$.jsx)(`span`,{className:`min-w-0 truncate font-mono text-[9px] text-muted-foreground/70`,children:t}):null]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`block truncate px-3 pt-1.5 text-[10px] font-semibold tracking-[0.12em] text-muted-foreground uppercase`,children:e}),t?(0,$.jsx)(`span`,{className:`block truncate px-3 font-mono text-[10px] text-muted-foreground/70`,children:t}):null]}),a]})}function ar({label:e,className:t,children:n}){return(0,$.jsxs)(`label`,{className:Z(`flex items-center justify-between gap-3 border-b border-border/50 px-4 py-3`,t),children:[(0,$.jsx)(`span`,{className:`text-[12px] text-foreground`,children:e}),n]})}function or({active:e,extraCount:t=0,className:n,children:r,type:i=`button`,...a}){return(0,$.jsxs)(`button`,{type:i,className:Z(`inline-flex items-center gap-1 rounded-none border-0 bg-transparent px-2 py-1 text-[10px] font-semibold tracking-[0.08em] uppercase shadow-none transition-colors hover:bg-muted/50`,e?`text-foreground`:`text-muted-foreground hover:text-foreground`,n),...a,children:[r,t>0?(0,$.jsx)(`span`,{className:`flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-foreground/10 px-1 text-[9px] font-semibold tabular-nums`,children:t}):null]})}function sr({label:e,hint:t,className:n,children:r}){return(0,$.jsxs)(`div`,{className:Z(`border-b border-border/50`,n),children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3 px-4`,children:[(0,$.jsx)(`p`,{className:`shrink-0 text-[10px] font-semibold tracking-[0.12em] text-muted-foreground uppercase`,children:e}),(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-stretch`,role:`group`,"aria-label":e,children:r})]}),t?(0,$.jsx)(`p`,{className:`px-4 pb-2 text-[10px] text-muted-foreground`,children:t}):null]})}function cr({active:e,onClick:t,children:n}){return(0,$.jsx)(`button`,{type:`button`,"aria-pressed":e,onClick:t,className:Z(`inline-flex h-8 min-w-0 flex-1 items-center justify-center px-2 font-mono text-[10px] font-semibold outline-none select-none`,`focus-visible:ring-2 focus-visible:ring-ring/50 focus-visible:ring-inset`,e?`bg-muted text-foreground`:`text-muted-foreground hover:text-foreground`),children:n})}function lr({split:e=!1,className:t,variant:n=`ghost`,...r}){return(0,$.jsx)(re,{variant:n,className:Z(rr,e&&`border-r border-border/50`,t),...r})}function ur({children:e,slot:t}){return(0,$.jsx)(`p`,{className:`border-b border-border/50 px-4 py-3 text-[11px] text-destructive`,role:`alert`,"data-slot":t,children:e})}function dr({label:e,hint:t,children:n}){return(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-border/50 bg-muted/25 px-4 py-1.5`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-3`,children:[(0,$.jsx)(`p`,{className:`text-[10px] font-semibold tracking-[0.12em] text-foreground uppercase`,children:e}),t?(0,$.jsx)(`p`,{className:`truncate text-[10px] text-muted-foreground`,children:t}):null]}),n]})}function fr({children:e}){return(0,$.jsx)(`div`,{className:`grid grid-cols-2 border-b border-border/50`,children:e})}function pr({columns:e=4,children:t}){let n=Q.Children.count(t),r=Math.min(e,n);return(0,$.jsx)(`div`,{className:`@container w-full min-w-0 max-w-full`,children:(0,$.jsx)(`div`,{className:Z(`grid w-full min-w-0 grid-cols-1`,r>=2&&`@min-[18rem]:grid-cols-2`,r>=3&&`@min-[26rem]:grid-cols-3`,r>=4&&`@min-[34rem]:grid-cols-4`,`[&>*]:min-w-0 [&>*]:border-r [&>*]:border-border/50`,r>=2&&`@min-[18rem]:[&>*:nth-child(2n)]:border-r-0`,r>=3&&`@min-[26rem]:[&>*:nth-child(2n)]:border-r @min-[26rem]:[&>*:nth-child(3n)]:border-r-0`,r>=4&&`@min-[34rem]:[&>*:nth-child(2n)]:border-r @min-[34rem]:[&>*:nth-child(3n)]:border-r @min-[34rem]:[&>*:nth-child(4n)]:border-r-0`,r<2&&`[&>*]:border-r-0`,`[&>*:last-child]:border-r-0`),children:t})})}export{Dt as A,Gn as C,$t as D,an as E,pt as F,Ct as M,St as N,Ht as O,xt as P,er as S,pn as T,Yn as _,sr as a,Qn as b,lr as c,ar as d,or as f,qn as g,Kn as h,cr as i,Tt as j,Ot as k,pr as l,Xn as m,nr as n,ur as o,Wn as p,dr as r,ir as s,tr as t,fr as u,Jn as v,Nn as w,$n as x,Zn as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function e(e=globalThis.navigator){if(e===void 0)return!1;let t=e.userAgentData?.platform;return typeof t==`string`&&t.length>0?/mac/i.test(t):/Mac|iPhone|iPad|iPod/.test(`${e.platform??``} ${e.userAgent??``}`)}function t(t){return e(t)?`⌘`:`Ctrl`}function n(e,n){return[t(n),e]}function r(n,r){return e(r)?[t(r),`⇧`,n]:[t(r),`Shift`,n]}var i={overview:`1`,flows:`2`,store:`3`,observability:`4`,vault:`5`};function a(e){return n(e===`fast`?`K`:e===`settings`?`,`:e===`logout`?`E`:i[e])}var o={1:`/overview`,2:`/flows`,3:`/store`,4:`/observability`,5:`/vault`};function s(e){if(e===null||typeof HTMLElement>`u`||!(e instanceof HTMLElement))return!1;if(e.isContentEditable)return!0;let t=e.tagName;return t===`INPUT`||t===`TEXTAREA`||t===`SELECT`||e.closest(`[role="dialog"], [data-slot="command-palette"]`)!==null}export{r as a,n as i,a as n,s as r,o as t};
|