@devframes/plugin-og--assets 0.9.8 → 0.9.9

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.
@@ -5,5 +5,5 @@ var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],en
5
5
  `)}\n})`}var Su={class:`border border-base rounded-lg overflow-hidden bg-base`},Cu={class:`flex items-center gap-2 border-b border-base bg-secondary px3 py2`},wu={class:`ml-auto color-muted font-mono text-xs tabular-nums`},Tu={key:0,class:`divide-y divide-base`},Eu=[`href`],Du={key:1,class:`min-w-0 truncate color-muted font-mono text-xs`},Ou=[`href`],ku={key:3,class:`min-w-0 break-words color-base text-xs`},Au={key:1,class:`px4 py8 text-center color-muted text-sm`},ju=V({__name:`MetadataTable`,props:{tags:{}},setup(e){let t=new Map(vu.map(e=>[e.name,e.docs]));function n(e){return/^https?:\/\//i.test(e)}return(r,i)=>(G(),K(`section`,Su,[J(`header`,Cu,[i[0]||=J(`span`,{class:`i-ph-tag-duotone color-active`},null,-1),i[1]||=J(`h2`,{class:`m0 text-sm font-semibold`},` Head metadata `,-1),J(`span`,wu,M(e.tags.length),1)]),e.tags.length?(G(),K(`div`,Tu,[(G(!0),K(U,null,la(e.tags,(e,r)=>(G(),K(`div`,{key:`${e.tag}:${e.name}:${r}`,class:`grid grid-cols-[minmax(8rem,0.35fr)_1fr] items-start gap-3 px3 py2 hover:bg-active`},[R(t).get(e.name)?(G(),K(`a`,{key:0,href:R(t).get(e.name),target:`_blank`,rel:`noreferrer`,class:`min-w-0 truncate color-muted font-mono text-xs hover:color-active`},M(e.name),9,Eu)):(G(),K(`span`,Du,M(e.name),1)),n(e.value)?(G(),K(`a`,{key:2,href:e.value,target:`_blank`,rel:`noreferrer`,class:`min-w-0 break-all color-base font-mono text-xs hover:color-active`},M(e.value),9,Ou)):(G(),K(`span`,ku,M(e.value),1))]))),128))])):(G(),K(`div`,Au,` No supported head metadata was found. `))]))}}),Mu=V({__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)=>(G(),K(`span`,{class:`border-2 border-current border-t-transparent rounded-full inline-block animate-spin`,style:pe({width:n.value,height:n.value}),role:`status`,"aria-label":`Loading`},null,4))}}),Nu=V({__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)=>(G(),q(aa(n.value),{class:j([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:B(()=>[e.loading?(G(),q(Mu,{key:0,size:`1em`})):e.icon?(G(),K(`span`,{key:1,class:j(e.icon),"aria-hidden":`true`},null,2)):bs(``,!0),da(t.$slots,`default`)]),_:3},8,[`class`,`href`,`to`,`disabled`,`aria-disabled`,`aria-busy`]))}});function Pu(e){return typeof e==`string`?`'${e}'`:new Ru().serialize(e)}var Fu=` _-,;:!?.'"()[]{}@*/\\&#%\`^+<=>|~$0123456789abcdefghijklmnopqrstuvwxyz`,Iu=(function(){let e=new Uint8Array(128);for(let t=0;t<69;t++)e[Fu.charCodeAt(t)]=t+1;for(let t=65;t<=90;t++)e[t]=e[t+32];return e})();function Lu(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&&Iu[n]?Iu[n]:n+128,s=a<128&&Iu[a]?Iu[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 Ru=(function(){class e{#e=new Map;compare(e,t){let n=typeof e,r=typeof t;return n===`string`&&r===`string`?Lu(e,t):n===`number`&&r===`number`?e-t:Lu(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(Lu),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})(),zu=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],Bu=[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],Vu=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`,Hu=[],Uu=class{_data=new Wu;_hash=new Wu([...zu]);_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)Hu[n]=e[t+n]|0;else{let e=Hu[n-15],t=(e<<25|e>>>7)^(e<<14|e>>>18)^e>>>3,r=Hu[n-2],i=(r<<15|r>>>17)^(r<<13|r>>>19)^r>>>10;Hu[n]=t+Hu[n-7]+i+Hu[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+Bu[n]+Hu[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=Wu.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 Wu(t,i)}},Wu=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(Vu.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 Gu(e){return new Uu().finalize(e).toBase64()}function Ku(e){return Gu(Pu(e))}function qu(e,t){let n=typeof e==`string`&&!t?`${e}Context`:t,r=Symbol(n);return[t=>{let n=mr(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=>(pr(r,e),e)]}function Ju(){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 Yu(e,t){return Me()?(Ne(e,t),!0):!1}var Xu=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var Zu=e=>e!==void 0,Qu=Xu?window:void 0;Xu&&window.document,Xu&&window.navigator,Xu&&window.location;function $u(e){let t=un(e);return t?.$el??t}function ed(){let e=on(!1),t=X();return t&&Ki(()=>{e.value=!0},t),e}function td(e){let t=ed();return Z(()=>(t.value,!!e()))}function nd(e){return JSON.parse(JSON.stringify(e))}function rd(e,t,n={}){let{window:r=Qu,...i}=n,a,o=td(()=>r&&`ResizeObserver`in r),s=()=>{a&&=(a.disconnect(),void 0)},c=xr(Z(()=>{let t=un(e);return Array.isArray(t)?t.map(e=>$u(e)):[$u(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 Yu(l),{isSupported:o,stop:l}}function id(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=X(),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):nd(e):e,g=()=>Zu(e[t])?h(e[t]):u,_=e=>{d?d(e)&&p(m,e):p(m,e)};if(s){let n=L(g()),r=!1;return xr(()=>e[t],e=>{r||(r=!0,n.value=h(e),Jn(()=>r=!1))}),xr(n,n=>{!r&&(n!==e[t]||l)&&_(n)},{deep:l}),n}return Z({get(){return g()},set(e){_(e)}})}function ad(e){return e?e.flatMap(e=>e.type===U?ad(e.children):[e]):[]}var[od,sd]=qu(`ConfigProvider`);function cd(e){let t=od({dir:L(`ltr`)});return Z(()=>e?.value||t.dir?.value||`ltr`)}function ld(){let e=X(),t=L(),n=Z(()=>r());Ji(()=>{n.value!==r()&&ln(t)});function r(){return t.value&&`$el`in t.value&&[`#text`,`#comment`].includes(t.value.$el.nodeName)?t.value.$el.nextElementSibling:$u(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 ud=0;function dd(e,t=`reka`){if(e)return e;let n,r=od({useId:void 0});return n=r.useId?r.useId():`useId`in gu?ei?.():`${++ud}`,t?`${t}-${n}`:n}function fd(e,t){let n=L(e);function r(e){return t[n.value][e]??n.value}return{state:n,dispatch:e=>{n.value=r(e)}}}function pd(e,t){let n=L({}),r=L(`none`),i=L(e),a=e.value?`mounted`:`unmounted`,o,s=t.value?.ownerDocument.defaultView??Qu,{state:c,dispatch:l}=fd(a,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}}),u=e=>{if(Xu){let n=new CustomEvent(e,{bubbles:!1,cancelable:!1});t.value?.dispatchEvent(n)}};xr(e,async(e,i)=>{let a=i!==e;if(await Jn(),a){let a=r.value,o=md(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=md(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=md(t.value))},p=xr(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=xr(c,()=>{let e=md(t.value);r.value=c.value===`mounted`?e:`none`});return Xi(()=>{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 md(e){return e&&getComputedStyle(e).animationName||`none`}var hd=V({name:`Presence`,props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(e,{slots:t,expose:n}){let{present:r,forceMount:i}=hn(e),a=L(),{isPresent:o}=pd(r,a);n({present:o});let s=t.default({present:o.value});s=ad(s||[]);let c=X();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(`
6
6
  `)].join(`
7
7
  `))}return()=>i.value||r.value||o.value?Ys(t.default({present:o.value})[0],{ref:e=>{let t=$u(e);return t?.hasAttribute===void 0||(t?.hasAttribute(`data-reka-popper-content-wrapper`)?a.value=t.firstElementChild:a.value=t),t}}):null}}),gd=V({name:`PrimitiveSlot`,inheritAttrs:!1,setup(e,{attrs:t,slots:n}){return()=>{if(!n.default)return null;let e=ad(n.default()),r=e.findIndex(e=>e.type!==W);if(r===-1)return e;let i=e[r];delete i.props?.ref;let a=i.props?ws(t,i.props):t,o=_s({...i,props:{}},a);return e.length===1?o:(e[r]=o,e)}}}),_d=[`area`,`img`,`input`],vd=V({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`&&_d.includes(r)?()=>Ys(r,t):r===`template`?()=>Ys(gd,t,{default:n.default}):()=>Ys(e.as,t,{default:n.default})}});function yd(){let e=L();return{primitiveElement:e,currentElement:Z(()=>[`#text`,`#comment`].includes(e.value?.$el.nodeName)?e.value?.$el.nextElementSibling:$u(e))}}var bd=`data-reka-collection-item`;function xd(e={}){let{key:t=``,isProvider:n=!1}=e,r=`${t}CollectionProvider`,i;n?(i={collectionRef:L(),itemMap:L(new Map)},pr(r,i)):i=mr(r);let a=(e=!1)=>{let t=i.collectionRef.value;if(!t)return[];let n=Array.from(t.querySelectorAll(`[${bd}]`)),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=V({name:`CollectionSlot`,inheritAttrs:!1,setup(e,{slots:t,attrs:n}){let{primitiveElement:r,currentElement:a}=yd();return xr(a,()=>{i.collectionRef.value=a.value}),()=>Ys(gd,{ref:r,...n},t)}}),s=V({name:`CollectionItem`,inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(e,{slots:t,attrs:n}){let{primitiveElement:r,currentElement:a}=yd();return vr(t=>{if(a.value){let n=nn(a.value);i.itemMap.value.set(n,{ref:a.value,value:e.value}),t(()=>i.itemMap.value.delete(n))}}),()=>Ys(gd,{...n,[bd]:``,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 Sd=`rovingFocusGroup.onEntryFocus`,Cd={bubbles:!1,cancelable:!0},wd={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function Td(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function Ed(e,t,n){let r=Td(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return wd[r]}function Dd(e,t=!1){let n=Ju();for(let r of e)if(r===n||(r.focus({preventScroll:t}),Ju()!==n))return}function Od(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var[kd,Ad]=qu(`RovingFocusGroup`),jd=V({__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}=hn(r),c=cd(s),l=id(r,`currentTabStopId`,i,{defaultValue:r.defaultCurrentTabStopId,passive:r.currentTabStopId===void 0}),u=L(!1),d=L(!1),f=L(0),{getItems:p,CollectionSlot:m}=xd({isProvider:!0});function h(e){let t=!d.value;if(e.currentTarget&&e.target===e.currentTarget&&t&&!u.value){let t=new CustomEvent(Sd,Cd);if(e.currentTarget.dispatchEvent(t),i(`entryFocus`,t),!t.defaultPrevented){let e=p().map(e=>e.ref).filter(e=>e.dataset.disabled!==``);Dd([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}),Ad({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)=>(G(),q(R(m),null,{default:B(()=>[Y(R(vd),{tabindex:u.value||f.value===0?-1:0,"data-orientation":R(o),as:e.as,"as-child":e.asChild,dir:R(c),style:{outline:`none`},onMousedown:t[0]||=e=>d.value=!0,onMouseup:g,onFocus:h,onBlur:t[1]||=e=>u.value=!1},{default:B(()=>[da(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`as`,`as-child`,`dir`])]),_:3}))}}),Md=V({__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=kd(),r=dd(),i=Z(()=>t.tabStopId||r),a=Z(()=>n.currentTabStopId.value===i.value),{getItems:o,CollectionItem:s}=xd();Ki(()=>{t.focusable&&n.onFocusableItemAdd()}),Xi(()=>{t.focusable&&n.onFocusableItemRemove()}),xr(()=>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=Ed(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?Od(i,t+1):i.slice(t+1)}Jn(()=>Dd(i))}}return(e,t)=>(G(),q(R(s),null,{default:B(()=>[Y(R(vd),{tabindex:a.value?0:-1,"data-orientation":R(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?R(n).onItemFocus(i.value):t.preventDefault()},onFocus:t[1]||=e=>R(n).onItemFocus(i.value),onKeydown:c},{default:B(()=>[da(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`data-active`,`data-disabled`,`as`,`as-child`])]),_:3}))}}),[Nd,Pd]=qu(`TabsRoot`),Fd=V({__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}=hn(n),s=cd(o);ld();let c=id(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),l=L(),u=on(new Set);return Pd({modelValue:c,changeModelValue:e=>{c.value=e},orientation:i,dir:s,unmountOnHide:a,activationMode:n.activationMode,baseId:dd(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)=>(G(),q(R(vd),{dir:R(s),"data-orientation":R(i),"as-child":e.asChild,as:e.as},{default:B(()=>[da(e.$slots,`default`,{modelValue:R(c)})]),_:3},8,[`dir`,`data-orientation`,`as-child`,`as`]))}});function Id(e,t){return`${e}-trigger-${t}`}function Ld(e,t){return`${e}-content-${t}`}var Rd=V({__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}=ld(),r=Nd(),i=Z(()=>Id(r.baseId,t.value)),a=Z(()=>Ld(r.baseId,t.value)),o=Z(()=>t.value===r.modelValue.value),s=L(o.value);return Ki(()=>{r.registerContent(t.value),requestAnimationFrame(()=>{s.value=!1})}),Yi(()=>{r.unregisterContent(t.value)}),(e,t)=>(G(),q(R(hd),{present:e.forceMount||o.value,"force-mount":``},{default:B(({present:t})=>[Y(R(vd),{id:a.value,ref:R(n),"as-child":e.asChild,as:e.as,role:`tabpanel`,"data-state":o.value?`active`:`inactive`,"data-orientation":R(r).orientation.value,"aria-labelledby":i.value,hidden:!t,tabindex:`0`,style:pe({animationDuration:s.value?`0s`:void 0})},{default:B(()=>[!R(r).unmountOnHide.value||t?da(e.$slots,`default`,{key:0}):bs(`v-if`,!0)]),_:2},1032,[`id`,`as-child`,`as`,`data-state`,`data-orientation`,`aria-labelledby`,`hidden`,`style`])]),_:3},8,[`present`]))}}),zd=V({__name:`TabsIndicator`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e,{expose:t}){let n=e,r=Nd();t({updateIndicatorStyle:s}),ld();let i=ed(),a=L({size:null,thickness:null,position:null}),o=L([]);xr(()=>[r.modelValue.value,r?.dir.value],()=>{s()},{immediate:!0,flush:`post`}),yr(()=>{o.value=Array.from(r.tabsList.value?.querySelectorAll(`[role="tab"]`)||[])}),rd(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)=>R(i)&&typeof a.value.size==`number`?(G(),q(R(vd),ws({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:B(()=>[da(e.$slots,`default`)]),_:3},16,[`style`])):bs(`v-if`,!0)}}),Bd=V({__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}=hn(e),{forwardRef:n,currentElement:r}=ld(),i=Nd();return i.tabsList=r,(e,r)=>(G(),q(R(jd),{"as-child":``,orientation:R(i).orientation.value,dir:R(i).dir.value,loop:R(t)},{default:B(()=>[Y(R(vd),{ref:R(n),role:`tablist`,"as-child":e.asChild,as:e.as,"aria-orientation":R(i).orientation.value},{default:B(()=>[da(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`aria-orientation`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),Vd=V({__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}=ld(),r=Nd(),i=Z(()=>Id(r.baseId,t.value)),a=Z(()=>r.contentIds.value.has(t.value)?Ld(r.baseId,t.value):void 0),o=Z(()=>t.value===r.modelValue.value);return(e,t)=>(G(),q(R(Md),{"as-child":``,focusable:!e.disabled,active:o.value},{default:B(()=>[Y(R(vd),{id:i.value,ref:R(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":R(r).orientation.value,onMousedown:t[0]||=eu(t=>{!e.disabled&&t.ctrlKey===!1?R(r).changeModelValue(e.value):t.preventDefault()},[`left`]),onKeydown:t[1]||=nu(t=>R(r).changeModelValue(e.value),[`enter`,`space`]),onFocus:t[2]||=()=>{let t=R(r).activationMode!==`manual`;!o.value&&!e.disabled&&t&&R(r).changeModelValue(e.value)}},{default:B(()=>[da(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`]))}}),Hd={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`},Ud=V({__name:`LayoutTabs`,props:ja({tabs:{},variant:{default:`underline`},lazy:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=$a(e,`modelValue`);return(n,r)=>(G(),q(R(Fd),{modelValue:t.value,"onUpdate:modelValue":r[0]||=e=>t.value=e,class:j(e.variant===`segment`?``:`border-b border-base`)},{default:B(()=>[Y(R(Bd),{class:j([`flex items-center relative`,e.variant===`segment`?`gap-1 p-1 rounded-lg bg-sunken w-max`:`gap-1`])},{default:B(()=>[(G(!0),K(U,null,la(e.tabs,t=>(G(),q(R(Vd),{key:t.value,value:t.value,as:t.href?`a`:`button`,href:t.href,disabled:t.disabled,class:j([`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:B(()=>[t.icon?(G(),K(`span`,{key:0,class:j(t.icon),"aria-hidden":`true`},null,2)):bs(``,!0),vs(` `+M(t.label??t.value)+` `,1),t.count==null?bs(``,!0):(G(),K(`span`,Hd,M(t.count),1))]),_:2},1032,[`value`,`as`,`href`,`disabled`,`class`]))),128)),e.variant===`underline`?(G(),q(R(zd),{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`})):bs(``,!0)]),_:1},8,[`class`]),da(n.$slots,`default`),(G(!0),K(U,null,la(e.tabs,t=>(G(),K(U,{key:`panel-${t.value}`},[n.$slots[t.value]?(G(),q(R(Rd),{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:B(()=>[da(n.$slots,t.value)]),_:2},1032,[`value`,`force-mount`])):bs(``,!0)],64))),128))]),_:3},8,[`modelValue`,`class`]))}}),Wd={key:0,class:`border border-base rounded-lg overflow-hidden bg-base`},Gd={class:`flex flex-wrap items-center gap-2 border-b border-base bg-secondary px3 py2`},Kd={class:`color-muted text-xs`},qd={key:0,class:`divide-y divide-base`},Jd=[`href`],Yd={key:1,class:`font-mono text-xs color-active`},Xd={class:`color-muted text-xs`},Zd={class:`justify-self-start rounded bg-secondary px1.5 py0.5 color-muted text-2.5 md:justify-self-end`},Qd={key:1,class:`relative p3`},$d={class:`m0 overflow-auto rounded bg-secondary p3 color-base font-mono text-xs leading-relaxed`},ef=V({__name:`MissingTags`,props:{tags:{}},setup(e){let t=e,n=on(`missing`),r=on(!1),i=[{value:`missing`,label:`Missing tags`},{value:`snippet`,label:`Nuxt snippet`}],a=Z(()=>vu.filter(e=>!t.tags.some(t=>t.name===e.name))),o=Z(()=>xu(a.value));async function s(){await navigator.clipboard.writeText(o.value),r.value=!0,window.setTimeout(()=>r.value=!1,1500)}return(e,t)=>a.value.length?(G(),K(`section`,Wd,[J(`header`,Gd,[t[1]||=J(`span`,{class:`i-ph-warning-duotone color-warning`},null,-1),t[2]||=J(`h2`,{class:`m0 text-sm font-semibold`},` Suggestions `,-1),J(`span`,Kd,M(a.value.length)+` missing`,1),Y(Ud,{modelValue:n.value,"onUpdate:modelValue":t[0]||=e=>n.value=e,tabs:i,variant:`segment`,class:`ml-auto`},null,8,[`modelValue`])]),n.value===`missing`?(G(),K(`div`,qd,[(G(!0),K(U,null,la(a.value,e=>(G(),K(`div`,{key:e.name,class:`grid gap-1 px3 py2 md:grid-cols-[9rem_1fr_auto] md:items-center`},[e.docs?(G(),K(`a`,{key:0,href:e.docs,target:`_blank`,rel:`noreferrer`,class:`font-mono text-xs color-active`},M(e.name),9,Jd)):(G(),K(`span`,Yd,M(e.name),1)),J(`span`,Xd,M(e.description),1),J(`span`,Zd,M(e.suggestion),1)]))),128))])):(G(),K(`div`,Qd,[J(`pre`,$d,[J(`code`,null,M(o.value),1)]),Y(Nu,{class:`absolute right5 top5`,size:`sm`,icon:r.value?`i-ph-check-duotone`:`i-ph-copy-duotone`,onClick:s},{default:B(()=>[vs(M(r.value?`Copied`:`Copy`),1)]),_:1},8,[`icon`])]))])):bs(``,!0)}}),tf=[`src`,`alt`],nf=V({__name:`PreviewImage`,props:{src:{},alt:{},class:{}},setup(e){let t=e,n=on(!1);return xr(()=>t.src,()=>n.value=!1),(t,r)=>e.src&&!n.value?(G(),K(`img`,{key:0,src:e.src,alt:e.alt,class:j([t.$props.class,`block bg-secondary object-cover img-outline`]),onError:r[0]||=e=>n.value=!0},null,42,tf)):(G(),K(`div`,{key:1,class:j([t.$props.class,`flex items-center justify-center bg-secondary color-faint img-outline`])},[...r[1]||=[J(`span`,{class:`i-ph-image-broken-duotone text-2xl`},null,-1)]],2))}}),rf={class:`w-full max-w-125 bg-base`},af={class:`border border-t-0 border-base bg-secondary px3 py2.5`},of={class:`truncate color-muted text-xs uppercase`},sf={class:`my1 truncate text-base font-semibold`},cf={class:`m0 truncate color-muted text-sm`},lf=V({__name:`FacebookPreview`,props:{card:{}},setup(e){return(t,n)=>(G(),K(`article`,rf,[Y(nf,{src:e.card.image,alt:e.card.imageAlt,class:`aspect-1.91/1 w-full`},null,8,[`src`,`alt`]),J(`div`,af,[J(`div`,of,M(e.card.hostname),1),J(`h3`,sf,M(e.card.title||`Untitled page`),1),J(`p`,cf,M(e.card.description||`No description provided.`),1)])]))}}),uf={class:`w-full max-w-125 overflow-hidden border border-base rounded-sm bg-base shadow-sm`},df={class:`p3`},ff={class:`m0 truncate text-base font-semibold`},pf={class:`mt1 truncate color-muted text-xs`},mf=V({__name:`LinkedinPreview`,props:{card:{}},setup(e){return(t,n)=>(G(),K(`article`,uf,[Y(nf,{src:e.card.image,alt:e.card.imageAlt,class:`aspect-1.91/1 w-full`},null,8,[`src`,`alt`]),J(`div`,df,[J(`h3`,ff,M(e.card.title||`Untitled page`),1),J(`div`,pf,M(e.card.hostname),1)])]))}}),hf={class:`w-full max-w-105 border border-base rounded-4 rounded-bl-sm bg-base p3 shadow-sm`},gf=[`href`],_f={class:`mt2 grid grid-cols-[2px_1fr] gap-2`},vf={class:`min-w-0`},yf={class:`color-active text-sm font-semibold`},bf={class:`my1 text-sm font-semibold`},xf={class:`m0 color-muted text-sm`},Sf={class:`mt1 text-right color-faint font-mono text-2.5 tabular-nums`},Cf=V({__name:`TelegramPreview`,props:{card:{}},setup(e){let t=new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`}).format(new Date);return(n,r)=>(G(),K(`article`,hf,[J(`a`,{href:e.card.url,target:`_blank`,rel:`noreferrer`,class:`block truncate color-active text-sm underline`},M(e.card.url),9,gf),J(`div`,_f,[r[0]||=J(`div`,{class:`rounded bg-primary op70`},null,-1),J(`div`,vf,[Y(nf,{src:e.card.image,alt:e.card.imageAlt,class:`mb2 aspect-1.91/1 w-full rounded`},null,8,[`src`,`alt`]),J(`div`,yf,M(e.card.hostname),1),J(`h3`,bf,M(e.card.title||`Untitled page`),1),J(`p`,xf,M(e.card.description||`No description provided.`),1)])]),J(`div`,Sf,M(R(t)),1)]))}}),wf={key:0,class:`w-full max-w-110 overflow-hidden border border-base rounded-4 bg-base`},Tf={class:`p3`},Ef={class:`truncate color-muted text-xs lowercase`},Df={class:`my1 truncate text-sm font-semibold`},Of={class:`m0 line-clamp-2 color-muted text-sm`},kf={key:1,class:`w-full max-w-110 flex overflow-hidden border border-base rounded-4 bg-base`},Af={class:`min-w-0 flex flex-col justify-center p3`},jf={class:`truncate color-muted text-xs lowercase`},Mf={class:`my1 truncate text-sm font-semibold`},Nf={class:`m0 line-clamp-2 color-muted text-sm`},Pf=V({__name:`TwitterPreview`,props:{card:{}},setup(e){return(t,n)=>e.card.twitterCard===`summary`?(G(),K(`article`,kf,[Y(nf,{src:e.card.image,alt:e.card.imageAlt,class:`aspect-square w-32 shrink-0`},null,8,[`src`,`alt`]),J(`div`,Af,[J(`div`,jf,M(e.card.hostname),1),J(`h3`,Mf,M(e.card.title||`Untitled page`),1),J(`p`,Nf,M(e.card.description||`No description provided.`),1)])])):(G(),K(`article`,wf,[Y(nf,{src:e.card.image,alt:e.card.imageAlt,class:`aspect-2/1 w-full`},null,8,[`src`,`alt`]),J(`div`,Tf,[J(`div`,Ef,M(e.card.hostname),1),J(`h3`,Df,M(e.card.title||`Untitled page`),1),J(`p`,Of,M(e.card.description||`No description provided.`),1)])]))}}),Ff={class:`h-full min-h-100 flex flex-col border border-base rounded-lg overflow-hidden bg-base`},If={class:`flex flex-wrap items-center gap-2 border-b border-base bg-secondary px3 py2`},Lf={class:`preview-grid flex flex-1 items-center justify-center overflow-auto p5`},Rf=V({__name:`SocialPreview`,props:{snapshot:{}},setup(e){let t=e,n=on(`twitter`),r=Z(()=>bu(t.snapshot,n.value===`twitter`)),i=[{value:`twitter`,label:`Twitter`},{value:`facebook`,label:`Facebook`},{value:`linkedin`,label:`LinkedIn`},{value:`telegram`,label:`Telegram`}];return(e,t)=>(G(),K(`section`,Ff,[J(`header`,If,[t[1]||=J(`span`,{class:`i-ph-share-network-duotone color-active`},null,-1),t[2]||=J(`h2`,{class:`m0 text-sm font-semibold`},` Social preview `,-1),Y(Ud,{modelValue:n.value,"onUpdate:modelValue":t[0]||=e=>n.value=e,tabs:i,variant:`segment`,class:`ml-auto`},null,8,[`modelValue`])]),J(`div`,Lf,[n.value===`twitter`?(G(),q(Pf,{key:0,card:r.value},null,8,[`card`])):n.value===`facebook`?(G(),q(lf,{key:1,card:r.value},null,8,[`card`])):n.value===`linkedin`?(G(),q(mf,{key:2,card:r.value},null,8,[`card`])):(G(),q(Cf,{key:3,card:r.value},null,8,[`card`]))])]))}}),zf={key:0,class:`flex-1 min-w-0`},Bf={key:1,class:`flex gap-1 items-center`},Vf=V({__name:`LayoutToolbar`,props:{sticky:{type:Boolean,default:!0},glass:{type:Boolean,default:!0}},setup(e){return(t,n)=>(G(),K(`div`,{class:j([`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`]])},[da(t.$slots,`start`,{},()=>[da(t.$slots,`default`)]),t.$slots.search?(G(),K(`div`,zf,[da(t.$slots,`search`)])):bs(``,!0),t.$slots.end?(G(),K(`div`,Bf,[da(t.$slots,`end`)])):bs(``,!0)],2))}}),Hf={class:`flex items-center gap-1.5 shrink-0 font-semibold text-sm select-none`},Uf={key:0,class:`rounded bg-secondary px1.5 py0.5 color-muted text-2.5 font-normal`},Wf={class:`min-w-0 flex flex-1 items-center gap-2 border border-base rounded px3 py1.5 focus-within:border-active`},Gf=[`disabled`],Kf=V({__name:`ViewerToolbar`,props:ja({loading:{type:Boolean},isStatic:{type:Boolean}},{target:{required:!0},targetModifiers:{}}),emits:ja([`inspect`],[`update:target`]),setup(e,{emit:t}){let n=t,r=$a(e,`target`);return(t,i)=>(G(),q(Vf,{glass:!1,class:`h-nav`},{search:B(()=>[J(`form`,{class:`mx-auto w-full max-w-3xl flex items-center gap-2`,onSubmit:i[1]||=eu(e=>n(`inspect`),[`prevent`])},[J(`label`,Wf,[i[4]||=J(`span`,{class:`i-ph-globe-hemisphere-west-duotone color-muted shrink-0`},null,-1),dr(J(`input`,{"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`min-w-0 flex-1 bg-transparent color-base font-mono text-xs outline-none`,inputmode:`url`,placeholder:`http://localhost:3000`,spellcheck:`false`,"aria-label":`Page URL`,disabled:e.isStatic},null,8,Gf),[[zl,r.value]])]),Y(Nu,{variant:`primary`,loading:e.loading,disabled:e.isStatic,icon:`i-ph-magnifying-glass-duotone`,type:`submit`},{default:B(()=>[...i[5]||=[vs(` Inspect `,-1)]]),_:1},8,[`loading`,`disabled`])],32)]),default:B(()=>[J(`div`,Hf,[i[2]||=J(`span`,{class:`i-ph-image-square-duotone text-base color-active`},null,-1),i[3]||=J(`span`,null,`Open Graph`,-1),e.isStatic?(G(),K(`span`,Uf,`static`)):bs(``,!0)])]),_:1}))}}),Q={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`}},qf=`__connection.json`,Jf=`__DEVFRAME_CONNECTION__`,Yf=`x-birpc-session`,Xf=`__rpc-dump/index.json`,Zf=`devframe:services`,Qf=`devframe_otp`,$f=`devframe_auth_token`;Q.postMessage.remoteAssetsError;function ep(e){return Ku(e)}var tp=class{cacheMap=new Map;options;keySerializer;constructor(e){this.options=e,this.keySerializer=e.keySerializer||(e=>ep(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 np(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 rp={blue:np(34,39),cyan:np(36,39),gray:np(90,39),green:np(32,39),red:np(31,39),yellow:np(33,39),bold:np(1,22),dim:np(2,22),reset:np(0,0),underline:np(4,24)};function ip(e,...t){return typeof e==`function`?e(...t):e}var ap=Error.captureStackTrace,op=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,ap?.(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 sp(e,t){return typeof e==`string`?`${e}/${t.toLowerCase()}`:e?.(t)}function cp(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||sp(r,i),s=(e={},n={})=>{let r=new op({code:i,why:ip(a.why,e),fix:ip(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 lp(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(`
8
- `)}}var up=lp(rp);function dp(e,{method:t=`warn`}={}){console[t](up(e))}function fp(e){return cp({...e,reporters:[dp,...e.reporters??[]]})}var pp=fp({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 mp(e,t){let n=e[`~standard`].validate(t);return n instanceof Promise?await n:n}function hp(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 gp(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 mp(i,n[r]);if(a.issues)throw pp.DF0043({name:e,index:r,issues:hp(a.issues)})}return r}async function _p(e,t,n){if(!t)return n;let r=await mp(t,n);if(r.issues)throw pp.DF0044({name:e,issues:hp(r.issues)});return n}async function vp(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 yp(e,t){let n=e.handler;if(!n){let r=await vp(e,t);if(!r.handler)throw pp.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 gp(e.name,r,t),o=await a(...n);return await _p(e.name,i,o)}}var bp=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 yp(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 pp.DF0021({name:e.name});xp(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 pp.DF0022({name:e.name});xp(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 yp(this.definitions.get(e),this.context)}getSchema(e){let t=this.definitions.get(e);if(!t)throw pp.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 xp(e){if(e.agent&&e.jsonSerializable!==!0)throw pp.DF0019({name:e.name})}function Sp(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 Cp(t,`undefined`,r,e);return n}if(i===null)return n;if(typeof i==`bigint`)throw Cp(t,`BigInt`,r,e);if(typeof i==`object`){if(i instanceof Map)throw Cp(t,`Map`,r,e);if(i instanceof Set)throw Cp(t,`Set`,r,e);if(i instanceof Date)throw Cp(t,`Date`,r,e);if(Array.isArray(i))return n;let a=Object.getPrototypeOf(i);if(a!==null&&a!==Object.prototype)throw Cp(t,i.constructor?.name??`class instance`,r,e)}return n})}function Cp(e,t,n,r){let i=wp(n,r);return pp.DF0020({name:e||`<anonymous>`,type:t,path:i})}function wp(e,t){return Array.isArray(e)?`[${t}]`:t===``?`<root>`:t}function Tp(){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 Ep=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,Dp=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,Op=/^([/\\]\s*){2,}[^/\\]/,kp=/\/$|\/\?|\/#/,Ap=/^\.?\//;function jp(e,t={}){return typeof t==`boolean`&&(t={acceptRelative:t}),t.strict?Ep.test(e):Dp.test(e)||(t.acceptRelative?Op.test(e):!1)}function Mp(e=``,t){return t?kp.test(e):e.endsWith(`/`)}function Np(e=``,t){if(!t)return(Mp(e)?e.slice(0,-1):e)||`/`;if(!Mp(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 Pp(e=``,t){if(!t)return e.endsWith(`/`)?e:e+`/`;if(Mp(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 Fp(e,t){if(Ip(t)||jp(e))return e;let n=Np(t);if(e.startsWith(n)){let t=e[n.length];if(!t||t===`/`||t===`?`)return e}return Rp(n,e)}function Ip(e){return!e||e===`/`}function Lp(e){return e&&e!==`/`}function Rp(e,...t){let n=e||``;for(let e of t.filter(e=>Lp(e)))if(n){let t=e.replace(Ap,``);n=Pp(n)+t}else n=e;return n}function zp(e,t){let n=e.match(Dp);return n||=e.match(/^\/{2,}/),n?t+e.slice(n[0].length):t+e}var Bp=`__DEVFRAME_CONNECTION_META__`,Vp=`__DEVFRAME_CONNECTION_AUTH_TOKEN__`;function Hp(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 Up(){return Hp(Jf)}function Wp(){return Hp(Bp)}function Gp(e){if(e)return e;try{let e=localStorage.getItem(Vp);if(e)return e}catch{}return Hp(Vp)}function Kp(e){globalThis[Jf]=e,globalThis[Bp]={...e.connectionMeta,baseUrl:e.metaBaseUrl},e.authToken&&qp(e.authToken)}function qp(e){try{localStorage.setItem(Vp,e)}catch{}globalThis[Vp]=e;let t=Up();t&&(globalThis[Jf]={...t,authToken:e})}function Jp(e){let t=Fp(qf,e);try{return new URL(t,globalThis.location?.href).href}catch{return t}}function Yp(e,t){return t&&t!==e.authToken?{...e,authToken:t}:e}function Xp(){let e=Up();if(e)return Yp(e,Gp()??e.authToken??e.connectionMeta.authToken);let t=Wp();if(t)return{connectionMeta:t,metaBaseUrl:t.baseUrl??Jp(`./`),authToken:Gp(t.authToken)}}async function Zp(e={}){if(e.connection){let t=Yp(e.connection,Gp(e.authToken??e.connection.authToken??e.connection.connectionMeta.authToken));return Kp(t),t}let t=Array.isArray(e.baseURL)?e.baseURL:[e.baseURL??`./`];if(e.connectionMeta){let n={connectionMeta:e.connectionMeta,metaBaseUrl:Jp(t[0]??`./`),authToken:Gp(e.authToken??e.connectionMeta.authToken)};return Kp(n),n}let n=Xp();if(n){let t=Yp(n,Gp(e.authToken??n.authToken??n.connectionMeta.authToken));return Kp(t),t}let r=[];for(let n of t){let t=Fp(qf,n),i=Jp(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:Gp(e.authToken??r.authToken)};return Kp(a),a}catch(e){r.push(e)}}throw Error(`Failed to get connection meta from ${t.join(`, `)}`,{cause:r})}var Qp=class extends Error{name=`DevframeConnectionError`;kind;constructor(e,t,n){super(t,n),this.kind=e}};function $p(e=Qf){try{let t=globalThis.location?.hash?.replace(/^#/,``)??``;return new URLSearchParams(t).get(e)||void 0}catch{return}}function em(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 tm(e=Qf){let t=$p(e);return t&&em(e),t}async function nm(e,t={}){let n=tm(t.param??`devframe_otp`);return n?e.isTrusted?!0:e.requestTrustWithCode(n):!1}function rm(e){let t={},n=new WeakMap,r,i=()=>(r??=e.sharedState.get(Zf,{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 im=Symbol.for(`immer-nothing`),am=Symbol.for(`immer-draftable`),$=Symbol.for(`immer-state`);function om(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var sm=Object,cm=sm.getPrototypeOf,lm=`constructor`,um=`prototype`,dm=`configurable`,fm=`enumerable`,pm=`writable`,mm=`value`,hm=e=>!!e&&!!e[$];function gm(e){return e?ym(e)||Em(e)||!!e[am]||!!e[lm]?.[am]||Dm(e)||Om(e):!1}var _m=sm[um][lm].toString(),vm=new WeakMap;function ym(e){if(!e||!km(e))return!1;let t=cm(e);if(t===null||t===sm[um])return!0;let n=sm.hasOwnProperty.call(t,lm)&&t[lm];if(n===Object)return!0;if(!Am(n))return!1;let r=vm.get(n);return r===void 0&&(r=Function.toString.call(n),vm.set(n,r)),r===_m}function bm(e,t,n=!0){xm(e)===0?(n?Reflect.ownKeys(e):sm.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function xm(e){let t=e[$];return t?t.type_:Em(e)?1:Dm(e)?2:Om(e)?3:0}var Sm=(e,t,n=xm(e))=>n===2?e.has(t):sm[um].hasOwnProperty.call(e,t),Cm=(e,t,n=xm(e))=>n===2?e.get(t):e[t],wm=(e,t,n,r=xm(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function Tm(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var Em=Array.isArray,Dm=e=>e instanceof Map,Om=e=>e instanceof Set,km=e=>typeof e==`object`,Am=e=>typeof e==`function`,jm=e=>typeof e==`boolean`;function Mm(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var Nm=e=>km(e)?e?.[$]:null,Pm=e=>e.copy_||e.base_,Fm=e=>e.modified_?e.copy_:e.base_;function Im(e,t){if(Dm(e))return new Map(e);if(Om(e))return new Set(e);if(Em(e))return Array[um].slice.call(e);let n=ym(e);if(t===!0||t===`class_only`&&!n){let t=sm.getOwnPropertyDescriptors(e);delete t[$];let n=Reflect.ownKeys(t);for(let r=0;r<n.length;r++){let i=n[r],a=t[i];a[pm]===!1&&(a[pm]=!0,a[dm]=!0),(a.get||a.set)&&(t[i]={[dm]:!0,[pm]:!0,[fm]:a[fm],[mm]:e[i]})}return sm.create(cm(e),t)}{let t=cm(e);if(t!==null&&n)return{...e};let r=sm.create(t);return sm.assign(r,e)}}function Lm(e,t=!1){return Bm(e)||hm(e)||!gm(e)?e:(xm(e)>1&&sm.defineProperties(e,{set:zm,add:zm,clear:zm,delete:zm}),sm.freeze(e),t&&bm(e,(e,t)=>{Lm(t,!0)},!1),e)}function Rm(){om(2)}var zm={[mm]:Rm};function Bm(e){return e===null||!km(e)||sm.isFrozen(e)}var Vm=`MapSet`,Hm=`Patches`,Um=`ArrayMethods`,Wm={};function Gm(e){let t=Wm[e];return t||om(0,e),t}var Km=e=>!!Wm[e];function qm(e,t){Wm[e]||(Wm[e]=t)}var Jm,Ym=()=>Jm,Xm=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Km(Vm)?Gm(Vm):void 0,arrayMethodsPlugin_:Km(Um)?Gm(Um):void 0});function Zm(e,t){t&&(e.patchPlugin_=Gm(Hm),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Qm(e){$m(e),e.drafts_.forEach(th),e.drafts_=null}function $m(e){e===Jm&&(Jm=e.parent_)}var eh=e=>Jm=Xm(Jm,e);function th(e){let t=e[$];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function nh(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[$].modified_&&(Qm(t),om(4)),gm(e)&&(e=rh(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[$].base_,e,t)}else e=rh(t,n);return ih(t,e,!0),Qm(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===im?void 0:e}function rh(e,t){if(Bm(t))return t;let n=t[$];if(!n)return fh(t,e.handledSet_,e);if(!oh(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);uh(n,e)}return n.copy_}function ih(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Lm(t,n)}function ah(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var oh=(e,t)=>e.scope_===t,sh=[];function ch(e,t,n,r){let i=Pm(e),a=e.type_;if(r!==void 0&&Cm(i,r,a)===t){wm(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;bm(i,(e,n)=>{if(hm(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??sh;for(let e of o)wm(i,e,n,a)}function lh(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!oh(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=Fm(i);ch(e,i.draft_??i,a,n),uh(i,r)})}function uh(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)}ah(e)}}function dh(e,t,n){let{scope_:r}=e;if(hm(n)){let i=n[$];oh(i,r)&&i.callbacks_.push(function(){xh(e),ch(e,n,Fm(i),t)})}else gm(n)&&e.callbacks_.push(function(){let i=Pm(e);e.type_===3?i.has(n)&&fh(n,r.handledSet_,r):Cm(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&fh(Cm(e.copy_,t,e.type_),r.handledSet_,r)})}function fh(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||hm(e)||t.has(e)||!gm(e)||Bm(e)?e:(t.add(e),bm(e,(r,i)=>{if(hm(i)){let t=i[$];oh(t,n)&&(wm(e,r,Fm(t),e.type_),ah(t))}else gm(i)&&fh(i,t,n)}),e)}function ph(e,t){let n=Em(e),r={type_:+!!n,scope_:t?t.scope_:Ym(),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=mh;n&&(i=[r],a=hh);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var mh={get(e,t){if(t===$)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=Pm(e);if(!Sm(i,t,e.type_))return vh(e,i,t);let a=i[t];if(e.finalized_||!gm(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&Mm(t))return a;if(a===gh(e.base_,t)||_h(e,t,a)){xh(e);let n=e.type_===1?+t:t,r=Ch(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in Pm(e)},ownKeys(e){return Reflect.ownKeys(Pm(e))},set(e,t,n){let r=yh(Pm(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=gh(Pm(e),t),i=r?.[$];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(Tm(n,r)&&(n!==void 0||Sm(e.base_,t,e.type_)))return!0;xh(e),bh(e)}return e.copy_[t]===n&&(n!==void 0||Sm(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),dh(e,t,n),!0)},deleteProperty(e,t){return xh(e),gh(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),bh(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=Pm(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[pm]:!0,[dm]:e.type_!==1||t!==`length`,[fm]:r[fm],[mm]:n[t]}},defineProperty(){om(11)},getPrototypeOf(e){return cm(e.base_)},setPrototypeOf(){om(12)}},hh={};for(let e in mh){let t=mh[e];hh[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}hh.deleteProperty=function(e,t){return hh.set.call(this,e,t,void 0)},hh.set=function(e,t,n){return mh.set.call(this,e[0],t,n,e[0])};function gh(e,t){let n=e[$];return(n?Pm(n):e)[t]}function _h(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||e.assigned_?.get(t)||!gm(n)||n[$]?!1:e.baseRefs_.has(n)}function vh(e,t,n){let r=yh(t,n);return r?mm in r?r[mm]:r.get?.call(e.draft_):void 0}function yh(e,t){if(!(t in e))return;let n=cm(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=cm(n)}}function bh(e){e.modified_||(e.modified_=!0,e.parent_&&bh(e.parent_))}function xh(e){e.copy_||=(e.assigned_=new Map,Im(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var Sh=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(Am(e)&&!Am(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}Am(t)||om(6),n!==void 0&&!Am(n)&&om(7);let r;if(gm(e)){let i=eh(this),a=Ch(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?Qm(i):$m(i)}return Zm(i,n),nh(r,i)}if(!e||!km(e)){if(r=t(e),r===void 0&&(r=e),r===im&&(r=void 0),this.autoFreeze_&&Lm(r,!0),n){let t=[],i=[];Gm(Hm).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}om(1,e)},this.produceWithPatches=(e,t)=>{if(Am(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]},jm(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),jm(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),jm(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){gm(e)||om(8),hm(e)&&(e=wh(e));let t=eh(this),n=Ch(t,e,void 0);return n[$].isManual_=!0,$m(t),n}finishDraft(e,t){let n=e&&e[$];(!n||!n.isManual_)&&om(9);let{scope_:r}=n;return Zm(r,t),nh(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=Gm(Hm).applyPatches_;return hm(e)?r(e,t):this.produce(e,e=>r(e,t))}};function Ch(e,t,n,r){let[i,a]=Dm(t)?Gm(Vm).proxyMap_(t,n):Om(t)?Gm(Vm).proxySet_(t,n):ph(t,n);return(n?.scope_??Ym()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?lh(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 wh(e){return hm(e)||om(10,e),Th(e)}function Th(e){if(!gm(e)||Bm(e))return e;let t=e[$],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Im(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Im(e,!0);return bm(n,(e,t)=>{wm(n,e,Th(t))},r),t&&(t.finalized_=!1),n}function Eh(){function e(n,r=[]){if(n.key_!==void 0){let e=n.parent_.copy_??n.parent_.base_,t=Nm(Cm(e,n.key_)),i=Cm(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||Sm(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=Cm(n,r),!km(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?.[$];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;bm(e.assigned_,(e,l)=>{let u=Cm(o,e,c),f=Cm(s,e,c),p=l?Sm(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===im?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=xm(o),n=i[e];typeof n!=`string`&&typeof n!=`number`&&(n=``+n),(t===0||t===1)&&(n===`__proto__`||n===lm)&&om(19),Am(o)&&n===um&&om(19),o=Cm(o,n),(o===null||!km(o))&&om(18,i.join(`/`))}let s=xm(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:om(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:om(17,a)}}),e}function u(e){if(!gm(e))return e;if(Em(e))return e.map(u);if(Dm(e))return new Map(Array.from(e.entries()).map(([e,t])=>[e,u(t)]));if(Om(e))return new Set(Array.from(e).map(u));let t=Object.create(cm(e));for(let n in e)t[n]=u(e[n]);return Sm(e,am)&&(t[am]=e[am]),t}function d(e){return hm(e)?u(e):e}qm(Hm,{applyPatches_:l,generatePatches_:i,generateReplacementPatches_:c,getPath:e})}globalThis.Iterator?.from;var Dh=new Sh,Oh=Dh.produce,kh=Dh.produceWithPatches.bind(Dh),Ah=Dh.applyPatches.bind(Dh),jh=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`;function Mh(e=21){let t=``,n=e;for(;n--;)t+=jh[Math.random()*64|0];return t}var Nh=1e3;function Ph(e,t){if(e.add(t),e.size>Nh){let t=e.values().next().value;t!==void 0&&e.delete(t)}}function Fh(e){let{enablePatches:t=!1}=e;t&&Eh();let n=Tp(),r=e.initialValue,i=new Set;return{on:n.on,value:()=>r,patch:(e,t=Mh())=>{i.has(t)||(Eh(),r=Ah(r,e),Ph(i,t),n.emit(`updated`,r,void 0,t))},mutate:(e,a=Mh())=>{if(!i.has(a)){if(Ph(i,a),t){let[t,i]=kh(r,e);r=t,n.emit(`updated`,r,i,a)}else r=Oh(r,e),n.emit(`updated`,r,void 0,a)}},syncIds:i}}function Ih(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:Q.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:Q.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=Fh({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(Q.client.isTrustedUpdated,e=>{e&&!n&&(n=!0,d())})}})}}}var Lh=typeof self==`object`?self:globalThis,Rh=new Set([`Error`,`EvalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`,`AggregateError`]),zh=new Set([`Boolean`,`Number`,`String`,`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float16Array`,`Float32Array`,`Float64Array`,`BigInt64Array`,`BigUint64Array`]);function Bh(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=Rh.has(e)?Lh[e]:void 0;return n(new(r??Lh.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`&&zh.has(a))return n(new Lh[a](o),i);throw TypeError(`unable to deserialize unsafe or unknown type: ${String(a)}`)};return r}function Vh(e){return Bh(new Map,e)(0)}var Hh=``,{toString:Uh}={},{keys:Wh}=Object;function Gh(e){let t=typeof e;if(t!==`object`||!e)return[0,t];let n=Uh.call(e).slice(8,-1);switch(n){case`Array`:return[1,Hh];case`Object`:return[2,Hh];case`Date`:return[3,Hh];case`RegExp`:return[4,Hh];case`Map`:return[5,Hh];case`Set`:return[6,Hh];case`DataView`:return[1,n]}return n.includes(`Array`)?[1,n]:n.includes(`Error`)?[7,n]:[2,n]}function Kh([e,t]){return e===0&&(t===`function`||t===`symbol`)}function qh(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]=Gh(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 Wh(r))(e||!Kh(Gh(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||!(Kh(Gh(n))||Kh(Gh(i))))&&t.push([a(n),a(i)]);return n}case 6:{let t=[],n=i([o,t],r);for(let n of r)(e||!Kh(Gh(n)))&&t.push(a(n));return n}}let{message:c}=r;return i([o,{name:s,message:c}],r)};return a}function Jh(e,t={}){let n=[];return qh(!(t.json||t.lossy),!!t.json,new Map,n)(e),n}var{parse:Yh,stringify:Xh}=JSON,Zh={json:!0,lossy:!0};function Qh(e){return Vh(Yh(e))}function $h(e){return Xh(Jh(e,Zh))}function eg(e){return Vh(e)}function tg(e){return $h(e)}function ng(e){return Qh(e)}var rg=new Map;function ig(e=rg){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?Sp(n,r??``):`s:${tg(n)}`},deserialize:e=>{let n=e.startsWith(`s:`)?ng(e.slice(2)):JSON.parse(e);return n.t===`q`&&n.i&&n.m&&t.set(n.i,n.m),n}}}function ag(){}function og(e){let{onConnected:t=ag,onError:n=ag,onDisconnected:r=ag,definitions:i,fetch:a=globalThis.fetch.bind(globalThis)}=e,o=e.url;e.authToken&&(o=`${o}${o.includes(`?`)?`&`:`?`}${$f}=${encodeURIComponent(e.authToken)}`);let s=ig(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=r.search(/\n\n|\r\n\r\n/);if(e<0)break;let t=r.slice(0,e);r=r.slice(e+(r[e]===`\r`?4:2));let n=`message`,i=[];for(let e of t.split(/\r?\n/))e.startsWith(`:`)||(e.startsWith(`event:`)?n=e.slice(6).trimStart():e.startsWith(`data:`)&&i.push(e.slice(5).replace(/^ /,``)));i.length>0&&_(n,i.join(`
9
- `))}}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`,[Yf]: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 sg(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var cg=Math.random.bind(Math),lg=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`;function ug(e=21){let t=``,n=e;for(;n--;)t+=lg[cg()*64|0];return t}var dg=6e4,fg=e=>e,pg=fg,{clearTimeout:mg,setTimeout:hg}=globalThis;function gg(e,t){let{post:n,on:r,off:i=()=>{},eventNames:a=[],serialize:o=fg,deserialize:s=pg,resolver:c,bind:l=`rpc`,timeout:u=dg,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}=sg(),_=ug();s.i=_;let v;async function y(n=s){return u>=0&&(v=hg(()=>{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{mg(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&&(mg(r.timeoutId),n?r.reject(n):r.resolve(t)),p.delete(e)}}return m=r(b),h}function _g(e,t){let{channel:n,rpcOptions:r={}}=t;return gg(e,{...n,timeout:-1,...r,proxify:!1})}function vg(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function yg(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=vg();function f(e,t=null){if(t?u=t:e===`connected`&&(u=null),e===l)return;let n=l;l=e,i.emit(Q.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 Qp(`connection`,`[devframe] Not connected to the devframe server`,{cause:u??void 0}):l===`unauthorized`?new Qp(`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(Q.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 Qp(`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(Q.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(Q.client.connectionError,e),m(new Qp(`connection`,`[devframe] Connection to the devframe server failed`,{cause:e}))},onDisconnected(){l!==`error`&&f(`disconnected`),m(new Qp(`connection`,`[devframe] Disconnected from the devframe server`,{cause:u??void 0}))}}),y=_g(a.functions,{channel:v,rpcOptions:o});a.register({name:Q.broadcast.authRevoked,type:`event`,handler:()=>{c=!1;let e=new Qp(`auth`,`[devframe] The devframe server revoked this client's trust`);f(`unauthorized`,e),i.emit(Q.client.connectionError,e),m(e),i.emit(Q.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 Qp(`auth`,`[devframe] The devframe server refused this client's credentials`);f(`unauthorized`,e),i.emit(Q.client.connectionError,e)}return i.emit(Q.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(Q.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(Q.client.error,n,t),Promise.reject(n)):g(y.$call(...e),t)},callEvent:(...e)=>{let t=h();if(t){i.emit(Q.client.error,t,String(e[0]));return}return y.$callEvent(...e)},callOptional:(...e)=>{let t=String(e[0]),n=h();return n?(i.emit(Q.client.error,n,t),Promise.reject(n)):g(y.$callOptional(...e),t)},close:()=>{v.close()}}}function bg(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 xg(e){let{authToken:t,connectionMeta:n,metaBaseUrl:r,events:i,clientRpc:a,rpcOptions:o={},sseOptions:s={},callTimeout:c=0}=e,l=bg(n.sse,r??`./`,location);return yg({transport:`sse`,authToken:t,connectionMeta:n,events:i,clientRpc:a,rpcOptions:o,callTimeout:c,createChannel:e=>og({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 Sg(e){let t=e.cause instanceof Error?e.cause:Cg(e.cause)?Sg(e.cause):e.cause,n=t===void 0?Error(e.message):Error(e.message,{cause:t});n.name=e.name;for(let t of Object.keys(e))t!==`name`&&t!==`message`&&t!==`cause`&&(n[t]=e[t]);return n}function Cg(e){return typeof e==`object`&&!!e&&typeof e.message==`string`&&typeof e.name==`string`}function wg(e){return typeof e==`object`&&!!e&&e.type===`static`&&typeof e.path==`string`}function Tg(e){return typeof e==`object`&&!!e&&e.type===`query`&&typeof e.records==`object`&&e.records!==null}function Eg(e){return typeof e==`object`&&!!e&&(`output`in e||`error`in e)}function Dg(e){if(e.error)throw Sg(e.error);return e.output}function Og(e){return e.some(e=>e!=null)}function kg(e){return typeof e==`object`&&e&&`serialization`in e&&`data`in e?e.data:e}function Ag(e,t){let n=new Map,r=new Map;function i(e,t){return t===`structured-clone`&&Array.isArray(e)?eg(e):e}function a(e,t){return i(kg(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 Eg(r)?Dg(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(wg(r)){if(Og(n))throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`);return await o(r)}if(Tg(r)){let e=ep(n),i=r.records[e];if(i)return Dg(await s(i,r.serialization));if(r.fallback)return Dg(await s(r.fallback,r.serialization));throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`)}if(!Og(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 jg(e){let t=Ag(await e.fetchJsonFromBases(Xf),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 Mg=256,Ng=class extends Error{name=`StreamClosedError`};function Pg(e={}){let t=e.id??Mh(),n=Math.max(0,e.replayWindow??0),r=Tp(),i=new AbortController,a=[],o=!1,s=0;function c(e){if(o)throw new Ng(`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=Ig(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 Fg(e={}){let t=e.id??Mh(),n=Math.max(1,e.highWaterMark??Mg),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 Ig(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 Lg=``;function Rg(e,t){return`${e}${Lg}${t}`}function zg(e){let t=new Map,n=new Map;e.client.register({name:Q.broadcast.streamingChunk,type:`event`,handler(e,n,r,i){t.get(Rg(e,n))?._push(r,i)}}),e.client.register({name:Q.broadcast.streamingEnd,type:`event`,handler(e,n,r){let i=Rg(e,n),a=t.get(i);a&&(a._end(r),t.delete(i))}}),e.client.register({name:Q.broadcast.streamingUploadCancel,type:`event`,handler(e,t){let r=Rg(e,t),i=n.get(r);i&&(i.abort(`server cancelled upload`),n.delete(r))}}),e.events.on(Q.client.isTrustedUpdated,n=>{if(n)for(let[n,r]of t){if(r.cancelled||r.done)continue;let t=n.indexOf(Lg);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=Rg(n,r),o=t.get(a);if(o)return o;let s=Fg({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(Q.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=Rg(t,r),a=n.get(i);if(a)return a;let o=Pg({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 Bg(){}var Vg=new Map;function Hg(e){let t=e.url;e.authToken&&(t=`${t}?${$f}=${encodeURIComponent(e.authToken)}`);let n=new WebSocket(t),{onConnected:r=Bg,onError:i=Bg,onDisconnected:a=Bg,definitions:o=Vg}=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=ig(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 Ug(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 zp(a,/^https/i.test(a)?`wss://`:`ws://`);let o=new URL(a,r);return o.protocol=i,o.href}function Wg(e){let{authToken:t,connectionMeta:n,metaBaseUrl:r,events:i,clientRpc:a,rpcOptions:o={},wsOptions:s={},callTimeout:c=0}=e,l=Ug(n.websocket,r??`./`,location);return yg({transport:`websocket`,authToken:t,connectionMeta:n,events:i,clientRpc:a,rpcOptions:o,callTimeout:c,createChannel:e=>Hg({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 Gg(e){return e.includes(`:`)}function Kg(e,t){return Gg(t)?t:`${e}:${t}`}function qg(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 Jg(e,t){return{global:qg(e,t,`global`),project:qg(e,t,`project`)}}function Yg(e,t){return{namespace:t,base:e,rpc:{namespace:t,register(n){if(Gg(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(Kg(t,n),...r)),callEvent:((n,...r)=>e.callEvent(Kg(t,n),...r)),callOptional:((n,...r)=>e.callOptional(Kg(t,n),...r)),sharedState:((n,r)=>e.sharedState.get(Kg(t,n),r)),streaming:{subscribe:(n,r,i)=>e.streaming.subscribe(Kg(t,n),r,i),upload:(n,r)=>e.streaming.upload(Kg(t,n),r)}},settings:Jg(e,t),scope:e.scope}}function Xg(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") — nothing to connect to. Enable the WebSocket or SSE endpoint on the server, or use its static/MCP surfaces instead.`)}async function Zg(e={}){let{baseURL:t=`./`,rpcOptions:n={},cacheOptions:r=!1}=e,i=Tp(),a=Array.isArray(t)?t:[t],o=await Zp(e),{connectionMeta:s,metaBaseUrl:c,authToken:l}=o,u=a[0]??`./`;try{u=new URL(`.`,c).href}catch{}let d=new tp({functions:[],...typeof e.cacheOptions==`object`?e.cacheOptions:{}}),f={rpc:void 0},p=new bp(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(Fp(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=Xg(e.transport??`auto`,s),_=g===`static`?await jg({fetchJsonFromBases:m}):g===`sse`?xg({...h,sseOptions:e.sseOptions}):Wg({...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=>(qp(e),o={...o,authToken:e},_.requestTrustWithToken(e)),requestTrustWithCode:async e=>{let t=await _.requestTrustWithCode(e);if(!t)return!1;qp(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=Ih(S),S.streaming=zg(S),S.services=rm(S);let C=new Map;S.scope=(e=>{if(!e)return S;let t=C.get(e);return t||(t=Yg(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 nm(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 Qg=Zg;function $g(e){return Qg(e)}function e_(){let e=on(null),t=on(new URLSearchParams(location.search).get(`url`)??``),n=on(null),r=on(!1),i=on(null),a=Z(()=>e.value?.connectionMeta.backend===`static`);async function o(o=t.value){if(!(a.value&&n.value)){t.value=o.trim(),r.value=!0,i.value=null;try{e.value??=await $g(),await e.value.ensureTrusted();let r=await e.value.call(`devframes:plugin:og:resolve-metadata`,{url:t.value});n.value=r,(!t.value||a.value)&&r.requestedUrl&&(t.value=r.requestedUrl);let i=new URL(location.href);t.value?i.searchParams.set(`url`,t.value):i.searchParams.delete(`url`),history.replaceState(null,``,i)}catch(e){i.value=e instanceof Error?e.message:String(e)}finally{r.value=!1}}}return{error:Yt(i),inspect:o,isStatic:a,loading:Yt(r),snapshot:Yt(n),target:t}}var t_={class:`h-100dvh flex flex-col bg-base color-base font-sans`},n_={key:0,class:`flex items-start gap-2 border-b border-base bg-red/8 px4 py2 color-red text-xs`},r_={class:`min-h-0 flex-1 overflow-auto`},i_={key:0,class:`h-full flex flex-col items-center justify-center gap-3 color-muted`},a_={key:1,class:`h-full flex flex-col items-center justify-center gap-3 px6 text-center color-muted`},o_={key:2,class:`grid min-h-full gap4 p4 xl:grid-cols-[minmax(0,1fr)_minmax(28rem,0.85fr)]`},s_={class:`min-w-0 flex flex-col gap4`},c_={class:`flex flex-wrap items-center gap-2 color-muted text-xs`},l_=[`href`,`title`],u_={class:`ml-auto font-mono tabular-nums`},d_={class:`min-w-0 xl:sticky xl:top4 xl:h-[calc(100dvh-6.5rem)]`},f_=V({__name:`app`,setup(e){let t=e_();return Ki(()=>t.inspect()),(e,n)=>(G(),K(`div`,t_,[Y(Kf,{target:R(t).target.value,"onUpdate:target":n[0]||=e=>R(t).target.value=e,loading:R(t).loading.value,"is-static":R(t).isStatic.value,onInspect:n[1]||=e=>R(t).inspect()},null,8,[`target`,`loading`,`is-static`]),R(t).error.value?(G(),K(`div`,n_,[n[2]||=J(`span`,{class:`i-ph-warning-octagon-duotone mt0.5 shrink-0`},null,-1),J(`span`,null,M(R(t).error.value),1)])):bs(``,!0),J(`main`,r_,[R(t).loading.value&&!R(t).snapshot.value?(G(),K(`div`,i_,[...n[3]||=[J(`span`,{class:`i-ph-circle-notch-duotone animate-spin text-3xl color-active`},null,-1),J(`span`,{class:`text-sm`},`Reading page metadata...`,-1)]])):R(t).snapshot.value?.url?(G(),K(`div`,o_,[J(`div`,s_,[J(`div`,c_,[n[5]||=J(`span`,{class:`i-ph-check-circle-duotone color-active`},null,-1),J(`a`,{href:R(t).snapshot.value.url,target:`_blank`,rel:`noreferrer`,class:`min-w-0 truncate font-mono hover:color-active`,title:R(t).snapshot.value.url},M(R(t).snapshot.value.url),9,l_),J(`span`,u_,`HTTP `+M(R(t).snapshot.value.status),1)]),Y(ju,{tags:R(t).snapshot.value.tags},null,8,[`tags`]),Y(ef,{tags:R(t).snapshot.value.tags},null,8,[`tags`])]),J(`div`,d_,[Y(Rf,{snapshot:R(t).snapshot.value},null,8,[`snapshot`])])])):(G(),K(`div`,a_,[...n[4]||=[J(`span`,{class:`i-ph-image-square-duotone text-4xl color-active op70`},null,-1),J(`div`,null,[J(`h1`,{class:`m0 color-base text-base font-semibold`},` Inspect a social card `),J(`p`,{class:`mb0 mt1 max-w-100 text-sm`},` Enter a page URL to resolve its Open Graph and Twitter metadata. `)],-1)]]))])]))}}),p_=window.matchMedia(`(prefers-color-scheme: dark)`);function m_(e){document.documentElement.classList.toggle(`dark`,e),document.documentElement.classList.toggle(`light`,!e)}m_(p_.matches),p_.addEventListener(`change`,e=>m_(e.matches)),uu(f_).mount(`#app`);
8
+ `)}}var up=lp(rp);function dp(e,{method:t=`warn`}={}){console[t](up(e))}function fp(e){return cp({...e,reporters:[dp,...e.reporters??[]]})}var pp=fp({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 mp(e,t){let n=e[`~standard`].validate(t);return n instanceof Promise?await n:n}function hp(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 gp(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 mp(i,n[r]);if(a.issues)throw pp.DF0043({name:e,index:r,issues:hp(a.issues)})}return r}async function _p(e,t,n){if(!t)return n;let r=await mp(t,n);if(r.issues)throw pp.DF0044({name:e,issues:hp(r.issues)});return n}async function vp(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 yp(e,t){let n=e.handler;if(!n){let r=await vp(e,t);if(!r.handler)throw pp.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 gp(e.name,r,t),o=await a(...n);return await _p(e.name,i,o)}}var bp=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 yp(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 pp.DF0021({name:e.name});xp(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 pp.DF0022({name:e.name});xp(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 yp(this.definitions.get(e),this.context)}getSchema(e){let t=this.definitions.get(e);if(!t)throw pp.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 xp(e){if(e.agent&&e.jsonSerializable!==!0)throw pp.DF0019({name:e.name})}function Sp(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 wp(t,`undefined`,r,e);return n}return i!==null&&Cp(i,r,e,t),n})}function Cp(e,t,n,r){if(typeof e==`bigint`)throw wp(r,`BigInt`,t,n);if(typeof e!=`object`)return;if(e instanceof Map)throw wp(r,`Map`,t,n);if(e instanceof Set)throw wp(r,`Set`,t,n);if(e instanceof Date)throw wp(r,`Date`,t,n);if(Array.isArray(e))return;let i=Object.getPrototypeOf(e);if(i!==null&&i!==Object.prototype)throw wp(r,e.constructor?.name??`class instance`,t,n)}function wp(e,t,n,r){let i=Tp(n,r);return pp.DF0020({name:e||`<anonymous>`,type:t,path:i})}function Tp(e,t){return Array.isArray(e)?`[${t}]`:t===``?`<root>`:t}function Ep(){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 Dp=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,Op=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,kp=/^([/\\]\s*){2,}[^/\\]/,Ap=/\/$|\/\?|\/#/,jp=/^\.?\//;function Mp(e,t={}){return typeof t==`boolean`&&(t={acceptRelative:t}),t.strict?Dp.test(e):Op.test(e)||(t.acceptRelative?kp.test(e):!1)}function Np(e=``,t){return t?Ap.test(e):e.endsWith(`/`)}function Pp(e=``,t){if(!t)return(Np(e)?e.slice(0,-1):e)||`/`;if(!Np(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 Fp(e=``,t){if(!t)return e.endsWith(`/`)?e:e+`/`;if(Np(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 Ip(e,t){if(Lp(t)||Mp(e))return e;let n=Pp(t);if(e.startsWith(n)){let t=e[n.length];if(!t||t===`/`||t===`?`)return e}return zp(n,e)}function Lp(e){return!e||e===`/`}function Rp(e){return e&&e!==`/`}function zp(e,...t){let n=e||``;for(let e of t.filter(e=>Rp(e)))if(n){let t=e.replace(jp,``);n=Fp(n)+t}else n=e;return n}function Bp(e,t){let n=e.match(Op);return n||=e.match(/^\/{2,}/),n?t+e.slice(n[0].length):t+e}var Vp=`__DEVFRAME_CONNECTION_META__`,Hp=`__DEVFRAME_CONNECTION_AUTH_TOKEN__`;function Up(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 Wp(){return Up(Jf)}function Gp(){return Up(Vp)}function Kp(e){if(e)return e;try{let e=localStorage.getItem(Hp);if(e)return e}catch{}return Up(Hp)}function qp(e){globalThis[Jf]=e,globalThis[Vp]={...e.connectionMeta,baseUrl:e.metaBaseUrl},e.authToken&&Jp(e.authToken)}function Jp(e){try{localStorage.setItem(Hp,e)}catch{}globalThis[Hp]=e;let t=Wp();t&&(globalThis[Jf]={...t,authToken:e})}function Yp(e){let t=Ip(qf,e);try{return new URL(t,globalThis.location?.href).href}catch{return t}}function Xp(e,t){return t&&t!==e.authToken?{...e,authToken:t}:e}function Zp(){let e=Wp();if(e)return Xp(e,Kp()??e.authToken??e.connectionMeta.authToken);let t=Gp();if(t)return{connectionMeta:t,metaBaseUrl:t.baseUrl??Yp(`./`),authToken:Kp(t.authToken)}}async function Qp(e={}){if(e.connection){let t=Xp(e.connection,Kp(e.authToken??e.connection.authToken??e.connection.connectionMeta.authToken));return qp(t),t}let t=Array.isArray(e.baseURL)?e.baseURL:[e.baseURL??`./`];if(e.connectionMeta){let n={connectionMeta:e.connectionMeta,metaBaseUrl:Yp(t[0]??`./`),authToken:Kp(e.authToken??e.connectionMeta.authToken)};return qp(n),n}let n=Zp();if(n){let t=Xp(n,Kp(e.authToken??n.authToken??n.connectionMeta.authToken));return qp(t),t}let r=[];for(let n of t){let t=Ip(qf,n),i=Yp(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:Kp(e.authToken??r.authToken)};return qp(a),a}catch(e){r.push(e)}}throw Error(`Failed to get connection meta from ${t.join(`, `)}`,{cause:r})}var $p=class extends Error{name=`DevframeConnectionError`;kind;constructor(e,t,n){super(t,n),this.kind=e}};function em(e=Qf){try{let t=globalThis.location?.hash?.replace(/^#/,``)??``;return new URLSearchParams(t).get(e)||void 0}catch{return}}function tm(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 nm(e=Qf){let t=em(e);return t&&tm(e),t}async function rm(e,t={}){let n=nm(t.param??`devframe_otp`);return n?e.isTrusted?!0:e.requestTrustWithCode(n):!1}function im(e){let t={},n=new WeakMap,r,i=()=>(r??=e.sharedState.get(Zf,{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 am=Symbol.for(`immer-nothing`),om=Symbol.for(`immer-draftable`),$=Symbol.for(`immer-state`);function sm(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var cm=Object,lm=cm.getPrototypeOf,um=`constructor`,dm=`prototype`,fm=`configurable`,pm=`enumerable`,mm=`writable`,hm=`value`,gm=e=>!!e&&!!e[$];function _m(e){return e?bm(e)||Dm(e)||!!e[om]||!!e[um]?.[om]||Om(e)||km(e):!1}var vm=cm[dm][um].toString(),ym=new WeakMap;function bm(e){if(!e||!Am(e))return!1;let t=lm(e);if(t===null||t===cm[dm])return!0;let n=cm.hasOwnProperty.call(t,um)&&t[um];if(n===Object)return!0;if(!jm(n))return!1;let r=ym.get(n);return r===void 0&&(r=Function.toString.call(n),ym.set(n,r)),r===vm}function xm(e,t,n=!0){Sm(e)===0?(n?Reflect.ownKeys(e):cm.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function Sm(e){let t=e[$];return t?t.type_:Dm(e)?1:Om(e)?2:km(e)?3:0}var Cm=(e,t,n=Sm(e))=>n===2?e.has(t):cm[dm].hasOwnProperty.call(e,t),wm=(e,t,n=Sm(e))=>n===2?e.get(t):e[t],Tm=(e,t,n,r=Sm(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function Em(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var Dm=Array.isArray,Om=e=>e instanceof Map,km=e=>e instanceof Set,Am=e=>typeof e==`object`,jm=e=>typeof e==`function`,Mm=e=>typeof e==`boolean`;function Nm(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var Pm=e=>Am(e)?e?.[$]:null,Fm=e=>e.copy_||e.base_,Im=e=>e.modified_?e.copy_:e.base_;function Lm(e,t){if(Om(e))return new Map(e);if(km(e))return new Set(e);if(Dm(e))return Array[dm].slice.call(e);let n=bm(e);if(t===!0||t===`class_only`&&!n){let t=cm.getOwnPropertyDescriptors(e);delete t[$];let n=Reflect.ownKeys(t);for(let r=0;r<n.length;r++){let i=n[r],a=t[i];a[mm]===!1&&(a[mm]=!0,a[fm]=!0),(a.get||a.set)&&(t[i]={[fm]:!0,[mm]:!0,[pm]:a[pm],[hm]:e[i]})}return cm.create(lm(e),t)}{let t=lm(e);if(t!==null&&n)return{...e};let r=cm.create(t);return cm.assign(r,e)}}function Rm(e,t=!1){return Vm(e)||gm(e)||!_m(e)?e:(Sm(e)>1&&cm.defineProperties(e,{set:Bm,add:Bm,clear:Bm,delete:Bm}),cm.freeze(e),t&&xm(e,(e,t)=>{Rm(t,!0)},!1),e)}function zm(){sm(2)}var Bm={[hm]:zm};function Vm(e){return e===null||!Am(e)||cm.isFrozen(e)}var Hm=`MapSet`,Um=`Patches`,Wm=`ArrayMethods`,Gm={};function Km(e){let t=Gm[e];return t||sm(0,e),t}var qm=e=>!!Gm[e];function Jm(e,t){Gm[e]||(Gm[e]=t)}var Ym,Xm=()=>Ym,Zm=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:qm(Hm)?Km(Hm):void 0,arrayMethodsPlugin_:qm(Wm)?Km(Wm):void 0});function Qm(e,t){t&&(e.patchPlugin_=Km(Um),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function $m(e){eh(e),e.drafts_.forEach(nh),e.drafts_=null}function eh(e){e===Ym&&(Ym=e.parent_)}var th=e=>Ym=Zm(Ym,e);function nh(e){let t=e[$];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function rh(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[$].modified_&&($m(t),sm(4)),_m(e)&&(e=ih(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[$].base_,e,t)}else e=ih(t,n);return ah(t,e,!0),$m(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===am?void 0:e}function ih(e,t){if(Vm(t))return t;let n=t[$];if(!n)return ph(t,e.handledSet_,e);if(!sh(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);dh(n,e)}return n.copy_}function ah(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Rm(t,n)}function oh(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var sh=(e,t)=>e.scope_===t,ch=[];function lh(e,t,n,r){let i=Fm(e),a=e.type_;if(r!==void 0&&wm(i,r,a)===t){Tm(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;xm(i,(e,n)=>{if(gm(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??ch;for(let e of o)Tm(i,e,n,a)}function uh(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!sh(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=Im(i);lh(e,i.draft_??i,a,n),dh(i,r)})}function dh(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)}oh(e)}}function fh(e,t,n){let{scope_:r}=e;if(gm(n)){let i=n[$];sh(i,r)&&i.callbacks_.push(function(){Sh(e),lh(e,n,Im(i),t)})}else _m(n)&&e.callbacks_.push(function(){let i=Fm(e);e.type_===3?i.has(n)&&ph(n,r.handledSet_,r):wm(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ph(wm(e.copy_,t,e.type_),r.handledSet_,r)})}function ph(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||gm(e)||t.has(e)||!_m(e)||Vm(e)?e:(t.add(e),xm(e,(r,i)=>{if(gm(i)){let t=i[$];sh(t,n)&&(Tm(e,r,Im(t),e.type_),oh(t))}else _m(i)&&ph(i,t,n)}),e)}function mh(e,t){let n=Dm(e),r={type_:+!!n,scope_:t?t.scope_:Xm(),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=hh;n&&(i=[r],a=gh);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var hh={get(e,t){if(t===$)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=Fm(e);if(!Cm(i,t,e.type_))return yh(e,i,t);let a=i[t];if(e.finalized_||!_m(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&Nm(t))return a;if(a===_h(e.base_,t)||vh(e,t,a)){Sh(e);let n=e.type_===1?+t:t,r=wh(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in Fm(e)},ownKeys(e){return Reflect.ownKeys(Fm(e))},set(e,t,n){let r=bh(Fm(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=_h(Fm(e),t),i=r?.[$];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(Em(n,r)&&(n!==void 0||Cm(e.base_,t,e.type_)))return!0;Sh(e),xh(e)}return e.copy_[t]===n&&(n!==void 0||Cm(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),fh(e,t,n),!0)},deleteProperty(e,t){return Sh(e),_h(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),xh(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=Fm(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[mm]:!0,[fm]:e.type_!==1||t!==`length`,[pm]:r[pm],[hm]:n[t]}},defineProperty(){sm(11)},getPrototypeOf(e){return lm(e.base_)},setPrototypeOf(){sm(12)}},gh={};for(let e in hh){let t=hh[e];gh[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}gh.deleteProperty=function(e,t){return gh.set.call(this,e,t,void 0)},gh.set=function(e,t,n){return hh.set.call(this,e[0],t,n,e[0])};function _h(e,t){let n=e[$];return(n?Fm(n):e)[t]}function vh(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||e.assigned_?.get(t)||!_m(n)||n[$]?!1:e.baseRefs_.has(n)}function yh(e,t,n){let r=bh(t,n);return r?hm in r?r[hm]:r.get?.call(e.draft_):void 0}function bh(e,t){if(!(t in e))return;let n=lm(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=lm(n)}}function xh(e){e.modified_||(e.modified_=!0,e.parent_&&xh(e.parent_))}function Sh(e){e.copy_||=(e.assigned_=new Map,Lm(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var Ch=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(jm(e)&&!jm(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}jm(t)||sm(6),n!==void 0&&!jm(n)&&sm(7);let r;if(_m(e)){let i=th(this),a=wh(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?$m(i):eh(i)}return Qm(i,n),rh(r,i)}if(!e||!Am(e)){if(r=t(e),r===void 0&&(r=e),r===am&&(r=void 0),this.autoFreeze_&&Rm(r,!0),n){let t=[],i=[];Km(Um).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}sm(1,e)},this.produceWithPatches=(e,t)=>{if(jm(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]},Mm(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),Mm(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),Mm(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){_m(e)||sm(8),gm(e)&&(e=Th(e));let t=th(this),n=wh(t,e,void 0);return n[$].isManual_=!0,eh(t),n}finishDraft(e,t){let n=e&&e[$];(!n||!n.isManual_)&&sm(9);let{scope_:r}=n;return Qm(r,t),rh(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=Km(Um).applyPatches_;return gm(e)?r(e,t):this.produce(e,e=>r(e,t))}};function wh(e,t,n,r){let[i,a]=Om(t)?Km(Hm).proxyMap_(t,n):km(t)?Km(Hm).proxySet_(t,n):mh(t,n);return(n?.scope_??Xm()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?uh(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 Th(e){return gm(e)||sm(10,e),Eh(e)}function Eh(e){if(!_m(e)||Vm(e))return e;let t=e[$],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Lm(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Lm(e,!0);return xm(n,(e,t)=>{Tm(n,e,Eh(t))},r),t&&(t.finalized_=!1),n}function Dh(){function e(n,r=[]){if(n.key_!==void 0){let e=n.parent_.copy_??n.parent_.base_,t=Pm(wm(e,n.key_)),i=wm(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||Cm(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=wm(n,r),!Am(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?.[$];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;xm(e.assigned_,(e,l)=>{let u=wm(o,e,c),f=wm(s,e,c),p=l?Cm(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===am?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=Sm(o),n=i[e];typeof n!=`string`&&typeof n!=`number`&&(n=``+n),(t===0||t===1)&&(n===`__proto__`||n===um)&&sm(19),jm(o)&&n===dm&&sm(19),o=wm(o,n),(o===null||!Am(o))&&sm(18,i.join(`/`))}let s=Sm(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:sm(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:sm(17,a)}}),e}function u(e){if(!_m(e))return e;if(Dm(e))return e.map(u);if(Om(e))return new Map(Array.from(e.entries()).map(([e,t])=>[e,u(t)]));if(km(e))return new Set(Array.from(e).map(u));let t=Object.create(lm(e));for(let n in e)t[n]=u(e[n]);return Cm(e,om)&&(t[om]=e[om]),t}function d(e){return gm(e)?u(e):e}Jm(Um,{applyPatches_:l,generatePatches_:i,generateReplacementPatches_:c,getPath:e})}globalThis.Iterator?.from;var Oh=new Ch,kh=Oh.produce,Ah=Oh.produceWithPatches.bind(Oh),jh=Oh.applyPatches.bind(Oh),Mh=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`;function Nh(e=21){let t=``,n=e;for(;n--;)t+=Mh[Math.random()*64|0];return t}var Ph=1e3;function Fh(e,t){if(e.add(t),e.size>Ph){let t=e.values().next().value;t!==void 0&&e.delete(t)}}function Ih(e){let{enablePatches:t=!1}=e;t&&Dh();let n=Ep(),r=e.initialValue,i=new Set;return{on:n.on,value:()=>r,patch:(e,t=Nh())=>{i.has(t)||(Dh(),r=jh(r,e),Fh(i,t),n.emit(`updated`,r,void 0,t))},mutate:(e,a=Nh())=>{if(!i.has(a)){if(Fh(i,a),t){let[t,i]=Ah(r,e);r=t,n.emit(`updated`,r,i,a)}else r=kh(r,e),n.emit(`updated`,r,void 0,a)}},syncIds:i}}function Lh(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:Q.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:Q.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=Ih({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(Q.client.isTrustedUpdated,e=>{e&&!n&&(n=!0,d())})}})}}}var Rh=typeof self==`object`?self:globalThis,zh=new Set([`Error`,`EvalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`,`AggregateError`]),Bh=new Set([`Boolean`,`Number`,`String`,`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float16Array`,`Float32Array`,`Float64Array`,`BigInt64Array`,`BigUint64Array`]);function Vh(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=zh.has(e)?Rh[e]:void 0;return n(new(r??Rh.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`&&Bh.has(a))return n(new Rh[a](o),i);throw TypeError(`unable to deserialize unsafe or unknown type: ${String(a)}`)};return r}function Hh(e){return Vh(new Map,e)(0)}var Uh=``,{toString:Wh}={},{keys:Gh}=Object;function Kh(e){let t=typeof e;if(t!==`object`||!e)return[0,t];let n=Wh.call(e).slice(8,-1);switch(n){case`Array`:return[1,Uh];case`Object`:return[2,Uh];case`Date`:return[3,Uh];case`RegExp`:return[4,Uh];case`Map`:return[5,Uh];case`Set`:return[6,Uh];case`DataView`:return[1,n]}return n.includes(`Array`)?[1,n]:n.includes(`Error`)?[7,n]:[2,n]}function qh([e,t]){return e===0&&(t===`function`||t===`symbol`)}function Jh(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]=Kh(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 Gh(r))(e||!qh(Kh(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||!(qh(Kh(n))||qh(Kh(i))))&&t.push([a(n),a(i)]);return n}case 6:{let t=[],n=i([o,t],r);for(let n of r)(e||!qh(Kh(n)))&&t.push(a(n));return n}}let{message:c}=r;return i([o,{name:s,message:c}],r)};return a}function Yh(e,t={}){let n=[];return Jh(!(t.json||t.lossy),!!t.json,new Map,n)(e),n}var{parse:Xh,stringify:Zh}=JSON,Qh={json:!0,lossy:!0};function $h(e){return Hh(Xh(e))}function eg(e){return Zh(Yh(e,Qh))}function tg(e){return Hh(e)}function ng(e){return eg(e)}function rg(e){return $h(e)}var ig=new Map;function ag(e=ig){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?Sp(n,r??``):`s:${ng(n)}`},deserialize:e=>{let n=e.startsWith(`s:`)?rg(e.slice(2)):JSON.parse(e);return n.t===`q`&&n.i&&n.m&&t.set(n.i,n.m),n}}}function og(){}function sg(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 cg(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 lg(e){let{onConnected:t=og,onError:n=og,onDisconnected:r=og,definitions:i,fetch:a=globalThis.fetch.bind(globalThis)}=e,o=e.url;e.authToken&&(o=`${o}${o.includes(`?`)?`&`:`?`}${$f}=${encodeURIComponent(e.authToken)}`);let s=ag(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=sg(r);if(!e)break;r=e.rest;let{event:t,data:n}=cg(e.frame);n.length>0&&_(t,n.join(`
9
+ `))}}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`,[Yf]: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 ug(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var dg=Math.random.bind(Math),fg=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`;function pg(e=21){let t=``,n=e;for(;n--;)t+=fg[dg()*64|0];return t}var mg=6e4,hg=e=>e,gg=hg,{clearTimeout:_g,setTimeout:vg}=globalThis;function yg(e,t){let{post:n,on:r,off:i=()=>{},eventNames:a=[],serialize:o=hg,deserialize:s=gg,resolver:c,bind:l=`rpc`,timeout:u=mg,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}=ug(),_=pg();s.i=_;let v;async function y(n=s){return u>=0&&(v=vg(()=>{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{_g(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&&(_g(r.timeoutId),n?r.reject(n):r.resolve(t)),p.delete(e)}}return m=r(b),h}function bg(e,t){let{channel:n,rpcOptions:r={}}=t;return yg(e,{...n,timeout:-1,...r,proxify:!1})}function xg(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function Sg(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=xg();function f(e,t=null){if(t?u=t:e===`connected`&&(u=null),e===l)return;let n=l;l=e,i.emit(Q.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 $p(`connection`,`[devframe] Not connected to the devframe server`,{cause:u??void 0}):l===`unauthorized`?new $p(`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(Q.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 $p(`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(Q.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(Q.client.connectionError,e),m(new $p(`connection`,`[devframe] Connection to the devframe server failed`,{cause:e}))},onDisconnected(){l!==`error`&&f(`disconnected`),m(new $p(`connection`,`[devframe] Disconnected from the devframe server`,{cause:u??void 0}))}}),y=bg(a.functions,{channel:v,rpcOptions:o});a.register({name:Q.broadcast.authRevoked,type:`event`,handler:()=>{c=!1;let e=new $p(`auth`,`[devframe] The devframe server revoked this client's trust`);f(`unauthorized`,e),i.emit(Q.client.connectionError,e),m(e),i.emit(Q.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 $p(`auth`,`[devframe] The devframe server refused this client's credentials`);f(`unauthorized`,e),i.emit(Q.client.connectionError,e)}return i.emit(Q.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(Q.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(Q.client.error,n,t),Promise.reject(n)):g(y.$call(...e),t)},callEvent:(...e)=>{let t=h();if(t){i.emit(Q.client.error,t,String(e[0]));return}return y.$callEvent(...e)},callOptional:(...e)=>{let t=String(e[0]),n=h();return n?(i.emit(Q.client.error,n,t),Promise.reject(n)):g(y.$callOptional(...e),t)},close:()=>{v.close()}}}function Cg(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 wg(e){let{authToken:t,connectionMeta:n,metaBaseUrl:r,events:i,clientRpc:a,rpcOptions:o={},sseOptions:s={},callTimeout:c=0}=e,l=Cg(n.sse,r??`./`,location);return Sg({transport:`sse`,authToken:t,connectionMeta:n,events:i,clientRpc:a,rpcOptions:o,callTimeout:c,createChannel:e=>lg({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 Tg(e){let{name:t,message:n,cause:r,...i}=e,a=r instanceof Error?r:Eg(r)?Tg(r):r,o=a===void 0?Error(n):Error(n,{cause:a});return o.name=t,Object.assign(o,i),o}function Eg(e){return typeof e==`object`&&!!e&&typeof e.message==`string`&&typeof e.name==`string`}function Dg(e){return typeof e==`object`&&!!e&&e.type===`static`&&typeof e.path==`string`}function Og(e){return typeof e==`object`&&!!e&&e.type===`query`&&typeof e.records==`object`&&e.records!==null}function kg(e){return typeof e==`object`&&!!e&&(`output`in e||`error`in e)}function Ag(e){if(e.error)throw Tg(e.error);return e.output}function jg(e){return e.some(e=>e!=null)}function Mg(e){return typeof e==`object`&&e&&`serialization`in e&&`data`in e?e.data:e}function Ng(e,t){let n=new Map,r=new Map;function i(e,t){return t===`structured-clone`&&Array.isArray(e)?tg(e):e}function a(e,t){return i(Mg(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 kg(r)?Ag(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(Dg(r)){if(jg(n))throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`);return await o(r)}if(Og(r)){let e=ep(n),i=r.records[e];if(i)return Ag(await s(i,r.serialization));if(r.fallback)return Ag(await s(r.fallback,r.serialization));throw Error(`[devframe-rpc] No dump match for "${t}" with args: ${JSON.stringify(n)}`)}if(!jg(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 Pg(e){let t=Ng(await e.fetchJsonFromBases(Xf),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 Fg=256,Ig=class extends Error{name=`StreamClosedError`};function Lg(e={}){let t=e.id??Nh(),n=Math.max(0,e.replayWindow??0),r=Ep(),i=new AbortController,a=[],o=!1,s=0;function c(e){if(o)throw new Ig(`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=zg(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 Rg(e={}){let t=e.id??Nh(),n=Math.max(1,e.highWaterMark??Fg),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 zg(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 Bg=``;function Vg(e,t){return`${e}${Bg}${t}`}function Hg(e){let t=new Map,n=new Map;e.client.register({name:Q.broadcast.streamingChunk,type:`event`,handler(e,n,r,i){t.get(Vg(e,n))?._push(r,i)}}),e.client.register({name:Q.broadcast.streamingEnd,type:`event`,handler(e,n,r){let i=Vg(e,n),a=t.get(i);a&&(a._end(r),t.delete(i))}}),e.client.register({name:Q.broadcast.streamingUploadCancel,type:`event`,handler(e,t){let r=Vg(e,t),i=n.get(r);i&&(i.abort(`server cancelled upload`),n.delete(r))}}),e.events.on(Q.client.isTrustedUpdated,n=>{if(n)for(let[n,r]of t){if(r.cancelled||r.done)continue;let t=n.indexOf(Bg);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=Vg(n,r),o=t.get(a);if(o)return o;let s=Rg({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(Q.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=Vg(t,r),a=n.get(i);if(a)return a;let o=Lg({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 Ug(){}var Wg=new Map;function Gg(e){let t=e.url;e.authToken&&(t=`${t}?${$f}=${encodeURIComponent(e.authToken)}`);let n=new WebSocket(t),{onConnected:r=Ug,onError:i=Ug,onDisconnected:a=Ug,definitions:o=Wg}=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=ag(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 Kg(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 Bp(a,/^https/i.test(a)?`wss://`:`ws://`);let o=new URL(a,r);return o.protocol=i,o.href}function qg(e){let{authToken:t,connectionMeta:n,metaBaseUrl:r,events:i,clientRpc:a,rpcOptions:o={},wsOptions:s={},callTimeout:c=0}=e,l=Kg(n.websocket,r??`./`,location);return Sg({transport:`websocket`,authToken:t,connectionMeta:n,events:i,clientRpc:a,rpcOptions:o,callTimeout:c,createChannel:e=>Gg({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 Jg(e){return e.includes(`:`)}function Yg(e,t){return Jg(t)?t:`${e}:${t}`}function Xg(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 Zg(e,t){return{global:Xg(e,t,`global`),project:Xg(e,t,`project`)}}function Qg(e,t){return{namespace:t,base:e,rpc:{namespace:t,register(n){if(Jg(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(Yg(t,n),...r)),callEvent:((n,...r)=>e.callEvent(Yg(t,n),...r)),callOptional:((n,...r)=>e.callOptional(Yg(t,n),...r)),sharedState:((n,r)=>e.sharedState.get(Yg(t,n),r)),streaming:{subscribe:(n,r,i)=>e.streaming.subscribe(Yg(t,n),r,i),upload:(n,r)=>e.streaming.upload(Yg(t,n),r)}},settings:Zg(e,t),scope:e.scope}}function $g(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 e_(e={}){let{baseURL:t=`./`,rpcOptions:n={},cacheOptions:r=!1}=e,i=Ep(),a=Array.isArray(t)?t:[t],o=await Qp(e),{connectionMeta:s,metaBaseUrl:c,authToken:l}=o,u=a[0]??`./`;try{u=new URL(`.`,c).href}catch{}let d=new tp({functions:[],...typeof e.cacheOptions==`object`?e.cacheOptions:{}}),f={rpc:void 0},p=new bp(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(Ip(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=$g(e.transport??`auto`,s),_=g===`static`?await Pg({fetchJsonFromBases:m}):g===`sse`?wg({...h,sseOptions:e.sseOptions}):qg({...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=>(Jp(e),o={...o,authToken:e},_.requestTrustWithToken(e)),requestTrustWithCode:async e=>{let t=await _.requestTrustWithCode(e);if(!t)return!1;Jp(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=Lh(S),S.streaming=Hg(S),S.services=im(S);let C=new Map;S.scope=(e=>{if(!e)return S;let t=C.get(e);return t||(t=Qg(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 rm(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 t_=e_;function n_(e){return t_(e)}function r_(){let e=on(null),t=on(new URLSearchParams(location.search).get(`url`)??``),n=on(null),r=on(!1),i=on(null),a=Z(()=>e.value?.connectionMeta.backend===`static`);async function o(o=t.value){if(!(a.value&&n.value)){t.value=o.trim(),r.value=!0,i.value=null;try{e.value??=await n_(),await e.value.ensureTrusted();let r=await e.value.call(`devframes:plugin:og:resolve-metadata`,{url:t.value});n.value=r,(!t.value||a.value)&&r.requestedUrl&&(t.value=r.requestedUrl);let i=new URL(location.href);t.value?i.searchParams.set(`url`,t.value):i.searchParams.delete(`url`),history.replaceState(null,``,i)}catch(e){i.value=e instanceof Error?e.message:String(e)}finally{r.value=!1}}}return{error:Yt(i),inspect:o,isStatic:a,loading:Yt(r),snapshot:Yt(n),target:t}}var i_={class:`h-100dvh flex flex-col bg-base color-base font-sans`},a_={key:0,class:`flex items-start gap-2 border-b border-base bg-red/8 px4 py2 color-red text-xs`},o_={class:`min-h-0 flex-1 overflow-auto`},s_={key:0,class:`h-full flex flex-col items-center justify-center gap-3 color-muted`},c_={key:1,class:`h-full flex flex-col items-center justify-center gap-3 px6 text-center color-muted`},l_={key:2,class:`grid min-h-full gap4 p4 xl:grid-cols-[minmax(0,1fr)_minmax(28rem,0.85fr)]`},u_={class:`min-w-0 flex flex-col gap4`},d_={class:`flex flex-wrap items-center gap-2 color-muted text-xs`},f_=[`href`,`title`],p_={class:`ml-auto font-mono tabular-nums`},m_={class:`min-w-0 xl:sticky xl:top4 xl:h-[calc(100dvh-6.5rem)]`},h_=V({__name:`app`,setup(e){let t=r_();return Ki(()=>t.inspect()),(e,n)=>(G(),K(`div`,i_,[Y(Kf,{target:R(t).target.value,"onUpdate:target":n[0]||=e=>R(t).target.value=e,loading:R(t).loading.value,"is-static":R(t).isStatic.value,onInspect:n[1]||=e=>R(t).inspect()},null,8,[`target`,`loading`,`is-static`]),R(t).error.value?(G(),K(`div`,a_,[n[2]||=J(`span`,{class:`i-ph-warning-octagon-duotone mt0.5 shrink-0`},null,-1),J(`span`,null,M(R(t).error.value),1)])):bs(``,!0),J(`main`,o_,[R(t).loading.value&&!R(t).snapshot.value?(G(),K(`div`,s_,[...n[3]||=[J(`span`,{class:`i-ph-circle-notch-duotone animate-spin text-3xl color-active`},null,-1),J(`span`,{class:`text-sm`},`Reading page metadata...`,-1)]])):R(t).snapshot.value?.url?(G(),K(`div`,l_,[J(`div`,u_,[J(`div`,d_,[n[5]||=J(`span`,{class:`i-ph-check-circle-duotone color-active`},null,-1),J(`a`,{href:R(t).snapshot.value.url,target:`_blank`,rel:`noreferrer`,class:`min-w-0 truncate font-mono hover:color-active`,title:R(t).snapshot.value.url},M(R(t).snapshot.value.url),9,f_),J(`span`,p_,`HTTP `+M(R(t).snapshot.value.status),1)]),Y(ju,{tags:R(t).snapshot.value.tags},null,8,[`tags`]),Y(ef,{tags:R(t).snapshot.value.tags},null,8,[`tags`])]),J(`div`,m_,[Y(Rf,{snapshot:R(t).snapshot.value},null,8,[`snapshot`])])])):(G(),K(`div`,c_,[...n[4]||=[J(`span`,{class:`i-ph-image-square-duotone text-4xl color-active op70`},null,-1),J(`div`,null,[J(`h1`,{class:`m0 color-base text-base font-semibold`},` Inspect a social card `),J(`p`,{class:`mb0 mt1 max-w-100 text-sm`},` Enter a page URL to resolve its Open Graph and Twitter metadata. `)],-1)]]))])]))}}),g_=window.matchMedia(`(prefers-color-scheme: dark)`);function __(e){document.documentElement.classList.toggle(`dark`,e),document.documentElement.classList.toggle(`light`,!e)}__(g_.matches),g_.addEventListener(`change`,e=>__(e.matches)),uu(h_).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>Open Graph Viewer</title>
8
- <script type="module" crossorigin src="./assets/index-GuRccuT9.js"></script>
8
+ <script type="module" crossorigin src="./assets/index-B7L2cktH.js"></script>
9
9
  <link rel="stylesheet" crossorigin href="./assets/index-CnchnFnE.css">
10
10
  </head>
11
11
  <body>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@devframes/plugin-og--assets",
3
3
  "type": "module",
4
- "version": "0.9.8",
4
+ "version": "0.9.9",
5
5
  "description": "Prebuilt browser assets (SPA) for @devframes/plugin-og, served on demand through devframe's remote-assets back-proxy.",
6
6
  "author": "Anthony Fu <anthonyfu117@hotmail.com>",
7
7
  "license": "MIT",