@devframes/plugin-inspect--assets 0.9.9 → 0.9.11

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.
@@ -4,5 +4,5 @@ var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],en
4
4
  `))),e[Il]=Nl(i);let a=r||i.props&&i.props.type===`number`;el(e,t?`change`:`input`,t=>{t.target.composing||e[Il](Rl(e.value,n,a))}),(n||a)&&el(e,`change`,()=>{e.value=Rl(e.value,n,a)}),t||(el(e,`compositionstart`,Pl),el(e,`compositionend`,Fl),el(e,`change`,Fl))},mounted(e,{value:t,modifiers:{trim:n,number:r}}){let i=t??``,a=e[Ll];delete e[Ll],a!==void 0&&(e.type===`text`||e.type===`textarea`)&&e.value!==a?e[Il](Rl(e.value,n,r)):e.value=i},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[Il]=Nl(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?ue(e.value):e.value,c=t??``;if(s===c)return;let l=e.getRootNode();(l instanceof Document||l instanceof ShadowRoot)&&l.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===c)||(e.value=c)}},Bl={deep:!0,created(e,t,n){e[Il]=Nl(n),el(e,`change`,()=>{let t=e._modelValue,n=Kl(e),r=e.checked,i=e[Il];if(p(t)){let e=Ee(t,n),a=e!==-1;if(r&&!a)i(t.concat(n));else if(!r&&a){let n=[...t];n.splice(e,1),i(n)}}else if(h(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(ql(e,r))})},mounted:Vl,beforeUpdate(e,t,n){e[Il]=Nl(n),Vl(e,t,n)}};function Vl(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(p(t))i=Ee(t,r.props.value)>-1;else if(h(t))i=t.has(r.props.value);else{if(t===n)return;i=Te(t,ql(e,!0))}e.checked!==i&&(e.checked=i)}var Hl={created(e,{value:t},n){e.checked=Te(t,n.props.value),e[Il]=Nl(n),el(e,`change`,()=>{e[Il](Kl(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e[Il]=Nl(r),t!==n&&(e.checked=Te(t,r.props.value))}},Ul={deep:!0,created(e,{value:t,modifiers:{number:n}},r){e._modelValue=t,el(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?ue(Kl(e)):Kl(e)),r=e.multiple,i=r?h(e._modelValue)?new Set(t):t:t[0],a=e._pendingValue=[r,r?p(i)?t.slice():t:i];try{e[Il](i)}finally{Yn(()=>{e._pendingValue===a&&(e._pendingValue=void 0)})}}),e[Il]=Nl(r)},mounted(e,{value:t}){Gl(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[Il]=Nl(n)},updated(e,{value:t}){let n=e._pendingValue;e._pendingValue=void 0,(!n||n[0]!==e.multiple||!Wl(t,n[1],n[0]))&&Gl(e,t)}};function Wl(e,t,n){if(!n||p(e))return Te(e,t);if(h(e)){if(e.size!==t.length)return!1;for(let n of t)if(!e.has(n))return!1;return!0}return!1}function Gl(e,t){let n=e.multiple,r=p(t);if(!(n&&!r&&!h(t))){for(let i=0,a=e.options.length;i<a;i++){let a=e.options[i],o=Kl(a);if(n){if(r){let e=typeof o;a.selected=e===`string`||e===`number`?t.some(e=>String(e)===String(o)):Ee(t,o)>-1}else a.selected=t.has(o)}else if(Te(Kl(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Kl(e){return`_value`in e?e._value:e.value}function ql(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var Jl={created(e,t,n){Xl(e,t,n,null,`created`)},mounted(e,t,n){Xl(e,t,n,null,`mounted`)},beforeUpdate(e,t,n,r){Xl(e,t,n,r,`beforeUpdate`)},updated(e,t,n,r){Xl(e,t,n,r,`updated`)}};function Yl(e,t){switch(e){case`SELECT`:return Ul;case`TEXTAREA`:return zl;default:switch(t){case`checkbox`:return Bl;case`radio`:return Hl;default:return zl}}}function Xl(e,t,n,r,i){let a=Yl(e.tagName,n.props&&n.props.type)[i];a&&a(e,t,n,r)}function Zl(){zl.getSSRProps=({value:e})=>({value:e}),Hl.getSSRProps=({value:e},t)=>{if(t.props&&Te(t.props.value,e))return{checked:!0}},Bl.getSSRProps=({value:e},t)=>{if(p(e)){if(t.props&&Ee(e,t.props.value)>-1)return{checked:!0}}else if(h(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},Jl.getSSRProps=(e,t)=>{if(typeof t.type!=`string`)return;let n=Yl(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}var Ql=[`ctrl`,`shift`,`alt`,`meta`],$l={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>Ql.some(n=>e[`${n}Key`]&&!t.includes(n))},eu=(e,t)=>{if(!e)return e;let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e<t.length;e++){let r=$l[t[e]];if(r&&r(n,t))return}return e(n,...r)}))},tu={esc:`escape`,space:` `,up:`arrow-up`,left:`arrow-left`,right:`arrow-right`,down:`arrow-down`,delete:`backspace`},nu=(e,t)=>{let n=e._withKeys||={},r=t.join(`.`);return n[r]||(n[r]=(n=>{if(!(`key`in n))return;let r=ae(n.key);if(t.some(e=>e===r||tu[e]===r))return e(n)}))},ru=l({patchProp:fl},fc),iu,au=!1;function ou(){return iu||=No(ru)}function su(){return iu=au?iu:Po(ru),au=!0,iu}var cu=((...e)=>{ou().render(...e)}),lu=((...e)=>{su().hydrate(...e)}),uu=((...e)=>{let t=ou().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=pu(e);if(!r)return;let i=t._component;!v(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,fu(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t}),du=((...e)=>{let t=su().createApp(...e),{mount:n}=t;return t.mount=e=>{let t=pu(e);if(t)return n(t,!0,fu(t))},t});function fu(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function pu(e){return y(e)?document.querySelector(e):e}var mu=!1,hu=()=>{mu||(mu=!0,Zl(),Rc())},gu=t({BaseTransition:()=>Yr,BaseTransitionPropsValidators:()=>Gr,Comment:()=>U,DeprecationTypes:()=>null,EffectScope:()=>je,ErrorCodes:()=>In,ErrorTypeStrings:()=>tc,Fragment:()=>H,KeepAlive:()=>Li,ReactiveEffect:()=>Ie,Static:()=>is,Suspense:()=>Ko,Teleport:()=>Rr,Text:()=>rs,TrackOpTypes:()=>Cn,Transition:()=>vc,TransitionGroup:()=>Dl,TriggerOpTypes:()=>wn,VueElement:()=>yl,assertNumber:()=>Fn,callWithAsyncErrorHandling:()=>zn,callWithErrorHandling:()=>Rn,camelize:()=>D,capitalize:()=>oe,cloneVNode:()=>vs,compatUtils:()=>null,compile:()=>_u,computed:()=>Z,createApp:()=>uu,createBlock:()=>K,createCommentVNode:()=>X,createElementBlock:()=>G,createElementVNode:()=>q,createHydrationRenderer:()=>Po,createPropsRestProxy:()=>Na,createRenderer:()=>No,createSSRApp:()=>du,createSlots:()=>fa,createStaticVNode:()=>ys,createTextVNode:()=>Y,createVNode:()=>J,customRef:()=>hn,defineAsyncComponent:()=>Pi,defineComponent:()=>z,defineCustomElement:()=>gl,defineEmits:()=>xa,defineExpose:()=>Sa,defineModel:()=>Ta,defineOptions:()=>Ca,defineProps:()=>ba,defineSSRCustomElement:()=>_l,defineSlots:()=>wa,devtools:()=>nc,effect:()=>Ye,effectScope:()=>Me,getCurrentInstance:()=>ks,getCurrentScope:()=>Ne,getCurrentWatcher:()=>On,getTransitionRawChildren:()=>ti,guardReactiveProps:()=>_s,h:()=>Ys,handleError:()=>Bn,hasInjectionContext:()=>_r,hydrate:()=>lu,hydrateOnIdle:()=>Di,hydrateOnInteraction:()=>ji,hydrateOnMediaQuery:()=>Ai,hydrateOnVisible:()=>ki,initCustomFormatter:()=>Xs,initDirectivesForSSR:()=>hu,inject:()=>gr,isMemoSame:()=>Qs,isProxy:()=>nn,isReactive:()=>$t,isReadonly:()=>en,isRef:()=>F,isRuntimeOnly:()=>Hs,isShallow:()=>tn,isVNode:()=>ds,markRaw:()=>rn,mergeDefaults:()=>ja,mergeModels:()=>Ma,mergeProps:()=>Cs,nextTick:()=>Yn,nodeOps:()=>fc,normalizeClass:()=>A,normalizeProps:()=>ye,normalizeStyle:()=>k,onActivated:()=>zi,onBeforeMount:()=>qi,onBeforeUnmount:()=>Zi,onBeforeUpdate:()=>Yi,onDeactivated:()=>Bi,onErrorCaptured:()=>na,onMounted:()=>Ji,onRenderTracked:()=>ta,onRenderTriggered:()=>ea,onScopeDispose:()=>Pe,onServerPrefetch:()=>$i,onUnmounted:()=>Qi,onUpdated:()=>Xi,onWatcherCleanup:()=>kn,openBlock:()=>W,patchProp:()=>fl,popScopeId:()=>dr,provide:()=>hr,proxyRefs:()=>pn,pushScopeId:()=>ur,queuePostFlushCb:()=>$n,reactive:()=>Jt,readonly:()=>Xt,ref:()=>I,registerRuntimeCompiler:()=>Vs,render:()=>cu,renderList:()=>da,renderSlot:()=>B,resolveComponent:()=>aa,resolveDirective:()=>ca,resolveDynamicComponent:()=>sa,resolveFilter:()=>null,resolveTransitionHooks:()=>Zr,setBlockTracking:()=>ls,setDevtoolsHook:()=>rc,setTransitionHooks:()=>ei,shallowReactive:()=>Yt,shallowReadonly:()=>Zt,shallowRef:()=>sn,ssrContextKey:()=>vr,ssrUtils:()=>ic,stop:()=>Xe,toDisplayString:()=>j,toHandlerKey:()=>se,toHandlers:()=>ma,toRaw:()=>P,toRef:()=>yn,toRefs:()=>gn,toValue:()=>dn,transformVNodeArgs:()=>ps,triggerRef:()=>un,unref:()=>L,useAttrs:()=>Oa,useCssModule:()=>Sl,useCssVars:()=>Bc,useHost:()=>bl,useId:()=>ni,useModel:()=>eo,useSSRContext:()=>yr,useShadowRoot:()=>xl,useSlots:()=>Da,useTemplateRef:()=>ii,useTransitionState:()=>Ur,vModelCheckbox:()=>Bl,vModelDynamic:()=>Jl,vModelRadio:()=>Hl,vModelSelect:()=>Ul,vModelText:()=>zl,vShow:()=>Ic,version:()=>$s,warn:()=>ec,watch:()=>Cr,watchEffect:()=>br,watchPostEffect:()=>xr,watchSyncEffect:()=>Sr,withAsyncContext:()=>Pa,withCtx:()=>R,withDefaults:()=>Ea,withDirectives:()=>pr,withKeys:()=>nu,withMemo:()=>Zs,withModifiers:()=>eu,withScopeId:()=>fr}),_u=()=>{},vu=[`top`,`right`,`bottom`,`left`],yu=[`start`,`end`],bu=vu.reduce((e,t)=>e.concat(t,t+`-`+yu[0],t+`-`+yu[1]),[]),xu=Math.min,Su=Math.max,Cu={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function wu(e,t,n){return Su(e,xu(t,n))}function Tu(e,t){return typeof e==`function`?e(t):e}function Eu(e){return e.split(`-`)[0]}function Du(e){return e.split(`-`)[1]}function Ou(e){return e===`x`?`y`:`x`}function ku(e){return e===`y`?`height`:`width`}function Au(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function ju(e){return Ou(Au(e))}function Mu(e,t,n){n===void 0&&(n=!1);let r=Du(e),i=ju(e),a=ku(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Vu(o)),[o,Vu(o)]}function Nu(e){let t=Vu(e);return[Pu(e),t,Pu(t)]}function Pu(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Fu=[`left`,`right`],Iu=[`right`,`left`],Lu=[`top`,`bottom`],Ru=[`bottom`,`top`];function zu(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Iu:Fu:t?Fu:Iu;case`left`:case`right`:return t?Lu:Ru;default:return[]}}function Bu(e,t,n,r){let i=Du(e),a=zu(Eu(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Pu)))),a}function Vu(e){let t=Eu(e);return Cu[t]+e.slice(t.length)}function Hu(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function Uu(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Hu(e)}function Wu(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 Gu(e,t,n){let{reference:r,floating:i}=e,a=Au(t),o=ju(t),s=ku(o),c=Eu(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=Du(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function Ku(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}=Tu(t,e),p=Uu(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=Wu(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=Wu(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 qu=50,Ju=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:Ku},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=Gu(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<qu&&(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}=Gu(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},Yu=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}=Tu(e,t)||{};if(l==null)return{};let d=Uu(u),f={x:n,y:r},p=ju(i),m=ku(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,ee=C/2-h[m]/2-1,T=xu(d[_],ee),E=xu(d[v],ee),te=C-h[m]-E,ne=C/2-h[m]/2+w,re=wu(T,ne,te),D=!c.arrow&&Du(i)!=null&&ne!==re&&a.reference[m]/2-(ne<T?T:E)-h[m]/2<0,ie=D?ne<T?ne-T:ne-te:0;return{[p]:f[p]+ie,data:{[p]:re,centerOffset:ne-re-ie,...D&&{alignmentOffset:ie}},reset:D}}});function Xu(e,t,n){return(e?[...n.filter(t=>Du(t)===e),...n.filter(t=>Du(t)!==e)]:n.filter(e=>Eu(e)===e)).filter(n=>!e||Du(n)===e||(t?Pu(n)!==n:!1))}var Zu=function(e){return e===void 0&&(e={}),{name:`autoPlacement`,options:e,async fn(t){let{rects:n,middlewareData:r,placement:i,platform:a,elements:o}=t,{crossAxis:s=!1,alignment:c,allowedPlacements:l=bu,autoAlignment:u=!0,...d}=Tu(e,t),f=c!==void 0||l===bu?Xu(c||null,u,l):l,p=r.autoPlacement?.index||0,m=f[p];if(m==null)return{};if(i!==m)return{reset:{placement:f[0]}};let h=await a.detectOverflow(t,d),g=Mu(m,n,await(a.isRTL==null?void 0:a.isRTL(o.floating))),_=[h[Eu(m)],h[g[0]],h[g[1]]],v=[...r.autoPlacement?.overflows||[],{placement:m,overflows:_}],y=f[p+1];if(y)return{data:{index:p+1,overflows:v},reset:{placement:y}};let b=v.map(e=>{let t=Du(e.placement);return[e.placement,t&&s?e.overflows.slice(0,2).reduce((e,t)=>e+t,0):e.overflows[0],e.overflows]}).sort((e,t)=>e[1]-t[1]),x=b.filter(e=>e[2].slice(0,Du(e[0])?2:3).every(e=>e<=0))[0]?.[0]||b[0][0];return x===i?{}:{data:{index:p+1,overflows:v},reset:{placement:x}}}}},Qu=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}=Tu(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=Eu(r),_=Au(o),v=Eu(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Vu(o)]:Nu(o)),x=p!==`none`;!d&&x&&b.push(...Bu(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],ee=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=Mu(r,a,y);w.push(C[e[0]],C[e[1]])}if(ee=[...ee,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===Au(t)||ee.every(e=>Au(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:ee},reset:{placement:t}};let n=ee.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=ee.filter(e=>{if(x){let t=Au(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{}}}},$u=new Set([`left`,`top`]);async function ed(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Eu(n),s=Du(n),c=Au(n)===`y`,l=$u.has(o)?-1:1,u=a&&c?-1:1,d=Tu(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 td=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 ed(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}}}}},nd=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}=Tu(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=Au(i),p=Ou(f),m=u[p],h=u[f],g=(e,t)=>wu(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}}}}}},rd=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}=Tu(e,t),c=await i.detectOverflow(t,s),l=Eu(n),u=Du(n),d=Au(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=xu(p-c[m],g),y=xu(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*Su(c.left,c.right):S=p-2*Su(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 id(e){return e.ownerDocument?.defaultView||window}function ad(e){return id(e).getComputedStyle(e)}var od=Math.min,sd=Math.max,cd=Math.round;function ld(e){let t=ad(e),n=parseFloat(t.width),r=parseFloat(t.height),i=e.offsetWidth,a=e.offsetHeight,o=cd(n)!==i||cd(r)!==a;return o&&(n=i,r=a),{width:n,height:r,fallback:o}}function ud(e){return hd(e)?(e.nodeName||``).toLowerCase():``}var dd;function fd(){if(dd)return dd;let e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(dd=e.brands.map((e=>e.brand+`/`+e.version)).join(` `),dd):navigator.userAgent}function pd(e){return e instanceof id(e).HTMLElement}function md(e){return e instanceof id(e).Element}function hd(e){return e instanceof id(e).Node}function gd(e){return typeof ShadowRoot>`u`?!1:e instanceof id(e).ShadowRoot||e instanceof ShadowRoot}function _d(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=ad(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&![`inline`,`contents`].includes(i)}function vd(e){return[`table`,`td`,`th`].includes(ud(e))}function yd(e){let t=/firefox/i.test(fd()),n=ad(e),r=n.backdropFilter||n.WebkitBackdropFilter;return n.transform!==`none`||n.perspective!==`none`||!!r&&r!==`none`||t&&n.willChange===`filter`||t&&!!n.filter&&n.filter!==`none`||[`transform`,`perspective`].some((e=>n.willChange.includes(e)))||[`paint`,`layout`,`strict`,`content`].some((e=>{let t=n.contain;return t!=null&&t.includes(e)}))}function bd(){return!/^((?!chrome|android).)*safari/i.test(fd())}function xd(e){return[`html`,`body`,`#document`].includes(ud(e))}function Sd(e){return md(e)?e:e.contextElement}var Cd={x:1,y:1};function wd(e){let t=Sd(e);if(!pd(t))return Cd;let n=t.getBoundingClientRect(),{width:r,height:i,fallback:a}=ld(t),o=(a?cd(n.width):n.width)/r,s=(a?cd(n.height):n.height)/i;return o&&Number.isFinite(o)||(o=1),s&&Number.isFinite(s)||(s=1),{x:o,y:s}}function Td(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Sd(e),o=Cd;t&&(r?md(r)&&(o=wd(r)):o=wd(e));let s=a?id(a):window,c=!bd()&&n,l=(i.left+(c&&s.visualViewport?.offsetLeft||0))/o.x,u=(i.top+(c&&s.visualViewport?.offsetTop||0))/o.y,d=i.width/o.x,f=i.height/o.y;if(a){let e=id(a),t=r&&md(r)?id(r):r,n=e.frameElement;for(;n&&r&&t!==e;){let e=wd(n),t=n.getBoundingClientRect(),r=getComputedStyle(n);t.x+=(n.clientLeft+parseFloat(r.paddingLeft))*e.x,t.y+=(n.clientTop+parseFloat(r.paddingTop))*e.y,l*=e.x,u*=e.y,d*=e.x,f*=e.y,l+=t.x,u+=t.y,n=id(n).frameElement}}return{width:d,height:f,top:u,right:l+d,bottom:u+f,left:l,x:l,y:u}}function Ed(e){return((hd(e)?e.ownerDocument:e.document)||window.document).documentElement}function Dd(e){return md(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Od(e){return Td(Ed(e)).left+Dd(e).scrollLeft}function kd(e){if(ud(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||gd(e)&&e.host||Ed(e);return gd(t)?t.host:t}function Ad(e){let t=kd(e);return xd(t)?t.ownerDocument.body:pd(t)&&_d(t)?t:Ad(t)}function jd(e,t){t===void 0&&(t=[]);let n=Ad(e),r=n===e.ownerDocument?.body,i=id(n);return r?t.concat(i,i.visualViewport||[],_d(n)?n:[]):t.concat(n,jd(n))}function Md(e,t,n){return t===`viewport`?Wu(function(e,t){let n=id(e),r=Ed(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=bd();(e||!e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:a,height:o,x:s,y:c}}(e,n)):md(t)?Wu(function(e,t){let n=Td(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=pd(e)?wd(e):{x:1,y:1};return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}(t,n)):Wu(function(e){let t=Ed(e),n=Dd(e),r=e.ownerDocument.body,i=sd(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=sd(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+Od(e),s=-n.scrollTop;return ad(r).direction===`rtl`&&(o+=sd(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}(Ed(e)))}function Nd(e){return pd(e)&&ad(e).position!==`fixed`?e.offsetParent:null}function Pd(e){let t=id(e),n=Nd(e);for(;n&&vd(n)&&ad(n).position===`static`;)n=Nd(n);return n&&(ud(n)===`html`||ud(n)===`body`&&ad(n).position===`static`&&!yd(n))?t:n||function(e){let t=kd(e);for(;pd(t)&&!xd(t);){if(yd(t))return t;t=kd(t)}return null}(e)||t}function Fd(e,t,n){let r=pd(t),i=Ed(t),a=Td(e,!0,n===`fixed`,t),o={scrollLeft:0,scrollTop:0},s={x:0,y:0};if(r||!r&&n!==`fixed`){if((ud(t)!==`body`||_d(i))&&(o=Dd(t)),pd(t)){let e=Td(t,!0);s.x=e.x+t.clientLeft,s.y=e.y+t.clientTop}else i&&(s.x=Od(i))}return{x:a.left+o.scrollLeft-s.x,y:a.top+o.scrollTop-s.y,width:a.width,height:a.height}}var Id={getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?function(e,t){let n=t.get(e);if(n)return n;let r=jd(e).filter((e=>md(e)&&ud(e)!==`body`)),i=null,a=ad(e).position===`fixed`,o=a?kd(e):e;for(;md(o)&&!xd(o);){let e=ad(o),t=yd(o);(a?t||i:t||e.position!==`static`||!i||![`absolute`,`fixed`].includes(i.position))?i=e:r=r.filter((e=>e!==o)),o=kd(o)}return t.set(e,r),r}(t,this._c):[].concat(n),r],o=a[0],s=a.reduce(((e,n)=>{let r=Md(t,n,i);return e.top=sd(r.top,e.top),e.right=od(r.right,e.right),e.bottom=od(r.bottom,e.bottom),e.left=sd(r.left,e.left),e}),Md(t,o,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{rect:t,offsetParent:n,strategy:r}=e,i=pd(n),a=Ed(n);if(n===a)return t;let o={scrollLeft:0,scrollTop:0},s={x:1,y:1},c={x:0,y:0};if((i||!i&&r!==`fixed`)&&((ud(n)!==`body`||_d(a))&&(o=Dd(n)),pd(n))){let e=Td(n);s=wd(n),c.x=e.x+n.clientLeft,c.y=e.y+n.clientTop}return{width:t.width*s.x,height:t.height*s.y,x:t.x*s.x-o.scrollLeft*s.x+c.x,y:t.y*s.y-o.scrollTop*s.y+c.y}},isElement:md,getDimensions:function(e){return pd(e)?ld(e):e.getBoundingClientRect()},getOffsetParent:Pd,getDocumentElement:Ed,getScale:wd,async getElementRects(e){let{reference:t,floating:n,strategy:r}=e,i=this.getOffsetParent||Pd,a=this.getDimensions;return{reference:Fd(t,await i(n),r),floating:{x:0,y:0,...await a(n)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>ad(e).direction===`rtl`},Ld=(e,t,n)=>{let r=new Map,i={platform:Id,...n},a={...i.platform,_c:r};return Ju(e,t,{...i,platform:a})},Rd={disabled:!1,distance:5,skidding:0,container:`body`,boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:`absolute`,preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:`top`,triggers:[`hover`,`focus`,`touch`],hideTriggers:e=>[...e,`click`],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:`...`},dropdown:{placement:`bottom`,triggers:[`click`],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:`dropdown`,triggers:[`hover`,`focus`],popperTriggers:[`hover`],delay:{show:0,hide:400}}}};function zd(e,t){let n=Rd.themes[e]||{},r;do r=n[t],typeof r>`u`?n.$extend?n=Rd.themes[n.$extend]||{}:(n=null,r=Rd[t]):n=null;while(n);return r}function Bd(e){let t=[e],n=Rd.themes[e]||{};do n.$extend&&!n.$resetCss?(t.push(n.$extend),n=Rd.themes[n.$extend]||{}):n=null;while(n);return t.map(e=>`v-popper--theme-${e}`)}function Vd(e){let t=[e],n=Rd.themes[e]||{};do n.$extend?(t.push(n.$extend),n=Rd.themes[n.$extend]||{}):n=null;while(n);return t}var Hd=!1;if(typeof window<`u`){Hd=!1;try{let e=Object.defineProperty({},"passive",{get(){Hd=!0}});window.addEventListener(`test`,null,e)}catch{}}var Ud=!1;typeof window<`u`&&typeof navigator<`u`&&(Ud=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);var Wd=[`auto`,`top`,`bottom`,`left`,`right`].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),Gd={hover:`mouseenter`,focus:`focus`,click:`click`,touch:`touchstart`,pointer:`pointerdown`},Kd={hover:`mouseleave`,focus:`blur`,click:`click`,touch:`touchend`,pointer:`pointerup`};function qd(e,t){let n=e.indexOf(t);n!==-1&&e.splice(n,1)}function Jd(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}var Yd=[],Xd=null,Zd={};function Qd(e){let t=Zd[e];return t||=Zd[e]=[],t}var $d=function(){};typeof window<`u`&&($d=window.Element);function Q(e){return function(t){return zd(t.theme,e)}}var ef=`__floating-vue__popper`,tf=()=>z({name:`VPopper`,provide(){return{[ef]:{parentPopper:this}}},inject:{[ef]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:Q(`disabled`)},positioningDisabled:{type:Boolean,default:Q(`positioningDisabled`)},placement:{type:String,default:Q(`placement`),validator:e=>Wd.includes(e)},delay:{type:[String,Number,Object],default:Q(`delay`)},distance:{type:[Number,String],default:Q(`distance`)},skidding:{type:[Number,String],default:Q(`skidding`)},triggers:{type:Array,default:Q(`triggers`)},showTriggers:{type:[Array,Function],default:Q(`showTriggers`)},hideTriggers:{type:[Array,Function],default:Q(`hideTriggers`)},popperTriggers:{type:Array,default:Q(`popperTriggers`)},popperShowTriggers:{type:[Array,Function],default:Q(`popperShowTriggers`)},popperHideTriggers:{type:[Array,Function],default:Q(`popperHideTriggers`)},container:{type:[String,Object,$d,Boolean],default:Q(`container`)},boundary:{type:[String,$d],default:Q(`boundary`)},strategy:{type:String,validator:e=>[`absolute`,`fixed`].includes(e),default:Q(`strategy`)},autoHide:{type:[Boolean,Function],default:Q(`autoHide`)},handleResize:{type:Boolean,default:Q(`handleResize`)},instantMove:{type:Boolean,default:Q(`instantMove`)},eagerMount:{type:Boolean,default:Q(`eagerMount`)},popperClass:{type:[String,Array,Object],default:Q(`popperClass`)},computeTransformOrigin:{type:Boolean,default:Q(`computeTransformOrigin`)},autoMinSize:{type:Boolean,default:Q(`autoMinSize`)},autoSize:{type:[Boolean,String],default:Q(`autoSize`)},autoMaxSize:{type:Boolean,default:Q(`autoMaxSize`)},autoBoundaryMaxSize:{type:Boolean,default:Q(`autoBoundaryMaxSize`)},preventOverflow:{type:Boolean,default:Q(`preventOverflow`)},overflowPadding:{type:[Number,String],default:Q(`overflowPadding`)},arrowPadding:{type:[Number,String],default:Q(`arrowPadding`)},arrowOverflow:{type:Boolean,default:Q(`arrowOverflow`)},flip:{type:Boolean,default:Q(`flip`)},shift:{type:Boolean,default:Q(`shift`)},shiftCrossAxis:{type:Boolean,default:Q(`shiftCrossAxis`)},noAutoFocus:{type:Boolean,default:Q(`noAutoFocus`)},disposeTimeout:{type:Number,default:Q(`disposeTimeout`)}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:``,strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join(`_`)}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId==null?this.randomId:this.ariaId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide==`function`?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){return this[ef]?.parentPopper},hasPopperShowTriggerHover(){return this.popperTriggers?.includes(`hover`)||this.popperShowTriggers?.includes(`hover`)}},watch:{shown:`$_autoShowHide`,disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:`$_refreshListeners`,deep:!0},positioningDisabled:`$_refreshListeners`,...[`placement`,`distance`,`skidding`,`boundary`,`strategy`,`overflowPadding`,`arrowPadding`,`preventOverflow`,`shift`,`shiftCrossAxis`,`flip`].reduce((e,t)=>(e[t]=`$_computePosition`,e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:n=!1}={}){var r;(r=this.parentPopper)!=null&&r.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(n||!this.disabled)&&(this.parentPopper?.lockedChild===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit(`show`),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit(`update:shown`,!0))},hide({event:e=null,skipDelay:t=!1}={}){if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}this.parentPopper?.lockedChild===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit(`hide`),this.$emit(`update:shown`,!1)}},init(){this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=this.referenceNode?.call(this)??this.$el,this.$_targetNodes=this.targetNodes().filter(e=>e.nodeType===e.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(`.v-popper__inner`),this.$_arrowNode=this.$_popperNode.querySelector(`.v-popper__arrow-container`),this.$_swapTargetAttrs(`title`,`data-original-title`),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs(`data-original-title`,`title`))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit(`resize`))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;let e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(td({mainAxis:this.distance,crossAxis:this.skidding}));let t=this.placement.startsWith(`auto`);if(t?e.middleware.push(Zu({alignment:this.placement.split(`-`)[1]??``})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(nd({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(Qu({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(Yu({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:`arrowOverflow`,fn:({placement:e,rects:t,middlewareData:n})=>{let r,{centerOffset:i}=n.arrow;return r=e.startsWith(`top`)||e.startsWith(`bottom`)?Math.abs(i)>t.reference.width/2:Math.abs(i)>t.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){let t=this.autoSize?this.autoSize:this.autoMinSize?`min`:null;e.middleware.push({name:`autoSize`,fn:({rects:e,placement:n,middlewareData:r})=>{var i;if((i=r.autoSize)!=null&&i.skip)return{};let a,o;return n.startsWith(`top`)||n.startsWith(`bottom`)?a=e.reference.width:o=e.reference.height,this.$_innerNode.style[t===`min`?`minWidth`:t===`max`?`maxWidth`:`width`]=a==null?null:`${a}px`,this.$_innerNode.style[t===`min`?`minHeight`:t===`max`?`maxHeight`:`height`]=o==null?null:`${o}px`,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(rd({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:e,availableHeight:t})=>{this.$_innerNode.style.maxWidth=e==null?null:`${e}px`,this.$_innerNode.style.maxHeight=t==null?null:`${t}px`}})));let n=await Ld(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:n.x,y:n.y,placement:n.placement,strategy:n.strategy,arrow:{...n.middlewareData.arrow,...n.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),Xd&&this.instantMove&&Xd.instantMove&&Xd!==this.parentPopper){Xd.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay(`show`))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(Xd=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay(`hide`))},$_computeDelay(e){let t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Jd(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...jd(this.$_referenceNode),...jd(this.$_popperNode)],`scroll`,()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){let e=this.$_referenceNode.getBoundingClientRect(),t=this.$_popperNode.querySelector(`.v-popper__wrapper`),n=t.parentNode.getBoundingClientRect(),r=e.x+e.width/2-(n.left+t.offsetLeft),i=e.y+e.height/2-(n.top+t.offsetTop);this.result.transformOrigin=`${r}px ${i}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":``});let e=this.showGroup;if(e){let t;for(let n=0;n<Yd.length;n++)t=Yd[n],t.showGroup!==e&&(t.hide(),t.$emit(`close-group`))}Yd.push(this),document.body.classList.add(`v-popper--some-open`);for(let e of Vd(this.theme))Qd(e).push(this),document.body.classList.add(`v-popper--some-open--${e}`);this.$emit(`apply-show`),this.classes.showFrom=!0,this.classes.showTo=!1,this.classes.hideFrom=!1,this.classes.hideTo=!1,await Jd(),this.classes.showFrom=!1,this.classes.showTo=!0,this.noAutoFocus||this.$_popperNode.focus()},async $_applyHide(e=!1){if(this.shownChildren.size>0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,qd(Yd,this),Yd.length===0&&document.body.classList.remove(`v-popper--some-open`);for(let e of Vd(this.theme)){let t=Qd(e);qd(t,this),t.length===0&&document.body.classList.remove(`v-popper--some-open--${e}`)}Xd===this&&(Xd=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);let t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners(`scroll`),this.$emit(`apply-hide`),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Jd(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e==`string`?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw Error(`No container for popover: `+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){let e=e=>{this.isShown&&!this.$_hideInProgress||(e.usedByTooltip=!0,!this.$_preventShow&&this.show({event:e}))};this.$_registerTriggerListeners(this.$_targetNodes,Gd,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],Gd,this.popperTriggers,this.popperShowTriggers,e);let t=e=>{e.usedByTooltip||this.hide({event:e})};this.$_registerTriggerListeners(this.$_targetNodes,Kd,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],Kd,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,n){this.$_events.push({targetNodes:e,eventType:t,handler:n}),e.forEach(e=>e.addEventListener(t,n,Hd?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,n,r,i){let a=n;r!=null&&(a=typeof r==`function`?r(a):r),a.forEach(n=>{let r=t[n];r&&this.$_registerEventListeners(e,r,i)})},$_removeEventListeners(e){let t=[];this.$_events.forEach(n=>{let{targetNodes:r,eventType:i,handler:a}=n;!e||e===i?r.forEach(e=>e.removeEventListener(i,a)):t.push(n)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit(`close-directive`):this.$emit(`auto-hide`),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(let n of this.$_targetNodes){let r=n.getAttribute(e);r&&(n.removeAttribute(e),n.setAttribute(t,r))}},$_applyAttrsToTarget(e){for(let t of this.$_targetNodes)for(let n in e){let r=e[n];r==null?t.removeAttribute(n):t.setAttribute(n,r)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){let e=this.$_referenceNode.getBoundingClientRect();if(df>=e.left&&df<=e.right&&ff>=e.top&&ff<=e.bottom){let e=this.$_popperNode.getBoundingClientRect(),t=df-lf,n=ff-uf,r=e.left+e.width/2-lf+(e.top+e.height/2)-uf+e.width+e.height,i=lf+t*r,a=uf+n*r;return pf(lf,uf,i,a,e.left,e.top,e.left,e.bottom)||pf(lf,uf,i,a,e.left,e.top,e.right,e.top)||pf(lf,uf,i,a,e.right,e.top,e.right,e.bottom)||pf(lf,uf,i,a,e.left,e.bottom,e.right,e.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<`u`&&typeof window<`u`){if(Ud){let e=!Hd||{passive:!0,capture:!0};document.addEventListener(`touchstart`,e=>nf(e,!0),e),document.addEventListener(`touchend`,e=>rf(e,!0),e)}else window.addEventListener(`mousedown`,e=>nf(e,!1),!0),window.addEventListener(`click`,e=>rf(e,!1),!0);window.addEventListener(`resize`,cf)}function nf(e,t){if(Rd.autoHideOnMousedown)af(e,t);else for(let t=0;t<Yd.length;t++){let n=Yd[t];try{n.mouseDownContains=n.popperNode().contains(e.target)}catch{}}}function rf(e,t){Rd.autoHideOnMousedown||af(e,t)}function af(e,t){let n={};for(let r=Yd.length-1;r>=0;r--){let i=Yd[r];try{let r=i.containsGlobalTarget=i.mouseDownContains||i.popperNode().contains(e.target);i.pendingHide=!1,requestAnimationFrame(()=>{if(i.pendingHide=!1,!n[i.randomId]&&of(i,r,e)){if(i.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&r){let e=i.parentPopper;for(;e;)n[e.randomId]=!0,e=e.parentPopper;return}let a=i.parentPopper;for(;a&&of(a,a.containsGlobalTarget,e);)a.$_handleGlobalClose(e,t),a=a.parentPopper}})}catch{}}}function of(e,t,n){return n.closeAllPopover||n.closePopover&&t||sf(e,n)&&!t}function sf(e,t){if(typeof e.autoHide==`function`){let n=e.autoHide(t);return e.lastAutoHide=n,n}return e.autoHide}function cf(){for(let e=0;e<Yd.length;e++)Yd[e].$_computePosition()}var lf=0,uf=0,df=0,ff=0;typeof window<`u`&&window.addEventListener(`mousemove`,e=>{lf=df,uf=ff,df=e.clientX,ff=e.clientY},Hd?{passive:!0}:void 0);function pf(e,t,n,r,i,a,o,s){let c=((o-i)*(t-a)-(s-a)*(e-i))/((s-a)*(n-e)-(o-i)*(r-t)),l=((n-e)*(t-a)-(r-t)*(e-i))/((s-a)*(n-e)-(o-i)*(r-t));return c>=0&&c<=1&&l>=0&&l<=1}var mf={extends:tf()},hf=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};function gf(e,t,n,r,i,a){return W(),G(`div`,{ref:`reference`,class:A([`v-popper`,{"v-popper--shown":e.slotData.isShown}])},[B(e.$slots,`default`,ye(_s(e.slotData)))],2)}var _f=hf(mf,[[`render`,gf]]);function vf(){var e=window.navigator.userAgent,t=e.indexOf(`MSIE `);if(t>0)return parseInt(e.substring(t+5,e.indexOf(`.`,t)),10);if(e.indexOf(`Trident/`)>0){var n=e.indexOf(`rv:`);return parseInt(e.substring(n+3,e.indexOf(`.`,n)),10)}var r=e.indexOf(`Edge/`);return r>0?parseInt(e.substring(r+5,e.indexOf(`.`,r)),10):-1}var yf;function bf(){bf.init||(bf.init=!0,yf=vf()!==-1)}var xf={name:`ResizeObserver`,props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:[`notify`],mounted(){bf(),Yn(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});let e=document.createElement(`object`);this._resizeObject=e,e.setAttribute(`aria-hidden`,`true`),e.setAttribute(`tabindex`,-1),e.onload=this.addResizeHandlers,e.type=`text/html`,yf&&this.$el.appendChild(e),e.data=`about:blank`,yf||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit(`notify`,{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener(`resize`,this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!yf&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener(`resize`,this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}},Sf=fr(`data-v-b329ee4c`);ur(`data-v-b329ee4c`);var Cf={class:`resize-observer`,tabindex:`-1`};dr(),xf.render=Sf((e,t,n,r,i,a)=>(W(),K(`div`,Cf))),xf.__scopeId=`data-v-b329ee4c`,xf.__file=`src/components/ResizeObserver.vue`;var wf=(e=`theme`)=>({computed:{themeClass(){return Bd(this[e])}}}),Tf=z({name:`VPopperContent`,components:{ResizeObserver:xf},mixins:[wf()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:[`hide`,`resize`],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ef=[`id`,`aria-hidden`,`tabindex`,`data-popper-placement`],Df={ref:`inner`,class:`v-popper__inner`},Of=[q(`div`,{class:`v-popper__arrow-outer`},null,-1),q(`div`,{class:`v-popper__arrow-inner`},null,-1)];function kf(e,t,n,r,i,a){let o=aa(`ResizeObserver`);return W(),G(`div`,{id:e.popperId,ref:`popover`,class:A([`v-popper__popper`,[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:k(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?`false`:`true`,tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||=nu(t=>e.autoHide&&e.$emit(`hide`),[`esc`])},[q(`div`,{class:`v-popper__backdrop`,onClick:t[0]||=t=>e.autoHide&&e.$emit(`hide`)}),q(`div`,{class:`v-popper__wrapper`,style:k(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[q(`div`,Df,[e.mounted?(W(),G(H,{key:0},[q(`div`,null,[B(e.$slots,`default`)]),e.handleResize?(W(),K(o,{key:0,onNotify:t[1]||=t=>e.$emit(`resize`,t)})):X(``,!0)],64)):X(``,!0)],512),q(`div`,{ref:`arrow`,class:`v-popper__arrow-container`,style:k(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Of,4)],4)],46,Ef)}var Af=hf(Tf,[[`render`,kf]]),jf={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}},Mf=function(){};typeof window<`u`&&(Mf=window.Element);var Nf=z({name:`VPopperWrapper`,components:{Popper:_f,PopperContent:Af},mixins:[jf,wf(`finalTheme`)],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Mf,Boolean],default:void 0},boundary:{type:[String,Mf],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function Pf(e,t,n,r,i,a){let o=aa(`PopperContent`),s=aa(`Popper`);return W(),K(s,Cs({ref:`popper`},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||=()=>e.$emit(`show`),onHide:t[1]||=()=>e.$emit(`hide`),"onUpdate:shown":t[2]||=t=>e.$emit(`update:shown`,t),onApplyShow:t[3]||=()=>e.$emit(`apply-show`),onApplyHide:t[4]||=()=>e.$emit(`apply-hide`),onCloseGroup:t[5]||=()=>e.$emit(`close-group`),onCloseDirective:t[6]||=()=>e.$emit(`close-directive`),onAutoHide:t[7]||=()=>e.$emit(`auto-hide`),onResize:t[8]||=()=>e.$emit(`resize`)}),{default:R(({popperId:t,isShown:n,shouldMountContent:r,skipTransition:i,autoHide:a,show:s,hide:c,handleResize:l,onResize:u,classes:d,result:f})=>[B(e.$slots,`default`,{shown:n,show:s,hide:c}),J(o,{ref:`popperContent`,"popper-id":t,theme:e.finalTheme,shown:n,mounted:r,"skip-transition":i,"auto-hide":a,"handle-resize":l,classes:d,result:f,onHide:c,onResize:u},{default:R(()=>[B(e.$slots,`popper`,{shown:n,hide:c})]),_:2},1032,[`popper-id`,`theme`,`shown`,`mounted`,`skip-transition`,`auto-hide`,`handle-resize`,`classes`,`result`,`onHide`,`onResize`])]),_:3},16,[`theme`,`target-nodes`,`popper-node`,`class`])}var Ff=hf(Nf,[[`render`,Pf]]);({...Ff}),{...Ff},{...Ff};var If=z({name:`VTooltipDirective`,components:{Popper:tf(),PopperContent:Af},mixins:[jf],inheritAttrs:!1,props:{theme:{type:String,default:`tooltip`},html:{type:Boolean,default:e=>zd(e.theme,`html`)},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>zd(e.theme,`loadingContent`)},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content==`function`},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content==`function`&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;let e=++this.$_fetchId,t=this.content(this);t.then?t.then(t=>this.onResult(e,t)):this.onResult(e,t)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Lf=[`innerHTML`],Rf=[`textContent`];function zf(e,t,n,r,i,a){let o=aa(`PopperContent`),s=aa(`Popper`);return W(),K(s,Cs({ref:`popper`},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:R(({popperId:t,isShown:n,shouldMountContent:r,skipTransition:i,autoHide:a,hide:s,handleResize:c,onResize:l,classes:u,result:d})=>[J(o,{ref:`popperContent`,class:A({"v-popper--tooltip-loading":e.loading}),"popper-id":t,theme:e.theme,shown:n,mounted:r,"skip-transition":i,"auto-hide":a,"handle-resize":c,classes:u,result:d,onHide:s,onResize:l},{default:R(()=>[e.html?(W(),G(`div`,{key:0,innerHTML:e.finalContent},null,8,Lf)):(W(),G(`div`,{key:1,textContent:j(e.finalContent)},null,8,Rf))]),_:2},1032,[`class`,`popper-id`,`theme`,`shown`,`mounted`,`skip-transition`,`auto-hide`,`handle-resize`,`classes`,`result`,`onHide`,`onResize`])]),_:1},16,[`theme`,`target-nodes`,`popper-node`,`onApplyShow`,`onApplyHide`])}var Bf=hf(If,[[`render`,zf]]),Vf=`v-popper--has-tooltip`;function Hf(e,t){let n=e.placement;if(!n&&t)for(let e of Wd)t[e]&&(n=e);return n||=zd(e.theme||`tooltip`,`placement`),n}function Uf(e,t,n){let r,i=typeof t;return r=i===`string`?{content:t}:t&&i===`object`?t:{content:!1},r.placement=Hf(r,n),r.targetNodes=()=>[e],r.referenceNode=()=>e,r}var Wf,Gf,Kf=0;function qf(){if(Wf)return;Gf=I([]),Wf=uu({name:`VTooltipDirectiveApp`,setup(){return{directives:Gf}},render(){return this.directives.map(e=>Ys(Bf,{...e.options,shown:e.shown||e.options.shown,key:e.id}))},devtools:{hide:!0}});let e=document.createElement(`div`);document.body.appendChild(e),Wf.mount(e)}function Jf(e,t,n){qf();let r=I(Uf(e,t,n)),i=I(!1),a={id:Kf++,options:r,shown:i};return Gf.value.push(a),e.classList&&e.classList.add(Vf),e.$_popper={options:r,item:a,show(){i.value=!0},hide(){i.value=!1}}}function Yf(e){if(e.$_popper){let t=Gf.value.indexOf(e.$_popper.item);t!==-1&&Gf.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Vf)}function Xf(e,{value:t,modifiers:n}){let r=Uf(e,t,n);if(!r.content||zd(r.theme||`tooltip`,`disabled`))Yf(e);else{let i;e.$_popper?(i=e.$_popper,i.options.value=r):i=Jf(e,t,n),typeof t.shown<`u`&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?i.show():i.hide())}}var Zf={beforeMount:Xf,updated:Xf,beforeUnmount(e){Yf(e)}},Qf=z({__name:`ActionIconButton`,props:{as:{},to:{},href:{},icon:{},tooltip:{},active:{type:Boolean},disabled:{type:Boolean},label:{},compact:{type:Boolean},activeClass:{}},setup(e){let t=e,n=Z(()=>t.as?t.as:t.href!=null||t.to!=null?`a`:`button`),r=Z(()=>n.value===`a`),i=Z(()=>n.value===`button`),a=Z(()=>t.compact?`btn-icon-compact`:`btn-icon`),o=Z(()=>t.compact?`w-auto! h-auto! p-[0.25em]`:`w-auto! h-auto! p-[0.5em]`),s=Z(()=>t.active?t.activeClass||`color-active bg-active op100`:``);return(t,c)=>pr((W(),K(sa(n.value),{type:i.value?`button`:void 0,class:A([a.value,o.value,s.value,{"pointer-events-none op-mute":e.disabled&&!i.value}]),href:r.value?e.href??e.to:void 0,to:e.as&&e.to!=null?e.to:void 0,disabled:i.value?e.disabled:void 0,"aria-disabled":e.disabled&&!i.value||void 0,"aria-label":e.label??e.tooltip,"aria-pressed":e.active||void 0},{default:R(()=>[e.icon?(W(),G(`span`,{key:0,class:A(e.icon),"aria-hidden":`true`},null,2)):X(``,!0),B(t.$slots,`default`),B(t.$slots,`badge`)]),_:3},8,[`type`,`class`,`href`,`to`,`disabled`,`aria-disabled`,`aria-label`,`aria-pressed`])),[[L(Zf),e.tooltip]])}});function $f(e){return typeof e==`string`?`'${e}'`:new rp().serialize(e)}var ep=` _-,;:!?.'"()[]{}@*/\\&#%\`^+<=>|~$0123456789abcdefghijklmnopqrstuvwxyz`,tp=(function(){let e=new Uint8Array(128);for(let t=0;t<69;t++)e[ep.charCodeAt(t)]=t+1;for(let t=65;t<=90;t++)e[t]=e[t+32];return e})();function np(e,t){if(e===t)return 0;let n=Math.min(e.length,t.length),r=0;for(let i=0;i<n;i++){let n=e.charCodeAt(i),a=t.charCodeAt(i);if(n===a)continue;let o=n<128&&tp[n]?tp[n]:n+128,s=a<128&&tp[a]?tp[a]:a+128;if(o!==s)return o<s?-1:1;r===0&&(r=n>a?-1:1)}return e.length===t.length?r:e.length<t.length?-1:1}var rp=(function(){class e{#e=new Map;compare(e,t){let n=typeof e,r=typeof t;return n===`string`&&r===`string`?np(e,t):n===`number`&&r===`number`?e-t:np(this.serialize(e,!0),this.serialize(t,!0))}serialize(e,t){if(e===null)return`null`;switch(typeof e){case`string`:return t?e:`'${e}'`;case`bigint`:return`${e}n`;case`object`:return this.$object(e);case`function`:return this.$function(e)}return String(e)}serializeObject(e){let t=Object.prototype.toString.call(e);if(t!==`[object Object]`)return this.serializeBuiltInType(t.length<10?`unknown:${t}`:t.slice(8,-1),e);let n=e.constructor,r=n===Object||n===void 0?``:n.name;if(r!==``&&globalThis[r]===n)return this.serializeBuiltInType(r,e);if(`toJSON`in e&&typeof e.toJSON==`function`){let t=e.toJSON();return r+(typeof t==`object`&&t?this.$object(t):`(${this.serialize(t)})`)}let i=Object.keys(e).sort(np),a=`${r}{`;for(let t=0;t<i.length;t++){let n=i[t];a+=`${n}:${this.serialize(e[n])}`,t<i.length-1&&(a+=`,`)}return a+`}`}serializeBuiltInType(e,t){let n=this[`$`+e];if(n)return n.call(this,t);if(typeof t.entries==`function`)return this.serializeObjectEntries(e,t.entries());throw Error(`Cannot serialize ${e}`)}serializeObjectEntries(e,t){let n=Array.from(t).sort((e,t)=>this.compare(e[0],t[0])),r=`${e}{`;for(let e=0;e<n.length;e++){let[t,i]=n[e];r+=`${this.serialize(t,!0)}:${this.serialize(i)}`,e<n.length-1&&(r+=`,`)}return r+`}`}$object(e){let t=this.#e.get(e);return t===void 0&&(this.#e.set(e,`#${this.#e.size}`),t=this.serializeObject(e),this.#e.set(e,t)),t}$function(e){let t=Function.prototype.toString.call(e);return t.slice(-15)===`[native code] }`?`${e.name||``}()[native]`:`${e.name}(${e.length})${t.replace(/\s*\n\s*/g,``)}`}$Array(e){let t=`[`;for(let n=0;n<e.length;n++)t+=this.serialize(e[n]),n<e.length-1&&(t+=`,`);return t+`]`}$Date(e){try{return`Date(${e.toISOString()})`}catch{return`Date(null)`}}$ArrayBuffer(e){return`ArrayBuffer[${new Uint8Array(e).join(`,`)}]`}$Set(e){return`Set${this.$Array(Array.from(e).sort((e,t)=>this.compare(e,t)))}`}$Map(e){return this.serializeObjectEntries(`Map`,e.entries())}}for(let t of[`Error`,`RegExp`,`URL`])e.prototype[`$`+t]=function(e){return`${t}(${e})`};for(let t of[`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float32Array`,`Float64Array`])e.prototype[`$`+t]=function(e){return`${t}[${e.join(`,`)}]`};for(let t of[`BigInt64Array`,`BigUint64Array`])e.prototype[`$`+t]=function(e){return`${t}[${e.join(`n,`)}${e.length>0?`n`:``}]`};return e})(),ip=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],ap=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998],op=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`,sp=[],cp=class{_data=new lp;_hash=new lp([...ip]);_nDataBytes=0;_minBufferSize=0;finalize(e){e&&this._append(e);let t=this._nDataBytes*8,n=this._data.sigBytes*8;return this._data.words[n>>>5]|=128<<24-n%32,this._data.words[(n+64>>>9<<4)+14]=Math.floor(t/4294967296),this._data.words[(n+64>>>9<<4)+15]=t,this._data.sigBytes=this._data.words.length*4,this._process(),this._hash}_doProcessBlock(e,t){let n=this._hash.words,r=n[0],i=n[1],a=n[2],o=n[3],s=n[4],c=n[5],l=n[6],u=n[7];for(let n=0;n<64;n++){if(n<16)sp[n]=e[t+n]|0;else{let e=sp[n-15],t=(e<<25|e>>>7)^(e<<14|e>>>18)^e>>>3,r=sp[n-2],i=(r<<15|r>>>17)^(r<<13|r>>>19)^r>>>10;sp[n]=t+sp[n-7]+i+sp[n-16]}let d=s&c^~s&l,f=r&i^r&a^i&a,p=(r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22),m=(s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25),h=u+m+d+ap[n]+sp[n],g=p+f;u=l,l=c,c=s,s=o+h|0,o=a,a=i,i=r,r=h+g|0}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+a|0,n[3]=n[3]+o|0,n[4]=n[4]+s|0,n[5]=n[5]+c|0,n[6]=n[6]+l|0,n[7]=n[7]+u|0}_append(e){typeof e==`string`&&(e=lp.fromUtf8(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes}_process(e){let t,n=this._data.sigBytes/64;n=e?Math.ceil(n):Math.max((n|0)-this._minBufferSize,0);let r=n*16,i=Math.min(r*4,this._data.sigBytes);if(r){for(let e=0;e<r;e+=16)this._doProcessBlock(this._data.words,e);t=this._data.words.splice(0,r),this._data.sigBytes-=i}return new lp(t,i)}},lp=class e{words;sigBytes;constructor(e,t){e=this.words=e||[],this.sigBytes=t===void 0?e.length*4:t}static fromUtf8(t){let n=unescape(encodeURIComponent(t)),r=n.length,i=[];for(let e=0;e<r;e++)i[e>>>2]|=(n.charCodeAt(e)&255)<<24-e%4*8;return new e(i,r)}toBase64(){let e=[];for(let t=0;t<this.sigBytes;t+=3){let n=this.words[t>>>2]>>>24-t%4*8&255,r=this.words[t+1>>>2]>>>24-(t+1)%4*8&255,i=this.words[t+2>>>2]>>>24-(t+2)%4*8&255,a=n<<16|r<<8|i;for(let n=0;n<4&&t*8+n*6<this.sigBytes*8;n++)e.push(op.charAt(a>>>6*(3-n)&63))}return e.join(``)}concat(e){if(this.words[this.sigBytes>>>2]&=4294967295<<32-this.sigBytes%4*8,this.words.length=Math.ceil(this.sigBytes/4),this.sigBytes%4)for(let t=0;t<e.sigBytes;t++){let n=e.words[t>>>2]>>>24-t%4*8&255;this.words[this.sigBytes+t>>>2]|=n<<24-(this.sigBytes+t)%4*8}else for(let t=0;t<e.sigBytes;t+=4)this.words[this.sigBytes+t>>>2]=e.words[t>>>2];this.sigBytes+=e.sigBytes}};function up(e){return new cp().finalize(e).toBase64()}function dp(e){return up($f(e))}function fp(e,t){let n=typeof e==`string`&&!t?`${e}Context`:t,r=Symbol(n);return[t=>{let n=gr(r,t);if(n||n===null)return n;throw Error(`Injection \`${r.toString()}\` not found. Component must be used within ${Array.isArray(e)?`one of the following components: ${e.join(`, `)}`:`\`${e}\``}`)},e=>(hr(r,e),e)]}function pp(){let e=document.activeElement;if(e==null)return null;for(;e!=null&&e.shadowRoot!=null&&e.shadowRoot.activeElement!=null;)e=e.shadowRoot.activeElement;return e}function mp(e,t){return Ne()?(Pe(e,t),!0):!1}var hp=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var gp=e=>e!==void 0,_p=hp?window:void 0;hp&&window.document,hp&&window.navigator,hp&&window.location;function vp(e){let t=dn(e);return t?.$el??t}function yp(){let e=sn(!1),t=ks();return t&&Ji(()=>{e.value=!0},t),e}function bp(e){let t=yp();return Z(()=>(t.value,!!e()))}function xp(e){return JSON.parse(JSON.stringify(e))}function Sp(e,t,n={}){let{window:r=_p,...i}=n,a,o=bp(()=>r&&`ResizeObserver`in r),s=()=>{a&&=(a.disconnect(),void 0)},c=Cr(Z(()=>{let t=dn(e);return Array.isArray(t)?t.map(e=>vp(e)):[vp(t)]}),e=>{if(s(),o.value&&r){a=new ResizeObserver(t);for(let t of e)t&&a.observe(t,i)}},{immediate:!0,flush:`post`}),l=()=>{s(),c()};return mp(l),{isSupported:o,stop:l}}function Cp(e,t,n,r={}){var i,a;let{clone:o=!1,passive:s=!1,eventName:c,deep:l=!1,defaultValue:u,shouldEmit:d}=r,f=ks(),p=n||f?.emit||(f==null||(i=f.$emit)==null?void 0:i.bind(f))||(f==null||(a=f.proxy)==null||(a=a.$emit)==null?void 0:a.bind(f?.proxy)),m=c;t||=`modelValue`,m||=`update:${t.toString()}`;let h=e=>o?typeof o==`function`?o(e):xp(e):e,g=()=>gp(e[t])?h(e[t]):u,_=e=>{d?d(e)&&p(m,e):p(m,e)};if(s){let n=I(g()),r=!1;return Cr(()=>e[t],e=>{r||(r=!0,n.value=h(e),Yn(()=>r=!1))}),Cr(n,n=>{!r&&(n!==e[t]||l)&&_(n)},{deep:l}),n}return Z({get(){return g()},set(e){_(e)}})}function wp(e){return e?e.flatMap(e=>e.type===H?wp(e.children):[e]):[]}var[Tp,Ep]=fp(`ConfigProvider`);function Dp(e){let t=Tp({dir:I(`ltr`)});return Z(()=>e?.value||t.dir?.value||`ltr`)}function Op(){let e=ks(),t=I(),n=Z(()=>r());Xi(()=>{n.value!==r()&&un(t)});function r(){return t.value&&`$el`in t.value&&[`#text`,`#comment`].includes(t.value.$el.nodeName)?t.value.$el.nextElementSibling:vp(t)}let i=Object.assign({},e.exposed),a={};for(let t in e.props)Object.defineProperty(a,t,{enumerable:!0,configurable:!0,get:()=>e.props[t]});if(Object.keys(i).length>0)for(let e in i)Object.defineProperty(a,e,{enumerable:!0,configurable:!0,get:()=>i[e]});Object.defineProperty(a,"$el",{enumerable:!0,configurable:!0,get:()=>e.vnode.el}),e.exposed=a;function o(n){if(t.value=n,n&&(Object.defineProperty(a,"$el",{enumerable:!0,configurable:!0,get:()=>n instanceof Element?n:n.$el}),!(n instanceof Element)&&!Object.hasOwn(n,`$el`))){let t=n.$.exposed,r=Object.assign({},a);for(let e in t)Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>t[e]});e.exposed=r}}return{forwardRef:o,currentRef:t,currentElement:n}}var kp=0;function Ap(e,t=`reka`){if(e)return e;let n,r=Tp({useId:void 0});return n=r.useId?r.useId():`useId`in gu?ni?.():`${++kp}`,t?`${t}-${n}`:n}function jp(e,t){let n=I(e);function r(e){return t[n.value][e]??n.value}return{state:n,dispatch:e=>{n.value=r(e)}}}function Mp(e,t){let n=I({}),r=I(`none`),i=I(e),a=e.value?`mounted`:`unmounted`,o,s=t.value?.ownerDocument.defaultView??_p,{state:c,dispatch:l}=jp(a,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}}),u=e=>{if(hp){let n=new CustomEvent(e,{bubbles:!1,cancelable:!1});t.value?.dispatchEvent(n)}};Cr(e,async(e,i)=>{let a=i!==e;if(await Yn(),a){let a=r.value,o=Np(t.value);e?(l(`MOUNT`),u(`enter`),o===`none`&&u(`after-enter`)):o===`none`||o===`undefined`||n.value?.display===`none`?(l(`UNMOUNT`),u(`leave`),u(`after-leave`)):i&&a!==o?(l(`ANIMATION_OUT`),u(`leave`)):(l(`UNMOUNT`),u(`after-leave`))}},{immediate:!0});let d=e=>{if(e.target!==t.value)return;let n=Np(t.value),r=n.includes(CSS.escape(e.animationName)),a=c.value===`mounted`?`enter`:`leave`;if(r&&(u(`after-${a}`),l(`ANIMATION_END`),!i.value)){let e=t.value.style.animationFillMode;t.value.style.animationFillMode=`forwards`,o=s?.setTimeout(()=>{t.value?.style.animationFillMode===`forwards`&&(t.value.style.animationFillMode=e)})}n===`none`&&l(`ANIMATION_END`)},f=e=>{e.target===t.value&&(r.value=Np(t.value))},p=Cr(t,(e,t)=>{e?(n.value=getComputedStyle(e),e.addEventListener(`animationstart`,f),e.addEventListener(`animationcancel`,d),e.addEventListener(`animationend`,d)):(l(`ANIMATION_END`),o!==void 0&&s?.clearTimeout(o),t?.removeEventListener(`animationstart`,f),t?.removeEventListener(`animationcancel`,d),t?.removeEventListener(`animationend`,d))},{immediate:!0}),m=Cr(c,()=>{let e=Np(t.value);r.value=c.value===`mounted`?e:`none`});return Qi(()=>{p(),m(),t.value&&(t.value.removeEventListener(`animationstart`,f),t.value.removeEventListener(`animationcancel`,d),t.value.removeEventListener(`animationend`,d)),o!==void 0&&s?.clearTimeout(o)}),{isPresent:Z(()=>[`mounted`,`unmountSuspended`].includes(c.value))}}function Np(e){return e&&getComputedStyle(e).animationName||`none`}var Pp=z({name:`Presence`,props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(e,{slots:t,expose:n}){let{present:r,forceMount:i}=gn(e),a=I(),{isPresent:o}=Mp(r,a);n({present:o});let s=t.default({present:o.value});s=wp(s||[]);let c=ks();if(s&&s?.length>1){let e=c?.parent?.type.name?`<${c.parent.type.name} />`:`component`;throw Error([`Detected an invalid children for \`${e}\` for \`Presence\` component.`,``,"Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.",`You can apply a few solutions:`,["Provide a single child element so that `presence` directive attach correctly.",`Ensure the first child is an actual element instead of a raw text node or comment node.`].map(e=>` - ${e}`).join(`
5
5
  `)].join(`
6
6
  `))}return()=>i.value||r.value||o.value?Ys(t.default({present:o.value})[0],{ref:e=>{let t=vp(e);return t?.hasAttribute===void 0||(t?.hasAttribute(`data-reka-popper-content-wrapper`)?a.value=t.firstElementChild:a.value=t),t}}):null}}),Fp=z({name:`PrimitiveSlot`,inheritAttrs:!1,setup(e,{attrs:t,slots:n}){return()=>{if(!n.default)return null;let e=wp(n.default()),r=e.findIndex(e=>e.type!==U);if(r===-1)return e;let i=e[r];delete i.props?.ref;let a=i.props?Cs(t,i.props):t,o=vs({...i,props:{}},a);return e.length===1?o:(e[r]=o,e)}}}),Ip=[`area`,`img`,`input`],Lp=z({name:`Primitive`,inheritAttrs:!1,props:{asChild:{type:Boolean,default:!1},as:{type:[String,Object],default:`div`}},setup(e,{attrs:t,slots:n}){let r=e.asChild?`template`:e.as;return typeof r==`string`&&Ip.includes(r)?()=>Ys(r,t):r===`template`?()=>Ys(Fp,t,{default:n.default}):()=>Ys(e.as,t,{default:n.default})}});function Rp(){let e=I();return{primitiveElement:e,currentElement:Z(()=>[`#text`,`#comment`].includes(e.value?.$el.nodeName)?e.value?.$el.nextElementSibling:vp(e))}}var zp=`data-reka-collection-item`;function Bp(e={}){let{key:t=``,isProvider:n=!1}=e,r=`${t}CollectionProvider`,i;n?(i={collectionRef:I(),itemMap:I(new Map)},hr(r,i)):i=gr(r);let a=(e=!1)=>{let t=i.collectionRef.value;if(!t)return[];let n=Array.from(t.querySelectorAll(`[${zp}]`)),r=new Map(n.map((e,t)=>[e,t])),a=Array.from(i.itemMap.value.values()).sort((e,t)=>(r.get(e.ref)??-1)-(r.get(t.ref)??-1));return e?a:a.filter(e=>e.ref.dataset.disabled!==``)},o=z({name:`CollectionSlot`,inheritAttrs:!1,setup(e,{slots:t,attrs:n}){let{primitiveElement:r,currentElement:a}=Rp();return Cr(a,()=>{i.collectionRef.value=a.value}),()=>Ys(Fp,{ref:r,...n},t)}}),s=z({name:`CollectionItem`,inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(e,{slots:t,attrs:n}){let{primitiveElement:r,currentElement:a}=Rp();return br(t=>{if(a.value){let n=rn(a.value);i.itemMap.value.set(n,{ref:a.value,value:e.value}),t(()=>i.itemMap.value.delete(n))}}),()=>Ys(Fp,{...n,[zp]:``,ref:r},t)}});return{getItems:a,reactiveItems:Z(()=>Array.from(i.itemMap.value.values())),itemMapSize:Z(()=>i.itemMap.value.size),CollectionSlot:o,CollectionItem:s}}var Vp=`rovingFocusGroup.onEntryFocus`,Hp={bubbles:!1,cancelable:!0},Up={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function Wp(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function Gp(e,t,n){let r=Wp(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return Up[r]}function Kp(e,t=!1){let n=pp();for(let r of e)if(r===n||(r.focus({preventScroll:t}),pp()!==n))return}function qp(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var[Jp,Yp]=fp(`RovingFocusGroup`),Xp=z({__name:`RovingFocusGroup`,props:{orientation:{type:String,required:!1,default:void 0},dir:{type:String,required:!1},loop:{type:Boolean,required:!1,default:!1},currentTabStopId:{type:[String,null],required:!1},defaultCurrentTabStopId:{type:String,required:!1},preventScrollOnEntryFocus:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`entryFocus`,`update:currentTabStopId`],setup(e,{expose:t,emit:n}){let r=e,i=n,{loop:a,orientation:o,dir:s}=gn(r),c=Dp(s),l=Cp(r,`currentTabStopId`,i,{defaultValue:r.defaultCurrentTabStopId,passive:r.currentTabStopId===void 0}),u=I(!1),d=I(!1),f=I(0),{getItems:p,CollectionSlot:m}=Bp({isProvider:!0});function h(e){let t=!d.value;if(e.currentTarget&&e.target===e.currentTarget&&t&&!u.value){let t=new CustomEvent(Vp,Hp);if(e.currentTarget.dispatchEvent(t),i(`entryFocus`,t),!t.defaultPrevented){let e=p().map(e=>e.ref).filter(e=>e.dataset.disabled!==``);Kp([e.find(e=>e.getAttribute(`data-active`)===``),e.find(e=>e.getAttribute(`data-highlighted`)===``),e.find(e=>e.id===l.value),...e].filter(Boolean),r.preventScrollOnEntryFocus)}}d.value=!1}function g(){setTimeout(()=>{d.value=!1},1)}return t({getItems:p}),Yp({loop:a,dir:c,orientation:o,currentTabStopId:l,onItemFocus:e=>{l.value=e},onItemShiftTab:()=>{u.value=!0},onFocusableItemAdd:()=>{f.value++},onFocusableItemRemove:()=>{f.value--}}),(e,t)=>(W(),K(L(m),null,{default:R(()=>[J(L(Lp),{tabindex:u.value||f.value===0?-1:0,"data-orientation":L(o),as:e.as,"as-child":e.asChild,dir:L(c),style:{outline:`none`},onMousedown:t[0]||=e=>d.value=!0,onMouseup:g,onFocus:h,onBlur:t[1]||=e=>u.value=!1},{default:R(()=>[B(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`as`,`as-child`,`dir`])]),_:3}))}}),Zp=z({__name:`RovingFocusItem`,props:{tabStopId:{type:String,required:!1},focusable:{type:Boolean,required:!1,default:!0},active:{type:Boolean,required:!1},allowShiftKey:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let t=e,n=Jp(),r=Ap(),i=Z(()=>t.tabStopId||r),a=Z(()=>n.currentTabStopId.value===i.value),{getItems:o,CollectionItem:s}=Bp();Ji(()=>{t.focusable&&n.onFocusableItemAdd()}),Qi(()=>{t.focusable&&n.onFocusableItemRemove()}),Cr(()=>t.focusable,(e,t)=>{e!==t&&(e?n.onFocusableItemAdd():n.onFocusableItemRemove())});function c(e){if(e.key===`Tab`&&e.shiftKey){n.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let r=Gp(e,n.orientation.value,n.dir.value);if(r!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||!t.allowShiftKey&&e.shiftKey)return;e.preventDefault();let i=[...o().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)];if(r===`last`)i.reverse();else if(r===`prev`||r===`next`){r===`prev`&&i.reverse();let t=i.indexOf(e.currentTarget);i=n.loop.value?qp(i,t+1):i.slice(t+1)}Yn(()=>Kp(i))}}return(e,t)=>(W(),K(L(s),null,{default:R(()=>[J(L(Lp),{tabindex:a.value?0:-1,"data-orientation":L(n).orientation.value,"data-active":e.active?``:void 0,"data-disabled":e.focusable?void 0:``,as:e.as,"as-child":e.asChild,onMousedown:t[0]||=t=>{e.focusable?L(n).onItemFocus(i.value):t.preventDefault()},onFocus:t[1]||=e=>L(n).onItemFocus(i.value),onKeydown:c},{default:R(()=>[B(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`data-active`,`data-disabled`,`as`,`as-child`])]),_:3}))}}),[Qp,$p]=fp(`TabsRoot`),em=z({__name:`TabsRoot`,props:{defaultValue:{type:null,required:!1},orientation:{type:String,required:!1,default:`horizontal`},dir:{type:String,required:!1},activationMode:{type:String,required:!1,default:`automatic`},modelValue:{type:null,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{orientation:i,unmountOnHide:a,dir:o}=gn(n),s=Dp(o);Op();let c=Cp(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),l=I(),u=sn(new Set);return $p({modelValue:c,changeModelValue:e=>{c.value=e},orientation:i,dir:s,unmountOnHide:a,activationMode:n.activationMode,baseId:Ap(void 0,`reka-tabs`),tabsList:l,contentIds:u,registerContent:e=>{u.value=new Set([...u.value,e])},unregisterContent:e=>{let t=new Set(u.value);t.delete(e),u.value=t}}),(e,t)=>(W(),K(L(Lp),{dir:L(s),"data-orientation":L(i),"as-child":e.asChild,as:e.as},{default:R(()=>[B(e.$slots,`default`,{modelValue:L(c)})]),_:3},8,[`dir`,`data-orientation`,`as-child`,`as`]))}});function tm(e,t){return`${e}-trigger-${t}`}function nm(e,t){return`${e}-content-${t}`}var rm=z({__name:`TabsContent`,props:{value:{type:[String,Number],required:!0},forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{forwardRef:n}=Op(),r=Qp(),i=Z(()=>tm(r.baseId,t.value)),a=Z(()=>nm(r.baseId,t.value)),o=Z(()=>t.value===r.modelValue.value),s=I(o.value);return Ji(()=>{r.registerContent(t.value),requestAnimationFrame(()=>{s.value=!1})}),Zi(()=>{r.unregisterContent(t.value)}),(e,t)=>(W(),K(L(Pp),{present:e.forceMount||o.value,"force-mount":``},{default:R(({present:t})=>[J(L(Lp),{id:a.value,ref:L(n),"as-child":e.asChild,as:e.as,role:`tabpanel`,"data-state":o.value?`active`:`inactive`,"data-orientation":L(r).orientation.value,"aria-labelledby":i.value,hidden:!t,tabindex:`0`,style:k({animationDuration:s.value?`0s`:void 0})},{default:R(()=>[!L(r).unmountOnHide.value||t?B(e.$slots,`default`,{key:0}):X(`v-if`,!0)]),_:2},1032,[`id`,`as-child`,`as`,`data-state`,`data-orientation`,`aria-labelledby`,`hidden`,`style`])]),_:3},8,[`present`]))}}),im=z({__name:`TabsIndicator`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e,{expose:t}){let n=e,r=Qp();t({updateIndicatorStyle:s}),Op();let i=yp(),a=I({size:null,thickness:null,position:null}),o=I([]);Cr(()=>[r.modelValue.value,r?.dir.value],()=>{s()},{immediate:!0,flush:`post`}),xr(()=>{o.value=Array.from(r.tabsList.value?.querySelectorAll(`[role="tab"]`)||[])}),Sp(Z(()=>[r.tabsList.value,...o.value]),s);function s(){let e=r.tabsList.value?.querySelector(`[role="tab"][data-state="active"]`);e&&(r.orientation.value===`horizontal`?a.value={size:e.offsetWidth,thickness:e.offsetHeight,position:e.offsetLeft}:a.value={size:e.offsetHeight,thickness:e.offsetWidth,position:e.offsetTop})}return(e,t)=>L(i)&&typeof a.value.size==`number`?(W(),K(L(Lp),Cs({key:0},n,{style:{"--reka-tabs-indicator-size":`${a.value.size}px`,"--reka-tabs-indicator-thickness":`${a.value.thickness}px`,"--reka-tabs-indicator-position":`${a.value.position}px`}}),{default:R(()=>[B(e.$slots,`default`)]),_:3},16,[`style`])):X(`v-if`,!0)}}),am=z({__name:`TabsList`,props:{loop:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{loop:t}=gn(e),{forwardRef:n,currentElement:r}=Op(),i=Qp();return i.tabsList=r,(e,r)=>(W(),K(L(Xp),{"as-child":``,orientation:L(i).orientation.value,dir:L(i).dir.value,loop:L(t)},{default:R(()=>[J(L(Lp),{ref:L(n),role:`tablist`,"as-child":e.asChild,as:e.as,"aria-orientation":L(i).orientation.value},{default:R(()=>[B(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`aria-orientation`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),om=z({__name:`TabsTrigger`,props:{value:{type:[String,Number],required:!0},disabled:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,{forwardRef:n}=Op(),r=Qp(),i=Z(()=>tm(r.baseId,t.value)),a=Z(()=>r.contentIds.value.has(t.value)?nm(r.baseId,t.value):void 0),o=Z(()=>t.value===r.modelValue.value);return(e,t)=>(W(),K(L(Zp),{"as-child":``,focusable:!e.disabled,active:o.value},{default:R(()=>[J(L(Lp),{id:i.value,ref:L(n),role:`tab`,type:e.as===`button`?`button`:void 0,as:e.as,"as-child":e.asChild,"aria-selected":o.value?`true`:`false`,"aria-controls":a.value,"data-state":o.value?`active`:`inactive`,disabled:e.disabled,"data-disabled":e.disabled?``:void 0,"data-orientation":L(r).orientation.value,onMousedown:t[0]||=eu(t=>{!e.disabled&&t.ctrlKey===!1?L(r).changeModelValue(e.value):t.preventDefault()},[`left`]),onKeydown:t[1]||=nu(t=>L(r).changeModelValue(e.value),[`enter`,`space`]),onFocus:t[2]||=()=>{let t=L(r).activationMode!==`manual`;!o.value&&!e.disabled&&t&&L(r).changeModelValue(e.value)}},{default:R(()=>[B(e.$slots,`default`)]),_:3},8,[`id`,`type`,`as`,`as-child`,`aria-selected`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`data-orientation`])]),_:3},8,[`focusable`,`active`]))}}),sm={key:1,class:`text-micro font-mono px-1.5 rounded-full bg-active inline-flex h-5 min-w-5 items-center justify-center tabular-nums`},cm=z({__name:`LayoutTabs`,props:Ma({tabs:{},variant:{default:`underline`},lazy:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=eo(e,`modelValue`);return(n,r)=>(W(),K(L(em),{modelValue:t.value,"onUpdate:modelValue":r[0]||=e=>t.value=e,class:A(e.variant===`segment`?``:`border-b border-base`)},{default:R(()=>[J(L(am),{class:A([`flex items-center relative`,e.variant===`segment`?`gap-1 p-1 rounded-lg bg-sunken w-max`:`gap-1`])},{default:R(()=>[(W(!0),G(H,null,da(e.tabs,t=>(W(),K(L(om),{key:t.value,value:t.value,as:t.href?`a`:`button`,href:t.href,disabled:t.disabled,class:A([`text-sm color-muted outline-none flex gap-1.5 transition items-center relative disabled:op50 focus-visible:ring-2 focus-visible:ring-primary-500/40`,e.variant===`segment`?`px-3 py-1 rounded-md data-[state=active]:bg-raised data-[state=active]:color-base data-[state=active]:shadow-sm`:`px-3 py-2 -mb-px border-b-2 border-transparent hover:color-base data-[state=active]:color-active data-[state=active]:border-primary-500 dark:data-[state=active]:border-primary-400`])},{default:R(()=>[t.icon?(W(),G(`span`,{key:0,class:A(t.icon),"aria-hidden":`true`},null,2)):X(``,!0),Y(` `+j(t.label??t.value)+` `,1),t.count==null?X(``,!0):(W(),G(`span`,sm,j(t.count),1))]),_:2},1032,[`value`,`as`,`href`,`disabled`,`class`]))),128)),e.variant===`underline`?(W(),K(L(im),{key:0,class:`rounded-full bg-primary-500 h-0.5 w-[--reka-tabs-indicator-size] translate-x-[--reka-tabs-indicator-position] transition-all duration-200 bottom-0 left-0 absolute`})):X(``,!0)]),_:1},8,[`class`]),B(n.$slots,`default`),(W(!0),G(H,null,da(e.tabs,t=>(W(),G(H,{key:`panel-${t.value}`},[n.$slots[t.value]?(W(),K(L(rm),{key:0,value:t.value,"force-mount":!e.lazy||void 0,class:`py-3 outline-none focus-visible:ring-2 focus-visible:ring-primary-500/40`},{default:R(()=>[B(n.$slots,t.value)]),_:2},1032,[`value`,`force-mount`])):X(``,!0)],64))),128))]),_:3},8,[`modelValue`,`class`]))}}),lm={key:0,class:`flex-1 min-w-0`},um={key:1,class:`flex gap-1 items-center`},dm=z({__name:`LayoutToolbar`,props:{sticky:{type:Boolean,default:!0},glass:{type:Boolean,default:!0}},setup(e){return(t,n)=>(W(),G(`div`,{class:A([`px-3 py-2 border-b border-base flex gap-3 items-center`,[e.sticky?`sticky top-0 z-nav`:``,e.glass?`bg-glass`:`bg-base`]])},[B(t.$slots,`start`,{},()=>[B(t.$slots,`default`)]),t.$slots.search?(W(),G(`div`,lm,[B(t.$slots,`search`)])):X(``,!0),t.$slots.end?(W(),G(`div`,um,[B(t.$slots,`end`)])):X(``,!0)],2))}});function fm(...e){return e.filter(Boolean).join(` `)}function pm({variant:e=`primary`,size:t=`md`,class:n}={}){let r={primary:`btn-primary`,secondary:`btn-action`,outline:`btn-action`,ghost:`inline-flex items-center justify-center gap-1.5 rounded px2 py1 op75 hover:op100 hover:bg-active transition disabled:pointer-events-none disabled:op30!`,destructive:`btn-action text-error border-error/30!`,link:`inline-flex items-center gap-1.5 color-active hover:underline underline-offset-2`},i=t===`sm`?e===`primary`?`text-sm px-2.5! py-1!`:`text-sm`:t===`lg`?`text-base px-4! py-2!`:``;return fm(r[e],i,n)}var mm={connecting:{label:`connecting…`,dot:`bg-neutral-400 animate-pulse`},disconnected:{label:`disconnected`,dot:`bg-error`},unauthorized:{label:`unauthorized`,dot:`bg-warning`},error:{label:`error`,dot:`bg-error`}};function hm(e,t){if(e===`connected`)return null;let n=mm[e];return{label:n.label,dot:fm(`inline-block size-1.5 rounded-full shrink-0`,n.dot),class:fm(`flex items-center gap-1.5 shrink-0 text-xs color-muted select-none`,t)}}var gm={connecting:{icon:`i-ph-plugs-connected-duotone`,title:`Connecting…`,body:`Establishing a connection to the devframe server.`,reloadable:!1,spin:!0},disconnected:{icon:`i-ph-plugs-duotone`,title:`Disconnected`,body:`Lost the connection to the devframe server. Reload once it is back up.`,reloadable:!0,spin:!1},unauthorized:{icon:`i-ph-lock-key-duotone`,title:`Not authorized`,body:`This client isn’t authorized. Reopen the link printed by your dev server, then reload.`,reloadable:!0,spin:!1},error:{icon:`i-ph-warning-octagon-duotone`,title:`Connection failed`,body:`Could not reach the devframe server.`,reloadable:!0,spin:!1}};function _m(e){return e===`connected`?null:gm[e]}function vm(e){return fm(`flex flex-col items-center justify-center gap-4 bg-base p-8 text-center`,e)}function ym(e=!1,t){return fm(`text-4xl color-active`,e&&`animate-pulse`,t)}function bm(e){return fm(`text-lg font-medium color-base`,e)}function xm(e){return fm(`max-w-sm text-sm color-muted`,e)}function Sm(e){return fm(`mt-1 max-w-sm break-words font-mono text-xs color-faint`,e)}var Cm=sn(null),wm=I(!1);function Tm(e){Cm.value=e,Pe(()=>{Cm.value===e&&(Cm.value=null)})}function Em(){async function e(){if(!(!Cm.value||wm.value)){wm.value=!0;try{await Cm.value()}finally{wm.value=!1}}}return{refresh:e,loading:wm}}var $={bus:{agentManifestChanged:`agent:manifest:changed`,agentToolRegistered:`agent:tool:registered`,agentToolUnregistered:`agent:tool:unregistered`,agentResourceRegistered:`agent:resource:registered`,agentResourceUnregistered:`agent:resource:unregistered`},client:{isTrustedUpdated:`rpc:is-trusted:updated`,error:`rpc:error`,connectionStatus:`connection:status`,connectionError:`connection:error`},broadcast:{authRevoked:`devframe:auth:revoked`,clientStateUpdated:`devframe:rpc:client-state:updated`,clientStatePatch:`devframe:rpc:client-state:patch`,streamingChunk:`devframe:streaming:chunk`,streamingEnd:`devframe:streaming:end`,streamingUploadCancel:`devframe:streaming:upload-cancel`},inPageChannel:{panelStateUpdated:`devframe:in-page:panel-state:updated`,panelStatePatch:`devframe:in-page:panel-state:patch`},postMessage:{remoteAssetsError:`devframe:remote-assets-error`,inPageChannel:`devframe:in-page-channel`}},Dm=`__connection.json`,Om=`__DEVFRAME_CONNECTION__`,km=`x-birpc-session`,Am=`__rpc-dump/index.json`,jm=`devframe:services`,Mm=`devframe_otp`,Nm=`devframe_auth_token`;$.postMessage.remoteAssetsError;function Pm(e){return dp(e)}var Fm=class{cacheMap=new Map;options;keySerializer;constructor(e){this.options=e,this.keySerializer=e.keySerializer||(e=>Pm(e))}updateOptions(e){this.options={...this.options,...e}}cached(e,t){let n=this.cacheMap.get(e);if(n)return n.get(this.keySerializer(t))}has(e,t){return this.cacheMap.get(e)?.has(this.keySerializer(t))??!1}apply(e,t){let n=this.cacheMap.get(e.m)||new Map;n.set(this.keySerializer(e.a),t),this.cacheMap.set(e.m,n)}validate(e){return this.options.functions.includes(e)}clear(e){e?this.cacheMap.delete(e):this.cacheMap.clear()}};function Im(e,t){let n=`\x1B[${e}m`,r=`\x1B[${t}m`;return((e,...t)=>{if(Array.isArray(e)&&`raw`in e){let i=e,a=``;for(let e=0;e<i.length;e++)a+=i[e],e<t.length&&(a+=String(t[e]));return`${n}${a}${r}`}return`${n}${String(e)}${r}`})}var Lm={blue:Im(34,39),cyan:Im(36,39),gray:Im(90,39),green:Im(32,39),red:Im(31,39),yellow:Im(33,39),bold:Im(1,22),dim:Im(2,22),reset:Im(0,0),underline:Im(4,24)};function Rm(e,...t){return typeof e==`function`?e(...t):e}var zm=Error.captureStackTrace,Bm=class e extends Error{name;code;docs;fix;sources;get why(){return this.message}constructor(t,n=e){super(t.why,{cause:t.cause}),this.code=this.name=t.code,this.fix=t.fix,this.docs=t.docs,this.sources=t.sources,zm?.(this,n)}toJSON(){return{name:this.name,why:this.why,fix:this.fix,docs:this.docs,sources:this.sources,cause:this.cause,stack:this.stack}}};function Vm(e,t){return typeof e==`string`?`${e}/${t.toLowerCase()}`:e?.(t)}function Hm(e){let t=e.reporters??[],n={},{docsBase:r}=e;for(let i of Object.keys(e.codes)){let a=e.codes[i],o=a.docs===!1?void 0:a.docs||Vm(r,i),s=(e={},n={})=>{let r=new Bm({code:i,why:Rm(a.why,e),fix:Rm(a.fix,e),docs:o,cause:e.cause,sources:e.sources},s);for(let e of t)e(r,n);return r};n[i]=s}return n}function Um(e){return t=>{let n=`${e.bold(e.red(`[${t.name}]`))} ${t.message}`,r=[];return t.fix&&r.push(`${e.dim(`fix:`)} ${t.fix}`),t.sources?.length&&r.push(`${e.dim(`sources:`)} ${t.sources.join(`, `)}`),t.docs&&r.push(`${e.dim(`see:`)} ${e.cyan(t.docs)}`),r.length===0?n:[n,...r.map((t,n)=>`${e.dim(n<r.length-1?`├▶`:`╰▶`)} ${t}`)].join(`
7
- `)}}var Wm=Um(Lm);function Gm(e,{method:t=`warn`}={}){console[t](Wm(e))}function Km(e){return Hm({...e,reporters:[Gm,...e.reporters??[]]})}var qm=Km({docsBase:`https://devfra.me/errors`,codes:{DF0019:{why:e=>`RPC function "${e.name}" has \`agent\` set but \`jsonSerializable\` is not \`true\`; MCP requires JSON-serializable data.`,fix:"Set `jsonSerializable: true` if the payload is JSON-safe, or remove `agent` to keep it RPC-only."},DF0020:{why:e=>`RPC function "${e.name}" declares \`jsonSerializable: true\` but the value at "${e.path}" is a ${e.type}.`,fix:"Either drop `jsonSerializable: true` (falls back to structured-clone) or change the value to a JSON-safe shape."},DF0021:{why:e=>`RPC function "${e.name}" is already registered`,fix:"Use the `force` parameter to overwrite an existing registration."},DF0022:{why:e=>`RPC function "${e.name}" is not registered. Use register() to add new functions.`},DF0023:{why:e=>`RPC function "${e.name}" is not registered`},DF0024:{why:e=>`Either handler or setup function must be provided for RPC function "${e.name}"`},DF0025:{why:e=>`Function "${e.name}" not found in dump store`},DF0026:{why:e=>`No dump match for "${e.name}" with args: ${e.args}`},DF0027:{why:e=>`Function "${e.name}" with type "${e.type}" cannot have dump configuration. Only "static" and "query" types support dumps.`},DF0028:{why:e=>`Function "${e.name}" with type "${e.type}" cannot use \`snapshot: true\`. Only "query" functions support this sugar; "static" functions have equivalent default behavior already.`,fix:"Remove `snapshot: true`, or change the function type to `query`."},DF0043:{why:e=>`RPC function "${e.name}" received an invalid argument at position ${e.index}: ${e.issues}`,fix:"Pass a value that satisfies the `args` schema declared for this function."},DF0044:{why:e=>`RPC function "${e.name}" returned a value that failed its \`returns\` schema: ${e.issues}`,fix:"Make the handler return a value that satisfies the `returns` schema, or relax the schema."}}});async function Jm(e,t){let n=e[`~standard`].validate(t);return n instanceof Promise?await n:n}function Ym(e){return e.map(e=>{let t=e.path?.map(e=>typeof e==`object`?e.key:e).join(`.`);return t?`${t}: ${e.message}`:e.message}).join(`; `)}async function Xm(e,t,n){let r=n.slice();if(!t||t.length===0)return r;for(let r=0;r<t.length;r++){let i=t[r];if(!i)continue;let a=await Jm(i,n[r]);if(a.issues)throw qm.DF0043({name:e,index:r,issues:Ym(a.issues)})}return r}async function Zm(e,t,n){if(!t)return n;let r=await Jm(t,n);if(r.issues)throw qm.DF0044({name:e,issues:Ym(r.issues)});return n}async function Qm(e,t){if(!e.setup)return{};if(typeof t==`object`&&t){e.__cache??=new WeakMap;let n=e.__cache,r=n.get(t);return r||(r=Promise.resolve(e.setup(t)),r.catch(()=>{n.get(t)===r&&n.delete(t)}),n.set(t,r)),await r}if(!e.__promise){let n=Promise.resolve(e.setup(t));n.catch(()=>{e.__promise===n&&(e.__promise=void 0)}),e.__promise=n}return await e.__promise}async function $m(e,t){let n=e.handler;if(!n){let r=await Qm(e,t);if(!r.handler)throw qm.DF0024({name:e.name});n=r.handler}let r=e.args,i=e.returns;if(!r&&!i)return n;let a=n;return async(...t)=>{let n=await Xm(e.name,r,t),o=await a(...n);return await Zm(e.name,i,o)}}var eh=class{context;definitions=new Map;functions;_onChanged=[];constructor(e){this.context=e;let t=this.definitions,n=this;this.functions=new Proxy({},{get(e,r){let i=t.get(r);if(i)return $m(i,n.context)},has(e,n){return t.has(n)},getOwnPropertyDescriptor(e,n){return{value:t.get(n)?.handler,configurable:!0,enumerable:!0}},ownKeys(){return Array.from(t.keys())}})}register(e,t=!1){if(this.definitions.has(e.name)&&!t)throw qm.DF0021({name:e.name});th(e),this.definitions.set(e.name,e),this._onChanged.forEach(t=>t(e.name))}update(e,t=!1){if(!this.definitions.has(e.name)&&!t)throw qm.DF0022({name:e.name});th(e),this.definitions.set(e.name,e),this._onChanged.forEach(t=>t(e.name))}onChanged(e){return this._onChanged.push(e),()=>{let t=this._onChanged.indexOf(e);t!==-1&&this._onChanged.splice(t,1)}}async getHandler(e){return await $m(this.definitions.get(e),this.context)}getSchema(e){let t=this.definitions.get(e);if(!t)throw qm.DF0023({name:String(e)});return{args:t.args,returns:t.returns}}has(e){return this.definitions.has(e)}get(e){return this.definitions.get(e)}list(){return Array.from(this.definitions.keys())}};function th(e){if(e.agent&&e.jsonSerializable!==!0)throw qm.DF0019({name:e.name})}function nh(e,t=``){return JSON.stringify(e,function(e,n){let r=this,i=r==null?n:r[e];if(i===void 0){if(Array.isArray(r))throw ih(t,`undefined`,r,e);return n}return i!==null&&rh(i,r,e,t),n})}function rh(e,t,n,r){if(typeof e==`bigint`)throw ih(r,`BigInt`,t,n);if(typeof e!=`object`)return;if(e instanceof Map)throw ih(r,`Map`,t,n);if(e instanceof Set)throw ih(r,`Set`,t,n);if(e instanceof Date)throw ih(r,`Date`,t,n);if(Array.isArray(e))return;let i=Object.getPrototypeOf(e);if(i!==null&&i!==Object.prototype)throw ih(r,e.constructor?.name??`class instance`,t,n)}function ih(e,t,n,r){let i=ah(n,r);return qm.DF0020({name:e||`<anonymous>`,type:t,path:i})}function ah(e,t){return Array.isArray(e)?`[${t}]`:t===``?`<root>`:t}function oh(){let e={};function t(t,...n){let r=e[t]||[];for(let e=0,t=r.length;e<t;e++){let t=r[e];t&&t(...n)}}function n(n,...r){t(n,...r),delete e[n]}function r(t,n){return(e[t]||=[]).push(n),()=>{e[t]=e[t]?.filter(e=>n!==e)}}function i(e,t){let n=r(e,((...e)=>(n(),t(...e))));return n}return{_listeners:e,emit:t,emitOnce:n,on:r,once:i}}String.fromCharCode;var sh=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,ch=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,lh=/^([/\\]\s*){2,}[^/\\]/,uh=/\/$|\/\?|\/#/,dh=/^\.?\//;function fh(e,t={}){return typeof t==`boolean`&&(t={acceptRelative:t}),t.strict?sh.test(e):ch.test(e)||(t.acceptRelative?lh.test(e):!1)}function ph(e=``,t){return t?uh.test(e):e.endsWith(`/`)}function mh(e=``,t){if(!t)return(ph(e)?e.slice(0,-1):e)||`/`;if(!ph(e,!0))return e||`/`;let n=e,r=``,i=e.indexOf(`#`);i!==-1&&(n=e.slice(0,i),r=e.slice(i));let[a,...o]=n.split(`?`);return((a.endsWith(`/`)?a.slice(0,-1):a)||`/`)+(o.length>0?`?${o.join(`?`)}`:``)+r}function hh(e=``,t){if(!t)return e.endsWith(`/`)?e:e+`/`;if(ph(e,!0))return e||`/`;let n=e,r=``,i=e.indexOf(`#`);if(i!==-1&&(n=e.slice(0,i),r=e.slice(i),!n))return r;let[a,...o]=n.split(`?`);return a+`/`+(o.length>0?`?${o.join(`?`)}`:``)+r}function gh(e,t){if(_h(t)||fh(e))return e;let n=mh(t);if(e.startsWith(n)){let t=e[n.length];if(!t||t===`/`||t===`?`)return e}return yh(n,e)}function _h(e){return!e||e===`/`}function vh(e){return e&&e!==`/`}function yh(e,...t){let n=e||``;for(let e of t.filter(e=>vh(e)))if(n){let t=e.replace(dh,``);n=hh(n)+t}else n=e;return n}function bh(e,t){let n=e.match(ch);return n||=e.match(/^\/{2,}/),n?t+e.slice(n[0].length):t+e}var xh=`__DEVFRAME_CONNECTION_META__`,Sh=`__DEVFRAME_CONNECTION_AUTH_TOKEN__`;function Ch(e){let t=[()=>window?.[e],()=>globalThis?.[e],()=>parent.window?.[e]];for(let e of t)try{let t=e();if(t)return t}catch{}}function wh(){return Ch(Om)}function Th(){return Ch(xh)}function Eh(e){if(e)return e;try{let e=localStorage.getItem(Sh);if(e)return e}catch{}return Ch(Sh)}function Dh(e){globalThis[Om]=e,globalThis[xh]={...e.connectionMeta,baseUrl:e.metaBaseUrl},e.authToken&&Oh(e.authToken)}function Oh(e){try{localStorage.setItem(Sh,e)}catch{}globalThis[Sh]=e;let t=wh();t&&(globalThis[Om]={...t,authToken:e})}function kh(e){let t=gh(Dm,e);try{return new URL(t,globalThis.location?.href).href}catch{return t}}function Ah(e,t){return t&&t!==e.authToken?{...e,authToken:t}:e}function jh(){let e=wh();if(e)return Ah(e,Eh()??e.authToken??e.connectionMeta.authToken);let t=Th();if(t)return{connectionMeta:t,metaBaseUrl:t.baseUrl??kh(`./`),authToken:Eh(t.authToken)}}async function Mh(e={}){if(e.connection){let t=Ah(e.connection,Eh(e.authToken??e.connection.authToken??e.connection.connectionMeta.authToken));return Dh(t),t}let t=Array.isArray(e.baseURL)?e.baseURL:[e.baseURL??`./`];if(e.connectionMeta){let n={connectionMeta:e.connectionMeta,metaBaseUrl:kh(t[0]??`./`),authToken:Eh(e.authToken??e.connectionMeta.authToken)};return Dh(n),n}let n=jh();if(n){let t=Ah(n,Eh(e.authToken??n.authToken??n.connectionMeta.authToken));return Dh(t),t}let r=[];for(let n of t){let t=gh(Dm,n),i=kh(n);try{let n=await fetch(t);if(!n.ok)throw Error(`Failed to fetch connection meta from ${i}: ${n.status}`);let r=await n.json(),a={connectionMeta:r,metaBaseUrl:n.url||i,authToken:Eh(e.authToken??r.authToken)};return Dh(a),a}catch(e){r.push(e)}}throw Error(`Failed to get connection meta from ${t.join(`, `)}`,{cause:r})}var Nh=class extends Error{name=`DevframeConnectionError`;kind;constructor(e,t,n){super(t,n),this.kind=e}};function Ph(e=Mm){try{let t=globalThis.location?.hash?.replace(/^#/,``)??``;return new URLSearchParams(t).get(e)||void 0}catch{return}}function Fh(e){try{let t=new URL(globalThis.location.href),n=new URLSearchParams(t.hash.replace(/^#/,``));if(!n.has(e))return;n.delete(e),t.hash=n.toString(),globalThis.history?.replaceState(globalThis.history.state,``,t.href)}catch{}}function Ih(e=Mm){let t=Ph(e);return t&&Fh(e),t}async function Lh(e,t={}){let n=Ih(t.param??`devframe_otp`);return n?e.isTrusted?!0:e.requestTrustWithCode(n):!1}function Rh(e){let t={},n=new WeakMap,r,i=()=>(r??=e.sharedState.get(jm,{initialValue:{}}).then(e=>(t=e.value(),e.on(`updated`,e=>{t=e}),e)),r);return i(),{state:i,has:e=>e in t,keys:()=>Object.keys(t),get:r=>{let i=t[r];if(!i)return;let a=n.get(i);return a||(a={...i,rpc:e.scope(i.scope).rpc},n.set(i,a)),a}}}var zh=Symbol.for(`immer-nothing`),Bh=Symbol.for(`immer-draftable`),Vh=Symbol.for(`immer-state`);function Hh(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Uh=Object,Wh=Uh.getPrototypeOf,Gh=`constructor`,Kh=`prototype`,qh=`configurable`,Jh=`enumerable`,Yh=`writable`,Xh=`value`,Zh=e=>!!e&&!!e[Vh];function Qh(e){return e?tg(e)||cg(e)||!!e[Bh]||!!e[Gh]?.[Bh]||lg(e)||ug(e):!1}var $h=Uh[Kh][Gh].toString(),eg=new WeakMap;function tg(e){if(!e||!dg(e))return!1;let t=Wh(e);if(t===null||t===Uh[Kh])return!0;let n=Uh.hasOwnProperty.call(t,Gh)&&t[Gh];if(n===Object)return!0;if(!fg(n))return!1;let r=eg.get(n);return r===void 0&&(r=Function.toString.call(n),eg.set(n,r)),r===$h}function ng(e,t,n=!0){rg(e)===0?(n?Reflect.ownKeys(e):Uh.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function rg(e){let t=e[Vh];return t?t.type_:cg(e)?1:lg(e)?2:ug(e)?3:0}var ig=(e,t,n=rg(e))=>n===2?e.has(t):Uh[Kh].hasOwnProperty.call(e,t),ag=(e,t,n=rg(e))=>n===2?e.get(t):e[t],og=(e,t,n,r=rg(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function sg(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var cg=Array.isArray,lg=e=>e instanceof Map,ug=e=>e instanceof Set,dg=e=>typeof e==`object`,fg=e=>typeof e==`function`,pg=e=>typeof e==`boolean`;function mg(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var hg=e=>dg(e)?e?.[Vh]:null,gg=e=>e.copy_||e.base_,_g=e=>e.modified_?e.copy_:e.base_;function vg(e,t){if(lg(e))return new Map(e);if(ug(e))return new Set(e);if(cg(e))return Array[Kh].slice.call(e);let n=tg(e);if(t===!0||t===`class_only`&&!n){let t=Uh.getOwnPropertyDescriptors(e);delete t[Vh];let n=Reflect.ownKeys(t);for(let r=0;r<n.length;r++){let i=n[r],a=t[i];a[Yh]===!1&&(a[Yh]=!0,a[qh]=!0),(a.get||a.set)&&(t[i]={[qh]:!0,[Yh]:!0,[Jh]:a[Jh],[Xh]:e[i]})}return Uh.create(Wh(e),t)}{let t=Wh(e);if(t!==null&&n)return{...e};let r=Uh.create(t);return Uh.assign(r,e)}}function yg(e,t=!1){return Sg(e)||Zh(e)||!Qh(e)?e:(rg(e)>1&&Uh.defineProperties(e,{set:xg,add:xg,clear:xg,delete:xg}),Uh.freeze(e),t&&ng(e,(e,t)=>{yg(t,!0)},!1),e)}function bg(){Hh(2)}var xg={[Xh]:bg};function Sg(e){return e===null||!dg(e)||Uh.isFrozen(e)}var Cg=`MapSet`,wg=`Patches`,Tg=`ArrayMethods`,Eg={};function Dg(e){let t=Eg[e];return t||Hh(0,e),t}var Og=e=>!!Eg[e];function kg(e,t){Eg[e]||(Eg[e]=t)}var Ag,jg=()=>Ag,Mg=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Og(Cg)?Dg(Cg):void 0,arrayMethodsPlugin_:Og(Tg)?Dg(Tg):void 0});function Ng(e,t){t&&(e.patchPlugin_=Dg(wg),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Pg(e){Fg(e),e.drafts_.forEach(Lg),e.drafts_=null}function Fg(e){e===Ag&&(Ag=e.parent_)}var Ig=e=>Ag=Mg(Ag,e);function Lg(e){let t=e[Vh];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Rg(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[Vh].modified_&&(Pg(t),Hh(4)),Qh(e)&&(e=zg(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[Vh].base_,e,t)}else e=zg(t,n);return Bg(t,e,!0),Pg(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===zh?void 0:e}function zg(e,t){if(Sg(t))return t;let n=t[Vh];if(!n)return Jg(t,e.handledSet_,e);if(!Hg(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){let{callbacks_:t}=n;if(t)for(;t.length>0;)t.pop()(e);Kg(n,e)}return n.copy_}function Bg(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&yg(t,n)}function Vg(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Hg=(e,t)=>e.scope_===t,Ug=[];function Wg(e,t,n,r){let i=gg(e),a=e.type_;if(r!==void 0&&ag(i,r,a)===t){og(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;ng(i,(e,n)=>{if(Zh(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??Ug;for(let e of o)og(i,e,n,a)}function Gg(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!Hg(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=_g(i);Wg(e,i.draft_??i,a,n),Kg(i,r)})}function Kg(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){let{patchPlugin_:n}=t;if(n){let r=n.getPath(e);r&&n.generatePatches_(e,r,t)}Vg(e)}}function qg(e,t,n){let{scope_:r}=e;if(Zh(n)){let i=n[Vh];Hg(i,r)&&i.callbacks_.push(function(){r_(e),Wg(e,n,_g(i),t)})}else Qh(n)&&e.callbacks_.push(function(){let i=gg(e);e.type_===3?i.has(n)&&Jg(n,r.handledSet_,r):ag(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Jg(ag(e.copy_,t,e.type_),r.handledSet_,r)})}function Jg(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Zh(e)||t.has(e)||!Qh(e)||Sg(e)?e:(t.add(e),ng(e,(r,i)=>{if(Zh(i)){let t=i[Vh];Hg(t,n)&&(og(e,r,_g(t),e.type_),Vg(t))}else Qh(i)&&Jg(i,t,n)}),e)}function Yg(e,t){let n=cg(e),r={type_:+!!n,scope_:t?t.scope_:jg(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0},i=r,a=Xg;n&&(i=[r],a=Zg);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var Xg={get(e,t){if(t===Vh)return e;let n=e.scope_.arrayMethodsPlugin_,r=e.type_===1&&typeof t==`string`;if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);let i=gg(e);if(!ig(i,t,e.type_))return e_(e,i,t);let a=i[t];if(e.finalized_||!Qh(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&mg(t))return a;if(a===Qg(e.base_,t)||$g(e,t,a)){r_(e);let n=e.type_===1?+t:t,r=a_(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in gg(e)},ownKeys(e){return Reflect.ownKeys(gg(e))},set(e,t,n){let r=t_(gg(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=Qg(gg(e),t),i=r?.[Vh];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(sg(n,r)&&(n!==void 0||ig(e.base_,t,e.type_)))return!0;r_(e),n_(e)}return e.copy_[t]===n&&(n!==void 0||ig(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),qg(e,t,n),!0)},deleteProperty(e,t){return r_(e),Qg(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),n_(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=gg(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Yh]:!0,[qh]:e.type_!==1||t!==`length`,[Jh]:r[Jh],[Xh]:n[t]}},defineProperty(){Hh(11)},getPrototypeOf(e){return Wh(e.base_)},setPrototypeOf(){Hh(12)}},Zg={};for(let e in Xg){let t=Xg[e];Zg[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}Zg.deleteProperty=function(e,t){return Zg.set.call(this,e,t,void 0)},Zg.set=function(e,t,n){return Xg.set.call(this,e[0],t,n,e[0])};function Qg(e,t){let n=e[Vh];return(n?gg(n):e)[t]}function $g(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||e.assigned_?.get(t)||!Qh(n)||n[Vh]?!1:e.baseRefs_.has(n)}function e_(e,t,n){let r=t_(t,n);return r?Xh in r?r[Xh]:r.get?.call(e.draft_):void 0}function t_(e,t){if(!(t in e))return;let n=Wh(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=Wh(n)}}function n_(e){e.modified_||(e.modified_=!0,e.parent_&&n_(e.parent_))}function r_(e){e.copy_||=(e.assigned_=new Map,vg(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var i_=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(fg(e)&&!fg(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}fg(t)||Hh(6),n!==void 0&&!fg(n)&&Hh(7);let r;if(Qh(e)){let i=Ig(this),a=a_(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?Pg(i):Fg(i)}return Ng(i,n),Rg(r,i)}if(!e||!dg(e)){if(r=t(e),r===void 0&&(r=e),r===zh&&(r=void 0),this.autoFreeze_&&yg(r,!0),n){let t=[],i=[];Dg(wg).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}Hh(1,e)},this.produceWithPatches=(e,t)=>{if(fg(e))return(t,...n)=>this.produceWithPatches(t,t=>e(t,...n));let n,r;return[this.produce(e,t,(e,t)=>{n=e,r=t}),n,r]},pg(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),pg(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),pg(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Qh(e)||Hh(8),Zh(e)&&(e=o_(e));let t=Ig(this),n=a_(t,e,void 0);return n[Vh].isManual_=!0,Fg(t),n}finishDraft(e,t){let n=e&&e[Vh];(!n||!n.isManual_)&&Hh(9);let{scope_:r}=n;return Ng(r,t),Rg(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){let r=t[n];if(r.path.length===0&&r.op===`replace`){e=r.value;break}}n>-1&&(t=t.slice(n+1));let r=Dg(wg).applyPatches_;return Zh(e)?r(e,t):this.produce(e,e=>r(e,t))}};function a_(e,t,n,r){let[i,a]=lg(t)?Dg(Cg).proxyMap_(t,n):ug(t)?Dg(Cg).proxySet_(t,n):Yg(t,n);return(n?.scope_??jg()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?Gg(n,a,r):a.callbacks_.push(function(e){e.mapSetPlugin_?.fixSetContents(a);let{patchPlugin_:t}=e;a.modified_&&t&&t.generatePatches_(a,[],e)}),i}function o_(e){return Zh(e)||Hh(10,e),s_(e)}function s_(e){if(!Qh(e)||Sg(e))return e;let t=e[Vh],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=vg(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=vg(e,!0);return ng(n,(e,t)=>{og(n,e,s_(t))},r),t&&(t.finalized_=!1),n}function c_(){function e(n,r=[]){if(n.key_!==void 0){let e=n.parent_.copy_??n.parent_.base_,t=hg(ag(e,n.key_)),i=ag(e,n.key_);if(i===void 0||i!==n.draft_&&i!==n.base_&&i!==n.copy_||t!=null&&t.base_!==n.base_)return null;let a=n.parent_.type_===3,o;if(a){let e=n.parent_;o=Array.from(e.drafts_.keys()).indexOf(n.key_)}else o=n.key_;if(!(a&&e.size>o||ig(e,o)))return null;r.push(o)}if(n.parent_)return e(n.parent_,r);r.reverse();try{t(n.copy_,r)}catch{return null}return r}function t(e,t){let n=e;for(let e=0;e<t.length-1;e++){let r=t[e];if(n=ag(n,r),!dg(n)||n===null)throw Error(`Cannot resolve path at '${t.join(`/`)}'`)}return n}let n=`replace`,r=`remove`;function i(e,t,n){if(e.scope_.processedForPatches_.has(e))return;e.scope_.processedForPatches_.add(e);let{patches_:r,inversePatches_:i}=n;switch(e.type_){case 0:case 2:return o(e,t,r,i);case 1:return a(e,t,r,i);case 3:return s(e,t,r,i)}}function a(e,t,i,a){let{base_:o,assigned_:s}=e,c=e.copy_;c.length<o.length&&([o,c]=[c,o],[i,a]=[a,i]);let l=e.allIndicesReassigned_===!0;for(let e=0;e<o.length;e++){let r=c[e],u=o[e];if((l||s?.get(e.toString()))&&r!==u){let o=r?.[Vh];if(o&&o.modified_)continue;let s=t.concat([e]);i.push({op:n,path:s,value:d(r)}),a.push({op:n,path:s,value:d(u)})}}for(let e=o.length;e<c.length;e++){let n=t.concat([e]);i.push({op:`add`,path:n,value:d(c[e])})}for(let e=c.length-1;o.length<=e;--e){let n=t.concat([e]);a.push({op:r,path:n})}}function o(e,t,i,a){let{base_:o,copy_:s,type_:c}=e;ng(e.assigned_,(e,l)=>{let u=ag(o,e,c),f=ag(s,e,c),p=l?ig(o,e)?n:`add`:r;if(u===f&&p===n)return;let m=t.concat(e);i.push(p===r?{op:p,path:m}:{op:p,path:m,value:d(f)}),a.push(p===`add`?{op:r,path:m}:p===r?{op:`add`,path:m,value:d(u)}:{op:n,path:m,value:d(u)})})}function s(e,t,n,i){let{base_:a,copy_:o}=e,s=0;a.forEach(e=>{if(!o.has(e)){let a=t.concat([s]);n.push({op:r,path:a,value:e}),i.unshift({op:`add`,path:a,value:e})}s++}),s=0,o.forEach(e=>{if(!a.has(e)){let a=t.concat([s]);n.push({op:`add`,path:a,value:e}),i.unshift({op:r,path:a,value:e})}s++})}function c(e,t,r){let{patches_:i,inversePatches_:a}=r;i.push({op:n,path:[],value:t===zh?void 0:t}),a.push({op:n,path:[],value:e})}function l(e,t){return t.forEach(t=>{let{path:i,op:a}=t,o=e;for(let e=0;e<i.length-1;e++){let t=rg(o),n=i[e];typeof n!=`string`&&typeof n!=`number`&&(n=``+n),(t===0||t===1)&&(n===`__proto__`||n===Gh)&&Hh(19),fg(o)&&n===Kh&&Hh(19),o=ag(o,n),(o===null||!dg(o))&&Hh(18,i.join(`/`))}let s=rg(o),c=u(t.value),l=i[i.length-1];switch(a){case n:switch(s){case 2:return o.set(l,c);case 3:Hh(16);default:return o[l]=c}case`add`:switch(s){case 1:return l===`-`?o.push(c):o.splice(l,0,c);case 2:return o.set(l,c);case 3:return o.add(c);default:return o[l]=c}case r:switch(s){case 1:return o.splice(l,1);case 2:return o.delete(l);case 3:return o.delete(t.value);default:return delete o[l]}default:Hh(17,a)}}),e}function u(e){if(!Qh(e))return e;if(cg(e))return e.map(u);if(lg(e))return new Map(Array.from(e.entries()).map(([e,t])=>[e,u(t)]));if(ug(e))return new Set(Array.from(e).map(u));let t=Object.create(Wh(e));for(let n in e)t[n]=u(e[n]);return ig(e,Bh)&&(t[Bh]=e[Bh]),t}function d(e){return Zh(e)?u(e):e}kg(wg,{applyPatches_:l,generatePatches_:i,generateReplacementPatches_:c,getPath:e})}globalThis.Iterator?.from;var l_=new i_,u_=l_.produce,d_=l_.produceWithPatches.bind(l_),f_=l_.applyPatches.bind(l_),p_=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`;function m_(e=21){let t=``,n=e;for(;n--;)t+=p_[Math.random()*64|0];return t}var h_=1e3;function g_(e,t){if(e.add(t),e.size>h_){let t=e.values().next().value;t!==void 0&&e.delete(t)}}function __(e){let{enablePatches:t=!1}=e;t&&c_();let n=oh(),r=e.initialValue,i=new Set;return{on:n.on,value:()=>r,patch:(e,t=m_())=>{i.has(t)||(c_(),r=f_(r,e),g_(i,t),n.emit(`updated`,r,void 0,t))},mutate:(e,a=m_())=>{if(!i.has(a)){if(g_(i,a),t){let[t,i]=d_(r,e);r=t,n.emit(`updated`,r,i,a)}else r=u_(r,e),n.emit(`updated`,r,void 0,a)}},syncIds:i}}function v_(e){let t=new Map,n=new Map,r=new Map,i=new Set,a=e.connectionMeta.backend===`static`;function o(e,t){let n=r.get(e);return n&&typeof n==`object`&&!Array.isArray(n)&&typeof t==`object`&&!Array.isArray(t)?{...n,...t}:t}e.client.register({name:$.broadcast.clientStateUpdated,type:`event`,handler:(e,n,r)=>{let i=t.get(e);!i||i.syncIds.has(r)||i.mutate(()=>o(e,n),r)}}),e.client.register({name:$.broadcast.clientStatePatch,type:`event`,handler:(e,n,r)=>{let i=t.get(e);!i||i.syncIds.has(r)||i.patch(n,r)}});function s(t,n){let r=[];return r.push(n.on(`updated`,(n,r,i)=>{a||(r?e.callEvent(`devframe:rpc:server-state:patch`,t,r,i):e.callEvent(`devframe:rpc:server-state:set`,t,n,i))})),()=>{for(let e of r)e()}}return{keys:()=>Array.from(t.keys()),onKeyAdded(e){return i.add(e),()=>{i.delete(e)}},delete(e){let i=n.get(e);n.delete(e);let a=t.delete(e);return r.delete(e),i?.(),a},get:async(c,l)=>{if(l?.initialValue!==void 0&&r.set(c,l.initialValue),t.has(c))return t.get(c);let u=__({initialValue:l?.initialValue,enablePatches:!1});async function d(){if(a||e.callEvent(`devframe:rpc:server-state:subscribe`,c),l?.initialValue!==void 0){t.set(c,u);for(let e of i)e(c);return e.call(`devframe:rpc:server-state:get`,c).then(e=>{e!==void 0&&u.mutate(()=>o(c,e))}).catch(e=>{console.error(`Error getting server state`,e)}),n.set(c,s(c,u)),u}{let r=await e.call(`devframe:rpc:server-state:get`,c);u.mutate(()=>o(c,r)),t.set(c,u);for(let e of i)e(c);return n.set(c,s(c,u)),u}}return new Promise(t=>{if(e.isTrusted)d().then(t);else{t(u);let n=!1;e.events.on($.client.isTrustedUpdated,e=>{e&&!n&&(n=!0,d())})}})}}}var y_=typeof self==`object`?self:globalThis,b_=new Set([`Error`,`EvalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`,`AggregateError`]),x_=new Set([`Boolean`,`Number`,`String`,`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float16Array`,`Float32Array`,`Float64Array`,`BigInt64Array`,`BigUint64Array`]);function S_(e,t){let n=(t,n)=>(e.set(n,t),t),r=i=>{if(e.has(i))return e.get(i);let[a,o]=t[i];switch(a){case 0:case-1:return n(o,i);case 1:{let e=n([],i);for(let t of o)e.push(r(t));return e}case 2:{let e=n({},i);for(let[t,n]of o)e[r(t)]=r(n);return e}case 3:return n(new Date(o),i);case 4:{let{source:e,flags:t}=o;return n(new RegExp(e,t),i)}case 5:{let e=n(new Map,i);for(let[t,n]of o)e.set(r(t),r(n));return e}case 6:{let e=n(new Set,i);for(let t of o)e.add(r(t));return e}case 7:{let{name:e,message:t}=o,r=b_.has(e)?y_[e]:void 0;return n(new(r??y_.Error)(t),i)}case 8:return n(BigInt(o),i);case`BigInt`:return n(Object(BigInt(o)),i);case`ArrayBuffer`:return n(new Uint8Array(o).buffer,o);case`DataView`:{let{buffer:e}=new Uint8Array(o);return n(new DataView(e),o)}}if(typeof a==`string`&&x_.has(a))return n(new y_[a](o),i);throw TypeError(`unable to deserialize unsafe or unknown type: ${String(a)}`)};return r}function C_(e){return S_(new Map,e)(0)}var w_=``,{toString:T_}={},{keys:E_}=Object;function D_(e){let t=typeof e;if(t!==`object`||!e)return[0,t];let n=T_.call(e).slice(8,-1);switch(n){case`Array`:return[1,w_];case`Object`:return[2,w_];case`Date`:return[3,w_];case`RegExp`:return[4,w_];case`Map`:return[5,w_];case`Set`:return[6,w_];case`DataView`:return[1,n]}return n.includes(`Array`)?[1,n]:n.includes(`Error`)?[7,n]:[2,n]}function O_([e,t]){return e===0&&(t===`function`||t===`symbol`)}function k_(e,t,n,r){let i=(e,t)=>{let i=r.push(e)-1;return n.set(t,i),i},a=r=>{if(n.has(r))return n.get(r);let[o,s]=D_(r);switch(o){case 0:{let t=r;switch(s){case`bigint`:o=8,t=r.toString();break;case`function`:case`symbol`:if(e)throw TypeError(`unable to serialize ${s}`);t=null;break;case`undefined`:return i([-1],r)}return i([o,t],r)}case 1:{if(s){let e=r;return s===`DataView`?e=new Uint8Array(r.buffer):s===`ArrayBuffer`&&(e=new Uint8Array(r)),i([s,[...e]],r)}let e=[],t=i([o,e],r);for(let t of r)e.push(a(t));return t}case 2:{if(s)switch(s){case`BigInt`:return i([s,r.toString()],r);case`Boolean`:case`Number`:case`String`:return i([s,r.valueOf()],r)}if(t&&`toJSON`in r)return a(r.toJSON());let n=[],c=i([o,n],r);for(let t of E_(r))(e||!O_(D_(r[t])))&&n.push([a(t),a(r[t])]);return c}case 3:return i([o,r.toISOString()],r);case 4:{let{source:e,flags:t}=r;return i([o,{source:e,flags:t}],r)}case 5:{let t=[],n=i([o,t],r);for(let[n,i]of r)(e||!(O_(D_(n))||O_(D_(i))))&&t.push([a(n),a(i)]);return n}case 6:{let t=[],n=i([o,t],r);for(let n of r)(e||!O_(D_(n)))&&t.push(a(n));return n}}let{message:c}=r;return i([o,{name:s,message:c}],r)};return a}function A_(e,t={}){let n=[];return k_(!(t.json||t.lossy),!!t.json,new Map,n)(e),n}var{parse:j_,stringify:M_}=JSON,N_={json:!0,lossy:!0};function P_(e){return C_(j_(e))}function F_(e){return M_(A_(e,N_))}function I_(e){return C_(e)}function L_(e){return F_(e)}function R_(e){return P_(e)}var z_=new Map;function B_(e=z_){let t=new Map;return{serialize:n=>{let r;return n.t===`q`?r=n.m:(r=t.get(n.i),t.delete(n.i)),!(n.t===`s`&&`e`in n)&&r&&e.get(r)?.jsonSerializable===!0?nh(n,r??``):`s:${L_(n)}`},deserialize:e=>{let n=e.startsWith(`s:`)?R_(e.slice(2)):JSON.parse(e);return n.t===`q`&&n.i&&n.m&&t.set(n.i,n.m),n}}}function V_(){}function H_(e){let t=e.search(/\n\n|\r\n\r\n/);if(!(t<0))return{frame:e.slice(0,t),rest:e.slice(t+(e[t]===`\r`?4:2))}}function U_(e){let t=`message`,n=[];for(let r of e.split(/\r?\n/))r.startsWith(`:`)||(r.startsWith(`event:`)?t=r.slice(6).trimStart():r.startsWith(`data:`)&&n.push(r.slice(5).replace(/^ /,``)));return{event:t,data:n}}function W_(e){let{onConnected:t=V_,onError:n=V_,onDisconnected:r=V_,definitions:i,fetch:a=globalThis.fetch.bind(globalThis)}=e,o=e.url;e.authToken&&(o=`${o}${o.includes(`?`)?`&`:`?`}${Nm}=${encodeURIComponent(e.authToken)}`);let s=B_(i),c=new AbortController,l=!1,u,d,f,p,m=new Promise((e,t)=>{f=e,p=t});m.catch(()=>{});function h(e){l||(l=!0,p(e),n(e),r())}function g(){l||(l=!0,p(Error(`Devframe SSE stream closed`)),r())}function _(e,n){if(e===`session`){f(n),t();return}u?.(n)}async function v(e){let t=e.getReader();d=t;let n=new TextDecoder,r=``;for(;;){let{done:e,value:i}=await t.read();if(e)break;for(r+=n.decode(i,{stream:!0});;){let e=H_(r);if(!e)break;r=e.rest;let{event:t,data:n}=U_(e.frame);n.length>0&&_(t,n.join(`
8
- `))}}g()}return(async()=>{try{let e=await a(o,{headers:{accept:`text/event-stream`},signal:c.signal});if(!e.ok||!e.body)throw Error(`Devframe SSE stream request failed: ${e.status}`);await v(e.body)}catch(e){if(c.signal.aborted){g();return}h(e instanceof Error?e:Error(String(e)))}})(),{close:()=>{l=!0,c.abort(),d?.cancel().catch(()=>{})},on:e=>{u=e},post:async e=>{let t;try{t=await m}catch{return}if(l){n(Error(`Devframe SSE channel is closed; message dropped`));return}try{let n=await a(o,{method:`POST`,headers:{"content-type":`text/plain; charset=utf-8`,[km]:t},body:e});if(n.status===200){let e=await n.text();e&&u?.(e);return}if(!n.ok)throw Error(`Devframe SSE POST failed: ${n.status}`)}catch(e){n(e instanceof Error?e:Error(String(e)))}},serialize:s.serialize,deserialize:s.deserialize}}function G_(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var K_=Math.random.bind(Math),q_=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`;function J_(e=21){let t=``,n=e;for(;n--;)t+=q_[K_()*64|0];return t}var Y_=6e4,X_=e=>e,Z_=X_,{clearTimeout:Q_,setTimeout:$_}=globalThis;function ev(e,t){let{post:n,on:r,off:i=()=>{},eventNames:a=[],serialize:o=X_,deserialize:s=Z_,resolver:c,bind:l=`rpc`,timeout:u=Y_,proxify:d=!0}=t,f=!1,p=new Map,m,h;async function g(e,r,i,a){if(f)throw Error(`[birpc] rpc is closed, cannot call "${e}"`);let s={m:e,a:r,t:`q`};a&&(s.o=!0);let c=async e=>n(o(e));if(i){await c(s);return}if(m)try{await m}finally{m=void 0}let{promise:l,resolve:d,reject:g}=G_(),_=J_();s.i=_;let v;async function y(n=s){return u>=0&&(v=$_(()=>{try{if(t.onTimeoutError?.call(h,e,r)!==!0)throw Error(`[birpc] timeout on calling "${e}"`)}catch(e){g(e)}p.delete(_)},u),typeof v==`object`&&(v=v.unref?.())),p.set(_,{resolve:d,reject:g,timeoutId:v,method:e}),await c(n),l}try{t.onRequest?await t.onRequest.call(h,s,y,d):await y()}catch(e){if(t.onGeneralError?.call(h,e)!==!0)throw e;return}finally{Q_(v),p.delete(_)}return l}let _={$call:(e,...t)=>g(e,t,!1),$callOptional:(e,...t)=>g(e,t,!1,!0),$callEvent:(e,...t)=>g(e,t,!0),$callRaw:e=>g(e.method,e.args,e.event,e.optional),$rejectPendingCalls:y,get $closed(){return f},get $meta(){return t.meta},$close:v,$functions:e};h=d?new Proxy({},{get(t,n){if(Object.hasOwn(_,n))return _[n];if(n===`then`&&!a.includes(`then`)&&!(`then`in e))return;let r=(...e)=>g(n,e,!0);if(a.includes(n))return r.asEvent=r,r;let i=(...e)=>g(n,e,!1);return i.asEvent=r,i}}):_;function v(e){f=!0,p.forEach(({reject:t,method:n})=>{let r=Error(`[birpc] rpc is closed, cannot call "${n}"`);if(e)return e.cause??=r,t(e);t(r)}),p.clear(),i(b)}function y(e){let t=Array.from(p.values()).map(({method:t,reject:n})=>e?e({method:t,reject:n}):n(Error(`[birpc]: rejected pending call "${t}".`)));return p.clear(),t}async function b(r,...i){let a;try{a=s(r)}catch(e){if(t.onGeneralError?.call(h,e)!==!0)throw e;return}if(a.t===`q`){let{m:r,a:s,o:u}=a,d,f,p=await(c?c.call(h,r,e[r]):e[r]);if(u&&(p||=()=>void 0),!p)f=Error(`[birpc] function "${r}" not found`);else try{d=await p.apply(l===`rpc`?h:e,s)}catch(e){f=e}if(a.i){if(f&&t.onFunctionError&&t.onFunctionError.call(h,f,r,s)===!0)return;if(!f)try{await n(o({t:`s`,i:a.i,r:d}),...i);return}catch(e){if(f=e,t.onGeneralError?.call(h,e,r,s)!==!0)throw e}try{await n(o({t:`s`,i:a.i,e:f}),...i)}catch(e){if(t.onGeneralError?.call(h,e,r,s)!==!0)throw e}}}else{let{i:e,r:t,e:n}=a,r=p.get(e);r&&(Q_(r.timeoutId),n?r.reject(n):r.resolve(t)),p.delete(e)}}return m=r(b),h}function tv(e,t){let{channel:n,rpcOptions:r={}}=t;return ev(e,{...n,timeout:-1,...r,proxify:!1})}function nv(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function rv(e){let{transport:t,authToken:n,connectionMeta:r,events:i,clientRpc:a,rpcOptions:o={},callTimeout:s=0}=e,c=!1,l=`connecting`,u=null,d=nv();function f(e,t=null){if(t?u=t:e===`connected`&&(u=null),e===l)return;let n=l;l=e,i.emit($.client.connectionStatus,e,n)}let p=new Set;function m(e){for(let t of[...p])t.reject(e)}function h(){return l===`disconnected`||l===`error`?new Nh(`connection`,`[devframe] Not connected to the devframe server`,{cause:u??void 0}):l===`unauthorized`?new Nh(`auth`,`[devframe] Not authorized by the devframe server`,{cause:u??void 0}):null}function g(e,t){return new Promise((n,r)=>{let a=!1,o,c={reject(e){a||(l(),i.emit($.client.error,e,t),r(e))}};function l(){a=!0,p.delete(c),o&&clearTimeout(o)}p.add(c),s>0&&(o=setTimeout(()=>{c.reject(new Nh(`timeout`,`[devframe] RPC call "${t}" timed out after ${s}ms`))},s)),e.then(e=>{a||(l(),n(e))},e=>{if(a)return;l();let n=e instanceof Error?e:Error(String(e));i.emit($.client.error,n,t),r(n)})})}let _=new Map;for(let e of r.jsonSerializableMethods??[])_.set(e,{jsonSerializable:!0});let v=e.createChannel({definitions:_,onError(e){f(`error`,e),i.emit($.client.connectionError,e),m(new Nh(`connection`,`[devframe] Connection to the devframe server failed`,{cause:e}))},onDisconnected(){l!==`error`&&f(`disconnected`),m(new Nh(`connection`,`[devframe] Disconnected from the devframe server`,{cause:u??void 0}))}}),y=tv(a.functions,{channel:v,rpcOptions:o});a.register({name:$.broadcast.authRevoked,type:`event`,handler:()=>{c=!1;let e=new Nh(`auth`,`[devframe] The devframe server revoked this client's trust`);f(`unauthorized`,e),i.emit($.client.connectionError,e),m(e),i.emit($.client.isTrustedUpdated,!1)}});let b=n;async function x(e){b=e;let t=await y.$call(`anonymous:devframe:auth`,{authToken:e,ua:navigator.userAgent,origin:location.origin});if(c=t.isTrusted,c)d.resolve(!0),f(`connected`);else{let e=new Nh(`auth`,`[devframe] The devframe server refused this client's credentials`);f(`unauthorized`,e),i.emit($.client.connectionError,e)}return i.emit($.client.isTrustedUpdated,c),t.isTrusted}async function S(e){let t=(await y.$call(`anonymous:devframe:auth:exchange`,{code:e,ua:navigator.userAgent,origin:location.origin}))?.authToken??null;return t&&(b=t,c=!0,d.resolve(!0),f(`connected`),i.emit($.client.isTrustedUpdated,!0)),t}async function C(){return c?!0:x(b??``)}async function w(e=6e4){if(c&&d.resolve(!0),e<=0)return d.promise;let t=()=>{};return await Promise.race([d.promise.then(t),new Promise((n,r)=>{let i=setTimeout(()=>{r(Error(`[devframe] Timeout waiting for rpc to be trusted`))},e);t=()=>clearTimeout(i)})]),c}return{transport:t,get isTrusted(){return c},get status(){return l},get connectionError(){return u},requestTrust:C,requestTrustWithToken:x,requestTrustWithCode:S,ensureTrusted:w,call:(...e)=>{let t=String(e[0]),n=h();return n?(i.emit($.client.error,n,t),Promise.reject(n)):g(y.$call(...e),t)},callEvent:(...e)=>{let t=h();if(t){i.emit($.client.error,t,String(e[0]));return}return y.$callEvent(...e)},callOptional:(...e)=>{let t=String(e[0]),n=h();return n?(i.emit($.client.error,n,t),Promise.reject(n)):g(y.$callOptional(...e),t)},close:()=>{v.close()}}}function iv(e,t,n){let r=(()=>{try{return new URL(t,n.href)}catch{return new URL(n.href)}})();if(e&&typeof e==`object`){if(e.host!=null||e.port!=null){let t=e.host??`${r.hostname}:${e.port}`;return new URL(e.path??`/`,`${r.protocol}//${t}`).href}return new URL(e.path??``,r).href}let i=e??``;return/^https?:\/\//i.test(i)?i:new URL(i,r).href}function av(e){let{authToken:t,connectionMeta:n,metaBaseUrl:r,events:i,clientRpc:a,rpcOptions:o={},sseOptions:s={},callTimeout:c=0}=e,l=iv(n.sse,r??`./`,location);return rv({transport:`sse`,authToken:t,connectionMeta:n,events:i,clientRpc:a,rpcOptions:o,callTimeout:c,createChannel:e=>W_({url:l,authToken:t,definitions:e.definitions,...s,onConnected(){s.onConnected?.()},onError(t){e.onError(t),s.onError?.(t)},onDisconnected(){e.onDisconnected(),s.onDisconnected?.()}})})}function ov(e){let{name:t,message:n,cause:r,...i}=e,a=r instanceof Error?r:sv(r)?ov(r):r,o=a===void 0?Error(n):Error(n,{cause:a});return o.name=t,Object.assign(o,i),o}function sv(e){return typeof e==`object`&&!!e&&typeof e.message==`string`&&typeof e.name==`string`}function cv(e){return typeof e==`object`&&!!e&&e.type===`static`&&typeof e.path==`string`}function lv(e){return typeof e==`object`&&!!e&&e.type===`query`&&typeof e.records==`object`&&e.records!==null}function uv(e){return typeof e==`object`&&!!e&&(`output`in e||`error`in e)}function dv(e){if(e.error)throw ov(e.error);return e.output}function fv(e){return e.some(e=>e!=null)}function pv(e){return typeof e==`object`&&e&&`serialization`in e&&`data`in e?e.data:e}function mv(e,t){let n=new Map,r=new Map;function i(e,t){return t===`structured-clone`&&Array.isArray(e)?I_(e):e}function a(e,t){return i(pv(e),t)}async function o(e){n.has(e.path)||n.set(e.path,t(e.path).then(t=>a(t,e.serialization)));let r=await n.get(e.path);return uv(r)?dv(r):r}async function s(e,n){return r.has(e)||r.set(e,t(e).then(e=>a(e,n))),await r.get(e)}async function c(t,n){if(!(t in e))throw Error(`[devframe-rpc] Function "${t}" not found in dump store`);let r=e[t];if(cv(r)){if(fv(n))throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`);return await o(r)}if(lv(r)){let e=Pm(n),i=r.records[e];if(i)return dv(await s(i,r.serialization));if(r.fallback)return dv(await s(r.fallback,r.serialization));throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`)}if(!fv(n))return r;throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`)}return{call:async(e,t)=>await c(e,t),callOptional:async(t,n)=>{if(t in e)return await c(t,n)},callEvent:async(e,t)=>{}}}async function hv(e){let t=mv(await e.fetchJsonFromBases(Am),e.fetchJsonFromBases);return{transport:`static`,isTrusted:!0,status:`connected`,connectionError:null,requestTrust:async()=>!0,requestTrustWithToken:async()=>!0,requestTrustWithCode:async()=>null,ensureTrusted:async()=>!0,call:(...e)=>t.call(e[0],e.slice(1)),callEvent:(...e)=>t.callEvent(e[0],e.slice(1)),callOptional:(...e)=>t.callOptional(e[0],e.slice(1)),close:()=>{}}}var gv=256,_v=class extends Error{name=`StreamClosedError`};function vv(e={}){let t=e.id??m_(),n=Math.max(0,e.replayWindow??0),r=oh(),i=new AbortController,a=[],o=!1,s=0;function c(e){if(o)throw new _v(`Cannot write to a closed stream "${t}"`);s+=1,n>0&&(a.push({seq:s,chunk:e}),a.length>n&&a.splice(0,a.length-n)),r.emit(`chunk`,s,e)}function l(e){if(o)return;o=!0;let t=bv(e);i.abort(e),r.emit(`end`,t)}function u(){o||(o=!0,i.signal.aborted||i.abort(`stream closed`),r.emit(`end`,void 0))}function d(e){o||i.signal.aborted||i.abort(e??`aborted`)}let f=new WritableStream({write(e){c(e)},close(){u()},abort(e){l(e)}});return{id:t,signal:i.signal,get closed(){return o},get lastSeq(){return s},write:c,error:l,close:u,abort:d,writable:f,events:r,buffer:a}}function yv(e={}){let t=e.id??m_(),n=Math.max(1,e.highWaterMark??gv),r=[],i=0,a=!1,o=!1,s,c,l,u;function d(){if(c){if(r.length>0){let e=r.shift(),t=c;c=void 0,t.resolve({value:e,done:!1});return}if(a){let e=c;if(c=void 0,s){let t=Error(s.message);t.name=s.name,e.reject(t)}else e.resolve({value:void 0,done:!0})}}}function f(){if(l){for(;r.length>0;){let e=r.shift();try{l.enqueue(e)}catch{break}}if(a&&l){try{if(s){let e=Error(s.message);e.name=s.name,l.error(e)}else l.close()}catch{}l=void 0}}}function p(t,s){if(!(a||o)&&!(t<=i)){if(i=t,r.push(s),r.length>n){let t=r.length-n;r.splice(0,t),e.onOverflow?.(t)}d(),u&&f()}}function m(e){a||(a=!0,s=e,d(),u&&f())}function h(){o||a||(o=!0,e.onCancel?.(),m(void 0))}function g(){return u||(u=new ReadableStream({start(e){l=e,f()},cancel(){h()}}),u)}return{id:t,get cancelled(){return o},get done(){return a},get lastSeenSeq(){return i},get readable(){return g()},cancel:h,_push:p,_end:m,[Symbol.asyncIterator](){return{next(){if(r.length>0)return Promise.resolve({value:r.shift(),done:!1});if(a){if(s){let e=Error(s.message);return e.name=s.name,Promise.reject(e)}return Promise.resolve({value:void 0,done:!0})}return new Promise((e,t)=>{c={resolve:e,reject:t}})},return(){return h(),Promise.resolve({value:void 0,done:!0})}}}}}function bv(e){if(e instanceof Error)return{name:e.name||`Error`,message:e.message};if(typeof e==`string`)return{name:`Error`,message:e};try{return{name:`Error`,message:JSON.stringify(e)}}catch{return{name:`Error`,message:String(e)}}}var xv=``;function Sv(e,t){return`${e}${xv}${t}`}function Cv(e){let t=new Map,n=new Map;e.client.register({name:$.broadcast.streamingChunk,type:`event`,handler(e,n,r,i){t.get(Sv(e,n))?._push(r,i)}}),e.client.register({name:$.broadcast.streamingEnd,type:`event`,handler(e,n,r){let i=Sv(e,n),a=t.get(i);a&&(a._end(r),t.delete(i))}}),e.client.register({name:$.broadcast.streamingUploadCancel,type:`event`,handler(e,t){let r=Sv(e,t),i=n.get(r);i&&(i.abort(`server cancelled upload`),n.delete(r))}}),e.events.on($.client.isTrustedUpdated,n=>{if(n)for(let[n,r]of t){if(r.cancelled||r.done)continue;let t=n.indexOf(xv);if(t<0)continue;let i=n.slice(0,t),a=n.slice(t+1);e.callEvent(`devframe:streaming:subscribe`,i,a,{afterSeq:r.lastSeenSeq})}});function r(n,r,i={}){let a=Sv(n,r),o=t.get(a);if(o)return o;let s=yv({id:r,highWaterMark:i.highWaterMark,onOverflow(e){console.warn(`[devframe] DF0029: Stream "${n}#${r}" dropped ${e} chunk(s) after exceeding the client high-water mark.`)},onCancel(){e.callEvent(`devframe:streaming:cancel`,n,r),t.delete(a)}});if(t.set(a,s),e.isTrusted)e.callEvent(`devframe:streaming:subscribe`,n,r,{afterSeq:0});else{let i=e.events.on($.client.isTrustedUpdated,o=>{o&&(i(),t.has(a)&&!s.cancelled&&!s.done&&e.callEvent(`devframe:streaming:subscribe`,n,r,{afterSeq:s.lastSeenSeq}))})}return s}function i(t,r){let i=Sv(t,r),a=n.get(i);if(a)return a;let o=vv({id:r});return o.events.on(`chunk`,(n,i)=>{e.callEvent(`devframe:streaming:upload-chunk`,t,r,n,i)}),o.events.on(`end`,a=>{e.callEvent(`devframe:streaming:upload-end`,t,r,a),n.delete(i)}),n.set(i,o),o}return{subscribe:r,upload:i}}function wv(){}var Tv=new Map;function Ev(e){let t=e.url;e.authToken&&(t=`${t}?${Nm}=${encodeURIComponent(e.authToken)}`);let n=new WebSocket(t),{onConnected:r=wv,onError:i=wv,onDisconnected:a=wv,definitions:o=Tv}=e;n.addEventListener(`open`,e=>{r(e)}),n.addEventListener(`error`,e=>{let t=e instanceof Error?e:Error(e.type);i(t)}),n.addEventListener(`close`,e=>{a(e)});let s=B_(o);return{close:()=>{n.close()},on:e=>{n.addEventListener(`message`,t=>{e(t.data)})},post:e=>{if(n.readyState===WebSocket.OPEN){n.send(e);return}if(n.readyState===WebSocket.CONNECTING){let t=()=>{i(),n.readyState===WebSocket.OPEN&&n.send(e)},r=()=>i();function i(){n.removeEventListener(`open`,t),n.removeEventListener(`close`,r)}n.addEventListener(`open`,t),n.addEventListener(`close`,r);return}i(Error(`Devframe WebSocket is not open; message dropped`))},serialize:s.serialize,deserialize:s.deserialize}}function Dv(e,t,n){let r=(()=>{try{return new URL(t,n.href)}catch{return new URL(n.href)}})(),i=r.protocol===`https:`?`wss:`:`ws:`;if(e&&typeof e==`object`){if(e.host!=null||e.port!=null){let t=e.host??`${r.hostname}:${e.port}`,n=new URL(e.path??`/`,`${i}//${t}`);return n.protocol=i,n.href}let t=new URL(e.path??``,r);return t.protocol=i,t.href}if(typeof e==`number`)return`${i}//${r.hostname}:${e}`;let a=e??``;if(/^wss?:\/\//i.test(a))return a;if(/^https?:\/\//i.test(a))return bh(a,/^https/i.test(a)?`wss://`:`ws://`);let o=new URL(a,r);return o.protocol=i,o.href}function Ov(e){let{authToken:t,connectionMeta:n,metaBaseUrl:r,events:i,clientRpc:a,rpcOptions:o={},wsOptions:s={},callTimeout:c=0}=e,l=Dv(n.websocket,r??`./`,location);return rv({transport:`websocket`,authToken:t,connectionMeta:n,events:i,clientRpc:a,rpcOptions:o,callTimeout:c,createChannel:e=>Ev({url:l,authToken:t,definitions:e.definitions,...s,onConnected(e){s.onConnected?.(e)},onError(t){e.onError(t),s.onError?.(t)},onDisconnected(t){e.onDisconnected(),s.onDisconnected?.(t)}})})}function kv(e){return e.includes(`:`)}function Av(e,t){return kv(t)?t:`${e}:${t}`}function jv(e,t,n){let r=`devframe:settings:${n}:${t}`,i;function a(){return i||=e.sharedState.get(r,{initialValue:{}}),i}return{async get(e){return(await a()).value()[e]},async set(e,t){(await a()).mutate(n=>{n[e]=t})},async delete(e){(await a()).mutate(t=>{delete t[e]})},async all(){return(await a()).value()},async onChange(e){return(await a()).on(`updated`,t=>e(t))}}}function Mv(e,t){return{global:jv(e,t,`global`),project:jv(e,t,`project`)}}function Nv(e,t){return{namespace:t,base:e,rpc:{namespace:t,register(n){if(kv(n.name))throw Error(`[devframe] Scoped client RPC registration for namespace "${t}" received an already-namespaced function name "${n.name}". Pass a bare name without a ":" separator.`);e.client.register({...n,name:`${t}:${n.name}`})},call:((n,...r)=>e.call(Av(t,n),...r)),callEvent:((n,...r)=>e.callEvent(Av(t,n),...r)),callOptional:((n,...r)=>e.callOptional(Av(t,n),...r)),sharedState:((n,r)=>e.sharedState.get(Av(t,n),r)),streaming:{subscribe:(n,r,i)=>e.streaming.subscribe(Av(t,n),r,i),upload:(n,r)=>e.streaming.upload(Av(t,n),r)}},settings:Mv(e,t),scope:e.scope}}function Pv(e,t){if(t.backend===`static`)return`static`;let n=t.websocket!==void 0,r=t.sse!==void 0;if(e===`websocket`){if(!n)throw Error(`[devframe] transport: 'websocket' was requested, but this server does not advertise a WebSocket endpoint`);return`websocket`}if(e===`sse`){if(!r)throw Error(`[devframe] transport: 'sse' was requested, but this server does not advertise an SSE endpoint`);return`sse`}if(t.backend===`sse`&&r)return`sse`;if(n)return`websocket`;if(r)return`sse`;throw Error(`[devframe] This server advertises no RPC transport (backend "none"), so there is nothing to connect to. Enable the WebSocket or SSE endpoint on the server, or use its static/MCP surfaces instead.`)}async function Fv(e={}){let{baseURL:t=`./`,rpcOptions:n={},cacheOptions:r=!1}=e,i=oh(),a=Array.isArray(t)?t:[t],o=await Mh(e),{connectionMeta:s,metaBaseUrl:c,authToken:l}=o,u=a[0]??`./`;try{u=new URL(`.`,c).href}catch{}let d=new Fm({functions:[],...typeof e.cacheOptions==`object`?e.cacheOptions:{}}),f={rpc:void 0},p=new eh(f);async function m(e){let t=[u,...a.filter(e=>e!==u)].filter(e=>e!=null),n=[];for(let r of t)try{return await fetch(gh(e,r)).then(t=>{if(!t.ok)throw Error(`Failed to fetch ${e} from ${r}: ${t.status}`);return t.json()})}catch(e){n.push(e)}throw Error(`Failed to load ${e} from ${t.join(`, `)}`,{cause:n})}let h={authToken:l,connectionMeta:s,metaBaseUrl:c,events:i,clientRpc:p,callTimeout:e.callTimeout,rpcOptions:{...n,async onRequest(e,t,i){if(await n.onRequest?.call(this,e,t,i),r&&d?.validate(e.m)){if(d.has(e.m,e.a))return i(d.cached(e.m,e.a));let n=await t(e);d.apply(e,n)}else await t(e)}}},g=Pv(e.transport??`auto`,s),_=g===`static`?await hv({fetchJsonFromBases:m}):g===`sse`?av({...h,sseOptions:e.sseOptions}):Ov({...h,wsOptions:e.wsOptions}),v;try{v=new BroadcastChannel(`devframe-auth`)}catch{}let y,b=!1;function x(e){return((...t)=>b||!y?e(...t):y.then(()=>e(...t)))}let S={events:i,get isTrusted(){return _.isTrusted},get status(){return _.status},get connectionError(){return _.connectionError},get transport(){return _.transport??g},get connection(){return o},connectionMeta:s,ensureTrusted:_.ensureTrusted,requestTrust:_.requestTrust,requestTrustWithToken:async e=>(Oh(e),o={...o,authToken:e},_.requestTrustWithToken(e)),requestTrustWithCode:async e=>{let t=await _.requestTrustWithCode(e);if(!t)return!1;Oh(t),o={...o,authToken:t};try{v?.postMessage({type:`auth-update`,authToken:t})}catch{}return!0},call:x(_.call),callEvent:x(_.callEvent),callOptional:x(_.callOptional),client:p,sharedState:void 0,services:void 0,streaming:void 0,cacheManager:d,scope:void 0,close:()=>_.close?.()};S.sharedState=v_(S),S.streaming=Cv(S),S.services=Rh(S);let C=new Map;S.scope=(e=>{if(!e)return S;let t=C.get(e);return t||(t=Nv(S,e),C.set(e,t)),t}),f.rpc=S;function w(){try{return typeof window<`u`&&window.self===window.top}catch{return!1}}async function ee(){if(!(e.simpleAuth===!1||!w())&&typeof globalThis.prompt==`function`)for(;!S.isTrusted;){let e=globalThis.prompt(`devframe: enter the authentication code shown in your terminal`);if(e==null)return;let t=e.trim();if(t&&await S.requestTrustWithCode(t))return}}async function T(){let t=await _.requestTrust(),n=e.otpParam??`devframe_otp`,r=n?await Lh(S,{param:n}):!1;t||r||S.isTrusted||await ee()}return y=T().then(()=>{b=!0},()=>{b=!0}),v&&(v.onmessage=e=>{e.data?.type===`auth-update`&&e.data.authToken&&S.requestTrustWithToken(e.data.authToken)}),S}var Iv=Fv;function Lv(e){return Iv(e)}var Rv=I([]),zv=I(!0),Bv=1;function Vv(e){zv.value&&Rv.value.push({...e,id:Bv++})}function Hv(){Rv.value=[]}var Uv=Jt({connected:!1,status:`connecting`,error:null,backend:null}),Wv=sn(null);function Gv(e){let t=e.call.bind(e);e.call=async(e,...n)=>{let r=Date.now();try{let i=await t(e,...n);return!e.includes(`list-functions`)&&!e.includes(`list-state-keys`)&&e!==`devframe:rpc:server-state:get`&&Vv({type:`call`,method:e,args:n,result:i,duration:Date.now()-r,time:r}),i}catch(t){throw!e.includes(`list-functions`)&&!e.includes(`list-state-keys`)&&e!==`devframe:rpc:server-state:get`&&Vv({type:`call`,method:e,args:n,error:t,duration:Date.now()-r,time:r}),t}};let n=e.callEvent.bind(e);e.callEvent=(e,...t)=>(!e.includes(`list-functions`)&&!e.includes(`list-state-keys`)&&e!==`devframe:rpc:server-state:subscribe`&&Vv({type:`call`,method:e,args:t,duration:0,time:Date.now()}),n(e,...t));let r=e.client.get(`devframe:rpc:client-state:updated`);if(r&&r.handler){let e=r.handler;r.handler=(t,n,r)=>(Vv({type:`state`,key:t,value:n,syncId:r,time:Date.now()}),e(t,n,r))}let i=e.client.get(`devframe:rpc:client-state:patch`);if(i&&i.handler){let e=i.handler;i.handler=(t,n,r)=>(Vv({type:`state`,key:t,patches:n,syncId:r,time:Date.now()}),e(t,n,r))}}function Kv(e){Uv.status=e.status,Uv.connected=e.status===`connected`,Uv.error=e.connectionError?.message??null}async function qv(){try{let e=await Lv();Gv(e),Wv.value=e,Uv.backend=e.connectionMeta.backend,Kv(e),e.events.on(`connection:status`,()=>Kv(e)),e.connectionMeta.backend===`websocket`&&e.ensureTrusted(5e3).catch(()=>{})}catch(e){Uv.status=`error`,Uv.error=e?.message??String(e)}}function Jv(){return Wv}function Yv(){return Uv.backend===`static`}var Xv=z({__name:`FeedbackSpinner`,props:{size:{default:`1em`}},setup(e){let t=e,n=Z(()=>typeof t.size==`number`?`${t.size}px`:t.size);return(e,t)=>(W(),G(`span`,{class:`border-2 border-current border-t-transparent rounded-full inline-block animate-spin`,style:k({width:n.value,height:n.value}),role:`status`,"aria-label":`Loading`},null,4))}}),Zv=z({__name:`ActionButton`,props:{as:{},to:{},href:{},icon:{},variant:{default:`action`},size:{default:`md`},loading:{type:Boolean},disabled:{type:Boolean}},setup(e){let t=e,n=Z(()=>t.as?t.as:t.href!=null||t.to!=null?`a`:`button`),r=Z(()=>n.value===`a`),i=Z(()=>n.value===`button`),a=Z(()=>t.size===`sm`),o=Z(()=>t.variant===`primary`?a.value?`btn-primary text-sm`:`btn-primary`:t.variant===`text`?a.value?`btn-text text-sm`:`btn-text`:a.value?`btn-action-sm`:`btn-action`),s=Z(()=>t.disabled||t.loading);return(t,a)=>(W(),K(sa(n.value),{class:A([o.value,{"pointer-events-none op-mute":s.value&&!i.value}]),href:r.value?e.href??e.to:void 0,to:e.as&&e.to!=null?e.to:void 0,disabled:i.value?s.value:void 0,"aria-disabled":s.value||void 0,"aria-busy":e.loading||void 0},{default:R(()=>[e.loading?(W(),K(Xv,{key:0,size:`1em`})):e.icon?(W(),G(`span`,{key:1,class:A(e.icon),"aria-hidden":`true`},null,2)):X(``,!0),B(t.$slots,`default`)]),_:3},8,[`class`,`href`,`to`,`disabled`,`aria-disabled`,`aria-busy`]))}}),Qv=128;function $v(e){return e.replace(/[^\w-]+/g,`_`).slice(0,Qv)}var ey={class:`json`},ty={key:0,class:`json-key`},ny={key:1,class:`json-colon`},ry={key:0,class:`json-key`},iy={key:1,class:`json-colon`},ay={class:`json-meta`},oy={key:2},sy={key:0,class:`json-key`},cy={key:1,class:`json-colon`},ly={key:2,class:`json-meta`},uy={key:3,class:`json-meta`},dy={key:0,class:`json-children`},fy={key:1,class:`json-row`},py={class:`json-meta`},my=z({__name:`JsonView`,props:{value:{},name:{},path:{default:``},depth:{default:0},expandDepth:{default:1},highlightPaths:{}},setup(e){let t=e,n=Z(()=>Array.isArray(t.value)?`array`:t.value!==null&&typeof t.value==`object`?`object`:`primitive`),r=Z(()=>n.value===`array`?t.value.map((e,t)=>[String(t),e]):n.value===`object`?Object.entries(t.value):[]),i=I(t.depth<t.expandDepth),a=Z(()=>r.value.length===0),o=Z(()=>!!t.path&&t.highlightPaths?.has(t.path));function s(e){return t.path?`${t.path}.${e}`:e}function c(e){return e==null?`v-null`:`v-${typeof e}`}function l(e){return e===void 0?`undefined`:e===null?`null`:typeof e==`string`?JSON.stringify(e):String(e)}let u=Z(()=>n.value===`array`?`[`:`{`),d=Z(()=>n.value===`array`?`]`:`}`),f=Z(()=>n.value===`array`?`[${r.value.length}]`:`{${r.value.length}}`);return(t,p)=>{let m=aa(`JsonView`,!0);return W(),G(`div`,ey,[n.value===`primitive`?(W(),G(`div`,{key:0,class:A([`json-row`,{changed:o.value}])},[e.name===void 0?X(``,!0):(W(),G(`span`,ty,j(e.name),1)),e.name===void 0?X(``,!0):(W(),G(`span`,ny,`:`)),q(`span`,{class:A(c(e.value))},j(l(e.value)),3)],2)):a.value?(W(),G(`div`,{key:1,class:A([`json-row`,{changed:o.value}])},[e.name===void 0?X(``,!0):(W(),G(`span`,ry,j(e.name),1)),e.name===void 0?X(``,!0):(W(),G(`span`,iy,`:`)),q(`span`,ay,j(u.value)+j(d.value),1)],2)):(W(),G(`div`,oy,[q(`div`,{class:A([`json-row json-toggle`,{changed:o.value}]),onClick:p[0]||=e=>i.value=!i.value},[q(`span`,{class:A([`json-caret`,{open:i.value}])},`▶`,2),e.name===void 0?X(``,!0):(W(),G(`span`,sy,j(e.name),1)),e.name===void 0?X(``,!0):(W(),G(`span`,cy,`:`)),i.value?(W(),G(`span`,ly,j(u.value),1)):(W(),G(`span`,uy,j(f.value),1))],2),i.value?(W(),G(`div`,dy,[(W(!0),G(H,null,da(r.value,([t,n])=>(W(),K(m,{key:t,name:t,value:n,path:s(t),depth:e.depth+1,"expand-depth":e.expandDepth,"highlight-paths":e.highlightPaths},null,8,[`name`,`value`,`path`,`depth`,`expand-depth`,`highlight-paths`]))),128))])):X(``,!0),i.value?(W(),G(`div`,fy,[q(`span`,py,j(d.value),1)])):X(``,!0)]))])}}}),hy={class:`pane`},gy={key:0,class:`center`},_y={class:`section-title`},vy={key:0,class:`empty`},yy={key:1,class:`cards`},by=[`onClick`],xy={class:`card-title`},Sy={class:`badge flag`},Cy={class:`id`},wy={key:0,class:`id-note`},Ty={class:`desc`},Ey={key:1,class:`tags`},Dy=[`onUpdate:modelValue`],Oy={style:{"margin-top":`8px`,display:`flex`,gap:`8px`,"align-items":`center`}},ky={key:0,class:`note`},Ay={key:3,class:`result`},jy={class:`result-head`},My={key:0,class:`ok`},Ny={key:1,class:`fail`},Py={key:2,class:`muted`},Fy={class:`section-title`},Iy={key:2,class:`empty`},Ly={key:3,class:`cards`},Ry=[`onClick`],zy={class:`card-title`},By={key:0,class:`badge flag`},Vy={class:`id`},Hy={key:0,class:`desc`},Uy={style:{"margin-top":`8px`,display:`flex`,gap:`8px`,"align-items":`center`}},Wy={key:0,class:`note`},Gy={key:0,class:`result`},Ky={class:`result-head`},qy={key:0,class:`ok`},Jy={key:1,class:`fail`},Yy={key:2,class:`muted`},Xy=z({__name:`AgentView`,props:{manifest:{},isStatic:{type:Boolean},results:{},pending:{}},emits:[`invoke`,`read`],setup(e,{emit:t}){let n=t,r=I(null),i=Jt({});function a(e){r.value=r.value===e?null:e,i[e]===void 0&&(i[e]=`{}`)}function o(e){let t;try{t=JSON.parse(i[e]||`{}`)}catch(e){throw Error(`Invalid JSON args: ${e.message}`)}n(`invoke`,e,t)}function s(e){n(`read`,e)}return(t,n)=>(W(),G(`div`,hy,[e.manifest?(W(),G(H,{key:1},[q(`div`,_y,` Tools · `+j(e.manifest.tools.length),1),e.manifest.tools.length===0?(W(),G(`div`,vy,` No agent-exposed tools. `)):(W(),G(`div`,yy,[(W(!0),G(H,null,da(e.manifest.tools,t=>(W(),G(`div`,{key:t.id,class:`card`},[q(`div`,{class:`card-head`,style:{cursor:`pointer`,"user-select":`none`},onClick:e=>a(t.id)},[q(`div`,{class:A([`chev i-ph-caret-right`,{open:r.value===t.id}])},null,2),q(`span`,xy,j(t.title),1),q(`span`,Sy,j(t.kind),1),q(`span`,{class:A([`badge`,`safety-${t.safety}`])},j(t.safety),3)],8,by),q(`div`,Cy,j(L($v)(t.id)),1),L($v)(t.id)===t.id?X(``,!0):(W(),G(`div`,wy,` internal id: `+j(t.id),1)),q(`p`,Ty,j(t.description),1),t.tags&&t.tags.length?(W(),G(`div`,Ey,[(W(!0),G(H,null,da(t.tags,e=>(W(),G(`span`,{key:e,class:`badge flag`},j(e),1))),128))])):X(``,!0),r.value===t.id?(W(),G(H,{key:2},[t.inputSchema?(W(),G(H,{key:0},[n[0]||=q(`div`,{class:`label`},` Input schema `,-1),J(my,{value:t.inputSchema,"expand-depth":1},null,8,[`value`])],64)):X(``,!0),t.outputSchema?(W(),G(H,{key:1},[n[1]||=q(`div`,{class:`label`},` Output schema `,-1),J(my,{value:t.outputSchema,"expand-depth":1},null,8,[`value`])],64)):X(``,!0),t.examples&&t.examples.length?(W(),G(H,{key:2},[n[2]||=q(`div`,{class:`label`},` Examples `,-1),J(my,{value:t.examples,"expand-depth":1},null,8,[`value`])],64)):X(``,!0),n[3]||=q(`div`,{class:`label`},` Invoke (MCP format) `,-1),pr(q(`textarea`,{"onUpdate:modelValue":e=>i[t.id]=e,class:`args`,spellcheck:`false`,placeholder:`{}`},null,8,Dy),[[zl,i[t.id]]]),q(`div`,Oy,[J(Zv,{variant:`primary`,size:`sm`,icon:`i-ph-play-duotone`,loading:e.pending[t.id],disabled:e.pending[t.id]||e.isStatic,onClick:e=>o(t.id)},{default:R(()=>[Y(j(e.pending[t.id]?`Invoking…`:`Invoke`),1)]),_:2},1032,[`loading`,`disabled`,`onClick`]),e.isStatic?(W(),G(`span`,ky,`read-only static backend`)):X(``,!0)]),e.results[t.id]?(W(),G(`div`,Ay,[q(`div`,jy,[e.results[t.id].ok?(W(),G(`span`,My,`✓ resolved`)):(W(),G(`span`,Ny,`✕ threw`)),`durationMs`in e.results[t.id]?(W(),G(`span`,Py,j(e.results[t.id].durationMs)+`ms`,1)):X(``,!0)]),e.results[t.id].ok?(W(),K(my,{key:0,value:e.results[t.id].result,"expand-depth":2},null,8,[`value`])):(W(),K(my,{key:1,value:e.results[t.id].error,"expand-depth":2},null,8,[`value`]))])):X(``,!0)],64)):X(``,!0)]))),128))])),q(`div`,Fy,` Resources · `+j(e.manifest.resources.length),1),e.manifest.resources.length===0?(W(),G(`div`,Iy,` No agent-readable resources. `)):(W(),G(`div`,Ly,[(W(!0),G(H,null,da(e.manifest.resources,t=>(W(),G(`div`,{key:t.id,class:`card`},[q(`div`,{class:`card-head`,style:{cursor:`pointer`,"user-select":`none`},onClick:e=>a(t.id)},[q(`div`,{class:A([`chev i-ph-caret-right`,{open:r.value===t.id}])},null,2),q(`span`,zy,j(t.name),1),t.mimeType?(W(),G(`span`,By,j(t.mimeType),1)):X(``,!0)],8,Ry),q(`div`,Vy,j(t.uri),1),t.description?(W(),G(`p`,Hy,j(t.description),1)):X(``,!0),r.value===t.id?(W(),G(H,{key:1},[q(`div`,Uy,[J(Zv,{variant:`primary`,size:`sm`,icon:`i-ph-book-open-duotone`,loading:e.pending[t.id],disabled:e.pending[t.id]||e.isStatic,onClick:e=>s(t.id)},{default:R(()=>[Y(j(e.pending[t.id]?`Reading…`:`Read Resource`),1)]),_:2},1032,[`loading`,`disabled`,`onClick`]),e.isStatic?(W(),G(`span`,Wy,`read-only static backend`)):X(``,!0)]),e.results[t.id]?(W(),G(`div`,Gy,[q(`div`,Ky,[e.results[t.id].ok?(W(),G(`span`,qy,`✓ resolved`)):(W(),G(`span`,Jy,`✕ threw`)),`durationMs`in e.results[t.id]?(W(),G(`span`,Yy,j(e.results[t.id].durationMs)+`ms`,1)):X(``,!0)]),e.results[t.id].ok?(W(),K(my,{key:0,value:e.results[t.id].result,"expand-depth":2},null,8,[`value`])):(W(),K(my,{key:1,value:e.results[t.id].error,"expand-depth":2},null,8,[`value`]))])):X(``,!0)],64)):X(``,!0)]))),128))]))],64)):(W(),G(`div`,gy,` Loading agent surface… `))]))}}),Zy=z({__name:`AgentSmart`,setup(e){let t=Jv(),n=sn(null),r=Jt({}),i=Jt({});async function a(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:describe-agent`))}Tm(a),Ji(a);async function o(e,n){if(t.value){i[e]=!0;try{r[e]=await t.value.call(`devframes:plugin:inspect:invoke-agent-tool`,e,n)}catch(t){let n=t;r[e]={ok:!1,error:{name:n?.name??`Error`,message:n?.message??String(t)}}}finally{i[e]=!1}}}async function s(e){if(t.value){i[e]=!0;try{r[e]=await t.value.call(`devframes:plugin:inspect:read-agent-resource`,e)}catch(t){let n=t;r[e]={ok:!1,error:{name:n?.name??`Error`,message:n?.message??String(t)}}}finally{i[e]=!1}}}return(e,t)=>(W(),K(Xy,{manifest:n.value,"is-static":L(Yv)(),results:r,pending:i,onInvoke:o,onRead:s},null,8,[`manifest`,`is-static`,`results`,`pending`]))}}),Qy={class:`cmd-title`},$y={class:`cmd-id mono`},eb={class:`fn-flags`},tb={key:0,class:`badge flag`},nb={key:1,class:`badge flag`,title:`No handler, a group for its children`},rb={key:2,class:`badge flag`},ib={key:0,class:`fn-detail`},ab={key:0,class:`desc`},ob=[`value`],sb={style:{"margin-top":`8px`,display:`flex`,gap:`8px`,"align-items":`center`}},cb={key:0,class:`note`},lb={key:0,class:`result`},ub={class:`result-head`},db={key:0,class:`ok`},fb={key:1,class:`fail`},pb={key:2,class:`muted`},mb={key:2,class:`note`},hb={class:`cmd-children`},gb=z({name:`CommandRow`,__name:`CommandRow`,props:{cmd:{},argsInput:{},results:{},pending:{},isStatic:{type:Boolean},depth:{}},emits:[`execute`,`updateArgs`],setup(e,{emit:t}){let n=e,r=t,i=I(!1),a=Z(()=>n.cmd.hasHandler||!!n.cmd.description||!!n.cmd.children?.length);function o(){i.value=!i.value}return(t,n)=>{let s=aa(`CommandRow`,!0);return W(),G(`div`,{class:A([`fn-row`,{"cmd-row-child":e.depth}])},[q(`div`,{class:A([`fn-head`,{clickable:a.value}]),onClick:o},[q(`div`,{class:A([`chev i-ph-caret-right`,{open:i.value}])},null,2),e.cmd.icon?(W(),G(`span`,{key:0,class:A([typeof e.cmd.icon==`string`?e.cmd.icon:`i-ph-terminal-window-duotone`,`cmd-icon`])},null,2)):X(``,!0),q(`span`,Qy,j(e.cmd.title),1),q(`span`,$y,j(e.cmd.id),1),q(`span`,eb,[e.cmd.category?(W(),G(`span`,tb,j(e.cmd.category),1)):X(``,!0),e.cmd.hasHandler?X(``,!0):(W(),G(`span`,nb,`group`)),e.cmd.children?.length?(W(),G(`span`,rb,j(e.cmd.children.length)+` children`,1)):X(``,!0)])],2),i.value?(W(),G(`div`,ib,[e.cmd.description?(W(),G(`p`,ab,j(e.cmd.description),1)):X(``,!0),e.cmd.hasHandler?(W(),G(H,{key:1},[n[4]||=q(`div`,{class:`label`},` Execute with positional args as a JSON array `,-1),q(`textarea`,{value:e.argsInput[e.cmd.id],class:`args`,spellcheck:`false`,placeholder:`[]`,onInput:n[0]||=t=>r(`updateArgs`,e.cmd.id,t.target.value)},null,40,ob),q(`div`,sb,[J(Zv,{variant:`primary`,size:`sm`,icon:`i-ph-play-duotone`,loading:e.pending[e.cmd.id],disabled:e.pending[e.cmd.id]||e.isStatic,onClick:n[1]||=eu(t=>r(`execute`,e.cmd),[`stop`])},{default:R(()=>[Y(j(e.pending[e.cmd.id]?`Running…`:`Run`),1)]),_:1},8,[`loading`,`disabled`]),e.isStatic?(W(),G(`span`,cb,`read-only static backend, execution disabled`)):X(``,!0)]),e.results[e.cmd.id]?(W(),G(`div`,lb,[q(`div`,ub,[e.results[e.cmd.id].ok?(W(),G(`span`,db,`✓ resolved`)):(W(),G(`span`,fb,`✕ threw`)),`durationMs`in e.results[e.cmd.id]?(W(),G(`span`,pb,j(e.results[e.cmd.id].durationMs)+`ms`,1)):X(``,!0)]),e.results[e.cmd.id].ok?(W(),K(my,{key:0,value:e.results[e.cmd.id].result,"expand-depth":2},null,8,[`value`])):(W(),K(my,{key:1,value:e.results[e.cmd.id].error,"expand-depth":2},null,8,[`value`]))])):X(``,!0)],64)):e.cmd.children?.length?X(``,!0):(W(),G(`p`,mb,` Group-only command, no handler to run. `)),e.cmd.children?.length?(W(),G(H,{key:3},[n[5]||=q(`div`,{class:`label`},` Children `,-1),q(`div`,hb,[(W(!0),G(H,null,da(e.cmd.children,t=>(W(),K(s,{key:t.id,cmd:t,"args-input":e.argsInput,results:e.results,pending:e.pending,"is-static":e.isStatic,depth:(e.depth??0)+1,onExecute:n[2]||=e=>r(`execute`,e),onUpdateArgs:n[3]||=(e,t)=>r(`updateArgs`,e,t)},null,8,[`cmd`,`args-input`,`results`,`pending`,`is-static`,`depth`]))),128))])],64)):X(``,!0)])):X(``,!0)],2)}}}),_b={class:`pane`},vb={class:`toolbar`},yb={class:`search`},bb={class:`muted`},xb={class:`badge flag`},Sb={key:0,class:`center`},Cb={key:1,class:`empty`},wb={key:2,class:`empty`},Tb={key:3,class:`fn-list`},Eb=z({__name:`CommandsView`,props:{commands:{},isStatic:{type:Boolean},results:{},pending:{}},emits:[`execute`],setup(e,{emit:t}){let n=e,r=t,i=I(``),a=Jt({});function o(e,t){return e.id.toLowerCase().includes(t)||e.title.toLowerCase().includes(t)||e.category?.toLowerCase().includes(t)?!0:e.children?.some(e=>o(e,t))??!1}let s=Z(()=>{let e=n.commands??[],t=i.value.trim().toLowerCase();return[...t?e.filter(e=>o(e,t)):e].sort((e,t)=>e.title.localeCompare(t.title))}),c=Z(()=>{let e={};for(let t of n.commands??[]){let n=t.category??`uncategorized`;e[n]=(e[n]||0)+1}return e});function l(e){let t;try{let n=JSON.parse(a[e.id]||`[]`);t=Array.isArray(n)?n:[n]}catch(e){throw Error(`Invalid JSON args: ${e.message}`)}r(`execute`,e,t)}return(t,n)=>(W(),G(`div`,_b,[q(`div`,vb,[q(`label`,yb,[n[2]||=q(`div`,{class:`i-ph-magnifying-glass-duotone`},null,-1),pr(q(`input`,{"onUpdate:modelValue":n[0]||=e=>i.value=e,placeholder:`Filter commands by id, title, category…`,spellcheck:`false`},null,512),[[zl,i.value]])]),q(`span`,bb,j((e.commands??[]).length)+` commands`,1),(W(!0),G(H,null,da(c.value,(e,t)=>(W(),G(`span`,{key:t,class:`muted`},[q(`span`,xb,j(t),1),Y(` `+j(e),1)]))),128))]),e.commands?e.commands.length===0?(W(),G(`div`,Cb," No commands registered. Commands are a `@devframes/hub` feature; this connection isn't mounted inside a hub. ")):s.value.length===0?(W(),G(`div`,wb,` No commands match "`+j(i.value)+`". `,1)):(W(),G(`div`,Tb,[(W(!0),G(H,null,da(s.value,t=>(W(),K(gb,{key:t.id,cmd:t,"args-input":a,results:e.results,pending:e.pending,"is-static":e.isStatic,onExecute:l,onUpdateArgs:n[1]||=(e,t)=>a[e]=t},null,8,[`cmd`,`args-input`,`results`,`pending`,`is-static`]))),128))])):(W(),G(`div`,Sb,` Loading commands… `))]))}}),Db=z({__name:`CommandsSmart`,setup(e){let t=Jv(),n=sn(null),r=Jt({}),i=Jt({});async function a(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:list-commands`))}Tm(a),Ji(a);async function o(e,n){if(t.value){i[e.id]=!0;try{r[e.id]=await t.value.call(`devframes:plugin:inspect:execute-command`,e.id,n)}catch(t){let n=t;r[e.id]={ok:!1,error:{name:n?.name??`Error`,message:n?.message??String(t)}}}finally{i[e.id]=!1}}}return(e,t)=>(W(),K(Eb,{commands:n.value,"is-static":L(Yv)(),results:r,pending:i,onExecute:o},null,8,[`commands`,`is-static`,`results`,`pending`]))}});function Ob(e,t=1){let n=0;for(let t=0;t<e.length;t++)n=e.charCodeAt(t)+((n<<5)-n);return kb(n%360,t)}function kb(e,t=1){return`hsla(${e}, 60%, 50%, ${t})`}function Ab(e){let t=e.split(/([:/])/),n=[],r=``;for(let e=0;e<t.length;e+=2){let i=t[e]??``,a=t[e+1]??``;if(i===``&&a===``)continue;r+=i;let o=a===``;n.push({text:i,separator:a,isLeaf:o,color:o?void 0:Ob(r)}),r+=a}return n}var jb=[`title`],Mb={key:0,class:`ns-sep`},Nb=z({__name:`FunctionName`,props:{name:{}},setup(e){let t=e,n=Z(()=>Ab(t.name));return(t,r)=>(W(),G(`span`,{class:`fn-name`,title:e.name},[(W(!0),G(H,null,da(n.value,(e,t)=>(W(),G(H,{key:t},[q(`span`,{class:`ns-seg`,style:k(e.color?{color:e.color}:void 0)},j(e.text),5),e.separator?(W(),G(`span`,Mb,j(e.separator),1)):X(``,!0)],64))),128))],8,jb))}}),Pb={class:`fn-row`},Fb={class:`fn-flags`},Ib={key:0,class:`badge agent`,title:`Exposed to agents`},Lb={key:1,class:`badge flag`,title:`Strict JSON wire serialization`},Rb={key:2,class:`badge flag`,title:`Baked into the static build dump`},zb={key:3,class:`badge flag`},Bb={key:4,class:`badge flag`},Vb={key:5,class:`badge flag`},Hb={key:0,class:`fn-detail`},Ub={key:0,class:`desc`},Wb=[`value`],Gb={style:{"margin-top":`8px`,display:`flex`,gap:`8px`,"align-items":`center`}},Kb={key:0,class:`note`},qb={key:0,class:`result`},Jb={class:`result-head`},Yb={key:0,class:`ok`},Xb={key:1,class:`fail`},Zb={key:2,class:`muted`},Qb={key:4,class:`note`},$b=z({__name:`FunctionRow`,props:{fn:{},argsInput:{},results:{},pending:{},isStatic:{type:Boolean}},emits:[`invoke`,`updateArgs`],setup(e,{emit:t}){let n=e,r=t,i=I(!1),a=Z(()=>n.fn.invokable||!!n.fn.agent||n.fn.hasArgs||n.fn.hasReturns);function o(){i.value=!i.value}return(t,n)=>(W(),G(`div`,Pb,[q(`div`,{class:A([`fn-head`,{clickable:a.value}]),onClick:o},[q(`div`,{class:A([`chev i-ph-caret-right`,{open:i.value}])},null,2),J(Nb,{name:e.fn.name},null,8,[`name`]),q(`span`,Fb,[q(`span`,{class:A([`badge`,e.fn.type])},j(e.fn.type),3),e.fn.agent?(W(),G(`span`,Ib,`agent`)):X(``,!0),e.fn.jsonSerializable?(W(),G(`span`,Lb,`json`)):X(``,!0),e.fn.snapshot?(W(),G(`span`,Rb,`snapshot`)):X(``,!0),e.fn.hasArgs?(W(),G(`span`,zb,`args`)):X(``,!0),e.fn.hasReturns?(W(),G(`span`,Bb,`returns`)):X(``,!0),e.fn.hasDump?(W(),G(`span`,Vb,`dump`)):X(``,!0)])],2),i.value?(W(),G(`div`,Hb,[e.fn.agent?(W(),G(`p`,Ub,j(e.fn.agent.description),1)):X(``,!0),e.fn.argsSchema?(W(),G(H,{key:1},[n[2]||=q(`div`,{class:`label`},` Args schema `,-1),J(my,{value:e.fn.argsSchema,"expand-depth":0},null,8,[`value`])],64)):X(``,!0),e.fn.returnsSchema?(W(),G(H,{key:2},[n[3]||=q(`div`,{class:`label`},` Returns schema `,-1),J(my,{value:e.fn.returnsSchema,"expand-depth":0},null,8,[`value`])],64)):X(``,!0),e.fn.invokable?(W(),G(H,{key:3},[n[4]||=q(`div`,{class:`label`},` Invoke with positional args as a JSON array `,-1),q(`textarea`,{value:e.argsInput[e.fn.name],class:`args`,spellcheck:`false`,placeholder:`[]`,onInput:n[0]||=t=>r(`updateArgs`,e.fn.name,t.target.value)},null,40,Wb),q(`div`,Gb,[J(Zv,{variant:`primary`,size:`sm`,icon:`i-ph-play-duotone`,loading:e.pending[e.fn.name],disabled:e.pending[e.fn.name]||e.isStatic,onClick:n[1]||=eu(t=>r(`invoke`,e.fn),[`stop`])},{default:R(()=>[Y(j(e.pending[e.fn.name]?`Invoking…`:`Invoke`),1)]),_:1},8,[`loading`,`disabled`]),e.isStatic?(W(),G(`span`,Kb,`read-only static backend, invocation disabled`)):X(``,!0)]),e.results[e.fn.name]?(W(),G(`div`,qb,[q(`div`,Jb,[e.results[e.fn.name].ok?(W(),G(`span`,Yb,`✓ resolved`)):(W(),G(`span`,Xb,`✕ threw`)),`durationMs`in e.results[e.fn.name]?(W(),G(`span`,Zb,j(e.results[e.fn.name].durationMs)+`ms`,1)):X(``,!0)]),e.results[e.fn.name].ok?(W(),K(my,{key:0,value:e.results[e.fn.name].result,"expand-depth":2},null,8,[`value`])):(W(),K(my,{key:1,value:e.results[e.fn.name].error,"expand-depth":2},null,8,[`value`]))])):X(``,!0)],64)):(W(),G(`p`,Qb,j(e.fn.type)+` functions may carry side effects, so the inspector does not invoke them. `,1))])):X(``,!0)]))}}),ex={class:`pane`},tx={class:`toolbar`},nx={class:`search`},rx={class:`muted`},ix={key:0,class:`center`},ax={key:1,class:`empty`},ox={key:2,class:`fn-list`},sx=z({__name:`FunctionsView`,props:{functions:{},isStatic:{type:Boolean},results:{},pending:{}},emits:[`invoke`],setup(e,{emit:t}){let n=e,r=t,i=I(``),a=Jt({}),o=Z(()=>{let e=n.functions??[],t=i.value.trim().toLowerCase();return[...t?e.filter(e=>e.name.toLowerCase().includes(t)):e].sort((e,t)=>e.name.localeCompare(t.name))}),s=Z(()=>{let e={};for(let t of n.functions??[])e[t.type]=(e[t.type]||0)+1;return e});function c(e){let t;try{let n=JSON.parse(a[e.name]||`[]`);t=Array.isArray(n)?n:[n]}catch(e){throw Error(`Invalid JSON args: ${e.message}`)}r(`invoke`,e,t)}return(t,n)=>(W(),G(`div`,ex,[q(`div`,tx,[q(`label`,nx,[n[2]||=q(`div`,{class:`i-ph-magnifying-glass-duotone`},null,-1),pr(q(`input`,{"onUpdate:modelValue":n[0]||=e=>i.value=e,placeholder:`Filter functions by name…`,spellcheck:`false`},null,512),[[zl,i.value]])]),q(`span`,rx,j((e.functions??[]).length)+` functions`,1),(W(!0),G(H,null,da(s.value,(e,t)=>(W(),G(`span`,{key:t,class:`muted`},[q(`span`,{class:A([`badge`,t])},j(t),3),Y(` `+j(e),1)]))),128))]),e.functions?o.value.length===0?(W(),G(`div`,ax,` No functions match “`+j(i.value)+`”. `,1)):(W(),G(`div`,ox,[(W(!0),G(H,null,da(o.value,t=>(W(),K($b,{key:t.name,fn:t,"args-input":a,results:e.results,pending:e.pending,"is-static":e.isStatic,onInvoke:c,onUpdateArgs:n[1]||=(e,t)=>a[e]=t},null,8,[`fn`,`args-input`,`results`,`pending`,`is-static`]))),128))])):(W(),G(`div`,ix,` Loading functions… `))]))}}),cx=z({__name:`FunctionsSmart`,setup(e){let t=Jv(),n=sn(null),r=Jt({}),i=Jt({});async function a(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:list-functions`))}Tm(a),Ji(a);async function o(e,n){if(t.value){i[e.name]=!0;try{r[e.name]=await t.value.call(`devframes:plugin:inspect:invoke`,e.name,n)}catch(t){let n=t;r[e.name]={ok:!1,error:{name:n?.name??`Error`,message:n?.message??String(t)}}}finally{i[e.name]=!1}}}return(e,t)=>(W(),K(sx,{functions:n.value,"is-static":L(Yv)(),results:r,pending:i,onInvoke:o},null,8,[`functions`,`is-static`,`results`,`pending`]))}}),lx={class:`pane flex-col`},ux={class:`toolbar`},dx={class:`muted`},fx={key:0,class:`center`},px={key:1,style:{padding:`14px`,display:`flex`,"flex-direction":`column`,gap:`14px`}},mx={style:{display:`flex`,gap:`8px`,"align-items":`center`,"margin-bottom":`8px`,"flex-wrap":`wrap`}},hx={class:`muted`,style:{"font-family":`var(--df-mono)`,"font-size":`11px`}},gx={style:{"font-family":`var(--df-mono)`,"font-weight":`600`,"font-size":`12.5px`}},_x={class:`muted`},vx={style:{"font-family":`var(--df-mono)`,"font-weight":`600`,"font-size":`12.5px`,color:`var(--df-accent)`}},yx={class:`muted`},bx={style:{"padding-left":`8px`,"border-left":`2px solid var(--df-border-soft)`}},xx=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})(z({__name:`HistoryView`,props:{historyRecords:{},isRecording:{type:Boolean}},emits:[`update:isRecording`,`clear`],setup(e,{emit:t}){let n=t;function r(e){let t=new Date(e);return`${t.getHours().toString().padStart(2,`0`)}:${t.getMinutes().toString().padStart(2,`0`)}:${t.getSeconds().toString().padStart(2,`0`)}.${t.getMilliseconds().toString().padStart(3,`0`)}`}return(t,i)=>(W(),G(`div`,lx,[q(`div`,ux,[J(Zv,{variant:e.isRecording?`action`:`text`,size:`sm`,icon:e.isRecording?`i-ph-record-fill text-error`:`i-ph-play-duotone`,title:e.isRecording?`Click to pause recording`:`Click to record`,onClick:i[0]||=t=>n(`update:isRecording`,!e.isRecording)},{default:R(()=>[Y(j(e.isRecording?`Recording`:`Paused`),1)]),_:1},8,[`variant`,`icon`,`title`]),J(Zv,{variant:`text`,size:`sm`,icon:`i-ph-trash-duotone`,onClick:i[1]||=e=>n(`clear`)},{default:R(()=>[...i[2]||=[Y(` Clear `,-1)]]),_:1}),q(`span`,dx,j(e.historyRecords.length)+` records`,1)]),e.historyRecords.length===0?(W(),G(`div`,fx,` No history yet. `)):(W(),G(`div`,px,[(W(!0),G(H,null,da(e.historyRecords,e=>(W(),G(`div`,{key:e.id,style:{border:`1px solid var(--df-border)`,"border-radius":`var(--df-radius)`,background:`var(--df-bg-soft)`,padding:`12px`}},[q(`div`,mx,[q(`span`,hx,j(r(e.time)),1),e.type===`call`?(W(),G(H,{key:0},[i[3]||=q(`span`,{class:`badge action`},`RPC Call`,-1),q(`span`,gx,j(e.method),1),q(`span`,_x,j(e.duration)+`ms`,1)],64)):(W(),G(H,{key:1},[i[4]||=q(`span`,{class:`badge static`},`State Update`,-1),q(`span`,vx,j(e.key),1),q(`span`,yx,`Sync ID: `+j(e.syncId),1)],64))]),q(`div`,bx,[e.type===`call`?(W(),G(H,{key:0},[i[7]||=q(`div`,{class:`label`,style:{"margin-top":`0`}},` Arguments `,-1),J(my,{value:e.args,"expand-depth":1},null,8,[`value`]),`result`in e?(W(),G(H,{key:0},[i[5]||=q(`div`,{class:`label`},` Result `,-1),J(my,{value:e.result,"expand-depth":1},null,8,[`value`])],64)):`error`in e?(W(),G(H,{key:1},[i[6]||=q(`div`,{class:`label`,style:{color:`var(--df-danger)`}},` Error `,-1),J(my,{value:e.error,"expand-depth":1},null,8,[`value`])],64)):X(``,!0)],64)):(W(),G(H,{key:1},[`value`in e?(W(),G(H,{key:0},[i[8]||=q(`div`,{class:`label`,style:{"margin-top":`0`}},` New State `,-1),J(my,{value:e.value,"expand-depth":1},null,8,[`value`])],64)):`patches`in e?(W(),G(H,{key:1},[i[9]||=q(`div`,{class:`label`,style:{"margin-top":`0`}},` Patches `,-1),J(my,{value:e.patches,"expand-depth":1},null,8,[`value`])],64)):X(``,!0)],64))])]))),128))]))]))}}),[[`__scopeId`,`data-v-fa4416fc`]]),Sx=z({__name:`HistorySmart`,setup(e){function t(e){zv.value=e}return(e,n)=>(W(),K(xx,{"history-records":L(Rv),"is-recording":L(zv),"onUpdate:isRecording":t,onClear:L(Hv)},null,8,[`history-records`,`is-recording`,`onClear`]))}}),Cx={class:`pane`},wx={class:`toolbar`},Tx={class:`muted`},Ex={key:0,class:`center`},Dx={key:1,class:`inst-empty`},Ox={key:2,class:`cards`},kx={class:`card-head`},Ax={class:`card-title`},jx={key:0,class:`badge agent`},Mx={key:1,class:`badge`},Nx={class:`id`},Px=[`href`],Fx={class:`inst-url-text`},Ix={class:`inst-meta`},Lx={class:`inst-meta-wide`},Rx=[`title`],zx=z({__name:`InstancesView`,props:{instances:{}},setup(e){let t=e,n=Z(()=>[...t.instances??[]].sort((e,t)=>e.isCurrent===t.isCurrent?t.startedAt-e.startedAt:e.isCurrent?-1:1));function r(e){let t=Math.max(0,Math.round((Date.now()-e)/1e3));if(t<60)return`${t}s`;let n=Math.floor(t/60);if(n<60)return`${n}m ${t%60}s`;let r=Math.floor(n/60);return r<24?`${r}h ${n%60}m`:`${Math.floor(r/24)}d ${r%24}h`}return(t,i)=>(W(),G(`div`,Cx,[q(`div`,wx,[q(`span`,Tx,j((e.instances??[]).length)+` running `+j((e.instances??[]).length===1?`instance`:`instances`),1),i[0]||=q(`span`,{class:`muted`},[Y(`Devframe dev servers running on this machine, discovered via the shared registry (`),q(`code`,null,`~/.devframe/instances/`),Y(`).`)],-1)]),e.instances?e.instances.length===0?(W(),G(`div`,Dx,[...i[1]||=[q(`span`,{class:`i-ph-broadcast-duotone inst-empty-icon`},null,-1),q(`p`,{class:`inst-empty-title`},` No devframe instances discovered `,-1),q(`p`,null,[Y(` This tab lists every devframe dev server running on your machine, so you can jump between them. Each server registers itself in `),q(`code`,null,`~/.devframe/instances/`),Y(` while it runs. `)],-1),q(`p`,null,[Y(` Nothing shows up when only static/build servers are running, when discovery is turned off (`),q(`code`,null,`DEVFRAME_DISABLE_INSTANCE_REGISTRY=1`),Y(`), or when an in-process host hasn't opted in. Start another `),q(`code`,null,`devframe`),Y(` dev server (or a hub host that calls `),q(`code`,null,`registerDevframeInstance()`),Y(`), then hit refresh. `)],-1)]])):(W(),G(`div`,Ox,[(W(!0),G(H,null,da(n.value,e=>(W(),G(`div`,{key:`${e.pid}-${e.port}`,class:`card`},[q(`div`,kx,[i[2]||=q(`span`,{class:`i-ph-broadcast-duotone cmd-icon`},null,-1),q(`span`,Ax,j(e.name??e.id),1),e.isCurrent?(W(),G(`span`,jx,`this instance`)):X(``,!0),e.hasMcp?(W(),G(`span`,Mx,`MCP`)):X(``,!0)]),q(`div`,Nx,j(e.id),1),q(`a`,{class:`inst-url`,href:e.url,target:`_blank`,rel:`noopener noreferrer`},[i[3]||=q(`span`,{class:`i-ph-arrow-square-out-duotone`},null,-1),q(`span`,Fx,j(e.url),1)],8,Px),q(`dl`,Ix,[q(`div`,null,[i[4]||=q(`dt`,null,`Port`,-1),q(`dd`,null,j(e.port),1)]),q(`div`,null,[i[5]||=q(`dt`,null,`PID`,-1),q(`dd`,null,j(e.pid),1)]),q(`div`,null,[i[6]||=q(`dt`,null,`Uptime`,-1),q(`dd`,null,j(r(e.startedAt)),1)]),q(`div`,Lx,[i[7]||=q(`dt`,null,`Root`,-1),q(`dd`,{title:e.rootDir},j(e.rootDir),9,Rx)])])]))),128))])):(W(),G(`div`,Ex,` Discovering instances… `))]))}}),Bx=z({__name:`InstancesSmart`,setup(e){let t=Jv(),n=sn(null);async function r(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:list-instances`))}return Tm(r),Ji(r),(e,t)=>(W(),K(zx,{instances:n.value},null,8,[`instances`]))}}),Vx={class:`split`},Hx={class:`keys`},Ux={class:`keys-head`},Wx={class:`checkbox`},Gx={class:`keys-list`},Kx={key:0,class:`empty`},qx={key:1,class:`empty`},Jx=[`title`,`onClick`],Yx={class:`state-main`},Xx={key:0,class:`center`},Zx={key:1,class:`center`},Qx={class:`state-meta`},$x={class:`state-key`},eS={key:0,class:`pulse`},tS={key:1,class:`note`},nS=z({__name:`StateView`,props:{keys:{},selectedKey:{},value:{},loading:{type:Boolean},isStatic:{type:Boolean},updates:{},highlightPaths:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,i=I(!1),a=Z(()=>{let e=n.keys??[];return i.value?e:e.filter(e=>!e.startsWith(`devframe:`)&&!e.startsWith(`__`))});return(t,n)=>(W(),G(`div`,Vx,[q(`aside`,Hx,[q(`div`,Ux,[q(`span`,null,j(a.value.length)+` keys`,1),q(`label`,Wx,[pr(q(`input`,{"onUpdate:modelValue":n[0]||=e=>i.value=e,type:`checkbox`},null,512),[[Bl,i.value]]),n[1]||=Y(` internal `,-1)])]),q(`div`,Gx,[e.keys?a.value.length===0?(W(),G(`div`,qx,` No shared state`+j(e.keys.length?` (toggle internal)`:``)+`. `,1)):X(``,!0):(W(),G(`div`,Kx,` Loading… `)),(W(!0),G(H,null,da(a.value,t=>(W(),G(`button`,{key:t,class:A([`key-item`,{active:e.selectedKey===t}]),title:t,onClick:e=>r(`select`,t)},j(t),11,Jx))),128))])]),q(`section`,Yx,[e.selectedKey?e.loading?(W(),G(`div`,Zx,` Loading state… `)):(W(),G(H,{key:2},[q(`div`,Qx,[q(`span`,$x,j(e.selectedKey),1),e.isStatic?(W(),G(`span`,tS,`static snapshot`)):(W(),G(`span`,eS,`live`+j(e.updates?` · ${e.updates} update${e.updates>1?`s`:``}`:``),1))]),J(my,{value:e.value,"expand-depth":3,"highlight-paths":e.highlightPaths},null,8,[`value`,`highlight-paths`])],64)):(W(),G(`div`,Xx,` Select a shared-state key to inspect its live value. `))])]))}}),rS=z({__name:`StateSmart`,setup(e){let t=Jv(),n=sn(null),r=I(null),i=sn(void 0),a=I(!1),o=sn(new Set),s=I(0),c=null,l=null;async function u(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:list-state-keys`))}Tm(u),Ji(u);function d(e,t,n=``,r=new Set){if(e===t)return r;if(!(typeof e==`object`&&e)||!(typeof t==`object`&&t))return r.add(n),r;let i=new Set([...Object.keys(e),...Object.keys(t)]);for(let a of i){let i=n?`${n}.${a}`:a,o=a in e,s=a in t;!o||!s?r.add(i):d(e[a],t[a],i,r)}return r}function f(e){o.value=e,l&&clearTimeout(l),l=setTimeout(()=>{o.value=new Set},1600)}function p(){c?.(),c=null}return Cr(r,async e=>{if(p(),i.value=void 0,s.value=0,o.value=new Set,!(!e||!t.value)){a.value=!0;try{let n=await t.value.sharedState.get(e);i.value=n.value(),c=n.on(`updated`,e=>{let t=d(i.value,e);i.value=e,s.value++,f(t)})}finally{a.value=!1}}}),Pe(()=>{p(),l&&clearTimeout(l)}),(e,t)=>(W(),K(nS,{keys:n.value,"selected-key":r.value,value:i.value,loading:a.value,"is-static":L(Yv)(),updates:s.value,"highlight-paths":o.value,onSelect:t[0]||=e=>r.value=e},null,8,[`keys`,`selected-key`,`value`,`loading`,`is-static`,`updates`,`highlight-paths`]))}}),iS={class:`app`},aS={class:`app-body`},oS={class:`flex flex-col gap-1`},sS=z({__name:`App`,setup(e){let t=I(`functions`),{refresh:n,loading:r}=Em(),i=Z(()=>hm(Uv.status)),a=Z(()=>_m(Uv.status)),o=[{value:`functions`,label:`Functions`,icon:`i-ph-function-duotone`},{value:`state`,label:`State`,icon:`i-ph-database-duotone`},{value:`agent`,label:`Agent`,icon:`i-ph-robot-duotone`},{value:`commands`,label:`Commands`,icon:`i-ph-terminal-window-duotone`},{value:`history`,label:`History`,icon:`i-ph-clock-counter-clockwise-duotone`},{value:`instances`,label:`Instances`,icon:`i-ph-broadcast-duotone`}],s=Z(()=>Yv()?o.filter(e=>e.value!==`instances`):o);Ji(qv);function c(){location.reload()}return(e,o)=>(W(),G(`div`,iS,[J(dm,{glass:!1,class:`h-nav`},{search:R(()=>[...o[1]||=[q(`div`,null,null,-1)]]),end:R(()=>[i.value?(W(),G(`span`,{key:0,class:A(i.value.class)},[q(`span`,{class:A(i.value.dot)},null,2),Y(` `+j(i.value.label),1)],2)):X(``,!0),J(Qf,{class:`text-sm`,icon:L(r)?`i-ph-arrows-clockwise animate-spin`:`i-ph-arrows-clockwise`,tooltip:L(r)?`Refreshing…`:`Refresh`,label:`Refresh`,disabled:L(r)||!L(Uv).connected,onClick:L(n)},null,8,[`icon`,`tooltip`,`disabled`,`onClick`])]),default:R(()=>[o[2]||=q(`div`,{class:`flex items-center gap-1.5 shrink-0 font-semibold text-sm select-none`},[q(`span`,{class:`i-ph-magnifying-glass-duotone text-base color-active`}),q(`span`,null,`Devframe Inspector`)],-1),J(cm,{modelValue:t.value,"onUpdate:modelValue":o[0]||=e=>t.value=e,tabs:s.value,variant:`segment`},null,8,[`modelValue`,`tabs`])]),_:1}),q(`main`,aS,[a.value?(W(),G(`div`,{key:0,class:A(L(vm)(`h-full`))},[q(`span`,{class:A([a.value.icon,L(ym)(a.value.spin)])},null,2),q(`div`,oS,[q(`p`,{class:A(L(bm)())},j(a.value.title),3),q(`p`,{class:A(L(xm)())},j(a.value.body),3),L(Uv).error&&L(Uv).status===`error`?(W(),G(`p`,{key:0,class:A(L(Sm)())},j(L(Uv).error),3)):X(``,!0)]),a.value.reloadable?(W(),G(`button`,{key:0,type:`button`,class:A(L(pm)({variant:`primary`,size:`sm`})),onClick:c},[...o[3]||=[q(`span`,{class:`i-ph-arrow-clockwise`},null,-1),Y(` Reload `,-1)]],2)):X(``,!0)],2)):(W(),G(H,{key:1},[t.value===`functions`?(W(),K(cx,{key:0})):t.value===`state`?(W(),K(rS,{key:1})):t.value===`agent`?(W(),K(Zy,{key:2})):t.value===`commands`?(W(),K(Db,{key:3})):t.value===`history`?(W(),K(Sx,{key:4})):t.value===`instances`?(W(),K(Bx,{key:5})):X(``,!0)],64))])]))}}),cS=window.matchMedia(`(prefers-color-scheme: dark)`);function lS(e){document.documentElement.classList.toggle(`dark`,e),document.documentElement.classList.toggle(`light`,!e)}lS(cS.matches),cS.addEventListener(`change`,e=>lS(e.matches)),uu(sS).mount(`#app`);
7
+ `)}}var Wm=Um(Lm);function Gm(e,{method:t=`warn`}={}){console[t](Wm(e))}function Km(e){return Hm({...e,reporters:[Gm,...e.reporters??[]]})}var qm=Km({docsBase:`https://devfra.me/errors`,codes:{DF0019:{why:e=>`RPC function "${e.name}" has \`agent\` set but \`jsonSerializable\` is not \`true\`; MCP requires JSON-serializable data.`,fix:"Set `jsonSerializable: true` if the payload is JSON-safe, or remove `agent` to keep it RPC-only."},DF0020:{why:e=>`RPC function "${e.name}" declares \`jsonSerializable: true\` but the value at "${e.path}" is a ${e.type}.`,fix:"Either drop `jsonSerializable: true` (falls back to structured-clone) or change the value to a JSON-safe shape."},DF0021:{why:e=>`RPC function "${e.name}" is already registered`,fix:"Use the `force` parameter to overwrite an existing registration."},DF0022:{why:e=>`RPC function "${e.name}" is not registered. Use register() to add new functions.`},DF0023:{why:e=>`RPC function "${e.name}" is not registered`},DF0024:{why:e=>`Either handler or setup function must be provided for RPC function "${e.name}"`},DF0025:{why:e=>`Function "${e.name}" not found in dump store`},DF0026:{why:e=>`No dump match for "${e.name}" with args: ${e.args}`},DF0027:{why:e=>`Function "${e.name}" with type "${e.type}" cannot have dump configuration. Only "static" and "query" types support dumps.`},DF0028:{why:e=>`Function "${e.name}" with type "${e.type}" cannot use \`snapshot: true\`. Only "query" functions support this sugar; "static" functions have equivalent default behavior already.`,fix:"Remove `snapshot: true`, or change the function type to `query`."},DF0043:{why:e=>`RPC function "${e.name}" received an invalid argument at position ${e.index}: ${e.issues}`,fix:"Pass a value that satisfies the `args` schema declared for this function."},DF0044:{why:e=>`RPC function "${e.name}" returned a value that failed its \`returns\` schema: ${e.issues}`,fix:"Make the handler return a value that satisfies the `returns` schema, or relax the schema."}}});async function Jm(e,t){let n=e[`~standard`].validate(t);return n instanceof Promise?await n:n}function Ym(e){return e.map(e=>{let t=e.path?.map(e=>typeof e==`object`?e.key:e).join(`.`);return t?`${t}: ${e.message}`:e.message}).join(`; `)}async function Xm(e,t,n){let r=n.slice();if(!t||t.length===0)return r;for(let r=0;r<t.length;r++){let i=t[r];if(!i)continue;let a=await Jm(i,n[r]);if(a.issues)throw qm.DF0043({name:e,index:r,issues:Ym(a.issues)})}return r}async function Zm(e,t,n){if(!t)return n;let r=await Jm(t,n);if(r.issues)throw qm.DF0044({name:e,issues:Ym(r.issues)});return n}async function Qm(e,t){if(!e.setup)return{};if(typeof t==`object`&&t){e.__cache??=new WeakMap;let n=e.__cache,r=n.get(t);return r||(r=Promise.resolve(e.setup(t)),r.catch(()=>{n.get(t)===r&&n.delete(t)}),n.set(t,r)),await r}if(!e.__promise){let n=Promise.resolve(e.setup(t));n.catch(()=>{e.__promise===n&&(e.__promise=void 0)}),e.__promise=n}return await e.__promise}async function $m(e,t){let n=e.handler;if(!n){let r=await Qm(e,t);if(!r.handler)throw qm.DF0024({name:e.name});n=r.handler}let r=e.args,i=e.returns;if(!r&&!i)return n;let a=n;return async(...t)=>{let n=await Xm(e.name,r,t),o=await a(...n);return await Zm(e.name,i,o)}}var eh=class{context;definitions=new Map;functions;_onChanged=[];constructor(e){this.context=e;let t=this.definitions,n=this;this.functions=new Proxy({},{get(e,r){let i=t.get(r);if(i)return $m(i,n.context)},has(e,n){return t.has(n)},getOwnPropertyDescriptor(e,n){return{value:t.get(n)?.handler,configurable:!0,enumerable:!0}},ownKeys(){return Array.from(t.keys())}})}register(e,t=!1){if(this.definitions.has(e.name)&&!t)throw qm.DF0021({name:e.name});th(e),this.definitions.set(e.name,e),this._onChanged.forEach(t=>t(e.name))}update(e,t=!1){if(!this.definitions.has(e.name)&&!t)throw qm.DF0022({name:e.name});th(e),this.definitions.set(e.name,e),this._onChanged.forEach(t=>t(e.name))}onChanged(e){return this._onChanged.push(e),()=>{let t=this._onChanged.indexOf(e);t!==-1&&this._onChanged.splice(t,1)}}async getHandler(e){return await $m(this.definitions.get(e),this.context)}getSchema(e){let t=this.definitions.get(e);if(!t)throw qm.DF0023({name:String(e)});return{args:t.args,returns:t.returns}}has(e){return this.definitions.has(e)}get(e){return this.definitions.get(e)}list(){return Array.from(this.definitions.keys())}};function th(e){if(e.agent&&e.jsonSerializable!==!0)throw qm.DF0019({name:e.name})}function nh(e,t=``){return JSON.stringify(e,function(e,n){let r=this,i=r==null?n:r[e];if(i===void 0){if(Array.isArray(r))throw ih(t,`undefined`,r,e);return n}return i!==null&&rh(i,r,e,t),n})}function rh(e,t,n,r){if(typeof e==`bigint`)throw ih(r,`BigInt`,t,n);if(typeof e!=`object`)return;if(e instanceof Map)throw ih(r,`Map`,t,n);if(e instanceof Set)throw ih(r,`Set`,t,n);if(e instanceof Date)throw ih(r,`Date`,t,n);if(Array.isArray(e))return;let i=Object.getPrototypeOf(e);if(i!==null&&i!==Object.prototype)throw ih(r,e.constructor?.name??`class instance`,t,n)}function ih(e,t,n,r){let i=ah(n,r);return qm.DF0020({name:e||`<anonymous>`,type:t,path:i})}function ah(e,t){return Array.isArray(e)?`[${t}]`:t===``?`<root>`:t}function oh(){let e={};function t(t,...n){let r=e[t]||[];for(let e=0,t=r.length;e<t;e++){let t=r[e];t&&t(...n)}}function n(n,...r){t(n,...r),delete e[n]}function r(t,n){return(e[t]||=[]).push(n),()=>{e[t]=e[t]?.filter(e=>n!==e)}}function i(e,t){let n=r(e,((...e)=>(n(),t(...e))));return n}return{_listeners:e,emit:t,emitOnce:n,on:r,once:i}}String.fromCharCode;var sh=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,ch=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,lh=/^([/\\]\s*){2,}[^/\\]/,uh=/\/$|\/\?|\/#/,dh=/^\.?\//;function fh(e,t={}){return typeof t==`boolean`&&(t={acceptRelative:t}),t.strict?sh.test(e):ch.test(e)||(t.acceptRelative?lh.test(e):!1)}function ph(e=``,t){return t?uh.test(e):e.endsWith(`/`)}function mh(e=``,t){if(!t)return(ph(e)?e.slice(0,-1):e)||`/`;if(!ph(e,!0))return e||`/`;let n=e,r=``,i=e.indexOf(`#`);i!==-1&&(n=e.slice(0,i),r=e.slice(i));let[a,...o]=n.split(`?`);return((a.endsWith(`/`)?a.slice(0,-1):a)||`/`)+(o.length>0?`?${o.join(`?`)}`:``)+r}function hh(e=``,t){if(!t)return e.endsWith(`/`)?e:e+`/`;if(ph(e,!0))return e||`/`;let n=e,r=``,i=e.indexOf(`#`);if(i!==-1&&(n=e.slice(0,i),r=e.slice(i),!n))return r;let[a,...o]=n.split(`?`);return a+`/`+(o.length>0?`?${o.join(`?`)}`:``)+r}function gh(e,t){if(_h(t)||fh(e))return e;let n=mh(t);if(e.startsWith(n)){let t=e[n.length];if(!t||t===`/`||t===`?`)return e}return yh(n,e)}function _h(e){return!e||e===`/`}function vh(e){return e&&e!==`/`}function yh(e,...t){let n=e||``;for(let e of t.filter(e=>vh(e)))if(n){let t=e.replace(dh,``);n=hh(n)+t}else n=e;return n}function bh(e,t){let n=e.match(ch);return n||=e.match(/^\/{2,}/),n?t+e.slice(n[0].length):t+e}var xh=`__DEVFRAME_CONNECTION_META__`,Sh=`__DEVFRAME_CONNECTION_AUTH_TOKEN__`;function Ch(e){let t=[()=>window?.[e],()=>globalThis?.[e],()=>parent.window?.[e]];for(let e of t)try{let t=e();if(t)return t}catch{}}function wh(){return Ch(Om)}function Th(){return Ch(xh)}function Eh(e){if(e)return e;try{let e=localStorage.getItem(Sh);if(e)return e}catch{}return Ch(Sh)}function Dh(e){globalThis[Om]=e,globalThis[xh]={...e.connectionMeta,baseUrl:e.metaBaseUrl},e.authToken&&Oh(e.authToken)}function Oh(e){try{localStorage.setItem(Sh,e)}catch{}globalThis[Sh]=e;let t=wh();t&&(globalThis[Om]={...t,authToken:e})}function kh(e){let t=gh(Dm,e);try{return new URL(t,globalThis.location?.href).href}catch{return t}}function Ah(e,t){return t&&t!==e.authToken?{...e,authToken:t}:e}function jh(){let e=wh();if(e)return Ah(e,Eh()??e.authToken??e.connectionMeta.authToken);let t=Th();if(t)return{connectionMeta:t,metaBaseUrl:t.baseUrl??kh(`./`),authToken:Eh(t.authToken)}}async function Mh(e={}){if(e.connection){let t=Ah(e.connection,Eh(e.authToken??e.connection.authToken??e.connection.connectionMeta.authToken));return Dh(t),t}let t=Array.isArray(e.baseURL)?e.baseURL:[e.baseURL??`./`];if(e.connectionMeta){let n={connectionMeta:e.connectionMeta,metaBaseUrl:kh(t[0]??`./`),authToken:Eh(e.authToken??e.connectionMeta.authToken)};return Dh(n),n}let n=jh();if(n){let t=Ah(n,Eh(e.authToken??n.authToken??n.connectionMeta.authToken));return Dh(t),t}let r=[];for(let n of t){let t=gh(Dm,n),i=kh(n);try{let n=await fetch(t);if(!n.ok)throw Error(`Failed to fetch connection meta from ${i}: ${n.status}`);let r=await n.json(),a=n.url||i,o={connectionMeta:r,metaBaseUrl:r.baseUrl?new URL(r.baseUrl,a).href:a,authToken:Eh(e.authToken??r.authToken)};return Dh(o),o}catch(e){r.push(e)}}throw Error(`Failed to get connection meta from ${t.join(`, `)}`,{cause:r})}var Nh=class extends Error{name=`DevframeConnectionError`;kind;constructor(e,t,n){super(t,n),this.kind=e}};function Ph(e=Mm){try{let t=globalThis.location?.hash?.replace(/^#/,``)??``;return new URLSearchParams(t).get(e)||void 0}catch{return}}function Fh(e){try{let t=new URL(globalThis.location.href),n=new URLSearchParams(t.hash.replace(/^#/,``));if(!n.has(e))return;n.delete(e),t.hash=n.toString(),globalThis.history?.replaceState(globalThis.history.state,``,t.href)}catch{}}function Ih(e=Mm){let t=Ph(e);return t&&Fh(e),t}async function Lh(e,t={}){let n=Ih(t.param??`devframe_otp`);return n?e.isTrusted?!0:e.requestTrustWithCode(n):!1}function Rh(e){let t={},n=new WeakMap,r,i=()=>(r??=e.sharedState.get(jm,{initialValue:{}}).then(e=>(t=e.value(),e.on(`updated`,e=>{t=e}),e)),r);return i(),{state:i,has:e=>e in t,keys:()=>Object.keys(t),get:r=>{let i=t[r];if(!i)return;let a=n.get(i);return a||(a={...i,rpc:e.scope(i.scope).rpc},n.set(i,a)),a}}}var zh=Symbol.for(`immer-nothing`),Bh=Symbol.for(`immer-draftable`),Vh=Symbol.for(`immer-state`);function Hh(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Uh=Object,Wh=Uh.getPrototypeOf,Gh=`constructor`,Kh=`prototype`,qh=`configurable`,Jh=`enumerable`,Yh=`writable`,Xh=`value`,Zh=e=>!!e&&!!e[Vh];function Qh(e){return e?tg(e)||cg(e)||!!e[Bh]||!!e[Gh]?.[Bh]||lg(e)||ug(e):!1}var $h=Uh[Kh][Gh].toString(),eg=new WeakMap;function tg(e){if(!e||!dg(e))return!1;let t=Wh(e);if(t===null||t===Uh[Kh])return!0;let n=Uh.hasOwnProperty.call(t,Gh)&&t[Gh];if(n===Object)return!0;if(!fg(n))return!1;let r=eg.get(n);return r===void 0&&(r=Function.toString.call(n),eg.set(n,r)),r===$h}function ng(e,t,n=!0){rg(e)===0?(n?Reflect.ownKeys(e):Uh.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function rg(e){let t=e[Vh];return t?t.type_:cg(e)?1:lg(e)?2:ug(e)?3:0}var ig=(e,t,n=rg(e))=>n===2?e.has(t):Uh[Kh].hasOwnProperty.call(e,t),ag=(e,t,n=rg(e))=>n===2?e.get(t):e[t],og=(e,t,n,r=rg(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function sg(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var cg=Array.isArray,lg=e=>e instanceof Map,ug=e=>e instanceof Set,dg=e=>typeof e==`object`,fg=e=>typeof e==`function`,pg=e=>typeof e==`boolean`;function mg(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var hg=e=>dg(e)?e?.[Vh]:null,gg=e=>e.copy_||e.base_,_g=e=>e.modified_?e.copy_:e.base_;function vg(e,t){if(lg(e))return new Map(e);if(ug(e))return new Set(e);if(cg(e))return Array[Kh].slice.call(e);let n=tg(e);if(t===!0||t===`class_only`&&!n){let t=Uh.getOwnPropertyDescriptors(e);delete t[Vh];let n=Reflect.ownKeys(t);for(let r=0;r<n.length;r++){let i=n[r],a=t[i];a[Yh]===!1&&(a[Yh]=!0,a[qh]=!0),(a.get||a.set)&&(t[i]={[qh]:!0,[Yh]:!0,[Jh]:a[Jh],[Xh]:e[i]})}return Uh.create(Wh(e),t)}{let t=Wh(e);if(t!==null&&n)return{...e};let r=Uh.create(t);return Uh.assign(r,e)}}function yg(e,t=!1){return Sg(e)||Zh(e)||!Qh(e)?e:(rg(e)>1&&Uh.defineProperties(e,{set:xg,add:xg,clear:xg,delete:xg}),Uh.freeze(e),t&&ng(e,(e,t)=>{yg(t,!0)},!1),e)}function bg(){Hh(2)}var xg={[Xh]:bg};function Sg(e){return e===null||!dg(e)||Uh.isFrozen(e)}var Cg=`MapSet`,wg=`Patches`,Tg=`ArrayMethods`,Eg={};function Dg(e){let t=Eg[e];return t||Hh(0,e),t}var Og=e=>!!Eg[e];function kg(e,t){Eg[e]||(Eg[e]=t)}var Ag,jg=()=>Ag,Mg=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Og(Cg)?Dg(Cg):void 0,arrayMethodsPlugin_:Og(Tg)?Dg(Tg):void 0});function Ng(e,t){t&&(e.patchPlugin_=Dg(wg),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Pg(e){Fg(e),e.drafts_.forEach(Lg),e.drafts_=null}function Fg(e){e===Ag&&(Ag=e.parent_)}var Ig=e=>Ag=Mg(Ag,e);function Lg(e){let t=e[Vh];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Rg(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[Vh].modified_&&(Pg(t),Hh(4)),Qh(e)&&(e=zg(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[Vh].base_,e,t)}else e=zg(t,n);return Bg(t,e,!0),Pg(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===zh?void 0:e}function zg(e,t){if(Sg(t))return t;let n=t[Vh];if(!n)return Jg(t,e.handledSet_,e);if(!Hg(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){let{callbacks_:t}=n;if(t)for(;t.length>0;)t.pop()(e);Kg(n,e)}return n.copy_}function Bg(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&yg(t,n)}function Vg(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Hg=(e,t)=>e.scope_===t,Ug=[];function Wg(e,t,n,r){let i=gg(e),a=e.type_;if(r!==void 0&&ag(i,r,a)===t){og(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;ng(i,(e,n)=>{if(Zh(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??Ug;for(let e of o)og(i,e,n,a)}function Gg(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!Hg(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=_g(i);Wg(e,i.draft_??i,a,n),Kg(i,r)})}function Kg(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){let{patchPlugin_:n}=t;if(n){let r=n.getPath(e);r&&n.generatePatches_(e,r,t)}Vg(e)}}function qg(e,t,n){let{scope_:r}=e;if(Zh(n)){let i=n[Vh];Hg(i,r)&&i.callbacks_.push(function(){r_(e),Wg(e,n,_g(i),t)})}else Qh(n)&&e.callbacks_.push(function(){let i=gg(e);e.type_===3?i.has(n)&&Jg(n,r.handledSet_,r):ag(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Jg(ag(e.copy_,t,e.type_),r.handledSet_,r)})}function Jg(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Zh(e)||t.has(e)||!Qh(e)||Sg(e)?e:(t.add(e),ng(e,(r,i)=>{if(Zh(i)){let t=i[Vh];Hg(t,n)&&(og(e,r,_g(t),e.type_),Vg(t))}else Qh(i)&&Jg(i,t,n)}),e)}function Yg(e,t){let n=cg(e),r={type_:+!!n,scope_:t?t.scope_:jg(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0},i=r,a=Xg;n&&(i=[r],a=Zg);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var Xg={get(e,t){if(t===Vh)return e;let n=e.scope_.arrayMethodsPlugin_,r=e.type_===1&&typeof t==`string`;if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);let i=gg(e);if(!ig(i,t,e.type_))return e_(e,i,t);let a=i[t];if(e.finalized_||!Qh(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&mg(t))return a;if(a===Qg(e.base_,t)||$g(e,t,a)){r_(e);let n=e.type_===1?+t:t,r=a_(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in gg(e)},ownKeys(e){return Reflect.ownKeys(gg(e))},set(e,t,n){let r=t_(gg(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=Qg(gg(e),t),i=r?.[Vh];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(sg(n,r)&&(n!==void 0||ig(e.base_,t,e.type_)))return!0;r_(e),n_(e)}return e.copy_[t]===n&&(n!==void 0||ig(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),qg(e,t,n),!0)},deleteProperty(e,t){return r_(e),Qg(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),n_(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=gg(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Yh]:!0,[qh]:e.type_!==1||t!==`length`,[Jh]:r[Jh],[Xh]:n[t]}},defineProperty(){Hh(11)},getPrototypeOf(e){return Wh(e.base_)},setPrototypeOf(){Hh(12)}},Zg={};for(let e in Xg){let t=Xg[e];Zg[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}Zg.deleteProperty=function(e,t){return Zg.set.call(this,e,t,void 0)},Zg.set=function(e,t,n){return Xg.set.call(this,e[0],t,n,e[0])};function Qg(e,t){let n=e[Vh];return(n?gg(n):e)[t]}function $g(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||e.assigned_?.get(t)||!Qh(n)||n[Vh]?!1:e.baseRefs_.has(n)}function e_(e,t,n){let r=t_(t,n);return r?Xh in r?r[Xh]:r.get?.call(e.draft_):void 0}function t_(e,t){if(!(t in e))return;let n=Wh(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=Wh(n)}}function n_(e){e.modified_||(e.modified_=!0,e.parent_&&n_(e.parent_))}function r_(e){e.copy_||=(e.assigned_=new Map,vg(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var i_=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(fg(e)&&!fg(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}fg(t)||Hh(6),n!==void 0&&!fg(n)&&Hh(7);let r;if(Qh(e)){let i=Ig(this),a=a_(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?Pg(i):Fg(i)}return Ng(i,n),Rg(r,i)}if(!e||!dg(e)){if(r=t(e),r===void 0&&(r=e),r===zh&&(r=void 0),this.autoFreeze_&&yg(r,!0),n){let t=[],i=[];Dg(wg).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}Hh(1,e)},this.produceWithPatches=(e,t)=>{if(fg(e))return(t,...n)=>this.produceWithPatches(t,t=>e(t,...n));let n,r;return[this.produce(e,t,(e,t)=>{n=e,r=t}),n,r]},pg(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),pg(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),pg(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Qh(e)||Hh(8),Zh(e)&&(e=o_(e));let t=Ig(this),n=a_(t,e,void 0);return n[Vh].isManual_=!0,Fg(t),n}finishDraft(e,t){let n=e&&e[Vh];(!n||!n.isManual_)&&Hh(9);let{scope_:r}=n;return Ng(r,t),Rg(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){let r=t[n];if(r.path.length===0&&r.op===`replace`){e=r.value;break}}n>-1&&(t=t.slice(n+1));let r=Dg(wg).applyPatches_;return Zh(e)?r(e,t):this.produce(e,e=>r(e,t))}};function a_(e,t,n,r){let[i,a]=lg(t)?Dg(Cg).proxyMap_(t,n):ug(t)?Dg(Cg).proxySet_(t,n):Yg(t,n);return(n?.scope_??jg()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?Gg(n,a,r):a.callbacks_.push(function(e){e.mapSetPlugin_?.fixSetContents(a);let{patchPlugin_:t}=e;a.modified_&&t&&t.generatePatches_(a,[],e)}),i}function o_(e){return Zh(e)||Hh(10,e),s_(e)}function s_(e){if(!Qh(e)||Sg(e))return e;let t=e[Vh],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=vg(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=vg(e,!0);return ng(n,(e,t)=>{og(n,e,s_(t))},r),t&&(t.finalized_=!1),n}function c_(){function e(n,r=[]){if(n.key_!==void 0){let e=n.parent_.copy_??n.parent_.base_,t=hg(ag(e,n.key_)),i=ag(e,n.key_);if(i===void 0||i!==n.draft_&&i!==n.base_&&i!==n.copy_||t!=null&&t.base_!==n.base_)return null;let a=n.parent_.type_===3,o;if(a){let e=n.parent_;o=Array.from(e.drafts_.keys()).indexOf(n.key_)}else o=n.key_;if(!(a&&e.size>o||ig(e,o)))return null;r.push(o)}if(n.parent_)return e(n.parent_,r);r.reverse();try{t(n.copy_,r)}catch{return null}return r}function t(e,t){let n=e;for(let e=0;e<t.length-1;e++){let r=t[e];if(n=ag(n,r),!dg(n)||n===null)throw Error(`Cannot resolve path at '${t.join(`/`)}'`)}return n}let n=`replace`,r=`remove`;function i(e,t,n){if(e.scope_.processedForPatches_.has(e))return;e.scope_.processedForPatches_.add(e);let{patches_:r,inversePatches_:i}=n;switch(e.type_){case 0:case 2:return o(e,t,r,i);case 1:return a(e,t,r,i);case 3:return s(e,t,r,i)}}function a(e,t,i,a){let{base_:o,assigned_:s}=e,c=e.copy_;c.length<o.length&&([o,c]=[c,o],[i,a]=[a,i]);let l=e.allIndicesReassigned_===!0;for(let e=0;e<o.length;e++){let r=c[e],u=o[e];if((l||s?.get(e.toString()))&&r!==u){let o=r?.[Vh];if(o&&o.modified_)continue;let s=t.concat([e]);i.push({op:n,path:s,value:d(r)}),a.push({op:n,path:s,value:d(u)})}}for(let e=o.length;e<c.length;e++){let n=t.concat([e]);i.push({op:`add`,path:n,value:d(c[e])})}for(let e=c.length-1;o.length<=e;--e){let n=t.concat([e]);a.push({op:r,path:n})}}function o(e,t,i,a){let{base_:o,copy_:s,type_:c}=e;ng(e.assigned_,(e,l)=>{let u=ag(o,e,c),f=ag(s,e,c),p=l?ig(o,e)?n:`add`:r;if(u===f&&p===n)return;let m=t.concat(e);i.push(p===r?{op:p,path:m}:{op:p,path:m,value:d(f)}),a.push(p===`add`?{op:r,path:m}:p===r?{op:`add`,path:m,value:d(u)}:{op:n,path:m,value:d(u)})})}function s(e,t,n,i){let{base_:a,copy_:o}=e,s=0;a.forEach(e=>{if(!o.has(e)){let a=t.concat([s]);n.push({op:r,path:a,value:e}),i.unshift({op:`add`,path:a,value:e})}s++}),s=0,o.forEach(e=>{if(!a.has(e)){let a=t.concat([s]);n.push({op:`add`,path:a,value:e}),i.unshift({op:r,path:a,value:e})}s++})}function c(e,t,r){let{patches_:i,inversePatches_:a}=r;i.push({op:n,path:[],value:t===zh?void 0:t}),a.push({op:n,path:[],value:e})}function l(e,t){return t.forEach(t=>{let{path:i,op:a}=t,o=e;for(let e=0;e<i.length-1;e++){let t=rg(o),n=i[e];typeof n!=`string`&&typeof n!=`number`&&(n=``+n),(t===0||t===1)&&(n===`__proto__`||n===Gh)&&Hh(19),fg(o)&&n===Kh&&Hh(19),o=ag(o,n),(o===null||!dg(o))&&Hh(18,i.join(`/`))}let s=rg(o),c=u(t.value),l=i[i.length-1];switch(a){case n:switch(s){case 2:return o.set(l,c);case 3:Hh(16);default:return o[l]=c}case`add`:switch(s){case 1:return l===`-`?o.push(c):o.splice(l,0,c);case 2:return o.set(l,c);case 3:return o.add(c);default:return o[l]=c}case r:switch(s){case 1:return o.splice(l,1);case 2:return o.delete(l);case 3:return o.delete(t.value);default:return delete o[l]}default:Hh(17,a)}}),e}function u(e){if(!Qh(e))return e;if(cg(e))return e.map(u);if(lg(e))return new Map(Array.from(e.entries()).map(([e,t])=>[e,u(t)]));if(ug(e))return new Set(Array.from(e).map(u));let t=Object.create(Wh(e));for(let n in e)t[n]=u(e[n]);return ig(e,Bh)&&(t[Bh]=e[Bh]),t}function d(e){return Zh(e)?u(e):e}kg(wg,{applyPatches_:l,generatePatches_:i,generateReplacementPatches_:c,getPath:e})}globalThis.Iterator?.from;var l_=new i_,u_=l_.produce,d_=l_.produceWithPatches.bind(l_),f_=l_.applyPatches.bind(l_),p_=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`;function m_(e=21){let t=``,n=e;for(;n--;)t+=p_[Math.random()*64|0];return t}var h_=1e3;function g_(e,t){if(e.add(t),e.size>h_){let t=e.values().next().value;t!==void 0&&e.delete(t)}}function __(e){let{enablePatches:t=!1}=e;t&&c_();let n=oh(),r=e.initialValue,i=new Set;return{on:n.on,value:()=>r,patch:(e,t=m_())=>{i.has(t)||(c_(),r=f_(r,e),g_(i,t),n.emit(`updated`,r,void 0,t))},mutate:(e,a=m_())=>{if(!i.has(a)){if(g_(i,a),t){let[t,i]=d_(r,e);r=t,n.emit(`updated`,r,i,a)}else r=u_(r,e),n.emit(`updated`,r,void 0,a)}},syncIds:i}}function v_(e){let t=new Map,n=new Map,r=new Map,i=new Set,a=e.connectionMeta.backend===`static`;function o(e,t){let n=r.get(e);return n&&typeof n==`object`&&!Array.isArray(n)&&typeof t==`object`&&!Array.isArray(t)?{...n,...t}:t}e.client.register({name:$.broadcast.clientStateUpdated,type:`event`,handler:(e,n,r)=>{let i=t.get(e);!i||i.syncIds.has(r)||i.mutate(()=>o(e,n),r)}}),e.client.register({name:$.broadcast.clientStatePatch,type:`event`,handler:(e,n,r)=>{let i=t.get(e);!i||i.syncIds.has(r)||i.patch(n,r)}});function s(t,n){let r=[];return r.push(n.on(`updated`,(n,r,i)=>{a||(r?e.callEvent(`devframe:rpc:server-state:patch`,t,r,i):e.callEvent(`devframe:rpc:server-state:set`,t,n,i))})),()=>{for(let e of r)e()}}return{keys:()=>Array.from(t.keys()),onKeyAdded(e){return i.add(e),()=>{i.delete(e)}},delete(e){let i=n.get(e);n.delete(e);let a=t.delete(e);return r.delete(e),i?.(),a},get:async(c,l)=>{if(l?.initialValue!==void 0&&r.set(c,l.initialValue),t.has(c))return t.get(c);let u=__({initialValue:l?.initialValue,enablePatches:!1});async function d(){if(a||e.callEvent(`devframe:rpc:server-state:subscribe`,c),l?.initialValue!==void 0){t.set(c,u);for(let e of i)e(c);return e.call(`devframe:rpc:server-state:get`,c).then(e=>{e!==void 0&&u.mutate(()=>o(c,e))}).catch(e=>{console.error(`Error getting server state`,e)}),n.set(c,s(c,u)),u}{let r=await e.call(`devframe:rpc:server-state:get`,c);u.mutate(()=>o(c,r)),t.set(c,u);for(let e of i)e(c);return n.set(c,s(c,u)),u}}return new Promise(t=>{if(e.isTrusted)d().then(t);else{t(u);let n=!1;e.events.on($.client.isTrustedUpdated,e=>{e&&!n&&(n=!0,d())})}})}}}var y_=typeof self==`object`?self:globalThis,b_=new Set([`Error`,`EvalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`,`AggregateError`]),x_=new Set([`Boolean`,`Number`,`String`,`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float16Array`,`Float32Array`,`Float64Array`,`BigInt64Array`,`BigUint64Array`]);function S_(e,t){let n=(t,n)=>(e.set(n,t),t),r=i=>{if(e.has(i))return e.get(i);let[a,o]=t[i];switch(a){case 0:case-1:return n(o,i);case 1:{let e=n([],i);for(let t of o)e.push(r(t));return e}case 2:{let e=n({},i);for(let[t,n]of o)e[r(t)]=r(n);return e}case 3:return n(new Date(o),i);case 4:{let{source:e,flags:t}=o;return n(new RegExp(e,t),i)}case 5:{let e=n(new Map,i);for(let[t,n]of o)e.set(r(t),r(n));return e}case 6:{let e=n(new Set,i);for(let t of o)e.add(r(t));return e}case 7:{let{name:e,message:t}=o,r=b_.has(e)?y_[e]:void 0;return n(new(r??y_.Error)(t),i)}case 8:return n(BigInt(o),i);case`BigInt`:return n(Object(BigInt(o)),i);case`ArrayBuffer`:return n(new Uint8Array(o).buffer,o);case`DataView`:{let{buffer:e}=new Uint8Array(o);return n(new DataView(e),o)}}if(typeof a==`string`&&x_.has(a))return n(new y_[a](o),i);throw TypeError(`unable to deserialize unsafe or unknown type: ${String(a)}`)};return r}function C_(e){return S_(new Map,e)(0)}var w_=``,{toString:T_}={},{keys:E_}=Object;function D_(e){let t=typeof e;if(t!==`object`||!e)return[0,t];let n=T_.call(e).slice(8,-1);switch(n){case`Array`:return[1,w_];case`Object`:return[2,w_];case`Date`:return[3,w_];case`RegExp`:return[4,w_];case`Map`:return[5,w_];case`Set`:return[6,w_];case`DataView`:return[1,n]}return n.includes(`Array`)?[1,n]:n.includes(`Error`)?[7,n]:[2,n]}function O_([e,t]){return e===0&&(t===`function`||t===`symbol`)}function k_(e,t,n,r){let i=(e,t)=>{let i=r.push(e)-1;return n.set(t,i),i},a=r=>{if(n.has(r))return n.get(r);let[o,s]=D_(r);switch(o){case 0:{let t=r;switch(s){case`bigint`:o=8,t=r.toString();break;case`function`:case`symbol`:if(e)throw TypeError(`unable to serialize ${s}`);t=null;break;case`undefined`:return i([-1],r)}return i([o,t],r)}case 1:{if(s){let e=r;return s===`DataView`?e=new Uint8Array(r.buffer):s===`ArrayBuffer`&&(e=new Uint8Array(r)),i([s,[...e]],r)}let e=[],t=i([o,e],r);for(let t of r)e.push(a(t));return t}case 2:{if(s)switch(s){case`BigInt`:return i([s,r.toString()],r);case`Boolean`:case`Number`:case`String`:return i([s,r.valueOf()],r)}if(t&&`toJSON`in r)return a(r.toJSON());let n=[],c=i([o,n],r);for(let t of E_(r))(e||!O_(D_(r[t])))&&n.push([a(t),a(r[t])]);return c}case 3:return i([o,r.toISOString()],r);case 4:{let{source:e,flags:t}=r;return i([o,{source:e,flags:t}],r)}case 5:{let t=[],n=i([o,t],r);for(let[n,i]of r)(e||!(O_(D_(n))||O_(D_(i))))&&t.push([a(n),a(i)]);return n}case 6:{let t=[],n=i([o,t],r);for(let n of r)(e||!O_(D_(n)))&&t.push(a(n));return n}}let{message:c}=r;return i([o,{name:s,message:c}],r)};return a}function A_(e,t={}){let n=[];return k_(!(t.json||t.lossy),!!t.json,new Map,n)(e),n}var{parse:j_,stringify:M_}=JSON,N_={json:!0,lossy:!0};function P_(e){return C_(j_(e))}function F_(e){return M_(A_(e,N_))}function I_(e){return C_(e)}function L_(e){return F_(e)}function R_(e){return P_(e)}var z_=new Map;function B_(e=z_){let t=new Map;return{serialize:n=>{let r;return n.t===`q`?r=n.m:(r=t.get(n.i),t.delete(n.i)),!(n.t===`s`&&`e`in n)&&r&&e.get(r)?.jsonSerializable===!0?nh(n,r??``):`s:${L_(n)}`},deserialize:e=>{let n=e.startsWith(`s:`)?R_(e.slice(2)):JSON.parse(e);return n.t===`q`&&n.i&&n.m&&t.set(n.i,n.m),n}}}function V_(){}function H_(e){let t=e.search(/\n\n|\r\n\r\n/);if(!(t<0))return{frame:e.slice(0,t),rest:e.slice(t+(e[t]===`\r`?4:2))}}function U_(e){let t=`message`,n=[];for(let r of e.split(/\r?\n/))r.startsWith(`:`)||(r.startsWith(`event:`)?t=r.slice(6).trimStart():r.startsWith(`data:`)&&n.push(r.slice(5).replace(/^ /,``)));return{event:t,data:n}}function W_(e){let{onConnected:t=V_,onError:n=V_,onDisconnected:r=V_,definitions:i,fetch:a=globalThis.fetch.bind(globalThis)}=e,o=e.url;e.authToken&&(o=`${o}${o.includes(`?`)?`&`:`?`}${Nm}=${encodeURIComponent(e.authToken)}`);let s=B_(i),c=new AbortController,l=!1,u,d,f,p,m=new Promise((e,t)=>{f=e,p=t});m.catch(()=>{});function h(e){l||(l=!0,p(e),n(e),r())}function g(){l||(l=!0,p(Error(`Devframe SSE stream closed`)),r())}function _(e,n){if(e===`session`){f(n),t();return}u?.(n)}async function v(e){let t=e.getReader();d=t;let n=new TextDecoder,r=``;for(;;){let{done:e,value:i}=await t.read();if(e)break;for(r+=n.decode(i,{stream:!0});;){let e=H_(r);if(!e)break;r=e.rest;let{event:t,data:n}=U_(e.frame);n.length>0&&_(t,n.join(`
8
+ `))}}g()}return(async()=>{try{let e=await a(o,{headers:{accept:`text/event-stream`},signal:c.signal});if(!e.ok||!e.body)throw Error(`Devframe SSE stream request failed: ${e.status}`);await v(e.body)}catch(e){if(c.signal.aborted){g();return}h(e instanceof Error?e:Error(String(e)))}})(),{close:()=>{l=!0,c.abort(),d?.cancel().catch(()=>{})},on:e=>{u=e},post:async e=>{let t;try{t=await m}catch{return}if(l){n(Error(`Devframe SSE channel is closed; message dropped`));return}try{let n=await a(o,{method:`POST`,headers:{"content-type":`text/plain; charset=utf-8`,[km]:t},body:e});if(n.status===200){let e=await n.text();e&&u?.(e);return}if(!n.ok)throw Error(`Devframe SSE POST failed: ${n.status}`)}catch(e){n(e instanceof Error?e:Error(String(e)))}},serialize:s.serialize,deserialize:s.deserialize}}function G_(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var K_=Math.random.bind(Math),q_=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`;function J_(e=21){let t=``,n=e;for(;n--;)t+=q_[K_()*64|0];return t}var Y_=6e4,X_=e=>e,Z_=X_,{clearTimeout:Q_,setTimeout:$_}=globalThis;function ev(e,t){let{post:n,on:r,off:i=()=>{},eventNames:a=[],serialize:o=X_,deserialize:s=Z_,resolver:c,bind:l=`rpc`,timeout:u=Y_,proxify:d=!0}=t,f=!1,p=new Map,m,h;async function g(e,r,i,a){if(f)throw Error(`[birpc] rpc is closed, cannot call "${e}"`);let s={m:e,a:r,t:`q`};a&&(s.o=!0);let c=async e=>n(o(e));if(i){await c(s);return}if(m)try{await m}finally{m=void 0}let{promise:l,resolve:d,reject:g}=G_(),_=J_();s.i=_;let v;async function y(n=s){return u>=0&&(v=$_(()=>{try{if(t.onTimeoutError?.call(h,e,r)!==!0)throw Error(`[birpc] timeout on calling "${e}"`)}catch(e){g(e)}p.delete(_)},u),typeof v==`object`&&(v=v.unref?.())),p.set(_,{resolve:d,reject:g,timeoutId:v,method:e}),await c(n),l}try{t.onRequest?await t.onRequest.call(h,s,y,d):await y()}catch(e){if(t.onGeneralError?.call(h,e)!==!0)throw e;return}finally{Q_(v),p.delete(_)}return l}let _={$call:(e,...t)=>g(e,t,!1),$callOptional:(e,...t)=>g(e,t,!1,!0),$callEvent:(e,...t)=>g(e,t,!0),$callRaw:e=>g(e.method,e.args,e.event,e.optional),$rejectPendingCalls:y,get $closed(){return f},get $meta(){return t.meta},$close:v,$functions:e};h=d?new Proxy({},{get(t,n){if(Object.hasOwn(_,n))return _[n];if(n===`then`&&!a.includes(`then`)&&!(`then`in e))return;let r=(...e)=>g(n,e,!0);if(a.includes(n))return r.asEvent=r,r;let i=(...e)=>g(n,e,!1);return i.asEvent=r,i}}):_;function v(e){f=!0,p.forEach(({reject:t,method:n})=>{let r=Error(`[birpc] rpc is closed, cannot call "${n}"`);if(e)return e.cause??=r,t(e);t(r)}),p.clear(),i(b)}function y(e){let t=Array.from(p.values()).map(({method:t,reject:n})=>e?e({method:t,reject:n}):n(Error(`[birpc]: rejected pending call "${t}".`)));return p.clear(),t}async function b(r,...i){let a;try{a=s(r)}catch(e){if(t.onGeneralError?.call(h,e)!==!0)throw e;return}if(a.t===`q`){let{m:r,a:s,o:u}=a,d,f,p=await(c?c.call(h,r,e[r]):e[r]);if(u&&(p||=()=>void 0),!p)f=Error(`[birpc] function "${r}" not found`);else try{d=await p.apply(l===`rpc`?h:e,s)}catch(e){f=e}if(a.i){if(f&&t.onFunctionError&&t.onFunctionError.call(h,f,r,s)===!0)return;if(!f)try{await n(o({t:`s`,i:a.i,r:d}),...i);return}catch(e){if(f=e,t.onGeneralError?.call(h,e,r,s)!==!0)throw e}try{await n(o({t:`s`,i:a.i,e:f}),...i)}catch(e){if(t.onGeneralError?.call(h,e,r,s)!==!0)throw e}}}else{let{i:e,r:t,e:n}=a,r=p.get(e);r&&(Q_(r.timeoutId),n?r.reject(n):r.resolve(t)),p.delete(e)}}return m=r(b),h}function tv(e,t){let{channel:n,rpcOptions:r={}}=t;return ev(e,{...n,timeout:-1,...r,proxify:!1})}function nv(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function rv(e){let{transport:t,authToken:n,connectionMeta:r,events:i,clientRpc:a,rpcOptions:o={},callTimeout:s=0}=e,c=!1,l=`connecting`,u=null,d=nv();function f(e,t=null){if(t?u=t:e===`connected`&&(u=null),e===l)return;let n=l;l=e,i.emit($.client.connectionStatus,e,n)}let p=new Set;function m(e){for(let t of[...p])t.reject(e)}function h(){return l===`disconnected`||l===`error`?new Nh(`connection`,`[devframe] Not connected to the devframe server`,{cause:u??void 0}):l===`unauthorized`?new Nh(`auth`,`[devframe] Not authorized by the devframe server`,{cause:u??void 0}):null}function g(e,t){return new Promise((n,r)=>{let a=!1,o,c={reject(e){a||(l(),i.emit($.client.error,e,t),r(e))}};function l(){a=!0,p.delete(c),o&&clearTimeout(o)}p.add(c),s>0&&(o=setTimeout(()=>{c.reject(new Nh(`timeout`,`[devframe] RPC call "${t}" timed out after ${s}ms`))},s)),e.then(e=>{a||(l(),n(e))},e=>{if(a)return;l();let n=e instanceof Error?e:Error(String(e));i.emit($.client.error,n,t),r(n)})})}let _=new Map;for(let e of r.jsonSerializableMethods??[])_.set(e,{jsonSerializable:!0});let v=e.createChannel({definitions:_,onError(e){f(`error`,e),i.emit($.client.connectionError,e),m(new Nh(`connection`,`[devframe] Connection to the devframe server failed`,{cause:e}))},onDisconnected(){l!==`error`&&f(`disconnected`),m(new Nh(`connection`,`[devframe] Disconnected from the devframe server`,{cause:u??void 0}))}}),y=tv(a.functions,{channel:v,rpcOptions:o});a.register({name:$.broadcast.authRevoked,type:`event`,handler:()=>{c=!1;let e=new Nh(`auth`,`[devframe] The devframe server revoked this client's trust`);f(`unauthorized`,e),i.emit($.client.connectionError,e),m(e),i.emit($.client.isTrustedUpdated,!1)}});let b=n;async function x(e){b=e;let t=await y.$call(`anonymous:devframe:auth`,{authToken:e,ua:navigator.userAgent,origin:location.origin});if(c=t.isTrusted,c)d.resolve(!0),f(`connected`);else{let e=new Nh(`auth`,`[devframe] The devframe server refused this client's credentials`);f(`unauthorized`,e),i.emit($.client.connectionError,e)}return i.emit($.client.isTrustedUpdated,c),t.isTrusted}async function S(e){let t=(await y.$call(`anonymous:devframe:auth:exchange`,{code:e,ua:navigator.userAgent,origin:location.origin}))?.authToken??null;return t&&(b=t,c=!0,d.resolve(!0),f(`connected`),i.emit($.client.isTrustedUpdated,!0)),t}async function C(){return c?!0:x(b??``)}async function w(e=6e4){if(c&&d.resolve(!0),e<=0)return d.promise;let t=()=>{};return await Promise.race([d.promise.then(t),new Promise((n,r)=>{let i=setTimeout(()=>{r(Error(`[devframe] Timeout waiting for rpc to be trusted`))},e);t=()=>clearTimeout(i)})]),c}return{transport:t,get isTrusted(){return c},get status(){return l},get connectionError(){return u},requestTrust:C,requestTrustWithToken:x,requestTrustWithCode:S,ensureTrusted:w,call:(...e)=>{let t=String(e[0]),n=h();return n?(i.emit($.client.error,n,t),Promise.reject(n)):g(y.$call(...e),t)},callEvent:(...e)=>{let t=h();if(t){i.emit($.client.error,t,String(e[0]));return}return y.$callEvent(...e)},callOptional:(...e)=>{let t=String(e[0]),n=h();return n?(i.emit($.client.error,n,t),Promise.reject(n)):g(y.$callOptional(...e),t)},close:()=>{v.close()}}}function iv(e,t,n){let r=(()=>{try{return new URL(t,n.href)}catch{return new URL(n.href)}})();if(e&&typeof e==`object`){if(e.host!=null||e.port!=null){let t=e.host??`${r.hostname}:${e.port}`;return new URL(e.path??`/`,`${r.protocol}//${t}`).href}return new URL(e.path??``,r).href}let i=e??``;return/^https?:\/\//i.test(i)?i:new URL(i,r).href}function av(e){let{authToken:t,connectionMeta:n,metaBaseUrl:r,events:i,clientRpc:a,rpcOptions:o={},sseOptions:s={},callTimeout:c=0}=e,l=iv(n.sse,r??`./`,location);return rv({transport:`sse`,authToken:t,connectionMeta:n,events:i,clientRpc:a,rpcOptions:o,callTimeout:c,createChannel:e=>W_({url:l,authToken:t,definitions:e.definitions,...s,onConnected(){s.onConnected?.()},onError(t){e.onError(t),s.onError?.(t)},onDisconnected(){e.onDisconnected(),s.onDisconnected?.()}})})}function ov(e){let{name:t,message:n,cause:r,...i}=e,a=r instanceof Error?r:sv(r)?ov(r):r,o=a===void 0?Error(n):Error(n,{cause:a});return o.name=t,Object.assign(o,i),o}function sv(e){return typeof e==`object`&&!!e&&typeof e.message==`string`&&typeof e.name==`string`}function cv(e){return typeof e==`object`&&!!e&&e.type===`static`&&typeof e.path==`string`}function lv(e){return typeof e==`object`&&!!e&&e.type===`query`&&typeof e.records==`object`&&e.records!==null}function uv(e){return typeof e==`object`&&!!e&&(`output`in e||`error`in e)}function dv(e){if(e.error)throw ov(e.error);return e.output}function fv(e){return e.some(e=>e!=null)}function pv(e){return typeof e==`object`&&e&&`serialization`in e&&`data`in e?e.data:e}function mv(e,t){let n=new Map,r=new Map;function i(e,t){return t===`structured-clone`&&Array.isArray(e)?I_(e):e}function a(e,t){return i(pv(e),t)}async function o(e){n.has(e.path)||n.set(e.path,t(e.path).then(t=>a(t,e.serialization)));let r=await n.get(e.path);return uv(r)?dv(r):r}async function s(e,n){return r.has(e)||r.set(e,t(e).then(e=>a(e,n))),await r.get(e)}async function c(t,n){if(!(t in e))throw Error(`[devframe-rpc] Function "${t}" not found in dump store`);let r=e[t];if(cv(r)){if(fv(n))throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`);return await o(r)}if(lv(r)){let e=Pm(n),i=r.records[e];if(i)return dv(await s(i,r.serialization));if(r.fallback)return dv(await s(r.fallback,r.serialization));throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`)}if(!fv(n))return r;throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`)}return{call:async(e,t)=>await c(e,t),callOptional:async(t,n)=>{if(t in e)return await c(t,n)},callEvent:async(e,t)=>{}}}async function hv(e){let t=mv(await e.fetchJsonFromBases(Am),e.fetchJsonFromBases);return{transport:`static`,isTrusted:!0,status:`connected`,connectionError:null,requestTrust:async()=>!0,requestTrustWithToken:async()=>!0,requestTrustWithCode:async()=>null,ensureTrusted:async()=>!0,call:(...e)=>t.call(e[0],e.slice(1)),callEvent:(...e)=>t.callEvent(e[0],e.slice(1)),callOptional:(...e)=>t.callOptional(e[0],e.slice(1)),close:()=>{}}}var gv=256,_v=class extends Error{name=`StreamClosedError`};function vv(e={}){let t=e.id??m_(),n=Math.max(0,e.replayWindow??0),r=oh(),i=new AbortController,a=[],o=!1,s=0;function c(e){if(o)throw new _v(`Cannot write to a closed stream "${t}"`);s+=1,n>0&&(a.push({seq:s,chunk:e}),a.length>n&&a.splice(0,a.length-n)),r.emit(`chunk`,s,e)}function l(e){if(o)return;o=!0;let t=bv(e);i.abort(e),r.emit(`end`,t)}function u(){o||(o=!0,i.signal.aborted||i.abort(`stream closed`),r.emit(`end`,void 0))}function d(e){o||i.signal.aborted||i.abort(e??`aborted`)}let f=new WritableStream({write(e){c(e)},close(){u()},abort(e){l(e)}});return{id:t,signal:i.signal,get closed(){return o},get lastSeq(){return s},write:c,error:l,close:u,abort:d,writable:f,events:r,buffer:a}}function yv(e={}){let t=e.id??m_(),n=Math.max(1,e.highWaterMark??gv),r=[],i=0,a=!1,o=!1,s,c,l,u;function d(){if(c){if(r.length>0){let e=r.shift(),t=c;c=void 0,t.resolve({value:e,done:!1});return}if(a){let e=c;if(c=void 0,s){let t=Error(s.message);t.name=s.name,e.reject(t)}else e.resolve({value:void 0,done:!0})}}}function f(){if(l){for(;r.length>0;){let e=r.shift();try{l.enqueue(e)}catch{break}}if(a&&l){try{if(s){let e=Error(s.message);e.name=s.name,l.error(e)}else l.close()}catch{}l=void 0}}}function p(t,s){if(!(a||o)&&!(t<=i)){if(i=t,r.push(s),r.length>n){let t=r.length-n;r.splice(0,t),e.onOverflow?.(t)}d(),u&&f()}}function m(e){a||(a=!0,s=e,d(),u&&f())}function h(){o||a||(o=!0,e.onCancel?.(),m(void 0))}function g(){return u||(u=new ReadableStream({start(e){l=e,f()},cancel(){h()}}),u)}return{id:t,get cancelled(){return o},get done(){return a},get lastSeenSeq(){return i},get readable(){return g()},cancel:h,_push:p,_end:m,[Symbol.asyncIterator](){return{next(){if(r.length>0)return Promise.resolve({value:r.shift(),done:!1});if(a){if(s){let e=Error(s.message);return e.name=s.name,Promise.reject(e)}return Promise.resolve({value:void 0,done:!0})}return new Promise((e,t)=>{c={resolve:e,reject:t}})},return(){return h(),Promise.resolve({value:void 0,done:!0})}}}}}function bv(e){if(e instanceof Error)return{name:e.name||`Error`,message:e.message};if(typeof e==`string`)return{name:`Error`,message:e};try{return{name:`Error`,message:JSON.stringify(e)}}catch{return{name:`Error`,message:String(e)}}}var xv=``;function Sv(e,t){return`${e}${xv}${t}`}function Cv(e){let t=new Map,n=new Map;e.client.register({name:$.broadcast.streamingChunk,type:`event`,handler(e,n,r,i){t.get(Sv(e,n))?._push(r,i)}}),e.client.register({name:$.broadcast.streamingEnd,type:`event`,handler(e,n,r){let i=Sv(e,n),a=t.get(i);a&&(a._end(r),t.delete(i))}}),e.client.register({name:$.broadcast.streamingUploadCancel,type:`event`,handler(e,t){let r=Sv(e,t),i=n.get(r);i&&(i.abort(`server cancelled upload`),n.delete(r))}}),e.events.on($.client.isTrustedUpdated,n=>{if(n)for(let[n,r]of t){if(r.cancelled||r.done)continue;let t=n.indexOf(xv);if(t<0)continue;let i=n.slice(0,t),a=n.slice(t+1);e.callEvent(`devframe:streaming:subscribe`,i,a,{afterSeq:r.lastSeenSeq})}});function r(n,r,i={}){let a=Sv(n,r),o=t.get(a);if(o)return o;let s=yv({id:r,highWaterMark:i.highWaterMark,onOverflow(e){console.warn(`[devframe] DF0029: Stream "${n}#${r}" dropped ${e} chunk(s) after exceeding the client high-water mark.`)},onCancel(){e.callEvent(`devframe:streaming:cancel`,n,r),t.delete(a)}});if(t.set(a,s),e.isTrusted)e.callEvent(`devframe:streaming:subscribe`,n,r,{afterSeq:0});else{let i=e.events.on($.client.isTrustedUpdated,o=>{o&&(i(),t.has(a)&&!s.cancelled&&!s.done&&e.callEvent(`devframe:streaming:subscribe`,n,r,{afterSeq:s.lastSeenSeq}))})}return s}function i(t,r){let i=Sv(t,r),a=n.get(i);if(a)return a;let o=vv({id:r});return o.events.on(`chunk`,(n,i)=>{e.callEvent(`devframe:streaming:upload-chunk`,t,r,n,i)}),o.events.on(`end`,a=>{e.callEvent(`devframe:streaming:upload-end`,t,r,a),n.delete(i)}),n.set(i,o),o}return{subscribe:r,upload:i}}function wv(){}var Tv=new Map;function Ev(e){let t=e.url;e.authToken&&(t=`${t}?${Nm}=${encodeURIComponent(e.authToken)}`);let n=new WebSocket(t),{onConnected:r=wv,onError:i=wv,onDisconnected:a=wv,definitions:o=Tv}=e;n.addEventListener(`open`,e=>{r(e)}),n.addEventListener(`error`,e=>{let t=e instanceof Error?e:Error(e.type);i(t)}),n.addEventListener(`close`,e=>{a(e)});let s=B_(o);return{close:()=>{n.close()},on:e=>{n.addEventListener(`message`,t=>{e(t.data)})},post:e=>{if(n.readyState===WebSocket.OPEN){n.send(e);return}if(n.readyState===WebSocket.CONNECTING){let t=()=>{i(),n.readyState===WebSocket.OPEN&&n.send(e)},r=()=>i();function i(){n.removeEventListener(`open`,t),n.removeEventListener(`close`,r)}n.addEventListener(`open`,t),n.addEventListener(`close`,r);return}i(Error(`Devframe WebSocket is not open; message dropped`))},serialize:s.serialize,deserialize:s.deserialize}}function Dv(e,t,n){let r=(()=>{try{return new URL(t,n.href)}catch{return new URL(n.href)}})(),i=r.protocol===`https:`?`wss:`:`ws:`;if(e&&typeof e==`object`){if(e.host!=null||e.port!=null){let t=e.host??`${r.hostname}:${e.port}`,n=new URL(e.path??`/`,`${i}//${t}`);return n.protocol=i,n.href}let t=new URL(e.path??``,r);return t.protocol=i,t.href}if(typeof e==`number`)return`${i}//${r.hostname}:${e}`;let a=e??``;if(/^wss?:\/\//i.test(a))return a;if(/^https?:\/\//i.test(a))return bh(a,/^https/i.test(a)?`wss://`:`ws://`);let o=new URL(a,r);return o.protocol=i,o.href}function Ov(e){let{authToken:t,connectionMeta:n,metaBaseUrl:r,events:i,clientRpc:a,rpcOptions:o={},wsOptions:s={},callTimeout:c=0}=e,l=Dv(n.websocket,r??`./`,location);return rv({transport:`websocket`,authToken:t,connectionMeta:n,events:i,clientRpc:a,rpcOptions:o,callTimeout:c,createChannel:e=>Ev({url:l,authToken:t,definitions:e.definitions,...s,onConnected(e){s.onConnected?.(e)},onError(t){e.onError(t),s.onError?.(t)},onDisconnected(t){e.onDisconnected(),s.onDisconnected?.(t)}})})}function kv(e){return e.includes(`:`)}function Av(e,t){return kv(t)?t:`${e}:${t}`}function jv(e,t,n){let r=`devframe:settings:${n}:${t}`,i;function a(){return i||=e.sharedState.get(r,{initialValue:{}}),i}return{async get(e){return(await a()).value()[e]},async set(e,t){(await a()).mutate(n=>{n[e]=t})},async delete(e){(await a()).mutate(t=>{delete t[e]})},async all(){return(await a()).value()},async onChange(e){return(await a()).on(`updated`,t=>e(t))}}}function Mv(e,t){return{global:jv(e,t,`global`),project:jv(e,t,`project`)}}function Nv(e,t){return{namespace:t,base:e,rpc:{namespace:t,register(n){if(kv(n.name))throw Error(`[devframe] Scoped client RPC registration for namespace "${t}" received an already-namespaced function name "${n.name}". Pass a bare name without a ":" separator.`);e.client.register({...n,name:`${t}:${n.name}`})},call:((n,...r)=>e.call(Av(t,n),...r)),callEvent:((n,...r)=>e.callEvent(Av(t,n),...r)),callOptional:((n,...r)=>e.callOptional(Av(t,n),...r)),sharedState:((n,r)=>e.sharedState.get(Av(t,n),r)),streaming:{subscribe:(n,r,i)=>e.streaming.subscribe(Av(t,n),r,i),upload:(n,r)=>e.streaming.upload(Av(t,n),r)}},settings:Mv(e,t),scope:e.scope}}function Pv(e,t){if(t.backend===`static`)return`static`;let n=t.websocket!==void 0,r=t.sse!==void 0;if(e===`websocket`){if(!n)throw Error(`[devframe] transport: 'websocket' was requested, but this server does not advertise a WebSocket endpoint`);return`websocket`}if(e===`sse`){if(!r)throw Error(`[devframe] transport: 'sse' was requested, but this server does not advertise an SSE endpoint`);return`sse`}if(t.backend===`sse`&&r)return`sse`;if(n)return`websocket`;if(r)return`sse`;throw Error(`[devframe] This server advertises no RPC transport (backend "none"), so there is nothing to connect to. Enable the WebSocket or SSE endpoint on the server, or use its static/MCP surfaces instead.`)}async function Fv(e={}){let{baseURL:t=`./`,rpcOptions:n={},cacheOptions:r=!1}=e,i=oh(),a=Array.isArray(t)?t:[t],o=await Mh(e),{connectionMeta:s,metaBaseUrl:c,authToken:l}=o,u=a[0]??`./`;try{u=new URL(`.`,c).href}catch{}let d=new Fm({functions:[],...typeof e.cacheOptions==`object`?e.cacheOptions:{}}),f={rpc:void 0},p=new eh(f);async function m(e){let t=[u,...a.filter(e=>e!==u)].filter(e=>e!=null),n=[];for(let r of t)try{return await fetch(gh(e,r)).then(t=>{if(!t.ok)throw Error(`Failed to fetch ${e} from ${r}: ${t.status}`);return t.json()})}catch(e){n.push(e)}throw Error(`Failed to load ${e} from ${t.join(`, `)}`,{cause:n})}let h={authToken:l,connectionMeta:s,metaBaseUrl:c,events:i,clientRpc:p,callTimeout:e.callTimeout,rpcOptions:{...n,async onRequest(e,t,i){if(await n.onRequest?.call(this,e,t,i),r&&d?.validate(e.m)){if(d.has(e.m,e.a))return i(d.cached(e.m,e.a));let n=await t(e);d.apply(e,n)}else await t(e)}}},g=Pv(e.transport??`auto`,s),_=g===`static`?await hv({fetchJsonFromBases:m}):g===`sse`?av({...h,sseOptions:e.sseOptions}):Ov({...h,wsOptions:e.wsOptions}),v;try{v=new BroadcastChannel(`devframe-auth`)}catch{}let y,b=!1;function x(e){return((...t)=>b||!y?e(...t):y.then(()=>e(...t)))}let S={events:i,get isTrusted(){return _.isTrusted},get status(){return _.status},get connectionError(){return _.connectionError},get transport(){return _.transport??g},get connection(){return o},connectionMeta:s,ensureTrusted:_.ensureTrusted,requestTrust:_.requestTrust,requestTrustWithToken:async e=>(Oh(e),o={...o,authToken:e},_.requestTrustWithToken(e)),requestTrustWithCode:async e=>{let t=await _.requestTrustWithCode(e);if(!t)return!1;Oh(t),o={...o,authToken:t};try{v?.postMessage({type:`auth-update`,authToken:t})}catch{}return!0},call:x(_.call),callEvent:x(_.callEvent),callOptional:x(_.callOptional),client:p,sharedState:void 0,services:void 0,streaming:void 0,cacheManager:d,scope:void 0,close:()=>_.close?.()};S.sharedState=v_(S),S.streaming=Cv(S),S.services=Rh(S);let C=new Map;S.scope=(e=>{if(!e)return S;let t=C.get(e);return t||(t=Nv(S,e),C.set(e,t)),t}),f.rpc=S;function w(){try{return typeof window<`u`&&window.self===window.top}catch{return!1}}async function ee(){if(!(e.simpleAuth===!1||!w())&&typeof globalThis.prompt==`function`)for(;!S.isTrusted;){let e=globalThis.prompt(`devframe: enter the authentication code shown in your terminal`);if(e==null)return;let t=e.trim();if(t&&await S.requestTrustWithCode(t))return}}async function T(){let t=await _.requestTrust(),n=e.otpParam??`devframe_otp`,r=n?await Lh(S,{param:n}):!1;t||r||S.isTrusted||await ee()}return y=T().then(()=>{b=!0},()=>{b=!0}),v&&(v.onmessage=e=>{e.data?.type===`auth-update`&&e.data.authToken&&S.requestTrustWithToken(e.data.authToken)}),S}var Iv=Fv;function Lv(e){return Iv(e)}var Rv=I([]),zv=I(!0),Bv=1;function Vv(e){zv.value&&Rv.value.push({...e,id:Bv++})}function Hv(){Rv.value=[]}var Uv=Jt({connected:!1,status:`connecting`,error:null,backend:null}),Wv=sn(null);function Gv(e){let t=e.call.bind(e);e.call=async(e,...n)=>{let r=Date.now();try{let i=await t(e,...n);return!e.includes(`list-functions`)&&!e.includes(`list-state-keys`)&&e!==`devframe:rpc:server-state:get`&&Vv({type:`call`,method:e,args:n,result:i,duration:Date.now()-r,time:r}),i}catch(t){throw!e.includes(`list-functions`)&&!e.includes(`list-state-keys`)&&e!==`devframe:rpc:server-state:get`&&Vv({type:`call`,method:e,args:n,error:t,duration:Date.now()-r,time:r}),t}};let n=e.callEvent.bind(e);e.callEvent=(e,...t)=>(!e.includes(`list-functions`)&&!e.includes(`list-state-keys`)&&e!==`devframe:rpc:server-state:subscribe`&&Vv({type:`call`,method:e,args:t,duration:0,time:Date.now()}),n(e,...t));let r=e.client.definitions.get(`devframe:rpc:client-state:updated`);if(r&&r.handler){let e=r.handler;r.handler=(t,n,r)=>(Vv({type:`state`,key:t,value:n,syncId:r,time:Date.now()}),e(t,n,r))}let i=e.client.definitions.get(`devframe:rpc:client-state:patch`);if(i&&i.handler){let e=i.handler;i.handler=(t,n,r)=>(Vv({type:`state`,key:t,patches:n,syncId:r,time:Date.now()}),e(t,n,r))}}function Kv(e){Uv.status=e.status,Uv.connected=e.status===`connected`,Uv.error=e.connectionError?.message??null}async function qv(){try{let e=await Lv();Gv(e),Wv.value=e,Uv.backend=e.connectionMeta.backend,Kv(e),e.events.on(`connection:status`,()=>Kv(e)),e.connectionMeta.backend===`websocket`&&e.ensureTrusted(5e3).catch(()=>{})}catch(e){Uv.status=`error`,Uv.error=e?.message??String(e)}}function Jv(){return Wv}function Yv(){return Uv.backend===`static`}var Xv=z({__name:`FeedbackSpinner`,props:{size:{default:`1em`}},setup(e){let t=e,n=Z(()=>typeof t.size==`number`?`${t.size}px`:t.size);return(e,t)=>(W(),G(`span`,{class:`border-2 border-current border-t-transparent rounded-full inline-block animate-spin`,style:k({width:n.value,height:n.value}),role:`status`,"aria-label":`Loading`},null,4))}}),Zv=z({__name:`ActionButton`,props:{as:{},to:{},href:{},icon:{},variant:{default:`action`},size:{default:`md`},loading:{type:Boolean},disabled:{type:Boolean}},setup(e){let t=e,n=Z(()=>t.as?t.as:t.href!=null||t.to!=null?`a`:`button`),r=Z(()=>n.value===`a`),i=Z(()=>n.value===`button`),a=Z(()=>t.size===`sm`),o=Z(()=>t.variant===`primary`?a.value?`btn-primary text-sm`:`btn-primary`:t.variant===`text`?a.value?`btn-text text-sm`:`btn-text`:a.value?`btn-action-sm`:`btn-action`),s=Z(()=>t.disabled||t.loading);return(t,a)=>(W(),K(sa(n.value),{class:A([o.value,{"pointer-events-none op-mute":s.value&&!i.value}]),href:r.value?e.href??e.to:void 0,to:e.as&&e.to!=null?e.to:void 0,disabled:i.value?s.value:void 0,"aria-disabled":s.value||void 0,"aria-busy":e.loading||void 0},{default:R(()=>[e.loading?(W(),K(Xv,{key:0,size:`1em`})):e.icon?(W(),G(`span`,{key:1,class:A(e.icon),"aria-hidden":`true`},null,2)):X(``,!0),B(t.$slots,`default`)]),_:3},8,[`class`,`href`,`to`,`disabled`,`aria-disabled`,`aria-busy`]))}}),Qv=128;function $v(e){return e.replace(/[^\w-]+/g,`_`).slice(0,Qv)}var ey={class:`json`},ty={key:0,class:`json-key`},ny={key:1,class:`json-colon`},ry={key:0,class:`json-key`},iy={key:1,class:`json-colon`},ay={class:`json-meta`},oy={key:2},sy={key:0,class:`json-key`},cy={key:1,class:`json-colon`},ly={key:2,class:`json-meta`},uy={key:3,class:`json-meta`},dy={key:0,class:`json-children`},fy={key:1,class:`json-row`},py={class:`json-meta`},my=z({__name:`JsonView`,props:{value:{},name:{},path:{default:``},depth:{default:0},expandDepth:{default:1},highlightPaths:{}},setup(e){let t=e,n=Z(()=>Array.isArray(t.value)?`array`:t.value!==null&&typeof t.value==`object`?`object`:`primitive`),r=Z(()=>n.value===`array`?t.value.map((e,t)=>[String(t),e]):n.value===`object`?Object.entries(t.value):[]),i=I(t.depth<t.expandDepth),a=Z(()=>r.value.length===0),o=Z(()=>!!t.path&&t.highlightPaths?.has(t.path));function s(e){return t.path?`${t.path}.${e}`:e}function c(e){return e==null?`v-null`:`v-${typeof e}`}function l(e){return e===void 0?`undefined`:e===null?`null`:typeof e==`string`?JSON.stringify(e):String(e)}let u=Z(()=>n.value===`array`?`[`:`{`),d=Z(()=>n.value===`array`?`]`:`}`),f=Z(()=>n.value===`array`?`[${r.value.length}]`:`{${r.value.length}}`);return(t,p)=>{let m=aa(`JsonView`,!0);return W(),G(`div`,ey,[n.value===`primitive`?(W(),G(`div`,{key:0,class:A([`json-row`,{changed:o.value}])},[e.name===void 0?X(``,!0):(W(),G(`span`,ty,j(e.name),1)),e.name===void 0?X(``,!0):(W(),G(`span`,ny,`:`)),q(`span`,{class:A(c(e.value))},j(l(e.value)),3)],2)):a.value?(W(),G(`div`,{key:1,class:A([`json-row`,{changed:o.value}])},[e.name===void 0?X(``,!0):(W(),G(`span`,ry,j(e.name),1)),e.name===void 0?X(``,!0):(W(),G(`span`,iy,`:`)),q(`span`,ay,j(u.value)+j(d.value),1)],2)):(W(),G(`div`,oy,[q(`div`,{class:A([`json-row json-toggle`,{changed:o.value}]),onClick:p[0]||=e=>i.value=!i.value},[q(`span`,{class:A([`json-caret`,{open:i.value}])},`▶`,2),e.name===void 0?X(``,!0):(W(),G(`span`,sy,j(e.name),1)),e.name===void 0?X(``,!0):(W(),G(`span`,cy,`:`)),i.value?(W(),G(`span`,ly,j(u.value),1)):(W(),G(`span`,uy,j(f.value),1))],2),i.value?(W(),G(`div`,dy,[(W(!0),G(H,null,da(r.value,([t,n])=>(W(),K(m,{key:t,name:t,value:n,path:s(t),depth:e.depth+1,"expand-depth":e.expandDepth,"highlight-paths":e.highlightPaths},null,8,[`name`,`value`,`path`,`depth`,`expand-depth`,`highlight-paths`]))),128))])):X(``,!0),i.value?(W(),G(`div`,fy,[q(`span`,py,j(d.value),1)])):X(``,!0)]))])}}}),hy={class:`pane`},gy={key:0,class:`center`},_y={class:`section-title`},vy={key:0,class:`empty`},yy={key:1,class:`cards`},by=[`onClick`],xy={class:`card-title`},Sy={class:`badge flag`},Cy={class:`id`},wy={key:0,class:`id-note`},Ty={class:`desc`},Ey={key:1,class:`tags`},Dy=[`onUpdate:modelValue`],Oy={style:{"margin-top":`8px`,display:`flex`,gap:`8px`,"align-items":`center`}},ky={key:0,class:`note`},Ay={key:3,class:`result`},jy={class:`result-head`},My={key:0,class:`ok`},Ny={key:1,class:`fail`},Py={key:2,class:`muted`},Fy={class:`section-title`},Iy={key:2,class:`empty`},Ly={key:3,class:`cards`},Ry=[`onClick`],zy={class:`card-title`},By={key:0,class:`badge flag`},Vy={class:`id`},Hy={key:0,class:`desc`},Uy={style:{"margin-top":`8px`,display:`flex`,gap:`8px`,"align-items":`center`}},Wy={key:0,class:`note`},Gy={key:0,class:`result`},Ky={class:`result-head`},qy={key:0,class:`ok`},Jy={key:1,class:`fail`},Yy={key:2,class:`muted`},Xy=z({__name:`AgentView`,props:{manifest:{},isStatic:{type:Boolean},results:{},pending:{}},emits:[`invoke`,`read`],setup(e,{emit:t}){let n=t,r=I(null),i=Jt({});function a(e){r.value=r.value===e?null:e,i[e]===void 0&&(i[e]=`{}`)}function o(e){let t;try{t=JSON.parse(i[e]||`{}`)}catch(e){throw Error(`Invalid JSON args: ${e.message}`)}n(`invoke`,e,t)}function s(e){n(`read`,e)}return(t,n)=>(W(),G(`div`,hy,[e.manifest?(W(),G(H,{key:1},[q(`div`,_y,` Tools · `+j(e.manifest.tools.length),1),e.manifest.tools.length===0?(W(),G(`div`,vy,` No agent-exposed tools. `)):(W(),G(`div`,yy,[(W(!0),G(H,null,da(e.manifest.tools,t=>(W(),G(`div`,{key:t.id,class:`card`},[q(`div`,{class:`card-head`,style:{cursor:`pointer`,"user-select":`none`},onClick:e=>a(t.id)},[q(`div`,{class:A([`chev i-ph-caret-right`,{open:r.value===t.id}])},null,2),q(`span`,xy,j(t.title),1),q(`span`,Sy,j(t.kind),1),q(`span`,{class:A([`badge`,`safety-${t.safety}`])},j(t.safety),3)],8,by),q(`div`,Cy,j(L($v)(t.id)),1),L($v)(t.id)===t.id?X(``,!0):(W(),G(`div`,wy,` internal id: `+j(t.id),1)),q(`p`,Ty,j(t.description),1),t.tags&&t.tags.length?(W(),G(`div`,Ey,[(W(!0),G(H,null,da(t.tags,e=>(W(),G(`span`,{key:e,class:`badge flag`},j(e),1))),128))])):X(``,!0),r.value===t.id?(W(),G(H,{key:2},[t.inputSchema?(W(),G(H,{key:0},[n[0]||=q(`div`,{class:`label`},` Input schema `,-1),J(my,{value:t.inputSchema,"expand-depth":1},null,8,[`value`])],64)):X(``,!0),t.outputSchema?(W(),G(H,{key:1},[n[1]||=q(`div`,{class:`label`},` Output schema `,-1),J(my,{value:t.outputSchema,"expand-depth":1},null,8,[`value`])],64)):X(``,!0),t.examples&&t.examples.length?(W(),G(H,{key:2},[n[2]||=q(`div`,{class:`label`},` Examples `,-1),J(my,{value:t.examples,"expand-depth":1},null,8,[`value`])],64)):X(``,!0),n[3]||=q(`div`,{class:`label`},` Invoke (MCP format) `,-1),pr(q(`textarea`,{"onUpdate:modelValue":e=>i[t.id]=e,class:`args`,spellcheck:`false`,placeholder:`{}`},null,8,Dy),[[zl,i[t.id]]]),q(`div`,Oy,[J(Zv,{variant:`primary`,size:`sm`,icon:`i-ph-play-duotone`,loading:e.pending[t.id],disabled:e.pending[t.id]||e.isStatic,onClick:e=>o(t.id)},{default:R(()=>[Y(j(e.pending[t.id]?`Invoking…`:`Invoke`),1)]),_:2},1032,[`loading`,`disabled`,`onClick`]),e.isStatic?(W(),G(`span`,ky,`read-only static backend`)):X(``,!0)]),e.results[t.id]?(W(),G(`div`,Ay,[q(`div`,jy,[e.results[t.id].ok?(W(),G(`span`,My,`✓ resolved`)):(W(),G(`span`,Ny,`✕ threw`)),`durationMs`in e.results[t.id]?(W(),G(`span`,Py,j(e.results[t.id].durationMs)+`ms`,1)):X(``,!0)]),e.results[t.id].ok?(W(),K(my,{key:0,value:e.results[t.id].result,"expand-depth":2},null,8,[`value`])):(W(),K(my,{key:1,value:e.results[t.id].error,"expand-depth":2},null,8,[`value`]))])):X(``,!0)],64)):X(``,!0)]))),128))])),q(`div`,Fy,` Resources · `+j(e.manifest.resources.length),1),e.manifest.resources.length===0?(W(),G(`div`,Iy,` No agent-readable resources. `)):(W(),G(`div`,Ly,[(W(!0),G(H,null,da(e.manifest.resources,t=>(W(),G(`div`,{key:t.id,class:`card`},[q(`div`,{class:`card-head`,style:{cursor:`pointer`,"user-select":`none`},onClick:e=>a(t.id)},[q(`div`,{class:A([`chev i-ph-caret-right`,{open:r.value===t.id}])},null,2),q(`span`,zy,j(t.name),1),t.mimeType?(W(),G(`span`,By,j(t.mimeType),1)):X(``,!0)],8,Ry),q(`div`,Vy,j(t.uri),1),t.description?(W(),G(`p`,Hy,j(t.description),1)):X(``,!0),r.value===t.id?(W(),G(H,{key:1},[q(`div`,Uy,[J(Zv,{variant:`primary`,size:`sm`,icon:`i-ph-book-open-duotone`,loading:e.pending[t.id],disabled:e.pending[t.id]||e.isStatic,onClick:e=>s(t.id)},{default:R(()=>[Y(j(e.pending[t.id]?`Reading…`:`Read Resource`),1)]),_:2},1032,[`loading`,`disabled`,`onClick`]),e.isStatic?(W(),G(`span`,Wy,`read-only static backend`)):X(``,!0)]),e.results[t.id]?(W(),G(`div`,Gy,[q(`div`,Ky,[e.results[t.id].ok?(W(),G(`span`,qy,`✓ resolved`)):(W(),G(`span`,Jy,`✕ threw`)),`durationMs`in e.results[t.id]?(W(),G(`span`,Yy,j(e.results[t.id].durationMs)+`ms`,1)):X(``,!0)]),e.results[t.id].ok?(W(),K(my,{key:0,value:e.results[t.id].result,"expand-depth":2},null,8,[`value`])):(W(),K(my,{key:1,value:e.results[t.id].error,"expand-depth":2},null,8,[`value`]))])):X(``,!0)],64)):X(``,!0)]))),128))]))],64)):(W(),G(`div`,gy,` Loading agent surface… `))]))}}),Zy=z({__name:`AgentSmart`,setup(e){let t=Jv(),n=sn(null),r=Jt({}),i=Jt({});async function a(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:describe-agent`))}Tm(a),Ji(a);async function o(e,n){if(t.value){i[e]=!0;try{r[e]=await t.value.call(`devframes:plugin:inspect:invoke-agent-tool`,e,n)}catch(t){let n=t;r[e]={ok:!1,error:{name:n?.name??`Error`,message:n?.message??String(t)}}}finally{i[e]=!1}}}async function s(e){if(t.value){i[e]=!0;try{r[e]=await t.value.call(`devframes:plugin:inspect:read-agent-resource`,e)}catch(t){let n=t;r[e]={ok:!1,error:{name:n?.name??`Error`,message:n?.message??String(t)}}}finally{i[e]=!1}}}return(e,t)=>(W(),K(Xy,{manifest:n.value,"is-static":L(Yv)(),results:r,pending:i,onInvoke:o,onRead:s},null,8,[`manifest`,`is-static`,`results`,`pending`]))}}),Qy={class:`cmd-title`},$y={class:`cmd-id mono`},eb={class:`fn-flags`},tb={key:0,class:`badge flag`},nb={key:1,class:`badge flag`,title:`No handler, a group for its children`},rb={key:2,class:`badge flag`},ib={key:0,class:`fn-detail`},ab={key:0,class:`desc`},ob=[`value`],sb={style:{"margin-top":`8px`,display:`flex`,gap:`8px`,"align-items":`center`}},cb={key:0,class:`note`},lb={key:0,class:`result`},ub={class:`result-head`},db={key:0,class:`ok`},fb={key:1,class:`fail`},pb={key:2,class:`muted`},mb={key:2,class:`note`},hb={class:`cmd-children`},gb=z({name:`CommandRow`,__name:`CommandRow`,props:{cmd:{},argsInput:{},results:{},pending:{},isStatic:{type:Boolean},depth:{}},emits:[`execute`,`updateArgs`],setup(e,{emit:t}){let n=e,r=t,i=I(!1),a=Z(()=>n.cmd.hasHandler||!!n.cmd.description||!!n.cmd.children?.length);function o(){i.value=!i.value}return(t,n)=>{let s=aa(`CommandRow`,!0);return W(),G(`div`,{class:A([`fn-row`,{"cmd-row-child":e.depth}])},[q(`div`,{class:A([`fn-head`,{clickable:a.value}]),onClick:o},[q(`div`,{class:A([`chev i-ph-caret-right`,{open:i.value}])},null,2),e.cmd.icon?(W(),G(`span`,{key:0,class:A([typeof e.cmd.icon==`string`?e.cmd.icon:`i-ph-terminal-window-duotone`,`cmd-icon`])},null,2)):X(``,!0),q(`span`,Qy,j(e.cmd.title),1),q(`span`,$y,j(e.cmd.id),1),q(`span`,eb,[e.cmd.category?(W(),G(`span`,tb,j(e.cmd.category),1)):X(``,!0),e.cmd.hasHandler?X(``,!0):(W(),G(`span`,nb,`group`)),e.cmd.children?.length?(W(),G(`span`,rb,j(e.cmd.children.length)+` children`,1)):X(``,!0)])],2),i.value?(W(),G(`div`,ib,[e.cmd.description?(W(),G(`p`,ab,j(e.cmd.description),1)):X(``,!0),e.cmd.hasHandler?(W(),G(H,{key:1},[n[4]||=q(`div`,{class:`label`},` Execute with positional args as a JSON array `,-1),q(`textarea`,{value:e.argsInput[e.cmd.id],class:`args`,spellcheck:`false`,placeholder:`[]`,onInput:n[0]||=t=>r(`updateArgs`,e.cmd.id,t.target.value)},null,40,ob),q(`div`,sb,[J(Zv,{variant:`primary`,size:`sm`,icon:`i-ph-play-duotone`,loading:e.pending[e.cmd.id],disabled:e.pending[e.cmd.id]||e.isStatic,onClick:n[1]||=eu(t=>r(`execute`,e.cmd),[`stop`])},{default:R(()=>[Y(j(e.pending[e.cmd.id]?`Running…`:`Run`),1)]),_:1},8,[`loading`,`disabled`]),e.isStatic?(W(),G(`span`,cb,`read-only static backend, execution disabled`)):X(``,!0)]),e.results[e.cmd.id]?(W(),G(`div`,lb,[q(`div`,ub,[e.results[e.cmd.id].ok?(W(),G(`span`,db,`✓ resolved`)):(W(),G(`span`,fb,`✕ threw`)),`durationMs`in e.results[e.cmd.id]?(W(),G(`span`,pb,j(e.results[e.cmd.id].durationMs)+`ms`,1)):X(``,!0)]),e.results[e.cmd.id].ok?(W(),K(my,{key:0,value:e.results[e.cmd.id].result,"expand-depth":2},null,8,[`value`])):(W(),K(my,{key:1,value:e.results[e.cmd.id].error,"expand-depth":2},null,8,[`value`]))])):X(``,!0)],64)):e.cmd.children?.length?X(``,!0):(W(),G(`p`,mb,` Group-only command, no handler to run. `)),e.cmd.children?.length?(W(),G(H,{key:3},[n[5]||=q(`div`,{class:`label`},` Children `,-1),q(`div`,hb,[(W(!0),G(H,null,da(e.cmd.children,t=>(W(),K(s,{key:t.id,cmd:t,"args-input":e.argsInput,results:e.results,pending:e.pending,"is-static":e.isStatic,depth:(e.depth??0)+1,onExecute:n[2]||=e=>r(`execute`,e),onUpdateArgs:n[3]||=(e,t)=>r(`updateArgs`,e,t)},null,8,[`cmd`,`args-input`,`results`,`pending`,`is-static`,`depth`]))),128))])],64)):X(``,!0)])):X(``,!0)],2)}}}),_b={class:`pane`},vb={class:`toolbar`},yb={class:`search`},bb={class:`muted`},xb={class:`badge flag`},Sb={key:0,class:`center`},Cb={key:1,class:`empty`},wb={key:2,class:`empty`},Tb={key:3,class:`fn-list`},Eb=z({__name:`CommandsView`,props:{commands:{},isStatic:{type:Boolean},results:{},pending:{}},emits:[`execute`],setup(e,{emit:t}){let n=e,r=t,i=I(``),a=Jt({});function o(e,t){return e.id.toLowerCase().includes(t)||e.title.toLowerCase().includes(t)||e.category?.toLowerCase().includes(t)?!0:e.children?.some(e=>o(e,t))??!1}let s=Z(()=>{let e=n.commands??[],t=i.value.trim().toLowerCase();return[...t?e.filter(e=>o(e,t)):e].sort((e,t)=>e.title.localeCompare(t.title))}),c=Z(()=>{let e={};for(let t of n.commands??[]){let n=t.category??`uncategorized`;e[n]=(e[n]||0)+1}return e});function l(e){let t;try{let n=JSON.parse(a[e.id]||`[]`);t=Array.isArray(n)?n:[n]}catch(e){throw Error(`Invalid JSON args: ${e.message}`)}r(`execute`,e,t)}return(t,n)=>(W(),G(`div`,_b,[q(`div`,vb,[q(`label`,yb,[n[2]||=q(`div`,{class:`i-ph-magnifying-glass-duotone`},null,-1),pr(q(`input`,{"onUpdate:modelValue":n[0]||=e=>i.value=e,placeholder:`Filter commands by id, title, category…`,spellcheck:`false`},null,512),[[zl,i.value]])]),q(`span`,bb,j((e.commands??[]).length)+` commands`,1),(W(!0),G(H,null,da(c.value,(e,t)=>(W(),G(`span`,{key:t,class:`muted`},[q(`span`,xb,j(t),1),Y(` `+j(e),1)]))),128))]),e.commands?e.commands.length===0?(W(),G(`div`,Cb," No commands registered. Commands are a `@devframes/hub` feature; this connection isn't mounted inside a hub. ")):s.value.length===0?(W(),G(`div`,wb,` No commands match "`+j(i.value)+`". `,1)):(W(),G(`div`,Tb,[(W(!0),G(H,null,da(s.value,t=>(W(),K(gb,{key:t.id,cmd:t,"args-input":a,results:e.results,pending:e.pending,"is-static":e.isStatic,onExecute:l,onUpdateArgs:n[1]||=(e,t)=>a[e]=t},null,8,[`cmd`,`args-input`,`results`,`pending`,`is-static`]))),128))])):(W(),G(`div`,Sb,` Loading commands… `))]))}}),Db=z({__name:`CommandsSmart`,setup(e){let t=Jv(),n=sn(null),r=Jt({}),i=Jt({});async function a(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:list-commands`))}Tm(a),Ji(a);async function o(e,n){if(t.value){i[e.id]=!0;try{r[e.id]=await t.value.call(`devframes:plugin:inspect:execute-command`,e.id,n)}catch(t){let n=t;r[e.id]={ok:!1,error:{name:n?.name??`Error`,message:n?.message??String(t)}}}finally{i[e.id]=!1}}}return(e,t)=>(W(),K(Eb,{commands:n.value,"is-static":L(Yv)(),results:r,pending:i,onExecute:o},null,8,[`commands`,`is-static`,`results`,`pending`]))}});function Ob(e,t=1){let n=0;for(let t=0;t<e.length;t++)n=e.charCodeAt(t)+((n<<5)-n);return kb(n%360,t)}function kb(e,t=1){return`hsla(${e}, 60%, 50%, ${t})`}function Ab(e){let t=e.split(/([:/])/),n=[],r=``;for(let e=0;e<t.length;e+=2){let i=t[e]??``,a=t[e+1]??``;if(i===``&&a===``)continue;r+=i;let o=a===``;n.push({text:i,separator:a,isLeaf:o,color:o?void 0:Ob(r)}),r+=a}return n}var jb=[`title`],Mb={key:0,class:`ns-sep`},Nb=z({__name:`FunctionName`,props:{name:{}},setup(e){let t=e,n=Z(()=>Ab(t.name));return(t,r)=>(W(),G(`span`,{class:`fn-name`,title:e.name},[(W(!0),G(H,null,da(n.value,(e,t)=>(W(),G(H,{key:t},[q(`span`,{class:`ns-seg`,style:k(e.color?{color:e.color}:void 0)},j(e.text),5),e.separator?(W(),G(`span`,Mb,j(e.separator),1)):X(``,!0)],64))),128))],8,jb))}}),Pb={class:`fn-row`},Fb={class:`fn-flags`},Ib={key:0,class:`badge agent`,title:`Exposed to agents`},Lb={key:1,class:`badge flag`,title:`Strict JSON wire serialization`},Rb={key:2,class:`badge flag`,title:`Baked into the static build dump`},zb={key:3,class:`badge flag`},Bb={key:4,class:`badge flag`},Vb={key:5,class:`badge flag`},Hb={key:0,class:`fn-detail`},Ub={key:0,class:`desc`},Wb=[`value`],Gb={style:{"margin-top":`8px`,display:`flex`,gap:`8px`,"align-items":`center`}},Kb={key:0,class:`note`},qb={key:0,class:`result`},Jb={class:`result-head`},Yb={key:0,class:`ok`},Xb={key:1,class:`fail`},Zb={key:2,class:`muted`},Qb={key:4,class:`note`},$b=z({__name:`FunctionRow`,props:{fn:{},argsInput:{},results:{},pending:{},isStatic:{type:Boolean}},emits:[`invoke`,`updateArgs`],setup(e,{emit:t}){let n=e,r=t,i=I(!1),a=Z(()=>n.fn.invokable||!!n.fn.agent||n.fn.hasArgs||n.fn.hasReturns);function o(){i.value=!i.value}return(t,n)=>(W(),G(`div`,Pb,[q(`div`,{class:A([`fn-head`,{clickable:a.value}]),onClick:o},[q(`div`,{class:A([`chev i-ph-caret-right`,{open:i.value}])},null,2),J(Nb,{name:e.fn.name},null,8,[`name`]),q(`span`,Fb,[q(`span`,{class:A([`badge`,e.fn.type])},j(e.fn.type),3),e.fn.agent?(W(),G(`span`,Ib,`agent`)):X(``,!0),e.fn.jsonSerializable?(W(),G(`span`,Lb,`json`)):X(``,!0),e.fn.snapshot?(W(),G(`span`,Rb,`snapshot`)):X(``,!0),e.fn.hasArgs?(W(),G(`span`,zb,`args`)):X(``,!0),e.fn.hasReturns?(W(),G(`span`,Bb,`returns`)):X(``,!0),e.fn.hasDump?(W(),G(`span`,Vb,`dump`)):X(``,!0)])],2),i.value?(W(),G(`div`,Hb,[e.fn.agent?(W(),G(`p`,Ub,j(e.fn.agent.description),1)):X(``,!0),e.fn.argsSchema?(W(),G(H,{key:1},[n[2]||=q(`div`,{class:`label`},` Args schema `,-1),J(my,{value:e.fn.argsSchema,"expand-depth":0},null,8,[`value`])],64)):X(``,!0),e.fn.returnsSchema?(W(),G(H,{key:2},[n[3]||=q(`div`,{class:`label`},` Returns schema `,-1),J(my,{value:e.fn.returnsSchema,"expand-depth":0},null,8,[`value`])],64)):X(``,!0),e.fn.invokable?(W(),G(H,{key:3},[n[4]||=q(`div`,{class:`label`},` Invoke with positional args as a JSON array `,-1),q(`textarea`,{value:e.argsInput[e.fn.name],class:`args`,spellcheck:`false`,placeholder:`[]`,onInput:n[0]||=t=>r(`updateArgs`,e.fn.name,t.target.value)},null,40,Wb),q(`div`,Gb,[J(Zv,{variant:`primary`,size:`sm`,icon:`i-ph-play-duotone`,loading:e.pending[e.fn.name],disabled:e.pending[e.fn.name]||e.isStatic,onClick:n[1]||=eu(t=>r(`invoke`,e.fn),[`stop`])},{default:R(()=>[Y(j(e.pending[e.fn.name]?`Invoking…`:`Invoke`),1)]),_:1},8,[`loading`,`disabled`]),e.isStatic?(W(),G(`span`,Kb,`read-only static backend, invocation disabled`)):X(``,!0)]),e.results[e.fn.name]?(W(),G(`div`,qb,[q(`div`,Jb,[e.results[e.fn.name].ok?(W(),G(`span`,Yb,`✓ resolved`)):(W(),G(`span`,Xb,`✕ threw`)),`durationMs`in e.results[e.fn.name]?(W(),G(`span`,Zb,j(e.results[e.fn.name].durationMs)+`ms`,1)):X(``,!0)]),e.results[e.fn.name].ok?(W(),K(my,{key:0,value:e.results[e.fn.name].result,"expand-depth":2},null,8,[`value`])):(W(),K(my,{key:1,value:e.results[e.fn.name].error,"expand-depth":2},null,8,[`value`]))])):X(``,!0)],64)):(W(),G(`p`,Qb,j(e.fn.type)+` functions may carry side effects, so the inspector does not invoke them. `,1))])):X(``,!0)]))}}),ex={class:`pane`},tx={class:`toolbar`},nx={class:`search`},rx={class:`muted`},ix={key:0,class:`center`},ax={key:1,class:`empty`},ox={key:2,class:`fn-list`},sx=z({__name:`FunctionsView`,props:{functions:{},isStatic:{type:Boolean},results:{},pending:{}},emits:[`invoke`],setup(e,{emit:t}){let n=e,r=t,i=I(``),a=Jt({}),o=Z(()=>{let e=n.functions??[],t=i.value.trim().toLowerCase();return[...t?e.filter(e=>e.name.toLowerCase().includes(t)):e].sort((e,t)=>e.name.localeCompare(t.name))}),s=Z(()=>{let e={};for(let t of n.functions??[])e[t.type]=(e[t.type]||0)+1;return e});function c(e){let t;try{let n=JSON.parse(a[e.name]||`[]`);t=Array.isArray(n)?n:[n]}catch(e){throw Error(`Invalid JSON args: ${e.message}`)}r(`invoke`,e,t)}return(t,n)=>(W(),G(`div`,ex,[q(`div`,tx,[q(`label`,nx,[n[2]||=q(`div`,{class:`i-ph-magnifying-glass-duotone`},null,-1),pr(q(`input`,{"onUpdate:modelValue":n[0]||=e=>i.value=e,placeholder:`Filter functions by name…`,spellcheck:`false`},null,512),[[zl,i.value]])]),q(`span`,rx,j((e.functions??[]).length)+` functions`,1),(W(!0),G(H,null,da(s.value,(e,t)=>(W(),G(`span`,{key:t,class:`muted`},[q(`span`,{class:A([`badge`,t])},j(t),3),Y(` `+j(e),1)]))),128))]),e.functions?o.value.length===0?(W(),G(`div`,ax,` No functions match “`+j(i.value)+`”. `,1)):(W(),G(`div`,ox,[(W(!0),G(H,null,da(o.value,t=>(W(),K($b,{key:t.name,fn:t,"args-input":a,results:e.results,pending:e.pending,"is-static":e.isStatic,onInvoke:c,onUpdateArgs:n[1]||=(e,t)=>a[e]=t},null,8,[`fn`,`args-input`,`results`,`pending`,`is-static`]))),128))])):(W(),G(`div`,ix,` Loading functions… `))]))}}),cx=z({__name:`FunctionsSmart`,setup(e){let t=Jv(),n=sn(null),r=Jt({}),i=Jt({});async function a(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:list-functions`))}Tm(a),Ji(a);async function o(e,n){if(t.value){i[e.name]=!0;try{r[e.name]=await t.value.call(`devframes:plugin:inspect:invoke`,e.name,n)}catch(t){let n=t;r[e.name]={ok:!1,error:{name:n?.name??`Error`,message:n?.message??String(t)}}}finally{i[e.name]=!1}}}return(e,t)=>(W(),K(sx,{functions:n.value,"is-static":L(Yv)(),results:r,pending:i,onInvoke:o},null,8,[`functions`,`is-static`,`results`,`pending`]))}}),lx={class:`pane flex-col`},ux={class:`toolbar`},dx={class:`muted`},fx={key:0,class:`center`},px={key:1,style:{padding:`14px`,display:`flex`,"flex-direction":`column`,gap:`14px`}},mx={style:{display:`flex`,gap:`8px`,"align-items":`center`,"margin-bottom":`8px`,"flex-wrap":`wrap`}},hx={class:`muted`,style:{"font-family":`var(--df-mono)`,"font-size":`11px`}},gx={style:{"font-family":`var(--df-mono)`,"font-weight":`600`,"font-size":`12.5px`}},_x={class:`muted`},vx={style:{"font-family":`var(--df-mono)`,"font-weight":`600`,"font-size":`12.5px`,color:`var(--df-accent)`}},yx={class:`muted`},bx={style:{"padding-left":`8px`,"border-left":`2px solid var(--df-border-soft)`}},xx=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})(z({__name:`HistoryView`,props:{historyRecords:{},isRecording:{type:Boolean}},emits:[`update:isRecording`,`clear`],setup(e,{emit:t}){let n=t;function r(e){let t=new Date(e);return`${t.getHours().toString().padStart(2,`0`)}:${t.getMinutes().toString().padStart(2,`0`)}:${t.getSeconds().toString().padStart(2,`0`)}.${t.getMilliseconds().toString().padStart(3,`0`)}`}return(t,i)=>(W(),G(`div`,lx,[q(`div`,ux,[J(Zv,{variant:e.isRecording?`action`:`text`,size:`sm`,icon:e.isRecording?`i-ph-record-fill text-error`:`i-ph-play-duotone`,title:e.isRecording?`Click to pause recording`:`Click to record`,onClick:i[0]||=t=>n(`update:isRecording`,!e.isRecording)},{default:R(()=>[Y(j(e.isRecording?`Recording`:`Paused`),1)]),_:1},8,[`variant`,`icon`,`title`]),J(Zv,{variant:`text`,size:`sm`,icon:`i-ph-trash-duotone`,onClick:i[1]||=e=>n(`clear`)},{default:R(()=>[...i[2]||=[Y(` Clear `,-1)]]),_:1}),q(`span`,dx,j(e.historyRecords.length)+` records`,1)]),e.historyRecords.length===0?(W(),G(`div`,fx,` No history yet. `)):(W(),G(`div`,px,[(W(!0),G(H,null,da(e.historyRecords,e=>(W(),G(`div`,{key:e.id,style:{border:`1px solid var(--df-border)`,"border-radius":`var(--df-radius)`,background:`var(--df-bg-soft)`,padding:`12px`}},[q(`div`,mx,[q(`span`,hx,j(r(e.time)),1),e.type===`call`?(W(),G(H,{key:0},[i[3]||=q(`span`,{class:`badge action`},`RPC Call`,-1),q(`span`,gx,j(e.method),1),q(`span`,_x,j(e.duration)+`ms`,1)],64)):(W(),G(H,{key:1},[i[4]||=q(`span`,{class:`badge static`},`State Update`,-1),q(`span`,vx,j(e.key),1),q(`span`,yx,`Sync ID: `+j(e.syncId),1)],64))]),q(`div`,bx,[e.type===`call`?(W(),G(H,{key:0},[i[7]||=q(`div`,{class:`label`,style:{"margin-top":`0`}},` Arguments `,-1),J(my,{value:e.args,"expand-depth":1},null,8,[`value`]),`result`in e?(W(),G(H,{key:0},[i[5]||=q(`div`,{class:`label`},` Result `,-1),J(my,{value:e.result,"expand-depth":1},null,8,[`value`])],64)):`error`in e?(W(),G(H,{key:1},[i[6]||=q(`div`,{class:`label`,style:{color:`var(--df-danger)`}},` Error `,-1),J(my,{value:e.error,"expand-depth":1},null,8,[`value`])],64)):X(``,!0)],64)):(W(),G(H,{key:1},[`value`in e?(W(),G(H,{key:0},[i[8]||=q(`div`,{class:`label`,style:{"margin-top":`0`}},` New State `,-1),J(my,{value:e.value,"expand-depth":1},null,8,[`value`])],64)):`patches`in e?(W(),G(H,{key:1},[i[9]||=q(`div`,{class:`label`,style:{"margin-top":`0`}},` Patches `,-1),J(my,{value:e.patches,"expand-depth":1},null,8,[`value`])],64)):X(``,!0)],64))])]))),128))]))]))}}),[[`__scopeId`,`data-v-fa4416fc`]]),Sx=z({__name:`HistorySmart`,setup(e){function t(e){zv.value=e}return(e,n)=>(W(),K(xx,{"history-records":L(Rv),"is-recording":L(zv),"onUpdate:isRecording":t,onClear:L(Hv)},null,8,[`history-records`,`is-recording`,`onClear`]))}}),Cx={class:`pane`},wx={class:`toolbar`},Tx={class:`muted`},Ex={key:0,class:`center`},Dx={key:1,class:`inst-empty`},Ox={key:2,class:`cards`},kx={class:`card-head`},Ax={class:`card-title`},jx={key:0,class:`badge agent`},Mx={key:1,class:`badge`},Nx={class:`id`},Px=[`href`],Fx={class:`inst-url-text`},Ix={class:`inst-meta`},Lx={class:`inst-meta-wide`},Rx=[`title`],zx=z({__name:`InstancesView`,props:{instances:{}},setup(e){let t=e,n=Z(()=>[...t.instances??[]].sort((e,t)=>e.isCurrent===t.isCurrent?t.startedAt-e.startedAt:e.isCurrent?-1:1));function r(e){let t=Math.max(0,Math.round((Date.now()-e)/1e3));if(t<60)return`${t}s`;let n=Math.floor(t/60);if(n<60)return`${n}m ${t%60}s`;let r=Math.floor(n/60);return r<24?`${r}h ${n%60}m`:`${Math.floor(r/24)}d ${r%24}h`}return(t,i)=>(W(),G(`div`,Cx,[q(`div`,wx,[q(`span`,Tx,j((e.instances??[]).length)+` running `+j((e.instances??[]).length===1?`instance`:`instances`),1),i[0]||=q(`span`,{class:`muted`},[Y(`Devframe dev servers running on this machine, discovered via the shared registry (`),q(`code`,null,`~/.devframe/instances/`),Y(`).`)],-1)]),e.instances?e.instances.length===0?(W(),G(`div`,Dx,[...i[1]||=[q(`span`,{class:`i-ph-broadcast-duotone inst-empty-icon`},null,-1),q(`p`,{class:`inst-empty-title`},` No devframe instances discovered `,-1),q(`p`,null,[Y(` This tab lists every devframe dev server running on your machine, so you can jump between them. Each server registers itself in `),q(`code`,null,`~/.devframe/instances/`),Y(` while it runs. `)],-1),q(`p`,null,[Y(` Nothing shows up when only static/build servers are running, when discovery is turned off (`),q(`code`,null,`DEVFRAME_DISABLE_INSTANCE_REGISTRY=1`),Y(`), or when an in-process host hasn't opted in. Start another `),q(`code`,null,`devframe`),Y(` dev server (or a hub host that calls `),q(`code`,null,`registerDevframeInstance()`),Y(`), then hit refresh. `)],-1)]])):(W(),G(`div`,Ox,[(W(!0),G(H,null,da(n.value,e=>(W(),G(`div`,{key:`${e.pid}-${e.port}`,class:`card`},[q(`div`,kx,[i[2]||=q(`span`,{class:`i-ph-broadcast-duotone cmd-icon`},null,-1),q(`span`,Ax,j(e.name??e.id),1),e.isCurrent?(W(),G(`span`,jx,`this instance`)):X(``,!0),e.hasMcp?(W(),G(`span`,Mx,`MCP`)):X(``,!0)]),q(`div`,Nx,j(e.id),1),q(`a`,{class:`inst-url`,href:e.url,target:`_blank`,rel:`noopener noreferrer`},[i[3]||=q(`span`,{class:`i-ph-arrow-square-out-duotone`},null,-1),q(`span`,Fx,j(e.url),1)],8,Px),q(`dl`,Ix,[q(`div`,null,[i[4]||=q(`dt`,null,`Port`,-1),q(`dd`,null,j(e.port),1)]),q(`div`,null,[i[5]||=q(`dt`,null,`PID`,-1),q(`dd`,null,j(e.pid),1)]),q(`div`,null,[i[6]||=q(`dt`,null,`Uptime`,-1),q(`dd`,null,j(r(e.startedAt)),1)]),q(`div`,Lx,[i[7]||=q(`dt`,null,`Root`,-1),q(`dd`,{title:e.rootDir},j(e.rootDir),9,Rx)])])]))),128))])):(W(),G(`div`,Ex,` Discovering instances… `))]))}}),Bx=z({__name:`InstancesSmart`,setup(e){let t=Jv(),n=sn(null);async function r(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:list-instances`))}return Tm(r),Ji(r),(e,t)=>(W(),K(zx,{instances:n.value},null,8,[`instances`]))}}),Vx={class:`split`},Hx={class:`keys`},Ux={class:`keys-head`},Wx={class:`checkbox`},Gx={class:`keys-list`},Kx={key:0,class:`empty`},qx={key:1,class:`empty`},Jx=[`title`,`onClick`],Yx={class:`state-main`},Xx={key:0,class:`center`},Zx={key:1,class:`center`},Qx={class:`state-meta`},$x={class:`state-key`},eS={key:0,class:`pulse`},tS={key:1,class:`note`},nS=z({__name:`StateView`,props:{keys:{},selectedKey:{},value:{},loading:{type:Boolean},isStatic:{type:Boolean},updates:{},highlightPaths:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,i=I(!1),a=Z(()=>{let e=n.keys??[];return i.value?e:e.filter(e=>!e.startsWith(`devframe:`)&&!e.startsWith(`__`))});return(t,n)=>(W(),G(`div`,Vx,[q(`aside`,Hx,[q(`div`,Ux,[q(`span`,null,j(a.value.length)+` keys`,1),q(`label`,Wx,[pr(q(`input`,{"onUpdate:modelValue":n[0]||=e=>i.value=e,type:`checkbox`},null,512),[[Bl,i.value]]),n[1]||=Y(` internal `,-1)])]),q(`div`,Gx,[e.keys?a.value.length===0?(W(),G(`div`,qx,` No shared state`+j(e.keys.length?` (toggle internal)`:``)+`. `,1)):X(``,!0):(W(),G(`div`,Kx,` Loading… `)),(W(!0),G(H,null,da(a.value,t=>(W(),G(`button`,{key:t,class:A([`key-item`,{active:e.selectedKey===t}]),title:t,onClick:e=>r(`select`,t)},j(t),11,Jx))),128))])]),q(`section`,Yx,[e.selectedKey?e.loading?(W(),G(`div`,Zx,` Loading state… `)):(W(),G(H,{key:2},[q(`div`,Qx,[q(`span`,$x,j(e.selectedKey),1),e.isStatic?(W(),G(`span`,tS,`static snapshot`)):(W(),G(`span`,eS,`live`+j(e.updates?` · ${e.updates} update${e.updates>1?`s`:``}`:``),1))]),J(my,{value:e.value,"expand-depth":3,"highlight-paths":e.highlightPaths},null,8,[`value`,`highlight-paths`])],64)):(W(),G(`div`,Xx,` Select a shared-state key to inspect its live value. `))])]))}}),rS=z({__name:`StateSmart`,setup(e){let t=Jv(),n=sn(null),r=I(null),i=sn(void 0),a=I(!1),o=sn(new Set),s=I(0),c=null,l=null;async function u(){t.value&&(n.value=await t.value.call(`devframes:plugin:inspect:list-state-keys`))}Tm(u),Ji(u);function d(e,t,n=``,r=new Set){if(e===t)return r;if(!(typeof e==`object`&&e)||!(typeof t==`object`&&t))return r.add(n),r;let i=new Set([...Object.keys(e),...Object.keys(t)]);for(let a of i){let i=n?`${n}.${a}`:a,o=a in e,s=a in t;!o||!s?r.add(i):d(e[a],t[a],i,r)}return r}function f(e){o.value=e,l&&clearTimeout(l),l=setTimeout(()=>{o.value=new Set},1600)}function p(){c?.(),c=null}return Cr(r,async e=>{if(p(),i.value=void 0,s.value=0,o.value=new Set,!(!e||!t.value)){a.value=!0;try{let n=await t.value.sharedState.get(e);i.value=n.value(),c=n.on(`updated`,e=>{let t=d(i.value,e);i.value=e,s.value++,f(t)})}finally{a.value=!1}}}),Pe(()=>{p(),l&&clearTimeout(l)}),(e,t)=>(W(),K(nS,{keys:n.value,"selected-key":r.value,value:i.value,loading:a.value,"is-static":L(Yv)(),updates:s.value,"highlight-paths":o.value,onSelect:t[0]||=e=>r.value=e},null,8,[`keys`,`selected-key`,`value`,`loading`,`is-static`,`updates`,`highlight-paths`]))}}),iS={class:`app`},aS={class:`app-body`},oS={class:`flex flex-col gap-1`},sS=z({__name:`App`,setup(e){let t=I(`functions`),{refresh:n,loading:r}=Em(),i=Z(()=>hm(Uv.status)),a=Z(()=>_m(Uv.status)),o=[{value:`functions`,label:`Functions`,icon:`i-ph-function-duotone`},{value:`state`,label:`State`,icon:`i-ph-database-duotone`},{value:`agent`,label:`Agent`,icon:`i-ph-robot-duotone`},{value:`commands`,label:`Commands`,icon:`i-ph-terminal-window-duotone`},{value:`history`,label:`History`,icon:`i-ph-clock-counter-clockwise-duotone`},{value:`instances`,label:`Instances`,icon:`i-ph-broadcast-duotone`}],s=Z(()=>Yv()?o.filter(e=>e.value!==`instances`):o);Ji(qv);function c(){location.reload()}return(e,o)=>(W(),G(`div`,iS,[J(dm,{glass:!1,class:`h-nav`},{search:R(()=>[...o[1]||=[q(`div`,null,null,-1)]]),end:R(()=>[i.value?(W(),G(`span`,{key:0,class:A(i.value.class)},[q(`span`,{class:A(i.value.dot)},null,2),Y(` `+j(i.value.label),1)],2)):X(``,!0),J(Qf,{class:`text-sm`,icon:L(r)?`i-ph-arrows-clockwise animate-spin`:`i-ph-arrows-clockwise`,tooltip:L(r)?`Refreshing…`:`Refresh`,label:`Refresh`,disabled:L(r)||!L(Uv).connected,onClick:L(n)},null,8,[`icon`,`tooltip`,`disabled`,`onClick`])]),default:R(()=>[o[2]||=q(`div`,{class:`flex items-center gap-1.5 shrink-0 font-semibold text-sm select-none`},[q(`span`,{class:`i-ph-magnifying-glass-duotone text-base color-active`}),q(`span`,null,`Devframe Inspector`)],-1),J(cm,{modelValue:t.value,"onUpdate:modelValue":o[0]||=e=>t.value=e,tabs:s.value,variant:`segment`},null,8,[`modelValue`,`tabs`])]),_:1}),q(`main`,aS,[a.value?(W(),G(`div`,{key:0,class:A(L(vm)(`h-full`))},[q(`span`,{class:A([a.value.icon,L(ym)(a.value.spin)])},null,2),q(`div`,oS,[q(`p`,{class:A(L(bm)())},j(a.value.title),3),q(`p`,{class:A(L(xm)())},j(a.value.body),3),L(Uv).error&&L(Uv).status===`error`?(W(),G(`p`,{key:0,class:A(L(Sm)())},j(L(Uv).error),3)):X(``,!0)]),a.value.reloadable?(W(),G(`button`,{key:0,type:`button`,class:A(L(pm)({variant:`primary`,size:`sm`})),onClick:c},[...o[3]||=[q(`span`,{class:`i-ph-arrow-clockwise`},null,-1),Y(` Reload `,-1)]],2)):X(``,!0)],2)):(W(),G(H,{key:1},[t.value===`functions`?(W(),K(cx,{key:0})):t.value===`state`?(W(),K(rS,{key:1})):t.value===`agent`?(W(),K(Zy,{key:2})):t.value===`commands`?(W(),K(Db,{key:3})):t.value===`history`?(W(),K(Sx,{key:4})):t.value===`instances`?(W(),K(Bx,{key:5})):X(``,!0)],64))])]))}}),cS=window.matchMedia(`(prefers-color-scheme: dark)`);function lS(e){document.documentElement.classList.toggle(`dark`,e),document.documentElement.classList.toggle(`light`,!e)}lS(cS.matches),cS.addEventListener(`change`,e=>lS(e.matches)),uu(sS).mount(`#app`);
package/dist/index.html CHANGED
@@ -5,7 +5,7 @@
5
5
  <meta name="viewport" content="width=device-width,initial-scale=1" />
6
6
  <base href="./" />
7
7
  <title>Devframe Inspector</title>
8
- <script type="module" crossorigin src="./assets/index-lx_1yRKC.js"></script>
8
+ <script type="module" crossorigin src="./assets/index-BiQfBU8u.js"></script>
9
9
  <link rel="stylesheet" crossorigin href="./assets/index-DnRzlhNG.css">
10
10
  </head>
11
11
  <body>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@devframes/plugin-inspect--assets",
3
3
  "type": "module",
4
- "version": "0.9.9",
4
+ "version": "0.9.11",
5
5
  "description": "Prebuilt browser assets (SPA) for @devframes/plugin-inspect, served on demand through devframe's remote-assets back-proxy.",
6
6
  "author": "Anthony Fu <anthonyfu117@hotmail.com>",
7
7
  "license": "MIT",