@rizal72/oc-budget 0.1.0 → 0.1.1

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.
@@ -1,4 +1,4 @@
1
- Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let e=require("solid-js/web"),t=require("@opencode/plugin/gui"),n=require("solid-js"),r=require("@opencode/plugin/rpc");function i(e,t){let n=e?.providerID??``;return n===`deepseek`?`ds`:n===`openrouter`?`or`:n===`opencode`||n===`opencode-zen`?`zen`:n===`opencode-go`?t?.go?.monthly?.status===`rate-limited`?`zen`:`go`:`none`}function a(e){return!!(e?.go||e?.zen||e?.ds||e?.or)}function o(e){let t=Math.floor(e/6e4);return t<60?`${t}m`:`${Math.floor(t/60)}h ${t%60}m`}function s(e){return typeof e?.percent==`number`?e.percent:null}function c(e){if(!e)return``;let t=Date.parse(e);if(!Number.isFinite(t))return``;let n=t-Date.now();if(n<=0)return`now`;let r=Math.floor(n/6e4);if(r<60)return`${r}m`;let i=Math.floor(r/60);return i<48?`${i}h ${r%60}m`:`${Math.floor(i/24)}d ${i%24}h`}var l={type:`object`,properties:{status:{type:`string`},percent:{type:`number`},resetsAt:{type:`string`}},additionalProperties:!1},u=r.Rpc.define({id:`budget`,methods:{snapshot:{input:{type:`object`,properties:{force:{type:`boolean`}},additionalProperties:!1},output:{type:`object`,properties:{at:{type:`number`},go:{type:`object`,properties:{rolling:l,weekly:l,monthly:l,error:{type:`string`}},additionalProperties:!1},ds:{type:`object`,properties:{balance:{type:`number`},currency:{type:`string`},error:{type:`string`}},additionalProperties:!1},or:{type:`object`,properties:{balance:{type:`number`},totalCredits:{type:`number`},totalUsage:{type:`number`},usageMonthly:{type:`number`},error:{type:`string`}},additionalProperties:!1},zen:{type:`object`,properties:{balance:{type:`number`},available:{type:`number`},org:{type:`string`},peers:{type:`number`},error:{type:`string`}},additionalProperties:!1}},required:[`at`],additionalProperties:!1}}},events:{}});function d(e){return(...t)=>{for(let n of e)n&&n(...t)}}var f=e=>typeof e==`function`&&!e.length?e():e;function p(e,...t){return typeof e==`function`?e(...t):e}var m=/((?:--)?(?:\w+-?)+)\s*:\s*([^;]*)/g;function h(e){let t={},n;for(;n=m.exec(e);)t[n[1]]=n[2];return t}function g(e,t){if(typeof e==`string`){if(typeof t==`string`)return`${e};${t}`;e=h(e)}else typeof t==`string`&&(t=h(t));return{...e,...t}}function _(...e){return d(e)}function v(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function y(e){return Object.prototype.toString.call(e)===`[object String]`}function b(e){return typeof e==`function`}function x(e){return t=>`${e()}-${t}`}function S(e,t){return e?e===t||e.contains(t):!1}function C(e,t=!1){let{activeElement:n}=T(e);if(!n?.nodeName)return null;if(E(n)&&n.contentDocument)return C(n.contentDocument.body,t);if(t){let e=n.getAttribute(`aria-activedescendant`);if(e){let t=T(n).getElementById(e);if(t)return t}}return n}function w(e){return T(e).defaultView||window}function T(e){return e?e.ownerDocument||e:document}function E(e){return e.tagName===`IFRAME`}var ee=(e=>(e.Escape=`Escape`,e.Enter=`Enter`,e.Tab=`Tab`,e.Space=` `,e.ArrowDown=`ArrowDown`,e.ArrowLeft=`ArrowLeft`,e.ArrowRight=`ArrowRight`,e.ArrowUp=`ArrowUp`,e.End=`End`,e.Home=`Home`,e.PageDown=`PageDown`,e.PageUp=`PageUp`,e))(ee||{});function te(e){return typeof window<`u`&&window.navigator!=null&&e.test(window.navigator.userAgentData?.platform||window.navigator.platform)}function D(){return te(/^Mac/i)}function O(e,t){return t&&(b(t)?t(e):t[0](t[1],e)),e?.defaultPrevented}function ne(e){return t=>{for(let n of e)O(t,n)}}function re(e){return D()?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function k(e){if(e){if(ae())e.focus({preventScroll:!0});else{let t=oe(e);e.focus(),se(t)}}}var ie=null;function ae(){if(ie==null){ie=!1;try{document.createElement(`div`).focus({get preventScroll(){return ie=!0,!0}})}catch{}}return ie}function oe(e){let t=e.parentNode,n=[],r=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==r;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&n.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return r instanceof HTMLElement&&n.push({element:r,scrollTop:r.scrollTop,scrollLeft:r.scrollLeft}),n}function se(e){for(let{element:t,scrollTop:n,scrollLeft:r}of e)t.scrollTop=n,t.scrollLeft=r}var ce=[`input:not([type='hidden']):not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`button:not([disabled])`,`a[href]`,`area[href]`,`[tabindex]`,`iframe`,`object`,`embed`,`audio[controls]`,`video[controls]`,`[contenteditable]:not([contenteditable='false'])`],le=[...ce,`[tabindex]:not([tabindex="-1"]):not([disabled])`],ue=`${ce.join(`:not([hidden]),`)},[tabindex]:not([disabled]):not([hidden])`;le.join(`:not([hidden]):not([tabindex="-1"]),`);function de(e,t){let n=Array.from(e.querySelectorAll(ue)).filter(fe);return t&&fe(e)&&n.unshift(e),n.forEach((e,t)=>{if(E(e)&&e.contentDocument){let r=e.contentDocument.body,i=de(r,!1);n.splice(t,1,...i)}}),n}function fe(e){return pe(e)&&!me(e)}function pe(e){return e.matches(ue)&&he(e)}function me(e){return Number.parseInt(e.getAttribute(`tabindex`)||`0`,10)<0}function he(e,t){return e.nodeName!==`#comment`&&ge(e)&&_e(e,t)&&(!e.parentElement||he(e.parentElement,e))}function ge(e){if(!(e instanceof HTMLElement)&&!(e instanceof SVGElement))return!1;let{display:t,visibility:n}=e.style,r=t!==`none`&&n!==`hidden`&&n!==`collapse`;if(r){if(!e.ownerDocument.defaultView)return r;let{getComputedStyle:t}=e.ownerDocument.defaultView,{display:n,visibility:i}=t(e);r=n!==`none`&&i!==`hidden`&&i!==`collapse`}return r}function _e(e,t){return!e.hasAttribute(`hidden`)&&(e.nodeName===`DETAILS`&&t&&t.nodeName!==`SUMMARY`?e.hasAttribute(`open`):!0)}function ve(){}function A(e,t){return(0,n.mergeProps)(e,t)}var ye=new Map,be=new Set;function xe(){if(typeof window>`u`||document.body===null)return;let e=e=>{if(!e.target)return;let n=ye.get(e.target);n||(n=new Set,ye.set(e.target,n),e.target.addEventListener(`transitioncancel`,t)),n.add(e.propertyName)},t=e=>{if(!e.target)return;let n=ye.get(e.target);if(n&&(n.delete(e.propertyName),n.size===0&&(e.target.removeEventListener(`transitioncancel`,t),ye.delete(e.target)),ye.size===0)){for(let e of be)e();be.clear()}};document.body.addEventListener(`transitionrun`,e),document.body.addEventListener(`transitionend`,t)}typeof document<`u`&&(document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,xe):xe());var Se={border:`0`,clip:`rect(0 0 0 0)`,"clip-path":`inset(50%)`,height:`1px`,margin:`0 -1px -1px 0`,overflow:`hidden`,padding:`0`,position:`absolute`,width:`1px`,"white-space":`nowrap`},Ce=new Set([`Avst`,`Arab`,`Armi`,`Syrc`,`Samr`,`Mand`,`Thaa`,`Mend`,`Nkoo`,`Adlm`,`Rohg`,`Hebr`]),we=new Set([`ae`,`ar`,`arc`,`bcc`,`bqi`,`ckb`,`dv`,`fa`,`glk`,`he`,`ku`,`mzn`,`nqo`,`pnb`,`ps`,`sd`,`ug`,`ur`,`yi`]);function Te(e){if(Intl.Locale){let t=new Intl.Locale(e).maximize().script??``;return Ce.has(t)}let t=e.split(`-`)[0];return we.has(t)}function Ee(e){return Te(e)?`rtl`:`ltr`}function De(){let e=typeof navigator<`u`&&(navigator.language||navigator.userLanguage)||`en-US`;try{Intl.DateTimeFormat.supportedLocalesOf([e])}catch{e=`en-US`}return{locale:e,direction:Ee(e)}}var Oe=De(),ke=new Set;function Ae(){Oe=De();for(let e of ke)e(Oe)}function je(){let t={locale:`en-US`,direction:`ltr`},[r,i]=(0,n.createSignal)(Oe),a=(0,n.createMemo)(()=>e.isServer?t:r());return(0,n.onMount)(()=>{ke.size===0&&window.addEventListener(`languagechange`,Ae),ke.add(i),(0,n.onCleanup)(()=>{ke.delete(i),ke.size===0&&window.removeEventListener(`languagechange`,Ae)})}),{locale:()=>a().locale,direction:()=>a().direction}}var Me=(0,n.createContext)();function Ne(){let e=je();return(0,n.useContext)(Me)||e}function j(t){let[r,i]=(0,n.splitProps)(t,[`as`]);if(!r.as)throw Error("[kobalte]: Polymorphic is missing the required `as` prop.");return(0,e.createComponent)(e.Dynamic,(0,e.mergeProps)(i,{get component(){return r.as}}))}var Pe=[`top`,`right`,`bottom`,`left`],M=Math.min,N=Math.max,Fe=Math.round,Ie=Math.floor,P=e=>({x:e,y:e}),Le={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Re(e,t,n){return N(e,M(t,n))}function F(e,t){return typeof e==`function`?e(t):e}function I(e){return e.split(`-`)[0]}function ze(e){return e.split(`-`)[1]}function Be(e){return e===`x`?`y`:`x`}function Ve(e){return e===`y`?`height`:`width`}function L(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function He(e){return Be(L(e))}function Ue(e,t,n){n===void 0&&(n=!1);let r=ze(e),i=He(e),a=Ve(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Qe(o)),[o,Qe(o)]}function We(e){let t=Qe(e);return[Ge(e),t,Ge(t)]}function Ge(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Ke=[`left`,`right`],qe=[`right`,`left`],Je=[`top`,`bottom`],Ye=[`bottom`,`top`];function Xe(e,t,n){switch(e){case`top`:case`bottom`:return n?t?qe:Ke:t?Ke:qe;case`left`:case`right`:return t?Je:Ye;default:return[]}}function Ze(e,t,n,r){let i=ze(e),a=Xe(I(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Ge)))),a}function Qe(e){let t=I(e);return Le[t]+e.slice(t.length)}function $e(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function et(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:$e(e)}function tt(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function nt(e,t,n){let{reference:r,floating:i}=e,a=L(t),o=He(t),s=Ve(o),c=I(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=ze(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function rt(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=F(t,e),p=et(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=tt(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=tt(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var it=50,at=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:rt},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=nt(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<it&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=nt(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},ot=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=F(e,t)||{};if(l==null)return{};let d=et(u),f={x:n,y:r},p=He(i),m=Ve(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;C&&await(o.isElement==null?void 0:o.isElement(S))||(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=M(d[_],T),ee=M(d[v],T),te=C-h[m]-ee,D=C/2-h[m]/2+w,O=Re(E,D,te),ne=!c.arrow&&ze(i)!=null&&D!==O&&a.reference[m]/2-(D<E?E:ee)-h[m]/2<0,re=ne?D<E?D-E:D-te:0;return{[p]:f[p]+re,data:{[p]:O,centerOffset:D-O-re,...ne&&{alignmentOffset:re}},reset:ne}}}),st=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=F(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=I(r),_=L(o),v=I(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Qe(o)]:We(o)),x=p!==`none`;!d&&x&&b.push(...Ze(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=Ue(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===L(t)||T.every(e=>L(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=L(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}};function ct(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function lt(e){return Pe.some(t=>e[t]>=0)}var ut=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=F(e,t);switch(i){case`referenceHidden`:{let e=ct(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:lt(e)}}}case`escaped`:{let e=ct(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:lt(e)}}}default:return{}}}}},dt=new Set([`left`,`top`]);async function ft(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=I(n),s=ze(n),c=L(n)===`y`,l=dt.has(o)?-1:1,u=a&&c?-1:1,d=F(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var pt=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await ft(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},mt=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=F(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=L(i),p=Be(f),m=u[p],h=u[f],g=(e,t)=>Re(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},ht=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=F(e,t),c=await i.detectOverflow(t,s),l=I(n),u=ze(n),d=L(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let g=p-c.top-c.bottom,_=f-c.left-c.right,v=M(p-c[m],g),y=M(f-c[h],_),b=t.middlewareData.shift,x=!b,S=v,C=y;b!=null&&b.enabled.x&&(C=_),b!=null&&b.enabled.y&&(S=g),x&&!u&&(d?C=f-2*N(c.left,c.right):S=p-2*N(c.top,c.bottom)),await o({...t,availableWidth:C,availableHeight:S});let w=await i.getDimensions(a.floating);return f!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function gt(){return typeof window<`u`}function _t(e){return vt(e)?(e.nodeName||``).toLowerCase():`#document`}function R(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function z(e){return((vt(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function vt(e){return gt()?e instanceof Node||e instanceof R(e).Node:!1}function B(e){return gt()?e instanceof Element||e instanceof R(e).Element:!1}function V(e){return gt()?e instanceof HTMLElement||e instanceof R(e).HTMLElement:!1}function yt(e){return!gt()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof R(e).ShadowRoot}function bt(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=U(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function xt(e){return/^(table|td|th)$/.test(_t(e))}function St(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Ct=/transform|translate|scale|rotate|perspective|filter/,wt=/paint|layout|strict|content/,H=e=>!!e&&e!==`none`,Tt;function Et(e){let t=B(e)?U(e):e;return H(t.transform)||H(t.translate)||H(t.scale)||H(t.rotate)||H(t.perspective)||!Ot()&&(H(t.backdropFilter)||H(t.filter))||Ct.test(t.willChange||``)||wt.test(t.contain||``)}function Dt(e){let t=W(e);for(;V(t)&&!kt(t);){if(Et(t))return t;if(St(t))return null;t=W(t)}return null}function Ot(){return Tt??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),Tt}function kt(e){return/^(html|body|#document)$/.test(_t(e))}function U(e){return R(e).getComputedStyle(e)}function At(e){return B(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function W(e){if(_t(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||yt(e)&&e.host||z(e);return yt(t)?t.host:t}function jt(e){let t=W(e);return kt(t)?(e.ownerDocument||e).body:V(t)&&bt(t)?t:jt(t)}function Mt(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=jt(e),i=r===e.ownerDocument?.body,a=R(r);if(i){let e=Nt(a);return t.concat(a,a.visualViewport||[],bt(r)?r:[],e&&n?Mt(e):[])}return t.concat(r,Mt(r,[],n))}function Nt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Pt(e){let t=U(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=V(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Fe(n)!==a||Fe(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Ft(e){return B(e)?e:e.contextElement}function It(e){let t=Ft(e);if(!V(t))return P(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Pt(t),o=(a?Fe(n.width):n.width)/r,s=(a?Fe(n.height):n.height)/i;return o&&Number.isFinite(o)||(o=1),s&&Number.isFinite(s)||(s=1),{x:o,y:s}}var Lt=P(0);function Rt(e){let t=R(e);return!Ot()||!t.visualViewport?Lt:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function zt(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===R(e)}function G(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Ft(e),o=P(1);t&&(r?B(r)&&(o=It(r)):o=It(e));let s=zt(a,n,r)?Rt(a):P(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=R(a),t=B(r)?R(r):r,n=e,i=Nt(n);for(;i&&t!==n;){let e=It(i),t=i.getBoundingClientRect(),r=U(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=R(i),i=Nt(n)}}return tt({width:u,height:d,x:c,y:l})}function Bt(e,t){let n=At(e).scrollLeft;return t?t.left+n:G(z(e)).left+n}function Vt(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Bt(e,n),y:n.top+t.scrollTop}}function Ht(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=z(r),s=t?St(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=P(1),u=P(0),d=V(r);if((d||!a)&&((_t(r)!==`body`||bt(o))&&(c=At(r)),d)){let e=G(r);l=It(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?Vt(o,c):P(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function Ut(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function Wt(e){let t=At(e),n=e.ownerDocument.body,r=N(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=N(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+Bt(e),o=-t.scrollTop;return U(n).direction===`rtl`&&(a+=N(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var Gt=25;function Kt(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=R(e),a=z(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!Ot()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(Bt(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=Gt&&(s-=o)}return{width:s,height:c,x:l,y:u}}function qt(e,t){let n=G(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=It(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function Jt(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=Kt(e,n,t);else if(t===`document`)r=Wt(z(e));else if(B(t))r=qt(t,n);else{let n=Rt(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return tt(r)}function Yt(e,t){let n=t.get(e);if(n)return n;let r=Mt(e,[],!1).filter(e=>B(e)&&_t(e)!==`body`),i=null,a=U(e).position===`fixed`,o=a?W(e):e;for(;B(o)&&!kt(o);){let e=U(o),t=Et(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=W(o)}return t.set(e,r),r}function Xt(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?St(t)?[]:Yt(t,this._c):[].concat(n),r],o=Jt(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=Jt(t,a[e],i);s=N(n.top,s),c=M(n.right,c),l=M(n.bottom,l),u=N(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function Zt(e){let{width:t,height:n}=Pt(e);return{width:t,height:n}}function Qt(e,t,n){let r=V(t),i=z(t),a=n===`fixed`,o=G(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=P(0);if((r||!a)&&((_t(t)!==`body`||bt(i))&&(s=At(t)),r)){let e=G(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}!r&&i&&(c.x=Bt(i));let l=i&&!r&&!a?Vt(i,s):P(0);return{x:o.left+s.scrollLeft-c.x-l.x,y:o.top+s.scrollTop-c.y-l.y,width:o.width,height:o.height}}function $t(e){return U(e).position===`static`}function en(e,t){if(!V(e)||U(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return z(e)===n&&(n=n.ownerDocument.body),n}function tn(e,t){let n=R(e);if(St(e))return n;if(!V(e)){let t=W(e);for(;t&&!kt(t);){if(B(t)&&!$t(t))return t;t=W(t)}return n}let r=en(e,t);for(;r&&xt(r)&&$t(r);)r=en(r,t);return r&&kt(r)&&$t(r)&&!Et(r)?n:r||Dt(e)||n}var nn=async function(e){let t=this.getOffsetParent||tn,n=this.getDimensions,r=await n(e.floating);return{reference:Qt(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function rn(e){return U(e).direction===`rtl`}var an={convertOffsetParentRelativeRectToViewportRelativeRect:Ht,getDocumentElement:z,getClippingRect:Xt,getOffsetParent:tn,getElementRects:nn,getClientRects:Ut,getDimensions:Zt,getScale:It,isElement:B,isRTL:rn};function on(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function sn(e,t,n){let r=null,i,a=z(e);function o(){var e;clearTimeout(i),(e=r)==null||e.disconnect(),r=null}function s(n,c){n===void 0&&(n=!1),c===void 0&&(c=1),o();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(n||t(),!f||!p)return;let m=Ie(d),h=Ie(a.clientWidth-(u+f)),g=Ie(a.clientHeight-(d+p)),_=Ie(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:N(0,M(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(!on(l,e.getBoundingClientRect()))return s();if(n!==c){if(!y)return s();n?s(!1,n):i=setTimeout(()=>{s(!1,1e-7)},1e3)}y=!1}try{r=new IntersectionObserver(b,{...v,root:a.ownerDocument})}catch{r=new IntersectionObserver(b,v)}r.observe(e)}let c=R(e),l=()=>s(n);return c.addEventListener(`resize`,l),s(!0),()=>{c.removeEventListener(`resize`,l),o()}}function cn(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Ft(e),u=i||a?[...l?Mt(l):[],...t?Mt(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?sn(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?G(e):null;c&&g();function g(){let t=G(e);h&&!on(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var ln=pt,un=mt,dn=st,fn=ht,pn=ut,mn=ot,hn=(e,t,n)=>{let r=new Map,i=n??{},a={...an,...i.platform,_c:r};return at(e,t,{...i,platform:a})},gn=(0,e.template)(`<svg display=block viewBox="0 0 30 30"style=transform:scale(1.02)><g><path fill=none d=M23,27.8c1.1,1.2,3.4,2.2,5,2.2h2H0h2c1.7,0,3.9-1,5-2.2l6.6-7.2c0.7-0.8,2-0.8,2.7,0L23,27.8L23,27.8z></path><path stroke=none d=M23,27.8c1.1,1.2,3.4,2.2,5,2.2h2H0h2c1.7,0,3.9-1,5-2.2l6.6-7.2c0.7-0.8,2-0.8,2.7,0L23,27.8L23,27.8z>`),_n=(0,n.createContext)();function vn(){let e=(0,n.useContext)(_n);if(e===void 0)throw Error("[kobalte]: `usePopperContext` must be used within a `Popper` component");return e}var yn=30,bn=yn/2,xn={top:180,right:-90,bottom:0,left:90};function Sn(t){let r=vn(),i=A({size:yn},t),[a,o]=(0,n.splitProps)(i,[`ref`,`style`,`size`]),s=()=>r.currentPlacement().split(`-`)[0],c=Cn(r.contentRef),l=()=>c()?.getPropertyValue(`background-color`)||`none`,u=()=>c()?.getPropertyValue(`border-${s()}-color`)||`none`,d=()=>c()?.getPropertyValue(`border-${s()}-width`)||`0px`,f=()=>Number.parseInt(d())*2*(yn/a.size),p=()=>`rotate(${xn[s()]} ${bn} ${bn}) translate(0 2)`;return(0,e.createComponent)(j,(0,e.mergeProps)({as:`div`,ref(e){var t=_(r.setArrowRef,a.ref);typeof t==`function`&&t(e)},"aria-hidden":`true`,get style(){return g({position:`absolute`,"font-size":`${a.size}px`,width:`1em`,height:`1em`,"pointer-events":`none`,fill:l(),stroke:u(),"stroke-width":f()},a.style)}},o,{get children(){var t=gn(),n=t.firstChild;return n.firstChild.nextSibling,(0,e.effect)(()=>(0,e.setAttribute)(n,`transform`,p())),t}}))}function Cn(e){let[t,r]=(0,n.createSignal)();return(0,n.createEffect)(()=>{let t=e();t&&r(w(t).getComputedStyle(t))}),t}function wn(t){let r=vn(),[i,a]=(0,n.splitProps)(t,[`ref`,`style`]);return(0,e.createComponent)(j,(0,e.mergeProps)({as:`div`,ref(e){var t=_(r.setPositionerRef,i.ref);typeof t==`function`&&t(e)},"data-popper-positioner":``,get style(){return g({position:`absolute`,top:0,left:0,"min-width":`max-content`},i.style)}},a))}function Tn(e){let{x:t=0,y:n=0,width:r=0,height:i=0}=e??{};if(typeof DOMRect==`function`)return new DOMRect(t,n,r,i);let a={x:t,y:n,width:r,height:i,top:n,right:t+r,bottom:n+i,left:t};return{...a,toJSON:()=>a}}function En(e,t){return{contextElement:e,getBoundingClientRect:()=>{let n=t(e);return n?Tn(n):e?e.getBoundingClientRect():Tn()}}}function Dn(e){return/^(?:top|bottom|left|right)(?:-(?:start|end))?$/.test(e)}var On={top:`bottom`,right:`left`,bottom:`top`,left:`right`};function kn(e,t){let[n,r]=e.split(`-`),i=On[n];return r?n===`left`||n===`right`?`${i} ${r===`start`?`top`:`bottom`}`:r===`start`?`${i} ${t===`rtl`?`right`:`left`}`:`${i} ${t===`rtl`?`left`:`right`}`:`${i} center`}function An(t){let r=A({getAnchorRect:e=>e?.getBoundingClientRect(),placement:`bottom`,gutter:0,shift:0,flip:!0,slide:!0,overlap:!1,sameWidth:!1,fitViewport:!1,hideWhenDetached:!1,detachedPadding:0,arrowPadding:4,overflowPadding:8},t),[i,a]=(0,n.createSignal)(),[o,s]=(0,n.createSignal)(),[c,l]=(0,n.createSignal)(r.placement),u=()=>En(r.anchorRef?.(),r.getAnchorRect),{direction:d}=Ne();async function f(){let e=u(),t=i(),n=o();if(!e||!t)return;let a=(n?.clientHeight||0)/2,s=typeof r.gutter==`number`?r.gutter+a:r.gutter??a;t.style.setProperty(`--kb-popper-content-overflow-padding`,`${r.overflowPadding}px`),e.getBoundingClientRect();let c=[ln(({placement:e})=>{let t=!!e.split(`-`)[1];return{mainAxis:s,crossAxis:t?void 0:r.shift,alignmentAxis:r.shift}})];if(r.flip!==!1){let e=typeof r.flip==`string`?r.flip.split(` `):void 0;if(e!==void 0&&!e.every(Dn))throw Error("`flip` expects a spaced-delimited list of placements");c.push(dn({padding:r.overflowPadding,fallbackPlacements:e}))}(r.slide||r.overlap)&&c.push(un({mainAxis:r.slide,crossAxis:r.overlap,padding:r.overflowPadding})),c.push(fn({padding:r.overflowPadding,apply({availableWidth:e,availableHeight:n,rects:i}){let a=Math.round(i.reference.width);e=Math.floor(e),n=Math.floor(n),t.style.setProperty(`--kb-popper-anchor-width`,`${a}px`),t.style.setProperty(`--kb-popper-content-available-width`,`${e}px`),t.style.setProperty(`--kb-popper-content-available-height`,`${n}px`),r.sameWidth&&(t.style.width=`${a}px`),r.fitViewport&&(t.style.maxWidth=`${e}px`,t.style.maxHeight=`${n}px`)}})),r.hideWhenDetached&&c.push(pn({padding:r.detachedPadding})),n&&c.push(mn({element:n,padding:r.arrowPadding}));let f=await hn(e,t,{placement:r.placement,strategy:`absolute`,middleware:c,platform:{...an,isRTL:()=>d()===`rtl`}});if(l(f.placement),r.onCurrentPlacementChange?.(f.placement),!t)return;t.style.setProperty(`--kb-popper-content-transform-origin`,kn(f.placement,d()));let p=Math.round(f.x),m=Math.round(f.y),h;if(r.hideWhenDetached&&(h=f.middlewareData.hide?.referenceHidden?`hidden`:`visible`),Object.assign(t.style,{top:`0`,left:`0`,transform:`translate3d(${p}px, ${m}px, 0)`,visibility:h}),n&&f.middlewareData.arrow){let{x:e,y:t}=f.middlewareData.arrow,r=f.placement.split(`-`)[0];Object.assign(n.style,{left:e==null?``:`${e}px`,top:t==null?``:`${t}px`,[r]:`100%`})}}(0,n.createEffect)(()=>{let e=u(),t=i();if(!e||!t)return;let r=cn(e,t,f,{elementResize:typeof ResizeObserver==`function`});(0,n.onCleanup)(r)}),(0,n.createEffect)(()=>{let e=i(),t=r.contentRef?.();e&&t&&queueMicrotask(()=>{e.style.zIndex=getComputedStyle(t).zIndex})});let p={currentPlacement:c,contentRef:()=>r.contentRef?.(),setPositionerRef:a,setArrowRef:s};return(0,e.createComponent)(_n.Provider,{value:p,get children(){return r.children}})}var jn=Object.assign(An,{Arrow:Sn,Context:_n,usePopperContext:vn,Positioner:wn}),Mn=`data-kb-top-layer`,Nn,Pn=!1,K=[];function Fn(e){return K.findIndex(t=>t.node===e)}function In(e){return K[Fn(e)]}function Ln(e){return K.length>0&&K[K.length-1].node===e}function Rn(){return K.filter(e=>e.isPointerBlocking)}function zn(){return[...Rn()].slice(-1)[0]}function Bn(){return Rn().length>0}function Vn(e){let t=Fn(zn()?.node);return Fn(e)<t}function Hn(e){K.push(e)}function Un(e){let t=Fn(e);t<0||K.splice(t,1)}function Wn(){for(let{node:e}of K)e.style.pointerEvents=Vn(e)?`none`:`auto`}function Gn(e){if(Bn()&&!Pn){let t=T(e);Nn=document.body.style.pointerEvents,t.body.style.pointerEvents=`none`,Pn=!0}}function Kn(e){if(Bn())return;let t=T(e);t.body.style.pointerEvents=Nn,t.body.style.length===0&&t.body.removeAttribute(`style`),Pn=!1}var q={layers:K,isTopMostLayer:Ln,hasPointerBlockingLayer:Bn,isBelowPointerBlockingLayer:Vn,addLayer:Hn,removeLayer:Un,indexOf:Fn,find:In,assignPointerEventToLayers:Wn,disableBodyPointerEvents:Gn,restoreBodyPointerEvents:Kn},qn=`focusScope.autoFocusOnMount`,Jn=`focusScope.autoFocusOnUnmount`,Yn={bubbles:!1,cancelable:!0},Xn={stack:[],active(){return this.stack[0]},add(e){e!==this.active()&&this.active()?.pause(),this.stack=v(this.stack,e),this.stack.unshift(e)},remove(e){this.stack=v(this.stack,e),this.active()?.resume()}};function Zn(t,r){let[i,a]=(0,n.createSignal)(!1),o={pause(){a(!0)},resume(){a(!1)}},s=null,c=e=>t.onMountAutoFocus?.(e),l=e=>t.onUnmountAutoFocus?.(e),u=()=>T(r()),d=()=>{let e=u().createElement(`span`);return e.setAttribute(`data-focus-trap`,``),e.tabIndex=0,Object.assign(e.style,Se),e},p=()=>{let e=r();return e?de(e,!0).filter(e=>!e.hasAttribute(`data-focus-trap`)):[]},m=()=>{let e=p();return e.length>0?e[0]:null},h=()=>{let e=p();return e.length>0?e[e.length-1]:null},g=()=>{let e=r();if(!e)return!1;let t=C(e);return!t||S(e,t)?!1:pe(t)};(0,n.createEffect)(()=>{if(e.isServer)return;let t=r();if(!t)return;Xn.add(o);let i=C(t);if(!S(t,i)){let e=new CustomEvent(qn,Yn);t.addEventListener(qn,c),t.dispatchEvent(e),e.defaultPrevented||setTimeout(()=>{k(m()),C(t)===i&&k(t)},0)}(0,n.onCleanup)(()=>{t.removeEventListener(qn,c),setTimeout(()=>{let e=new CustomEvent(Jn,Yn);g()&&e.preventDefault(),t.addEventListener(Jn,l),t.dispatchEvent(e),e.defaultPrevented||k(i??u().body),t.removeEventListener(Jn,l),Xn.remove(o)},0)})}),(0,n.createEffect)(()=>{if(e.isServer)return;let a=r();if(!a||!f(t.trapFocus)||i())return;let o=e=>{let t=e.target;t?.closest(`[data-kb-top-layer]`)||(S(a,t)?s=t:k(s))},c=e=>{let t=e.relatedTarget??C(a);t?.closest(`[data-kb-top-layer]`)||S(a,t)||k(s)};u().addEventListener(`focusin`,o),u().addEventListener(`focusout`,c),(0,n.onCleanup)(()=>{u().removeEventListener(`focusin`,o),u().removeEventListener(`focusout`,c)})}),(0,n.createEffect)(()=>{if(e.isServer)return;let a=r();if(!a||!f(t.trapFocus)||i())return;let o=d();a.insertAdjacentElement(`afterbegin`,o);let s=d();a.insertAdjacentElement(`beforeend`,s);function c(e){let t=m(),n=h();e.relatedTarget===t?k(n):k(t)}o.addEventListener(`focusin`,c),s.addEventListener(`focusin`,c);let l=new MutationObserver(e=>{for(let t of e)t.previousSibling===s&&(s.remove(),a.insertAdjacentElement(`beforeend`,s)),t.nextSibling===o&&(o.remove(),a.insertAdjacentElement(`afterbegin`,o))});l.observe(a,{childList:!0,subtree:!1}),(0,n.onCleanup)(()=>{o.removeEventListener(`focusin`,c),s.removeEventListener(`focusin`,c),o.remove(),s.remove(),l.disconnect()})})}var Qn=`data-live-announcer`;function $n(e){(0,n.createEffect)(()=>{f(e.isDisabled)||(0,n.onCleanup)(tr(f(e.targets),f(e.root)))})}var er=new WeakMap,J=[];function tr(e,t=document.body){let n=new Set(e),r=new Set,i=e=>{for(let t of e.querySelectorAll(`[${Qn}], [${Mn}]`))n.add(t);let t=e=>{if(n.has(e)||e.parentElement&&r.has(e.parentElement)&&e.parentElement.getAttribute(`role`)!==`row`)return NodeFilter.FILTER_REJECT;for(let t of n)if(e.contains(t))return NodeFilter.FILTER_SKIP;return NodeFilter.FILTER_ACCEPT},i=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:t}),o=t(e);if(o===NodeFilter.FILTER_ACCEPT&&a(e),o!==NodeFilter.FILTER_REJECT){let e=i.nextNode();for(;e!=null;)a(e),e=i.nextNode()}},a=e=>{let t=er.get(e)??0;(e.getAttribute(`aria-hidden`)!==`true`||t!==0)&&(t===0&&setTimeout(()=>requestAnimationFrame(()=>e.setAttribute(`aria-hidden`,`true`))),r.add(e),er.set(e,t+1))};J.length&&J[J.length-1].disconnect(),i(t);let o=new MutationObserver(e=>{for(let t of e)if(t.type===`childList`&&t.addedNodes.length!==0&&![...n,...r].some(e=>e.contains(t.target))){for(let e of t.removedNodes)e instanceof Element&&(n.delete(e),r.delete(e));for(let e of t.addedNodes)(e instanceof HTMLElement||e instanceof SVGElement)&&(e.dataset.liveAnnouncer===`true`||e.dataset.reactAriaTopLayer===`true`)?n.add(e):e instanceof Element&&i(e)}});o.observe(t,{childList:!0,subtree:!0});let s={observe(){o.observe(t,{childList:!0,subtree:!0})},disconnect(){o.disconnect()}};return J.push(s),()=>{o.disconnect();for(let e of r){let t=er.get(e);if(t==null)return;t===1?(setTimeout(()=>requestAnimationFrame(()=>e.removeAttribute(`aria-hidden`))),er.delete(e)):er.set(e,t-1)}s===J[J.length-1]?(J.pop(),J.length&&J[J.length-1].observe()):J.splice(J.indexOf(s),1)}}function nr(t){let r=e=>{e.key===ee.Escape&&t.onEscapeKeyDown?.(e)};(0,n.createEffect)(()=>{if(e.isServer||f(t.isDisabled))return;let i=t.ownerDocument?.()??T();i.addEventListener(`keydown`,r),(0,n.onCleanup)(()=>{i.removeEventListener(`keydown`,r)})})}var rr=`interactOutside.pointerDownOutside`,ir=`interactOutside.focusOutside`;function ar(t,r){let i,a=ve,o=()=>T(r()),s=e=>t.onPointerDownOutside?.(e),c=e=>t.onFocusOutside?.(e),l=e=>t.onInteractOutside?.(e),u=e=>{let n=e.target;return!(n instanceof Element)||n.closest(`[data-kb-top-layer]`)||!S(o(),n)||S(r(),n)?!1:!t.shouldExcludeElement?.(n)},d=e=>{function t(){let t=r(),n=e.target;if(!t||!n||!u(e))return;let i=ne([s,l]);n.addEventListener(rr,i,{once:!0});let a=new CustomEvent(rr,{bubbles:!1,cancelable:!0,detail:{originalEvent:e,isContextMenu:e.button===2||re(e)&&e.button===0}});n.dispatchEvent(a)}e.pointerType===`touch`?(o().removeEventListener(`click`,t),a=t,o().addEventListener(`click`,t,{once:!0})):t()},p=e=>{let t=r(),n=e.target;if(!t||!n||!u(e))return;let i=ne([c,l]);n.addEventListener(ir,i,{once:!0});let a=new CustomEvent(ir,{bubbles:!1,cancelable:!0,detail:{originalEvent:e,isContextMenu:!1}});n.dispatchEvent(a)};(0,n.createEffect)(()=>{e.isServer||f(t.isDisabled)||(i=window.setTimeout(()=>{o().addEventListener(`pointerdown`,d,!0)},0),o().addEventListener(`focusin`,p,!0),(0,n.onCleanup)(()=>{window.clearTimeout(i),o().removeEventListener(`click`,a),o().removeEventListener(`pointerdown`,d,!0),o().removeEventListener(`focusin`,p,!0)}))})}var or=(0,n.createContext)();function sr(){return(0,n.useContext)(or)}function cr(t){let r,i=sr(),[a,o]=(0,n.splitProps)(t,[`ref`,`disableOutsidePointerEvents`,`excludedElements`,`onEscapeKeyDown`,`onPointerDownOutside`,`onFocusOutside`,`onInteractOutside`,`onDismiss`,`bypassTopMostLayerCheck`]),s=new Set([]),c=e=>{s.add(e);let t=i?.registerNestedLayer(e);return()=>{s.delete(e),t?.()}};ar({shouldExcludeElement:e=>r?a.excludedElements?.some(t=>S(t(),e))||[...s].some(t=>S(t,e)):!1,onPointerDownOutside:e=>{r&&!q.isBelowPointerBlockingLayer(r)&&(a.bypassTopMostLayerCheck||q.isTopMostLayer(r))&&(a.onPointerDownOutside?.(e),a.onInteractOutside?.(e),e.defaultPrevented||a.onDismiss?.())},onFocusOutside:e=>{a.onFocusOutside?.(e),a.onInteractOutside?.(e),e.defaultPrevented||a.onDismiss?.()}},()=>r),nr({ownerDocument:()=>T(r),onEscapeKeyDown:e=>{r&&q.isTopMostLayer(r)&&(a.onEscapeKeyDown?.(e),!e.defaultPrevented&&a.onDismiss&&(e.preventDefault(),a.onDismiss()))}}),(0,n.onMount)(()=>{if(!r)return;q.addLayer({node:r,isPointerBlocking:a.disableOutsidePointerEvents,dismiss:a.onDismiss});let e=i?.registerNestedLayer(r);q.assignPointerEventToLayers(),q.disableBodyPointerEvents(r),(0,n.onCleanup)(()=>{r&&(q.removeLayer(r),e?.(),q.assignPointerEventToLayers(),q.restoreBodyPointerEvents(r))})}),(0,n.createEffect)((0,n.on)([()=>r,()=>a.disableOutsidePointerEvents],([e,t])=>{if(!e)return;let r=q.find(e);r&&r.isPointerBlocking!==t&&(r.isPointerBlocking=t,q.assignPointerEventToLayers()),t&&q.disableBodyPointerEvents(e),(0,n.onCleanup)(()=>{q.restoreBodyPointerEvents(e)})},{defer:!0}));let l={registerNestedLayer:c};return(0,e.createComponent)(or.Provider,{value:l,get children(){return(0,e.createComponent)(j,(0,e.mergeProps)({as:`div`,ref(e){var t=_(e=>r=e,a.ref);typeof t==`function`&&t(e)}},o))}})}function lr(e){let[t,r]=(0,n.createSignal)(e.defaultValue?.()),i=(0,n.createMemo)(()=>e.value?.()!==void 0),a=(0,n.createMemo)(()=>i()?e.value?.():t());return[a,t=>{(0,n.untrack)(()=>{let n=p(t,a());return Object.is(n,a())||(i()||r(n),e.onChange?.(n)),n})}]}function ur(e){let[t,n]=lr(e);return[()=>t()??!1,n]}function dr(e={}){let[t,n]=ur({value:()=>f(e.open),defaultValue:()=>!!f(e.defaultOpen),onChange:t=>e.onOpenChange?.(t)}),r=()=>{n(!0)},i=()=>{n(!1)};return{isOpen:t,setIsOpen:n,open:r,close:i,toggle:()=>{t()?i():r()}}}function fr(e,t){let[r,i]=(0,n.createSignal)(pr(t?.()));return(0,n.createEffect)(()=>{i(e()?.tagName.toLowerCase()||pr(t?.()))}),r}function pr(e){return y(e)?e:void 0}var mr=Object.defineProperty,hr=(e,t)=>{for(var n in t)mr(e,n,{get:t[n],enumerable:!0})};hr({},{Button:()=>yr,Root:()=>vr});var gr=[`button`,`color`,`file`,`image`,`reset`,`submit`];function _r(e){let t=e.tagName.toLowerCase();return t===`button`?!0:t===`input`&&e.type?gr.indexOf(e.type)!==-1:!1}function vr(t){let r,i=A({type:`button`},t),[a,o]=(0,n.splitProps)(i,[`ref`,`type`,`disabled`]),s=fr(()=>r,()=>`button`),c=(0,n.createMemo)(()=>{let e=s();return e!=null&&_r({tagName:e,type:a.type})}),l=(0,n.createMemo)(()=>s()===`input`),u=(0,n.createMemo)(()=>s()===`a`&&r?.getAttribute(`href`)!=null);return(0,e.createComponent)(j,(0,e.mergeProps)({as:`button`,ref(e){var t=_(e=>r=e,a.ref);typeof t==`function`&&t(e)},get type(){return(0,e.memo)(()=>!!(c()||l()))()?a.type:void 0},get role(){return!c()&&!u()?`button`:void 0},get tabIndex(){return!c()&&!u()&&!a.disabled?0:void 0},get disabled(){return(0,e.memo)(()=>!!(c()||l()))()?a.disabled:void 0},get"aria-disabled"(){return!c()&&!l()&&a.disabled?!0:void 0},get"data-disabled"(){return a.disabled?``:void 0}},o))}var yr=vr;function br(e){return t=>(e(t),()=>e(void 0))}var Y=e=>typeof e==`function`?e():e,xr=(e,t)=>{if(e.contains(t))return!0;let n=t;for(;n;){if(n===e)return!0;n=n._$host??n.parentElement}return!1},Sr=new Map,Cr=e=>{(0,n.createEffect)(()=>{let t=Y(e.style)??{},r=Y(e.properties)??[],i={};for(let n in t)i[n]=e.element.style[n];let a=Sr.get(e.key);a?a.activeCount++:Sr.set(e.key,{activeCount:1,originalStyles:i,properties:r.map(e=>e.key)}),Object.assign(e.element.style,e.style);for(let t of r)e.element.style.setProperty(t.key,t.value);(0,n.onCleanup)(()=>{let t=Sr.get(e.key);if(t){if(t.activeCount!==1)t.activeCount--;else{Sr.delete(e.key);for(let[n,r]of Object.entries(t.originalStyles))e.element.style[n]=r;for(let n of t.properties)e.element.style.removeProperty(n);e.element.style.length===0&&e.element.removeAttribute(`style`),e.cleanup?.()}}})})},wr=(e,t)=>{switch(t){case`x`:return[e.clientWidth,e.scrollLeft,e.scrollWidth];case`y`:return[e.clientHeight,e.scrollTop,e.scrollHeight]}},Tr=(e,t)=>{let n=getComputedStyle(e),r=t===`x`?n.overflowX:n.overflowY;return r===`auto`||r===`scroll`||e.tagName===`HTML`&&r===`visible`},Er=(e,t,n)=>{let r=t===`x`&&window.getComputedStyle(e).direction===`rtl`?-1:1,i=e,a=0,o=0,s=!1;do{let[e,c,l]=wr(i,t),u=l-e-r*c;(c!==0||u!==0)&&Tr(i,t)&&(a+=u,o+=c),i===(n??document.documentElement)?s=!0:i=i._$host??i.parentElement}while(i&&!s);return[a,o]},[Dr,Or]=(0,n.createSignal)([]),kr=e=>Dr().indexOf(e)===Dr().length-1,Ar=e=>{let t=(0,n.mergeProps)({element:null,enabled:!0,hideScrollbar:!0,preventScrollbarShift:!0,preventScrollbarShiftMode:`padding`,restoreScrollPosition:!0,allowPinchZoom:!1},e),r=(0,n.createUniqueId)(),i=[0,0],a=null,o=null;(0,n.createEffect)(()=>{Y(t.enabled)&&(Or(e=>[...e,r]),(0,n.onCleanup)(()=>{Or(e=>e.filter(e=>e!==r))}))}),(0,n.createEffect)(()=>{if(!Y(t.enabled)||!Y(t.hideScrollbar))return;let{documentElement:e}=document,n=window.innerWidth-e.clientWidth;if(Y(t.preventScrollbarShift)){let r={overflow:`hidden`},i=[];n>0&&(Y(t.preventScrollbarShiftMode)===`padding`?r.paddingRight=`calc(${window.getComputedStyle(e).paddingRight} + ${n}px)`:r.marginRight=`calc(${window.getComputedStyle(e).marginRight} + ${n}px)`,i.push({key:`--scrollbar-width`,value:`${n}px`}));let a=window.scrollY,o=window.scrollX;Cr({key:`prevent-scroll`,element:e,style:r,properties:i,cleanup:()=>{Y(t.restoreScrollPosition)&&n>0&&window.scrollTo(o,a)}})}else Cr({key:`prevent-scroll`,element:e,style:{overflow:`hidden`}})}),(0,n.createEffect)(()=>{kr(r)&&Y(t.enabled)&&(document.addEventListener(`wheel`,c,{passive:!1}),document.addEventListener(`touchstart`,s,{passive:!1}),document.addEventListener(`touchmove`,l,{passive:!1}),(0,n.onCleanup)(()=>{document.removeEventListener(`wheel`,c),document.removeEventListener(`touchstart`,s),document.removeEventListener(`touchmove`,l)}))});let s=e=>{i=Mr(e),a=null,o=null},c=e=>{let n=e.target,r=Y(t.element),i=jr(e),a=Math.abs(i[0])>Math.abs(i[1])?`x`:`y`,o=Nr(n,a,a===`x`?i[0]:i[1],r),s;s=r&&xr(r,n)?!o:!0,s&&e.cancelable&&e.preventDefault()},l=e=>{let n=Y(t.element),r=e.target,s;if(e.touches.length===2)s=!Y(t.allowPinchZoom);else{if(a==null||o===null){let t=Mr(e).map((e,t)=>i[t]-e),n=Math.abs(t[0])>Math.abs(t[1])?`x`:`y`;a=n,o=n===`x`?t[0]:t[1]}if(r.type===`range`)s=!1;else{let e=Nr(r,a,o,n);s=n&&xr(n,r)?!e:!0}}s&&e.cancelable&&e.preventDefault()}},jr=e=>[e.deltaX,e.deltaY],Mr=e=>e.changedTouches[0]?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0],Nr=(e,t,n,r)=>{let[i,a]=Er(e,t,r!==null&&xr(r,e)?r:void 0);return!(n>0&&Math.abs(i)<=1||n<0&&Math.abs(a)<1)},Pr=Ar,Fr=e=>{let t=(0,n.createMemo)(()=>{let t=Y(e.element);if(t)return getComputedStyle(t)}),r=()=>t()?.animationName??`none`,[i,a]=(0,n.createSignal)(Y(e.show)?`present`:`hidden`),o=t=>{a(t),e.onStateChange?.(t)},s=`none`;return(0,n.createEffect)(i=>{let a=Y(e.show);return(0,n.untrack)(()=>{if(i===a)return a;let e=s,n=r();a?o(`present`):n===`none`||t()?.display===`none`?o(`hidden`):o(i===!0&&e!==n?`hiding`:`hidden`)}),a},Y(e.show)),(0,n.createEffect)(()=>{let t=Y(e.element);if(!t)return;let a=e=>{e.target===t&&(s=r())},c=e=>{let n=r().includes(e.animationName);e.target===t&&n&&i()===`hiding`&&o(`hidden`)};t.addEventListener(`animationstart`,a),t.addEventListener(`animationcancel`,c),t.addEventListener(`animationend`,c),(0,n.onCleanup)(()=>{t.removeEventListener(`animationstart`,a),t.removeEventListener(`animationcancel`,c),t.removeEventListener(`animationend`,c)})}),{present:()=>i()===`present`||i()===`hiding`,state:i}};hr({},{Anchor:()=>Lr,Arrow:()=>Sn,CloseButton:()=>Rr,Content:()=>zr,Description:()=>Br,Popover:()=>Kr,Portal:()=>Vr,Root:()=>Ur,Title:()=>Wr,Trigger:()=>Gr,usePopoverContext:()=>X});var Ir=(0,n.createContext)();function X(){let e=(0,n.useContext)(Ir);if(e===void 0)throw Error("[kobalte]: `usePopoverContext` must be used within a `Popover` component");return e}function Lr(t){let r=X(),[i,a]=(0,n.splitProps)(t,[`ref`]);return(0,e.createComponent)(j,(0,e.mergeProps)({as:`div`,ref(e){var t=_(r.setDefaultAnchorRef,i.ref);typeof t==`function`&&t(e)}},()=>r.dataset(),a))}function Rr(t){let r=X(),[i,a]=(0,n.splitProps)(t,[`aria-label`,`onClick`]);return(0,e.createComponent)(vr,(0,e.mergeProps)({get"aria-label"(){return i[`aria-label`]||r.translations().dismiss},onClick:e=>{O(e,i.onClick),r.close()}},()=>r.dataset(),a))}function zr(t){let r,i=X(),a=A({id:i.generateId(`content`)},t),[o,s]=(0,n.splitProps)(a,[`ref`,`style`,`onOpenAutoFocus`,`onCloseAutoFocus`,`onPointerDownOutside`,`onFocusOutside`,`onInteractOutside`]),c=!1,l=!1,u=!1,d=e=>{o.onCloseAutoFocus?.(e),i.isModal()?(e.preventDefault(),c||k(i.triggerRef())):(e.defaultPrevented||(l||k(i.triggerRef()),e.preventDefault()),l=!1,u=!1)},f=e=>{o.onPointerDownOutside?.(e),i.isModal()&&(c=e.detail.isContextMenu)},p=e=>{o.onFocusOutside?.(e),i.isOpen()&&i.isModal()&&e.preventDefault()},m=e=>{o.onInteractOutside?.(e),!i.isModal()&&(e.defaultPrevented||(l=!0,e.detail.originalEvent.type===`pointerdown`&&(u=!0)),S(i.triggerRef(),e.target)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&u&&e.preventDefault())};return $n({isDisabled:()=>!(i.isOpen()&&i.isModal()),targets:()=>r?[r]:[]}),Pr({element:()=>r??null,enabled:()=>i.contentPresent()&&i.preventScroll()}),Zn({trapFocus:()=>i.isOpen()&&i.isModal(),onMountAutoFocus:o.onOpenAutoFocus,onUnmountAutoFocus:d},()=>r),(0,n.createEffect)(()=>(0,n.onCleanup)(i.registerContentId(s.id))),(0,e.createComponent)(n.Show,{get when(){return i.contentPresent()},get children(){return(0,e.createComponent)(jn.Positioner,{get children(){return(0,e.createComponent)(cr,(0,e.mergeProps)({ref(e){var t=_(e=>{i.setContentRef(e),r=e},o.ref);typeof t==`function`&&t(e)},role:`dialog`,tabIndex:-1,get disableOutsidePointerEvents(){return(0,e.memo)(()=>!!i.isOpen())()&&i.isModal()},get excludedElements(){return[i.triggerRef]},get style(){return g({"--kb-popover-content-transform-origin":`var(--kb-popper-content-transform-origin)`,position:`relative`},o.style)},get"aria-labelledby"(){return i.titleId()},get"aria-describedby"(){return i.descriptionId()},onPointerDownOutside:f,onFocusOutside:p,onInteractOutside:m,get onDismiss(){return i.close}},()=>i.dataset(),s))}})}})}function Br(t){let r=X(),i=A({id:r.generateId(`description`)},t),[a,o]=(0,n.splitProps)(i,[`id`]);return(0,n.createEffect)(()=>(0,n.onCleanup)(r.registerDescriptionId(a.id))),(0,e.createComponent)(j,(0,e.mergeProps)({as:`p`,get id(){return a.id}},()=>r.dataset(),o))}function Vr(t){let r=X();return(0,e.createComponent)(n.Show,{get when(){return r.contentPresent()},get children(){return(0,e.createComponent)(e.Portal,t)}})}var Hr={dismiss:`Dismiss`};function Ur(t){let r=A({id:`popover-${(0,n.createUniqueId)()}`,modal:!1,translations:Hr},t),[i,a]=(0,n.splitProps)(r,[`translations`,`id`,`open`,`defaultOpen`,`onOpenChange`,`modal`,`preventScroll`,`forceMount`,`anchorRef`]),[o,s]=(0,n.createSignal)(),[c,l]=(0,n.createSignal)(),[u,d]=(0,n.createSignal)(),[f,p]=(0,n.createSignal)(),[m,h]=(0,n.createSignal)(),[g,_]=(0,n.createSignal)(),v=dr({open:()=>i.open,defaultOpen:()=>i.defaultOpen,onOpenChange:e=>i.onOpenChange?.(e)}),y=()=>i.anchorRef?.()??o()??c(),{present:b}=Fr({show:()=>i.forceMount||v.isOpen(),element:()=>u()??null}),S={translations:()=>i.translations??Hr,dataset:(0,n.createMemo)(()=>({"data-expanded":v.isOpen()?``:void 0,"data-closed":v.isOpen()?void 0:``})),isOpen:v.isOpen,isModal:()=>i.modal??!1,preventScroll:()=>i.preventScroll??S.isModal(),contentPresent:b,triggerRef:c,contentId:f,titleId:m,descriptionId:g,setDefaultAnchorRef:s,setTriggerRef:l,setContentRef:d,close:v.close,toggle:v.toggle,generateId:x(()=>i.id),registerContentId:br(p),registerTitleId:br(h),registerDescriptionId:br(_)};return(0,e.createComponent)(Ir.Provider,{value:S,get children(){return(0,e.createComponent)(jn,(0,e.mergeProps)({anchorRef:y,contentRef:u},a))}})}function Wr(t){let r=X(),i=A({id:r.generateId(`title`)},t),[a,o]=(0,n.splitProps)(i,[`id`]);return(0,n.createEffect)(()=>(0,n.onCleanup)(r.registerTitleId(a.id))),(0,e.createComponent)(j,(0,e.mergeProps)({as:`h2`,get id(){return a.id}},()=>r.dataset(),o))}function Gr(t){let r=X(),[i,a]=(0,n.splitProps)(t,[`ref`,`onClick`,`onPointerDown`]);return(0,e.createComponent)(vr,(0,e.mergeProps)({ref(e){var t=_(r.setTriggerRef,i.ref);typeof t==`function`&&t(e)},"aria-haspopup":`dialog`,get"aria-expanded"(){return r.isOpen()},get"aria-controls"(){return(0,e.memo)(()=>!!r.isOpen())()?r.contentId():void 0},onPointerDown:e=>{O(e,i.onPointerDown),e.preventDefault()},onClick:e=>{O(e,i.onClick),r.toggle()}},()=>r.dataset(),a))}var Kr=Object.assign(Ur,{Anchor:Lr,Arrow:Sn,CloseButton:Rr,Content:zr,Description:Br,Portal:Vr,Title:Wr,Trigger:Gr});function qr(t){let n=t.tip;return(0,e.createComponent)(Kr,{get open(){return t.open},get onOpenChange(){return t.onOpenChange},placement:`bottom-end`,gutter:6,overflowPadding:12,get children(){return[(0,e.createComponent)(n,{get value(){return t.hint},placement:`bottom`,get children(){return(0,e.createComponent)(Kr.Trigger,{get class(){return`ocb-head ${t.open?`ocb-head-on`:``}`},get"aria-label"(){return t.label},"aria-haspopup":`dialog`,get"aria-expanded"(){return t.open},get children(){return t.trigger}})}}),(0,e.createComponent)(Kr.Portal,{get children(){return(0,e.createComponent)(Kr.Content,{class:`ocb-pop`,role:`dialog`,get"aria-label"(){return t.label},get children(){return t.children}})}})]}})}var Jr=[[1,4],[6,10]],Yr=[1,4,6,10],Xr=e=>new Date(e),Zr=()=>Date.now();function Z(e=Date.now()){let t=Xr(e),n=t.getUTCDay();if(n===0||n===6)return!1;let r=t.getUTCHours()+t.getUTCMinutes()/60;return Jr.some(([e,t])=>r>=e&&r<t)}function Qr(e=Date.now()){let t=Z(e),n=Xr(e);n.setUTCHours(0,0,0,0);let r=[];for(let t=0;t<=10;t++)for(let i of Yr){let a=n.getTime()+t*864e5+i*36e5;a>e&&r.push(a)}r.sort((e,t)=>e-t);for(let e of r)if(Z(e)!==t)return{peak:!t,at:e};return{peak:!t,at:r[r.length-1]}}function Q(e,t,n=Date.now()){if(!Z(n))return!1;let r=e?.providerID??``;return r===`deepseek`||r===`opencode-go`&&t===`go`&&/^deepseek/.test(e?.modelID??``)}if(typeof process<`u`&&process.argv?.[2]===`--self-check`){let e=(e,t)=>{if(!e)throw Error(`self-check: `+t)},t=(e,t=0)=>Date.UTC(2026,9,27,e,t);e(Z(t(2)),`02:00 UTC on a weekday is peak`),e(!Z(t(0,30)),`00:30 UTC is off-peak`),e(!Z(t(4)),`04:00 is the first off-peak minute`),e(Z(t(6)),`06:00 is peak again`),e(!Z(t(10)),`10:00 ends it`),e(!Z((e=>Date.UTC(2026,9,31,e))(2)),`a weekend is never peak`);let n={providerID:`deepseek`,modelID:`deepseek-chat`},r={providerID:`opencode-go`,modelID:`deepseek-v4.1-flash`};e(Q(n,`ds`,t(2)),`native DeepSeek doubles at peak`),e(!Q(n,`ds`,t(4)),`and not off-peak`),e(Q(r,`go`,t(2)),`a Go DeepSeek doubles while Go pays`),e(!Q(r,`ds`,t(2)),`but not while another wallet pays`),e(!Q({providerID:`opencode-go`,modelID:`glm-5.3`},`go`,t(2)),`a Go model that is not DeepSeek never doubles`),e(!Q({providerID:`opencode`,modelID:`deepseek-v4.1-flash`},`zen`,t(2)),`Zen's DeepSeek price is flat`),e(!Q(void 0,`go`,t(2)),`no model, no doubling`);let i=Qr(t(2));e(!i.peak&&i.at===t(4),`the next change from 02:00 is off-peak at 04:00`);let a=Qr(Date.UTC(2026,9,30,23));e(a.peak&&a.at===Date.UTC(2026,10,2,1),`Friday night flips to peak on Monday at 01:00`),console.log(`self-check ok: `+Jr.length+` windows, Zen flat, the weekend never peak`)}var $r=(0,e.template)(`<span class="ocb-dim ocb-figure">reset `),ei=(0,e.template)(`<div class="ocb-line ocb-windows"><span class=ocb-dim></span><span>`),ti=(0,e.template)(`<span class="ocb-bad ocb-mark">`),ni=(0,e.template)(`<div class=ocb-line><span></span><span>`),ri=(0,e.template)(`<div class=ocb-dim>`),ii=(0,e.template)(`<div class=ocb>`),ai=(0,e.template)(`<div class=ocb-warn>stale `),oi=(0,e.template)(`<div class="ocb-dim ocb-empty">no provider connected`),si=(0,e.template)(`<div class="ocb-dim ocb-empty">opencode auth login`),ci=(0,e.template)(`<div class=ocb-line><span class=ocb-dim>workspace</span><span class="ocb-accent ocb-figure">`),li=(0,e.template)(`<div class=ocb-rule>`),ui=(0,e.template)(`<span class="ocb-bad ocb-peak">↗`),di=(0,e.template)(`<div class=ocb-line><span>GO</span><span role=progressbar aria-valuemin=0 aria-valuemax=100><span class=ocb-fill></span></span><span>`),fi=(0,e.template)(`<svg width=16 height=16 viewBox="0 0 16 16"fill=none aria-hidden=true><circle cx=8 cy=8 r=7 stroke=currentColor stroke-opacity=0.18 stroke-width=2></circle><circle cx=8 cy=8 r=7 stroke=currentColor stroke-width=2 transform="rotate(-90 8 8)">`),pi=(0,e.template)(`<svg viewBox="0 0 16 16"width=16 height=16 fill=none aria-hidden=true><rect x=2 y=4.5 width=12 height=8 rx=2 stroke=currentColor stroke-width=1.6></rect><path d="M2 7h12"stroke=currentColor stroke-width=1.6></path><circle cx=11 cy=9.6 r=1.1 fill=currentColor>`),mi=(0,e.template)(`<span>`),hi=(0,e.template)(`<span class=ocb-head-label>`),gi=(0,e.template)(`<span class="ocb-head-label ocb-bad"aria-hidden=true>↗`),_i=`↗`,vi=3e5,yi=3e4,bi=2*vi,xi=15e3,Si=`
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let e=require("solid-js/web"),t=require("@opencode/plugin/gui"),n=require("solid-js"),r=require("@opencode/plugin/rpc");function i(e,t){let n=e?.providerID??``;return n===`deepseek`?`ds`:n===`openrouter`?`or`:n===`opencode`||n===`opencode-zen`?`zen`:n===`opencode-go`?t?.go?.monthly?.status===`rate-limited`?`zen`:`go`:`none`}function a(e){return!!(e?.go||e?.zen||e?.ds||e?.or)}function o(e){let t=Math.floor(e/6e4);return t<60?`${t}m`:`${Math.floor(t/60)}h ${t%60}m`}function s(e){return typeof e?.percent==`number`?e.percent:null}function c(e){if(!e)return``;let t=Date.parse(e);if(!Number.isFinite(t))return``;let n=t-Date.now();if(n<=0)return`now`;let r=Math.floor(n/6e4);if(r<60)return`${r}m`;let i=Math.floor(r/60);return i<48?`${i}h ${r%60}m`:`${Math.floor(i/24)}d ${i%24}h`}var l={type:`object`,properties:{status:{type:`string`},percent:{type:`number`},resetsAt:{type:`string`}},additionalProperties:!1},u=r.Rpc.define({id:`budget`,methods:{snapshot:{input:{type:`object`,properties:{force:{type:`boolean`}},additionalProperties:!1},output:{type:`object`,properties:{at:{type:`number`},go:{type:`object`,properties:{rolling:l,weekly:l,monthly:l,error:{type:`string`}},additionalProperties:!1},ds:{type:`object`,properties:{balance:{type:`number`},currency:{type:`string`},error:{type:`string`}},additionalProperties:!1},or:{type:`object`,properties:{balance:{type:`number`},totalCredits:{type:`number`},totalUsage:{type:`number`},usageMonthly:{type:`number`},error:{type:`string`}},additionalProperties:!1},zen:{type:`object`,properties:{balance:{type:`number`},available:{type:`number`},org:{type:`string`},peers:{type:`number`},error:{type:`string`}},additionalProperties:!1}},required:[`at`],additionalProperties:!1}}},events:{}});function d(e){return(...t)=>{for(let n of e)n&&n(...t)}}var f=e=>typeof e==`function`&&!e.length?e():e;function p(e,...t){return typeof e==`function`?e(...t):e}var m=/((?:--)?(?:\w+-?)+)\s*:\s*([^;]*)/g;function h(e){let t={},n;for(;n=m.exec(e);)t[n[1]]=n[2];return t}function g(e,t){if(typeof e==`string`){if(typeof t==`string`)return`${e};${t}`;e=h(e)}else typeof t==`string`&&(t=h(t));return{...e,...t}}function _(...e){return d(e)}function v(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function y(e){return Object.prototype.toString.call(e)===`[object String]`}function b(e){return typeof e==`function`}function x(e){return t=>`${e()}-${t}`}function S(e,t){return e?e===t||e.contains(t):!1}function C(e,t=!1){let{activeElement:n}=T(e);if(!n?.nodeName)return null;if(E(n)&&n.contentDocument)return C(n.contentDocument.body,t);if(t){let e=n.getAttribute(`aria-activedescendant`);if(e){let t=T(n).getElementById(e);if(t)return t}}return n}function w(e){return T(e).defaultView||window}function T(e){return e?e.ownerDocument||e:document}function E(e){return e.tagName===`IFRAME`}var ee=(e=>(e.Escape=`Escape`,e.Enter=`Enter`,e.Tab=`Tab`,e.Space=` `,e.ArrowDown=`ArrowDown`,e.ArrowLeft=`ArrowLeft`,e.ArrowRight=`ArrowRight`,e.ArrowUp=`ArrowUp`,e.End=`End`,e.Home=`Home`,e.PageDown=`PageDown`,e.PageUp=`PageUp`,e))(ee||{});function te(e){return typeof window<`u`&&window.navigator!=null&&e.test(window.navigator.userAgentData?.platform||window.navigator.platform)}function D(){return te(/^Mac/i)}function O(e,t){return t&&(b(t)?t(e):t[0](t[1],e)),e?.defaultPrevented}function ne(e){return t=>{for(let n of e)O(t,n)}}function re(e){return D()?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function k(e){if(e){if(ae())e.focus({preventScroll:!0});else{let t=oe(e);e.focus(),se(t)}}}var ie=null;function ae(){if(ie==null){ie=!1;try{document.createElement(`div`).focus({get preventScroll(){return ie=!0,!0}})}catch{}}return ie}function oe(e){let t=e.parentNode,n=[],r=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==r;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&n.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return r instanceof HTMLElement&&n.push({element:r,scrollTop:r.scrollTop,scrollLeft:r.scrollLeft}),n}function se(e){for(let{element:t,scrollTop:n,scrollLeft:r}of e)t.scrollTop=n,t.scrollLeft=r}var ce=[`input:not([type='hidden']):not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`button:not([disabled])`,`a[href]`,`area[href]`,`[tabindex]`,`iframe`,`object`,`embed`,`audio[controls]`,`video[controls]`,`[contenteditable]:not([contenteditable='false'])`],le=[...ce,`[tabindex]:not([tabindex="-1"]):not([disabled])`],ue=`${ce.join(`:not([hidden]),`)},[tabindex]:not([disabled]):not([hidden])`;le.join(`:not([hidden]):not([tabindex="-1"]),`);function de(e,t){let n=Array.from(e.querySelectorAll(ue)).filter(fe);return t&&fe(e)&&n.unshift(e),n.forEach((e,t)=>{if(E(e)&&e.contentDocument){let r=e.contentDocument.body,i=de(r,!1);n.splice(t,1,...i)}}),n}function fe(e){return pe(e)&&!me(e)}function pe(e){return e.matches(ue)&&he(e)}function me(e){return Number.parseInt(e.getAttribute(`tabindex`)||`0`,10)<0}function he(e,t){return e.nodeName!==`#comment`&&ge(e)&&_e(e,t)&&(!e.parentElement||he(e.parentElement,e))}function ge(e){if(!(e instanceof HTMLElement)&&!(e instanceof SVGElement))return!1;let{display:t,visibility:n}=e.style,r=t!==`none`&&n!==`hidden`&&n!==`collapse`;if(r){if(!e.ownerDocument.defaultView)return r;let{getComputedStyle:t}=e.ownerDocument.defaultView,{display:n,visibility:i}=t(e);r=n!==`none`&&i!==`hidden`&&i!==`collapse`}return r}function _e(e,t){return!e.hasAttribute(`hidden`)&&(e.nodeName===`DETAILS`&&t&&t.nodeName!==`SUMMARY`?e.hasAttribute(`open`):!0)}function ve(){}function A(e,t){return(0,n.mergeProps)(e,t)}var ye=new Map,be=new Set;function xe(){if(typeof window>`u`||document.body===null)return;let e=e=>{if(!e.target)return;let n=ye.get(e.target);n||(n=new Set,ye.set(e.target,n),e.target.addEventListener(`transitioncancel`,t)),n.add(e.propertyName)},t=e=>{if(!e.target)return;let n=ye.get(e.target);if(n&&(n.delete(e.propertyName),n.size===0&&(e.target.removeEventListener(`transitioncancel`,t),ye.delete(e.target)),ye.size===0)){for(let e of be)e();be.clear()}};document.body.addEventListener(`transitionrun`,e),document.body.addEventListener(`transitionend`,t)}typeof document<`u`&&(document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,xe):xe());var Se={border:`0`,clip:`rect(0 0 0 0)`,"clip-path":`inset(50%)`,height:`1px`,margin:`0 -1px -1px 0`,overflow:`hidden`,padding:`0`,position:`absolute`,width:`1px`,"white-space":`nowrap`},Ce=new Set([`Avst`,`Arab`,`Armi`,`Syrc`,`Samr`,`Mand`,`Thaa`,`Mend`,`Nkoo`,`Adlm`,`Rohg`,`Hebr`]),we=new Set([`ae`,`ar`,`arc`,`bcc`,`bqi`,`ckb`,`dv`,`fa`,`glk`,`he`,`ku`,`mzn`,`nqo`,`pnb`,`ps`,`sd`,`ug`,`ur`,`yi`]);function Te(e){if(Intl.Locale){let t=new Intl.Locale(e).maximize().script??``;return Ce.has(t)}let t=e.split(`-`)[0];return we.has(t)}function Ee(e){return Te(e)?`rtl`:`ltr`}function De(){let e=typeof navigator<`u`&&(navigator.language||navigator.userLanguage)||`en-US`;try{Intl.DateTimeFormat.supportedLocalesOf([e])}catch{e=`en-US`}return{locale:e,direction:Ee(e)}}var Oe=De(),ke=new Set;function Ae(){Oe=De();for(let e of ke)e(Oe)}function je(){let t={locale:`en-US`,direction:`ltr`},[r,i]=(0,n.createSignal)(Oe),a=(0,n.createMemo)(()=>e.isServer?t:r());return(0,n.onMount)(()=>{ke.size===0&&window.addEventListener(`languagechange`,Ae),ke.add(i),(0,n.onCleanup)(()=>{ke.delete(i),ke.size===0&&window.removeEventListener(`languagechange`,Ae)})}),{locale:()=>a().locale,direction:()=>a().direction}}var Me=(0,n.createContext)();function Ne(){let e=je();return(0,n.useContext)(Me)||e}function j(t){let[r,i]=(0,n.splitProps)(t,[`as`]);if(!r.as)throw Error("[kobalte]: Polymorphic is missing the required `as` prop.");return(0,e.createComponent)(e.Dynamic,(0,e.mergeProps)(i,{get component(){return r.as}}))}var Pe=[`top`,`right`,`bottom`,`left`],M=Math.min,N=Math.max,Fe=Math.round,Ie=Math.floor,P=e=>({x:e,y:e}),Le={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Re(e,t,n){return N(e,M(t,n))}function F(e,t){return typeof e==`function`?e(t):e}function I(e){return e.split(`-`)[0]}function ze(e){return e.split(`-`)[1]}function Be(e){return e===`x`?`y`:`x`}function Ve(e){return e===`y`?`height`:`width`}function L(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function He(e){return Be(L(e))}function Ue(e,t,n){n===void 0&&(n=!1);let r=ze(e),i=He(e),a=Ve(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Qe(o)),[o,Qe(o)]}function We(e){let t=Qe(e);return[Ge(e),t,Ge(t)]}function Ge(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Ke=[`left`,`right`],qe=[`right`,`left`],Je=[`top`,`bottom`],Ye=[`bottom`,`top`];function Xe(e,t,n){switch(e){case`top`:case`bottom`:return n?t?qe:Ke:t?Ke:qe;case`left`:case`right`:return t?Je:Ye;default:return[]}}function Ze(e,t,n,r){let i=ze(e),a=Xe(I(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Ge)))),a}function Qe(e){let t=I(e);return Le[t]+e.slice(t.length)}function $e(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function et(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:$e(e)}function tt(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function nt(e,t,n){let{reference:r,floating:i}=e,a=L(t),o=He(t),s=Ve(o),c=I(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=ze(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function rt(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=F(t,e),p=et(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=tt(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=tt(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var it=50,at=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:rt},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=nt(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<it&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=nt(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},ot=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=F(e,t)||{};if(l==null)return{};let d=et(u),f={x:n,y:r},p=He(i),m=Ve(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;C&&await(o.isElement==null?void 0:o.isElement(S))||(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=M(d[_],T),ee=M(d[v],T),te=C-h[m]-ee,D=C/2-h[m]/2+w,O=Re(E,D,te),ne=!c.arrow&&ze(i)!=null&&D!==O&&a.reference[m]/2-(D<E?E:ee)-h[m]/2<0,re=ne?D<E?D-E:D-te:0;return{[p]:f[p]+re,data:{[p]:O,centerOffset:D-O-re,...ne&&{alignmentOffset:re}},reset:ne}}}),st=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=F(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=I(r),_=L(o),v=I(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Qe(o)]:We(o)),x=p!==`none`;!d&&x&&b.push(...Ze(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=Ue(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===L(t)||T.every(e=>L(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=L(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}};function ct(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function lt(e){return Pe.some(t=>e[t]>=0)}var ut=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=F(e,t);switch(i){case`referenceHidden`:{let e=ct(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:lt(e)}}}case`escaped`:{let e=ct(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:lt(e)}}}default:return{}}}}},dt=new Set([`left`,`top`]);async function ft(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=I(n),s=ze(n),c=L(n)===`y`,l=dt.has(o)?-1:1,u=a&&c?-1:1,d=F(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var pt=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await ft(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},mt=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=F(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=L(i),p=Be(f),m=u[p],h=u[f],g=(e,t)=>Re(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},ht=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=F(e,t),c=await i.detectOverflow(t,s),l=I(n),u=ze(n),d=L(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let g=p-c.top-c.bottom,_=f-c.left-c.right,v=M(p-c[m],g),y=M(f-c[h],_),b=t.middlewareData.shift,x=!b,S=v,C=y;b!=null&&b.enabled.x&&(C=_),b!=null&&b.enabled.y&&(S=g),x&&!u&&(d?C=f-2*N(c.left,c.right):S=p-2*N(c.top,c.bottom)),await o({...t,availableWidth:C,availableHeight:S});let w=await i.getDimensions(a.floating);return f!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function gt(){return typeof window<`u`}function _t(e){return vt(e)?(e.nodeName||``).toLowerCase():`#document`}function R(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function z(e){return((vt(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function vt(e){return gt()?e instanceof Node||e instanceof R(e).Node:!1}function B(e){return gt()?e instanceof Element||e instanceof R(e).Element:!1}function V(e){return gt()?e instanceof HTMLElement||e instanceof R(e).HTMLElement:!1}function yt(e){return!gt()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof R(e).ShadowRoot}function bt(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=U(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function xt(e){return/^(table|td|th)$/.test(_t(e))}function St(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Ct=/transform|translate|scale|rotate|perspective|filter/,wt=/paint|layout|strict|content/,H=e=>!!e&&e!==`none`,Tt;function Et(e){let t=B(e)?U(e):e;return H(t.transform)||H(t.translate)||H(t.scale)||H(t.rotate)||H(t.perspective)||!Ot()&&(H(t.backdropFilter)||H(t.filter))||Ct.test(t.willChange||``)||wt.test(t.contain||``)}function Dt(e){let t=W(e);for(;V(t)&&!kt(t);){if(Et(t))return t;if(St(t))return null;t=W(t)}return null}function Ot(){return Tt??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),Tt}function kt(e){return/^(html|body|#document)$/.test(_t(e))}function U(e){return R(e).getComputedStyle(e)}function At(e){return B(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function W(e){if(_t(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||yt(e)&&e.host||z(e);return yt(t)?t.host:t}function jt(e){let t=W(e);return kt(t)?(e.ownerDocument||e).body:V(t)&&bt(t)?t:jt(t)}function Mt(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=jt(e),i=r===e.ownerDocument?.body,a=R(r);if(i){let e=Nt(a);return t.concat(a,a.visualViewport||[],bt(r)?r:[],e&&n?Mt(e):[])}return t.concat(r,Mt(r,[],n))}function Nt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Pt(e){let t=U(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=V(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Fe(n)!==a||Fe(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Ft(e){return B(e)?e:e.contextElement}function It(e){let t=Ft(e);if(!V(t))return P(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Pt(t),o=(a?Fe(n.width):n.width)/r,s=(a?Fe(n.height):n.height)/i;return o&&Number.isFinite(o)||(o=1),s&&Number.isFinite(s)||(s=1),{x:o,y:s}}var Lt=P(0);function Rt(e){let t=R(e);return!Ot()||!t.visualViewport?Lt:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function zt(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===R(e)}function G(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Ft(e),o=P(1);t&&(r?B(r)&&(o=It(r)):o=It(e));let s=zt(a,n,r)?Rt(a):P(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=R(a),t=B(r)?R(r):r,n=e,i=Nt(n);for(;i&&t!==n;){let e=It(i),t=i.getBoundingClientRect(),r=U(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=R(i),i=Nt(n)}}return tt({width:u,height:d,x:c,y:l})}function Bt(e,t){let n=At(e).scrollLeft;return t?t.left+n:G(z(e)).left+n}function Vt(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Bt(e,n),y:n.top+t.scrollTop}}function Ht(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=z(r),s=t?St(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=P(1),u=P(0),d=V(r);if((d||!a)&&((_t(r)!==`body`||bt(o))&&(c=At(r)),d)){let e=G(r);l=It(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?Vt(o,c):P(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function Ut(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function Wt(e){let t=At(e),n=e.ownerDocument.body,r=N(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=N(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+Bt(e),o=-t.scrollTop;return U(n).direction===`rtl`&&(a+=N(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var Gt=25;function Kt(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=R(e),a=z(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!Ot()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(Bt(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=Gt&&(s-=o)}return{width:s,height:c,x:l,y:u}}function qt(e,t){let n=G(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=It(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function Jt(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=Kt(e,n,t);else if(t===`document`)r=Wt(z(e));else if(B(t))r=qt(t,n);else{let n=Rt(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return tt(r)}function Yt(e,t){let n=t.get(e);if(n)return n;let r=Mt(e,[],!1).filter(e=>B(e)&&_t(e)!==`body`),i=null,a=U(e).position===`fixed`,o=a?W(e):e;for(;B(o)&&!kt(o);){let e=U(o),t=Et(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=W(o)}return t.set(e,r),r}function Xt(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?St(t)?[]:Yt(t,this._c):[].concat(n),r],o=Jt(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=Jt(t,a[e],i);s=N(n.top,s),c=M(n.right,c),l=M(n.bottom,l),u=N(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function Zt(e){let{width:t,height:n}=Pt(e);return{width:t,height:n}}function Qt(e,t,n){let r=V(t),i=z(t),a=n===`fixed`,o=G(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=P(0);if((r||!a)&&((_t(t)!==`body`||bt(i))&&(s=At(t)),r)){let e=G(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}!r&&i&&(c.x=Bt(i));let l=i&&!r&&!a?Vt(i,s):P(0);return{x:o.left+s.scrollLeft-c.x-l.x,y:o.top+s.scrollTop-c.y-l.y,width:o.width,height:o.height}}function $t(e){return U(e).position===`static`}function en(e,t){if(!V(e)||U(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return z(e)===n&&(n=n.ownerDocument.body),n}function tn(e,t){let n=R(e);if(St(e))return n;if(!V(e)){let t=W(e);for(;t&&!kt(t);){if(B(t)&&!$t(t))return t;t=W(t)}return n}let r=en(e,t);for(;r&&xt(r)&&$t(r);)r=en(r,t);return r&&kt(r)&&$t(r)&&!Et(r)?n:r||Dt(e)||n}var nn=async function(e){let t=this.getOffsetParent||tn,n=this.getDimensions,r=await n(e.floating);return{reference:Qt(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function rn(e){return U(e).direction===`rtl`}var an={convertOffsetParentRelativeRectToViewportRelativeRect:Ht,getDocumentElement:z,getClippingRect:Xt,getOffsetParent:tn,getElementRects:nn,getClientRects:Ut,getDimensions:Zt,getScale:It,isElement:B,isRTL:rn};function on(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function sn(e,t,n){let r=null,i,a=z(e);function o(){var e;clearTimeout(i),(e=r)==null||e.disconnect(),r=null}function s(n,c){n===void 0&&(n=!1),c===void 0&&(c=1),o();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(n||t(),!f||!p)return;let m=Ie(d),h=Ie(a.clientWidth-(u+f)),g=Ie(a.clientHeight-(d+p)),_=Ie(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:N(0,M(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(!on(l,e.getBoundingClientRect()))return s();if(n!==c){if(!y)return s();n?s(!1,n):i=setTimeout(()=>{s(!1,1e-7)},1e3)}y=!1}try{r=new IntersectionObserver(b,{...v,root:a.ownerDocument})}catch{r=new IntersectionObserver(b,v)}r.observe(e)}let c=R(e),l=()=>s(n);return c.addEventListener(`resize`,l),s(!0),()=>{c.removeEventListener(`resize`,l),o()}}function cn(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Ft(e),u=i||a?[...l?Mt(l):[],...t?Mt(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?sn(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?G(e):null;c&&g();function g(){let t=G(e);h&&!on(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var ln=pt,un=mt,dn=st,fn=ht,pn=ut,mn=ot,hn=(e,t,n)=>{let r=new Map,i=n??{},a={...an,...i.platform,_c:r};return at(e,t,{...i,platform:a})},gn=(0,e.template)(`<svg display=block viewBox="0 0 30 30"style=transform:scale(1.02)><g><path fill=none d=M23,27.8c1.1,1.2,3.4,2.2,5,2.2h2H0h2c1.7,0,3.9-1,5-2.2l6.6-7.2c0.7-0.8,2-0.8,2.7,0L23,27.8L23,27.8z></path><path stroke=none d=M23,27.8c1.1,1.2,3.4,2.2,5,2.2h2H0h2c1.7,0,3.9-1,5-2.2l6.6-7.2c0.7-0.8,2-0.8,2.7,0L23,27.8L23,27.8z>`),_n=(0,n.createContext)();function vn(){let e=(0,n.useContext)(_n);if(e===void 0)throw Error("[kobalte]: `usePopperContext` must be used within a `Popper` component");return e}var yn=30,bn=yn/2,xn={top:180,right:-90,bottom:0,left:90};function Sn(t){let r=vn(),i=A({size:yn},t),[a,o]=(0,n.splitProps)(i,[`ref`,`style`,`size`]),s=()=>r.currentPlacement().split(`-`)[0],c=Cn(r.contentRef),l=()=>c()?.getPropertyValue(`background-color`)||`none`,u=()=>c()?.getPropertyValue(`border-${s()}-color`)||`none`,d=()=>c()?.getPropertyValue(`border-${s()}-width`)||`0px`,f=()=>Number.parseInt(d())*2*(yn/a.size),p=()=>`rotate(${xn[s()]} ${bn} ${bn}) translate(0 2)`;return(0,e.createComponent)(j,(0,e.mergeProps)({as:`div`,ref(e){var t=_(r.setArrowRef,a.ref);typeof t==`function`&&t(e)},"aria-hidden":`true`,get style(){return g({position:`absolute`,"font-size":`${a.size}px`,width:`1em`,height:`1em`,"pointer-events":`none`,fill:l(),stroke:u(),"stroke-width":f()},a.style)}},o,{get children(){var t=gn(),n=t.firstChild;return n.firstChild.nextSibling,(0,e.effect)(()=>(0,e.setAttribute)(n,`transform`,p())),t}}))}function Cn(e){let[t,r]=(0,n.createSignal)();return(0,n.createEffect)(()=>{let t=e();t&&r(w(t).getComputedStyle(t))}),t}function wn(t){let r=vn(),[i,a]=(0,n.splitProps)(t,[`ref`,`style`]);return(0,e.createComponent)(j,(0,e.mergeProps)({as:`div`,ref(e){var t=_(r.setPositionerRef,i.ref);typeof t==`function`&&t(e)},"data-popper-positioner":``,get style(){return g({position:`absolute`,top:0,left:0,"min-width":`max-content`},i.style)}},a))}function Tn(e){let{x:t=0,y:n=0,width:r=0,height:i=0}=e??{};if(typeof DOMRect==`function`)return new DOMRect(t,n,r,i);let a={x:t,y:n,width:r,height:i,top:n,right:t+r,bottom:n+i,left:t};return{...a,toJSON:()=>a}}function En(e,t){return{contextElement:e,getBoundingClientRect:()=>{let n=t(e);return n?Tn(n):e?e.getBoundingClientRect():Tn()}}}function Dn(e){return/^(?:top|bottom|left|right)(?:-(?:start|end))?$/.test(e)}var On={top:`bottom`,right:`left`,bottom:`top`,left:`right`};function kn(e,t){let[n,r]=e.split(`-`),i=On[n];return r?n===`left`||n===`right`?`${i} ${r===`start`?`top`:`bottom`}`:r===`start`?`${i} ${t===`rtl`?`right`:`left`}`:`${i} ${t===`rtl`?`left`:`right`}`:`${i} center`}function An(t){let r=A({getAnchorRect:e=>e?.getBoundingClientRect(),placement:`bottom`,gutter:0,shift:0,flip:!0,slide:!0,overlap:!1,sameWidth:!1,fitViewport:!1,hideWhenDetached:!1,detachedPadding:0,arrowPadding:4,overflowPadding:8},t),[i,a]=(0,n.createSignal)(),[o,s]=(0,n.createSignal)(),[c,l]=(0,n.createSignal)(r.placement),u=()=>En(r.anchorRef?.(),r.getAnchorRect),{direction:d}=Ne();async function f(){let e=u(),t=i(),n=o();if(!e||!t)return;let a=(n?.clientHeight||0)/2,s=typeof r.gutter==`number`?r.gutter+a:r.gutter??a;t.style.setProperty(`--kb-popper-content-overflow-padding`,`${r.overflowPadding}px`),e.getBoundingClientRect();let c=[ln(({placement:e})=>{let t=!!e.split(`-`)[1];return{mainAxis:s,crossAxis:t?void 0:r.shift,alignmentAxis:r.shift}})];if(r.flip!==!1){let e=typeof r.flip==`string`?r.flip.split(` `):void 0;if(e!==void 0&&!e.every(Dn))throw Error("`flip` expects a spaced-delimited list of placements");c.push(dn({padding:r.overflowPadding,fallbackPlacements:e}))}(r.slide||r.overlap)&&c.push(un({mainAxis:r.slide,crossAxis:r.overlap,padding:r.overflowPadding})),c.push(fn({padding:r.overflowPadding,apply({availableWidth:e,availableHeight:n,rects:i}){let a=Math.round(i.reference.width);e=Math.floor(e),n=Math.floor(n),t.style.setProperty(`--kb-popper-anchor-width`,`${a}px`),t.style.setProperty(`--kb-popper-content-available-width`,`${e}px`),t.style.setProperty(`--kb-popper-content-available-height`,`${n}px`),r.sameWidth&&(t.style.width=`${a}px`),r.fitViewport&&(t.style.maxWidth=`${e}px`,t.style.maxHeight=`${n}px`)}})),r.hideWhenDetached&&c.push(pn({padding:r.detachedPadding})),n&&c.push(mn({element:n,padding:r.arrowPadding}));let f=await hn(e,t,{placement:r.placement,strategy:`absolute`,middleware:c,platform:{...an,isRTL:()=>d()===`rtl`}});if(l(f.placement),r.onCurrentPlacementChange?.(f.placement),!t)return;t.style.setProperty(`--kb-popper-content-transform-origin`,kn(f.placement,d()));let p=Math.round(f.x),m=Math.round(f.y),h;if(r.hideWhenDetached&&(h=f.middlewareData.hide?.referenceHidden?`hidden`:`visible`),Object.assign(t.style,{top:`0`,left:`0`,transform:`translate3d(${p}px, ${m}px, 0)`,visibility:h}),n&&f.middlewareData.arrow){let{x:e,y:t}=f.middlewareData.arrow,r=f.placement.split(`-`)[0];Object.assign(n.style,{left:e==null?``:`${e}px`,top:t==null?``:`${t}px`,[r]:`100%`})}}(0,n.createEffect)(()=>{let e=u(),t=i();if(!e||!t)return;let r=cn(e,t,f,{elementResize:typeof ResizeObserver==`function`});(0,n.onCleanup)(r)}),(0,n.createEffect)(()=>{let e=i(),t=r.contentRef?.();e&&t&&queueMicrotask(()=>{e.style.zIndex=getComputedStyle(t).zIndex})});let p={currentPlacement:c,contentRef:()=>r.contentRef?.(),setPositionerRef:a,setArrowRef:s};return(0,e.createComponent)(_n.Provider,{value:p,get children(){return r.children}})}var jn=Object.assign(An,{Arrow:Sn,Context:_n,usePopperContext:vn,Positioner:wn}),Mn=`data-kb-top-layer`,Nn,Pn=!1,K=[];function Fn(e){return K.findIndex(t=>t.node===e)}function In(e){return K[Fn(e)]}function Ln(e){return K.length>0&&K[K.length-1].node===e}function Rn(){return K.filter(e=>e.isPointerBlocking)}function zn(){return[...Rn()].slice(-1)[0]}function Bn(){return Rn().length>0}function Vn(e){let t=Fn(zn()?.node);return Fn(e)<t}function Hn(e){K.push(e)}function Un(e){let t=Fn(e);t<0||K.splice(t,1)}function Wn(){for(let{node:e}of K)e.style.pointerEvents=Vn(e)?`none`:`auto`}function Gn(e){if(Bn()&&!Pn){let t=T(e);Nn=document.body.style.pointerEvents,t.body.style.pointerEvents=`none`,Pn=!0}}function Kn(e){if(Bn())return;let t=T(e);t.body.style.pointerEvents=Nn,t.body.style.length===0&&t.body.removeAttribute(`style`),Pn=!1}var q={layers:K,isTopMostLayer:Ln,hasPointerBlockingLayer:Bn,isBelowPointerBlockingLayer:Vn,addLayer:Hn,removeLayer:Un,indexOf:Fn,find:In,assignPointerEventToLayers:Wn,disableBodyPointerEvents:Gn,restoreBodyPointerEvents:Kn},qn=`focusScope.autoFocusOnMount`,Jn=`focusScope.autoFocusOnUnmount`,Yn={bubbles:!1,cancelable:!0},Xn={stack:[],active(){return this.stack[0]},add(e){e!==this.active()&&this.active()?.pause(),this.stack=v(this.stack,e),this.stack.unshift(e)},remove(e){this.stack=v(this.stack,e),this.active()?.resume()}};function Zn(t,r){let[i,a]=(0,n.createSignal)(!1),o={pause(){a(!0)},resume(){a(!1)}},s=null,c=e=>t.onMountAutoFocus?.(e),l=e=>t.onUnmountAutoFocus?.(e),u=()=>T(r()),d=()=>{let e=u().createElement(`span`);return e.setAttribute(`data-focus-trap`,``),e.tabIndex=0,Object.assign(e.style,Se),e},p=()=>{let e=r();return e?de(e,!0).filter(e=>!e.hasAttribute(`data-focus-trap`)):[]},m=()=>{let e=p();return e.length>0?e[0]:null},h=()=>{let e=p();return e.length>0?e[e.length-1]:null},g=()=>{let e=r();if(!e)return!1;let t=C(e);return!t||S(e,t)?!1:pe(t)};(0,n.createEffect)(()=>{if(e.isServer)return;let t=r();if(!t)return;Xn.add(o);let i=C(t);if(!S(t,i)){let e=new CustomEvent(qn,Yn);t.addEventListener(qn,c),t.dispatchEvent(e),e.defaultPrevented||setTimeout(()=>{k(m()),C(t)===i&&k(t)},0)}(0,n.onCleanup)(()=>{t.removeEventListener(qn,c),setTimeout(()=>{let e=new CustomEvent(Jn,Yn);g()&&e.preventDefault(),t.addEventListener(Jn,l),t.dispatchEvent(e),e.defaultPrevented||k(i??u().body),t.removeEventListener(Jn,l),Xn.remove(o)},0)})}),(0,n.createEffect)(()=>{if(e.isServer)return;let a=r();if(!a||!f(t.trapFocus)||i())return;let o=e=>{let t=e.target;t?.closest(`[data-kb-top-layer]`)||(S(a,t)?s=t:k(s))},c=e=>{let t=e.relatedTarget??C(a);t?.closest(`[data-kb-top-layer]`)||S(a,t)||k(s)};u().addEventListener(`focusin`,o),u().addEventListener(`focusout`,c),(0,n.onCleanup)(()=>{u().removeEventListener(`focusin`,o),u().removeEventListener(`focusout`,c)})}),(0,n.createEffect)(()=>{if(e.isServer)return;let a=r();if(!a||!f(t.trapFocus)||i())return;let o=d();a.insertAdjacentElement(`afterbegin`,o);let s=d();a.insertAdjacentElement(`beforeend`,s);function c(e){let t=m(),n=h();e.relatedTarget===t?k(n):k(t)}o.addEventListener(`focusin`,c),s.addEventListener(`focusin`,c);let l=new MutationObserver(e=>{for(let t of e)t.previousSibling===s&&(s.remove(),a.insertAdjacentElement(`beforeend`,s)),t.nextSibling===o&&(o.remove(),a.insertAdjacentElement(`afterbegin`,o))});l.observe(a,{childList:!0,subtree:!1}),(0,n.onCleanup)(()=>{o.removeEventListener(`focusin`,c),s.removeEventListener(`focusin`,c),o.remove(),s.remove(),l.disconnect()})})}var Qn=`data-live-announcer`;function $n(e){(0,n.createEffect)(()=>{f(e.isDisabled)||(0,n.onCleanup)(tr(f(e.targets),f(e.root)))})}var er=new WeakMap,J=[];function tr(e,t=document.body){let n=new Set(e),r=new Set,i=e=>{for(let t of e.querySelectorAll(`[${Qn}], [${Mn}]`))n.add(t);let t=e=>{if(n.has(e)||e.parentElement&&r.has(e.parentElement)&&e.parentElement.getAttribute(`role`)!==`row`)return NodeFilter.FILTER_REJECT;for(let t of n)if(e.contains(t))return NodeFilter.FILTER_SKIP;return NodeFilter.FILTER_ACCEPT},i=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:t}),o=t(e);if(o===NodeFilter.FILTER_ACCEPT&&a(e),o!==NodeFilter.FILTER_REJECT){let e=i.nextNode();for(;e!=null;)a(e),e=i.nextNode()}},a=e=>{let t=er.get(e)??0;(e.getAttribute(`aria-hidden`)!==`true`||t!==0)&&(t===0&&setTimeout(()=>requestAnimationFrame(()=>e.setAttribute(`aria-hidden`,`true`))),r.add(e),er.set(e,t+1))};J.length&&J[J.length-1].disconnect(),i(t);let o=new MutationObserver(e=>{for(let t of e)if(t.type===`childList`&&t.addedNodes.length!==0&&![...n,...r].some(e=>e.contains(t.target))){for(let e of t.removedNodes)e instanceof Element&&(n.delete(e),r.delete(e));for(let e of t.addedNodes)(e instanceof HTMLElement||e instanceof SVGElement)&&(e.dataset.liveAnnouncer===`true`||e.dataset.reactAriaTopLayer===`true`)?n.add(e):e instanceof Element&&i(e)}});o.observe(t,{childList:!0,subtree:!0});let s={observe(){o.observe(t,{childList:!0,subtree:!0})},disconnect(){o.disconnect()}};return J.push(s),()=>{o.disconnect();for(let e of r){let t=er.get(e);if(t==null)return;t===1?(setTimeout(()=>requestAnimationFrame(()=>e.removeAttribute(`aria-hidden`))),er.delete(e)):er.set(e,t-1)}s===J[J.length-1]?(J.pop(),J.length&&J[J.length-1].observe()):J.splice(J.indexOf(s),1)}}function nr(t){let r=e=>{e.key===ee.Escape&&t.onEscapeKeyDown?.(e)};(0,n.createEffect)(()=>{if(e.isServer||f(t.isDisabled))return;let i=t.ownerDocument?.()??T();i.addEventListener(`keydown`,r),(0,n.onCleanup)(()=>{i.removeEventListener(`keydown`,r)})})}var rr=`interactOutside.pointerDownOutside`,ir=`interactOutside.focusOutside`;function ar(t,r){let i,a=ve,o=()=>T(r()),s=e=>t.onPointerDownOutside?.(e),c=e=>t.onFocusOutside?.(e),l=e=>t.onInteractOutside?.(e),u=e=>{let n=e.target;return!(n instanceof Element)||n.closest(`[data-kb-top-layer]`)||!S(o(),n)||S(r(),n)?!1:!t.shouldExcludeElement?.(n)},d=e=>{function t(){let t=r(),n=e.target;if(!t||!n||!u(e))return;let i=ne([s,l]);n.addEventListener(rr,i,{once:!0});let a=new CustomEvent(rr,{bubbles:!1,cancelable:!0,detail:{originalEvent:e,isContextMenu:e.button===2||re(e)&&e.button===0}});n.dispatchEvent(a)}e.pointerType===`touch`?(o().removeEventListener(`click`,t),a=t,o().addEventListener(`click`,t,{once:!0})):t()},p=e=>{let t=r(),n=e.target;if(!t||!n||!u(e))return;let i=ne([c,l]);n.addEventListener(ir,i,{once:!0});let a=new CustomEvent(ir,{bubbles:!1,cancelable:!0,detail:{originalEvent:e,isContextMenu:!1}});n.dispatchEvent(a)};(0,n.createEffect)(()=>{e.isServer||f(t.isDisabled)||(i=window.setTimeout(()=>{o().addEventListener(`pointerdown`,d,!0)},0),o().addEventListener(`focusin`,p,!0),(0,n.onCleanup)(()=>{window.clearTimeout(i),o().removeEventListener(`click`,a),o().removeEventListener(`pointerdown`,d,!0),o().removeEventListener(`focusin`,p,!0)}))})}var or=(0,n.createContext)();function sr(){return(0,n.useContext)(or)}function cr(t){let r,i=sr(),[a,o]=(0,n.splitProps)(t,[`ref`,`disableOutsidePointerEvents`,`excludedElements`,`onEscapeKeyDown`,`onPointerDownOutside`,`onFocusOutside`,`onInteractOutside`,`onDismiss`,`bypassTopMostLayerCheck`]),s=new Set([]),c=e=>{s.add(e);let t=i?.registerNestedLayer(e);return()=>{s.delete(e),t?.()}};ar({shouldExcludeElement:e=>r?a.excludedElements?.some(t=>S(t(),e))||[...s].some(t=>S(t,e)):!1,onPointerDownOutside:e=>{r&&!q.isBelowPointerBlockingLayer(r)&&(a.bypassTopMostLayerCheck||q.isTopMostLayer(r))&&(a.onPointerDownOutside?.(e),a.onInteractOutside?.(e),e.defaultPrevented||a.onDismiss?.())},onFocusOutside:e=>{a.onFocusOutside?.(e),a.onInteractOutside?.(e),e.defaultPrevented||a.onDismiss?.()}},()=>r),nr({ownerDocument:()=>T(r),onEscapeKeyDown:e=>{r&&q.isTopMostLayer(r)&&(a.onEscapeKeyDown?.(e),!e.defaultPrevented&&a.onDismiss&&(e.preventDefault(),a.onDismiss()))}}),(0,n.onMount)(()=>{if(!r)return;q.addLayer({node:r,isPointerBlocking:a.disableOutsidePointerEvents,dismiss:a.onDismiss});let e=i?.registerNestedLayer(r);q.assignPointerEventToLayers(),q.disableBodyPointerEvents(r),(0,n.onCleanup)(()=>{r&&(q.removeLayer(r),e?.(),q.assignPointerEventToLayers(),q.restoreBodyPointerEvents(r))})}),(0,n.createEffect)((0,n.on)([()=>r,()=>a.disableOutsidePointerEvents],([e,t])=>{if(!e)return;let r=q.find(e);r&&r.isPointerBlocking!==t&&(r.isPointerBlocking=t,q.assignPointerEventToLayers()),t&&q.disableBodyPointerEvents(e),(0,n.onCleanup)(()=>{q.restoreBodyPointerEvents(e)})},{defer:!0}));let l={registerNestedLayer:c};return(0,e.createComponent)(or.Provider,{value:l,get children(){return(0,e.createComponent)(j,(0,e.mergeProps)({as:`div`,ref(e){var t=_(e=>r=e,a.ref);typeof t==`function`&&t(e)}},o))}})}function lr(e){let[t,r]=(0,n.createSignal)(e.defaultValue?.()),i=(0,n.createMemo)(()=>e.value?.()!==void 0),a=(0,n.createMemo)(()=>i()?e.value?.():t());return[a,t=>{(0,n.untrack)(()=>{let n=p(t,a());return Object.is(n,a())||(i()||r(n),e.onChange?.(n)),n})}]}function ur(e){let[t,n]=lr(e);return[()=>t()??!1,n]}function dr(e={}){let[t,n]=ur({value:()=>f(e.open),defaultValue:()=>!!f(e.defaultOpen),onChange:t=>e.onOpenChange?.(t)}),r=()=>{n(!0)},i=()=>{n(!1)};return{isOpen:t,setIsOpen:n,open:r,close:i,toggle:()=>{t()?i():r()}}}function fr(e,t){let[r,i]=(0,n.createSignal)(pr(t?.()));return(0,n.createEffect)(()=>{i(e()?.tagName.toLowerCase()||pr(t?.()))}),r}function pr(e){return y(e)?e:void 0}var mr=Object.defineProperty,hr=(e,t)=>{for(var n in t)mr(e,n,{get:t[n],enumerable:!0})};hr({},{Button:()=>yr,Root:()=>vr});var gr=[`button`,`color`,`file`,`image`,`reset`,`submit`];function _r(e){let t=e.tagName.toLowerCase();return t===`button`?!0:t===`input`&&e.type?gr.indexOf(e.type)!==-1:!1}function vr(t){let r,i=A({type:`button`},t),[a,o]=(0,n.splitProps)(i,[`ref`,`type`,`disabled`]),s=fr(()=>r,()=>`button`),c=(0,n.createMemo)(()=>{let e=s();return e!=null&&_r({tagName:e,type:a.type})}),l=(0,n.createMemo)(()=>s()===`input`),u=(0,n.createMemo)(()=>s()===`a`&&r?.getAttribute(`href`)!=null);return(0,e.createComponent)(j,(0,e.mergeProps)({as:`button`,ref(e){var t=_(e=>r=e,a.ref);typeof t==`function`&&t(e)},get type(){return(0,e.memo)(()=>!!(c()||l()))()?a.type:void 0},get role(){return!c()&&!u()?`button`:void 0},get tabIndex(){return!c()&&!u()&&!a.disabled?0:void 0},get disabled(){return(0,e.memo)(()=>!!(c()||l()))()?a.disabled:void 0},get"aria-disabled"(){return!c()&&!l()&&a.disabled?!0:void 0},get"data-disabled"(){return a.disabled?``:void 0}},o))}var yr=vr;function br(e){return t=>(e(t),()=>e(void 0))}var Y=e=>typeof e==`function`?e():e,xr=(e,t)=>{if(e.contains(t))return!0;let n=t;for(;n;){if(n===e)return!0;n=n._$host??n.parentElement}return!1},Sr=new Map,Cr=e=>{(0,n.createEffect)(()=>{let t=Y(e.style)??{},r=Y(e.properties)??[],i={};for(let n in t)i[n]=e.element.style[n];let a=Sr.get(e.key);a?a.activeCount++:Sr.set(e.key,{activeCount:1,originalStyles:i,properties:r.map(e=>e.key)}),Object.assign(e.element.style,e.style);for(let t of r)e.element.style.setProperty(t.key,t.value);(0,n.onCleanup)(()=>{let t=Sr.get(e.key);if(t){if(t.activeCount!==1)t.activeCount--;else{Sr.delete(e.key);for(let[n,r]of Object.entries(t.originalStyles))e.element.style[n]=r;for(let n of t.properties)e.element.style.removeProperty(n);e.element.style.length===0&&e.element.removeAttribute(`style`),e.cleanup?.()}}})})},wr=(e,t)=>{switch(t){case`x`:return[e.clientWidth,e.scrollLeft,e.scrollWidth];case`y`:return[e.clientHeight,e.scrollTop,e.scrollHeight]}},Tr=(e,t)=>{let n=getComputedStyle(e),r=t===`x`?n.overflowX:n.overflowY;return r===`auto`||r===`scroll`||e.tagName===`HTML`&&r===`visible`},Er=(e,t,n)=>{let r=t===`x`&&window.getComputedStyle(e).direction===`rtl`?-1:1,i=e,a=0,o=0,s=!1;do{let[e,c,l]=wr(i,t),u=l-e-r*c;(c!==0||u!==0)&&Tr(i,t)&&(a+=u,o+=c),i===(n??document.documentElement)?s=!0:i=i._$host??i.parentElement}while(i&&!s);return[a,o]},[Dr,Or]=(0,n.createSignal)([]),kr=e=>Dr().indexOf(e)===Dr().length-1,Ar=e=>{let t=(0,n.mergeProps)({element:null,enabled:!0,hideScrollbar:!0,preventScrollbarShift:!0,preventScrollbarShiftMode:`padding`,restoreScrollPosition:!0,allowPinchZoom:!1},e),r=(0,n.createUniqueId)(),i=[0,0],a=null,o=null;(0,n.createEffect)(()=>{Y(t.enabled)&&(Or(e=>[...e,r]),(0,n.onCleanup)(()=>{Or(e=>e.filter(e=>e!==r))}))}),(0,n.createEffect)(()=>{if(!Y(t.enabled)||!Y(t.hideScrollbar))return;let{documentElement:e}=document,n=window.innerWidth-e.clientWidth;if(Y(t.preventScrollbarShift)){let r={overflow:`hidden`},i=[];n>0&&(Y(t.preventScrollbarShiftMode)===`padding`?r.paddingRight=`calc(${window.getComputedStyle(e).paddingRight} + ${n}px)`:r.marginRight=`calc(${window.getComputedStyle(e).marginRight} + ${n}px)`,i.push({key:`--scrollbar-width`,value:`${n}px`}));let a=window.scrollY,o=window.scrollX;Cr({key:`prevent-scroll`,element:e,style:r,properties:i,cleanup:()=>{Y(t.restoreScrollPosition)&&n>0&&window.scrollTo(o,a)}})}else Cr({key:`prevent-scroll`,element:e,style:{overflow:`hidden`}})}),(0,n.createEffect)(()=>{kr(r)&&Y(t.enabled)&&(document.addEventListener(`wheel`,c,{passive:!1}),document.addEventListener(`touchstart`,s,{passive:!1}),document.addEventListener(`touchmove`,l,{passive:!1}),(0,n.onCleanup)(()=>{document.removeEventListener(`wheel`,c),document.removeEventListener(`touchstart`,s),document.removeEventListener(`touchmove`,l)}))});let s=e=>{i=Mr(e),a=null,o=null},c=e=>{let n=e.target,r=Y(t.element),i=jr(e),a=Math.abs(i[0])>Math.abs(i[1])?`x`:`y`,o=Nr(n,a,a===`x`?i[0]:i[1],r),s;s=r&&xr(r,n)?!o:!0,s&&e.cancelable&&e.preventDefault()},l=e=>{let n=Y(t.element),r=e.target,s;if(e.touches.length===2)s=!Y(t.allowPinchZoom);else{if(a==null||o===null){let t=Mr(e).map((e,t)=>i[t]-e),n=Math.abs(t[0])>Math.abs(t[1])?`x`:`y`;a=n,o=n===`x`?t[0]:t[1]}if(r.type===`range`)s=!1;else{let e=Nr(r,a,o,n);s=n&&xr(n,r)?!e:!0}}s&&e.cancelable&&e.preventDefault()}},jr=e=>[e.deltaX,e.deltaY],Mr=e=>e.changedTouches[0]?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0],Nr=(e,t,n,r)=>{let[i,a]=Er(e,t,r!==null&&xr(r,e)?r:void 0);return!(n>0&&Math.abs(i)<=1||n<0&&Math.abs(a)<1)},Pr=Ar,Fr=e=>{let t=(0,n.createMemo)(()=>{let t=Y(e.element);if(t)return getComputedStyle(t)}),r=()=>t()?.animationName??`none`,[i,a]=(0,n.createSignal)(Y(e.show)?`present`:`hidden`),o=t=>{a(t),e.onStateChange?.(t)},s=`none`;return(0,n.createEffect)(i=>{let a=Y(e.show);return(0,n.untrack)(()=>{if(i===a)return a;let e=s,n=r();a?o(`present`):n===`none`||t()?.display===`none`?o(`hidden`):o(i===!0&&e!==n?`hiding`:`hidden`)}),a},Y(e.show)),(0,n.createEffect)(()=>{let t=Y(e.element);if(!t)return;let a=e=>{e.target===t&&(s=r())},c=e=>{let n=r().includes(e.animationName);e.target===t&&n&&i()===`hiding`&&o(`hidden`)};t.addEventListener(`animationstart`,a),t.addEventListener(`animationcancel`,c),t.addEventListener(`animationend`,c),(0,n.onCleanup)(()=>{t.removeEventListener(`animationstart`,a),t.removeEventListener(`animationcancel`,c),t.removeEventListener(`animationend`,c)})}),{present:()=>i()===`present`||i()===`hiding`,state:i}};hr({},{Anchor:()=>Lr,Arrow:()=>Sn,CloseButton:()=>Rr,Content:()=>zr,Description:()=>Br,Popover:()=>Kr,Portal:()=>Vr,Root:()=>Ur,Title:()=>Wr,Trigger:()=>Gr,usePopoverContext:()=>X});var Ir=(0,n.createContext)();function X(){let e=(0,n.useContext)(Ir);if(e===void 0)throw Error("[kobalte]: `usePopoverContext` must be used within a `Popover` component");return e}function Lr(t){let r=X(),[i,a]=(0,n.splitProps)(t,[`ref`]);return(0,e.createComponent)(j,(0,e.mergeProps)({as:`div`,ref(e){var t=_(r.setDefaultAnchorRef,i.ref);typeof t==`function`&&t(e)}},()=>r.dataset(),a))}function Rr(t){let r=X(),[i,a]=(0,n.splitProps)(t,[`aria-label`,`onClick`]);return(0,e.createComponent)(vr,(0,e.mergeProps)({get"aria-label"(){return i[`aria-label`]||r.translations().dismiss},onClick:e=>{O(e,i.onClick),r.close()}},()=>r.dataset(),a))}function zr(t){let r,i=X(),a=A({id:i.generateId(`content`)},t),[o,s]=(0,n.splitProps)(a,[`ref`,`style`,`onOpenAutoFocus`,`onCloseAutoFocus`,`onPointerDownOutside`,`onFocusOutside`,`onInteractOutside`]),c=!1,l=!1,u=!1,d=e=>{o.onCloseAutoFocus?.(e),i.isModal()?(e.preventDefault(),c||k(i.triggerRef())):(e.defaultPrevented||(l||k(i.triggerRef()),e.preventDefault()),l=!1,u=!1)},f=e=>{o.onPointerDownOutside?.(e),i.isModal()&&(c=e.detail.isContextMenu)},p=e=>{o.onFocusOutside?.(e),i.isOpen()&&i.isModal()&&e.preventDefault()},m=e=>{o.onInteractOutside?.(e),!i.isModal()&&(e.defaultPrevented||(l=!0,e.detail.originalEvent.type===`pointerdown`&&(u=!0)),S(i.triggerRef(),e.target)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&u&&e.preventDefault())};return $n({isDisabled:()=>!(i.isOpen()&&i.isModal()),targets:()=>r?[r]:[]}),Pr({element:()=>r??null,enabled:()=>i.contentPresent()&&i.preventScroll()}),Zn({trapFocus:()=>i.isOpen()&&i.isModal(),onMountAutoFocus:o.onOpenAutoFocus,onUnmountAutoFocus:d},()=>r),(0,n.createEffect)(()=>(0,n.onCleanup)(i.registerContentId(s.id))),(0,e.createComponent)(n.Show,{get when(){return i.contentPresent()},get children(){return(0,e.createComponent)(jn.Positioner,{get children(){return(0,e.createComponent)(cr,(0,e.mergeProps)({ref(e){var t=_(e=>{i.setContentRef(e),r=e},o.ref);typeof t==`function`&&t(e)},role:`dialog`,tabIndex:-1,get disableOutsidePointerEvents(){return(0,e.memo)(()=>!!i.isOpen())()&&i.isModal()},get excludedElements(){return[i.triggerRef]},get style(){return g({"--kb-popover-content-transform-origin":`var(--kb-popper-content-transform-origin)`,position:`relative`},o.style)},get"aria-labelledby"(){return i.titleId()},get"aria-describedby"(){return i.descriptionId()},onPointerDownOutside:f,onFocusOutside:p,onInteractOutside:m,get onDismiss(){return i.close}},()=>i.dataset(),s))}})}})}function Br(t){let r=X(),i=A({id:r.generateId(`description`)},t),[a,o]=(0,n.splitProps)(i,[`id`]);return(0,n.createEffect)(()=>(0,n.onCleanup)(r.registerDescriptionId(a.id))),(0,e.createComponent)(j,(0,e.mergeProps)({as:`p`,get id(){return a.id}},()=>r.dataset(),o))}function Vr(t){let r=X();return(0,e.createComponent)(n.Show,{get when(){return r.contentPresent()},get children(){return(0,e.createComponent)(e.Portal,t)}})}var Hr={dismiss:`Dismiss`};function Ur(t){let r=A({id:`popover-${(0,n.createUniqueId)()}`,modal:!1,translations:Hr},t),[i,a]=(0,n.splitProps)(r,[`translations`,`id`,`open`,`defaultOpen`,`onOpenChange`,`modal`,`preventScroll`,`forceMount`,`anchorRef`]),[o,s]=(0,n.createSignal)(),[c,l]=(0,n.createSignal)(),[u,d]=(0,n.createSignal)(),[f,p]=(0,n.createSignal)(),[m,h]=(0,n.createSignal)(),[g,_]=(0,n.createSignal)(),v=dr({open:()=>i.open,defaultOpen:()=>i.defaultOpen,onOpenChange:e=>i.onOpenChange?.(e)}),y=()=>i.anchorRef?.()??o()??c(),{present:b}=Fr({show:()=>i.forceMount||v.isOpen(),element:()=>u()??null}),S={translations:()=>i.translations??Hr,dataset:(0,n.createMemo)(()=>({"data-expanded":v.isOpen()?``:void 0,"data-closed":v.isOpen()?void 0:``})),isOpen:v.isOpen,isModal:()=>i.modal??!1,preventScroll:()=>i.preventScroll??S.isModal(),contentPresent:b,triggerRef:c,contentId:f,titleId:m,descriptionId:g,setDefaultAnchorRef:s,setTriggerRef:l,setContentRef:d,close:v.close,toggle:v.toggle,generateId:x(()=>i.id),registerContentId:br(p),registerTitleId:br(h),registerDescriptionId:br(_)};return(0,e.createComponent)(Ir.Provider,{value:S,get children(){return(0,e.createComponent)(jn,(0,e.mergeProps)({anchorRef:y,contentRef:u},a))}})}function Wr(t){let r=X(),i=A({id:r.generateId(`title`)},t),[a,o]=(0,n.splitProps)(i,[`id`]);return(0,n.createEffect)(()=>(0,n.onCleanup)(r.registerTitleId(a.id))),(0,e.createComponent)(j,(0,e.mergeProps)({as:`h2`,get id(){return a.id}},()=>r.dataset(),o))}function Gr(t){let r=X(),[i,a]=(0,n.splitProps)(t,[`ref`,`onClick`,`onPointerDown`]);return(0,e.createComponent)(vr,(0,e.mergeProps)({ref(e){var t=_(r.setTriggerRef,i.ref);typeof t==`function`&&t(e)},"aria-haspopup":`dialog`,get"aria-expanded"(){return r.isOpen()},get"aria-controls"(){return(0,e.memo)(()=>!!r.isOpen())()?r.contentId():void 0},onPointerDown:e=>{O(e,i.onPointerDown),e.preventDefault()},onClick:e=>{O(e,i.onClick),r.toggle()}},()=>r.dataset(),a))}var Kr=Object.assign(Ur,{Anchor:Lr,Arrow:Sn,CloseButton:Rr,Content:zr,Description:Br,Portal:Vr,Title:Wr,Trigger:Gr});function qr(t){let n=t.tip;return(0,e.createComponent)(Kr,{get open(){return t.open},get onOpenChange(){return t.onOpenChange},placement:`bottom-end`,gutter:6,overflowPadding:12,get children(){return[(0,e.createComponent)(n,{get value(){return t.hint},placement:`bottom`,get children(){return(0,e.createComponent)(Kr.Trigger,{get class(){return`ocb-head ${t.open?`ocb-head-on`:``}`},get"aria-label"(){return t.label},"aria-haspopup":`dialog`,get"aria-expanded"(){return t.open},get children(){return t.trigger}})}}),(0,e.createComponent)(Kr.Portal,{get children(){return(0,e.createComponent)(Kr.Content,{class:`ocb-pop`,role:`dialog`,get"aria-label"(){return t.label},get children(){return t.children}})}})]}})}var Jr=[[1,4],[6,10]],Yr=[1,4,6,10],Xr=e=>new Date(e),Zr=()=>Date.now();function Z(e=Date.now()){let t=Xr(e),n=t.getUTCDay();if(n===0||n===6)return!1;let r=t.getUTCHours()+t.getUTCMinutes()/60;return Jr.some(([e,t])=>r>=e&&r<t)}function Qr(e=Date.now()){let t=Z(e),n=Xr(e);n.setUTCHours(0,0,0,0);let r=[];for(let t=0;t<=10;t++)for(let i of Yr){let a=n.getTime()+t*864e5+i*36e5;a>e&&r.push(a)}r.sort((e,t)=>e-t);for(let e of r)if(Z(e)!==t)return{peak:!t,at:e};return{peak:!t,at:r[r.length-1]}}function Q(e,t,n=Date.now()){if(!Z(n))return!1;let r=e?.providerID??``;return r===`deepseek`||r===`opencode-go`&&t===`go`&&/^deepseek/.test(e?.modelID??``)}if(typeof process<`u`&&process.argv?.[2]===`--self-check`){let e=(e,t)=>{if(!e)throw Error(`self-check: `+t)},t=(e,t=0)=>Date.UTC(2026,9,27,e,t);e(Z(t(2)),`02:00 UTC on a weekday is peak`),e(!Z(t(0,30)),`00:30 UTC is off-peak`),e(!Z(t(4)),`04:00 is the first off-peak minute`),e(Z(t(6)),`06:00 is peak again`),e(!Z(t(10)),`10:00 ends it`),e(!Z((e=>Date.UTC(2026,9,31,e))(2)),`a weekend is never peak`);let n={providerID:`deepseek`,modelID:`deepseek-chat`},r={providerID:`opencode-go`,modelID:`deepseek-v4.1-flash`};e(Q(n,`ds`,t(2)),`native DeepSeek doubles at peak`),e(!Q(n,`ds`,t(4)),`and not off-peak`),e(Q(r,`go`,t(2)),`a Go DeepSeek doubles while Go pays`),e(!Q(r,`ds`,t(2)),`but not while another wallet pays`),e(!Q({providerID:`opencode-go`,modelID:`glm-5.3`},`go`,t(2)),`a Go model that is not DeepSeek never doubles`),e(!Q({providerID:`opencode`,modelID:`deepseek-v4.1-flash`},`zen`,t(2)),`Zen's DeepSeek price is flat`),e(!Q(void 0,`go`,t(2)),`no model, no doubling`);let i=Qr(t(2));e(!i.peak&&i.at===t(4),`the next change from 02:00 is off-peak at 04:00`);let a=Qr(Date.UTC(2026,9,30,23));e(a.peak&&a.at===Date.UTC(2026,10,2,1),`Friday night flips to peak on Monday at 01:00`),console.log(`self-check ok: `+Jr.length+` windows, Zen flat, the weekend never peak`)}var $r=(0,e.template)(`<span class="ocb-dim ocb-figure">reset `),ei=(0,e.template)(`<div class="ocb-line ocb-windows"><span class=ocb-dim></span><span>`),ti=(0,e.template)(`<span class="ocb-bad ocb-mark">`),ni=(0,e.template)(`<div class=ocb-line><span></span><span>`),ri=(0,e.template)(`<div class=ocb-dim>`),ii=(0,e.template)(`<div class=ocb>`),ai=(0,e.template)(`<div class=ocb-warn>stale `),oi=(0,e.template)(`<div class="ocb-dim ocb-empty">no provider connected`),si=(0,e.template)(`<div class="ocb-dim ocb-empty">opencode auth login`),ci=(0,e.template)(`<div class=ocb-line><span class=ocb-dim>workspace</span><span class="ocb-accent ocb-figure">`),li=(0,e.template)(`<div class=ocb-rule>`),ui=(0,e.template)(`<span class="ocb-bad ocb-peak">↗`),di=(0,e.template)(`<div class=ocb-line><span>GO</span><span role=progressbar aria-valuemin=0 aria-valuemax=100><span class=ocb-fill></span></span><span>`),fi=(0,e.template)(`<svg width=16 height=16 viewBox="0 0 16 16"fill=none aria-hidden=true><circle cx=8 cy=8 r=7 stroke=currentColor stroke-opacity=0.18 stroke-width=2></circle><circle cx=8 cy=8 r=7 stroke=currentColor stroke-width=2 transform="rotate(-90 8 8)">`),pi=(0,e.template)(`<svg viewBox="0 0 16 16"width=16 height=16 fill=none aria-hidden=true><rect x=2 y=4.5 width=12 height=8 rx=2 stroke=currentColor stroke-width=1.6></rect><path d="M2 7h12"stroke=currentColor stroke-width=1.6></path><circle cx=11 cy=9.6 r=1.1 fill=currentColor>`),mi=(0,e.template)(`<span>`),hi=(0,e.template)(`<span class=ocb-head-label>`),gi=(0,e.template)(`<span class="ocb-head-label ocb-bad"aria-hidden=true>↗`),_i=`↗`,vi=3e5,yi=5e3,bi=3e4,xi=2*vi,Si=15e3,Ci=`
2
2
  /* The block that opens from the header figure wears that figure's own type: one size, 13px, weight 440, the
3
3
  app's tight tracking. Hierarchy here is colour and weight, never a second size. */
4
4
  /* anywhere: an error carrying a URL or a token must not paint outside the box. This is our content; the
@@ -50,4 +50,4 @@ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{val
50
50
  tooltip is drawn anywhere. CSS cannot select only ours, and the panel is not modal, so the rest of the header
51
51
  stays hoverable — a trade, recorded in docs/oc-budget.md. */
52
52
  body:has(.ocb-head[aria-expanded="true"]) [data-component="tooltip-v2"] { display: none; }
53
- `,Ci={success:`ocb-ok`,warning:`ocb-warn`,danger:`ocb-bad`},$=e=>e?Ci[e]:``,wi=(e,t)=>new Promise((n,r)=>{let i=setTimeout(()=>r(Error(`rpc timeout`)),t);e.then(e=>{clearTimeout(i),n(e)},e=>{clearTimeout(i),r(e)})}),Ti=e=>typeof e==`number`&&Number.isFinite(e)?`$${e.toFixed(2)}`:`—`,Ei=e=>e===null?`—`:`${Math.round(e)}%`,Di=e=>Math.max(0,Math.min(100,e??0)),Oi=(e,t,n)=>{if(e!==null)return e<=n?`danger`:e<=t?`warning`:`success`},ki=e=>{if(e!==null)return e>=100?`danger`:e>=90?`warning`:`success`},Ai={},ji=t.Plugin.define({setup(r){let[l,d]=(0,n.createSignal)(void 0),[f,p]=(0,n.createSignal)(void 0),m,h,g,_;(0,n.createEffect)(()=>{let e=r.sessions.current(),t=e?.server.id;if(m&&clearInterval(m),h&&clearTimeout(h),m=void 0,h=void 0,_=void 0,p(void 0),!t){d(void 0);return}let n=(i=!1)=>{if(g===t)return;g=t;let a=i?{force:!0}:{};wi(e.server.client.rpc(u).snapshot(a),xi).then(e=>{r.sessions.current()?.server.id===t&&(d({server:t,value:e}),p(void 0))}).catch(e=>{r.sessions.current()?.server.id===t&&(p(e instanceof Error?e.message:String(e)),h&&clearTimeout(h),h=setTimeout(n,yi))}).finally(()=>{g===t&&(g=void 0)})};_=()=>n(!0),n(),m=setInterval(n,vi)}),(0,n.onCleanup)(()=>{m&&clearInterval(m),h&&clearTimeout(h)});let v=e=>{let t=l(),n=f(),r=e.screen.composer.model(),o=Zr(),u=Z(o);if(!t||t.server!==e.session.server.id)return{ready:!1,empty:!1,error:n,wallet:`none`,stale:!1,age:0,atPeak:u,marked:!1,...Ai};let d=t.value,p=i(r,d),m=d.go,h=s(m?.rolling),g=s(m?.weekly),_=s(m?.monthly),v=d.zen?.available??d.zen?.balance,y=Date.now()-d.at,b=p===`go`?m?`GO · ${Ei(_)}`:void 0:p===`zen`?d.zen?`ZEN · ${Ti(v)}`:void 0:p===`ds`?d.ds?`DS · ${Ti(d.ds.balance)}`:void 0:p===`or`&&d.or?`OR · ${Ti(d.or.balance)}`:void 0,x=[h,g,_].every(e=>e===null)?void 0:[h,g,_].some(e=>e!==null&&e>=100)?`danger`:[h,g,_].some(e=>e!==null&&e>=90)?`warning`:`success`,S=p===`go`?x:p===`zen`?Oi(v??null,5,0):p===`ds`?Oi(d.ds?.balance??null,2,0):Oi(d.or?.balance??null,5,0);return{ready:!0,empty:!a(d),error:n,label:b,walletTone:S,wallet:p,stale:y>bi,age:y,atPeak:u,marked:Q(r,p,o),go:m?{rolling:h,weekly:g,monthly:_,resets:{rolling:c(m.rolling?.resetsAt),weekly:c(m.weekly?.resetsAt),monthly:c(m.monthly?.resetsAt)},error:m.error}:void 0,workspace:d.zen?.org&&(d.zen.peers??0)>1?d.zen.org:void 0,ds:d.ds&&{figure:d.ds.balance,tone:Oi(d.ds.balance??null,2,0),note:d.ds.error},or:d.or&&{figure:d.or.balance,tone:Oi(d.or.balance??null,5,0),note:d.or.error},zen:d.zen&&{figure:v,tone:Oi(v??null,5,0),note:d.zen.error}}},y=t=>(()=>{var r=ei(),i=r.firstChild,a=i.nextSibling;return(0,e.insert)(i,()=>t.label),(0,e.insert)(a,()=>Ei(t.percent)),(0,e.insert)(r,(0,e.createComponent)(n.Show,{get when(){return t.reset},get children(){var n=$r();return n.firstChild,(0,e.insert)(n,()=>t.reset,null),n}}),null),(0,e.effect)(()=>(0,e.className)(a,$(ki(t.percent)))),r})(),b=t=>[(()=>{var r=ni(),i=r.firstChild,a=i.nextSibling;return(0,e.insert)(i,()=>t.name),(0,e.insert)(a,()=>Ti(t.line.figure)),(0,e.insert)(r,(0,e.createComponent)(n.Show,{get when(){return t.mark},get children(){var n=ti();return(0,e.insert)(n,()=>t.mark),n}}),null),(0,e.effect)(n=>{var r=`ocb-name ${$(t.line.tone)}`,o=`ocb-figure ${$(t.line.tone)}`;return r!==n.e&&(0,e.className)(i,n.e=r),o!==n.t&&(0,e.className)(a,n.t=o),n},{e:void 0,t:void 0}),r})(),(0,e.createComponent)(n.Show,{get when(){return t.line.note},get children(){var n=ri();return(0,e.insert)(n,()=>t.line.note),n}})],x=t=>{let r=(0,n.createMemo)(()=>v(t.input));return(0,n.onMount)(()=>{_?.()}),(()=>{var t=ii();return(0,e.insert)(t,(0,e.createComponent)(n.Show,{get when(){return(0,e.memo)(()=>!!r().ready)()?r():void 0},get fallback(){return(()=>{var t=ri();return(0,e.insert)(t,()=>r().error??`reading…`),t})()},children:t=>[(0,e.createComponent)(n.Show,{get when(){return t().stale},get children(){var n=ai();return n.firstChild,(0,e.insert)(n,()=>o(t().age),null),n}}),(0,e.createComponent)(n.Show,{get when(){return t().error},get children(){var n=ri();return(0,e.insert)(n,()=>t().error),n}}),(0,e.createComponent)(n.Show,{get when(){return t().empty},get children(){return[oi(),si()]}}),(0,e.createComponent)(n.Show,{get when(){return t().go},children:r=>[(()=>{var i=di(),a=i.firstChild,o=a.nextSibling,s=o.firstChild,c=o.nextSibling;return(0,e.insert)(c,()=>Ei(r().monthly)),(0,e.insert)(i,(0,e.createComponent)(n.Show,{get when(){return t().atPeak},get children(){return ui()}}),null),(0,e.effect)(t=>{var n=`ocb-name ${$(ki(r().monthly))}`,i=`ocb-bar ${$(ki(r().monthly))}`,l=Di(r().monthly),u=`${Di(r().monthly)}%`,d=`ocb-figure ${$(ki(r().monthly))}`;return n!==t.e&&(0,e.className)(a,t.e=n),i!==t.t&&(0,e.className)(o,t.t=i),l!==t.a&&(0,e.setAttribute)(o,`aria-valuenow`,t.a=l),u!==t.o&&(0,e.setStyleProperty)(s,`width`,t.o=u),d!==t.i&&(0,e.className)(c,t.i=d),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),i})(),(0,e.createComponent)(n.Show,{get when(){return!r().error},get fallback(){return(()=>{var t=ri();return(0,e.insert)(t,()=>r().error),t})()},get children(){return[(0,e.createComponent)(y,{label:`5h`,get percent(){return r().rolling},get reset(){return r().resets.rolling}}),(0,e.createComponent)(y,{label:`wk`,get percent(){return r().weekly},get reset(){return r().resets.weekly}}),(0,e.createComponent)(y,{label:`mo`,get percent(){return r().monthly},get reset(){return r().resets.monthly}})]}})]}),(0,e.createComponent)(n.Show,{get when(){return t().workspace},get children(){var n=ci(),r=n.firstChild.nextSibling;return(0,e.insert)(r,()=>t().workspace),n}}),li(),(0,e.createComponent)(n.Show,{get when(){return t().ds},children:n=>(0,e.createComponent)(b,{name:`DS`,get line(){return n()},get mark(){return t().atPeak?_i:``}})}),(0,e.createComponent)(n.Show,{get when(){return t().or},children:t=>(0,e.createComponent)(b,{name:`OR`,get line(){return t()}})}),(0,e.createComponent)(n.Show,{get when(){return t().zen},children:t=>(0,e.createComponent)(b,{name:`ZEN`,get line(){return t()}})})]})),t})()},S=2*Math.PI*7,C=t=>(()=>{var n=fi(),r=n.firstChild.nextSibling;return(0,e.setAttribute)(r,`stroke-dasharray`,S),(0,e.effect)(()=>(0,e.setAttribute)(r,`stroke-dashoffset`,S*(1-Di(t.percent)/100))),n})(),w=()=>pi(),T=r.ui.Tooltip,E=i=>{let a=()=>v(i.input),[s,c]=(0,n.createSignal)(!1),l=e=>{e&&_?.(),c(e)},u=()=>{let e=a();if(e.ready&&e.label){let t=e.wallet===`go`&&e.go?`ring`:`card`,n=e.stale?`warning`:e.walletTone;return{f:e,text:e.label,tone:n,mark:t}}if(e.error)return{f:e,text:`budget`,tone:`danger`,mark:`error`};if(e.ready&&e.empty)return{f:e,text:`budget`,tone:void 0,mark:`card`}},d=e=>e.error??(e.empty?`Budget · no provider connected`:e.stale?`Budget · last read ${o(e.age)} ago`:`Budget — what pays, and every wallet`);return(0,t.createKeyed)(()=>u()?!0:void 0,()=>{},{otherwise:()=>c(!1)}),(0,e.createComponent)(n.Show,{get when(){return u()},children:t=>(0,e.createComponent)(qr,{get label(){return(0,e.memo)(()=>!!t().f.stale)()?`~${t().text}`:t().text},get hint(){return d(t().f)},tip:T,get open(){return s()},onOpenChange:l,get trigger(){return[(()=>{var i=mi();return(0,e.insert)(i,(0,e.createComponent)(n.Show,{get when(){return t().mark===`ring`},get fallback(){return(0,e.memo)(()=>t().mark===`error`)()?(0,e.createComponent)(r.ui.Icon,{name:`circle-exclamation`,size:`small`}):(0,e.createComponent)(w,{})},get children(){return(0,e.createComponent)(n.Show,{get when(){return t().f.go},children:t=>(0,e.createComponent)(C,{get percent(){return t().monthly}})})}})),(0,e.effect)(()=>(0,e.className)(i,`ocb-mark ${$(t().tone)}`)),i})(),(0,e.createComponent)(n.Show,{get when(){return!i.input.compact},get children(){var n=hi();return(0,e.insert)(n,(()=>{var n=(0,e.memo)(()=>!!t().f.stale);return()=>n()?`~${t().text}`:t().text})()),n}}),(0,e.createComponent)(n.Show,{get when(){return t().f.marked},get children(){return gi()}})]},get children(){return(0,e.createComponent)(x,{get input(){return i.input}})}})})};r.add(t.Style,Si),r.add(t.Slot,{at:`session.header`,order:11,render:t=>(0,e.createComponent)(E,{input:t})})}});exports.default=ji;
53
+ `,wi={success:`ocb-ok`,warning:`ocb-warn`,danger:`ocb-bad`},$=e=>e?wi[e]:``,Ti=(e,t)=>new Promise((n,r)=>{let i=setTimeout(()=>r(Error(`rpc timeout`)),t);e.then(e=>{clearTimeout(i),n(e)},e=>{clearTimeout(i),r(e)})}),Ei=e=>typeof e==`number`&&Number.isFinite(e)?`$${e.toFixed(2)}`:`—`,Di=e=>e===null?`—`:`${Math.round(e)}%`,Oi=e=>Math.max(0,Math.min(100,e??0)),ki=(e,t,n)=>{if(e!==null)return e<=n?`danger`:e<=t?`warning`:`success`},Ai=e=>{if(e!==null)return e>=100?`danger`:e>=90?`warning`:`success`},ji={},Mi=t.Plugin.define({setup(r){let[l,d]=(0,n.createSignal)(void 0),[f,p]=(0,n.createSignal)(void 0),m,h,g,_;(0,n.createEffect)(()=>{let e=r.sessions.current(),t=e?.server.id;if(m&&clearInterval(m),h&&clearTimeout(h),m=void 0,h=void 0,_=void 0,p(void 0),!t){d(void 0);return}let n=(i=!1)=>{if(g===t)return;g=t;let a=i?{force:!0}:{};Ti(e.server.client.rpc(u).snapshot(a),Si).then(e=>{r.sessions.current()?.server.id===t&&(d({server:t,value:e}),p(void 0))}).catch(e=>{r.sessions.current()?.server.id===t&&(p(e instanceof Error?e.message:String(e)),h&&clearTimeout(h),h=setTimeout(n,bi))}).finally(()=>{g===t&&(g=void 0)})};_=()=>n(!0),n(),m=setInterval(n,vi)}),(0,n.onCleanup)(()=>{m&&clearInterval(m),h&&clearTimeout(h)});let v=e=>{let t=l(),n=f(),r=e.screen.composer.model(),o=Zr(),u=Z(o);if(!t||t.server!==e.session.server.id)return{ready:!1,empty:!1,error:n,wallet:`none`,stale:!1,age:0,atPeak:u,marked:!1,...ji};let d=t.value,p=i(r,d),m=d.go,h=s(m?.rolling),g=s(m?.weekly),_=s(m?.monthly),v=d.zen?.available??d.zen?.balance,y=Date.now()-d.at,b=p===`go`?m?`GO · ${Di(_)}`:void 0:p===`zen`?d.zen?`ZEN · ${Ei(v)}`:void 0:p===`ds`?d.ds?`DS · ${Ei(d.ds.balance)}`:void 0:p===`or`&&d.or?`OR · ${Ei(d.or.balance)}`:void 0,x=[h,g,_].every(e=>e===null)?void 0:[h,g,_].some(e=>e!==null&&e>=100)?`danger`:[h,g,_].some(e=>e!==null&&e>=90)?`warning`:`success`,S=p===`go`?x:p===`zen`?ki(v??null,5,0):p===`ds`?ki(d.ds?.balance??null,2,0):ki(d.or?.balance??null,5,0);return{ready:!0,empty:!a(d),error:n,label:b,walletTone:S,wallet:p,stale:y>xi,age:y,atPeak:u,marked:Q(r,p,o),go:m?{rolling:h,weekly:g,monthly:_,resets:{rolling:c(m.rolling?.resetsAt),weekly:c(m.weekly?.resetsAt),monthly:c(m.monthly?.resetsAt)},error:m.error}:void 0,workspace:d.zen?.org&&(d.zen.peers??0)>1?d.zen.org:void 0,ds:d.ds&&{figure:d.ds.balance,tone:ki(d.ds.balance??null,2,0),note:d.ds.error},or:d.or&&{figure:d.or.balance,tone:ki(d.or.balance??null,5,0),note:d.or.error},zen:d.zen&&{figure:v,tone:ki(v??null,5,0),note:d.zen.error}}},y=t=>(()=>{var r=ei(),i=r.firstChild,a=i.nextSibling;return(0,e.insert)(i,()=>t.label),(0,e.insert)(a,()=>Di(t.percent)),(0,e.insert)(r,(0,e.createComponent)(n.Show,{get when(){return t.reset},get children(){var n=$r();return n.firstChild,(0,e.insert)(n,()=>t.reset,null),n}}),null),(0,e.effect)(()=>(0,e.className)(a,$(Ai(t.percent)))),r})(),b=t=>[(()=>{var r=ni(),i=r.firstChild,a=i.nextSibling;return(0,e.insert)(i,()=>t.name),(0,e.insert)(a,()=>Ei(t.line.figure)),(0,e.insert)(r,(0,e.createComponent)(n.Show,{get when(){return t.mark},get children(){var n=ti();return(0,e.insert)(n,()=>t.mark),n}}),null),(0,e.effect)(n=>{var r=`ocb-name ${$(t.line.tone)}`,o=`ocb-figure ${$(t.line.tone)}`;return r!==n.e&&(0,e.className)(i,n.e=r),o!==n.t&&(0,e.className)(a,n.t=o),n},{e:void 0,t:void 0}),r})(),(0,e.createComponent)(n.Show,{get when(){return t.line.note},get children(){var n=ri();return(0,e.insert)(n,()=>t.line.note),n}})],x=t=>{let r=(0,n.createMemo)(()=>v(t.input));return(0,n.onMount)(()=>{_?.()}),(()=>{var t=ii();return(0,e.insert)(t,(0,e.createComponent)(n.Show,{get when(){return(0,e.memo)(()=>!!r().ready)()?r():void 0},get fallback(){return(()=>{var t=ri();return(0,e.insert)(t,()=>r().error??`reading…`),t})()},children:t=>[(0,e.createComponent)(n.Show,{get when(){return t().stale},get children(){var n=ai();return n.firstChild,(0,e.insert)(n,()=>o(t().age),null),n}}),(0,e.createComponent)(n.Show,{get when(){return t().error},get children(){var n=ri();return(0,e.insert)(n,()=>t().error),n}}),(0,e.createComponent)(n.Show,{get when(){return t().empty},get children(){return[oi(),si()]}}),(0,e.createComponent)(n.Show,{get when(){return t().go},children:r=>[(()=>{var i=di(),a=i.firstChild,o=a.nextSibling,s=o.firstChild,c=o.nextSibling;return(0,e.insert)(c,()=>Di(r().monthly)),(0,e.insert)(i,(0,e.createComponent)(n.Show,{get when(){return t().atPeak},get children(){return ui()}}),null),(0,e.effect)(t=>{var n=`ocb-name ${$(Ai(r().monthly))}`,i=`ocb-bar ${$(Ai(r().monthly))}`,l=Oi(r().monthly),u=`${Oi(r().monthly)}%`,d=`ocb-figure ${$(Ai(r().monthly))}`;return n!==t.e&&(0,e.className)(a,t.e=n),i!==t.t&&(0,e.className)(o,t.t=i),l!==t.a&&(0,e.setAttribute)(o,`aria-valuenow`,t.a=l),u!==t.o&&(0,e.setStyleProperty)(s,`width`,t.o=u),d!==t.i&&(0,e.className)(c,t.i=d),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),i})(),(0,e.createComponent)(n.Show,{get when(){return!r().error},get fallback(){return(()=>{var t=ri();return(0,e.insert)(t,()=>r().error),t})()},get children(){return[(0,e.createComponent)(y,{label:`5h`,get percent(){return r().rolling},get reset(){return r().resets.rolling}}),(0,e.createComponent)(y,{label:`wk`,get percent(){return r().weekly},get reset(){return r().resets.weekly}}),(0,e.createComponent)(y,{label:`mo`,get percent(){return r().monthly},get reset(){return r().resets.monthly}})]}})]}),(0,e.createComponent)(n.Show,{get when(){return t().workspace},get children(){var n=ci(),r=n.firstChild.nextSibling;return(0,e.insert)(r,()=>t().workspace),n}}),li(),(0,e.createComponent)(n.Show,{get when(){return t().ds},children:n=>(0,e.createComponent)(b,{name:`DS`,get line(){return n()},get mark(){return t().atPeak?_i:``}})}),(0,e.createComponent)(n.Show,{get when(){return t().or},children:t=>(0,e.createComponent)(b,{name:`OR`,get line(){return t()}})}),(0,e.createComponent)(n.Show,{get when(){return t().zen},children:t=>(0,e.createComponent)(b,{name:`ZEN`,get line(){return t()}})})]})),t})()},S=2*Math.PI*7,C=t=>(()=>{var n=fi(),r=n.firstChild.nextSibling;return(0,e.setAttribute)(r,`stroke-dasharray`,S),(0,e.effect)(()=>(0,e.setAttribute)(r,`stroke-dashoffset`,S*(1-Oi(t.percent)/100))),n})(),w=()=>pi(),T=r.ui.Tooltip,E=i=>{let a=()=>v(i.input),[s,c]=(0,n.createSignal)(!1),l=e=>{e&&_?.(),c(e)};(0,t.createKeyed)(()=>i.input.screen.composer.model()?.providerID??`none`,()=>{a().age>yi&&_?.()});let u=()=>{let e=a();if(e.ready&&e.label){let t=e.wallet===`go`&&e.go?`ring`:`card`,n=e.stale?`warning`:e.walletTone;return{f:e,text:e.label,tone:n,mark:t}}if(e.error)return{f:e,text:`budget`,tone:`danger`,mark:`error`};if(e.ready&&!e.label)return{f:e,text:`budget`,tone:void 0,mark:`card`}},d=e=>e.error??(e.empty?`Budget · no provider connected`:e.label?e.stale?`Budget · last read ${o(e.age)} ago`:`Budget — what pays, and every wallet`:`Budget · no wallet pays this model`);return(0,t.createKeyed)(()=>u()?!0:void 0,()=>{},{otherwise:()=>c(!1)}),(0,e.createComponent)(n.Show,{get when(){return u()},children:t=>(0,e.createComponent)(qr,{get label(){return(0,e.memo)(()=>!!t().f.stale)()?`~${t().text}`:t().text},get hint(){return d(t().f)},tip:T,get open(){return s()},onOpenChange:l,get trigger(){return[(()=>{var i=mi();return(0,e.insert)(i,(0,e.createComponent)(n.Show,{get when(){return t().mark===`ring`},get fallback(){return(0,e.memo)(()=>t().mark===`error`)()?(0,e.createComponent)(r.ui.Icon,{name:`circle-exclamation`,size:`small`}):(0,e.createComponent)(w,{})},get children(){return(0,e.createComponent)(n.Show,{get when(){return t().f.go},children:t=>(0,e.createComponent)(C,{get percent(){return t().monthly}})})}})),(0,e.effect)(()=>(0,e.className)(i,`ocb-mark ${$(t().tone)}`)),i})(),(0,e.createComponent)(n.Show,{get when(){return!i.input.compact},get children(){var n=hi();return(0,e.insert)(n,(()=>{var n=(0,e.memo)(()=>!!t().f.stale);return()=>n()?`~${t().text}`:t().text})()),n}}),(0,e.createComponent)(n.Show,{get when(){return t().f.marked},get children(){return gi()}})]},get children(){return(0,e.createComponent)(x,{get input(){return i.input}})}})})};r.add(t.Style,Ci),r.add(t.Slot,{at:`session.header`,order:11,render:t=>(0,e.createComponent)(E,{input:t})})}});exports.default=Mi;
package/index.ts CHANGED
@@ -24,6 +24,10 @@
24
24
  import { Budget } from "./rpc.ts"
25
25
  import type { BudgetSnapshot, UsageWindow } from "./rpc.ts"
26
26
 
27
+ /** What a Go read says when the console answers without meters: the workspace has no plan, and a shape
28
+ * nobody recognises is the only way that endpoint reports it. The words are the user's, not the body's. */
29
+ const NO_GO_PLAN = "no Go plan on this workspace"
30
+
27
31
  /** How long a collected snapshot is reused; the TUI also polls on this cadence. */
28
32
  const TTL_MS = 5 * 60 * 1000
29
33
  const TIMEOUT_MS = 10_000
@@ -158,14 +162,14 @@ async function collectGo(ctx: any): Promise<BudgetSnapshot["go"]> {
158
162
  try {
159
163
  const body = await getJson(GO_STATUS_URL, { Authorization: `Bearer ${console.key}` })
160
164
  const meters = body?.access?.meters
161
- if (!meters) throw new Error("unexpected go status shape")
165
+ if (!meters) throw new Error(NO_GO_PLAN)
162
166
  const reading = {
163
167
  rolling: goMeter(meters.fiveHour),
164
168
  weekly: goMeter(meters.week),
165
169
  monthly: goMeter(meters.month),
166
170
  }
167
171
  if (!reading.rolling && !reading.weekly && !reading.monthly) {
168
- throw new Error("unexpected go status shape")
172
+ throw new Error(NO_GO_PLAN)
169
173
  }
170
174
  return reading
171
175
  } catch (error) {
@@ -191,14 +195,14 @@ async function collectGo(ctx: any): Promise<BudgetSnapshot["go"]> {
191
195
  try {
192
196
  const body = await getJson(GO_USAGE_URL, { Authorization: `Bearer ${credential.key}` })
193
197
  const usage = body?.usage
194
- if (!usage) return { error: "unexpected usage response shape" }
198
+ if (!usage) return { error: NO_GO_PLAN }
195
199
  const reading = {
196
200
  rolling: goWindow(usage.rolling),
197
201
  weekly: goWindow(usage.weekly),
198
202
  monthly: goWindow(usage.monthly),
199
203
  }
200
204
  if (!reading.rolling && !reading.weekly && !reading.monthly) {
201
- return { error: "unexpected usage response shape" }
205
+ return { error: NO_GO_PLAN }
202
206
  }
203
207
  return reading
204
208
  } catch (error) {
@@ -214,7 +218,7 @@ async function collectDeepSeek(ctx: any): Promise<BudgetSnapshot["ds"]> {
214
218
  const body = await getJson(DS_BALANCE_URL, { Authorization: `Bearer ${credential.key}` })
215
219
  const info = body?.balance_infos?.[0]
216
220
  const balance = info?.total_balance === undefined ? Number.NaN : Number(info.total_balance)
217
- if (!Number.isFinite(balance)) return { error: "unexpected balance response shape" }
221
+ if (!Number.isFinite(balance)) return { error: "could not read the balance" }
218
222
  return { balance, currency: info?.currency ?? "USD" }
219
223
  } catch (error) {
220
224
  return { error: message(error) }
@@ -231,7 +235,7 @@ async function collectOpenRouter(ctx: any): Promise<BudgetSnapshot["or"]> {
231
235
  const totalCredits = body?.data?.total_credits
232
236
  const totalUsage = body?.data?.total_usage
233
237
  if (typeof totalCredits !== "number" || typeof totalUsage !== "number") {
234
- return { error: "unexpected credits response shape" }
238
+ return { error: "could not read the credits" }
235
239
  }
236
240
  const result: NonNullable<BudgetSnapshot["or"]> = {
237
241
  totalCredits,
@@ -270,7 +274,7 @@ async function collectZen(ctx: any): Promise<BudgetSnapshot["zen"]> {
270
274
  // the only way to switch which wallet the balance describes.
271
275
  const current = await getJson(ZEN_CURRENT_URL, headers)
272
276
  const org = current?.org
273
- if (!org?.id) return { error: "Console session reports no current workspace" }
277
+ if (!org?.id) return { error: "the console session has no workspace" }
274
278
  const body = await getJson(ZEN_STATUS_URL, { ...headers, "x-org-id": org.id })
275
279
  const microOf = (value: unknown) => {
276
280
  const n = typeof value === "string" ? Number(value) : value
@@ -283,7 +287,7 @@ async function collectZen(ctx: any): Promise<BudgetSnapshot["zen"]> {
283
287
  // account has one. Clamping the ledger in our code would lose the debt; reading this field
284
288
  // keeps both, and stays right the day a limit is set.
285
289
  const balance = microOf(body?.balanceMicroCents)
286
- if (balance === undefined) return { error: "unexpected billing status shape", org: org.name }
290
+ if (balance === undefined) return { error: "could not read the Zen balance", org: org.name }
287
291
  const available = microOf(body?.availableMicroCents) ?? Math.max(0, balance)
288
292
  return {
289
293
  balance: microCentsToDollars(balance),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rizal72/oc-budget",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "type": "module",
5
5
  "description": "How much credit is left on the account behind the model you are using: the Go subscription's windows, the Zen balance, and the pay-per-use wallets, in the sidebar, the footer and the header",
6
6
  "repository": {