omnigateway 0.1.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.
Files changed (35) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +265 -0
  3. package/bin/omni.js +19582 -0
  4. package/gateway.js +39286 -0
  5. package/package.json +39 -0
  6. package/public/assets/Chip-D0YiqYkz.js +32 -0
  7. package/public/assets/CopyValue-BwjFnqW2.js +27 -0
  8. package/public/assets/Field-DdscQ9OO.js +65 -0
  9. package/public/assets/Lamp-CSv_5d5k.js +15 -0
  10. package/public/assets/Meter-Bm1oQE2U.js +14 -0
  11. package/public/assets/Modal-1tHwlj0o.js +82 -0
  12. package/public/assets/Rack-DANVhi_U.js +147 -0
  13. package/public/assets/Readout-CYg6UOop.js +27 -0
  14. package/public/assets/States-DPTTYUHL.js +54 -0
  15. package/public/assets/Table-LkPaHBsj.js +38 -0
  16. package/public/assets/Toggle-pWcL2A-N.js +42 -0
  17. package/public/assets/_app-C5mYmzgk.js +1 -0
  18. package/public/assets/_app.accounts-e7Mbaxdc.js +47 -0
  19. package/public/assets/_app.index-CxunMQ_m.js +57 -0
  20. package/public/assets/_app.keys-DTREQf0P.js +39 -0
  21. package/public/assets/_app.logs-Co3QPpc1.js +18 -0
  22. package/public/assets/_app.models-DPSKIyeq.js +144 -0
  23. package/public/assets/_app.settings-15ZMiM5O.js +16 -0
  24. package/public/assets/_app.usage-BBffCDCD.js +163 -0
  25. package/public/assets/archivo-latin-ext-standard-normal-7khWdh9v.woff2 +0 -0
  26. package/public/assets/archivo-latin-standard-normal-DY7AcnAa.woff2 +0 -0
  27. package/public/assets/archivo-vietnamese-standard-normal-rJmnGBSt.woff2 +0 -0
  28. package/public/assets/catalog-DmrbfYQe.js +1 -0
  29. package/public/assets/index-Co2s5xMk.css +1 -0
  30. package/public/assets/index-DnNTc35a.js +170 -0
  31. package/public/assets/login-DNvWG7Nv.js +33 -0
  32. package/public/assets/queries-vY5lJqBe.js +144 -0
  33. package/public/assets/spline-sans-mono-latin-ext-wght-normal-Dh0aNLWd.woff2 +0 -0
  34. package/public/assets/spline-sans-mono-latin-wght-normal-DlaB5ohX.woff2 +0 -0
  35. package/public/index.html +26 -0
package/package.json ADDED
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "omnigateway",
3
+ "version": "0.1.0",
4
+ "description": "Self-hosted AI gateway with Anthropic- and OpenAI-compatible APIs, an admin console, and a CLI",
5
+ "license": "MIT",
6
+ "author": "Harismawan <mail@harismawan.com>",
7
+ "type": "module",
8
+ "bin": {
9
+ "omni": "./bin/omni.js"
10
+ },
11
+ "files": [
12
+ "bin",
13
+ "gateway.js",
14
+ "public",
15
+ "README.md",
16
+ "LICENSE"
17
+ ],
18
+ "dependencies": {
19
+ "@node-rs/argon2": "2.0.2"
20
+ },
21
+ "engines": {
22
+ "bun": ">=1.4.0"
23
+ },
24
+ "repository": {
25
+ "type": "git",
26
+ "url": "git+https://github.com/harismawan/omnigateway.git"
27
+ },
28
+ "homepage": "https://github.com/harismawan/omnigateway#readme",
29
+ "bugs": "https://github.com/harismawan/omnigateway/issues",
30
+ "keywords": [
31
+ "ai",
32
+ "gateway",
33
+ "proxy",
34
+ "anthropic",
35
+ "openai",
36
+ "llm",
37
+ "oauth"
38
+ ]
39
+ }
@@ -0,0 +1,32 @@
1
+ import{B as e,Dt as t}from"./queries-vY5lJqBe.js";var n=t(),r={neutral:{fg:`var(--ink-dim)`,bg:`transparent`},ok:{fg:`var(--ok)`,bg:`var(--ok-wash)`},warn:{fg:`var(--warn)`,bg:`var(--warn-wash)`},down:{fg:`var(--down)`,bg:`var(--down-wash)`},accent:{fg:`var(--accent)`,bg:`var(--accent-wash)`}},i=e.span`
2
+ display: inline-flex;
3
+ align-items: center;
4
+ gap: 4px;
5
+ height: 18px;
6
+ padding: 0 6px;
7
+ border-radius: ${({theme:e})=>e.radius.chip};
8
+ border: 1px solid currentColor;
9
+ background: ${({$tone:e})=>r[e??`neutral`].bg};
10
+ color: ${({$tone:e})=>r[e??`neutral`].fg};
11
+ font-family: ${({theme:e})=>e.font.mono};
12
+ font-size: 10.5px;
13
+ letter-spacing: 0.02em;
14
+ white-space: nowrap;
15
+ `,a=e.span`
16
+ display: inline-flex;
17
+ align-items: center;
18
+ gap: 5px;
19
+ font-family: ${({theme:e})=>e.font.mono};
20
+ font-size: 11.5px;
21
+ color: ${({theme:e,$provider:t})=>e.provider[t]};
22
+ white-space: nowrap;
23
+
24
+ &::before {
25
+ content: "";
26
+ width: 3px;
27
+ height: 11px;
28
+ border-radius: 1px;
29
+ background: currentColor;
30
+ flex: none;
31
+ }
32
+ `;function o({provider:e,className:t}){return(0,n.jsx)(a,{$provider:e,className:t,children:e})}export{o as n,i as t};
@@ -0,0 +1,27 @@
1
+ import{B as e,Dt as t,I as n,Kt as r,M as i,Ot as a}from"./queries-vY5lJqBe.js";import{m as o}from"./Rack-DANVhi_U.js";var s=o(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),c=o(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),l=r(a(),1);function u(e){if(e===null||typeof getSelection!=`function`)return!1;let t=getSelection();if(t===null)return!1;try{let n=document.createRange();return n.selectNodeContents(e),t.removeAllRanges(),t.addRange(n),!0}catch{return!1}}async function d(e,t){if(typeof navigator<`u`&&navigator.clipboard!==void 0)try{return await navigator.clipboard.writeText(e),`copied`}catch{}let n=u(t??null);if(n&&typeof document.execCommand==`function`)try{if(document.execCommand(`copy`))return`copied`}catch{}return n?`selected`:`failed`}var f=t(),p=e.div`
2
+ display: flex;
3
+ align-items: stretch;
4
+ gap: 0;
5
+ border: 1px solid ${({theme:e})=>e.color.ruleStrong};
6
+ border-radius: ${({theme:e})=>e.radius.control};
7
+ background: ${({theme:e})=>e.color.panelSunk};
8
+ overflow: hidden;
9
+ `,m=e.code`
10
+ flex: 1;
11
+ min-width: 0;
12
+ padding: 7px 8px;
13
+ font-family: ${({theme:e})=>e.font.mono};
14
+ font-size: 12px;
15
+ word-break: break-all;
16
+ user-select: all;
17
+ `,h=e(n)`
18
+ border: 0;
19
+ border-left: 1px solid ${({theme:e})=>e.color.ruleStrong};
20
+ border-radius: 0;
21
+ height: auto;
22
+ width: 32px;
23
+ flex: none;
24
+ `,g=e.p`
25
+ font-size: 11px;
26
+ color: ${({theme:e})=>e.color.warn};
27
+ `,_={selected:`Your browser would not copy it. The value is selected — copy it with your keyboard.`,failed:`Your browser would not copy it. Select the value and copy it by hand.`};function v({value:e,label:t}){let[n,r]=(0,l.useState)(null),a=(0,l.useRef)(null);(0,l.useEffect)(()=>{if(n!==`copied`)return;let e=setTimeout(()=>r(null),1600);return()=>clearTimeout(e)},[n]);let o=(0,l.useCallback)(()=>{d(e,a.current).then(r)},[e]),u=n===`copied`,v=n===null?void 0:_[n];return(0,f.jsxs)(i,{$gap:1,children:[(0,f.jsxs)(p,{children:[(0,f.jsx)(m,{ref:a,children:e}),(0,f.jsx)(h,{type:`button`,$variant:`ghost`,onClick:o,"aria-label":u?`Copied`:t,title:u?`Copied`:t,children:u?(0,f.jsx)(s,{}):(0,f.jsx)(c,{})})]}),v===void 0?null:(0,f.jsx)(g,{role:`status`,children:v})]})}export{v as t};
@@ -0,0 +1,65 @@
1
+ import{B as e,D as t,Dt as n,Kt as r,Ot as i}from"./queries-vY5lJqBe.js";var a=r(i(),1),o=n(),s=`
2
+ width: 100%;
3
+ border-radius: 3px;
4
+ transition: border-color 120ms ease;
5
+ `,c=e.input`
6
+ ${s}
7
+ height: 30px;
8
+ padding: 0 8px;
9
+ background: ${({theme:e})=>e.color.panelSunk};
10
+ border: 1px solid ${({theme:e})=>e.color.ruleStrong};
11
+ color: ${({theme:e})=>e.color.ink};
12
+ font-family: ${({theme:e})=>e.font.mono};
13
+ font-size: 12px;
14
+
15
+ &::placeholder {
16
+ color: ${({theme:e})=>e.color.inkFaint};
17
+ font-family: ${({theme:e})=>e.font.sans};
18
+ }
19
+
20
+ &:hover:not(:disabled) {
21
+ border-color: ${({theme:e})=>e.color.accent};
22
+ }
23
+
24
+ &:disabled {
25
+ opacity: 0.5;
26
+ }
27
+ `;e.textarea`
28
+ ${s}
29
+ min-height: 72px;
30
+ padding: 6px 8px;
31
+ background: ${({theme:e})=>e.color.panelSunk};
32
+ border: 1px solid ${({theme:e})=>e.color.ruleStrong};
33
+ color: ${({theme:e})=>e.color.ink};
34
+ font-family: ${({theme:e})=>e.font.mono};
35
+ font-size: 12px;
36
+ resize: vertical;
37
+ `;var l=e.select`
38
+ ${s}
39
+ height: 30px;
40
+ padding: 0 6px;
41
+ background: ${({theme:e})=>e.color.panelSunk};
42
+ border: 1px solid ${({theme:e})=>e.color.ruleStrong};
43
+ color: ${({theme:e})=>e.color.ink};
44
+ font-family: ${({theme:e})=>e.font.mono};
45
+ font-size: 12px;
46
+ cursor: pointer;
47
+
48
+ &:hover:not(:disabled) {
49
+ border-color: ${({theme:e})=>e.color.accent};
50
+ }
51
+ `,u=e.div`
52
+ display: flex;
53
+ flex-direction: column;
54
+ gap: 4px;
55
+ min-width: 0;
56
+ `,d=e.p`
57
+ font-size: 11px;
58
+ color: ${({theme:e})=>e.color.inkDim};
59
+ `,f=e.p`
60
+ font-size: 11px;
61
+ color: ${({theme:e})=>e.color.down};
62
+ `;function p({label:e,hint:n,problem:r,children:i}){let s=(0,a.useId)(),c=r===void 0?n===void 0?void 0:`${s}-hint`:`${s}-problem`;return(0,o.jsxs)(u,{children:[(0,o.jsx)(t,{as:`label`,htmlFor:s,children:e}),i({id:s,"aria-describedby":c}),r===void 0?n===void 0?null:(0,o.jsx)(d,{id:`${s}-hint`,children:n}):(0,o.jsx)(f,{id:`${s}-problem`,children:r})]})}var m=e(c).attrs({type:`number`,inputMode:`decimal`})`
63
+ text-align: right;
64
+ padding-right: 6px;
65
+ `;export{l as i,c as n,m as r,p as t};
@@ -0,0 +1,15 @@
1
+ import{B as e,Dt as t,z as n}from"./queries-vY5lJqBe.js";function r(e,t){if(e.length===0)return null;let n=[...e].sort((e,t)=>e-t);return n[Math.min(n.length-1,Math.max(0,Math.ceil(t*n.length)-1))]??null}function i(e){return e.status>=400||e.errorCode!==null}function a(e,t){let n=[],a=0,o=0,s=0,c=0,l=0;for(let t of e)i(t)&&(a+=1),t.ttftMs!==null&&Number.isFinite(t.ttftMs)&&n.push(t.ttftMs),o+=t.costUsd,s+=t.inputTokens,c+=t.outputTokens,l+=t.cacheReadTokens;let u=t/6e4;return{requests:e.length,errors:a,errorRate:e.length===0?0:a/e.length,ratePerMin:u<=0?0:e.length/u,ttftP50:r(n,.5),ttftP95:r(n,.95),costUsd:o,inputTokens:s,outputTokens:c,cacheReadTokens:l}}function o(e,t){let{now:n,spanMs:a,count:o}=t,s=a/o,c=n-a,l=Array.from({length:o},(e,t)=>({at:c+t*s,total:0,errors:0,costUsd:0,ttftMs:null})),u=Array.from({length:o},()=>[]);for(let t of e){if(t.at<c||t.at>n)continue;let e=Math.min(o-1,Math.floor((t.at-c)/s)),r=l[e];r!==void 0&&(r.total+=1,r.costUsd+=t.costUsd,i(t)&&(r.errors+=1),t.ttftMs!==null&&Number.isFinite(t.ttftMs)&&u[e]?.push(t.ttftMs))}for(let[e,t]of l.entries())t.ttftMs=r(u[e]??[],.5);return l}var s={ok:`●`,warn:`◐`,down:`○`,idle:`·`},c={tokenRejected:`reconnect needed — provider rejected the refresh token`,expiredNoRefresh:`reconnect needed — token expired with nothing to refresh from`};function l(e,t,n,r=null){if(!n){let e=r===`tokenRejected`||r===`expiredNoRefresh`;return{state:e?`down`:`idle`,note:e?c[r]:`disabled`,ttftMs:null,lastUsedAt:null,consecutiveFailures:0}}if(e.length===0)return{state:`idle`,note:`unused`,ttftMs:null,lastUsedAt:null,consecutiveFailures:0};let i=`ok`,a=``,o=null,s=null,l=0;for(let n of e){if(n.ewmaTtftMs!==null&&(o=o===null?n.ewmaTtftMs:Math.max(o,n.ewmaTtftMs)),n.lastUsedAt!==null&&(s=s===null?n.lastUsedAt:Math.max(s,n.lastUsedAt)),l=Math.max(l,n.consecutiveFailures),n.breakerState===`open`){i=`down`,a=`breaker open`;continue}if(n.rateLimitedUntil!==null&&n.rateLimitedUntil>t&&i!==`down`){i=`warn`,a=`rate limited`;continue}n.breakerState===`halfOpen`&&i===`ok`&&(i=`warn`,a=`probing`)}return{state:i,note:a,ttftMs:o,lastUsedAt:s,consecutiveFailures:l}}var u={fiveHour:`5h`,daily:`24h`,weekly:`7d`};function d(e){return Math.max(e,6e4)*3}function f(e,t,n){return e.observedAt<=0||t-e.observedAt>d(n)}function p(e,t,n,r){let i=u[e.windowType];return e.observedAt<=0?`${i} · never observed`:f(e,t,n)?`${i} · stale, read ${r(e.observedAt,t)}`:e.resetsAt===null?i:`${i} · resets ${r(e.resetsAt,t)}`}function m(e){let t=null;for(let n of e){if(n.limit===null||n.limit<=0)continue;let e=Math.min(1,n.used/n.limit);(t===null||e>t.fraction)&&(t={window:n,fraction:e})}return t}function h(e,t){let n=new Map;for(let r of e){let e=t(r),i=n.get(e);i===void 0?n.set(e,[r]):i.push(r)}return n}var g=t(),_={ok:n`
2
+ color: ${({theme:e})=>e.color.ok};
3
+ `,warn:n`
4
+ color: ${({theme:e})=>e.color.warn};
5
+ `,down:n`
6
+ color: ${({theme:e})=>e.color.down};
7
+ `,idle:n`
8
+ color: ${({theme:e})=>e.color.inkFaint};
9
+ `},v=e.span`
10
+ font-family: ${({theme:e})=>e.font.mono};
11
+ font-size: 12px;
12
+ line-height: 1;
13
+ flex: none;
14
+ ${({$state:e})=>_[e]}
15
+ `;function y({state:e,label:t,className:n}){return(0,g.jsx)(v,{$state:e,className:n,role:`img`,"aria-label":t,title:t,children:s[e]})}export{h as a,a as c,l as i,m as l,u as n,i as o,o as r,p as s,y as t};
@@ -0,0 +1,14 @@
1
+ import{B as e,Dt as t}from"./queries-vY5lJqBe.js";var n=t(),r=e.div`
2
+ position: relative;
3
+ width: 100%;
4
+ height: ${({$height:e})=>e}px;
5
+ background: ${({theme:e})=>e.color.panelSunk};
6
+ border: 1px solid ${({theme:e})=>e.color.rule};
7
+ border-radius: 2px;
8
+ overflow: hidden;
9
+ `,i=e.div`
10
+ height: 100%;
11
+ width: ${({$fraction:e})=>`${Math.max(0,Math.min(1,e))*100}%`};
12
+ background: ${({$tone:e})=>e};
13
+ transition: width 240ms ease;
14
+ `;function a(e){return e>=.9?`var(--down)`:e>=.7?`var(--warn)`:`var(--ok)`}function o({fraction:e,label:t,height:o=6,tone:s,className:c}){return(0,n.jsx)(r,{className:c,$height:o,role:`meter`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(Math.max(0,Math.min(1,e))*100),"aria-label":t,title:t,children:(0,n.jsx)(i,{$fraction:e,$tone:s??a(e)})})}export{o as t};
@@ -0,0 +1,82 @@
1
+ import{B as e,D as t,Dt as n,I as r,Kt as i,Ot as a,U as o,j as s}from"./queries-vY5lJqBe.js";import{m as c}from"./Rack-DANVhi_U.js";var l=c(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),u=i(a(),1),d=Object.defineProperty,f=(e,t)=>d(e,`name`,{value:t,configurable:!0});function p(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}f(p,`setRef`);function m(...e){return t=>{let n=!1,r=e.map(e=>{let r=p(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():p(e[t],null)}}}}f(m,`composeRefs`);function h(...e){return u.useCallback(m(...e),e)}f(h,`useComposedRefs`);var g=n(),_=i(o(),1),v=Object.defineProperty,y=(e,t)=>v(e,`name`,{value:t,configurable:!0});function b(e){let t=u.forwardRef((t,n)=>{let{children:r,...i}=t,a=null,o=!1,s=[];E(r)&&typeof ie==`function`&&(r=ie(r._payload)),u.Children.forEach(r,e=>{if(ee(e)){o=!0;let t=e,n=`child`in t.props?t.props.child:t.props.children;E(n)&&typeof ie==`function`&&(n=ie(n._payload)),a=C(t,n),s.push(a?.props?.children)}else s.push(e)}),a?a=u.cloneElement(a,void 0,s):!o&&u.Children.count(r)===1&&u.isValidElement(r)&&(a=r);let c=a?T(a):void 0,l=h(n,c);if(!a){if(r||r===0)throw Error(o?re(e):ne(e));return r}let d=w(i,a.props??{});return a.type!==u.Fragment&&(d.ref=n?l:c),u.cloneElement(a,d)});return t.displayName=`${e}.Slot`,t}y(b,`createSlot`);var x=Symbol.for(`radix.slottable`);function S(e){let t=y(e=>`child`in e?e.children(e.child):e.children,`Slottable`);return t.displayName=`${e}.Slottable`,t.__radixId=x,t}y(S,`createSlottable`);var C=y((e,t)=>{if(`child`in e.props){let t=e.props.child;return u.isValidElement(t)?u.cloneElement(t,void 0,e.props.children(t.props.children)):null}return u.isValidElement(t)?t:null},`getSlottableElementFromSlottable`);function w(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}y(w,`mergeProps`);function T(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}y(T,`getElementRef`);function ee(e){return u.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===x}y(ee,`isSlottable`);var te=Symbol.for(`react.lazy`);function E(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===te&&`_payload`in e&&D(e._payload)}y(E,`isLazyComponent`);function D(e){return typeof e==`object`&&!!e&&`then`in e}y(D,`isPromiseLike`);var ne=y(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,`createSlotError`),re=y(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,`createSlottableError`),ie=u.use,ae=Object.defineProperty,oe=(e,t)=>ae(e,`name`,{value:t,configurable:!0}),O=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=b(`Primitive.${t}`),r=u.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,g.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function se(e,t){e&&_.flushSync(()=>e.dispatchEvent(t))}oe(se,`dispatchDiscreteCustomEvent`);var ce=Object.defineProperty,k=(e,t)=>ce(e,`name`,{value:t,configurable:!0});function le(e,t){let n=u.createContext(t);n.displayName=e+`Context`;let r=k(e=>{let{children:t,...r}=e,i=u.useMemo(()=>r,Object.values(r));return(0,g.jsx)(n.Provider,{value:i,children:t})},`Provider`);r.displayName=e+`Provider`;function i(r,i={}){let{optional:a=!1}=i,o=u.useContext(n);if(o)return o;if(t!==void 0)return t;if(!a)throw Error(`\`${r}\` must be used within \`${e}\``)}return k(i,`useContext`),[r,i]}k(le,`createContext`);function ue(e,t=[]){let n=[];function r(t,r){let i=u.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=k(t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=u.useMemo(()=>o,Object.values(o));return(0,g.jsx)(s.Provider,{value:c,children:r})},`Provider`);o.displayName=t+`Provider`;function s(n,o,s={}){let{optional:c=!1}=s,l=o?.[e]?.[a]||i,d=u.useContext(l);if(d)return d;if(r!==void 0)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return k(s,`useContext`),[o,s]}k(r,`createContext`);let i=k(()=>{let t=n.map(e=>u.createContext(e));return k(function(n){let r=n?.[e]||t;return u.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},`useScope`)},`createScope`);return i.scopeName=e,[r,de(i,...t)]}k(ue,`createContextScope`);function de(...e){let t=e[0];if(e.length===1)return t;let n=k(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return k(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return u.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},`useComposedScopes`)},`createScope`);return n.scopeName=t.scopeName,n}k(de,`composeContextScopes`);var fe=Object.defineProperty,A=(e,t)=>fe(e,`name`,{value:t,configurable:!0}),pe=!!(typeof window<`u`&&window.document&&window.document.createElement);function j(e,t,{checkForDefaultPrevented:n=!0}={}){return A(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},`handleEvent`)}A(j,`composeEventHandlers`);function me(e){if(!pe)throw Error(`Cannot access window outside of the DOM`);return e?.ownerDocument?.defaultView??window}A(me,`getOwnerWindow`);function he(e){if(!pe)throw Error(`Cannot access document outside of the DOM`);return e?.ownerDocument??document}A(he,`getOwnerDocument`);function ge(e,t=!1){let{activeElement:n}=he(e);if(!n?.nodeName)return null;if(_e(n)&&n.contentDocument)return ge(n.contentDocument.body,t);if(t){let e=n.getAttribute(`aria-activedescendant`);if(e){let t=he(n).getElementById(e);if(t)return t}}return n}A(ge,`getActiveElement`);function _e(e){return e.tagName===`IFRAME`}A(_e,`isFrame`);var M=globalThis?.document?u.useLayoutEffect:()=>{},ve=Object.defineProperty,ye=(e,t)=>ve(e,`name`,{value:t,configurable:!0}),be=u.useEffectEvent,xe=u.useInsertionEffect;function Se(e){if(typeof be==`function`)return be(e);let t=u.useRef(()=>{throw Error(`Cannot call an event handler while rendering.`)});return typeof xe==`function`?xe(()=>{t.current=e}):M(()=>{t.current=e}),u.useMemo(()=>((...e)=>t.current?.(...e)),[])}ye(Se,`useEffectEvent`);var Ce=Object.defineProperty,N=(e,t)=>Ce(e,`name`,{value:t,configurable:!0}),we=u.useInsertionEffect||M;function Te({prop:e,defaultProp:t,onChange:n=N(()=>{},`onChange`),caller:r}){let[i,a,o]=Ee({defaultProp:t,onChange:n}),s=e!==void 0;return[s?e:i,u.useCallback(t=>{if(s){let n=De(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}N(Te,`useControllableState`);function Ee({defaultProp:e,onChange:t}){let[n,r]=u.useState(e),i=u.useRef(n),a=u.useRef(t);return we(()=>{a.current=t},[t]),u.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}N(Ee,`useUncontrolledState`);function De(e){return typeof e==`function`}N(De,`isFunction`);var Oe=Symbol(`RADIX:SYNC_STATE`);function ke(e,t,n,r){let{prop:i,defaultProp:a,onChange:o,caller:s}=t,c=i!==void 0,l=Se(o),d=[{...n,state:a}];r&&d.push(r);let[f,p]=u.useReducer((t,n)=>{if(n.type===Oe)return{...t,state:n.state};let r=e(t,n);return c&&!Object.is(r.state,t.state)&&l(r.state),r},...d),m=f.state,h=u.useRef(m);u.useEffect(()=>{h.current!==m&&(h.current=m,c||l(m))},[m,h,c]);let g=u.useMemo(()=>i===void 0?f:{...f,state:i},[f,i]);return u.useEffect(()=>{c&&!Object.is(i,f.state)&&p({type:Oe,state:i})},[i,f.state,c]),[g,p]}N(ke,`useControllableStateReducer`);var Ae=Object.defineProperty,P=(e,t)=>Ae(e,`name`,{value:t,configurable:!0});function je(e,t){return u.useReducer((e,n)=>t[e][n]??e,e)}P(je,`useStateMachine`);var Me=P(e=>{let{present:t,children:n}=e,r=Ne(t),i=typeof n==`function`?n({present:r.isPresent}):u.Children.only(n),a=Fe(r.ref,Ie(i));return typeof n==`function`||r.isPresent?u.cloneElement(i,{ref:a}):null},`Presence`);function Ne(e){let[t,n]=u.useState(),r=u.useRef(null),i=u.useRef(e),a=u.useRef(`none`),o=u.useRef(void 0),[s,c]=je(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return u.useEffect(()=>{s===`mounted`?(a.current=o.current??F(r.current),o.current=void 0):a.current=`none`},[s]),M(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,s=F(t);e?(o.current=s,c(`MOUNT`)):s===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==s?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),M(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=P(a=>{let o=F(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},`handleAnimationEnd`),s=P(e=>{e.target===t&&(a.current=F(r.current))},`handleAnimationStart`);return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:u.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,o.current=F(t)}else r.current=null;n(e)},[])}}P(Ne,`usePresence`);function Pe(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}P(Pe,`setRef`);function Fe(...e){let t=u.useRef(e);return t.current=e,u.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=Pe(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;e<i.length;e++){let t=i[e];typeof t==`function`?t():Pe(n[e],null)}}},[])}P(Fe,`useStableComposedRefs`);function F(e){return e?.animationName||`none`}P(F,`getAnimationName`);function Ie(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}P(Ie,`getElementRef`);var Le=Object.defineProperty,Re=(e,t)=>Le(e,`name`,{value:t,configurable:!0}),ze=u.useId||(()=>void 0),Be=0;function I(e){let[t,n]=u.useState(ze());return M(()=>{e||n(e=>e??String(Be++))},[e]),e||(t?`radix-${t}`:``)}Re(I,`useId`);var Ve=Object.defineProperty,He=(e,t)=>Ve(e,`name`,{value:t,configurable:!0});function L(e){let t=u.useRef(e);return u.useEffect(()=>{t.current=e}),u.useMemo(()=>((...e)=>t.current?.(...e)),[])}He(L,`useCallbackRef`);var Ue=Object.defineProperty,R=(e,t)=>Ue(e,`name`,{value:t,configurable:!0}),We=`dismissableLayer.update`,Ge=`dismissableLayer.pointerDownOutside`,Ke=`dismissableLayer.focusOutside`,qe,Je=u.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Ye=u.forwardRef(R(function(e,t){let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:s,onDismiss:c,...l}=e,d=u.useContext(Je),[f,p]=u.useState(null),m=f?.ownerDocument??globalThis?.document,[,_]=u.useState({}),v=h(t,p),y=Array.from(d.layers),[b]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),x=b?y.indexOf(b):-1,S=f?y.indexOf(f):-1,C=d.layersWithOutsidePointerEventsDisabled.size>0,w=S>=x,T=u.useRef(!1),ee=Qe(e=>{a?.(e),s?.(e),e.defaultPrevented||c?.()},{ownerDocument:m,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:T,dismissableSurfaces:d.dismissableSurfaces,shouldHandlePointerDownOutside:u.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...d.branches].some(t=>t.contains(e));return w&&!t},[d.branches,w])}),te=$e(e=>{if(r&&T.current)return;let t=e.target;[...d.branches].some(e=>e.contains(t))||(o?.(e),s?.(e),e.defaultPrevented||c?.())},m),E=f?S===y.length-1:!1,D=L(e=>{e.key===`Escape`&&(i?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))});return u.useEffect(()=>{if(E)return m.addEventListener(`keydown`,D,{capture:!0}),()=>m.removeEventListener(`keydown`,D,{capture:!0})},[m,E,D]),u.useEffect(()=>{if(f)return n&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(qe=m.body.style.pointerEvents,m.body.style.pointerEvents=`none`),d.layersWithOutsidePointerEventsDisabled.add(f)),d.layers.add(f),et(),()=>{n&&(d.layersWithOutsidePointerEventsDisabled.delete(f),d.layersWithOutsidePointerEventsDisabled.size===0&&(m.body.style.pointerEvents=qe))}},[f,m,n,d]),u.useEffect(()=>()=>{f&&(d.layers.delete(f),d.layersWithOutsidePointerEventsDisabled.delete(f),et())},[f,d]),u.useEffect(()=>{let e=R(()=>_({}),`handleUpdate`);return document.addEventListener(We,e),()=>document.removeEventListener(We,e)},[]),(0,g.jsx)(O.div,{...l,ref:v,style:{pointerEvents:C?w?`auto`:`none`:void 0,...e.style},onFocusCapture:j(e.onFocusCapture,te.onFocusCapture),onBlurCapture:j(e.onBlurCapture,te.onBlurCapture),onPointerDownCapture:j(e.onPointerDownCapture,ee.onPointerDownCapture)})},`DismissableLayer`));function Xe(){let e=u.useContext(Je),[t,n]=u.useState(null);return u.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}R(Xe,`useDismissableLayerSurface`);var Ze=R(()=>!0,`IS_TRUE`);function Qe(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a,shouldHandlePointerDownOutside:o=Ze}=t,s=L(e),c=u.useRef(!1),l=u.useRef(!1),d=u.useRef(new Map),f=u.useRef(()=>{});return u.useEffect(()=>{function e(){l.current=!1,i.current=!1,d.current.clear()}R(e,`resetOutsideInteraction`);function t(){return Array.from(d.current.values()).some(Boolean)}R(t,`isOutsideInteractionIntercepted`);function u(e){if(!l.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||d.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{l.current&&f.current()},0)}R(u,`handleInteractionCapture`);function p(e){l.current&&d.current.set(e.type,!1)}R(p,`handleInteractionBubble`);let m=R(a=>{if(a.target&&!c.current){let u=function(){n.removeEventListener(`click`,f.current);let r=t();e(),r||tt(Ge,s,p,{discrete:!0})};if(R(u,`handleAndDispatchPointerDownOutsideEvent`),!o(a.target)){n.removeEventListener(`click`,f.current),e(),c.current=!1;return}let p={originalEvent:a};l.current=!0,i.current=r&&a.button===0,d.current.clear(),!r||a.button!==0?u():(n.removeEventListener(`click`,f.current),f.current=u,n.addEventListener(`click`,f.current,{once:!0}))}else n.removeEventListener(`click`,f.current),e();c.current=!1},`handlePointerDown`),h=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of h)n.addEventListener(e,u,!0),n.addEventListener(e,p);let g=window.setTimeout(()=>{n.addEventListener(`pointerdown`,m)},0);return()=>{window.clearTimeout(g),n.removeEventListener(`pointerdown`,m),n.removeEventListener(`click`,f.current);for(let e of h)n.removeEventListener(e,u,!0),n.removeEventListener(e,p)}},[n,s,r,i,a,o]),{onPointerDownCapture:R(()=>c.current=!0,`onPointerDownCapture`)}}R(Qe,`usePointerDownOutside`);function $e(e,t=globalThis?.document){let n=L(e),r=u.useRef(!1);return u.useEffect(()=>{let e=R(e=>{e.target&&!r.current&&tt(Ke,n,{originalEvent:e},{discrete:!1})},`handleFocus`);return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:R(()=>r.current=!0,`onFocusCapture`),onBlurCapture:R(()=>r.current=!1,`onBlurCapture`)}}R($e,`useFocusOutside`);function et(){let e=new CustomEvent(We);document.dispatchEvent(e)}R(et,`dispatchUpdate`);function tt(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?se(i,a):i.dispatchEvent(a)}R(tt,`handleAndDispatchCustomEvent`);var nt=Object.defineProperty,z=(e,t)=>nt(e,`name`,{value:t,configurable:!0}),rt=`focusScope.autoFocusOnMount`,it=`focusScope.autoFocusOnUnmount`,at={bubbles:!1,cancelable:!0},ot=u.forwardRef(z(function(e,t){let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=u.useState(null),l=L(i),d=L(a),f=u.useRef(null),p=h(t,c),m=u.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;u.useEffect(()=>{if(r){let e=function(e){if(m.paused||!s)return;let t=e.target;s.contains(t)?f.current=t:B(f.current,{select:!0})},t=function(e){if(m.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||B(f.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&B(s)};z(e,`handleFocusIn`),z(t,`handleFocusOut`),z(n,`handleMutations`),document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,m.paused]),u.useEffect(()=>{if(s){pt.add(m);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(rt,at);s.addEventListener(rt,l),s.dispatchEvent(t),t.defaultPrevented||(st(gt(lt(s)),{select:!0}),document.activeElement===e&&B(s))}return()=>{s.removeEventListener(rt,l),setTimeout(()=>{let t=new CustomEvent(it,at);s.addEventListener(it,d),s.dispatchEvent(t),t.defaultPrevented||B(e??document.body,{select:!0}),s.removeEventListener(it,d),pt.remove(m)},0)}}},[s,l,d,m]);let _=u.useCallback(e=>{if(!n&&!r||m.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=ct(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&B(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&B(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,m.paused]);return(0,g.jsx)(O.div,{tabIndex:-1,...o,ref:p,onKeyDown:_})},`FocusScope`));function st(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(B(r,{select:t}),document.activeElement!==n)return}z(st,`focusFirst`);function ct(e){let t=lt(e);return[ut(t,e),ut(t.reverse(),e)]}z(ct,`getTabbableEdges`);function lt(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:z(e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},`acceptNode`)});for(;n.nextNode();)t.push(n.currentNode);return t}z(lt,`getTabbableCandidates`);function ut(e,t){let n=typeof t.checkVisibility==`function`&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):dt(r,{upTo:t})))return r}z(ut,`findVisible`);function dt(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}z(dt,`isHidden`);function ft(e){return e instanceof HTMLInputElement&&`select`in e}z(ft,`isSelectableInput`);function B(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&ft(e)&&t&&e.select()}}z(B,`focus`);var pt=mt();function mt(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=ht(e,t),e.unshift(t)},remove(t){e=ht(e,t),e[0]?.resume()}}}z(mt,`createFocusScopesStack`);function ht(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}z(ht,`arrayRemove`);function gt(e){return e.filter(e=>e.tagName!==`A`)}z(gt,`removeLinks`);var _t=Object.defineProperty,vt=u.forwardRef(((e,t)=>_t(e,`name`,{value:t,configurable:!0}))(function(e,t){let{container:n,...r}=e,[i,a]=u.useState(!1);M(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?_.createPortal((0,g.jsx)(O.div,{...r,ref:t}),o):null},`Portal`)),yt=Object.defineProperty,bt=(e,t)=>yt(e,`name`,{value:t,configurable:!0}),V=0,H=null;function xt(e){return St(),e.children}bt(xt,`FocusGuards`);function St(){u.useEffect(()=>{H||={start:Ct(),end:Ct()};let{start:e,end:t}=H;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),V++,()=>{V===1&&(H?.start.remove(),H?.end.remove(),H=null),V=Math.max(0,V-1)}},[])}bt(St,`useFocusGuards`);function Ct(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}bt(Ct,`createFocusGuard`);var U=function(){return U=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},U.apply(this,arguments)};function wt(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function Tt(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var W=`right-scroll-bar-position`,G=`width-before-scroll-bar`,Et=`with-scroll-bars-hidden`,Dt=`--removed-body-scroll-bar-size`;function Ot(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function kt(e,t){var n=(0,u.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var At=typeof window<`u`?u.useLayoutEffect:u.useEffect,jt=new WeakMap;function Mt(e,t){var n=kt(t||null,function(t){return e.forEach(function(e){return Ot(e,t)})});return At(function(){var t=jt.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||Ot(e,null)}),i.forEach(function(e){r.has(e)||Ot(e,a)})}jt.set(n,e)},[e]),n}function Nt(e){return e}function Pt(e,t){t===void 0&&(t=Nt);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function Ft(e){e===void 0&&(e={});var t=Pt(null);return t.options=U({async:!0,ssr:!1},e),t}var It=function(e){var t=e.sideCar,n=wt(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return u.createElement(r,U({},n))};It.isSideCarExport=!0;function Lt(e,t){return e.useMedium(t),It}var Rt=Ft(),zt=function(){},K=u.forwardRef(function(e,t){var n=u.useRef(null),r=u.useState({onScrollCapture:zt,onWheelCapture:zt,onTouchMoveCapture:zt}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,d=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=wt(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),S=p,C=Mt([n,t]),w=U(U({},x),i);return u.createElement(u.Fragment,null,d&&u.createElement(S,{sideCar:Rt,removeScrollBar:l,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),o?u.cloneElement(u.Children.only(s),U(U({},w),{ref:C})):u.createElement(y,U({},w,{className:c,ref:C}),s))});K.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},K.classNames={fullWidth:G,zeroRight:W};var Bt,Vt=function(){if(Bt)return Bt;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function Ht(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=Vt();return t&&e.setAttribute(`nonce`,t),e}function Ut(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function Wt(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var Gt=function(){var e=0,t=null;return{add:function(n){e==0&&(t=Ht())&&(Ut(t,n),Wt(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},Kt=function(){var e=Gt();return function(t,n){u.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},qt=function(){var e=Kt();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},Jt={left:0,top:0,right:0,gap:0},Yt=function(e){return parseInt(e||``,10)||0},Xt=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[Yt(n),Yt(r),Yt(i)]},Zt=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return Jt;var t=Xt(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Qt=qt(),q=`data-scroll-locked`,$t=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
2
+ .${Et} {
3
+ overflow: hidden ${r};
4
+ padding-right: ${s}px ${r};
5
+ }
6
+ body[${q}] {
7
+ overflow: hidden ${r};
8
+ overscroll-behavior: contain;
9
+ ${[t&&`position: relative ${r};`,n===`margin`&&`
10
+ padding-left: ${i}px;
11
+ padding-top: ${a}px;
12
+ padding-right: ${o}px;
13
+ margin-left:0;
14
+ margin-top:0;
15
+ margin-right: ${s}px ${r};
16
+ `,n===`padding`&&`padding-right: ${s}px ${r};`].filter(Boolean).join(``)}
17
+ }
18
+
19
+ .${W} {
20
+ right: ${s}px ${r};
21
+ }
22
+
23
+ .${G} {
24
+ margin-right: ${s}px ${r};
25
+ }
26
+
27
+ .${W} .${W} {
28
+ right: 0 ${r};
29
+ }
30
+
31
+ .${G} .${G} {
32
+ margin-right: 0 ${r};
33
+ }
34
+
35
+ body[${q}] {
36
+ ${Dt}: ${s}px;
37
+ }
38
+ `},en=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},tn=function(){u.useEffect(function(){return document.body.setAttribute(q,(en()+1).toString()),function(){var e=en()-1;e<=0?document.body.removeAttribute(q):document.body.setAttribute(q,e.toString())}},[])},nn=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;tn();var a=u.useMemo(function(){return Zt(i)},[i]);return u.createElement(Qt,{styles:$t(a,!t,i,n?``:`!important`)})},rn=!1;if(typeof window<`u`)try{var an=Object.defineProperty({},"passive",{get:function(){return rn=!0,!0}});window.addEventListener(`test`,an,an),window.removeEventListener(`test`,an,an)}catch{rn=!1}var J=rn?{passive:!1}:!1,on=function(e){return e.tagName===`TEXTAREA`},sn=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!on(e)&&n[t]===`visible`)},cn=function(e){return sn(e,`overflowY`)},ln=function(e){return sn(e,`overflowX`)},un=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),pn(e,r)){var i=mn(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},dn=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},fn=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},pn=function(e,t){return e===`v`?cn(t):ln(t)},mn=function(e,t){return e===`v`?dn(t):fn(t)},hn=function(e,t){return e===`h`&&t===`rtl`?-1:1},gn=function(e,t,n,r,i){var a=hn(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=mn(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&pn(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},_n=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},vn=function(e){return[e.deltaX,e.deltaY]},yn=function(e){return e&&`current`in e?e.current:e},bn=function(e,t){return e[0]===t[0]&&e[1]===t[1]},xn=function(e){return`
39
+ .block-interactivity-${e} {pointer-events: none;}
40
+ .allow-interactivity-${e} {pointer-events: all;}
41
+ `},Sn=0,Y=[];function Cn(e){var t=u.useRef([]),n=u.useRef([0,0]),r=u.useRef(),i=u.useState(Sn++)[0],a=u.useState(qt)[0],o=u.useRef(e);u.useEffect(function(){o.current=e},[e]),u.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=Tt([e.lockRef.current],(e.shards||[]).map(yn),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=u.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=_n(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=un(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=un(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return gn(h,t,e,h===`h`?s:c,!0)},[]),c=u.useCallback(function(e){var n=e;if(!(!Y.length||Y[Y.length-1]!==a)){var r=`deltaY`in n?vn(n):_n(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&bn(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(yn).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=u.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:wn(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),d=u.useCallback(function(e){n.current=_n(e),r.current=void 0},[]),f=u.useCallback(function(t){l(t.type,vn(t),t.target,s(t,e.lockRef.current))},[]),p=u.useCallback(function(t){l(t.type,_n(t),t.target,s(t,e.lockRef.current))},[]);u.useEffect(function(){return Y.push(a),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:p}),document.addEventListener(`wheel`,c,J),document.addEventListener(`touchmove`,c,J),document.addEventListener(`touchstart`,d,J),function(){Y=Y.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,J),document.removeEventListener(`touchmove`,c,J),document.removeEventListener(`touchstart`,d,J)}},[]);var m=e.removeScrollBar,h=e.inert;return u.createElement(u.Fragment,null,h?u.createElement(a,{styles:xn(i)}):null,m?u.createElement(nn,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function wn(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var Tn=Lt(Rt,Cn),En=u.forwardRef(function(e,t){return u.createElement(K,U({},e,{ref:t,sideCar:Tn}))});En.classNames=K.classNames;var Dn=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},X=new WeakMap,On=new WeakMap,kn={},An=0,jn=function(e){return e&&(e.host||jn(e.parentNode))},Mn=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=jn(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},Nn=function(e,t,n,r){var i=Mn(t,Array.isArray(e)?e:[e]);kn[n]||(kn[n]=new WeakMap);var a=kn[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(X.get(e)||0)+1,l=(a.get(e)||0)+1;X.set(e,c),a.set(e,l),o.push(e),c===1&&i&&On.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),An++,function(){o.forEach(function(e){var t=X.get(e)-1,i=a.get(e)-1;X.set(e,t),a.set(e,i),t||(On.has(e)||e.removeAttribute(r),On.delete(e)),i||e.removeAttribute(n)}),An--,An||(X=new WeakMap,X=new WeakMap,On=new WeakMap,kn={})}},Pn=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Dn(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),Nn(r,i,n,`aria-hidden`)):function(){return null}},Fn=Object.defineProperty,Z=(e,t)=>Fn(e,`name`,{value:t,configurable:!0}),In=`Dialog`,[Ln,Rn]=ue(In),[zn,Q]=Ln(In),Bn=Z(e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,s=u.useRef(null),c=u.useRef(null),[l,d]=Te({prop:r,defaultProp:i??!1,onChange:a,caller:In}),[f,p]=u.useState(0),[m,h]=u.useState(0);return(0,g.jsx)(zn,{scope:t,triggerRef:s,contentRef:c,contentId:I(),titleId:I(),descriptionId:I(),titlePresent:f>0,descriptionPresent:m>0,setTitleCount:p,setDescriptionCount:h,open:l,onOpenChange:d,onOpenToggle:u.useCallback(()=>d(e=>!e),[d]),modal:o,children:n})},`Dialog`),Vn=`DialogPortal`,[Hn,Un]=Ln(Vn,{forceMount:void 0}),Wn=Z(e=>{let{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=Q(Vn,t);return(0,g.jsx)(Hn,{scope:t,forceMount:n,children:u.Children.map(r,e=>(0,g.jsx)(Me,{present:n||a.open,children:(0,g.jsx)(vt,{asChild:!0,container:i,children:e})}))})},`DialogPortal`),Gn=`DialogOverlay`,Kn=u.forwardRef(Z(function(e,t){let n=Un(Gn,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=Q(Gn,e.__scopeDialog);return a.modal?(0,g.jsx)(Me,{present:r||a.open,children:(0,g.jsx)(Jn,{...i,ref:t})}):null},`DialogOverlay`)),qn=b(`DialogOverlay.RemoveScroll`),Jn=u.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q(Gn,n),a=h(t,Xe());return(0,g.jsx)(En,{as:qn,allowPinchZoom:!0,shards:[i.contentRef],children:(0,g.jsx)(O.div,{"data-state":ar(i.open),...r,ref:a,style:{pointerEvents:`auto`,...r.style}})})},`DialogOverlayImpl`)),$=`DialogContent`,Yn=u.forwardRef(Z(function(e,t){let n=Un($,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=Q($,e.__scopeDialog);return(0,g.jsx)(Me,{present:r||a.open,children:a.modal?(0,g.jsx)(Xn,{...i,ref:t}):(0,g.jsx)(Zn,{...i,ref:t})})},`DialogContent`)),Xn=u.forwardRef(Z(function(e,t){let n=Q($,e.__scopeDialog),r=u.useRef(null),i=h(t,n.contentRef,r);return u.useEffect(()=>{let e=r.current;if(e)return Pn(e)},[]),(0,g.jsx)(Qn,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:j(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:j(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()}),onFocusOutside:j(e.onFocusOutside,e=>e.preventDefault())})},`DialogContentModal`)),Zn=u.forwardRef(Z(function(e,t){let n=Q($,e.__scopeDialog),r=u.useRef(!1),i=u.useRef(!1);return(0,g.jsx)(Qn,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})},`DialogContentNonModal`)),Qn=u.forwardRef(Z(function(e,t){let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,s=Q($,n);return St(),(0,g.jsx)(g.Fragment,{children:(0,g.jsx)(ot,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,g.jsx)(Ye,{role:`dialog`,id:s.contentId,"aria-describedby":s.descriptionPresent?s.descriptionId:void 0,"aria-labelledby":s.titlePresent?s.titleId:void 0,"data-state":ar(s.open),...o,ref:t,deferPointerDownOutside:!0,onDismiss:()=>s.onOpenChange(!1)})})})},`DialogContentImpl`)),$n=`DialogTitle`,er=u.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q($n,n),{setTitleCount:a}=i;return M(()=>(a(e=>e+1),()=>a(e=>e-1)),[a]),(0,g.jsx)(O.h2,{id:i.titleId,...r,ref:t})},`DialogTitle`)),tr=`DialogDescription`,nr=u.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q(tr,n),{setDescriptionCount:a}=i;return M(()=>(a(e=>e+1),()=>a(e=>e-1)),[a]),(0,g.jsx)(O.p,{id:i.descriptionId,...r,ref:t})},`DialogDescription`)),rr=`DialogClose`,ir=u.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q(rr,n);return(0,g.jsx)(O.button,{type:`button`,...r,ref:t,onClick:j(e.onClick,()=>i.onOpenChange(!1))})},`DialogClose`));function ar(e){return e?`open`:`closed`}Z(ar,`getState`);var or=e(Kn)`
42
+ position: fixed;
43
+ inset: 0;
44
+ z-index: ${({theme:e})=>e.z.overlay};
45
+ background: oklch(0 0 0 / 0.5);
46
+ backdrop-filter: blur(2px);
47
+ `,sr=e(Yn)`
48
+ position: fixed;
49
+ z-index: ${({theme:e})=>e.z.dialog};
50
+ top: 50%;
51
+ left: 50%;
52
+ transform: translate(-50%, -50%);
53
+ width: min(${({$width:e})=>e}, calc(100vw - 32px));
54
+ max-height: calc(100vh - 64px);
55
+ display: flex;
56
+ flex-direction: column;
57
+ background: ${({theme:e})=>e.color.panel};
58
+ border: 1px solid ${({theme:e})=>e.color.ruleStrong};
59
+ border-radius: ${({theme:e})=>e.radius.panel};
60
+ box-shadow: 0 12px 40px oklch(0 0 0 / 0.35);
61
+ `,cr=e.div`
62
+ display: flex;
63
+ align-items: center;
64
+ gap: ${({theme:e})=>e.space(2)};
65
+ padding: ${({theme:e})=>`${e.space(2)} ${e.space(2)} ${e.space(2)} ${e.space(3)}`};
66
+ border-bottom: 1px solid ${({theme:e})=>e.color.rule};
67
+ background: ${({theme:e})=>e.color.panelSunk};
68
+ `,lr=e.div`
69
+ padding: ${({theme:e})=>e.space(3)};
70
+ overflow-y: auto;
71
+ `,ur=e.div`
72
+ display: flex;
73
+ justify-content: flex-end;
74
+ gap: ${({theme:e})=>e.space(2)};
75
+ padding: ${({theme:e})=>`${e.space(2)} ${e.space(3)}`};
76
+ border-top: 1px solid ${({theme:e})=>e.color.rule};
77
+ background: ${({theme:e})=>e.color.panelSunk};
78
+ `,dr=e(nr)`
79
+ margin: 0 0 ${({theme:e})=>e.space(3)};
80
+ font-size: 12px;
81
+ color: ${({theme:e})=>e.color.inkDim};
82
+ `;function fr({open:e,onOpenChange:n,title:i,description:a,footer:o,width:c=`560px`,children:u}){return(0,g.jsx)(Bn,{open:e,onOpenChange:n,children:(0,g.jsxs)(Wn,{children:[(0,g.jsx)(or,{}),(0,g.jsxs)(sr,{$width:c,children:[(0,g.jsxs)(cr,{children:[(0,g.jsx)(er,{asChild:!0,children:(0,g.jsx)(t,{as:`h2`,children:i})}),(0,g.jsx)(s,{}),(0,g.jsx)(ir,{asChild:!0,children:(0,g.jsx)(r,{type:`button`,$variant:`ghost`,$size:`sm`,"aria-label":`Close`,children:(0,g.jsx)(l,{})})})]}),(0,g.jsxs)(lr,{children:[a===void 0?null:(0,g.jsx)(dr,{children:a}),u]}),o===void 0?null:(0,g.jsx)(ur,{children:o})]})]})})}export{ue as a,j as i,Te as n,O as o,M as r,h as s,fr as t};
@@ -0,0 +1,147 @@
1
+ import{B as e,D as t,Dt as n,F as r,H as i,I as a,Kt as o,O as s,Ot as c,P as l,W as u,j as d,k as f,m as p,p as m}from"./queries-vY5lJqBe.js";import{t as h}from"./index-DnNTc35a.js";import{c as g,r as _,t as v}from"./Lamp-CSv_5d5k.js";var y=o(c(),1),b=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),x=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),S=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),C=e=>{let t=S(e);return t.charAt(0).toUpperCase()+t.slice(1)},w={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},T=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},E=(0,y.createContext)({}),D=()=>(0,y.useContext)(E),O=(0,y.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:d=!1,color:f=`currentColor`,className:p=``}=D()??{},m=r??d?Number(n??u)*24/Number(t??l):n??u;return(0,y.createElement)(`svg`,{ref:c,...w,width:t??l??w.width,height:t??l??w.height,stroke:e??f,strokeWidth:m,className:b(`lucide`,p,i),...!a&&!T(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,y.createElement)(e,t)),...Array.isArray(a)?a:[a]])}),k=(e,t)=>{let n=(0,y.forwardRef)(({className:n,...r},i)=>(0,y.createElement)(O,{ref:i,iconNode:t,className:b(`lucide-${x(C(e))}`,`lucide-${e}`,n),...r}));return n.displayName=C(e),n},A=k(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),j=k(`boxes`,[[`path`,{d:`M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z`,key:`lc1i9w`}],[`path`,{d:`m7 16.5-4.74-2.85`,key:`1o9zyk`}],[`path`,{d:`m7 16.5 5-3`,key:`va8pkn`}],[`path`,{d:`M7 16.5v5.17`,key:`jnp8gn`}],[`path`,{d:`M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z`,key:`8zsnat`}],[`path`,{d:`m17 16.5-5-3`,key:`8arw3v`}],[`path`,{d:`m17 16.5 4.74-2.85`,key:`8rfmw`}],[`path`,{d:`M17 16.5v5.17`,key:`k6z78m`}],[`path`,{d:`M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z`,key:`1xygjf`}],[`path`,{d:`M12 8 7.26 5.15`,key:`1vbdud`}],[`path`,{d:`m12 8 4.74-2.85`,key:`3rx089`}],[`path`,{d:`M12 13.5V8`,key:`1io7kd`}]]),ee=k(`cable`,[[`path`,{d:`M17 19a1 1 0 0 1-1-1v-2a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2a1 1 0 0 1-1 1z`,key:`trhst0`}],[`path`,{d:`M17 21v-2`,key:`ds4u3f`}],[`path`,{d:`M19 14V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V10`,key:`1mo9zo`}],[`path`,{d:`M21 21v-2`,key:`eo0ou`}],[`path`,{d:`M3 5V3`,key:`1k5hjh`}],[`path`,{d:`M4 10a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2a2 2 0 0 1-2 2z`,key:`1dd30t`}],[`path`,{d:`M7 5V3`,key:`1t1388`}]]),te=k(`gauge`,[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]),ne=k(`key-round`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]),re=k(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),ie=k(`monitor-cog`,[[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m14.305 7.53.923-.382`,key:`1mlnsw`}],[`path`,{d:`m15.228 4.852-.923-.383`,key:`82mpwg`}],[`path`,{d:`m16.852 3.228-.383-.924`,key:`ln4sir`}],[`path`,{d:`m16.852 8.772-.383.923`,key:`1dejw0`}],[`path`,{d:`m19.148 3.228.383-.924`,key:`192kgf`}],[`path`,{d:`m19.53 9.696-.382-.924`,key:`fiavlr`}],[`path`,{d:`m20.772 4.852.924-.383`,key:`1j8mgp`}],[`path`,{d:`m20.772 7.148.924.383`,key:`zix9be`}],[`path`,{d:`M22 13v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7`,key:`1tnzv8`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}]]),ae=k(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),oe=k(`scroll-text`,[[`path`,{d:`M15 12h-5`,key:`r7krc0`}],[`path`,{d:`M15 8h-5`,key:`1khuty`}],[`path`,{d:`M19 17V5a2 2 0 0 0-2-2H4`,key:`zz82l3`}],[`path`,{d:`M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3`,key:`1ph1d7`}]]),se=k(`sliders-horizontal`,[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]),ce=k(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),M=new Intl.NumberFormat(`en-US`,{notation:`compact`,maximumFractionDigits:1}),N=new Intl.NumberFormat(`en-US`);function P(e){return Number.isFinite(e)?e<1e4?N.format(Math.round(e)):M.format(e).toLowerCase():`—`}function F(e){return Number.isFinite(e)?e===0?`$0`:e<.01?`$${e.toFixed(4)}`:e<100?`$${e.toFixed(2)}`:`$${M.format(e).toLowerCase()}`:`—`}function I(e){return e==null||!Number.isFinite(e)?`—`:e<1e3?`${Math.round(e)}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${Math.round(e/6e4)}m`}function L(e,t=1){return Number.isFinite(e)?`${(e*100).toFixed(t)}%`:`—`}var R=[[6e4,1e3,`s`],[36e5,6e4,`m`],[864e5,36e5,`h`],[1/0,864e5,`d`]];function z(e){let t=Math.abs(e);if(t<1e3)return`0s`;let n=R.find(([e])=>t<e);return n===void 0?`—`:`${Math.floor(t/n[1])}${n[2]}`}function B(e,t=Date.now()){if(e==null||!Number.isFinite(e))return`—`;let n=e-t;return Math.abs(n)<5e3?`just now`:n<0?`${z(n)} ago`:`in ${z(n)}`}function V(e){return new Date(e).toLocaleTimeString(`en-GB`,{hour12:!1})}function H(e){return e==null||!Number.isFinite(e)?`—`:new Date(e).toLocaleString(`en-GB`,{year:`numeric`,month:`short`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,hour12:!1})}function U(e,t=8){return e.length<=t?e:`${e.slice(0,t)}…`}var W=n(),G=(0,y.createContext)(null);function le({children:e}){let[t,n]=(0,y.useState)(!0),r=(0,y.useCallback)(()=>n(e=>!e),[]),i=(0,y.useMemo)(()=>({live:t,toggle:r,cadence:e=>t?e:!1}),[t,r]);return(0,W.jsx)(G,{value:i,children:e})}function K(){return(0,y.use)(G)??{live:!1,toggle:()=>{},cadence:()=>!1}}var ue=e.svg`
2
+ display: block;
3
+ width: 100%;
4
+ height: 100%;
5
+ overflow: visible;
6
+ `;function q(e,t,n,r){if(e.length===0)return``;let i=e.length===1?0:t/(e.length-1);return e.map((e,t)=>{let a=t*i,o=n-(r===0?0:e/r*n);return`${t===0?`M`:`L`}${a.toFixed(2)},${o.toFixed(2)}`}).join(` `)}function J({values:e,overlay:t,height:n=28,color:r,overlayColor:i,scaleTo:a,label:o,className:s}){let c=(0,y.useId)(),l=a===void 0?Math.max(1,...e,...t??[]):Math.max(1,a),u=q(e,100,n,l),d=u.length===0?``:`${u} L100,${n} L0,${n} Z`;return(0,W.jsxs)(ue,{className:s,viewBox:`0 0 100 ${n}`,preserveAspectRatio:`none`,role:`img`,"aria-label":o,style:{height:n},children:[(0,W.jsx)(`defs`,{children:(0,W.jsxs)(`linearGradient`,{id:c,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,W.jsx)(`stop`,{offset:`0%`,stopColor:r??`var(--accent)`,stopOpacity:`0.28`}),(0,W.jsx)(`stop`,{offset:`100%`,stopColor:r??`var(--accent)`,stopOpacity:`0`})]})}),d.length===0?null:(0,W.jsx)(`path`,{d,fill:`url(#${c})`}),t===void 0?null:(0,W.jsx)(`path`,{d:q(t,100,n,l),fill:`none`,stroke:i??`var(--down)`,strokeWidth:`1.25`,vectorEffect:`non-scaling-stroke`}),(0,W.jsx)(`path`,{d:u,fill:`none`,stroke:r??`var(--accent)`,strokeWidth:`1.5`,strokeLinejoin:`round`,vectorEffect:`non-scaling-stroke`})]})}var de=e.header`
7
+ grid-area: chassis;
8
+ display: flex;
9
+ align-items: center;
10
+ gap: ${({theme:e})=>e.space(3)};
11
+ height: 48px;
12
+ padding: 0 ${({theme:e})=>e.space(3)};
13
+ border-bottom: 1px solid ${({theme:e})=>e.color.rule};
14
+ background: ${({theme:e})=>e.color.panel};
15
+ ${l}
16
+ position: sticky;
17
+ top: 0;
18
+ z-index: ${({theme:e})=>e.z.chassis};
19
+ `,fe=e.div`
20
+ display: flex;
21
+ align-items: baseline;
22
+ gap: 7px;
23
+ font-stretch: 74%;
24
+ font-weight: 700;
25
+ letter-spacing: 0.2em;
26
+ font-size: 12px;
27
+ text-transform: uppercase;
28
+ flex: none;
29
+ `,pe=e(f)`
30
+ gap: ${({theme:e})=>e.space(3)};
31
+ overflow: hidden;
32
+
33
+ @media (max-width: 860px) {
34
+ display: none;
35
+ }
36
+ `,Y=e.div`
37
+ display: flex;
38
+ align-items: baseline;
39
+ gap: 6px;
40
+ padding-left: ${({theme:e})=>e.space(3)};
41
+ border-left: 1px solid ${({theme:e})=>e.color.rule};
42
+ white-space: nowrap;
43
+ `,me=e(Y)`
44
+ width: 96px;
45
+ align-items: center;
46
+ `,he=e.div`
47
+ flex: 1;
48
+ min-width: 0;
49
+ `,ge=e(r)`
50
+ gap: 6px;
51
+ font-family: ${({theme:e})=>e.font.mono};
52
+ letter-spacing: 0.08em;
53
+ `,X=[`system`,`light`,`dark`],Z={system:`Match system theme`,light:`Light theme`,dark:`Dark theme`},Q=6e5;function _e(){let e=u(),{live:n,toggle:r,cadence:i}=K(),{mode:o,setMode:c}=h(),l=m(),f=p(200,i(1e4)),b=Date.now(),x=(0,y.useMemo)(()=>(f.data??[]).filter(e=>b-e.at<=Q),[f.data,b]),S=g(x,Q),C=_(x,{now:b,spanMs:Q,count:24}),w=X[(X.indexOf(o)+1)%X.length]??`system`,T=o===`light`?ce:o===`dark`?ae:ie,E=f.isError||S.errorRate>=.25?`down`:S.errorRate>=.05?`warn`:x.length===0?`idle`:`ok`;return(0,W.jsxs)(de,{children:[(0,W.jsxs)(fe,{children:[(0,W.jsx)(v,{state:E,label:f.isError?`gateway unreachable`:`error rate ${L(S.errorRate)}`}),`Omnigateway`]}),(0,W.jsxs)(pe,{children:[(0,W.jsxs)(me,{children:[(0,W.jsx)(t,{children:`req`}),(0,W.jsx)(he,{children:(0,W.jsx)(J,{values:C.map(e=>e.total),overlay:C.map(e=>e.errors),height:22,label:`${S.requests} requests in the last 10 minutes`})})]}),(0,W.jsxs)(Y,{children:[(0,W.jsx)(t,{children:`rate`}),(0,W.jsx)(s,{children:S.ratePerMin.toFixed(1)}),(0,W.jsx)(t,{children:`/min`})]}),(0,W.jsxs)(Y,{children:[(0,W.jsx)(t,{children:`err`}),(0,W.jsx)(s,{style:{color:S.errorRate>=.05?`var(--down)`:void 0},children:L(S.errorRate)})]}),(0,W.jsxs)(Y,{children:[(0,W.jsx)(t,{children:`ttft p50`}),(0,W.jsx)(s,{children:I(S.ttftP50)})]}),(0,W.jsxs)(Y,{children:[(0,W.jsx)(t,{children:`spend`}),(0,W.jsx)(s,{children:F(S.costUsd)})]})]}),(0,W.jsx)(d,{}),(0,W.jsxs)(ge,{type:`button`,$size:`sm`,onClick:r,"aria-pressed":n,title:n?`Pause polling`:`Resume polling`,children:[(0,W.jsx)(v,{state:n?`ok`:`idle`,label:n?`polling`:`paused`}),n?`LIVE`:`PAUSED`]}),(0,W.jsx)(a,{type:`button`,$variant:`ghost`,$size:`sm`,onClick:()=>c(w),"aria-label":Z[o],title:`${Z[o]} — switch to ${Z[w].toLowerCase()}`,children:(0,W.jsx)(T,{})}),(0,W.jsx)(a,{type:`button`,$variant:`ghost`,$size:`sm`,"aria-label":`Sign out`,title:`Sign out`,disabled:l.isPending,onClick:()=>{l.mutate(void 0,{onSuccess:()=>void e({to:`/login`})})},children:(0,W.jsx)(re,{})})]})}var ve=[{to:`/`,label:`Rack`,blurb:`Live state of every account and model`,Icon:A},{to:`/accounts`,label:`Accounts`,blurb:`Provider credentials and their health`,Icon:ee},{to:`/models`,label:`Models`,blurb:`Virtual models, targets, and routing`,Icon:j},{to:`/keys`,label:`Keys`,blurb:`Gateway API keys and their limits`,Icon:ne},{to:`/usage`,label:`Usage`,blurb:`Requests, tokens, and spend over time`,Icon:te},{to:`/logs`,label:`Logs`,blurb:`Recent requests, one row each`,Icon:oe},{to:`/settings`,label:`Settings`,blurb:`Routing weights, retries, retention`,Icon:se}],ye=e.nav`
54
+ grid-area: rail;
55
+ display: flex;
56
+ flex-direction: column;
57
+ gap: 2px;
58
+ padding: ${({theme:e})=>e.space(2)};
59
+ border-right: 1px solid ${({theme:e})=>e.color.rule};
60
+ background: ${({theme:e})=>e.color.panel};
61
+ overflow-y: auto;
62
+
63
+ @media (max-width: 720px) {
64
+ flex-direction: row;
65
+ overflow-x: auto;
66
+ border-right: 0;
67
+ border-bottom: 1px solid ${({theme:e})=>e.color.rule};
68
+ }
69
+ `,be=e(i)`
70
+ display: flex;
71
+ align-items: center;
72
+ gap: ${({theme:e})=>e.space(2)};
73
+ padding: 7px ${({theme:e})=>e.space(2)};
74
+ border-radius: ${({theme:e})=>e.radius.control};
75
+ border-left: 2px solid transparent;
76
+ color: ${({theme:e})=>e.color.inkDim};
77
+ font-size: 12.5px;
78
+ font-weight: 500;
79
+ white-space: nowrap;
80
+ transition:
81
+ background 120ms ease,
82
+ color 120ms ease;
83
+
84
+ svg {
85
+ width: 15px;
86
+ height: 15px;
87
+ flex: none;
88
+ }
89
+
90
+ &:hover {
91
+ background: ${({theme:e})=>e.color.panelSunk};
92
+ color: ${({theme:e})=>e.color.ink};
93
+ }
94
+
95
+ &[data-status="active"] {
96
+ background: ${({theme:e})=>e.color.accentWash};
97
+ border-left-color: ${({theme:e})=>e.color.accent};
98
+ color: ${({theme:e})=>e.color.accent};
99
+ }
100
+ `;function $(){return(0,W.jsx)(ye,{"aria-label":`Console sections`,children:ve.map(({to:e,label:t,blurb:n,Icon:r})=>(0,W.jsxs)(be,{to:e,title:n,activeOptions:{exact:e===`/`},children:[(0,W.jsx)(r,{}),t]},e))})}var xe=e.div`
101
+ display: grid;
102
+ grid-template-areas:
103
+ "chassis chassis"
104
+ "rail main";
105
+ grid-template-columns: 168px minmax(0, 1fr);
106
+ grid-template-rows: auto minmax(0, 1fr);
107
+ min-height: 100%;
108
+
109
+ @media (max-width: 720px) {
110
+ grid-template-areas:
111
+ "chassis"
112
+ "rail"
113
+ "main";
114
+ grid-template-columns: minmax(0, 1fr);
115
+ grid-template-rows: auto auto minmax(0, 1fr);
116
+ }
117
+ `,Se=e.main`
118
+ grid-area: main;
119
+ padding: ${({theme:e})=>e.space(4)};
120
+ display: flex;
121
+ flex-direction: column;
122
+ gap: ${({theme:e})=>e.space(4)};
123
+ min-width: 0;
124
+
125
+ @media (max-width: 720px) {
126
+ padding: ${({theme:e})=>e.space(3)};
127
+ }
128
+ `;function Ce({children:e}){return(0,W.jsxs)(xe,{children:[(0,W.jsx)(_e,{}),(0,W.jsx)($,{}),(0,W.jsx)(Se,{children:e})]})}var we=e.div`
129
+ display: flex;
130
+ align-items: flex-end;
131
+ gap: ${({theme:e})=>e.space(3)};
132
+ flex-wrap: wrap;
133
+ `,Te=e.h1`
134
+ font-size: 20px;
135
+ font-weight: 600;
136
+ font-stretch: 88%;
137
+ letter-spacing: -0.01em;
138
+ `,Ee=e.p`
139
+ font-size: 13px;
140
+ color: ${({theme:e})=>e.color.inkDim};
141
+ max-width: 68ch;
142
+ `,De=e.div`
143
+ display: flex;
144
+ flex-direction: column;
145
+ gap: 6px;
146
+ min-width: 0;
147
+ `;function Oe({legend:e,title:n,summary:r,actions:i}){return(0,W.jsxs)(we,{children:[(0,W.jsxs)(De,{children:[(0,W.jsx)(t,{children:e}),(0,W.jsx)(Te,{children:n}),(0,W.jsx)(Ee,{children:r})]}),(0,W.jsx)(d,{}),i]})}export{K as a,H as c,B as d,F as f,le as i,I as l,k as m,Ce as n,V as o,U as p,J as r,P as s,Oe as t,L as u};
@@ -0,0 +1,27 @@
1
+ import{B as e,D as t,Dt as n}from"./queries-vY5lJqBe.js";var r=n(),i=e.div`
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: 6px;
5
+ padding: ${({theme:e})=>`${e.space(2)} ${e.space(3)}`};
6
+ background: ${({theme:e})=>e.color.panel};
7
+ border: 1px solid ${({theme:e})=>e.color.rule};
8
+ border-radius: ${({theme:e})=>e.radius.panel};
9
+ min-width: 0;
10
+ `,a=e.div`
11
+ display: flex;
12
+ align-items: baseline;
13
+ gap: 4px;
14
+ font-family: ${({theme:e})=>e.font.mono};
15
+ font-variant-numeric: tabular-nums;
16
+ font-size: 24px;
17
+ font-weight: 500;
18
+ letter-spacing: -0.02em;
19
+ line-height: 1.1;
20
+ color: ${({theme:e,$tone:t})=>t===`ok`?e.color.ok:t===`warn`?e.color.warn:t===`down`?e.color.down:e.color.ink};
21
+ `,o=e.span`
22
+ font-size: 11px;
23
+ font-weight: 400;
24
+ color: ${({theme:e})=>e.color.inkFaint};
25
+ `,s=e.div`
26
+ margin-top: 2px;
27
+ `;function c({legend:e,value:n,unit:c,tone:l,trace:u,className:d}){return(0,r.jsxs)(i,{className:d,children:[(0,r.jsx)(t,{children:e}),(0,r.jsxs)(a,{...l===void 0?{}:{$tone:l},children:[(0,r.jsx)(`span`,{children:n}),c===void 0?null:(0,r.jsx)(o,{children:c})]}),u===void 0?null:(0,r.jsx)(s,{children:u})]})}export{c as t};
@@ -0,0 +1,54 @@
1
+ import{B as e,D as t,Dt as n,F as r,L as i,j as a,k as o,w as s}from"./queries-vY5lJqBe.js";var c=n(),l=e.section`
2
+ background: ${({theme:e})=>e.color.panel};
3
+ border: 1px solid ${({theme:e})=>e.color.rule};
4
+ border-radius: ${({theme:e})=>e.radius.panel};
5
+ box-shadow: ${({theme:e})=>e.color.shadow};
6
+ overflow: hidden;
7
+ display: flex;
8
+ flex-direction: column;
9
+ min-width: 0;
10
+ `,u=e.header`
11
+ display: flex;
12
+ align-items: center;
13
+ gap: ${({theme:e})=>e.space(2)};
14
+ padding: ${({theme:e})=>`${e.space(2)} ${e.space(3)}`};
15
+ border-bottom: 1px solid ${({theme:e})=>e.color.rule};
16
+ background: ${({theme:e})=>e.color.panelSunk};
17
+ min-height: 34px;
18
+ `,d=e.div`
19
+ padding: ${({theme:e,$flush:t})=>t===!0?`0`:e.space(3)};
20
+ min-width: 0;
21
+ `,f=e.footer`
22
+ padding: ${({theme:e})=>`${e.space(2)} ${e.space(3)}`};
23
+ border-top: 1px solid ${({theme:e})=>e.color.rule};
24
+ background: ${({theme:e})=>e.color.panelSunk};
25
+ `;function p({legend:e,meta:n,actions:r,footer:i,flush:s,className:p,children:m}){return(0,c.jsxs)(l,{className:p,children:[(0,c.jsxs)(u,{children:[(0,c.jsx)(t,{children:e}),n===void 0?null:(0,c.jsx)(t,{as:`span`,children:n}),(0,c.jsx)(a,{}),r===void 0?null:(0,c.jsx)(o,{$gap:1,children:r})]}),(0,c.jsx)(d,{...s===!0?{$flush:!0}:{},children:m}),i===void 0?null:(0,c.jsx)(f,{children:i})]})}var m=e.div`
26
+ display: flex;
27
+ flex-direction: column;
28
+ align-items: center;
29
+ justify-content: center;
30
+ gap: ${({theme:e})=>e.space(2)};
31
+ padding: ${({theme:e})=>e.space(8)} ${({theme:e})=>e.space(4)};
32
+ text-align: center;
33
+ `,h=e.p`
34
+ max-width: 44ch;
35
+ font-size: 13px;
36
+ color: ${({theme:e})=>e.color.inkDim};
37
+ `;function g({legend:e,message:n,action:r}){return(0,c.jsxs)(m,{children:[(0,c.jsx)(t,{children:e}),(0,c.jsx)(h,{children:n}),r]})}var _=e(h)`
38
+ color: ${({theme:e})=>e.color.down};
39
+ `;function v(e){return e instanceof s||e instanceof Error?e.message:`The gateway did not answer.`}function y({legend:e=`Request failed`,error:n,onRetry:i}){return(0,c.jsxs)(m,{children:[(0,c.jsx)(t,{children:e}),(0,c.jsx)(_,{children:v(n)}),i===void 0?null:(0,c.jsx)(r,{type:`button`,$size:`sm`,onClick:i,children:`Try again`})]})}var b=i`
40
+ 0% { opacity: 0.35; }
41
+ 50% { opacity: 0.7; }
42
+ 100% { opacity: 0.35; }
43
+ `,x=e.div`
44
+ height: ${({$height:e})=>e??12}px;
45
+ width: ${({$width:e})=>e??`100%`};
46
+ border-radius: 2px;
47
+ background: ${({theme:e})=>e.color.ruleStrong};
48
+ animation: ${b} 1.4s ease-in-out infinite;
49
+ `,S=e.div`
50
+ display: flex;
51
+ flex-direction: column;
52
+ gap: ${({theme:e})=>e.space(2)};
53
+ padding: ${({theme:e})=>e.space(1)} 0;
54
+ `;function C({rows:e=4}){let t=Array.from({length:e},(e,t)=>`row-${t}:${t%3==0?`72%`:`100%`}`);return(0,c.jsx)(S,{"aria-hidden":`true`,children:t.map(e=>(0,c.jsx)(x,{$width:e.split(`:`)[1]??`100%`},e))})}export{p as a,v as i,y as n,l as o,C as r,g as t};