@telepath-computer/television 0.1.69 → 0.1.71

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.
@@ -0,0 +1,522 @@
1
+ var kb=Object.defineProperty;var qh=n=>{throw TypeError(n)};var Eb=(n,e,t)=>e in n?kb(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var b=(n,e,t)=>Eb(n,typeof e!="symbol"?e+"":e,t),Sl=(n,e,t)=>e.has(n)||qh("Cannot "+t);var l=(n,e,t)=>(Sl(n,e,"read from private field"),t?t.call(n):e.get(n)),w=(n,e,t)=>e.has(n)?qh("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(n):e.set(n,t),x=(n,e,t,r)=>(Sl(n,e,"write to private field"),r?r.call(n,t):e.set(n,t),t),m=(n,e,t)=>(Sl(n,e,"access private method"),t);var Yh=(n,e,t,r)=>({set _(i){x(n,e,i,t)},get _(){return l(n,e,r)}});(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function t(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(i){if(i.ep)return;i.ep=!0;const s=t(i);fetch(i.href,s)}})();var Ln=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function xb(n){if(n.__esModule)return n;var e=n.default;if(typeof e=="function"){var t=function r(){return this instanceof r?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};t.prototype=e.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(n).forEach(function(r){var i=Object.getOwnPropertyDescriptor(n,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return n[r]}})}),t}var Xh=Object.prototype.toString,Bf=function(e){var t=Xh.call(e),r=t==="[object Arguments]";return r||(r=t!=="[object Array]"&&e!==null&&typeof e=="object"&&typeof e.length=="number"&&e.length>=0&&Xh.call(e.callee)==="[object Function]"),r},_l,Kh;function Ab(){if(Kh)return _l;Kh=1;var n;if(!Object.keys){var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,r=Bf,i=Object.prototype.propertyIsEnumerable,s=!i.call({toString:null},"toString"),o=i.call(function(){},"prototype"),a=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],c=function(v){var g=v.constructor;return g&&g.prototype===v},u={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},h=function(){if(typeof window>"u")return!1;for(var v in window)try{if(!u["$"+v]&&e.call(window,v)&&window[v]!==null&&typeof window[v]=="object")try{c(window[v])}catch{return!0}}catch{return!0}return!1}(),p=function(v){if(typeof window>"u"||!h)return c(v);try{return c(v)}catch{return!1}};n=function(g){var E=g!==null&&typeof g=="object",_=t.call(g)==="[object Function]",C=r(g),N=E&&t.call(g)==="[object String]",P=[];if(!E&&!_&&!C)throw new TypeError("Object.keys called on a non-object");var W=o&&_;if(N&&g.length>0&&!e.call(g,0))for(var L=0;L<g.length;++L)P.push(String(L));if(C&&g.length>0)for(var H=0;H<g.length;++H)P.push(String(H));else for(var F in g)!(W&&F==="prototype")&&e.call(g,F)&&P.push(String(F));if(s)for(var ce=p(g),ue=0;ue<a.length;++ue)!(ce&&a[ue]==="constructor")&&e.call(g,a[ue])&&P.push(a[ue]);return P}}return _l=n,_l}var $b=Array.prototype.slice,Tb=Bf,Jh=Object.keys,Fo=Jh?function(e){return Jh(e)}:Ab(),Qh=Object.keys;Fo.shim=function(){if(Object.keys){var e=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);e||(Object.keys=function(r){return Tb(r)?Qh($b.call(r)):Qh(r)})}else Object.keys=Fo;return Object.keys||Fo};var Ib=Fo,Zo=Object.defineProperty||!1;if(Zo)try{Zo({},"a",{value:1})}catch{Zo=!1}var Xs=Zo,Qt=SyntaxError,j=TypeError,Cb=Object.getOwnPropertyDescriptor,Ho=Cb;if(Ho)try{Ho([],"length")}catch{Ho=null}var gi=Ho,ed=Xs,Pb=Qt,$r=j,td=gi,Vf=function(e,t,r){if(!e||typeof e!="object"&&typeof e!="function")throw new $r("`obj` must be an object or a function`");if(typeof t!="string"&&typeof t!="symbol")throw new $r("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new $r("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new $r("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new $r("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new $r("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,s=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,a=arguments.length>6?arguments[6]:!1,c=!!td&&td(e,t);if(ed)ed(e,t,{configurable:o===null&&c?c.configurable:!o,enumerable:i===null&&c?c.enumerable:!i,value:r,writable:s===null&&c?c.writable:!s});else if(a||!i&&!s&&!o)e[t]=r;else throw new Pb("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")},mc=Xs,Gf=function(){return!!mc};Gf.hasArrayLengthDefineBug=function(){if(!mc)return null;try{return mc([],"length",{value:1}).length!==1}catch{return!0}};var Wa=Gf,Rb=Ib,Db=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",Lb=Object.prototype.toString,Ob=Array.prototype.concat,nd=Vf,Mb=function(n){return typeof n=="function"&&Lb.call(n)==="[object Function]"},jf=Wa(),zb=function(n,e,t,r){if(e in n){if(r===!0){if(n[e]===t)return}else if(!Mb(r)||!r())return}jf?nd(n,e,t,!0):nd(n,e,t)},qf=function(n,e){var t=arguments.length>2?arguments[2]:{},r=Rb(e);Db&&(r=Ob.call(r,Object.getOwnPropertySymbols(e)));for(var i=0;i<r.length;i+=1)zb(n,r[i],e[r[i]],t[r[i]])};qf.supportsDescriptors=!!jf;var vr=qf,Wo={exports:{}};typeof self<"u"?Wo.exports=self:typeof window<"u"?Wo.exports=window:Wo.exports=Function("return this")();var Yf=Wo.exports,Nb=Yf,Xf=function(){return typeof Ln!="object"||!Ln||Ln.Math!==Math||Ln.Array!==Array?Nb:Ln},Ub=vr,Fb=gi,Zb=Xf,Hb=function(){var e=Zb();if(Ub.supportsDescriptors){var t=Fb(e,"globalThis");(!t||t.configurable&&(t.enumerable||!t.writable||globalThis!==e))&&Object.defineProperty(e,"globalThis",{configurable:!0,enumerable:!1,value:e,writable:!0})}else(typeof globalThis!="object"||globalThis!==e)&&(e.globalThis=e);return e},Wb=vr,Bb=Yf,Kf=Xf,Vb=Hb,Gb=Kf(),Jf=function(){return Gb};Wb(Jf,{getPolyfill:Kf,implementation:Bb,shim:Vb});var bu=Jf,en=function(e){return!!e&&(typeof e=="function"||typeof e=="object")},wu=Object,Qf=Error,jb=EvalError,qb=RangeError,Su=ReferenceError,Yb=URIError,Xb=Math.abs,Kb=Math.floor,Jb=Math.max,Qb=Math.min,ew=Math.pow,tw=Math.round,_u=Number.isNaN||function(e){return e!==e},nw=_u,rw=function(e){return nw(e)||e===0?e:e<0?-1:1},mi=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},t=Symbol("test"),r=Object(t);if(typeof t=="string"||Object.prototype.toString.call(t)!=="[object Symbol]"||Object.prototype.toString.call(r)!=="[object Symbol]")return!1;var i=42;e[t]=i;for(var s in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var o=Object.getOwnPropertySymbols(e);if(o.length!==1||o[0]!==t||!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var a=Object.getOwnPropertyDescriptor(e,t);if(a.value!==i||a.enumerable!==!0)return!1}return!0},rd=typeof Symbol<"u"&&Symbol,iw=mi,ku=function(){return typeof rd!="function"||typeof Symbol!="function"||typeof rd("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:iw()},eg=typeof Reflect<"u"&&Reflect.getPrototypeOf||null,sw=wu,tg=sw.getPrototypeOf||null,ow="Function.prototype.bind called on incompatible ",aw=Object.prototype.toString,lw=Math.max,cw="[object Function]",id=function(e,t){for(var r=[],i=0;i<e.length;i+=1)r[i]=e[i];for(var s=0;s<t.length;s+=1)r[s+e.length]=t[s];return r},uw=function(e,t){for(var r=[],i=t,s=0;i<e.length;i+=1,s+=1)r[s]=e[i];return r},hw=function(n,e){for(var t="",r=0;r<n.length;r+=1)t+=n[r],r+1<n.length&&(t+=e);return t},dw=function(e){var t=this;if(typeof t!="function"||aw.apply(t)!==cw)throw new TypeError(ow+t);for(var r=uw(arguments,1),i,s=function(){if(this instanceof i){var h=t.apply(this,id(r,arguments));return Object(h)===h?h:this}return t.apply(e,id(r,arguments))},o=lw(0,t.length-r.length),a=[],c=0;c<o;c++)a[c]="$"+c;if(i=Function("binder","return function ("+hw(a,",")+"){ return binder.apply(this,arguments); }")(s),t.prototype){var u=function(){};u.prototype=t.prototype,i.prototype=new u,u.prototype=null}return i},pw=dw,Ks=Function.prototype.bind||pw,Eu=Function.prototype.call,xu=Function.prototype.apply,fw=typeof Reflect<"u"&&Reflect&&Reflect.apply,gw=Ks,mw=xu,vw=Eu,yw=fw,ng=yw||gw.call(vw,mw),bw=Ks,ww=j,Sw=Eu,_w=ng,Ba=function(e){if(e.length<1||typeof e[0]!="function")throw new ww("a function is required");return _w(bw,Sw,e)},kw=Ba,sd=gi,rg;try{rg=[].__proto__===Array.prototype}catch(n){if(!n||typeof n!="object"||!("code"in n)||n.code!=="ERR_PROTO_ACCESS")throw n}var kl=!!rg&&sd&&sd(Object.prototype,"__proto__"),ig=Object,od=ig.getPrototypeOf,Ew=kl&&typeof kl.get=="function"?kw([kl.get]):typeof od=="function"?function(e){return od(e==null?e:ig(e))}:!1,ad=eg,ld=tg,cd=Ew,sg=ad?function(e){return ad(e)}:ld?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return ld(e)}:cd?function(e){return cd(e)}:null,xw=Function.prototype.call,Aw=Object.prototype.hasOwnProperty,$w=Ks,tn=$w.call(xw,Aw),G,Tw=wu,Iw=Qf,Cw=jb,Pw=qb,Rw=Su,ci=Qt,Wr=j,Dw=Yb,Lw=Xb,Ow=Kb,Mw=Jb,zw=Qb,Nw=ew,Uw=tw,Fw=rw,og=Function,El=function(n){try{return og('"use strict"; return ('+n+").constructor;")()}catch{}},is=gi,Zw=Xs,xl=function(){throw new Wr},Hw=is?function(){try{return arguments.callee,xl}catch{try{return is(arguments,"callee").get}catch{return xl}}}():xl,Tr=ku(),ke=sg,Ww=tg,Bw=eg,ag=xu,Js=Eu,Dr={},Vw=typeof Uint8Array>"u"||!ke?G:ke(Uint8Array),ur={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?G:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?G:ArrayBuffer,"%ArrayIteratorPrototype%":Tr&&ke?ke([][Symbol.iterator]()):G,"%AsyncFromSyncIteratorPrototype%":G,"%AsyncFunction%":Dr,"%AsyncGenerator%":Dr,"%AsyncGeneratorFunction%":Dr,"%AsyncIteratorPrototype%":Dr,"%Atomics%":typeof Atomics>"u"?G:Atomics,"%BigInt%":typeof BigInt>"u"?G:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?G:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?G:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?G:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Iw,"%eval%":eval,"%EvalError%":Cw,"%Float16Array%":typeof Float16Array>"u"?G:Float16Array,"%Float32Array%":typeof Float32Array>"u"?G:Float32Array,"%Float64Array%":typeof Float64Array>"u"?G:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?G:FinalizationRegistry,"%Function%":og,"%GeneratorFunction%":Dr,"%Int8Array%":typeof Int8Array>"u"?G:Int8Array,"%Int16Array%":typeof Int16Array>"u"?G:Int16Array,"%Int32Array%":typeof Int32Array>"u"?G:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Tr&&ke?ke(ke([][Symbol.iterator]())):G,"%JSON%":typeof JSON=="object"?JSON:G,"%Map%":typeof Map>"u"?G:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Tr||!ke?G:ke(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Tw,"%Object.getOwnPropertyDescriptor%":is,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?G:Promise,"%Proxy%":typeof Proxy>"u"?G:Proxy,"%RangeError%":Pw,"%ReferenceError%":Rw,"%Reflect%":typeof Reflect>"u"?G:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?G:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Tr||!ke?G:ke(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?G:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Tr&&ke?ke(""[Symbol.iterator]()):G,"%Symbol%":Tr?Symbol:G,"%SyntaxError%":ci,"%ThrowTypeError%":Hw,"%TypedArray%":Vw,"%TypeError%":Wr,"%Uint8Array%":typeof Uint8Array>"u"?G:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?G:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?G:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?G:Uint32Array,"%URIError%":Dw,"%WeakMap%":typeof WeakMap>"u"?G:WeakMap,"%WeakRef%":typeof WeakRef>"u"?G:WeakRef,"%WeakSet%":typeof WeakSet>"u"?G:WeakSet,"%Function.prototype.call%":Js,"%Function.prototype.apply%":ag,"%Object.defineProperty%":Zw,"%Object.getPrototypeOf%":Ww,"%Math.abs%":Lw,"%Math.floor%":Ow,"%Math.max%":Mw,"%Math.min%":zw,"%Math.pow%":Nw,"%Math.round%":Uw,"%Math.sign%":Fw,"%Reflect.getPrototypeOf%":Bw};if(ke)try{null.error}catch(n){var Gw=ke(ke(n));ur["%Error.prototype%"]=Gw}var jw=function n(e){var t;if(e==="%AsyncFunction%")t=El("async function () {}");else if(e==="%GeneratorFunction%")t=El("function* () {}");else if(e==="%AsyncGeneratorFunction%")t=El("async function* () {}");else if(e==="%AsyncGenerator%"){var r=n("%AsyncGeneratorFunction%");r&&(t=r.prototype)}else if(e==="%AsyncIteratorPrototype%"){var i=n("%AsyncGenerator%");i&&ke&&(t=ke(i.prototype))}return ur[e]=t,t},ud={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Qs=Ks,ia=tn,qw=Qs.call(Js,Array.prototype.concat),Yw=Qs.call(ag,Array.prototype.splice),hd=Qs.call(Js,String.prototype.replace),sa=Qs.call(Js,String.prototype.slice),Xw=Qs.call(Js,RegExp.prototype.exec),Kw=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,Jw=/\\(\\)?/g,Qw=function(e){var t=sa(e,0,1),r=sa(e,-1);if(t==="%"&&r!=="%")throw new ci("invalid intrinsic syntax, expected closing `%`");if(r==="%"&&t!=="%")throw new ci("invalid intrinsic syntax, expected opening `%`");var i=[];return hd(e,Kw,function(s,o,a,c){i[i.length]=a?hd(c,Jw,"$1"):o||s}),i},e0=function(e,t){var r=e,i;if(ia(ud,r)&&(i=ud[r],r="%"+i[0]+"%"),ia(ur,r)){var s=ur[r];if(s===Dr&&(s=jw(r)),typeof s>"u"&&!t)throw new Wr("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:i,name:r,value:s}}throw new ci("intrinsic "+e+" does not exist!")},ct=function(e,t){if(typeof e!="string"||e.length===0)throw new Wr("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof t!="boolean")throw new Wr('"allowMissing" argument must be a boolean');if(Xw(/^%?[^%]*%?$/,e)===null)throw new ci("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=Qw(e),i=r.length>0?r[0]:"",s=e0("%"+i+"%",t),o=s.name,a=s.value,c=!1,u=s.alias;u&&(i=u[0],Yw(r,qw([0,1],u)));for(var h=1,p=!0;h<r.length;h+=1){var v=r[h],g=sa(v,0,1),E=sa(v,-1);if((g==='"'||g==="'"||g==="`"||E==='"'||E==="'"||E==="`")&&g!==E)throw new ci("property names with quotes must have matching quotes");if((v==="constructor"||!p)&&(c=!0),i+="."+v,o="%"+i+"%",ia(ur,o))a=ur[o];else if(a!=null){if(!(v in a)){if(!t)throw new Wr("base intrinsic for "+e+" exists, but the property is not available.");return}if(is&&h+1>=r.length){var _=is(a,v);p=!!_,p&&"get"in _&&!("originalValue"in _.get)?a=_.get:a=a[v]}else p=ia(a,v),a=a[v];p&&!c&&(ur[o]=a)}}return a},Al,dd;function _n(){if(dd)return Al;dd=1;var n=ct,e=Ba,t=e([n("%String.prototype.indexOf%")]);return Al=function(i,s){var o=n(i,!!s);return typeof o=="function"&&t(i,".prototype.")>-1?e([o]):o},Al}var $l,pd;function Au(){if(pd)return $l;pd=1;var n=ct,e=n("%Array%"),t=!e.isArray&&_n()("Object.prototype.toString");return $l=e.isArray||function(i){return t(i)==="[object Array]"},$l}var t0=Wa,fd=Xs,lg=t0.hasArrayLengthDefineBug(),n0=lg&&Au(),r0=_n(),i0=r0("Object.prototype.propertyIsEnumerable"),$u=function(e,t,r,i,s,o){if(!fd){if(!e(o)||!o["[[Configurable]]"]||!o["[[Writable]]"]||s in i&&i0(i,s)!==!!o["[[Enumerable]]"])return!1;var a=o["[[Value]]"];return i[s]=a,t(i[s],a)}return lg&&s==="length"&&"[[Value]]"in o&&n0(i)&&i.length!==o["[[Value]]"]?(i.length=o["[[Value]]"],i.length===o["[[Value]]"]):(fd(i,s,r(o)),!0)},s0=j,Ri=tn,o0={__proto__:null,"[[Configurable]]":!0,"[[Enumerable]]":!0,"[[Get]]":!0,"[[Set]]":!0,"[[Value]]":!0,"[[Writable]]":!0},vi=function(e){if(!e||typeof e!="object")return!1;for(var t in e)if(Ri(e,t)&&!o0[t])return!1;var r=Ri(e,"[[Value]]")||Ri(e,"[[Writable]]"),i=Ri(e,"[[Get]]")||Ri(e,"[[Set]]");if(r&&i)throw new s0("Property Descriptors may not be both accessor and data descriptors");return!0},cg=function(e){if(typeof e>"u")return e;var t={};return"[[Value]]"in e&&(t.value=e["[[Value]]"]),"[[Writable]]"in e&&(t.writable=!!e["[[Writable]]"]),"[[Get]]"in e&&(t.get=e["[[Get]]"]),"[[Set]]"in e&&(t.set=e["[[Set]]"]),"[[Enumerable]]"in e&&(t.enumerable=!!e["[[Enumerable]]"]),"[[Configurable]]"in e&&(t.configurable=!!e["[[Configurable]]"]),t},a0=j,l0=vi,c0=cg,ug=function(e){if(typeof e<"u"&&!l0(e))throw new a0("Assertion failed: `Desc` must be a Property Descriptor");return c0(e)},u0=j,gd=tn,h0=vi,hg=function(e){if(typeof e>"u")return!1;if(!h0(e))throw new u0("Assertion failed: `Desc` must be a Property Descriptor");return!(!gd(e,"[[Value]]")&&!gd(e,"[[Writable]]"))},yi=function(e){return typeof e=="string"||typeof e=="symbol"},md=_u,dg=function(e,t){return e===t?e===0?1/e===1/t:!0:md(e)&&md(t)},vd=j,d0=en,p0=$u,f0=ug,g0=hg,m0=yi,v0=dg,Tu=function(e,t,r){if(!d0(e))throw new vd("Assertion failed: Type(O) is not Object");if(!m0(t))throw new vd("Assertion failed: P is not a Property Key");var i={"[[Configurable]]":!0,"[[Enumerable]]":!1,"[[Value]]":r,"[[Writable]]":!0};return p0(g0,v0,f0,e,t,i)},pg=Function.prototype.toString,Ur=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,vc,Bo;if(typeof Ur=="function"&&typeof Object.defineProperty=="function")try{vc=Object.defineProperty({},"length",{get:function(){throw Bo}}),Bo={},Ur(function(){throw 42},null,vc)}catch(n){n!==Bo&&(Ur=null)}else Ur=null;var y0=/^\s*class\b/,yc=function(e){try{var t=pg.call(e);return y0.test(t)}catch{return!1}},Tl=function(e){try{return yc(e)?!1:(pg.call(e),!0)}catch{return!1}},Vo=Object.prototype.toString,b0="[object Object]",w0="[object Function]",S0="[object GeneratorFunction]",_0="[object HTMLAllCollection]",k0="[object HTML document.all class]",E0="[object HTMLCollection]",x0=typeof Symbol=="function"&&!!Symbol.toStringTag,A0=!(0 in[,]),bc=function(){return!1};if(typeof document=="object"){var $0=document.all;Vo.call($0)===Vo.call(document.all)&&(bc=function(e){if((A0||!e)&&(typeof e>"u"||typeof e=="object"))try{var t=Vo.call(e);return(t===_0||t===k0||t===E0||t===b0)&&e("")==null}catch{}return!1})}var fg=Ur?function(e){if(bc(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;try{Ur(e,null,vc)}catch(t){if(t!==Bo)return!1}return!yc(e)&&Tl(e)}:function(e){if(bc(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;if(x0)return Tl(e);if(yc(e))return!1;var t=Vo.call(e);return t!==w0&&t!==S0&&!/^\[object HTML/.test(t)?!1:Tl(e)},T0=fg,I0=function(e){return!!e},Et=tn,wo=j,C0=en,yd=T0,Il=I0,P0=function(e){if(!C0(e))throw new wo("ToPropertyDescriptor requires an object");var t={};if(Et(e,"enumerable")&&(t["[[Enumerable]]"]=Il(e.enumerable)),Et(e,"configurable")&&(t["[[Configurable]]"]=Il(e.configurable)),Et(e,"value")&&(t["[[Value]]"]=e.value),Et(e,"writable")&&(t["[[Writable]]"]=Il(e.writable)),Et(e,"get")){var r=e.get;if(typeof r<"u"&&!yd(r))throw new wo("getter must be a function");t["[[Get]]"]=r}if(Et(e,"set")){var i=e.set;if(typeof i<"u"&&!yd(i))throw new wo("setter must be a function");t["[[Set]]"]=i}if((Et(t,"[[Get]]")||Et(t,"[[Set]]"))&&(Et(t,"[[Value]]")||Et(t,"[[Writable]]")))throw new wo("Invalid property descriptor. Cannot both specify accessors and a value or writable attribute");return t},Cl=j,R0=en,bd=vi,D0=$u,L0=ug,O0=hg,M0=yi,z0=dg,N0=P0,U0=function(e,t,r){if(!R0(e))throw new Cl("Assertion failed: Type(O) is not Object");if(!M0(t))throw new Cl("Assertion failed: P is not a Property Key");var i=bd(r)?r:N0(r);if(!bd(i))throw new Cl("Assertion failed: Desc is not a valid Property Descriptor");return D0(O0,z0,L0,e,t,i)},wd=j,F0=en,Z0=U0,H0=yi,W0=function(e,t,r){if(!F0(e))throw new wd("Assertion failed: Type(O) is not Object");if(!H0(t))throw new wd("Assertion failed: P is not a Property Key");var i={"[[Configurable]]":!0,"[[Enumerable]]":!1,"[[Value]]":r,"[[Writable]]":!0};return Z0(e,t,i)},B0=typeof Reflect<"u"&&Reflect.setPrototypeOf||null,V0=wu,G0=V0.setPrototypeOf||null,j0=Ba,Sd=gi,q0=j,gg={};try{gg.__proto__=null}catch(n){if(!n||typeof n!="object"||!("code"in n)||n.code!=="ERR_PROTO_ACCESS")throw n}var Y0=!("toString"in gg),Pl=Sd&&Sd(Object.prototype,"__proto__"),X0=Y0&&(!!Pl&&typeof Pl.set=="function"&&j0([Pl.set])||function(e,t){if(e==null)throw new q0("set Object.prototype.__proto__ called on null or undefined");return e.__proto__=t,t}),_d=B0,K0=G0,kd=X0,J0=j,Q0=_d?function(e,t){if(_d(e,t))return e;throw new J0("Reflect.setPrototypeOf: failed to set [[Prototype]]")}:K0||(kd?function(e,t){return kd(e,t),e}:null),Ed=j,eS=en,xd=sg,tS=function(e){if(!eS(e))throw new Ed("Assertion failed: O must be an Object");if(!xd)throw new Ed("This environment does not support fetching prototypes.");return xd(e)},nS=j,rS=Q0,iS=en,sS=tS,oS=function(e,t){if(t!==null&&!iS(t))throw new nS("Assertion failed: V must be Object or Null");try{rS(e,t)}catch{return!1}return sS(e)===t},Rl=Tu,Ad=W0,mg=oS,aS=Wa(),Iu=Qf;function eo(n,e,t){var r=new Iu(t);return mg(r,Go),delete r.constructor,Ad(r,"error",n),Ad(r,"suppressed",e),r}aS&&Object.defineProperty(eo,"prototype",{writable:!1});var Go=eo.prototype;if(!Rl(Go,"constructor",eo)||!Rl(Go,"message","")||!Rl(Go,"name","SuppressedError"))throw new Iu("unable to install SuppressedError.prototype properties; please report this!");mg(eo.prototype,Iu.prototype);var lS=eo,cS=lS,vg=function(){return typeof SuppressedError=="function"?SuppressedError:cS},uS=vr,$d=bu(),hS=vg,dS=function(){var e=hS();return uS($d,{SuppressedError:e},{SuppressedError:function(){return $d.SuppressedError!==e}}),e};dS();var pS=j,fS=vi,gS=cg,mS=function(e){if(typeof e<"u"&&!fS(e))throw new pS("Assertion failed: `Desc` must be a Property Descriptor");return gS(e)},vS=j,Td=tn,yS=vi,bS=function(e){if(typeof e>"u")return!1;if(!yS(e))throw new vS("Assertion failed: `Desc` must be a Property Descriptor");return!(!Td(e,"[[Value]]")&&!Td(e,"[[Writable]]"))},Id=_u,wS=function(e,t){return e===t?e===0?1/e===1/t:!0:Id(e)&&Id(t)},bi=fg,SS=function(e){return!!e},xt=tn,So=j,_S=en,Cd=bi,Dl=SS,kS=function(e){if(!_S(e))throw new So("ToPropertyDescriptor requires an object");var t={};if(xt(e,"enumerable")&&(t["[[Enumerable]]"]=Dl(e.enumerable)),xt(e,"configurable")&&(t["[[Configurable]]"]=Dl(e.configurable)),xt(e,"value")&&(t["[[Value]]"]=e.value),xt(e,"writable")&&(t["[[Writable]]"]=Dl(e.writable)),xt(e,"get")){var r=e.get;if(typeof r<"u"&&!Cd(r))throw new So("getter must be a function");t["[[Get]]"]=r}if(xt(e,"set")){var i=e.set;if(typeof i<"u"&&!Cd(i))throw new So("setter must be a function");t["[[Set]]"]=i}if((xt(t,"[[Get]]")||xt(t,"[[Set]]"))&&(xt(t,"[[Value]]")||xt(t,"[[Writable]]")))throw new So("Invalid property descriptor. Cannot both specify accessors and a value or writable attribute");return t},Ll=j,ES=en,Pd=vi,xS=$u,AS=mS,$S=bS,TS=yi,IS=wS,CS=kS,to=function(e,t,r){if(!ES(e))throw new Ll("Assertion failed: Type(O) is not Object");if(!TS(t))throw new Ll("Assertion failed: P is not a Property Key");var i=Pd(r)?r:CS(r);if(!Pd(i))throw new Ll("Assertion failed: Desc is not a valid Property Descriptor");return xS($S,IS,AS,e,t,i)},PS=mi(),RS=PS?Symbol.dispose||Symbol("Symbol.dispose"):null,DS=mi,LS=RS,Cu=function(){return DS()&&Symbol.dispose||LS},OS=ku,MS=to,zS=Cu,NS=function(){var e=zS();return OS()&&MS(Symbol,"dispose",{"[[Configurable]]":!1,"[[Enumerable]]":!1,"[[Writable]]":!1,"[[Value]]":e}),e},US=mi(),FS=US?Symbol.asyncDispose||Symbol("Symbol.asyncDispose"):null,ZS=mi,HS=FS,Pu=function(){return ZS()&&Symbol.asyncDispose||HS},WS=ku,BS=to,VS=Pu,GS=function(){var e=VS();return WS()&&BS(Symbol,"asyncDispose",{"[[Configurable]]":!1,"[[Enumerable]]":!1,"[[Writable]]":!1,"[[Value]]":e}),e},jS=Au(),qS=ct,YS=_n(),XS=j,KS=jS,JS=qS("%Reflect.apply%",!0)||YS("Function.prototype.apply"),Va=function(e,t){var r=arguments.length>2?arguments[2]:[];if(!KS(r))throw new XS("Assertion failed: optional `argumentsList`, if provided, must be a List");return JS(e,t,r)};const QS={},e_=Object.freeze(Object.defineProperty({__proto__:null,default:QS},Symbol.toStringTag,{value:"Module"})),t_=xb(e_);var Ru=typeof Map=="function"&&Map.prototype,Ol=Object.getOwnPropertyDescriptor&&Ru?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,oa=Ru&&Ol&&typeof Ol.get=="function"?Ol.get:null,Rd=Ru&&Map.prototype.forEach,Du=typeof Set=="function"&&Set.prototype,Ml=Object.getOwnPropertyDescriptor&&Du?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,aa=Du&&Ml&&typeof Ml.get=="function"?Ml.get:null,Dd=Du&&Set.prototype.forEach,n_=typeof WeakMap=="function"&&WeakMap.prototype,Qi=n_?WeakMap.prototype.has:null,r_=typeof WeakSet=="function"&&WeakSet.prototype,es=r_?WeakSet.prototype.has:null,i_=typeof WeakRef=="function"&&WeakRef.prototype,Ld=i_?WeakRef.prototype.deref:null,s_=Boolean.prototype.valueOf,o_=Object.prototype.toString,a_=Function.prototype.toString,l_=String.prototype.match,Lu=String.prototype.slice,fn=String.prototype.replace,c_=String.prototype.toUpperCase,Od=String.prototype.toLowerCase,yg=RegExp.prototype.test,Md=Array.prototype.concat,Dt=Array.prototype.join,u_=Array.prototype.slice,zd=Math.floor,wc=typeof BigInt=="function"?BigInt.prototype.valueOf:null,zl=Object.getOwnPropertySymbols,Sc=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,ui=typeof Symbol=="function"&&typeof Symbol.iterator=="object",ts=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===ui||!0)?Symbol.toStringTag:null,bg=Object.prototype.propertyIsEnumerable,Nd=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(n){return n.__proto__}:null);function Ud(n,e){if(n===1/0||n===-1/0||n!==n||n&&n>-1e3&&n<1e3||yg.call(/e/,e))return e;var t=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof n=="number"){var r=n<0?-zd(-n):zd(n);if(r!==n){var i=String(r),s=Lu.call(e,i.length+1);return fn.call(i,t,"$&_")+"."+fn.call(fn.call(s,/([0-9]{3})/g,"$&_"),/_$/,"")}}return fn.call(e,t,"$&_")}var _c=t_,Fd=_c.custom,Zd=_g(Fd)?Fd:null,wg={__proto__:null,double:'"',single:"'"},h_={__proto__:null,double:/(["\\])/g,single:/(['\\])/g},wi=function n(e,t,r,i){var s=t||{};if(Ht(s,"quoteStyle")&&!Ht(wg,s.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(Ht(s,"maxStringLength")&&(typeof s.maxStringLength=="number"?s.maxStringLength<0&&s.maxStringLength!==1/0:s.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var o=Ht(s,"customInspect")?s.customInspect:!0;if(typeof o!="boolean"&&o!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(Ht(s,"indent")&&s.indent!==null&&s.indent!==" "&&!(parseInt(s.indent,10)===s.indent&&s.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(Ht(s,"numericSeparator")&&typeof s.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var a=s.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return Eg(e,s);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return a?Ud(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return a?Ud(e,u):u}var h=typeof s.depth>"u"?5:s.depth;if(typeof r>"u"&&(r=0),r>=h&&h>0&&typeof e=="object")return kc(e)?"[Array]":"[Object]";var p=I_(s,r);if(typeof i>"u")i=[];else if(kg(i,e)>=0)return"[Circular]";function v(St,nn,cl){if(nn&&(i=u_.call(i),i.push(nn)),cl){var uo={depth:s.depth};return Ht(s,"quoteStyle")&&(uo.quoteStyle=s.quoteStyle),n(St,uo,r+1,i)}return n(St,s,r+1,i)}if(typeof e=="function"&&!Hd(e)){var g=w_(e),E=_o(e,v);return"[Function"+(g?": "+g:" (anonymous)")+"]"+(E.length>0?" { "+Dt.call(E,", ")+" }":"")}if(_g(e)){var _=ui?fn.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):Sc.call(e);return typeof e=="object"&&!ui?Di(_):_}if(A_(e)){for(var C="<"+Od.call(String(e.nodeName)),N=e.attributes||[],P=0;P<N.length;P++)C+=" "+N[P].name+"="+Sg(d_(N[P].value),"double",s);return C+=">",e.childNodes&&e.childNodes.length&&(C+="..."),C+="</"+Od.call(String(e.nodeName))+">",C}if(kc(e)){if(e.length===0)return"[]";var W=_o(e,v);return p&&!T_(W)?"["+Ec(W,p)+"]":"[ "+Dt.call(W,", ")+" ]"}if(f_(e)){var L=_o(e,v);return!("cause"in Error.prototype)&&"cause"in e&&!bg.call(e,"cause")?"{ ["+String(e)+"] "+Dt.call(Md.call("[cause]: "+v(e.cause),L),", ")+" }":L.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Dt.call(L,", ")+" }"}if(typeof e=="object"&&o){if(Zd&&typeof e[Zd]=="function"&&_c)return _c(e,{depth:h-r});if(o!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(S_(e)){var H=[];return Rd&&Rd.call(e,function(St,nn){H.push(v(nn,e,!0)+" => "+v(St,e))}),Wd("Map",oa.call(e),H,p)}if(E_(e)){var F=[];return Dd&&Dd.call(e,function(St){F.push(v(St,e))}),Wd("Set",aa.call(e),F,p)}if(__(e))return Nl("WeakMap");if(x_(e))return Nl("WeakSet");if(k_(e))return Nl("WeakRef");if(m_(e))return Di(v(Number(e)));if(y_(e))return Di(v(wc.call(e)));if(v_(e))return Di(s_.call(e));if(g_(e))return Di(v(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof Ln<"u"&&e===Ln)return"{ [object globalThis] }";if(!p_(e)&&!Hd(e)){var ce=_o(e,v),ue=Nd?Nd(e)===Object.prototype:e instanceof Object||e.constructor===Object,Ti=e instanceof Object?"":"null prototype",co=!ue&&ts&&Object(e)===e&&ts in e?Lu.call(kn(e),8,-1):Ti?"Object":"",xe=ue||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",An=xe+(co||Ti?"["+Dt.call(Md.call([],co||[],Ti||[]),": ")+"] ":"");return ce.length===0?An+"{}":p?An+"{"+Ec(ce,p)+"}":An+"{ "+Dt.call(ce,", ")+" }"}return String(e)};function Sg(n,e,t){var r=t.quoteStyle||e,i=wg[r];return i+n+i}function d_(n){return fn.call(String(n),/"/g,"&quot;")}function yr(n){return!ts||!(typeof n=="object"&&(ts in n||typeof n[ts]<"u"))}function kc(n){return kn(n)==="[object Array]"&&yr(n)}function p_(n){return kn(n)==="[object Date]"&&yr(n)}function Hd(n){return kn(n)==="[object RegExp]"&&yr(n)}function f_(n){return kn(n)==="[object Error]"&&yr(n)}function g_(n){return kn(n)==="[object String]"&&yr(n)}function m_(n){return kn(n)==="[object Number]"&&yr(n)}function v_(n){return kn(n)==="[object Boolean]"&&yr(n)}function _g(n){if(ui)return n&&typeof n=="object"&&n instanceof Symbol;if(typeof n=="symbol")return!0;if(!n||typeof n!="object"||!Sc)return!1;try{return Sc.call(n),!0}catch{}return!1}function y_(n){if(!n||typeof n!="object"||!wc)return!1;try{return wc.call(n),!0}catch{}return!1}var b_=Object.prototype.hasOwnProperty||function(n){return n in this};function Ht(n,e){return b_.call(n,e)}function kn(n){return o_.call(n)}function w_(n){if(n.name)return n.name;var e=l_.call(a_.call(n),/^function\s*([\w$]+)/);return e?e[1]:null}function kg(n,e){if(n.indexOf)return n.indexOf(e);for(var t=0,r=n.length;t<r;t++)if(n[t]===e)return t;return-1}function S_(n){if(!oa||!n||typeof n!="object")return!1;try{oa.call(n);try{aa.call(n)}catch{return!0}return n instanceof Map}catch{}return!1}function __(n){if(!Qi||!n||typeof n!="object")return!1;try{Qi.call(n,Qi);try{es.call(n,es)}catch{return!0}return n instanceof WeakMap}catch{}return!1}function k_(n){if(!Ld||!n||typeof n!="object")return!1;try{return Ld.call(n),!0}catch{}return!1}function E_(n){if(!aa||!n||typeof n!="object")return!1;try{aa.call(n);try{oa.call(n)}catch{return!0}return n instanceof Set}catch{}return!1}function x_(n){if(!es||!n||typeof n!="object")return!1;try{es.call(n,es);try{Qi.call(n,Qi)}catch{return!0}return n instanceof WeakSet}catch{}return!1}function A_(n){return!n||typeof n!="object"?!1:typeof HTMLElement<"u"&&n instanceof HTMLElement?!0:typeof n.nodeName=="string"&&typeof n.getAttribute=="function"}function Eg(n,e){if(n.length>e.maxStringLength){var t=n.length-e.maxStringLength,r="... "+t+" more character"+(t>1?"s":"");return Eg(Lu.call(n,0,e.maxStringLength),e)+r}var i=h_[e.quoteStyle||"single"];i.lastIndex=0;var s=fn.call(fn.call(n,i,"\\$1"),/[\x00-\x1f]/g,$_);return Sg(s,"single",e)}function $_(n){var e=n.charCodeAt(0),t={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return t?"\\"+t:"\\x"+(e<16?"0":"")+c_.call(e.toString(16))}function Di(n){return"Object("+n+")"}function Nl(n){return n+" { ? }"}function Wd(n,e,t,r){var i=r?Ec(t,r):Dt.call(t,", ");return n+" ("+e+") {"+i+"}"}function T_(n){for(var e=0;e<n.length;e++)if(kg(n[e],`
2
+ `)>=0)return!1;return!0}function I_(n,e){var t;if(n.indent===" ")t=" ";else if(typeof n.indent=="number"&&n.indent>0)t=Dt.call(Array(n.indent+1)," ");else return null;return{base:t,prev:Dt.call(Array(e+1),t)}}function Ec(n,e){if(n.length===0)return"";var t=`
3
+ `+e.prev+e.base;return t+Dt.call(n,","+t)+`
4
+ `+e.prev}function _o(n,e){var t=kc(n),r=[];if(t){r.length=n.length;for(var i=0;i<n.length;i++)r[i]=Ht(n,i)?e(n[i],n):""}var s=typeof zl=="function"?zl(n):[],o;if(ui){o={};for(var a=0;a<s.length;a++)o["$"+s[a]]=s[a]}for(var c in n)Ht(n,c)&&(t&&String(Number(c))===c&&c<n.length||ui&&o["$"+c]instanceof Symbol||(yg.call(/[^\w$]/,c)?r.push(e(c,n)+": "+e(n[c],n)):r.push(c+": "+e(n[c],n))));if(typeof zl=="function")for(var u=0;u<s.length;u++)bg.call(n,s[u])&&r.push("["+e(s[u])+"]: "+e(n[s[u]],n));return r}var C_=wi,P_=j,Ga=function(n,e,t){for(var r=n,i;(i=r.next)!=null;r=i)if(i.key===e)return r.next=i.next,t||(i.next=n.next,n.next=i),i},R_=function(n,e){if(n){var t=Ga(n,e);return t&&t.value}},D_=function(n,e,t){var r=Ga(n,e);r?r.value=t:n.next={key:e,next:n.next,value:t}},L_=function(n,e){return n?!!Ga(n,e):!1},O_=function(n,e){if(n)return Ga(n,e,!0)},M_=function(){var e,t={assert:function(r){if(!t.has(r))throw new P_("Side channel does not contain "+C_(r))},delete:function(r){var i=e&&e.next,s=O_(e,r);return s&&i&&i===s&&(e=void 0),!!s},get:function(r){return R_(e,r)},has:function(r){return L_(e,r)},set:function(r,i){e||(e={next:void 0}),D_(e,r,i)}};return t},z_=ct,no=_n(),N_=wi,U_=j,Bd=z_("%Map%",!0),F_=no("Map.prototype.get",!0),Z_=no("Map.prototype.set",!0),H_=no("Map.prototype.has",!0),W_=no("Map.prototype.delete",!0),B_=no("Map.prototype.size",!0),xg=!!Bd&&function(){var e,t={assert:function(r){if(!t.has(r))throw new U_("Side channel does not contain "+N_(r))},delete:function(r){if(e){var i=W_(e,r);return B_(e)===0&&(e=void 0),i}return!1},get:function(r){if(e)return F_(e,r)},has:function(r){return e?H_(e,r):!1},set:function(r,i){e||(e=new Bd),Z_(e,r,i)}};return t},V_=ct,ja=_n(),G_=wi,ko=xg,j_=j,Ir=V_("%WeakMap%",!0),q_=ja("WeakMap.prototype.get",!0),Y_=ja("WeakMap.prototype.set",!0),X_=ja("WeakMap.prototype.has",!0),K_=ja("WeakMap.prototype.delete",!0),J_=Ir?function(){var e,t,r={assert:function(i){if(!r.has(i))throw new j_("Side channel does not contain "+G_(i))},delete:function(i){if(Ir&&i&&(typeof i=="object"||typeof i=="function")){if(e)return K_(e,i)}else if(ko&&t)return t.delete(i);return!1},get:function(i){return Ir&&i&&(typeof i=="object"||typeof i=="function")&&e?q_(e,i):t&&t.get(i)},has:function(i){return Ir&&i&&(typeof i=="object"||typeof i=="function")&&e?X_(e,i):!!t&&t.has(i)},set:function(i,s){Ir&&i&&(typeof i=="object"||typeof i=="function")?(e||(e=new Ir),Y_(e,i,s)):ko&&(t||(t=ko()),t.set(i,s))}};return r}:ko,Q_=j,ek=wi,tk=M_,nk=xg,rk=J_,ik=rk||nk||tk,sk=function(){var e,t={assert:function(r){if(!t.has(r))throw new Q_("Side channel does not contain "+ek(r))},delete:function(r){return!!e&&e.delete(r)},get:function(r){return e&&e.get(r)},has:function(r){return!!e&&e.has(r)},set:function(r,i){e||(e=ik()),e.set(r,i)}};return t},ok=tn,Li=sk(),Ut=j,Ou={assert:function(n,e){if(!n||typeof n!="object"&&typeof n!="function")throw new Ut("`O` is not an object");if(typeof e!="string")throw new Ut("`slot` must be a string");if(Li.assert(n),!Ou.has(n,e))throw new Ut("`"+e+"` is not present on `O`")},get:function(n,e){if(!n||typeof n!="object"&&typeof n!="function")throw new Ut("`O` is not an object");if(typeof e!="string")throw new Ut("`slot` must be a string");var t=Li.get(n);return t&&t["$"+e]},has:function(n,e){if(!n||typeof n!="object"&&typeof n!="function")throw new Ut("`O` is not an object");if(typeof e!="string")throw new Ut("`slot` must be a string");var t=Li.get(n);return!!t&&ok(t,"$"+e)},set:function(n,e,t){if(!n||typeof n!="object"&&typeof n!="function")throw new Ut("`O` is not an object");if(typeof e!="string")throw new Ut("`slot` must be a string");var r=Li.get(n);r||(r={},Li.set(n,r)),r["$"+e]=t}};Object.freeze&&Object.freeze(Ou);var Mu=Ou,Ag=Qt,gn=Mu,ro=function n(e,t){if(!(this instanceof n))return new n(e,t);if(e!=="normal"&&e!=="break"&&e!=="continue"&&e!=="return"&&e!=="throw")throw new Ag('Assertion failed: `type` must be one of "normal", "break", "continue", "return", or "throw"');gn.set(this,"[[Type]]",e),gn.set(this,"[[Value]]",t)};ro.prototype.type=function(){return gn.get(this,"[[Type]]")};ro.prototype.value=function(){return gn.get(this,"[[Value]]")};ro.prototype["?"]=function(){var e=gn.get(this,"[[Type]]"),t=gn.get(this,"[[Value]]");if(e==="throw")throw t;return t};ro.prototype["!"]=function(){var e=gn.get(this,"[[Type]]");if(e!=="normal")throw new Ag('Assertion failed: Completion Record is not of type "normal"');return gn.get(this,"[[Value]]")};var zu=ro,ak=zu,Nu=function(e){return new ak("normal",e)},Ul,Vd;function lk(){if(Vd)return Ul;Vd=1;var n=mi;return Ul=function(){return n()&&!!Symbol.toStringTag},Ul}var ck=ct,Gd=ck("%Object.defineProperty%",!0),uk=lk()(),hk=tn,dk=j,Eo=uk?Symbol.toStringTag:null,$g=function(e,t){var r=arguments.length>2&&!!arguments[2]&&arguments[2].force,i=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof r<"u"&&typeof r!="boolean"||typeof i<"u"&&typeof i!="boolean")throw new dk("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");Eo&&(r||!hk(e,Eo))&&(Gd?Gd(e,Eo,{configurable:!i,enumerable:!1,value:t,writable:!1}):e[Eo]=t)},Tg={exports:{}},pk=ct,jd=Vf,fk=Wa(),qd=gi,Yd=j,gk=pk("%Math.floor%"),mk=function(e,t){if(typeof e!="function")throw new Yd("`fn` is not a function");if(typeof t!="number"||t<0||t>4294967295||gk(t)!==t)throw new Yd("`length` must be a positive 32-bit integer");var r=arguments.length>2&&!!arguments[2],i=!0,s=!0;if("length"in e&&qd){var o=qd(e,"length");o&&!o.configurable&&(i=!1),o&&!o.writable&&(s=!1)}return(i||s||!r)&&(fk?jd(e,"length",t,!0,!0):jd(e,"length",t)),e},vk=Ks,yk=xu,bk=ng,wk=function(){return bk(vk,yk,arguments)};(function(n){var e=mk,t=Xs,r=Ba,i=wk;n.exports=function(o){var a=r(arguments),c=1+o.length-(arguments.length-1);return e(a,c>0?c:0,!0)},t?t(n.exports,"apply",{value:i}):n.exports.apply=i})(Tg);var Uu=Tg.exports,Sk=function(e,t){for(var r=0;r<e.length;r+=1)if(!t(e[r],r,e))return!1;return!0},_k=Object,kk=function(e){return e&&typeof e=="object"&&(typeof e["[[ResourceValue]]"]>"u"||_k(e["[[ResourceValue]]"])===e["[[ResourceValue]]"])&&(e["[[Hint]]"]==="SYNC-DISPOSE"||e["[[Hint]]"]==="ASYNC-DISPOSE")&&(typeof e["[[DisposeMethod]]"]=="function"||typeof e["[[DisposeMethod]]"]>"u")},Ek=tn,xk=Au(),Ak=Sk,$k=kk,Tk=function(e){return e&&typeof e=="object"&&Ek(e,"[[DisposableResourceStack]]")&&xk(e["[[DisposableResourceStack]]"])&&(e["[[DisposableResourceStack]]"].length===0||Ak(e["[[DisposableResourceStack]]"],$k))},Ik=en,Ck=function(e){if(e===null)return"Null";if(typeof e>"u")return"Undefined";if(Ik(e))return"Object";if(typeof e=="number")return"Number";if(typeof e=="boolean")return"Boolean";if(typeof e=="string")return"String"},Pk=Ck,Fu=function(e){return typeof e=="symbol"?"Symbol":typeof e=="bigint"?"BigInt":Pk(e)},Rk=j,Dk=wi,Lk=yi,Ok=function(e,t){if(!Lk(t))throw new Rk("Assertion failed: P is not a Property Key, got "+Dk(t));return e[t]},Xd=j,Mk=Ok,zk=bi,Nk=yi,Kd=wi,Uk=function(e,t){if(!Nk(t))throw new Xd("Assertion failed: P is not a Property Key");var r=Mk(e,t);if(r!=null){if(!zk(r))throw new Xd(Kd(t)+" is not a function: "+Kd(r));return r}},xc={exports:{}},Fk=ct,Zk=Fk,Jd=Zk("%Reflect.construct%",!0),la=to;try{la({},"",{"[[Get]]":function(){}})}catch{la=null}if(la&&Jd){var Qd={},ep={};la(ep,"length",{"[[Get]]":function(){throw Qd},"[[Enumerable]]":!0}),xc.exports=function(e){try{Jd(e,ep)}catch(t){return t===Qd}}}else xc.exports=function(e){return typeof e=="function"&&!!e.prototype};var Hk=xc.exports,Fl=j,tp=bi,Wk=Hk,Bk=function(e){if(!Wk(e))throw new Fl("C must be a constructor");var t={"[[Resolve]]":void 0,"[[Reject]]":void 0},r=new e(function(i,s){if(typeof t["[[Resolve]]"]<"u"||typeof t["[[Reject]]"]<"u")throw new Fl("executor has already been called");t["[[Resolve]]"]=i,t["[[Reject]]"]=s});if(!tp(t["[[Resolve]]"])||!tp(t["[[Reject]]"]))throw new Fl("executor must provide valid resolve and reject functions");return{"[[Promise]]":r,"[[Resolve]]":t["[[Resolve]]"],"[[Reject]]":t["[[Reject]]"]}},np=Qt,Vk=j,Zl=Va,rp=Uk,Gk=Bk,jk=Fu,ip=Cu(),sp=Pu(),qk=function(e,t){if(jk(e)!=="Object")throw new Vk("`V` must be an Object");if(t!=="SYNC-DISPOSE"&&t!=="ASYNC-DISPOSE")throw new np("Assertion failed: `hint` must be `~SYNC-DISPOSE~` or `~ASYNC-DISPOSE~`");var r;if(t==="ASYNC-DISPOSE"&&sp&&(r=rp(e,sp)),!r){if(!ip)throw new np("`Symbol.dispose` is not supported");if(r=rp(e,ip),typeof r<"u")return function(){var i=this;if(t==="ASYNC-DISPOSE"){var s=Gk(Promise);try{Zl(r,i),Zl(s["[[Resolve]]"],void 0,[void 0])}catch(o){s["[[Reject]]"](o)}return s["[[Promise]]"]}Zl(r,i)}}return r},Yk=Qt,Hl=j,Xk=bi,Kk=Fu,Jk=qk,Qk=function(e,t){if(t!=="SYNC-DISPOSE"&&t!=="ASYNC-DISPOSE")throw new Yk("Assertion failed: `hint` must be `~SYNC-DISPOSE~` or `~ASYNC-DISPOSE~`");var r;if(arguments.length<3)if(e==null)e=void 0,r=void 0;else{if(typeof e<"u"&&Kk(e)!=="Object")throw new Hl("`V` must be an Object, or `null` or `undefined`");if(r=Jk(e,t),typeof r>"u")throw new Hl("dispose method must not be `undefined` on `V` when an object `V` is provided")}else if(r=arguments[2],!Xk(r))throw new Hl("`method`, when provided, must be a function");return{"[[ResourceValue]]":e,"[[Hint]]":t,"[[DisposeMethod]]":r}},eE=Qt,xo=j,tE=Tk,op=Qk,nE=_n(),rE=nE("Array.prototype.push"),Ig=function(e,t,r){if(!tE(e))throw new xo("Assertion failed: `disposeCapability` must be a DisposeCapability Record");if(r!=="SYNC-DISPOSE"&&r!=="ASYNC-DISPOSE")throw new eE("Assertion failed: `hint` must be `~SYNC-DISPOSE~` or `~ASYNC-DISPOSE~`");var i=arguments.length>3?arguments[3]:void 0;if(arguments.length>3&&typeof i!="function")throw new xo("Assertion failed: `method`, when present, must be a function");if(!e["[[DisposableResourceStack]]"])throw new xo("Assertion failed: `disposeCapability.[[DisposableResourceStack]]` must not be ~EMPTY~");var s;if(arguments.length<4){if(t==null&&r==="SYNC_DISPOSE")return"UNUSED";s=op(t,r)}else{if(typeof t<"u")throw new xo("Assertion failed: `V` must be undefined when `method` is present");s=op(void 0,r,i)}return rE(e["[[DisposableResourceStack]]"],s),"UNUSED"},Wl,ap;function Zu(){if(ap)return Wl;ap=1;var n=ct,e=Uu,t=Qt,r=n("%Promise.resolve%",!0),i=r&&e(r);return Wl=function(o,a){if(!i)throw new t("This environment does not support Promises.");return i(o,a)},Wl}var Bl,lp;function iE(){if(lp)return Bl;lp=1;var n=ct,e=Qt,t=n("%Promise%",!0),r=Va,i=Zu(),s=Fu;return Bl=function(a,c,u){if(typeof a<"u"&&s(a)!=="Object")throw new e("Assertion failed: `V` must be `undefined` or an Object");if(c!=="SYNC-DISPOSE"&&c!=="ASYNC-DISPOSE")throw new e("Assertion failed: `hint` must be `~SYNC-DISPOSE~` or `~ASYNC-DISPOSE~`");if(typeof u<"u"&&typeof u!="function")throw new e("Assertion failed: `method` must be `undefined` or a function");var h=typeof u>"u"?u:r(u,a);if(c==="ASYNC-DISPOSE")return i(t,h)},Bl}var Vl,cp;function sE(){if(cp)return Vl;cp=1;var n=zu;return Vl=function(t){return new n("throw",t)},Vl}var oE=ct,Gl=Qt,up=j,aE=oE("%Promise%",!0),lE=_n(),hp=lE("Promise.prototype.then",!0),cE=zu,dp=iE(),uE=Nu,hE=Zu(),pp=sE(),dE=vg(),Cg=function(e,t){if(!(t instanceof cE))throw new up("`completion` must be a Completion Record");var r=e["[[DisposableResourceStack]]"];if(!r)throw new up("Assertion failed: `disposeCapability.[[DisposableResourceStack]]` must not be ~EMPTY~");for(var i,s=r.length-1;s>=0;s-=1)if(!i)i=r[s]["[[Hint]]"];else if(i!==r[s]["[[Hint]]"])throw new Gl("mixed hint stacks are not supported");for(var o=i==="ASYNC-DISPOSE"&&hE(aE,t),a=function(v){if(t.type()==="throw"){var g=t.value(),E=new dE(v,g);t=pp(E)}else t=pp(v)},c=i==="ASYNC-DISPOSE"&&function(g){return hp(o,function(){var E=dp(g["[[ResourceValue]]"],g["[[Hint]]"],g["[[DisposeMethod]]"]);if(!E)throw new Gl("Assertion failed: non-`~ASYNC-DISPOSE~` resource returned a promise from Dispose");return hp(E,uE)},a)},u=r.length-1;u>=0;u-=1)if(i==="ASYNC-DISPOSE")o=c(r[u]);else{var h=r[u];try{var p=dp(h["[[ResourceValue]]"],h["[[Hint]]"],h["[[DisposeMethod]]"]);if(p)throw new Gl("Assertion failed: `~SYNC-DISPOSE~` resource returned something from Dispose")}catch(v){a(v)}}return e["[[DisposableResourceStack]]"]=null,i==="ASYNC-DISPOSE"?o:t},Pg=function(){var e=[];return{"[[DisposableResourceStack]]":e}},qa=Su,Hu=j,pE=Va,Si=Tu,fE=to,Rg=bi,gE=Nu,Ge=Mu,mE=$g,Dg=vr.supportsDescriptors,vE=Uu,Wu=Ig,yE=Cg,Lg=Pg,fp=Cu(),ot=function n(){if(!(this instanceof n)||Ge.has(this,"[[DisposableState]]")||Ge.has(this,"[[DisposeCapability]]"))throw new Hu("can only be used with new");Ge.set(this,"[[DisposableState]]","PENDING"),Ge.set(this,"[[DisposeCapability]]",Lg())},Og=function(){var e=this;return Ge.assert(e,"[[DisposableState]]"),Ge.get(e,"[[DisposableState]]")==="DISPOSED"},io=vE(Og);Dg?fE(ot.prototype,"disposed",{"[[Configurable]]":!0,"[[Enumerable]]":!1,"[[Get]]":Og}):ot.prototype.disposed=!1;var Mg=function(e){Ge.set(e,"[[DisposableState]]","DISPOSED"),Dg||(e.disposed=!0)};Si(ot.prototype,"dispose",function(){var e=this;if(!io(e))return Mg(e),yE(Ge.get(e,"[[DisposeCapability]]"),gE())["?"]()});Si(ot.prototype,"use",function(e){var t=this;if(io(t))throw new qa("a disposed stack can not use anything new");return Wu(Ge.get(t,"[[DisposeCapability]]"),e,"SYNC-DISPOSE"),e});Si(ot.prototype,"adopt",function(e,t){var r=this;if(io(r))throw new qa("a disposed stack can not use anything new");if(!Rg(t))throw new Hu("`onDispose` must be a function");var i=function(){return pE(t,void 0,[e])};return Wu(Ge.get(r,"[[DisposeCapability]]"),void 0,"SYNC-DISPOSE",i),e});Si(ot.prototype,"defer",function(e){var t=this;if(io(t))throw new qa("a disposed stack can not defer anything new");if(!Rg(e))throw new Hu("`onDispose` must be a function");Wu(Ge.get(t,"[[DisposeCapability]]"),void 0,"SYNC-DISPOSE",e)});Si(ot.prototype,"move",function(){var e=this;if(io(e))throw new qa("a disposed stack can not use anything new");var t=new ot;return Ge.set(t,"[[DisposeCapability]]",Ge.get(e,"[[DisposeCapability]]")),Ge.set(e,"[[DisposeCapability]]",Lg()),Mg(e),t});fp&&Si(ot.prototype,fp,ot.prototype.dispose);mE(ot.prototype,"DisposableStack");var bE=ot,wE=bE,SE=function(){return typeof DisposableStack=="function"?DisposableStack:wE},_E=vr,kE=bu(),EE=SE,xE=function(){var e=EE();return _E(kE,{DisposableStack:e},{DisposableStack:!0}),e},AE=ct,Ya=Su,Bu=j,gp=AE("%Promise%",!0),Vu=Ig,$E=Va,_i=Tu,TE=to,IE=Cg,zg=bi,Ng=Pg,CE=Nu,mp=Zu(),je=Mu,PE=$g,Ug=vr.supportsDescriptors,RE=Uu,DE=_n(),LE=DE("Promise.prototype.then",!0),vp=Pu(),at=function n(){if(!(this instanceof n)||je.has(this,"[[AsyncDisposableState]]")||je.has(this,"[[DisposeCapability]]"))throw new Bu("can only be used with new");je.set(this,"[[AsyncDisposableState]]","pending"),je.set(this,"[[DisposeCapability]]",Ng())},Fg=function(){var e=this;return je.assert(e,"[[AsyncDisposableState]]"),je.get(e,"[[AsyncDisposableState]]")==="disposed"},so=RE(Fg);Ug?TE(at.prototype,"disposed",{"[[Configurable]]":!0,"[[Enumerable]]":!1,"[[Get]]":Fg}):at.prototype.disposed=!1;var Zg=function(e){je.set(e,"[[AsyncDisposableState]]","disposed"),Ug||(e.disposed=!0)};_i(at.prototype,"disposeAsync",function(){var e=this;return so(e)?mp(gp):(Zg(e),LE(mp(gp,IE(je.get(e,"[[DisposeCapability]]"),CE())),function(t){return t["?"]()}))});_i(at.prototype,"use",function(e){var t=this;if(so(t))throw new Ya("a disposed stack can not use anything new");return Vu(je.get(t,"[[DisposeCapability]]"),e,"ASYNC-DISPOSE"),e});_i(at.prototype,"adopt",function(e,t){var r=this;if(so(r))throw new Ya("a disposed stack can not use anything new");if(!zg(t))throw new Bu("`onDisposeAsync` must be a function");var i=function(){return $E(t,void 0,[e])};return i.value=e,Vu(je.get(r,"[[DisposeCapability]]"),void 0,"ASYNC-DISPOSE",i),e});_i(at.prototype,"defer",function(e){var t=this;if(so(t))throw new Ya("a disposed stack can not defer anything new");if(!zg(e))throw new Bu("`onDispose` must be a function");Vu(je.get(t,"[[DisposeCapability]]"),void 0,"ASYNC-DISPOSE",e)});_i(at.prototype,"move",function(){var e=this;if(so(e))throw new Ya("a disposed stack can not use anything new");var t=new at;return je.set(t,"[[DisposeCapability]]",je.get(e,"[[DisposeCapability]]")),je.set(e,"[[DisposeCapability]]",Ng()),Zg(e),t});vp&&_i(at.prototype,vp,at.prototype.disposeAsync);PE(at.prototype,"AsyncDisposableStack");var OE=at,ME=OE,zE=function(){return typeof AsyncDisposableStack=="function"?AsyncDisposableStack:ME},NE=vr,UE=bu(),FE=zE,ZE=function(){var e=FE();return NE(UE,{AsyncDisposableStack:e},{AsyncDisposableStack:!0}),e},HE=NS,WE=GS,BE=xE,VE=ZE,GE=function(){HE(),WE(),BE(),VE()};GE();const yp=new WeakMap;function jE(n){return(typeof n=="object"||typeof n=="function")&&n!==null&&"then"in n&&typeof n.then=="function"}function Cr(n){return typeof n=="string"?n:typeof n=="symbol"?n.description??n.toString():n.name||"(anonymous class)"}function bp(){return new Error("register(Key, factory) requires a factory function. Wrap existing instances as () => instance.")}function qE(){return new Error("register(Key, factory) does not accept async factories. Await setup before registering.")}class YE{constructor(){b(this,"entries",new Map);b(this,"constructionStack",[])}register(e,t){if(t===void 0){if(typeof e!="function")throw bp();this.validateClassRegistration(e),this.storeFactory(e,()=>this.instantiateClass(e));return}if(typeof t!="function")throw bp();if(t.constructor.name==="AsyncFunction")throw qE();this.storeFactory(e,t)}has(e){var t;return((t=this.entries.get(e))==null?void 0:t.factory)!==void 0}resolve(e){return this.resolveAny(e)}storeFactory(e,t){const r=this.getOrCreateEntry(e);r.factory=t,r.instance=void 0,r.error=void 0}validateClassRegistration(e){const t=yp.get(e);if(t){if(e.length!==t.length)throw new Error(`${Cr(e)} cannot be registered with register(Class). @injectable(...) declared ${t.length} dependencies but constructor arity is ${e.length}. Use register(Key, () => value) instead.`);return}if(e.length!==0)throw new Error(`${Cr(e)} cannot be registered with register(Class). Undecorated classes must have zero required constructor parameters. Use register(Key, () => value) instead.`)}instantiateClass(e){const t=yp.get(e);if(!t)return new e;const r=t.map(i=>this.resolveAny(i));return new e(...r)}resolveAny(e){return this.getOrCreateEntry(e).proxy}getOrCreateEntry(e){let t=this.entries.get(e);return t||(t={key:e},t.proxy=this.createProxy(t),this.entries.set(e,t),t)}createProxy(e){return new Proxy({},{get:(t,r)=>{if(r==="then")return;const i=this.getInstance(e),s=Reflect.get(i,r,i);return typeof s=="function"?s.bind(i):s},set:(t,r,i)=>{const s=this.getInstance(e);return Reflect.set(s,r,i,s)},has:(t,r)=>{const i=this.getInstance(e);return r in i}})}getInstance(e){if(e.instance)return e.instance;if(e.error)throw e.error;if(!e.factory)throw new Error(`${Cr(e.key)} was resolved but never registered`);const t=this.constructionStack.indexOf(e.key);if(t!==-1){const r=[...this.constructionStack.slice(t),e.key].map(i=>Cr(i)).join(" -> ");throw new Error(`Circular dependency detected: ${r}`)}this.constructionStack.push(e.key);try{const r=e.factory();if(jE(r))throw new Error(`Factory for ${Cr(e.key)} returned a Promise. Await setup before registering.`);if(typeof r!="object"||r===null)throw new Error(`Factory for ${Cr(e.key)} returned a non-object value. Wrap primitives in an object.`);return e.instance=r,r}catch(r){throw e.error=r,r}finally{this.constructionStack.pop()}}}const qe=new YE,XE=new Set(["target","currentTarget","eventPhase","defaultPrevented","isTrusted","timeStamp","srcElement","returnValue","cancelBubble","NONE","CAPTURING_PHASE","AT_TARGET","BUBBLING_PHASE","composedPath","stopPropagation","stopImmediatePropagation","preventDefault","initEvent"]);function KE(n){for(const e of Object.keys(n))if(XE.has(e))throw new Error(`Event payload key "${e}" is reserved; choose a different property name`)}function JE(n,e){KE(e);for(const t of Object.keys(e))Object.defineProperty(n,t,{value:e[t],writable:!0,enumerable:!0,configurable:!0})}function tt(){class n extends Event{constructor(t,r){const{type:i,bubbles:s,cancelable:o,composed:a,...c}=r??{};if(i!==void 0)throw new Error('Do not pass "type" in init; use the constructor argument instead');super(t,{bubbles:s,cancelable:o,composed:a}),JE(this,c)}}return n}class wt extends globalThis.EventTarget{}function QE(n,e,t){const r=n.dispose.bind(n);n.dispose=()=>{if(!e())return t(),r()}}function ki(n){var t;class e extends n{constructor(...s){super(...s);w(this,t,!1);QE(this,()=>l(this,t),()=>{x(this,t,!0)})}[Symbol.dispose](){this.dispose()}get disposed(){return l(this,t)}}return t=new WeakMap,e}const ex=tt(),tx=tt(),jo=tt(),Hg="0123456789ABCDEFGHJKMNPQRSTVWXYZ",ca=32,nx=16,Wg=10,wp=0xffffffffffff;var Un;(function(n){n.Base32IncorrectEncoding="B32_ENC_INVALID",n.DecodeTimeInvalidCharacter="DEC_TIME_CHAR",n.DecodeTimeValueMalformed="DEC_TIME_MALFORMED",n.EncodeTimeNegative="ENC_TIME_NEG",n.EncodeTimeSizeExceeded="ENC_TIME_SIZE_EXCEED",n.EncodeTimeValueMalformed="ENC_TIME_MALFORMED",n.PRNGDetectFailure="PRNG_DETECT",n.ULIDInvalid="ULID_INVALID",n.Unexpected="UNEXPECTED",n.UUIDInvalid="UUID_INVALID"})(Un||(Un={}));class Wi extends Error{constructor(e,t){super(`${t} (${e})`),this.name="ULIDError",this.code=e}}function rx(n){const e=Math.floor(n()*ca)%ca;return Hg.charAt(e)}function ix(n){const e=sx(),t=e&&(e.crypto||e.msCrypto)||null;if(typeof(t==null?void 0:t.getRandomValues)=="function")return()=>{const r=new Uint8Array(1);return t.getRandomValues(r),r[0]/256};if(typeof(t==null?void 0:t.randomBytes)=="function")return()=>t.randomBytes(1).readUInt8()/256;throw new Wi(Un.PRNGDetectFailure,"Failed to find a reliable PRNG")}function sx(){return lx()?self:typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:null}function ox(n,e){let t="";for(;n>0;n--)t=rx(e)+t;return t}function ax(n,e=Wg){if(isNaN(n))throw new Wi(Un.EncodeTimeValueMalformed,`Time must be a number: ${n}`);if(n>wp)throw new Wi(Un.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${wp}: ${n}`);if(n<0)throw new Wi(Un.EncodeTimeNegative,`Time must be positive: ${n}`);if(Number.isInteger(n)===!1)throw new Wi(Un.EncodeTimeValueMalformed,`Time must be an integer: ${n}`);let t,r="";for(let i=e;i>0;i--)t=n%ca,r=Hg.charAt(t)+r,n=(n-t)/ca;return r}function lx(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Gu(n,e){const t=ix(),r=Date.now();return ax(r,Wg)+ox(nx,t)}const Lt=4,et=6,Bg=2,Ac=2,cx=Lt,ux=et,ju="auto",mn="auto",On=120,Sp=50,he=16,hr=On*Lt+he*(Lt-1),ua=On*et+he*(et-1),hx=hr+he*2,dx=200,px=4,Ao=150,fx=10,_p=2,kp=8,gx=300,mx=4;function Vg(n){return qg(n)}function Gg(n,e){return qg(n.flatMap(t=>Xg(t,e)))}function jg(n){const e=[],t=new Set;for(const r of n){if(r.type==="row"){e.push(`Top-level rows are invalid: ${r.id}`);continue}Kg(r,"strip",e,t)}return{valid:e.length===0,errors:e}}function Fr(n){const e=Vg(n),t=jg(e);if(!t.valid)throw new Error(`Invalid layout: ${t.errors.join("; ")}`);return{totalNodes:e.length,nodes:e.filter(r=>r.type!=="row").map(wx)}}function qg(n){const e=[];for(const t of n){const r=Yg(t);for(const i of r){if(i.type==="row"){e.push(...i.children.map(Kt));continue}e.push(i)}}return e}function Yg(n){switch(n.type){case"card":return[Kt(n)];case"row":{const e=n.children.map(Kt);return e.length===0?[]:e.length===1?[e[0]]:[{...n,children:e}]}case"stack":{const e=[];for(const t of n.children){const r=Yg(t);for(const i of r){if(i.type==="stack"){e.push(...i.children.map($c));continue}if(i.type==="row"){e.push({...i,children:i.children.map(Kt)});continue}e.push(Kt(i))}}return e.length===0?[]:e.length===1?[$c(e[0])]:[{...n,children:e}]}}}function Xg(n,e){switch(n.type){case"card":return n.artifactID===e?[]:[Kt(n)];case"row":{const t=n.children.filter(r=>r.artifactID!==e).map(Kt);return t.length===0?[]:t.length===1?[t[0]]:[{...n,children:t}]}case"stack":{const t=n.children.flatMap(r=>Xg(r,e).filter(s=>s.type!=="stack"));return t.length===0?[]:t.length===1?[$c(t[0])]:[{...n,children:t}]}}}function Kg(n,e,t,r){switch(n.type){case"card":Jg(n,e,t,r);return;case"row":vx(n,e,t,r);return;case"stack":yx(n,e,t,r);return}}function Jg(n,e,t,r){qu(n.id,t),typeof n.artifactID!="string"||n.artifactID.length===0?t.push(`Card ${n.id} is missing artifactID`):r.has(n.artifactID)?t.push(`Duplicate artifactID in layout: ${n.artifactID}`):r.add(n.artifactID),bx(n.width)||t.push(`Card ${n.id} width must be an integer in the range 2-4`),Qg(n.height)||t.push(`Card ${n.id} height must be an integer in the range 2-6 or "auto"`);const i=Mn(n.width);e==="row"&&i<Bg&&t.push(`Row child ${n.id} must be at least 2 columns wide`)}function vx(n,e,t,r){if(qu(n.id,t),e!=="stack"&&t.push(`Row ${n.id} may only appear inside a stack`),Qg(n.height,mx)||t.push(`Row ${n.id} height must be an integer in the range 2-4 or "auto"`),!Array.isArray(n.children)||n.children.length===0){t.push(`Row ${n.id} must contain card nodes`);return}let i=0;for(const s of n.children){if(s.type!=="card"){t.push(`Row ${n.id} must contain only card nodes`);continue}Jg(s,"row",t,r),i+=Mn(s.width)}i!==Lt&&t.push(`Row ${n.id} children must sum to 4 columns`)}function yx(n,e,t,r){if(qu(n.id,t),e!=="strip"&&t.push(`Invalid nested stack at ${n.id}; stack children cannot contain another nested stack`),!Array.isArray(n.children)||n.children.length===0){t.push(`Stack ${n.id} must contain at least one child`);return}let i=0,s=0;for(const a of n.children){if(a.type==="stack"){t.push(`Stack ${n.id} cannot contain another nested stack`);continue}if(Kg(a,"stack",t,r),a.height===mn){s+=1;continue}i+=a.height}if(i>et&&t.push(`Stack ${n.id} exceeds the 6-row budget`),s===0)return;const o=et-i;if(o<s*Ac||o%s!==0){t.push(`Stack ${n.id} has auto-height children that cannot resolve to whole height >= 2`);return}o/s<Ac&&t.push(`Stack ${n.id} has auto-height children below the minimum row size`)}function qu(n,e){(typeof n!="string"||n.length===0)&&e.push(`Node id must be a non-empty string: ${String(n)}`)}function bx(n){return n===ju||Number.isInteger(n)&&n>=Bg&&n<=cx}function Qg(n,e=ux){return n===mn||Number.isInteger(n)&&n>=Ac&&n<=e}function Mn(n){return n===ju?Lt:n}function wx(n){if(n.type==="card")return{id:n.id,type:"card",width:Mn(n.width),cards:[{id:n.id,artifactID:n.artifactID,col:1,row:1,width:Mn(n.width),height:em(n.height,et)}]};const e=Sx(n.children),t=[];let r=1;for(let i=0;i<n.children.length;i+=1){const s=n.children[i],o=e[i];if(s.type==="card")t.push({id:s.id,artifactID:s.artifactID,col:1,row:r,width:Mn(s.width),height:o});else{let a=1;for(const c of s.children)t.push({id:c.id,artifactID:c.artifactID,col:a,row:r,width:Mn(c.width),height:o}),a+=Mn(c.width)}r+=o}return{id:n.id,type:"stack",width:t.reduce((i,s)=>Math.max(i,s.col+s.width-1),1),cards:t}}function Sx(n){let e=0,t=0;for(const i of n)i.height===mn?t+=1:e+=i.height;const r=t>0?(et-e)/t:0;return n.map(i=>em(i.height,r))}function em(n,e){return n===mn?e:n}function Kt(n){return{...n}}function $c(n){return n.type==="card"?Kt(n):{...n,children:n.children.map(Kt)}}function tm(n,e={}){return{id:e.id??Gu(),type:"card",artifactID:n,width:e.width??ju,height:e.height??mn}}function nm(n,e){return n.some(t=>rm(t,e))}function rm(n,e){switch(n.type){case"card":return n.artifactID===e;case"row":return n.children.some(t=>t.artifactID===e);case"stack":return n.children.some(t=>rm(t,e))}}function Ep(n){return n.layout.flatMap(im)}function im(n){switch(n.type){case"card":return[n.artifactID];case"row":return n.children.map(e=>e.artifactID);case"stack":return n.children.flatMap(im)}}const K=tt(),sm=tt(),Pr=tt(),_x=tt();function kx(n){class e extends Error{constructor(r,i){super(r),this.name=n,i&&Object.assign(this,i)}}return e}const Ex=kx("RequestError"),xx=200,Ax=300;class $x{constructor(e,t){b(this,"serverURL");b(this,"token");this.serverURL=e.replace(/\/$/,""),this.token=t.token}async requestJSON(e,t,r){const i=await this.request(e,t,r!==void 0?JSON.stringify(r):void 0,r!==void 0?{"content-type":"application/json"}:void 0),s=await Tx(i);if(!i.ok||i.status<xx||i.status>=Ax)throw this.createError(typeof s.error=="string"?s.error:i.statusText,i.status);return s}async requestVoid(e,t){const r=await this.request(e,t);if(!r.ok)throw this.createError(await jl(r,r.statusText),r.status)}async requestText(e,t){const r=await this.request(e,t);if(!r.ok)throw this.createError(await jl(r,r.statusText),r.status);return r.text()}async requestRawVoid(e,t,r){const i=await this.request(e,t,r,{"content-type":"text/plain"});if(!i.ok)throw this.createError(await jl(i,i.statusText),i.status)}createError(e,t){const r={serverURL:this.serverURL};return t!==void 0&&(r.status=t),new Ex(e,r)}async request(e,t,r,i){const s=`${this.serverURL}${t}`;try{return await fetch(s,{method:e,headers:this.buildHeaders(i),body:r})}catch(o){throw this.createError(o instanceof Error?o.message:"Failed to reach server")}}buildHeaders(e){const t={...e??{}};return this.token&&(t.Authorization=`Bearer ${this.token}`),Object.keys(t).length>0?t:void 0}}async function Tx(n){try{return await n.json()}catch{const e=await n.text().catch(()=>"");return e?{message:e}:{}}}async function jl(n,e){try{const t=await n.json();if(typeof t.error=="string")return t.error;if(typeof t.message=="string")return t.message}catch{}return e}function Ix(n){return n.map(e=>`${e.name} (${e.id})`).join(", ")}var Tt,_a,om;class Cx{constructor(e){w(this,_a);w(this,Tt);x(this,Tt,e)}list(){return l(this,Tt).requestJSON("GET","/screens")}async get(e={}){const t=await m(this,_a,om).call(this,e.screenID);return l(this,Tt).requestJSON("GET",`/screens/${encodeURIComponent(t)}`)}create(e){const t={name:e.name};return e.id!==void 0&&(t.id=e.id),l(this,Tt).requestJSON("POST","/screens",t)}update(e){const{screenID:t,...r}=e;return l(this,Tt).requestJSON("PATCH",`/screens/${encodeURIComponent(t)}`,r)}remove(e){return l(this,Tt).requestJSON("DELETE",`/screens/${encodeURIComponent(e.screenID)}`)}}Tt=new WeakMap,_a=new WeakSet,om=async function(e){if(e!==void 0)return e;const{screens:t}=await this.list();if(t.length===1)return t[0].id;throw l(this,Tt).createError(`screenID is required when multiple screens exist. Available screens: ${Ix(t)}`)};var Le;class Px{constructor(e){w(this,Le);x(this,Le,e)}create(e){const t={type:e.type,title:e.title};return e.externalFilePath!==void 0&&(t.externalFilePath=e.externalFilePath),e.externalURL!==void 0&&(t.externalURL=e.externalURL),e.screenID!==void 0&&(t.screenID=e.screenID),l(this,Le).requestJSON("POST","/artifacts",t)}list(e={}){const t=new URLSearchParams;e.screenID!==void 0&&t.set("screenID",e.screenID),e.unplaced&&t.set("unplaced","true");const r=t.toString();return l(this,Le).requestJSON("GET",r?`/artifacts?${r}`:"/artifacts")}get(e){return l(this,Le).requestJSON("GET",`/artifacts/${encodeURIComponent(e.artifactID)}`)}update(e){const t={};return e.title!==void 0&&(t.title=e.title),l(this,Le).requestJSON("PATCH",`/artifacts/${encodeURIComponent(e.artifactID)}`,t)}edit(e){return l(this,Le).requestJSON("POST",`/artifacts/${encodeURIComponent(e.artifactID)}/edit`)}commitPending(e){return l(this,Le).requestJSON("POST",`/artifacts/${encodeURIComponent(e.artifactID)}/commit`)}abandonPending(e){return l(this,Le).requestVoid("POST",`/artifacts/${encodeURIComponent(e.artifactID)}/abandon`)}attach(e){return l(this,Le).requestJSON("POST",`/screens/${encodeURIComponent(e.screenID)}/artifacts/${encodeURIComponent(e.artifactID)}`)}detach(e){return l(this,Le).requestJSON("DELETE",`/screens/${encodeURIComponent(e.screenID)}/artifacts/${encodeURIComponent(e.artifactID)}`)}delete(e){return l(this,Le).requestJSON("DELETE",`/artifacts/${encodeURIComponent(e.artifactID)}`)}getContent(e){return l(this,Le).requestText("GET",`/artifacts/${encodeURIComponent(e.artifactID)}/content`)}putContent(e){return l(this,Le).requestRawVoid("PUT",`/artifacts/${encodeURIComponent(e.artifactID)}/content`,e.content)}}Le=new WeakMap;var Hn;class Rx{constructor(e){w(this,Hn);x(this,Hn,e)}state(){return l(this,Hn).requestJSON("GET","/viewer/state")}setActive(e){return l(this,Hn).requestJSON("PUT","/viewer/active-screen",{screenID:e.screenID})}focus(e){const t={artifactID:e.artifactID};return e.screenID!==void 0&&(t.screenID=e.screenID),l(this,Hn).requestJSON("POST","/viewer/focus",t)}}Hn=new WeakMap;var us;class Dx{constructor(e){w(this,us);x(this,us,e)}async list(){const{views:e}=await l(this,us).requestJSON("GET","/views");return e}}us=new WeakMap;var Wt;class Lx{constructor(e,t={}){b(this,"screens");b(this,"artifacts");b(this,"viewer");b(this,"views");w(this,Wt);x(this,Wt,new $x(e,t)),this.screens=new Cx(l(this,Wt)),this.artifacts=new Px(l(this,Wt)),this.viewer=new Rx(l(this,Wt)),this.views=new Dx(l(this,Wt))}health(){return l(this,Wt).requestJSON("GET","/health")}}Wt=new WeakMap;const Ox={focusCommandInput:{label:"Focus Command Input",trigger:{key:"k",meta:!0}}},Mx=ki(wt);var Wn,We,Bn,ze,dt,on,an,J,Pn,am,hs,lm,cm,um,hm,Tc,Ic,Cc,dm;class zx extends Mx{constructor(t){var i;super();w(this,J);b(this,"id");b(this,"server");w(this,Wn);w(this,We,new Map);w(this,Bn);w(this,ze);w(this,dt);w(this,on);w(this,an,null);w(this,hs,t=>{if(this.disposed)return;const r=t.event;switch(r.type){case"screen-updated":r.screen.id===this.id&&m(this,J,lm).call(this,r.screen);break;case"artifact-created":break;case"artifact-attached":r.screenID===this.id&&m(this,J,cm).call(this,r.cardID,r.artifact);break;case"artifact-updated":m(this,J,um).call(this,r.artifact);break;case"artifact-removed":r.screenID===this.id&&m(this,J,hm).call(this,r.artifactID);break;case"artifact-content-changed":l(this,We).has(r.artifactID)&&this.dispatchEvent(new _x("artifact-content-changed",{artifactID:r.artifactID}));break}});this.id=t.screen.id,this.server=t.server,x(this,Wn,t.localStore),x(this,Bn,t.screen.name),x(this,ze,structuredClone(t.screen.layout)),x(this,dt,t.screen.starred);const r=((i=l(this,Wn).get().screens[this.id])==null?void 0:i.scrollPosition)??0;x(this,on,Math.max(0,r)),this.server.addEventListener("server-event",l(this,hs)),m(this,J,am).call(this)}get name(){return l(this,Bn)}get layout(){return l(this,ze)}get starred(){return l(this,dt)}get scrollPosition(){return l(this,on)}get artifacts(){return l(this,We)}setScrollPosition(t){m(this,J,Pn).call(this);const r=Math.max(0,t);r!==l(this,on)&&(x(this,on,r),m(this,J,dm).call(this),this.dispatchEvent(new K("change")))}setLayout(t){m(this,J,Pn).call(this);const r=Vg(t);if(!jg(r).valid)return;const s=m(this,J,Ic).call(this);x(this,ze,r),x(this,an,{layout:r,snapshot:s}),this.dispatchEvent(new K("change")),this.server.client.screens.update({screenID:this.id,layout:r.map(o=>structuredClone(o))}).catch(()=>{var o;this.disposed||((o=l(this,an))==null?void 0:o.layout)===r&&(x(this,an,null),m(this,J,Cc).call(this,s),this.dispatchEvent(new K("change")))})}rename(t){m(this,J,Pn).call(this),x(this,Bn,t),this.dispatchEvent(new K("change")),this.server.client.screens.update({screenID:this.id,name:t}).catch(()=>{})}setStarred(t){if(m(this,J,Pn).call(this),l(this,dt)===t)return;const r=l(this,dt);x(this,dt,t),this.dispatchEvent(new K("change")),this.server.client.screens.update({screenID:this.id,starred:t}).catch(()=>{this.disposed||l(this,dt)===t&&(x(this,dt,r),this.dispatchEvent(new K("change")))})}async remove(){m(this,J,Pn).call(this),await this.server.client.screens.remove({screenID:this.id})}removeArtifact(t){if(m(this,J,Pn).call(this),!l(this,We).has(t))return;const r=m(this,J,Ic).call(this);m(this,J,Tc).call(this,t),this.dispatchEvent(new K("change")),this.server.client.artifacts.detach({artifactID:t,screenID:this.id}).catch(()=>{this.disposed||(m(this,J,Cc).call(this,r),this.dispatchEvent(new K("change")))})}dispose(){this.server.removeEventListener("server-event",l(this,hs))}}Wn=new WeakMap,We=new WeakMap,Bn=new WeakMap,ze=new WeakMap,dt=new WeakMap,on=new WeakMap,an=new WeakMap,J=new WeakSet,Pn=function(){if(this.disposed)throw new Error("ScreenModel is disposed")},am=async function(){try{const t=await this.server.client.screens.get({screenID:this.id});if(this.disposed)return;for(const r of t.artifacts)l(this,We).set(r.id,r);this.dispatchEvent(new K("change"))}catch{}},hs=new WeakMap,lm=function(t){l(this,an)&&x(this,an,null),x(this,Bn,t.name),x(this,ze,structuredClone(t.layout)),x(this,dt,t.starred),this.dispatchEvent(new K("change"))},cm=function(t,r){nm(l(this,ze),r.id)||x(this,ze,[...l(this,ze),tm(r.id,{id:t})]),l(this,We).set(r.id,r),this.dispatchEvent(new K("change"))},um=function(t){const r=l(this,We).get(t.id);r&&(l(this,We).set(t.id,{...r,...t}),this.dispatchEvent(new K("change")))},hm=function(t){m(this,J,Tc).call(this,t)&&this.dispatchEvent(new K("change"))},Tc=function(t){const r=l(this,We).delete(t),i=Ep({layout:l(this,ze)}).length,s=Gg(l(this,ze),t),o=Ep({layout:s}).length;return x(this,ze,s),r||i!==o},Ic=function(){return{layout:structuredClone(l(this,ze)),artifacts:new Map([...l(this,We).entries()].map(([t,r])=>[t,structuredClone(r)]))}},Cc=function(t){x(this,ze,structuredClone(t.layout)),l(this,We).clear();for(const[r,i]of t.artifacts)l(this,We).set(r,structuredClone(i))},dm=function(){const t=l(this,Wn).get();l(this,Wn).set({...t,screens:{...t.screens,[this.id]:{scrollPosition:l(this,on)}}})};const Nx=ki(wt);var nt,It,pt,ds,ps,fs,Vr,qo;class Ux extends Nx{constructor(t){super();w(this,Vr);w(this,nt);w(this,It);w(this,pt,null);w(this,ds,()=>{this.disposed||m(this,Vr,qo).call(this)});w(this,ps,()=>{this.disposed||m(this,Vr,qo).call(this)});w(this,fs,t=>{var i;if(this.disposed)return;const r=t.event;if(r.type==="screen-removed"&&((i=l(this,pt))==null?void 0:i.id)===r.screenID&&this.clearActive(),r.type==="viewer-active-screen-changed"){const s=l(this,It).servers.get(t.serverURL);s&&s.screens.has(r.screenID)&&this.setActive(t.serverURL,r.screenID)}});x(this,nt,t.localStore),x(this,It,t.serverManager),l(this,nt).addEventListener("change",l(this,ds)),l(this,It).addEventListener("change",l(this,ps)),l(this,It).addEventListener("server-event",l(this,fs)),m(this,Vr,qo).call(this)}get activeScreen(){return l(this,pt)}setActive(t,r){const i=l(this,nt).get();i.activeServerURL===t&&i.activeScreenID===r||l(this,nt).set({...i,activeServerURL:t,activeScreenID:r})}clearActive(){const t=l(this,nt).get();t.activeScreenID!==null&&l(this,nt).set({...t,activeScreenID:null})}dispose(){var t;l(this,nt).removeEventListener("change",l(this,ds)),l(this,It).removeEventListener("change",l(this,ps)),l(this,It).removeEventListener("server-event",l(this,fs)),(t=l(this,pt))==null||t.dispose(),x(this,pt,null)}}nt=new WeakMap,It=new WeakMap,pt=new WeakMap,ds=new WeakMap,ps=new WeakMap,fs=new WeakMap,Vr=new WeakSet,qo=function(){var c,u,h;const{activeServerURL:t,activeScreenID:r}=l(this,nt).get(),i=t?l(this,It).servers.get(t)??null:null,s=i&&r?i.screens.get(r)??null:null,o=((c=l(this,pt))==null?void 0:c.id)??null,a=(s==null?void 0:s.id)??null;o===a&&((u=l(this,pt))==null?void 0:u.server)===i||((h=l(this,pt))==null||h.dispose(),x(this,pt,i&&s?new zx({screen:s,server:i,localStore:l(this,nt)}):null),this.dispatchEvent(new ex("active-screen-changed")))};const Fx="Local",Zx="store-";function ht(n){return new URL(n).origin}function Hx(n){return{servers:[{url:ht(n),name:Fx}],activeServerURL:null,activeScreenID:null,screens:{}}}var Vn,Gn,jn;class Wx extends wt{constructor(t,r,i={}){super();w(this,Vn);w(this,Gn);w(this,jn);x(this,Vn,`${Zx}${t}`),x(this,Gn,i.storage??Bx());const s=l(this,Gn).getItem(l(this,Vn));s===null?(x(this,jn,r),l(this,Gn).setItem(l(this,Vn),JSON.stringify(r))):x(this,jn,JSON.parse(s))}get(){return l(this,jn)}set(t){x(this,jn,t),l(this,Gn).setItem(l(this,Vn),JSON.stringify(t)),this.dispatchEvent(new K("change"))}}Vn=new WeakMap,Gn=new WeakMap,jn=new WeakMap;function Bx(){const n=globalThis.localStorage;if(!n)throw new Error("LocalStore: no storage adapter supplied and window.localStorage is unavailable");return n}function A(n,e,t){function r(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:o,traits:new Set},enumerable:!1}),a._zod.traits.has(n))return;a._zod.traits.add(n),e(a,c);const u=o.prototype,h=Object.keys(u);for(let p=0;p<h.length;p++){const v=h[p];v in a||(a[v]=u[v].bind(a))}}const i=(t==null?void 0:t.Parent)??Object;class s extends i{}Object.defineProperty(s,"name",{value:n});function o(a){var c;const u=t!=null&&t.Parent?new s:this;r(u,a),(c=u._zod).deferred??(c.deferred=[]);for(const h of u._zod.deferred)h();return u}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:a=>{var c,u;return t!=null&&t.Parent&&a instanceof t.Parent?!0:(u=(c=a==null?void 0:a._zod)==null?void 0:c.traits)==null?void 0:u.has(n)}}),Object.defineProperty(o,"name",{value:n}),o}class Br extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class pm extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const fm={};function vn(n){return fm}function gm(n){const e=Object.values(n).filter(r=>typeof r=="number");return Object.entries(n).filter(([r,i])=>e.indexOf(+r)===-1).map(([r,i])=>i)}function Pc(n,e){return typeof e=="bigint"?e.toString():e}function Yu(n){return{get value(){{const e=n();return Object.defineProperty(this,"value",{value:e}),e}}}}function Xu(n){return n==null}function Ku(n){const e=n.startsWith("^")?1:0,t=n.endsWith("$")?n.length-1:n.length;return n.slice(e,t)}function Vx(n,e){const t=(n.toString().split(".")[1]||"").length,r=e.toString();let i=(r.split(".")[1]||"").length;if(i===0&&/\d?e-\d?/.test(r)){const c=r.match(/\d?e-(\d?)/);c!=null&&c[1]&&(i=Number.parseInt(c[1]))}const s=t>i?t:i,o=Number.parseInt(n.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return o%a/10**s}const xp=Symbol("evaluating");function ee(n,e,t){let r;Object.defineProperty(n,e,{get(){if(r!==xp)return r===void 0&&(r=xp,r=t()),r},set(i){Object.defineProperty(n,e,{value:i})},configurable:!0})}function br(n,e,t){Object.defineProperty(n,e,{value:t,writable:!0,enumerable:!0,configurable:!0})}function En(...n){const e={};for(const t of n){const r=Object.getOwnPropertyDescriptors(t);Object.assign(e,r)}return Object.defineProperties({},e)}function Ap(n){return JSON.stringify(n)}function Gx(n){return n.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const mm="captureStackTrace"in Error?Error.captureStackTrace:(...n)=>{};function ha(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}const jx=Yu(()=>{var n;if(typeof navigator<"u"&&((n=navigator==null?void 0:navigator.userAgent)!=null&&n.includes("Cloudflare")))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function hi(n){if(ha(n)===!1)return!1;const e=n.constructor;if(e===void 0||typeof e!="function")return!0;const t=e.prototype;return!(ha(t)===!1||Object.prototype.hasOwnProperty.call(t,"isPrototypeOf")===!1)}function vm(n){return hi(n)?{...n}:Array.isArray(n)?[...n]:n}const qx=new Set(["string","number","symbol"]);function di(n){return n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function xn(n,e,t){const r=new n._zod.constr(e??n._zod.def);return(!e||t!=null&&t.parent)&&(r._zod.parent=n),r}function O(n){const e=n;if(!e)return{};if(typeof e=="string")return{error:()=>e};if((e==null?void 0:e.message)!==void 0){if((e==null?void 0:e.error)!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Yx(n){return Object.keys(n).filter(e=>n[e]._zod.optin==="optional"&&n[e]._zod.optout==="optional")}const Xx={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Kx(n,e){const t=n._zod.def,r=t.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const s=En(n._zod.def,{get shape(){const o={};for(const a in e){if(!(a in t.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(o[a]=t.shape[a])}return br(this,"shape",o),o},checks:[]});return xn(n,s)}function Jx(n,e){const t=n._zod.def,r=t.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const s=En(n._zod.def,{get shape(){const o={...n._zod.def.shape};for(const a in e){if(!(a in t.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete o[a]}return br(this,"shape",o),o},checks:[]});return xn(n,s)}function Qx(n,e){if(!hi(e))throw new Error("Invalid input to extend: expected a plain object");const t=n._zod.def.checks;if(t&&t.length>0){const s=n._zod.def.shape;for(const o in e)if(Object.getOwnPropertyDescriptor(s,o)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const i=En(n._zod.def,{get shape(){const s={...n._zod.def.shape,...e};return br(this,"shape",s),s}});return xn(n,i)}function e1(n,e){if(!hi(e))throw new Error("Invalid input to safeExtend: expected a plain object");const t=En(n._zod.def,{get shape(){const r={...n._zod.def.shape,...e};return br(this,"shape",r),r}});return xn(n,t)}function t1(n,e){const t=En(n._zod.def,{get shape(){const r={...n._zod.def.shape,...e._zod.def.shape};return br(this,"shape",r),r},get catchall(){return e._zod.def.catchall},checks:[]});return xn(n,t)}function n1(n,e,t){const i=e._zod.def.checks;if(i&&i.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const o=En(e._zod.def,{get shape(){const a=e._zod.def.shape,c={...a};if(t)for(const u in t){if(!(u in a))throw new Error(`Unrecognized key: "${u}"`);t[u]&&(c[u]=n?new n({type:"optional",innerType:a[u]}):a[u])}else for(const u in a)c[u]=n?new n({type:"optional",innerType:a[u]}):a[u];return br(this,"shape",c),c},checks:[]});return xn(e,o)}function r1(n,e,t){const r=En(e._zod.def,{get shape(){const i=e._zod.def.shape,s={...i};if(t)for(const o in t){if(!(o in s))throw new Error(`Unrecognized key: "${o}"`);t[o]&&(s[o]=new n({type:"nonoptional",innerType:i[o]}))}else for(const o in i)s[o]=new n({type:"nonoptional",innerType:i[o]});return br(this,"shape",s),s}});return xn(e,r)}function Zr(n,e=0){var t;if(n.aborted===!0)return!0;for(let r=e;r<n.issues.length;r++)if(((t=n.issues[r])==null?void 0:t.continue)!==!0)return!0;return!1}function Hr(n,e){return e.map(t=>{var r;return(r=t).path??(r.path=[]),t.path.unshift(n),t})}function $o(n){return typeof n=="string"?n:n==null?void 0:n.message}function yn(n,e,t){var i,s,o,a,c,u;const r={...n,path:n.path??[]};if(!n.message){const h=$o((o=(s=(i=n.inst)==null?void 0:i._zod.def)==null?void 0:s.error)==null?void 0:o.call(s,n))??$o((a=e==null?void 0:e.error)==null?void 0:a.call(e,n))??$o((c=t.customError)==null?void 0:c.call(t,n))??$o((u=t.localeError)==null?void 0:u.call(t,n))??"Invalid input";r.message=h}return delete r.inst,delete r.continue,e!=null&&e.reportInput||delete r.input,r}function Ju(n){return Array.isArray(n)?"array":typeof n=="string"?"string":"unknown"}function ss(...n){const[e,t,r]=n;return typeof e=="string"?{message:e,code:"custom",input:t,inst:r}:{...e}}const ym=(n,e)=>{n.name="$ZodError",Object.defineProperty(n,"_zod",{value:n._zod,enumerable:!1}),Object.defineProperty(n,"issues",{value:e,enumerable:!1}),n.message=JSON.stringify(e,Pc,2),Object.defineProperty(n,"toString",{value:()=>n.message,enumerable:!1})},bm=A("$ZodError",ym),wm=A("$ZodError",ym,{Parent:Error});function i1(n,e=t=>t.message){const t={},r=[];for(const i of n.issues)i.path.length>0?(t[i.path[0]]=t[i.path[0]]||[],t[i.path[0]].push(e(i))):r.push(e(i));return{formErrors:r,fieldErrors:t}}function s1(n,e=t=>t.message){const t={_errors:[]},r=i=>{for(const s of i.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(o=>r({issues:o}));else if(s.code==="invalid_key")r({issues:s.issues});else if(s.code==="invalid_element")r({issues:s.issues});else if(s.path.length===0)t._errors.push(e(s));else{let o=t,a=0;for(;a<s.path.length;){const c=s.path[a];a===s.path.length-1?(o[c]=o[c]||{_errors:[]},o[c]._errors.push(e(s))):o[c]=o[c]||{_errors:[]},o=o[c],a++}}};return r(n),t}const Qu=n=>(e,t,r,i)=>{const s=r?Object.assign(r,{async:!1}):{async:!1},o=e._zod.run({value:t,issues:[]},s);if(o instanceof Promise)throw new Br;if(o.issues.length){const a=new((i==null?void 0:i.Err)??n)(o.issues.map(c=>yn(c,s,vn())));throw mm(a,i==null?void 0:i.callee),a}return o.value},eh=n=>async(e,t,r,i)=>{const s=r?Object.assign(r,{async:!0}):{async:!0};let o=e._zod.run({value:t,issues:[]},s);if(o instanceof Promise&&(o=await o),o.issues.length){const a=new((i==null?void 0:i.Err)??n)(o.issues.map(c=>yn(c,s,vn())));throw mm(a,i==null?void 0:i.callee),a}return o.value},Xa=n=>(e,t,r)=>{const i=r?{...r,async:!1}:{async:!1},s=e._zod.run({value:t,issues:[]},i);if(s instanceof Promise)throw new Br;return s.issues.length?{success:!1,error:new(n??bm)(s.issues.map(o=>yn(o,i,vn())))}:{success:!0,data:s.value}},o1=Xa(wm),Ka=n=>async(e,t,r)=>{const i=r?Object.assign(r,{async:!0}):{async:!0};let s=e._zod.run({value:t,issues:[]},i);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new n(s.issues.map(o=>yn(o,i,vn())))}:{success:!0,data:s.value}},a1=Ka(wm),l1=n=>(e,t,r)=>{const i=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Qu(n)(e,t,i)},c1=n=>(e,t,r)=>Qu(n)(e,t,r),u1=n=>async(e,t,r)=>{const i=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return eh(n)(e,t,i)},h1=n=>async(e,t,r)=>eh(n)(e,t,r),d1=n=>(e,t,r)=>{const i=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Xa(n)(e,t,i)},p1=n=>(e,t,r)=>Xa(n)(e,t,r),f1=n=>async(e,t,r)=>{const i=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Ka(n)(e,t,i)},g1=n=>async(e,t,r)=>Ka(n)(e,t,r),m1=/^[cC][^\s-]{8,}$/,v1=/^[0-9a-z]+$/,y1=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,b1=/^[0-9a-vA-V]{20}$/,w1=/^[A-Za-z0-9]{27}$/,S1=/^[a-zA-Z0-9_-]{21}$/,_1=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,k1=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,$p=n=>n?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${n}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,E1=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,x1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function A1(){return new RegExp(x1,"u")}const $1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,T1=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,I1=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,C1=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,P1=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Sm=/^[A-Za-z0-9_-]*$/,R1=/^\+[1-9]\d{6,14}$/,_m="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",D1=new RegExp(`^${_m}$`);function km(n){const e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof n.precision=="number"?n.precision===-1?`${e}`:n.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${n.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function L1(n){return new RegExp(`^${km(n)}$`)}function O1(n){const e=km({precision:n.precision}),t=["Z"];n.local&&t.push(""),n.offset&&t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${e}(?:${t.join("|")})`;return new RegExp(`^${_m}T(?:${r})$`)}const M1=n=>{const e=n?`[\\s\\S]{${(n==null?void 0:n.minimum)??0},${(n==null?void 0:n.maximum)??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},z1=/^-?\d+$/,Em=/^-?\d+(?:\.\d+)?$/,N1=/^(?:true|false)$/i,U1=/^[^A-Z]*$/,F1=/^[^a-z]*$/,Ye=A("$ZodCheck",(n,e)=>{var t;n._zod??(n._zod={}),n._zod.def=e,(t=n._zod).onattach??(t.onattach=[])}),xm={number:"number",bigint:"bigint",object:"date"},Am=A("$ZodCheckLessThan",(n,e)=>{Ye.init(n,e);const t=xm[typeof e.value];n._zod.onattach.push(r=>{const i=r._zod.bag,s=(e.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?i.maximum=e.value:i.exclusiveMaximum=e.value)}),n._zod.check=r=>{(e.inclusive?r.value<=e.value:r.value<e.value)||r.issues.push({origin:t,code:"too_big",maximum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:n,continue:!e.abort})}}),$m=A("$ZodCheckGreaterThan",(n,e)=>{Ye.init(n,e);const t=xm[typeof e.value];n._zod.onattach.push(r=>{const i=r._zod.bag,s=(e.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?i.minimum=e.value:i.exclusiveMinimum=e.value)}),n._zod.check=r=>{(e.inclusive?r.value>=e.value:r.value>e.value)||r.issues.push({origin:t,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:n,continue:!e.abort})}}),Z1=A("$ZodCheckMultipleOf",(n,e)=>{Ye.init(n,e),n._zod.onattach.push(t=>{var r;(r=t._zod.bag).multipleOf??(r.multipleOf=e.value)}),n._zod.check=t=>{if(typeof t.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof t.value=="bigint"?t.value%e.value===BigInt(0):Vx(t.value,e.value)===0)||t.issues.push({origin:typeof t.value,code:"not_multiple_of",divisor:e.value,input:t.value,inst:n,continue:!e.abort})}}),H1=A("$ZodCheckNumberFormat",(n,e)=>{var o;Ye.init(n,e),e.format=e.format||"float64";const t=(o=e.format)==null?void 0:o.includes("int"),r=t?"int":"number",[i,s]=Xx[e.format];n._zod.onattach.push(a=>{const c=a._zod.bag;c.format=e.format,c.minimum=i,c.maximum=s,t&&(c.pattern=z1)}),n._zod.check=a=>{const c=a.value;if(t){if(!Number.isInteger(c)){a.issues.push({expected:r,format:e.format,code:"invalid_type",continue:!1,input:c,inst:n});return}if(!Number.isSafeInteger(c)){c>0?a.issues.push({input:c,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:n,origin:r,inclusive:!0,continue:!e.abort}):a.issues.push({input:c,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:n,origin:r,inclusive:!0,continue:!e.abort});return}}c<i&&a.issues.push({origin:"number",input:c,code:"too_small",minimum:i,inclusive:!0,inst:n,continue:!e.abort}),c>s&&a.issues.push({origin:"number",input:c,code:"too_big",maximum:s,inclusive:!0,inst:n,continue:!e.abort})}}),W1=A("$ZodCheckMaxLength",(n,e)=>{var t;Ye.init(n,e),(t=n._zod.def).when??(t.when=r=>{const i=r.value;return!Xu(i)&&i.length!==void 0}),n._zod.onattach.push(r=>{const i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<i&&(r._zod.bag.maximum=e.maximum)}),n._zod.check=r=>{const i=r.value;if(i.length<=e.maximum)return;const o=Ju(i);r.issues.push({origin:o,code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:n,continue:!e.abort})}}),B1=A("$ZodCheckMinLength",(n,e)=>{var t;Ye.init(n,e),(t=n._zod.def).when??(t.when=r=>{const i=r.value;return!Xu(i)&&i.length!==void 0}),n._zod.onattach.push(r=>{const i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>i&&(r._zod.bag.minimum=e.minimum)}),n._zod.check=r=>{const i=r.value;if(i.length>=e.minimum)return;const o=Ju(i);r.issues.push({origin:o,code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:n,continue:!e.abort})}}),V1=A("$ZodCheckLengthEquals",(n,e)=>{var t;Ye.init(n,e),(t=n._zod.def).when??(t.when=r=>{const i=r.value;return!Xu(i)&&i.length!==void 0}),n._zod.onattach.push(r=>{const i=r._zod.bag;i.minimum=e.length,i.maximum=e.length,i.length=e.length}),n._zod.check=r=>{const i=r.value,s=i.length;if(s===e.length)return;const o=Ju(i),a=s>e.length;r.issues.push({origin:o,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:n,continue:!e.abort})}}),Ja=A("$ZodCheckStringFormat",(n,e)=>{var t,r;Ye.init(n,e),n._zod.onattach.push(i=>{const s=i._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(t=n._zod).check??(t.check=i=>{e.pattern.lastIndex=0,!e.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:e.format,input:i.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:n,continue:!e.abort})}):(r=n._zod).check??(r.check=()=>{})}),G1=A("$ZodCheckRegex",(n,e)=>{Ja.init(n,e),n._zod.check=t=>{e.pattern.lastIndex=0,!e.pattern.test(t.value)&&t.issues.push({origin:"string",code:"invalid_format",format:"regex",input:t.value,pattern:e.pattern.toString(),inst:n,continue:!e.abort})}}),j1=A("$ZodCheckLowerCase",(n,e)=>{e.pattern??(e.pattern=U1),Ja.init(n,e)}),q1=A("$ZodCheckUpperCase",(n,e)=>{e.pattern??(e.pattern=F1),Ja.init(n,e)}),Y1=A("$ZodCheckIncludes",(n,e)=>{Ye.init(n,e);const t=di(e.includes),r=new RegExp(typeof e.position=="number"?`^.{${e.position}}${t}`:t);e.pattern=r,n._zod.onattach.push(i=>{const s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(r)}),n._zod.check=i=>{i.value.includes(e.includes,e.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:i.value,inst:n,continue:!e.abort})}}),X1=A("$ZodCheckStartsWith",(n,e)=>{Ye.init(n,e);const t=new RegExp(`^${di(e.prefix)}.*`);e.pattern??(e.pattern=t),n._zod.onattach.push(r=>{const i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(t)}),n._zod.check=r=>{r.value.startsWith(e.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:r.value,inst:n,continue:!e.abort})}}),K1=A("$ZodCheckEndsWith",(n,e)=>{Ye.init(n,e);const t=new RegExp(`.*${di(e.suffix)}$`);e.pattern??(e.pattern=t),n._zod.onattach.push(r=>{const i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(t)}),n._zod.check=r=>{r.value.endsWith(e.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:r.value,inst:n,continue:!e.abort})}}),J1=A("$ZodCheckOverwrite",(n,e)=>{Ye.init(n,e),n._zod.check=t=>{t.value=e.tx(t.value)}});class Q1{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}const r=e.split(`
5
+ `).filter(o=>o),i=Math.min(...r.map(o=>o.length-o.trimStart().length)),s=r.map(o=>o.slice(i)).map(o=>" ".repeat(this.indent*2)+o);for(const o of s)this.content.push(o)}compile(){const e=Function,t=this==null?void 0:this.args,i=[...((this==null?void 0:this.content)??[""]).map(s=>` ${s}`)];return new e(...t,i.join(`
6
+ `))}}const eA={major:4,minor:3,patch:6},pe=A("$ZodType",(n,e)=>{var i;var t;n??(n={}),n._zod.def=e,n._zod.bag=n._zod.bag||{},n._zod.version=eA;const r=[...n._zod.def.checks??[]];n._zod.traits.has("$ZodCheck")&&r.unshift(n);for(const s of r)for(const o of s._zod.onattach)o(n);if(r.length===0)(t=n._zod).deferred??(t.deferred=[]),(i=n._zod.deferred)==null||i.push(()=>{n._zod.run=n._zod.parse});else{const s=(a,c,u)=>{let h=Zr(a),p;for(const v of c){if(v._zod.def.when){if(!v._zod.def.when(a))continue}else if(h)continue;const g=a.issues.length,E=v._zod.check(a);if(E instanceof Promise&&(u==null?void 0:u.async)===!1)throw new Br;if(p||E instanceof Promise)p=(p??Promise.resolve()).then(async()=>{await E,a.issues.length!==g&&(h||(h=Zr(a,g)))});else{if(a.issues.length===g)continue;h||(h=Zr(a,g))}}return p?p.then(()=>a):a},o=(a,c,u)=>{if(Zr(a))return a.aborted=!0,a;const h=s(c,r,u);if(h instanceof Promise){if(u.async===!1)throw new Br;return h.then(p=>n._zod.parse(p,u))}return n._zod.parse(h,u)};n._zod.run=(a,c)=>{if(c.skipChecks)return n._zod.parse(a,c);if(c.direction==="backward"){const h=n._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});return h instanceof Promise?h.then(p=>o(p,a,c)):o(h,a,c)}const u=n._zod.parse(a,c);if(u instanceof Promise){if(c.async===!1)throw new Br;return u.then(h=>s(h,r,c))}return s(u,r,c)}}ee(n,"~standard",()=>({validate:s=>{var o;try{const a=o1(n,s);return a.success?{value:a.data}:{issues:(o=a.error)==null?void 0:o.issues}}catch{return a1(n,s).then(c=>{var u;return c.success?{value:c.data}:{issues:(u=c.error)==null?void 0:u.issues}})}},vendor:"zod",version:1}))}),th=A("$ZodString",(n,e)=>{var t;pe.init(n,e),n._zod.pattern=[...((t=n==null?void 0:n._zod.bag)==null?void 0:t.patterns)??[]].pop()??M1(n._zod.bag),n._zod.parse=(r,i)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:n}),r}}),le=A("$ZodStringFormat",(n,e)=>{Ja.init(n,e),th.init(n,e)}),tA=A("$ZodGUID",(n,e)=>{e.pattern??(e.pattern=k1),le.init(n,e)}),nA=A("$ZodUUID",(n,e)=>{if(e.version){const r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(r===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=$p(r))}else e.pattern??(e.pattern=$p());le.init(n,e)}),rA=A("$ZodEmail",(n,e)=>{e.pattern??(e.pattern=E1),le.init(n,e)}),iA=A("$ZodURL",(n,e)=>{le.init(n,e),n._zod.check=t=>{try{const r=t.value.trim(),i=new URL(r);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(i.hostname)||t.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:t.value,inst:n,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||t.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:t.value,inst:n,continue:!e.abort})),e.normalize?t.value=i.href:t.value=r;return}catch{t.issues.push({code:"invalid_format",format:"url",input:t.value,inst:n,continue:!e.abort})}}}),sA=A("$ZodEmoji",(n,e)=>{e.pattern??(e.pattern=A1()),le.init(n,e)}),oA=A("$ZodNanoID",(n,e)=>{e.pattern??(e.pattern=S1),le.init(n,e)}),aA=A("$ZodCUID",(n,e)=>{e.pattern??(e.pattern=m1),le.init(n,e)}),lA=A("$ZodCUID2",(n,e)=>{e.pattern??(e.pattern=v1),le.init(n,e)}),cA=A("$ZodULID",(n,e)=>{e.pattern??(e.pattern=y1),le.init(n,e)}),uA=A("$ZodXID",(n,e)=>{e.pattern??(e.pattern=b1),le.init(n,e)}),hA=A("$ZodKSUID",(n,e)=>{e.pattern??(e.pattern=w1),le.init(n,e)}),dA=A("$ZodISODateTime",(n,e)=>{e.pattern??(e.pattern=O1(e)),le.init(n,e)}),pA=A("$ZodISODate",(n,e)=>{e.pattern??(e.pattern=D1),le.init(n,e)}),fA=A("$ZodISOTime",(n,e)=>{e.pattern??(e.pattern=L1(e)),le.init(n,e)}),gA=A("$ZodISODuration",(n,e)=>{e.pattern??(e.pattern=_1),le.init(n,e)}),mA=A("$ZodIPv4",(n,e)=>{e.pattern??(e.pattern=$1),le.init(n,e),n._zod.bag.format="ipv4"}),vA=A("$ZodIPv6",(n,e)=>{e.pattern??(e.pattern=T1),le.init(n,e),n._zod.bag.format="ipv6",n._zod.check=t=>{try{new URL(`http://[${t.value}]`)}catch{t.issues.push({code:"invalid_format",format:"ipv6",input:t.value,inst:n,continue:!e.abort})}}}),yA=A("$ZodCIDRv4",(n,e)=>{e.pattern??(e.pattern=I1),le.init(n,e)}),bA=A("$ZodCIDRv6",(n,e)=>{e.pattern??(e.pattern=C1),le.init(n,e),n._zod.check=t=>{const r=t.value.split("/");try{if(r.length!==2)throw new Error;const[i,s]=r;if(!s)throw new Error;const o=Number(s);if(`${o}`!==s)throw new Error;if(o<0||o>128)throw new Error;new URL(`http://[${i}]`)}catch{t.issues.push({code:"invalid_format",format:"cidrv6",input:t.value,inst:n,continue:!e.abort})}}});function Tm(n){if(n==="")return!0;if(n.length%4!==0)return!1;try{return atob(n),!0}catch{return!1}}const wA=A("$ZodBase64",(n,e)=>{e.pattern??(e.pattern=P1),le.init(n,e),n._zod.bag.contentEncoding="base64",n._zod.check=t=>{Tm(t.value)||t.issues.push({code:"invalid_format",format:"base64",input:t.value,inst:n,continue:!e.abort})}});function SA(n){if(!Sm.test(n))return!1;const e=n.replace(/[-_]/g,r=>r==="-"?"+":"/"),t=e.padEnd(Math.ceil(e.length/4)*4,"=");return Tm(t)}const _A=A("$ZodBase64URL",(n,e)=>{e.pattern??(e.pattern=Sm),le.init(n,e),n._zod.bag.contentEncoding="base64url",n._zod.check=t=>{SA(t.value)||t.issues.push({code:"invalid_format",format:"base64url",input:t.value,inst:n,continue:!e.abort})}}),kA=A("$ZodE164",(n,e)=>{e.pattern??(e.pattern=R1),le.init(n,e)});function EA(n,e=null){try{const t=n.split(".");if(t.length!==3)return!1;const[r]=t;if(!r)return!1;const i=JSON.parse(atob(r));return!("typ"in i&&(i==null?void 0:i.typ)!=="JWT"||!i.alg||e&&(!("alg"in i)||i.alg!==e))}catch{return!1}}const xA=A("$ZodJWT",(n,e)=>{le.init(n,e),n._zod.check=t=>{EA(t.value,e.alg)||t.issues.push({code:"invalid_format",format:"jwt",input:t.value,inst:n,continue:!e.abort})}}),Im=A("$ZodNumber",(n,e)=>{pe.init(n,e),n._zod.pattern=n._zod.bag.pattern??Em,n._zod.parse=(t,r)=>{if(e.coerce)try{t.value=Number(t.value)}catch{}const i=t.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return t;const s=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return t.issues.push({expected:"number",code:"invalid_type",input:i,inst:n,...s?{received:s}:{}}),t}}),AA=A("$ZodNumberFormat",(n,e)=>{H1.init(n,e),Im.init(n,e)}),$A=A("$ZodBoolean",(n,e)=>{pe.init(n,e),n._zod.pattern=N1,n._zod.parse=(t,r)=>{if(e.coerce)try{t.value=!!t.value}catch{}const i=t.value;return typeof i=="boolean"||t.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:n}),t}}),TA=A("$ZodUnknown",(n,e)=>{pe.init(n,e),n._zod.parse=t=>t}),IA=A("$ZodNever",(n,e)=>{pe.init(n,e),n._zod.parse=(t,r)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:n}),t)});function Tp(n,e,t){n.issues.length&&e.issues.push(...Hr(t,n.issues)),e.value[t]=n.value}const CA=A("$ZodArray",(n,e)=>{pe.init(n,e),n._zod.parse=(t,r)=>{const i=t.value;if(!Array.isArray(i))return t.issues.push({expected:"array",code:"invalid_type",input:i,inst:n}),t;t.value=Array(i.length);const s=[];for(let o=0;o<i.length;o++){const a=i[o],c=e.element._zod.run({value:a,issues:[]},r);c instanceof Promise?s.push(c.then(u=>Tp(u,t,o))):Tp(c,t,o)}return s.length?Promise.all(s).then(()=>t):t}});function da(n,e,t,r,i){if(n.issues.length){if(i&&!(t in r))return;e.issues.push(...Hr(t,n.issues))}n.value===void 0?t in r&&(e.value[t]=void 0):e.value[t]=n.value}function Cm(n){var r,i,s,o;const e=Object.keys(n.shape);for(const a of e)if(!((o=(s=(i=(r=n.shape)==null?void 0:r[a])==null?void 0:i._zod)==null?void 0:s.traits)!=null&&o.has("$ZodType")))throw new Error(`Invalid element at key "${a}": expected a Zod schema`);const t=Yx(n.shape);return{...n,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(t)}}function Pm(n,e,t,r,i,s){const o=[],a=i.keySet,c=i.catchall._zod,u=c.def.type,h=c.optout==="optional";for(const p in e){if(a.has(p))continue;if(u==="never"){o.push(p);continue}const v=c.run({value:e[p],issues:[]},r);v instanceof Promise?n.push(v.then(g=>da(g,t,p,e,h))):da(v,t,p,e,h)}return o.length&&t.issues.push({code:"unrecognized_keys",keys:o,input:e,inst:s}),n.length?Promise.all(n).then(()=>t):t}const PA=A("$ZodObject",(n,e)=>{pe.init(n,e);const t=Object.getOwnPropertyDescriptor(e,"shape");if(!(t!=null&&t.get)){const a=e.shape;Object.defineProperty(e,"shape",{get:()=>{const c={...a};return Object.defineProperty(e,"shape",{value:c}),c}})}const r=Yu(()=>Cm(e));ee(n._zod,"propValues",()=>{const a=e.shape,c={};for(const u in a){const h=a[u]._zod;if(h.values){c[u]??(c[u]=new Set);for(const p of h.values)c[u].add(p)}}return c});const i=ha,s=e.catchall;let o;n._zod.parse=(a,c)=>{o??(o=r.value);const u=a.value;if(!i(u))return a.issues.push({expected:"object",code:"invalid_type",input:u,inst:n}),a;a.value={};const h=[],p=o.shape;for(const v of o.keys){const g=p[v],E=g._zod.optout==="optional",_=g._zod.run({value:u[v],issues:[]},c);_ instanceof Promise?h.push(_.then(C=>da(C,a,v,u,E))):da(_,a,v,u,E)}return s?Pm(h,u,a,c,r.value,n):h.length?Promise.all(h).then(()=>a):a}}),RA=A("$ZodObjectJIT",(n,e)=>{PA.init(n,e);const t=n._zod.parse,r=Yu(()=>Cm(e)),i=v=>{var W;const g=new Q1(["shape","payload","ctx"]),E=r.value,_=L=>{const H=Ap(L);return`shape[${H}]._zod.run({ value: input[${H}], issues: [] }, ctx)`};g.write("const input = payload.value;");const C=Object.create(null);let N=0;for(const L of E.keys)C[L]=`key_${N++}`;g.write("const newResult = {};");for(const L of E.keys){const H=C[L],F=Ap(L),ce=v[L],ue=((W=ce==null?void 0:ce._zod)==null?void 0:W.optout)==="optional";g.write(`const ${H} = ${_(L)};`),ue?g.write(`
7
+ if (${H}.issues.length) {
8
+ if (${F} in input) {
9
+ payload.issues = payload.issues.concat(${H}.issues.map(iss => ({
10
+ ...iss,
11
+ path: iss.path ? [${F}, ...iss.path] : [${F}]
12
+ })));
13
+ }
14
+ }
15
+
16
+ if (${H}.value === undefined) {
17
+ if (${F} in input) {
18
+ newResult[${F}] = undefined;
19
+ }
20
+ } else {
21
+ newResult[${F}] = ${H}.value;
22
+ }
23
+
24
+ `):g.write(`
25
+ if (${H}.issues.length) {
26
+ payload.issues = payload.issues.concat(${H}.issues.map(iss => ({
27
+ ...iss,
28
+ path: iss.path ? [${F}, ...iss.path] : [${F}]
29
+ })));
30
+ }
31
+
32
+ if (${H}.value === undefined) {
33
+ if (${F} in input) {
34
+ newResult[${F}] = undefined;
35
+ }
36
+ } else {
37
+ newResult[${F}] = ${H}.value;
38
+ }
39
+
40
+ `)}g.write("payload.value = newResult;"),g.write("return payload;");const P=g.compile();return(L,H)=>P(v,L,H)};let s;const o=ha,a=!fm.jitless,u=a&&jx.value,h=e.catchall;let p;n._zod.parse=(v,g)=>{p??(p=r.value);const E=v.value;return o(E)?a&&u&&(g==null?void 0:g.async)===!1&&g.jitless!==!0?(s||(s=i(e.shape)),v=s(v,g),h?Pm([],E,v,g,p,n):v):t(v,g):(v.issues.push({expected:"object",code:"invalid_type",input:E,inst:n}),v)}});function Ip(n,e,t,r){for(const s of n)if(s.issues.length===0)return e.value=s.value,e;const i=n.filter(s=>!Zr(s));return i.length===1?(e.value=i[0].value,i[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:t,errors:n.map(s=>s.issues.map(o=>yn(o,r,vn())))}),e)}const DA=A("$ZodUnion",(n,e)=>{pe.init(n,e),ee(n._zod,"optin",()=>e.options.some(i=>i._zod.optin==="optional")?"optional":void 0),ee(n._zod,"optout",()=>e.options.some(i=>i._zod.optout==="optional")?"optional":void 0),ee(n._zod,"values",()=>{if(e.options.every(i=>i._zod.values))return new Set(e.options.flatMap(i=>Array.from(i._zod.values)))}),ee(n._zod,"pattern",()=>{if(e.options.every(i=>i._zod.pattern)){const i=e.options.map(s=>s._zod.pattern);return new RegExp(`^(${i.map(s=>Ku(s.source)).join("|")})$`)}});const t=e.options.length===1,r=e.options[0]._zod.run;n._zod.parse=(i,s)=>{if(t)return r(i,s);let o=!1;const a=[];for(const c of e.options){const u=c._zod.run({value:i.value,issues:[]},s);if(u instanceof Promise)a.push(u),o=!0;else{if(u.issues.length===0)return u;a.push(u)}}return o?Promise.all(a).then(c=>Ip(c,i,n,s)):Ip(a,i,n,s)}}),LA=A("$ZodIntersection",(n,e)=>{pe.init(n,e),n._zod.parse=(t,r)=>{const i=t.value,s=e.left._zod.run({value:i,issues:[]},r),o=e.right._zod.run({value:i,issues:[]},r);return s instanceof Promise||o instanceof Promise?Promise.all([s,o]).then(([c,u])=>Cp(t,c,u)):Cp(t,s,o)}});function Rc(n,e){if(n===e)return{valid:!0,data:n};if(n instanceof Date&&e instanceof Date&&+n==+e)return{valid:!0,data:n};if(hi(n)&&hi(e)){const t=Object.keys(e),r=Object.keys(n).filter(s=>t.indexOf(s)!==-1),i={...n,...e};for(const s of r){const o=Rc(n[s],e[s]);if(!o.valid)return{valid:!1,mergeErrorPath:[s,...o.mergeErrorPath]};i[s]=o.data}return{valid:!0,data:i}}if(Array.isArray(n)&&Array.isArray(e)){if(n.length!==e.length)return{valid:!1,mergeErrorPath:[]};const t=[];for(let r=0;r<n.length;r++){const i=n[r],s=e[r],o=Rc(i,s);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};t.push(o.data)}return{valid:!0,data:t}}return{valid:!1,mergeErrorPath:[]}}function Cp(n,e,t){const r=new Map;let i;for(const a of e.issues)if(a.code==="unrecognized_keys"){i??(i=a);for(const c of a.keys)r.has(c)||r.set(c,{}),r.get(c).l=!0}else n.issues.push(a);for(const a of t.issues)if(a.code==="unrecognized_keys")for(const c of a.keys)r.has(c)||r.set(c,{}),r.get(c).r=!0;else n.issues.push(a);const s=[...r].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(s.length&&i&&n.issues.push({...i,keys:s}),Zr(n))return n;const o=Rc(e.value,t.value);if(!o.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return n.value=o.data,n}const OA=A("$ZodRecord",(n,e)=>{pe.init(n,e),n._zod.parse=(t,r)=>{const i=t.value;if(!hi(i))return t.issues.push({expected:"record",code:"invalid_type",input:i,inst:n}),t;const s=[],o=e.keyType._zod.values;if(o){t.value={};const a=new Set;for(const u of o)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);const h=e.valueType._zod.run({value:i[u],issues:[]},r);h instanceof Promise?s.push(h.then(p=>{p.issues.length&&t.issues.push(...Hr(u,p.issues)),t.value[u]=p.value})):(h.issues.length&&t.issues.push(...Hr(u,h.issues)),t.value[u]=h.value)}let c;for(const u in i)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&t.issues.push({code:"unrecognized_keys",input:i,inst:n,keys:c})}else{t.value={};for(const a of Reflect.ownKeys(i)){if(a==="__proto__")continue;let c=e.keyType._zod.run({value:a,issues:[]},r);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof a=="string"&&Em.test(a)&&c.issues.length){const p=e.keyType._zod.run({value:Number(a),issues:[]},r);if(p instanceof Promise)throw new Error("Async schemas not supported in object keys currently");p.issues.length===0&&(c=p)}if(c.issues.length){e.mode==="loose"?t.value[a]=i[a]:t.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(p=>yn(p,r,vn())),input:a,path:[a],inst:n});continue}const h=e.valueType._zod.run({value:i[a],issues:[]},r);h instanceof Promise?s.push(h.then(p=>{p.issues.length&&t.issues.push(...Hr(a,p.issues)),t.value[c.value]=p.value})):(h.issues.length&&t.issues.push(...Hr(a,h.issues)),t.value[c.value]=h.value)}}return s.length?Promise.all(s).then(()=>t):t}}),MA=A("$ZodEnum",(n,e)=>{pe.init(n,e);const t=gm(e.entries),r=new Set(t);n._zod.values=r,n._zod.pattern=new RegExp(`^(${t.filter(i=>qx.has(typeof i)).map(i=>typeof i=="string"?di(i):i.toString()).join("|")})$`),n._zod.parse=(i,s)=>{const o=i.value;return r.has(o)||i.issues.push({code:"invalid_value",values:t,input:o,inst:n}),i}}),zA=A("$ZodLiteral",(n,e)=>{if(pe.init(n,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");const t=new Set(e.values);n._zod.values=t,n._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?di(r):r?di(r.toString()):String(r)).join("|")})$`),n._zod.parse=(r,i)=>{const s=r.value;return t.has(s)||r.issues.push({code:"invalid_value",values:e.values,input:s,inst:n}),r}}),NA=A("$ZodTransform",(n,e)=>{pe.init(n,e),n._zod.parse=(t,r)=>{if(r.direction==="backward")throw new pm(n.constructor.name);const i=e.transform(t.value,t);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(t.value=o,t));if(i instanceof Promise)throw new Br;return t.value=i,t}});function Pp(n,e){return n.issues.length&&e===void 0?{issues:[],value:void 0}:n}const Rm=A("$ZodOptional",(n,e)=>{pe.init(n,e),n._zod.optin="optional",n._zod.optout="optional",ee(n._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ee(n._zod,"pattern",()=>{const t=e.innerType._zod.pattern;return t?new RegExp(`^(${Ku(t.source)})?$`):void 0}),n._zod.parse=(t,r)=>{if(e.innerType._zod.optin==="optional"){const i=e.innerType._zod.run(t,r);return i instanceof Promise?i.then(s=>Pp(s,t.value)):Pp(i,t.value)}return t.value===void 0?t:e.innerType._zod.run(t,r)}}),UA=A("$ZodExactOptional",(n,e)=>{Rm.init(n,e),ee(n._zod,"values",()=>e.innerType._zod.values),ee(n._zod,"pattern",()=>e.innerType._zod.pattern),n._zod.parse=(t,r)=>e.innerType._zod.run(t,r)}),FA=A("$ZodNullable",(n,e)=>{pe.init(n,e),ee(n._zod,"optin",()=>e.innerType._zod.optin),ee(n._zod,"optout",()=>e.innerType._zod.optout),ee(n._zod,"pattern",()=>{const t=e.innerType._zod.pattern;return t?new RegExp(`^(${Ku(t.source)}|null)$`):void 0}),ee(n._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),n._zod.parse=(t,r)=>t.value===null?t:e.innerType._zod.run(t,r)}),ZA=A("$ZodDefault",(n,e)=>{pe.init(n,e),n._zod.optin="optional",ee(n._zod,"values",()=>e.innerType._zod.values),n._zod.parse=(t,r)=>{if(r.direction==="backward")return e.innerType._zod.run(t,r);if(t.value===void 0)return t.value=e.defaultValue,t;const i=e.innerType._zod.run(t,r);return i instanceof Promise?i.then(s=>Rp(s,e)):Rp(i,e)}});function Rp(n,e){return n.value===void 0&&(n.value=e.defaultValue),n}const HA=A("$ZodPrefault",(n,e)=>{pe.init(n,e),n._zod.optin="optional",ee(n._zod,"values",()=>e.innerType._zod.values),n._zod.parse=(t,r)=>(r.direction==="backward"||t.value===void 0&&(t.value=e.defaultValue),e.innerType._zod.run(t,r))}),WA=A("$ZodNonOptional",(n,e)=>{pe.init(n,e),ee(n._zod,"values",()=>{const t=e.innerType._zod.values;return t?new Set([...t].filter(r=>r!==void 0)):void 0}),n._zod.parse=(t,r)=>{const i=e.innerType._zod.run(t,r);return i instanceof Promise?i.then(s=>Dp(s,n)):Dp(i,n)}});function Dp(n,e){return!n.issues.length&&n.value===void 0&&n.issues.push({code:"invalid_type",expected:"nonoptional",input:n.value,inst:e}),n}const BA=A("$ZodCatch",(n,e)=>{pe.init(n,e),ee(n._zod,"optin",()=>e.innerType._zod.optin),ee(n._zod,"optout",()=>e.innerType._zod.optout),ee(n._zod,"values",()=>e.innerType._zod.values),n._zod.parse=(t,r)=>{if(r.direction==="backward")return e.innerType._zod.run(t,r);const i=e.innerType._zod.run(t,r);return i instanceof Promise?i.then(s=>(t.value=s.value,s.issues.length&&(t.value=e.catchValue({...t,error:{issues:s.issues.map(o=>yn(o,r,vn()))},input:t.value}),t.issues=[]),t)):(t.value=i.value,i.issues.length&&(t.value=e.catchValue({...t,error:{issues:i.issues.map(s=>yn(s,r,vn()))},input:t.value}),t.issues=[]),t)}}),VA=A("$ZodPipe",(n,e)=>{pe.init(n,e),ee(n._zod,"values",()=>e.in._zod.values),ee(n._zod,"optin",()=>e.in._zod.optin),ee(n._zod,"optout",()=>e.out._zod.optout),ee(n._zod,"propValues",()=>e.in._zod.propValues),n._zod.parse=(t,r)=>{if(r.direction==="backward"){const s=e.out._zod.run(t,r);return s instanceof Promise?s.then(o=>To(o,e.in,r)):To(s,e.in,r)}const i=e.in._zod.run(t,r);return i instanceof Promise?i.then(s=>To(s,e.out,r)):To(i,e.out,r)}});function To(n,e,t){return n.issues.length?(n.aborted=!0,n):e._zod.run({value:n.value,issues:n.issues},t)}const GA=A("$ZodReadonly",(n,e)=>{pe.init(n,e),ee(n._zod,"propValues",()=>e.innerType._zod.propValues),ee(n._zod,"values",()=>e.innerType._zod.values),ee(n._zod,"optin",()=>{var t,r;return(r=(t=e.innerType)==null?void 0:t._zod)==null?void 0:r.optin}),ee(n._zod,"optout",()=>{var t,r;return(r=(t=e.innerType)==null?void 0:t._zod)==null?void 0:r.optout}),n._zod.parse=(t,r)=>{if(r.direction==="backward")return e.innerType._zod.run(t,r);const i=e.innerType._zod.run(t,r);return i instanceof Promise?i.then(Lp):Lp(i)}});function Lp(n){return n.value=Object.freeze(n.value),n}const jA=A("$ZodCustom",(n,e)=>{Ye.init(n,e),pe.init(n,e),n._zod.parse=(t,r)=>t,n._zod.check=t=>{const r=t.value,i=e.fn(r);if(i instanceof Promise)return i.then(s=>Op(s,t,r,n));Op(i,t,r,n)}});function Op(n,e,t,r){if(!n){const i={code:"custom",input:t,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(i.params=r._zod.def.params),e.issues.push(ss(i))}}var Mp;class qA{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){const r=t[0];return this._map.set(e,r),r&&typeof r=="object"&&"id"in r&&this._idmap.set(r.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&typeof t=="object"&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const r={...this.get(t)??{}};delete r.id;const i={...r,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function YA(){return new qA}(Mp=globalThis).__zod_globalRegistry??(Mp.__zod_globalRegistry=YA());const Bi=globalThis.__zod_globalRegistry;function XA(n,e){return new n({type:"string",...O(e)})}function KA(n,e){return new n({type:"string",format:"email",check:"string_format",abort:!1,...O(e)})}function zp(n,e){return new n({type:"string",format:"guid",check:"string_format",abort:!1,...O(e)})}function JA(n,e){return new n({type:"string",format:"uuid",check:"string_format",abort:!1,...O(e)})}function QA(n,e){return new n({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...O(e)})}function e$(n,e){return new n({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...O(e)})}function t$(n,e){return new n({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...O(e)})}function n$(n,e){return new n({type:"string",format:"url",check:"string_format",abort:!1,...O(e)})}function r$(n,e){return new n({type:"string",format:"emoji",check:"string_format",abort:!1,...O(e)})}function i$(n,e){return new n({type:"string",format:"nanoid",check:"string_format",abort:!1,...O(e)})}function s$(n,e){return new n({type:"string",format:"cuid",check:"string_format",abort:!1,...O(e)})}function o$(n,e){return new n({type:"string",format:"cuid2",check:"string_format",abort:!1,...O(e)})}function a$(n,e){return new n({type:"string",format:"ulid",check:"string_format",abort:!1,...O(e)})}function l$(n,e){return new n({type:"string",format:"xid",check:"string_format",abort:!1,...O(e)})}function c$(n,e){return new n({type:"string",format:"ksuid",check:"string_format",abort:!1,...O(e)})}function u$(n,e){return new n({type:"string",format:"ipv4",check:"string_format",abort:!1,...O(e)})}function h$(n,e){return new n({type:"string",format:"ipv6",check:"string_format",abort:!1,...O(e)})}function d$(n,e){return new n({type:"string",format:"cidrv4",check:"string_format",abort:!1,...O(e)})}function p$(n,e){return new n({type:"string",format:"cidrv6",check:"string_format",abort:!1,...O(e)})}function f$(n,e){return new n({type:"string",format:"base64",check:"string_format",abort:!1,...O(e)})}function g$(n,e){return new n({type:"string",format:"base64url",check:"string_format",abort:!1,...O(e)})}function m$(n,e){return new n({type:"string",format:"e164",check:"string_format",abort:!1,...O(e)})}function v$(n,e){return new n({type:"string",format:"jwt",check:"string_format",abort:!1,...O(e)})}function y$(n,e){return new n({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...O(e)})}function b$(n,e){return new n({type:"string",format:"date",check:"string_format",...O(e)})}function w$(n,e){return new n({type:"string",format:"time",check:"string_format",precision:null,...O(e)})}function S$(n,e){return new n({type:"string",format:"duration",check:"string_format",...O(e)})}function _$(n,e){return new n({type:"number",checks:[],...O(e)})}function k$(n,e){return new n({type:"number",check:"number_format",abort:!1,format:"safeint",...O(e)})}function E$(n,e){return new n({type:"boolean",...O(e)})}function x$(n){return new n({type:"unknown"})}function A$(n,e){return new n({type:"never",...O(e)})}function Np(n,e){return new Am({check:"less_than",...O(e),value:n,inclusive:!1})}function ql(n,e){return new Am({check:"less_than",...O(e),value:n,inclusive:!0})}function Up(n,e){return new $m({check:"greater_than",...O(e),value:n,inclusive:!1})}function Yl(n,e){return new $m({check:"greater_than",...O(e),value:n,inclusive:!0})}function Fp(n,e){return new Z1({check:"multiple_of",...O(e),value:n})}function Dm(n,e){return new W1({check:"max_length",...O(e),maximum:n})}function pa(n,e){return new B1({check:"min_length",...O(e),minimum:n})}function Lm(n,e){return new V1({check:"length_equals",...O(e),length:n})}function $$(n,e){return new G1({check:"string_format",format:"regex",...O(e),pattern:n})}function T$(n){return new j1({check:"string_format",format:"lowercase",...O(n)})}function I$(n){return new q1({check:"string_format",format:"uppercase",...O(n)})}function C$(n,e){return new Y1({check:"string_format",format:"includes",...O(e),includes:n})}function P$(n,e){return new X1({check:"string_format",format:"starts_with",...O(e),prefix:n})}function R$(n,e){return new K1({check:"string_format",format:"ends_with",...O(e),suffix:n})}function Ei(n){return new J1({check:"overwrite",tx:n})}function D$(n){return Ei(e=>e.normalize(n))}function L$(){return Ei(n=>n.trim())}function O$(){return Ei(n=>n.toLowerCase())}function M$(){return Ei(n=>n.toUpperCase())}function z$(){return Ei(n=>Gx(n))}function N$(n,e,t){return new n({type:"array",element:e,...O(t)})}function U$(n,e,t){return new n({type:"custom",check:"custom",fn:e,...O(t)})}function F$(n){const e=Z$(t=>(t.addIssue=r=>{if(typeof r=="string")t.issues.push(ss(r,t.value,e._zod.def));else{const i=r;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=t.value),i.inst??(i.inst=e),i.continue??(i.continue=!e._zod.def.abort),t.issues.push(ss(i))}},n(t.value,t)));return e}function Z$(n,e){const t=new Ye({check:"custom",...O(e)});return t._zod.check=n,t}function Om(n){let e=(n==null?void 0:n.target)??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:n.processors??{},metadataRegistry:(n==null?void 0:n.metadata)??Bi,target:e,unrepresentable:(n==null?void 0:n.unrepresentable)??"throw",override:(n==null?void 0:n.override)??(()=>{}),io:(n==null?void 0:n.io)??"output",counter:0,seen:new Map,cycles:(n==null?void 0:n.cycles)??"ref",reused:(n==null?void 0:n.reused)??"inline",external:(n==null?void 0:n.external)??void 0}}function ye(n,e,t={path:[],schemaPath:[]}){var h,p;var r;const i=n._zod.def,s=e.seen.get(n);if(s)return s.count++,t.schemaPath.includes(n)&&(s.cycle=t.path),s.schema;const o={schema:{},count:1,cycle:void 0,path:t.path};e.seen.set(n,o);const a=(p=(h=n._zod).toJSONSchema)==null?void 0:p.call(h);if(a)o.schema=a;else{const v={...t,schemaPath:[...t.schemaPath,n],path:t.path};if(n._zod.processJSONSchema)n._zod.processJSONSchema(e,o.schema,v);else{const E=o.schema,_=e.processors[i.type];if(!_)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);_(n,e,E,v)}const g=n._zod.parent;g&&(o.ref||(o.ref=g),ye(g,e,v),e.seen.get(g).isParent=!0)}const c=e.metadataRegistry.get(n);return c&&Object.assign(o.schema,c),e.io==="input"&&Me(n)&&(delete o.schema.examples,delete o.schema.default),e.io==="input"&&o.schema._prefault&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,e.seen.get(n).schema}function Mm(n,e){var o,a,c,u;const t=n.seen.get(e);if(!t)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=new Map;for(const h of n.seen.entries()){const p=(o=n.metadataRegistry.get(h[0]))==null?void 0:o.id;if(p){const v=r.get(p);if(v&&v!==h[0])throw new Error(`Duplicate schema id "${p}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(p,h[0])}}const i=h=>{var _;const p=n.target==="draft-2020-12"?"$defs":"definitions";if(n.external){const C=(_=n.external.registry.get(h[0]))==null?void 0:_.id,N=n.external.uri??(W=>W);if(C)return{ref:N(C)};const P=h[1].defId??h[1].schema.id??`schema${n.counter++}`;return h[1].defId=P,{defId:P,ref:`${N("__shared")}#/${p}/${P}`}}if(h[1]===t)return{ref:"#"};const g=`#/${p}/`,E=h[1].schema.id??`__schema${n.counter++}`;return{defId:E,ref:g+E}},s=h=>{if(h[1].schema.$ref)return;const p=h[1],{ref:v,defId:g}=i(h);p.def={...p.schema},g&&(p.defId=g);const E=p.schema;for(const _ in E)delete E[_];E.$ref=v};if(n.cycles==="throw")for(const h of n.seen.entries()){const p=h[1];if(p.cycle)throw new Error(`Cycle detected: #/${(a=p.cycle)==null?void 0:a.join("/")}/<root>
41
+
42
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const h of n.seen.entries()){const p=h[1];if(e===h[0]){s(h);continue}if(n.external){const g=(c=n.external.registry.get(h[0]))==null?void 0:c.id;if(e!==h[0]&&g){s(h);continue}}if((u=n.metadataRegistry.get(h[0]))==null?void 0:u.id){s(h);continue}if(p.cycle){s(h);continue}if(p.count>1&&n.reused==="ref"){s(h);continue}}}function zm(n,e){var o,a,c;const t=n.seen.get(e);if(!t)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=u=>{const h=n.seen.get(u);if(h.ref===null)return;const p=h.def??h.schema,v={...p},g=h.ref;if(h.ref=null,g){r(g);const _=n.seen.get(g),C=_.schema;if(C.$ref&&(n.target==="draft-07"||n.target==="draft-04"||n.target==="openapi-3.0")?(p.allOf=p.allOf??[],p.allOf.push(C)):Object.assign(p,C),Object.assign(p,v),u._zod.parent===g)for(const P in p)P==="$ref"||P==="allOf"||P in v||delete p[P];if(C.$ref&&_.def)for(const P in p)P==="$ref"||P==="allOf"||P in _.def&&JSON.stringify(p[P])===JSON.stringify(_.def[P])&&delete p[P]}const E=u._zod.parent;if(E&&E!==g){r(E);const _=n.seen.get(E);if(_!=null&&_.schema.$ref&&(p.$ref=_.schema.$ref,_.def))for(const C in p)C==="$ref"||C==="allOf"||C in _.def&&JSON.stringify(p[C])===JSON.stringify(_.def[C])&&delete p[C]}n.override({zodSchema:u,jsonSchema:p,path:h.path??[]})};for(const u of[...n.seen.entries()].reverse())r(u[0]);const i={};if(n.target==="draft-2020-12"?i.$schema="https://json-schema.org/draft/2020-12/schema":n.target==="draft-07"?i.$schema="http://json-schema.org/draft-07/schema#":n.target==="draft-04"?i.$schema="http://json-schema.org/draft-04/schema#":n.target,(o=n.external)!=null&&o.uri){const u=(a=n.external.registry.get(e))==null?void 0:a.id;if(!u)throw new Error("Schema is missing an `id` property");i.$id=n.external.uri(u)}Object.assign(i,t.def??t.schema);const s=((c=n.external)==null?void 0:c.defs)??{};for(const u of n.seen.entries()){const h=u[1];h.def&&h.defId&&(s[h.defId]=h.def)}n.external||Object.keys(s).length>0&&(n.target==="draft-2020-12"?i.$defs=s:i.definitions=s);try{const u=JSON.parse(JSON.stringify(i));return Object.defineProperty(u,"~standard",{value:{...e["~standard"],jsonSchema:{input:fa(e,"input",n.processors),output:fa(e,"output",n.processors)}},enumerable:!1,writable:!1}),u}catch{throw new Error("Error converting schema to JSON.")}}function Me(n,e){const t=e??{seen:new Set};if(t.seen.has(n))return!1;t.seen.add(n);const r=n._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return Me(r.element,t);if(r.type==="set")return Me(r.valueType,t);if(r.type==="lazy")return Me(r.getter(),t);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return Me(r.innerType,t);if(r.type==="intersection")return Me(r.left,t)||Me(r.right,t);if(r.type==="record"||r.type==="map")return Me(r.keyType,t)||Me(r.valueType,t);if(r.type==="pipe")return Me(r.in,t)||Me(r.out,t);if(r.type==="object"){for(const i in r.shape)if(Me(r.shape[i],t))return!0;return!1}if(r.type==="union"){for(const i of r.options)if(Me(i,t))return!0;return!1}if(r.type==="tuple"){for(const i of r.items)if(Me(i,t))return!0;return!!(r.rest&&Me(r.rest,t))}return!1}const H$=(n,e={})=>t=>{const r=Om({...t,processors:e});return ye(n,r),Mm(r,n),zm(r,n)},fa=(n,e,t={})=>r=>{const{libraryOptions:i,target:s}=r??{},o=Om({...i??{},target:s,io:e,processors:t});return ye(n,o),Mm(o,n),zm(o,n)},W$={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},B$=(n,e,t,r)=>{const i=t;i.type="string";const{minimum:s,maximum:o,format:a,patterns:c,contentEncoding:u}=n._zod.bag;if(typeof s=="number"&&(i.minLength=s),typeof o=="number"&&(i.maxLength=o),a&&(i.format=W$[a]??a,i.format===""&&delete i.format,a==="time"&&delete i.format),u&&(i.contentEncoding=u),c&&c.size>0){const h=[...c];h.length===1?i.pattern=h[0].source:h.length>1&&(i.allOf=[...h.map(p=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))])}},V$=(n,e,t,r)=>{const i=t,{minimum:s,maximum:o,format:a,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:h}=n._zod.bag;typeof a=="string"&&a.includes("int")?i.type="integer":i.type="number",typeof h=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(i.minimum=h,i.exclusiveMinimum=!0):i.exclusiveMinimum=h),typeof s=="number"&&(i.minimum=s,typeof h=="number"&&e.target!=="draft-04"&&(h>=s?delete i.minimum:delete i.exclusiveMinimum)),typeof u=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(i.maximum=u,i.exclusiveMaximum=!0):i.exclusiveMaximum=u),typeof o=="number"&&(i.maximum=o,typeof u=="number"&&e.target!=="draft-04"&&(u<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c=="number"&&(i.multipleOf=c)},G$=(n,e,t,r)=>{t.type="boolean"},j$=(n,e,t,r)=>{t.not={}},q$=(n,e,t,r)=>{},Y$=(n,e,t,r)=>{const i=n._zod.def,s=gm(i.entries);s.every(o=>typeof o=="number")&&(t.type="number"),s.every(o=>typeof o=="string")&&(t.type="string"),t.enum=s},X$=(n,e,t,r)=>{const i=n._zod.def,s=[];for(const o of i.values)if(o===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");s.push(Number(o))}else s.push(o);if(s.length!==0)if(s.length===1){const o=s[0];t.type=o===null?"null":typeof o,e.target==="draft-04"||e.target==="openapi-3.0"?t.enum=[o]:t.const=o}else s.every(o=>typeof o=="number")&&(t.type="number"),s.every(o=>typeof o=="string")&&(t.type="string"),s.every(o=>typeof o=="boolean")&&(t.type="boolean"),s.every(o=>o===null)&&(t.type="null"),t.enum=s},K$=(n,e,t,r)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},J$=(n,e,t,r)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},Q$=(n,e,t,r)=>{const i=t,s=n._zod.def,{minimum:o,maximum:a}=n._zod.bag;typeof o=="number"&&(i.minItems=o),typeof a=="number"&&(i.maxItems=a),i.type="array",i.items=ye(s.element,e,{...r,path:[...r.path,"items"]})},eT=(n,e,t,r)=>{var u;const i=t,s=n._zod.def;i.type="object",i.properties={};const o=s.shape;for(const h in o)i.properties[h]=ye(o[h],e,{...r,path:[...r.path,"properties",h]});const a=new Set(Object.keys(o)),c=new Set([...a].filter(h=>{const p=s.shape[h]._zod;return e.io==="input"?p.optin===void 0:p.optout===void 0}));c.size>0&&(i.required=Array.from(c)),((u=s.catchall)==null?void 0:u._zod.def.type)==="never"?i.additionalProperties=!1:s.catchall?s.catchall&&(i.additionalProperties=ye(s.catchall,e,{...r,path:[...r.path,"additionalProperties"]})):e.io==="output"&&(i.additionalProperties=!1)},tT=(n,e,t,r)=>{const i=n._zod.def,s=i.inclusive===!1,o=i.options.map((a,c)=>ye(a,e,{...r,path:[...r.path,s?"oneOf":"anyOf",c]}));s?t.oneOf=o:t.anyOf=o},nT=(n,e,t,r)=>{const i=n._zod.def,s=ye(i.left,e,{...r,path:[...r.path,"allOf",0]}),o=ye(i.right,e,{...r,path:[...r.path,"allOf",1]}),a=u=>"allOf"in u&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(o)?o.allOf:[o]];t.allOf=c},rT=(n,e,t,r)=>{const i=t,s=n._zod.def;i.type="object";const o=s.keyType,a=o._zod.bag,c=a==null?void 0:a.patterns;if(s.mode==="loose"&&c&&c.size>0){const h=ye(s.valueType,e,{...r,path:[...r.path,"patternProperties","*"]});i.patternProperties={};for(const p of c)i.patternProperties[p.source]=h}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(i.propertyNames=ye(s.keyType,e,{...r,path:[...r.path,"propertyNames"]})),i.additionalProperties=ye(s.valueType,e,{...r,path:[...r.path,"additionalProperties"]});const u=o._zod.values;if(u){const h=[...u].filter(p=>typeof p=="string"||typeof p=="number");h.length>0&&(i.required=h)}},iT=(n,e,t,r)=>{const i=n._zod.def,s=ye(i.innerType,e,r),o=e.seen.get(n);e.target==="openapi-3.0"?(o.ref=i.innerType,t.nullable=!0):t.anyOf=[s,{type:"null"}]},sT=(n,e,t,r)=>{const i=n._zod.def;ye(i.innerType,e,r);const s=e.seen.get(n);s.ref=i.innerType},oT=(n,e,t,r)=>{const i=n._zod.def;ye(i.innerType,e,r);const s=e.seen.get(n);s.ref=i.innerType,t.default=JSON.parse(JSON.stringify(i.defaultValue))},aT=(n,e,t,r)=>{const i=n._zod.def;ye(i.innerType,e,r);const s=e.seen.get(n);s.ref=i.innerType,e.io==="input"&&(t._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},lT=(n,e,t,r)=>{const i=n._zod.def;ye(i.innerType,e,r);const s=e.seen.get(n);s.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}t.default=o},cT=(n,e,t,r)=>{const i=n._zod.def,s=e.io==="input"?i.in._zod.def.type==="transform"?i.out:i.in:i.out;ye(s,e,r);const o=e.seen.get(n);o.ref=s},uT=(n,e,t,r)=>{const i=n._zod.def;ye(i.innerType,e,r);const s=e.seen.get(n);s.ref=i.innerType,t.readOnly=!0},Nm=(n,e,t,r)=>{const i=n._zod.def;ye(i.innerType,e,r);const s=e.seen.get(n);s.ref=i.innerType},hT=A("ZodISODateTime",(n,e)=>{dA.init(n,e),ge.init(n,e)});function dT(n){return y$(hT,n)}const pT=A("ZodISODate",(n,e)=>{pA.init(n,e),ge.init(n,e)});function fT(n){return b$(pT,n)}const gT=A("ZodISOTime",(n,e)=>{fA.init(n,e),ge.init(n,e)});function mT(n){return w$(gT,n)}const vT=A("ZodISODuration",(n,e)=>{gA.init(n,e),ge.init(n,e)});function yT(n){return S$(vT,n)}const Um=(n,e)=>{bm.init(n,e),n.name="ZodError",Object.defineProperties(n,{format:{value:t=>s1(n,t)},flatten:{value:t=>i1(n,t)},addIssue:{value:t=>{n.issues.push(t),n.message=JSON.stringify(n.issues,Pc,2)}},addIssues:{value:t=>{n.issues.push(...t),n.message=JSON.stringify(n.issues,Pc,2)}},isEmpty:{get(){return n.issues.length===0}}})},Zp=A("ZodError",Um),ut=A("ZodError",Um,{Parent:Error}),bT=Qu(ut),wT=eh(ut),ST=Xa(ut),_T=Ka(ut),kT=l1(ut),ET=c1(ut),xT=u1(ut),AT=h1(ut),$T=d1(ut),TT=p1(ut),IT=f1(ut),CT=g1(ut),fe=A("ZodType",(n,e)=>(pe.init(n,e),Object.assign(n["~standard"],{jsonSchema:{input:fa(n,"input"),output:fa(n,"output")}}),n.toJSONSchema=H$(n,{}),n.def=e,n.type=e.type,Object.defineProperty(n,"_def",{value:e}),n.check=(...t)=>n.clone(En(e,{checks:[...e.checks??[],...t.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0}),n.with=n.check,n.clone=(t,r)=>xn(n,t,r),n.brand=()=>n,n.register=(t,r)=>(t.add(n,r),n),n.parse=(t,r)=>bT(n,t,r,{callee:n.parse}),n.safeParse=(t,r)=>ST(n,t,r),n.parseAsync=async(t,r)=>wT(n,t,r,{callee:n.parseAsync}),n.safeParseAsync=async(t,r)=>_T(n,t,r),n.spa=n.safeParseAsync,n.encode=(t,r)=>kT(n,t,r),n.decode=(t,r)=>ET(n,t,r),n.encodeAsync=async(t,r)=>xT(n,t,r),n.decodeAsync=async(t,r)=>AT(n,t,r),n.safeEncode=(t,r)=>$T(n,t,r),n.safeDecode=(t,r)=>TT(n,t,r),n.safeEncodeAsync=async(t,r)=>IT(n,t,r),n.safeDecodeAsync=async(t,r)=>CT(n,t,r),n.refine=(t,r)=>n.check(SI(t,r)),n.superRefine=t=>n.check(_I(t)),n.overwrite=t=>n.check(Ei(t)),n.optional=()=>Bp(n),n.exactOptional=()=>lI(n),n.nullable=()=>Vp(n),n.nullish=()=>Bp(Vp(n)),n.nonoptional=t=>fI(n,t),n.array=()=>D(n),n.or=t=>B([n,t]),n.and=t=>Qa(n,t),n.transform=t=>Gp(n,oI(t)),n.default=t=>hI(n,t),n.prefault=t=>pI(n,t),n.catch=t=>mI(n,t),n.pipe=t=>Gp(n,t),n.readonly=()=>bI(n),n.describe=t=>{const r=n.clone();return Bi.add(r,{description:t}),r},Object.defineProperty(n,"description",{get(){var t;return(t=Bi.get(n))==null?void 0:t.description},configurable:!0}),n.meta=(...t)=>{if(t.length===0)return Bi.get(n);const r=n.clone();return Bi.add(r,t[0]),r},n.isOptional=()=>n.safeParse(void 0).success,n.isNullable=()=>n.safeParse(null).success,n.apply=t=>t(n),n)),Fm=A("_ZodString",(n,e)=>{th.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(r,i,s)=>B$(n,r,i);const t=n._zod.bag;n.format=t.format??null,n.minLength=t.minimum??null,n.maxLength=t.maximum??null,n.regex=(...r)=>n.check($$(...r)),n.includes=(...r)=>n.check(C$(...r)),n.startsWith=(...r)=>n.check(P$(...r)),n.endsWith=(...r)=>n.check(R$(...r)),n.min=(...r)=>n.check(pa(...r)),n.max=(...r)=>n.check(Dm(...r)),n.length=(...r)=>n.check(Lm(...r)),n.nonempty=(...r)=>n.check(pa(1,...r)),n.lowercase=r=>n.check(T$(r)),n.uppercase=r=>n.check(I$(r)),n.trim=()=>n.check(L$()),n.normalize=(...r)=>n.check(D$(...r)),n.toLowerCase=()=>n.check(O$()),n.toUpperCase=()=>n.check(M$()),n.slugify=()=>n.check(z$())}),PT=A("ZodString",(n,e)=>{th.init(n,e),Fm.init(n,e),n.email=t=>n.check(KA(RT,t)),n.url=t=>n.check(n$(DT,t)),n.jwt=t=>n.check(v$(qT,t)),n.emoji=t=>n.check(r$(LT,t)),n.guid=t=>n.check(zp(Hp,t)),n.uuid=t=>n.check(JA(Io,t)),n.uuidv4=t=>n.check(QA(Io,t)),n.uuidv6=t=>n.check(e$(Io,t)),n.uuidv7=t=>n.check(t$(Io,t)),n.nanoid=t=>n.check(i$(OT,t)),n.guid=t=>n.check(zp(Hp,t)),n.cuid=t=>n.check(s$(MT,t)),n.cuid2=t=>n.check(o$(zT,t)),n.ulid=t=>n.check(a$(NT,t)),n.base64=t=>n.check(f$(VT,t)),n.base64url=t=>n.check(g$(GT,t)),n.xid=t=>n.check(l$(UT,t)),n.ksuid=t=>n.check(c$(FT,t)),n.ipv4=t=>n.check(u$(ZT,t)),n.ipv6=t=>n.check(h$(HT,t)),n.cidrv4=t=>n.check(d$(WT,t)),n.cidrv6=t=>n.check(p$(BT,t)),n.e164=t=>n.check(m$(jT,t)),n.datetime=t=>n.check(dT(t)),n.date=t=>n.check(fT(t)),n.time=t=>n.check(mT(t)),n.duration=t=>n.check(yT(t))});function d(n){return XA(PT,n)}const ge=A("ZodStringFormat",(n,e)=>{le.init(n,e),Fm.init(n,e)}),RT=A("ZodEmail",(n,e)=>{rA.init(n,e),ge.init(n,e)}),Hp=A("ZodGUID",(n,e)=>{tA.init(n,e),ge.init(n,e)}),Io=A("ZodUUID",(n,e)=>{nA.init(n,e),ge.init(n,e)}),DT=A("ZodURL",(n,e)=>{iA.init(n,e),ge.init(n,e)}),LT=A("ZodEmoji",(n,e)=>{sA.init(n,e),ge.init(n,e)}),OT=A("ZodNanoID",(n,e)=>{oA.init(n,e),ge.init(n,e)}),MT=A("ZodCUID",(n,e)=>{aA.init(n,e),ge.init(n,e)}),zT=A("ZodCUID2",(n,e)=>{lA.init(n,e),ge.init(n,e)}),NT=A("ZodULID",(n,e)=>{cA.init(n,e),ge.init(n,e)}),UT=A("ZodXID",(n,e)=>{uA.init(n,e),ge.init(n,e)}),FT=A("ZodKSUID",(n,e)=>{hA.init(n,e),ge.init(n,e)}),ZT=A("ZodIPv4",(n,e)=>{mA.init(n,e),ge.init(n,e)}),HT=A("ZodIPv6",(n,e)=>{vA.init(n,e),ge.init(n,e)}),WT=A("ZodCIDRv4",(n,e)=>{yA.init(n,e),ge.init(n,e)}),BT=A("ZodCIDRv6",(n,e)=>{bA.init(n,e),ge.init(n,e)}),VT=A("ZodBase64",(n,e)=>{wA.init(n,e),ge.init(n,e)}),GT=A("ZodBase64URL",(n,e)=>{_A.init(n,e),ge.init(n,e)}),jT=A("ZodE164",(n,e)=>{kA.init(n,e),ge.init(n,e)}),qT=A("ZodJWT",(n,e)=>{xA.init(n,e),ge.init(n,e)}),Zm=A("ZodNumber",(n,e)=>{Im.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(r,i,s)=>V$(n,r,i),n.gt=(r,i)=>n.check(Up(r,i)),n.gte=(r,i)=>n.check(Yl(r,i)),n.min=(r,i)=>n.check(Yl(r,i)),n.lt=(r,i)=>n.check(Np(r,i)),n.lte=(r,i)=>n.check(ql(r,i)),n.max=(r,i)=>n.check(ql(r,i)),n.int=r=>n.check(Wp(r)),n.safe=r=>n.check(Wp(r)),n.positive=r=>n.check(Up(0,r)),n.nonnegative=r=>n.check(Yl(0,r)),n.negative=r=>n.check(Np(0,r)),n.nonpositive=r=>n.check(ql(0,r)),n.multipleOf=(r,i)=>n.check(Fp(r,i)),n.step=(r,i)=>n.check(Fp(r,i)),n.finite=()=>n;const t=n._zod.bag;n.minValue=Math.max(t.minimum??Number.NEGATIVE_INFINITY,t.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,n.maxValue=Math.min(t.maximum??Number.POSITIVE_INFINITY,t.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,n.isInt=(t.format??"").includes("int")||Number.isSafeInteger(t.multipleOf??.5),n.isFinite=!0,n.format=t.format??null});function Z(n){return _$(Zm,n)}const YT=A("ZodNumberFormat",(n,e)=>{AA.init(n,e),Zm.init(n,e)});function Wp(n){return k$(YT,n)}const XT=A("ZodBoolean",(n,e)=>{$A.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>G$(n,t,r)});function Ee(n){return E$(XT,n)}const KT=A("ZodUnknown",(n,e)=>{TA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>q$()});function S(){return x$(KT)}const JT=A("ZodNever",(n,e)=>{IA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>j$(n,t,r)});function QT(n){return A$(JT,n)}const eI=A("ZodArray",(n,e)=>{CA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>Q$(n,t,r,i),n.element=e.element,n.min=(t,r)=>n.check(pa(t,r)),n.nonempty=t=>n.check(pa(1,t)),n.max=(t,r)=>n.check(Dm(t,r)),n.length=(t,r)=>n.check(Lm(t,r)),n.unwrap=()=>n.element});function D(n,e){return N$(eI,n,e)}const Hm=A("ZodObject",(n,e)=>{RA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>eT(n,t,r,i),ee(n,"shape",()=>e.shape),n.keyof=()=>ga(Object.keys(n._zod.def.shape)),n.catchall=t=>n.clone({...n._zod.def,catchall:t}),n.passthrough=()=>n.clone({...n._zod.def,catchall:S()}),n.loose=()=>n.clone({...n._zod.def,catchall:S()}),n.strict=()=>n.clone({...n._zod.def,catchall:QT()}),n.strip=()=>n.clone({...n._zod.def,catchall:void 0}),n.extend=t=>Qx(n,t),n.safeExtend=t=>e1(n,t),n.merge=t=>t1(n,t),n.pick=t=>Kx(n,t),n.omit=t=>Jx(n,t),n.partial=(...t)=>n1(Bm,n,t[0]),n.required=(...t)=>r1(Vm,n,t[0])});function Wm(n,e){const t={type:"object",shape:n??{},...O(e)};return new Hm(t)}function f(n,e){return new Hm({type:"object",shape:n,catchall:S(),...O(e)})}const tI=A("ZodUnion",(n,e)=>{DA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>tT(n,t,r,i),n.options=e.options});function B(n,e){return new tI({type:"union",options:n,...O(e)})}const nI=A("ZodIntersection",(n,e)=>{LA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>nT(n,t,r,i)});function Qa(n,e){return new nI({type:"intersection",left:n,right:e})}const rI=A("ZodRecord",(n,e)=>{OA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>rT(n,t,r,i),n.keyType=e.keyType,n.valueType=e.valueType});function k(n,e,t){return new rI({type:"record",keyType:n,valueType:e,...O(t)})}const Dc=A("ZodEnum",(n,e)=>{MA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(r,i,s)=>Y$(n,r,i),n.enum=e.entries,n.options=Object.values(e.entries);const t=new Set(Object.keys(e.entries));n.extract=(r,i)=>{const s={};for(const o of r)if(t.has(o))s[o]=e.entries[o];else throw new Error(`Key ${o} not found in enum`);return new Dc({...e,checks:[],...O(i),entries:s})},n.exclude=(r,i)=>{const s={...e.entries};for(const o of r)if(t.has(o))delete s[o];else throw new Error(`Key ${o} not found in enum`);return new Dc({...e,checks:[],...O(i),entries:s})}});function ga(n,e){const t=Array.isArray(n)?Object.fromEntries(n.map(r=>[r,r])):n;return new Dc({type:"enum",entries:t,...O(e)})}const iI=A("ZodLiteral",(n,e)=>{zA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>X$(n,t,r),n.values=new Set(e.values),Object.defineProperty(n,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function $(n,e){return new iI({type:"literal",values:Array.isArray(n)?n:[n],...O(e)})}const sI=A("ZodTransform",(n,e)=>{NA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>J$(n,t),n._zod.parse=(t,r)=>{if(r.direction==="backward")throw new pm(n.constructor.name);t.addIssue=s=>{if(typeof s=="string")t.issues.push(ss(s,t.value,e));else{const o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=t.value),o.inst??(o.inst=n),t.issues.push(ss(o))}};const i=e.transform(t.value,t);return i instanceof Promise?i.then(s=>(t.value=s,t)):(t.value=i,t)}});function oI(n){return new sI({type:"transform",transform:n})}const Bm=A("ZodOptional",(n,e)=>{Rm.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>Nm(n,t,r,i),n.unwrap=()=>n._zod.def.innerType});function Bp(n){return new Bm({type:"optional",innerType:n})}const aI=A("ZodExactOptional",(n,e)=>{UA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>Nm(n,t,r,i),n.unwrap=()=>n._zod.def.innerType});function lI(n){return new aI({type:"optional",innerType:n})}const cI=A("ZodNullable",(n,e)=>{FA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>iT(n,t,r,i),n.unwrap=()=>n._zod.def.innerType});function Vp(n){return new cI({type:"nullable",innerType:n})}const uI=A("ZodDefault",(n,e)=>{ZA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>oT(n,t,r,i),n.unwrap=()=>n._zod.def.innerType,n.removeDefault=n.unwrap});function hI(n,e){return new uI({type:"default",innerType:n,get defaultValue(){return typeof e=="function"?e():vm(e)}})}const dI=A("ZodPrefault",(n,e)=>{HA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>aT(n,t,r,i),n.unwrap=()=>n._zod.def.innerType});function pI(n,e){return new dI({type:"prefault",innerType:n,get defaultValue(){return typeof e=="function"?e():vm(e)}})}const Vm=A("ZodNonOptional",(n,e)=>{WA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>sT(n,t,r,i),n.unwrap=()=>n._zod.def.innerType});function fI(n,e){return new Vm({type:"nonoptional",innerType:n,...O(e)})}const gI=A("ZodCatch",(n,e)=>{BA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>lT(n,t,r,i),n.unwrap=()=>n._zod.def.innerType,n.removeCatch=n.unwrap});function mI(n,e){return new gI({type:"catch",innerType:n,catchValue:typeof e=="function"?e:()=>e})}const vI=A("ZodPipe",(n,e)=>{VA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>cT(n,t,r,i),n.in=e.in,n.out=e.out});function Gp(n,e){return new vI({type:"pipe",in:n,out:e})}const yI=A("ZodReadonly",(n,e)=>{GA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>uT(n,t,r,i),n.unwrap=()=>n._zod.def.innerType});function bI(n){return new yI({type:"readonly",innerType:n})}const wI=A("ZodCustom",(n,e)=>{jA.init(n,e),fe.init(n,e),n._zod.processJSONSchema=(t,r,i)=>K$(n,t)});function SI(n,e={}){return U$(wI,n,e)}function _I(n){return F$(n)}const Xl={custom:"custom"},kI=["text/markdown","text/html"],EI=["committed","pending"];function xI(n){let e;try{e=new URL(n)}catch{return!1}return e.protocol==="http:"||e.protocol==="https:"}Wm({id:d().min(1),type:ga(kI),title:d(),status:ga(EI),externalFilePath:d().optional(),externalURL:d().optional()}).superRefine((n,e)=>{n.externalFilePath!==void 0&&n.externalURL!==void 0&&e.addIssue({code:Xl.custom,message:"externalFilePath and externalURL are mutually exclusive",path:["externalURL"]}),n.externalURL!==void 0&&(xI(n.externalURL)||e.addIssue({code:Xl.custom,message:"externalURL must be an http(s) URL",path:["externalURL"]}),n.status!=="committed"&&e.addIssue({code:Xl.custom,message:"URL-backed artifacts must have status committed",path:["status"]}))});Wm({name:d().min(1),description:d(),accepts:D(d().min(1)).min(1)});function Gm(n){return typeof n=="object"&&n!==null}function AI(n){return!Gm(n)||n.type!=="ready"?!1:!("id"in n)}function $I(n){return!(!Gm(n)||n.type!=="update-content"||typeof n.id!="string"||typeof n.content!="string")}function TI(n,e){if(n===e)return 2;if(n==="*/*")return 0;const t=n.indexOf("/");if(t>0&&n.slice(t+1)==="*"){const r=n.slice(0,t),i=e.indexOf("/");if(i>0&&e.slice(0,i)===r)return 1}return null}function II(n,e){let t=null;for(const r of n.accepts){const i=TI(r,e);i!==null&&(t===null||i>t)&&(t=i)}return t}function CI(n,e){let t=-1,r=null;for(const i of e){const s=II(i,n);s!==null&&(s>t||s===t&&r!==null&&i.id<r.id)&&(t=s,r=i)}return r}const PI=4401;class Lc extends Error{constructor(e="Authentication required"){super(e),this.name="AuthError"}}class Oc extends wt{constructor(t){super();b(this,"url");b(this,"name");b(this,"token");b(this,"status","disconnected");b(this,"screens",new Map);b(this,"views",[]);b(this,"client");b(this,"createSocket");b(this,"createClient");b(this,"socket",null);b(this,"connectAttempt",0);this.url=ht(t.url),this.name=t.name,this.token=t.token??null,this.createSocket=t.createSocket??(r=>new WebSocket(r)),this.createClient=t.createClient??((r,i)=>new Lx(r,{token:i??void 0})),this.client=this.createClient(this.url,this.token)}async connect(){var i;this.connectAttempt+=1;const t=this.connectAttempt;(i=this.socket)==null||i.close(),this.client=this.createClient(this.url,this.token),this.status="connecting",this.dispatchEvent(new K("change"));const r=this.createSocket(RI(this.url,this.token));return this.socket=r,await new Promise((s,o)=>{let a=!1;const c=()=>{a||this.connectAttempt!==t||(a=!0,this.status="connected",this.dispatchEvent(new K("change")),s())},u=p=>{a||this.connectAttempt!==t||(a=!0,this.status="disconnected",this.dispatchEvent(new K("change")),o(p))},h=async()=>{try{const[{screens:p},v]=await Promise.all([this.client.screens.list(),this.client.views.list()]);this.screens=new Map(p.map(g=>[g.id,structuredClone(g)])),this.views=v,this.dispatchEvent(new K("change")),c()}catch(p){u(p instanceof Error?p:new Error(String(p)))}};r.addEventListener("open",()=>{h()}),r.addEventListener("message",p=>{const v=LI(p);v&&(this.applyServerEvent(v),this.dispatchEvent(new sm("server-event",{serverURL:this.url,event:v})))}),r.addEventListener("close",p=>{if(this.connectAttempt===t){if(this.socket=null,DI(p)===PI){u(new Lc);return}if(!a){u(new Error("Connection closed before initialization"));return}this.status="disconnected",this.dispatchEvent(new K("change"))}}),r.addEventListener("error",()=>{u(new Error("WebSocket connection failed"))})})}disconnect(){var t;this.connectAttempt+=1,(t=this.socket)==null||t.close(),this.socket=null,this.status="disconnected",this.dispatchEvent(new K("change"))}getViewURL(t){const r=CI(t.type,this.views);if(!r)return null;const i=`${this.url}/views/${encodeURIComponent(r.id)}/`;return this.token===null?i:`${i}?token=${encodeURIComponent(this.token)}`}getContentURL(t){const r=`${this.url}/artifacts/${encodeURIComponent(t)}/content`;return this.token===null?r:`${r}?token=${encodeURIComponent(this.token)}`}async createScreen(t){const{screen:r}=await this.client.screens.create({name:t});return this.screens.set(r.id,structuredClone(r)),r}applyServerEvent(t){switch(t.type){case"screen-created":this.screens.set(t.screen.id,structuredClone(t.screen)),this.dispatchEvent(new jo("screens-changed"));break;case"screen-updated":this.screens.set(t.screen.id,structuredClone(t.screen)),this.dispatchEvent(new jo("screens-changed"));break;case"screen-removed":this.screens.delete(t.screenID),this.dispatchEvent(new jo("screens-changed"));break;case"artifact-created":break;case"artifact-attached":{const r=this.screens.get(t.screenID);r&&!nm(r.layout,t.artifact.id)&&(r.layout=[...r.layout,tm(t.artifact.id,{id:t.cardID})]);break}case"artifact-removed":{const r=this.screens.get(t.screenID);r&&(r.layout=Gg(r.layout,t.artifactID));break}}}}function RI(n,e){const t=new URL(n);return t.protocol=t.protocol==="https:"?"wss:":"ws:",t.pathname="/events",t.search="",e&&t.searchParams.set("token",e),t.hash="",t.toString()}function DI(n){return typeof n=="object"&&n!==null&&"code"in n&&typeof n.code=="number"?n.code:null}function LI(n){const e=typeof n=="string"?n:typeof n=="object"&&n!==null&&"data"in n&&typeof n.data=="string"?n.data:"";if(!e)return null;try{return JSON.parse(e)}catch{return null}}const OI="Local";class MI extends wt{constructor(t){super();b(this,"servers",new Map);b(this,"localServerURL");b(this,"localStore");b(this,"createSocket");b(this,"lastActiveServerURL");b(this,"serverListeners",new Map);b(this,"handleLocalStoreChange",()=>{const t=this.localStore.get().activeServerURL;t!==this.lastActiveServerURL&&(this.lastActiveServerURL=t,this.dispatchEvent(new K("change")))});this.localStore=t.localStore,this.localServerURL=t.localServerURL?ht(t.localServerURL):null,this.createSocket=t.createSocket??(r=>new WebSocket(r)),this.lastActiveServerURL=this.localStore.get().activeServerURL,this.localStore.addEventListener("change",this.handleLocalStoreChange)}get activeServer(){const t=this.localStore.get().activeServerURL;return t===null?null:this.servers.get(t)??null}add(t){const r=ht(t.url);this.servers.get(r)&&this.remove(r),this.servers.set(r,t);const s=()=>{this.dispatchEvent(new K("change"))},o=c=>{this.dispatchEvent(new sm("server-event",{serverURL:c.serverURL,event:c.event}))},a=()=>{this.dispatchEvent(new jo("screens-changed"))};t.addEventListener("change",s),t.addEventListener("server-event",o),t.addEventListener("screens-changed",a),this.serverListeners.set(r,{onServerChange:s,onServerEvent:o,onScreensChanged:a}),this.dispatchEvent(new K("change"))}remove(t){const r=ht(t);if(this.localServerURL&&r===this.localServerURL)return;const i=this.servers.get(r);if(!i)return;const s=this.serverListeners.get(r);s&&(i.removeEventListener("change",s.onServerChange),i.removeEventListener("server-event",s.onServerEvent),i.removeEventListener("screens-changed",s.onScreensChanged),this.serverListeners.delete(r)),i.disconnect(),this.servers.delete(r);const o=this.localStore.get(),a=o.activeServerURL===r;this.localStore.set({...o,servers:o.servers.filter(c=>c.url!==r),activeServerURL:a?null:o.activeServerURL}),this.dispatchEvent(new K("change"))}setActive(t){const r=this.localStore.get(),i=t?ht(t.url):null;r.activeServerURL!==i&&this.localStore.set({...r,activeServerURL:i})}connectConfiguredServers(t,r){const i=t?ht(t):null;if(i){const a=this.localStore.get();a.servers.some(u=>ht(u.url)===i)||this.localStore.set({...a,servers:[...a.servers,{url:i,name:OI}]})}const s=this.localStore.get().servers;for(const a of s){const c=ht(a.url),u=i!==null&&c===i,h=new Oc({url:a.url,name:a.name,token:u?r??null:null,createSocket:this.createSocket});this.add(h),h.connect().catch(()=>{})}const o=i?this.servers.get(i)??null:null;this.setActive(o??this.servers.values().next().value??null)}addServer(t,r){const i=ht(t);this.remove(i);const s=this.localStore.get();this.localStore.set({...s,servers:[...s.servers.filter(a=>ht(a.url)!==i),{url:i,name:r}]});const o=new Oc({url:i,name:r,createSocket:this.createSocket});this.add(o),this.setActive(o),o.connect().catch(()=>{})}removeServer(t){this.remove(t)}}const ae={authenticate:"authenticate",document_did_change:"document/didChange",document_did_close:"document/didClose",document_did_focus:"document/didFocus",document_did_open:"document/didOpen",document_did_save:"document/didSave",initialize:"initialize",logout:"logout",nes_accept:"nes/accept",nes_close:"nes/close",nes_reject:"nes/reject",nes_start:"nes/start",nes_suggest:"nes/suggest",session_cancel:"session/cancel",session_close:"session/close",session_fork:"session/fork",session_list:"session/list",session_load:"session/load",session_new:"session/new",session_prompt:"session/prompt",session_resume:"session/resume",session_set_config_option:"session/set_config_option",session_set_mode:"session/set_mode",session_set_model:"session/set_model"},Ft={fs_read_text_file:"fs/read_text_file",fs_write_text_file:"fs/write_text_file",session_request_permission:"session/request_permission",session_update:"session/update",terminal_create:"terminal/create",terminal_kill:"terminal/kill",terminal_output:"terminal/output",terminal_release:"terminal/release",terminal_wait_for_exit:"terminal/wait_for_exit"},zI=1,NI=f({_meta:k(d(),S()).nullish(),terminal:Ee().optional().default(!1)}),UI=f({_meta:k(d(),S()).nullish(),label:d().nullish(),name:d(),optional:Ee().optional().default(!1),secret:Ee().optional().default(!0)}),FI=f({_meta:k(d(),S()).nullish(),description:d().nullish(),id:d(),name:d()}),ZI=f({_meta:k(d(),S()).nullish(),description:d().nullish(),id:d(),link:d().nullish(),name:d(),vars:D(UI)}),HI=f({_meta:k(d(),S()).nullish(),args:D(d()).optional(),description:d().nullish(),env:k(d(),d()).optional(),id:d(),name:d()}),WI=B([ZI.and(f({type:$("env_var")})),HI.and(f({type:$("terminal")})),FI]),BI=f({_meta:k(d(),S()).nullish(),methodId:d()}),VI=f({_meta:k(d(),S()).nullish()}),GI=f({_meta:k(d(),S()).nullish(),blob:d(),mimeType:d().nullish(),uri:d()}),jI=f({default:Ee().nullish(),description:d().nullish(),title:d().nullish()}),qI=f({_meta:k(d(),S()).nullish()}),YI=f({_meta:k(d(),S()).nullish()}),XI=f({amount:Z(),currency:d()}),KI=f({_meta:k(d(),S()).nullish(),terminalId:d()}),JI=f({_meta:k(d(),S()).nullish(),newText:d(),oldText:d().nullish(),path:d()}),QI=B([d(),Z(),Z(),Ee(),D(d())]),eC=f({content:k(d(),QI).nullish()}),tC=B([eC.and(f({action:$("accept")})),f({action:$("decline")}),f({action:$("cancel")})]),nC=f({_meta:k(d(),S()).nullish()}),jm=d(),rC=f({_meta:k(d(),S()).nullish(),elicitationId:jm}),iC=f({_meta:k(d(),S()).nullish(),action:tC}),sC=$("object"),oC=$("string"),aC=f({_meta:k(d(),S()).nullish()}),lC=f({_meta:k(d(),S()).nullish(),form:nC.nullish(),url:aC.nullish()}),cC=f({elicitationId:jm,url:d().url()}),qm=f({const:d(),title:d()}),Ym=f({_meta:k(d(),S()).nullish(),name:d(),value:d()}),uC=B([$(-32700),$(-32600),$(-32601),$(-32602),$(-32603),$(-32800),$(-32e3),$(-32002),$(-32042),Z().int().min(-2147483648,{message:"Invalid value: Expected int32 to be >= -2147483648"}).max(2147483647,{message:"Invalid value: Expected int32 to be <= 2147483647"})]),Xm=f({code:uC,data:S().optional(),message:d()}),Km=S(),Jm=S(),Qm=S(),hC=f({_meta:k(d(),S()).nullish(),readTextFile:Ee().optional().default(!1),writeTextFile:Ee().optional().default(!1)}),ev=f({_meta:k(d(),S()).nullish(),name:d(),value:d()}),tv=f({_meta:k(d(),S()).nullish(),name:d(),title:d().nullish(),version:d()}),dC=f({default:Z().nullish(),description:d().nullish(),maximum:Z().nullish(),minimum:Z().nullish(),title:d().nullish()}),pC=f({_meta:k(d(),S()).nullish()}),fC=f({_meta:k(d(),S()).nullish(),additionalDirectories:D(d()).optional(),cursor:d().nullish(),cwd:d().nullish()}),gC=f({_meta:k(d(),S()).nullish()}),mC=f({_meta:k(d(),S()).nullish(),logout:gC.nullish()}),vC=f({_meta:k(d(),S()).nullish()}),yC=f({_meta:k(d(),S()).nullish()}),bC=f({_meta:k(d(),S()).nullish(),http:Ee().optional().default(!1),sse:Ee().optional().default(!1)}),wC=f({_meta:k(d(),S()).nullish(),headers:D(ev),name:d(),url:d()}),SC=f({_meta:k(d(),S()).nullish(),headers:D(ev),name:d(),url:d()}),_C=f({_meta:k(d(),S()).nullish(),args:D(d()),command:d(),env:D(Ym),name:d()}),el=B([wC.and(f({type:$("http")})),SC.and(f({type:$("sse")})),_C]),nh=d(),kC=f({_meta:k(d(),S()).nullish(),description:d().nullish(),modelId:nh,name:d()}),EC=B([$("error"),$("warning"),$("information"),$("hint")]),xC=f({_meta:k(d(),S()).nullish()}),AC=f({_meta:k(d(),S()).nullish()}),$C=f({_meta:k(d(),S()).nullish()}),TC=f({_meta:k(d(),S()).nullish()}),IC=f({_meta:k(d(),S()).nullish()}),CC=f({_meta:k(d(),S()).nullish(),maxCount:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish()}),PC=f({diff:d(),uri:d()}),RC=f({endLine:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}),startLine:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}),text:d()}),DC=f({_meta:k(d(),S()).nullish()}),LC=f({_meta:k(d(),S()).nullish()}),OC=f({languageId:d(),text:d(),uri:d()}),MC=f({_meta:k(d(),S()).nullish(),maxCount:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish()}),zC=B([$("rejected"),$("ignored"),$("replaced"),$("cancelled")]),NC=f({excerpts:D(RC),uri:d()}),UC=f({_meta:k(d(),S()).nullish()}),FC=f({_meta:k(d(),S()).nullish()}),ZC=f({name:d(),owner:d(),remoteUrl:d()}),HC=f({_meta:k(d(),S()).nullish()}),WC=f({_meta:k(d(),S()).nullish(),jump:DC.nullish(),rename:FC.nullish(),searchAndReplace:HC.nullish()}),BC=f({id:d(),isRegex:Ee().nullish(),replace:d(),search:d(),uri:d()}),VC=B([$("automatic"),$("diagnostic"),$("manual")]),GC=f({_meta:k(d(),S()).nullish(),maxCount:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish()}),jC=f({_meta:k(d(),S()).nullish(),diagnostics:xC.nullish(),editHistory:CC.nullish(),openFiles:LC.nullish(),recentFiles:MC.nullish(),relatedSnippets:UC.nullish(),userActions:GC.nullish()}),qC=f({_meta:k(d(),S()).nullish(),additionalDirectories:D(d()).optional(),cwd:d(),mcpServers:D(el)}),YC=f({default:Z().nullish(),description:d().nullish(),maximum:Z().nullish(),minimum:Z().nullish(),title:d().nullish()}),nv=d(),XC=B([$("allow_once"),$("allow_always"),$("reject_once"),$("reject_always")]),KC=f({_meta:k(d(),S()).nullish(),kind:XC,name:d(),optionId:nv}),JC=B([$("high"),$("medium"),$("low")]),QC=B([$("pending"),$("in_progress"),$("completed")]),eP=f({_meta:k(d(),S()).nullish(),content:d(),priority:JC,status:QC}),tP=f({_meta:k(d(),S()).nullish(),entries:D(eP)}),bn=f({character:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}),line:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"})}),nP=f({id:d(),position:bn,uri:d()}),rP=f({id:d(),newName:d(),position:bn,uri:d()}),iP=f({action:d(),position:bn,timestampMs:Z(),uri:d()}),rv=B([$("utf-16"),$("utf-32"),$("utf-8")]),sP=f({_meta:k(d(),S()).nullish(),auth:NI.optional().default({terminal:!1}),elicitation:lC.nullish(),fs:hC.optional().default({readTextFile:!1,writeTextFile:!1}),nes:WC.nullish(),positionEncodings:D(rv).optional(),terminal:Ee().optional().default(!1)}),oP=f({_meta:k(d(),S()).nullish(),audio:Ee().optional().default(!1),embeddedContext:Ee().optional().default(!1),image:Ee().optional().default(!1)}),iv=Z().int().gte(0).lte(65535),aP=f({_meta:k(d(),S()).nullish(),clientCapabilities:sP.optional().default({auth:{terminal:!1},fs:{readTextFile:!1,writeTextFile:!1},terminal:!1}),clientInfo:tv.nullish(),protocolVersion:iv}),xi=f({end:bn,start:bn}),lP=f({message:d(),range:xi,severity:EC,uri:d()}),cP=f({languageId:d(),lastFocusedMs:Z().nullish(),uri:d(),visibleRange:xi.nullish()}),uP=f({_meta:k(d(),S()).nullish(),diagnostics:D(lP).nullish(),editHistory:D(PC).nullish(),openFiles:D(cP).nullish(),recentFiles:D(OC).nullish(),relatedSnippets:D(NC).nullish(),userActions:D(iP).nullish()}),hP=f({newText:d(),range:xi}),dP=f({cursorPosition:bn.nullish(),edits:D(hP),id:d(),uri:d()}),pP=B([dP.and(f({kind:$("edit")})),nP.and(f({kind:$("jump")})),rP.and(f({kind:$("rename")})),BC.and(f({kind:$("searchAndReplace")}))]),fP=f({_meta:k(d(),S()).nullish(),content:d()}),gP=f({_meta:k(d(),S()).nullish()}),dr=B([Z(),d()]).nullable();f({_meta:k(d(),S()).nullish(),requestId:dr});const mP=ga(["assistant","user"]),oo=f({_meta:k(d(),S()).nullish(),audience:D(mP).nullish(),lastModified:d().nullish(),priority:Z().nullish()}),vP=f({_meta:k(d(),S()).nullish(),annotations:oo.nullish(),data:d(),mimeType:d()}),yP=f({_meta:k(d(),S()).nullish(),annotations:oo.nullish(),data:d(),mimeType:d(),uri:d().nullish()}),bP=f({_meta:k(d(),S()).nullish(),annotations:oo.nullish(),description:d().nullish(),mimeType:d().nullish(),name:d(),size:Z().nullish(),title:d().nullish(),uri:d()}),wP=f({_meta:k(d(),S()).nullish(),optionId:nv}),SP=B([f({outcome:$("cancelled")}),wP.and(f({outcome:$("selected")}))]),_P=f({_meta:k(d(),S()).nullish(),outcome:SP}),kP=f({_meta:k(d(),S()).nullish()}),EP=f({_meta:k(d(),S()).nullish()}),xP=f({currentValue:Ee()}),AP=d(),sv=d(),$P=B([$("mode"),$("model"),$("thought_level"),d()]),rh=d(),ov=f({_meta:k(d(),S()).nullish(),description:d().nullish(),name:d(),value:rh}),TP=f({_meta:k(d(),S()).nullish(),group:AP,name:d(),options:D(ov)}),IP=B([D(ov),D(TP)]),CP=f({currentValue:rh,options:IP}),Ai=Qa(B([CP.and(f({type:$("select")})),xP.and(f({type:$("boolean")}))]),f({_meta:k(d(),S()).nullish(),category:$P.nullish(),description:d().nullish(),id:sv,name:d()})),PP=f({_meta:k(d(),S()).nullish(),configOptions:D(Ai)}),RP=f({_meta:k(d(),S()).nullish()}),X=d(),DP=f({_meta:k(d(),S()).nullish(),id:d(),sessionId:X}),LP=f({_meta:k(d(),S()).nullish(),sessionId:X}),OP=f({_meta:k(d(),S()).nullish(),sessionId:X}),MP=f({_meta:k(d(),S()).nullish(),sessionId:X}),av=f({_meta:k(d(),S()).nullish(),args:D(d()).optional(),command:d(),cwd:d().nullish(),env:D(Ym).optional(),outputByteLimit:Z().nullish(),sessionId:X}),zP=f({_meta:k(d(),S()).nullish(),sessionId:X,uri:d()}),NP=f({_meta:k(d(),S()).nullish(),position:bn,sessionId:X,uri:d(),version:Z(),visibleRange:xi}),UP=f({_meta:k(d(),S()).nullish(),languageId:d(),sessionId:X,text:d(),uri:d(),version:Z()}),FP=f({_meta:k(d(),S()).nullish(),sessionId:X,uri:d()}),ZP=f({_meta:k(d(),S()).nullish(),additionalDirectories:D(d()).optional(),cwd:d(),mcpServers:D(el).optional(),sessionId:X}),lv=f({_meta:k(d(),S()).nullish(),sessionId:X,terminalId:d()}),HP=f({_meta:k(d(),S()).nullish(),additionalDirectories:D(d()).optional(),cwd:d(),mcpServers:D(el),sessionId:X}),cv=f({_meta:k(d(),S()).nullish(),limit:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),line:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),path:d(),sessionId:X}),WP=f({_meta:k(d(),S()).nullish(),id:d(),reason:zC.nullish(),sessionId:X}),uv=f({_meta:k(d(),S()).nullish(),sessionId:X,terminalId:d()}),BP=f({_meta:k(d(),S()).nullish(),additionalDirectories:D(d()).optional(),cwd:d(),mcpServers:D(el).optional(),sessionId:X}),VP=f({_meta:k(d(),S()).nullish(),additionalDirectories:D(d()).optional(),cwd:d(),sessionId:X,title:d().nullish(),updatedAt:d().nullish()}),GP=f({_meta:k(d(),S()).nullish(),nextCursor:d().nullish(),sessions:D(VP)}),jP=f({_meta:k(d(),S()).nullish(),title:d().nullish(),updatedAt:d().nullish()}),qP=f({_meta:k(d(),S()).nullish()}),tl=d(),YP=f({_meta:k(d(),S()).nullish(),currentModeId:tl}),XP=f({_meta:k(d(),S()).nullish(),description:d().nullish(),id:tl,name:d()}),nl=f({_meta:k(d(),S()).nullish(),availableModes:D(XP),currentModeId:tl}),rl=f({_meta:k(d(),S()).nullish(),availableModels:D(kC),currentModelId:nh}),KP=f({_meta:k(d(),S()).nullish(),configOptions:D(Ai).nullish(),models:rl.nullish(),modes:nl.nullish(),sessionId:X}),JP=f({_meta:k(d(),S()).nullish(),configOptions:D(Ai).nullish(),models:rl.nullish(),modes:nl.nullish()}),QP=f({_meta:k(d(),S()).nullish(),configOptions:D(Ai).nullish(),models:rl.nullish(),modes:nl.nullish(),sessionId:X}),eR=f({_meta:k(d(),S()).nullish(),configOptions:D(Ai).nullish(),models:rl.nullish(),modes:nl.nullish()}),tR=f({_meta:k(d(),S()).nullish()}),nR=f({_meta:k(d(),S()).nullish(),additionalDirectories:kP.nullish(),close:EP.nullish(),fork:RP.nullish(),list:qP.nullish(),resume:tR.nullish()}),rR=Qa(B([f({type:$("boolean"),value:Ee()}),f({value:rh})]),f({_meta:k(d(),S()).nullish(),configId:sv,sessionId:X})),iR=f({_meta:k(d(),S()).nullish(),configOptions:D(Ai)}),sR=f({_meta:k(d(),S()).nullish(),modeId:tl,sessionId:X}),oR=f({_meta:k(d(),S()).nullish()}),aR=f({_meta:k(d(),S()).nullish(),modelId:nh,sessionId:X}),lR=f({_meta:k(d(),S()).nullish()}),cR=f({_meta:k(d(),S()).nullish(),sessionId:X}),uR=B([$("end_turn"),$("max_tokens"),$("max_turn_requests"),$("refusal"),$("cancelled")]),hR=B([$("email"),$("uri"),$("date"),$("date-time")]),dR=f({default:d().nullish(),description:d().nullish(),enum:D(d()).nullish(),format:hR.nullish(),maxLength:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),minLength:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),oneOf:D(qm).nullish(),pattern:d().nullish(),title:d().nullish()}),pR=f({_meta:k(d(),S()).nullish(),context:uP.nullish(),position:bn,selection:xi.nullish(),sessionId:X,triggerKind:VC,uri:d(),version:Z()}),fR=f({_meta:k(d(),S()).nullish(),suggestions:D(pP)}),gR=f({_meta:k(d(),S()).nullish(),terminalId:d()}),mR=f({_meta:k(d(),S()).nullish(),exitCode:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),signal:d().nullish()}),hv=f({_meta:k(d(),S()).nullish(),sessionId:X,terminalId:d()}),vR=f({_meta:k(d(),S()).nullish(),exitStatus:mR.nullish(),output:d(),truncated:Ee()}),yR=f({_meta:k(d(),S()).nullish(),annotations:oo.nullish(),text:d()}),bR=f({range:xi.nullish(),text:d()}),wR=f({_meta:k(d(),S()).nullish(),contentChanges:D(bR),sessionId:X,uri:d(),version:Z()});f({method:d(),params:B([LP,UP,wR,zP,FP,NP,DP,WP,Km]).nullish()});const SR=B([$("full"),$("incremental")]),_R=f({_meta:k(d(),S()).nullish(),syncKind:SR}),kR=f({_meta:k(d(),S()).nullish(),didChange:_R.nullish(),didClose:AC.nullish(),didFocus:$C.nullish(),didOpen:TC.nullish(),didSave:IC.nullish()}),ER=f({_meta:k(d(),S()).nullish(),document:kR.nullish()}),xR=f({_meta:k(d(),S()).nullish(),context:jC.nullish(),events:ER.nullish()}),AR=f({_meta:k(d(),S()).nullish(),auth:mC.optional().default({}),loadSession:Ee().optional().default(!1),mcpCapabilities:bC.optional().default({http:!1,sse:!1}),nes:xR.nullish(),positionEncoding:rv.nullish(),promptCapabilities:oP.optional().default({audio:!1,embeddedContext:!1,image:!1}),sessionCapabilities:nR.optional().default({})}),$R=f({_meta:k(d(),S()).nullish(),agentCapabilities:AR.optional().default({auth:{},loadSession:!1,mcpCapabilities:{http:!1,sse:!1},promptCapabilities:{audio:!1,embeddedContext:!1,image:!1},sessionCapabilities:{}}),agentInfo:tv.nullish(),authMethods:D(WI).optional().default([]),protocolVersion:iv}),TR=f({_meta:k(d(),S()).nullish(),mimeType:d().nullish(),text:d(),uri:d()}),IR=B([TR,GI]),CR=f({_meta:k(d(),S()).nullish(),annotations:oo.nullish(),resource:IR}),ih=B([yR.and(f({type:$("text")})),yP.and(f({type:$("image")})),vP.and(f({type:$("audio")})),bP.and(f({type:$("resource_link")})),CR.and(f({type:$("resource")}))]),PR=f({_meta:k(d(),S()).nullish(),content:ih}),Kl=f({_meta:k(d(),S()).nullish(),content:ih,messageId:d().nullish()}),RR=f({_meta:k(d(),S()).nullish(),messageId:d().nullish(),prompt:D(ih),sessionId:X}),DR=f({anyOf:D(qm)}),dv=B([PR.and(f({type:$("content")})),JI.and(f({type:$("diff")})),gR.and(f({type:$("terminal")}))]),pv=d(),fv=f({_meta:k(d(),S()).nullish(),line:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),path:d()}),gv=B([$("pending"),$("in_progress"),$("completed"),$("failed")]),mv=B([$("read"),$("edit"),$("delete"),$("move"),$("search"),$("execute"),$("think"),$("fetch"),$("switch_mode"),$("other")]),LR=f({_meta:k(d(),S()).nullish(),content:D(dv).optional(),kind:mv.optional(),locations:D(fv).optional(),rawInput:S().optional(),rawOutput:S().optional(),status:gv.optional(),title:d(),toolCallId:pv}),vv=f({_meta:k(d(),S()).nullish(),content:D(dv).nullish(),kind:mv.nullish(),locations:D(fv).nullish(),rawInput:S().optional(),rawOutput:S().optional(),status:gv.nullish(),title:d().nullish(),toolCallId:pv}),yv=f({_meta:k(d(),S()).nullish(),options:D(KC),sessionId:X,toolCall:vv}),OR=f({_meta:k(d(),S()).nullish(),hint:d()}),MR=OR,zR=f({_meta:k(d(),S()).nullish(),description:d(),input:MR.nullish(),name:d()}),NR=f({_meta:k(d(),S()).nullish(),availableCommands:D(zR)}),UR=f({enum:D(d()),type:oC}),FR=B([UR,DR]),ZR=f({default:D(d()).nullish(),description:d().nullish(),items:FR,maxItems:Z().nullish(),minItems:Z().nullish(),title:d().nullish()}),HR=B([dR.and(f({type:$("string")})),YC.and(f({type:$("number")})),dC.and(f({type:$("integer")})),jI.and(f({type:$("boolean")})),ZR.and(f({type:$("array")}))]),WR=f({description:d().nullish(),properties:k(d(),HR).optional().default({}),required:D(d()).nullish(),title:d().nullish(),type:sC.optional().default("object")}),BR=f({requestedSchema:WR}),VR=Qa(B([BR.and(f({mode:$("form")})),cC.and(f({mode:$("url")}))]),f({_meta:k(d(),S()).nullish(),message:d(),sessionId:X})),GR=f({cachedReadTokens:Z().nullish(),cachedWriteTokens:Z().nullish(),inputTokens:Z(),outputTokens:Z(),thoughtTokens:Z().nullish(),totalTokens:Z()}),jR=f({_meta:k(d(),S()).nullish(),stopReason:uR,usage:GR.nullish(),userMessageId:d().nullish()});B([f({id:dr,result:B([$R,VI,yC,QP,JP,GP,KP,eR,YI,oR,iR,jR,lR,cR,fR,qI,Qm])}),f({error:Xm,id:dr})]);const qR=f({_meta:k(d(),S()).nullish(),cost:XI.nullish(),size:Z(),used:Z()}),YR=B([Kl.and(f({sessionUpdate:$("user_message_chunk")})),Kl.and(f({sessionUpdate:$("agent_message_chunk")})),Kl.and(f({sessionUpdate:$("agent_thought_chunk")})),LR.and(f({sessionUpdate:$("tool_call")})),vv.and(f({sessionUpdate:$("tool_call_update")})),tP.and(f({sessionUpdate:$("plan")})),NR.and(f({sessionUpdate:$("available_commands_update")})),YP.and(f({sessionUpdate:$("current_mode_update")})),PP.and(f({sessionUpdate:$("config_option_update")})),jP.and(f({sessionUpdate:$("session_info_update")})),qR.and(f({sessionUpdate:$("usage_update")}))]),bv=f({_meta:k(d(),S()).nullish(),sessionId:X,update:YR});f({method:d(),params:B([bv,rC,Km]).nullish()});const wv=f({_meta:k(d(),S()).nullish(),sessionId:X,terminalId:d()}),XR=f({_meta:k(d(),S()).nullish(),exitCode:Z().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),signal:d().nullish()}),KR=f({name:d(),uri:d()}),JR=f({_meta:k(d(),S()).nullish(),repository:ZC.nullish(),workspaceFolders:D(KR).nullish(),workspaceUri:d().nullish()});f({id:dr,method:d(),params:B([aP,BI,vC,qC,HP,fC,ZP,BP,MP,sR,rR,RR,aR,JR,pR,OP,Jm]).nullish()});const Sv=f({_meta:k(d(),S()).nullish(),content:d(),path:d(),sessionId:X});f({id:dr,method:d(),params:B([Sv,cv,yv,av,hv,uv,wv,lv,VR,Jm]).nullish()});const QR=f({_meta:k(d(),S()).nullish()});B([f({id:dr,result:B([QR,fP,_P,KI,vR,gP,XR,pC,iC,Qm])}),f({error:Xm,id:dr})]);var Y;class eD{constructor(e,t){w(this,Y);const r=e(this),i=async(o,a)=>{var c,u,h,p,v,g,E;switch(o){case Ft.fs_write_text_file:{const _=Sv.parse(a);return(c=r.writeTextFile)==null?void 0:c.call(r,_)}case Ft.fs_read_text_file:{const _=cv.parse(a);return(u=r.readTextFile)==null?void 0:u.call(r,_)}case Ft.session_request_permission:{const _=yv.parse(a);return r.requestPermission(_)}case Ft.terminal_create:{const _=av.parse(a);return(h=r.createTerminal)==null?void 0:h.call(r,_)}case Ft.terminal_output:{const _=hv.parse(a);return(p=r.terminalOutput)==null?void 0:p.call(r,_)}case Ft.terminal_release:{const _=uv.parse(a);return await((v=r.releaseTerminal)==null?void 0:v.call(r,_))??{}}case Ft.terminal_wait_for_exit:{const _=wv.parse(a);return(g=r.waitForTerminalExit)==null?void 0:g.call(r,_)}case Ft.terminal_kill:{const _=lv.parse(a);return await((E=r.killTerminal)==null?void 0:E.call(r,_))??{}}default:if(r.extMethod)return r.extMethod(o,a);throw Se.methodNotFound(o)}},s=async(o,a)=>{switch(o){case Ft.session_update:{const c=bv.parse(a);return r.sessionUpdate(c)}default:if(r.extNotification)return r.extNotification(o,a);throw Se.methodNotFound(o)}};x(this,Y,new tD(i,s,t))}async initialize(e){return await l(this,Y).sendRequest(ae.initialize,e)}async newSession(e){return await l(this,Y).sendRequest(ae.session_new,e)}async loadSession(e){return await l(this,Y).sendRequest(ae.session_load,e)??{}}async unstable_forkSession(e){return await l(this,Y).sendRequest(ae.session_fork,e)}async listSessions(e){return await l(this,Y).sendRequest(ae.session_list,e)}async unstable_resumeSession(e){return await l(this,Y).sendRequest(ae.session_resume,e)}async unstable_closeSession(e){return await l(this,Y).sendRequest(ae.session_close,e)}async setSessionMode(e){return await l(this,Y).sendRequest(ae.session_set_mode,e)??{}}async unstable_setSessionModel(e){return await l(this,Y).sendRequest(ae.session_set_model,e)??{}}async setSessionConfigOption(e){return await l(this,Y).sendRequest(ae.session_set_config_option,e)}async authenticate(e){return await l(this,Y).sendRequest(ae.authenticate,e)??{}}async unstable_logout(e){return await l(this,Y).sendRequest(ae.logout,e)??{}}async prompt(e){return await l(this,Y).sendRequest(ae.session_prompt,e)}async cancel(e){return await l(this,Y).sendNotification(ae.session_cancel,e)}async unstable_startNes(e){return await l(this,Y).sendRequest(ae.nes_start,e)}async unstable_suggestNes(e){return await l(this,Y).sendRequest(ae.nes_suggest,e)}async unstable_closeNes(e){return await l(this,Y).sendRequest(ae.nes_close,e)??{}}async unstable_didOpenDocument(e){return await l(this,Y).sendNotification(ae.document_did_open,e)}async unstable_didChangeDocument(e){return await l(this,Y).sendNotification(ae.document_did_change,e)}async unstable_didCloseDocument(e){return await l(this,Y).sendNotification(ae.document_did_close,e)}async unstable_didSaveDocument(e){return await l(this,Y).sendNotification(ae.document_did_save,e)}async unstable_didFocusDocument(e){return await l(this,Y).sendNotification(ae.document_did_focus,e)}async unstable_acceptNes(e){return await l(this,Y).sendNotification(ae.nes_accept,e)}async unstable_rejectNes(e){return await l(this,Y).sendNotification(ae.nes_reject,e)}async extMethod(e,t){return await l(this,Y).sendRequest(e,t)}async extNotification(e,t){return await l(this,Y).sendNotification(e,t)}get signal(){return l(this,Y).signal}get closed(){return l(this,Y).closed}}Y=new WeakMap;var ln,ka,gs,ms,Gr,jr,Ct,vs,de,_v,Mc,kv,Ev,xv,Av,zc,Vi;class tD{constructor(e,t,r){w(this,de);w(this,ln,new Map);w(this,ka,0);w(this,gs);w(this,ms);w(this,Gr);w(this,jr,Promise.resolve());w(this,Ct,new AbortController);w(this,vs);x(this,gs,e),x(this,ms,t),x(this,Gr,r),x(this,vs,new Promise(i=>{l(this,Ct).signal.addEventListener("abort",()=>i())})),m(this,de,_v).call(this)}get signal(){return l(this,Ct).signal}get closed(){return l(this,vs)}async sendRequest(e,t){m(this,de,zc).call(this);const r=Yh(this,ka)._++,i=new Promise((s,o)=>{l(this,ln).set(r,{resolve:s,reject:o})});return await m(this,de,Vi).call(this,{jsonrpc:"2.0",id:r,method:e,params:t}),i}async sendNotification(e,t){m(this,de,zc).call(this),await m(this,de,Vi).call(this,{jsonrpc:"2.0",method:e,params:t})}}ln=new WeakMap,ka=new WeakMap,gs=new WeakMap,ms=new WeakMap,Gr=new WeakMap,jr=new WeakMap,Ct=new WeakMap,vs=new WeakMap,de=new WeakSet,_v=async function(){let e;try{const t=l(this,Gr).readable.getReader();try{for(;!l(this,Ct).signal.aborted;){const{value:r,done:i}=await t.read();if(i)break;if(r)try{m(this,de,kv).call(this,r)}catch(s){console.error("Unexpected error during message processing:",r,s),"id"in r&&r.id!==void 0&&m(this,de,Vi).call(this,{jsonrpc:"2.0",id:r.id,error:{code:-32700,message:"Parse error"}})}}}finally{t.releaseLock()}}catch(t){e=t}finally{m(this,de,Mc).call(this,e)}},Mc=function(e){if(l(this,Ct).signal.aborted)return;const t=e??new Error("ACP connection closed");for(const r of l(this,ln).values())r.reject(t);l(this,ln).clear(),l(this,Ct).abort(t)},kv=async function(e){if("method"in e&&"id"in e){const t=await m(this,de,Ev).call(this,e.method,e.params);"error"in t&&console.error("Error handling request",e,t.error),await m(this,de,Vi).call(this,{jsonrpc:"2.0",id:e.id,...t})}else if("method"in e){const t=await m(this,de,xv).call(this,e.method,e.params);"error"in t&&console.error("Error handling notification",e,t.error)}else"id"in e?m(this,de,Av).call(this,e):console.error("Invalid message",{message:e})},Ev=async function(e,t){try{return{result:await l(this,gs).call(this,e,t)??null}}catch(r){if(r instanceof Se)return r.toResult();if(r instanceof Zp)return Se.invalidParams(r.format()).toResult();let i;(r instanceof Error||typeof r=="object"&&r!=null&&"message"in r&&typeof r.message=="string")&&(i=r.message);try{return Se.internalError(i?JSON.parse(i):{}).toResult()}catch{return Se.internalError({details:i}).toResult()}}},xv=async function(e,t){try{return await l(this,ms).call(this,e,t),{result:null}}catch(r){if(r instanceof Se)return r.toResult();if(r instanceof Zp)return Se.invalidParams(r.format()).toResult();let i;(r instanceof Error||typeof r=="object"&&r!=null&&"message"in r&&typeof r.message=="string")&&(i=r.message);try{return Se.internalError(i?JSON.parse(i):{}).toResult()}catch{return Se.internalError({details:i}).toResult()}}},Av=function(e){const t=l(this,ln).get(e.id);if(t){if("result"in e)t.resolve(e.result);else if("error"in e){const{code:r,message:i,data:s}=e.error;t.reject(new Se(r,i,s))}l(this,ln).delete(e.id)}else console.error("Got response to unknown request",e.id)},zc=function(){if(l(this,Ct).signal.aborted)throw l(this,Ct).signal.reason??new Error("ACP connection closed")},Vi=async function(e){return x(this,jr,l(this,jr).then(async()=>{const t=l(this,Gr).writable.getWriter();try{await t.write(e)}finally{t.releaseLock()}}).catch(t=>{m(this,de,Mc).call(this,t)})),l(this,jr)};class Se extends Error{constructor(t,r,i){super(r);b(this,"code");b(this,"data");this.code=t,this.name="RequestError",this.data=i}static parseError(t,r){return new Se(-32700,`Parse error${r?`: ${r}`:""}`,t)}static invalidRequest(t,r){return new Se(-32600,`Invalid request${r?`: ${r}`:""}`,t)}static methodNotFound(t){return new Se(-32601,`"Method not found": ${t}`,{method:t})}static invalidParams(t,r){return new Se(-32602,`Invalid params${r?`: ${r}`:""}`,t)}static internalError(t,r){return new Se(-32603,`Internal error${r?`: ${r}`:""}`,t)}static authRequired(t,r){return new Se(-32e3,`Authentication required${r?`: ${r}`:""}`,t)}static resourceNotFound(t){return new Se(-32002,`Resource not found${t?`: ${t}`:""}`,t&&{uri:t})}toResult(){return{error:{code:this.code,message:this.message,data:this.data}}}toErrorResponse(){return{code:this.code,message:this.message,data:this.data}}}const nD=/^Sender \(untrusted metadata\):\n```json\n[\s\S]*?\n```\n\n?/,rD=/^\[[^\n]*Working directory:[^\n]*\]\n\n?/,iD=/\[Television screen context\][\s\S]*?\[\/Television screen context\]\n*/,sD=/\[\[\s*(?:reply_to_current|reply_to\s*:\s*[^\]\n]+|audio_as_voice)\s*\]\]\s*/gi,oD="single_session",aD={name:"television-acp-client",version:"0.0.0"},$v="agent:main:television",lD=ki(wt);var te,Bt,qr,Vt,qn,Yn,Xn,Kn,cn,Yr,Pt,ft,un,Jn,Gt,hn,ys,jt,gt,Ea,qt,T,Tv,Iv,Cv,Nc,Pv,Rv,Dv,Lv,Ov,Mv,zv,Rn,Lr,Or,He,Nv,Mr,Uc,Fc,Yo,Uv,Fv,bs,ws,Zc,zr,Zv,Hv;class cD extends lD{constructor(t){super();w(this,T);w(this,te,hD());w(this,Bt,null);w(this,qr,null);w(this,Vt,null);w(this,qn,null);w(this,Yn,null);w(this,Xn,null);w(this,Kn);w(this,cn,null);w(this,Yr,1);w(this,Pt,null);w(this,ft,null);w(this,un,!1);w(this,Jn,!1);w(this,Gt,null);w(this,hn,new Set);w(this,ys);w(this,jt);w(this,gt);w(this,Ea,t=>{m(this,T,Iv).call(this,t)});w(this,qt,null);w(this,bs,()=>{m(this,T,zr).call(this,"ACP bridge websocket closed")});w(this,ws,()=>{m(this,T,zr).call(this,"ACP bridge websocket error")});x(this,jt,t),x(this,gt,t.sessionMode??oD),x(this,Kn,t.mappedSessionStore??uD()),x(this,ys,t.createSocket??(r=>new WebSocket(r)))}getState(){return l(this,te)}get messages(){return l(this,te).messageOrder.map(t=>l(this,te).messagesById[t]).filter(t=>t!==void 0)}async connect(){if(this.disposed)throw new Error("ACPClient has been disposed");if(l(this,te).lifecycle.status!=="ready"){m(this,T,He).call(this,{lifecycle:{status:"connecting"}}),l(this,qr)??x(this,qr,m(this,T,Tv).call(this));try{await l(this,qr),await m(this,T,Nc).call(this)}catch(t){throw m(this,T,zr).call(this,Co(t)),t}}}dispose(){m(this,T,Zc).call(this),m(this,T,He).call(this,{lifecycle:{status:"disposed"},run:{status:"idle",stopReason:null,canCancel:!1,error:null},bridge:null})}async sendMessage(t){if(await this.connect(),l(this,te).lifecycle.status!=="ready"||l(this,te).run.status==="running"||l(this,te).run.status==="cancelling")throw new Error("ACPClient is not ready to send a new message");const r=t.text.trim();if(!r)throw new Error("Cannot send an empty message");m(this,T,Lr).call(this,{id:m(this,T,Mr).call(this,"user"),kind:"user",text:r,status:"final"}),m(this,T,He).call(this,{run:{status:"running",stopReason:null,canCancel:!0,error:null}});try{const i=await m(this,T,Yo).call(this).prompt({sessionId:m(this,T,Fc).call(this),prompt:[{type:"text",text:m(this,T,Nv).call(this,r)}]});m(this,T,Rn).call(this,i.stopReason==="cancelled"?"cancelled":"final"),m(this,T,He).call(this,{run:{status:i.stopReason==="cancelled"?"cancelled":"completed",stopReason:i.stopReason,canCancel:!1,error:null}})}catch(i){throw m(this,T,Hv).call(this)||(m(this,T,Rn).call(this,"error"),m(this,T,He).call(this,{run:{status:"error",stopReason:null,canCancel:!1,error:Co(i)}})),i}}async cancel(){if(await this.connect(),!l(this,te).run.canCancel||l(this,te).run.status!=="running")throw new Error("No active cancellable run");m(this,T,He).call(this,{run:{...l(this,te).run,status:"cancelling"}}),await m(this,T,Yo).call(this).cancel({sessionId:m(this,T,Fc).call(this)})}setScreenContext(t){var s,o,a;const r={screenID:t.screenID,screenName:t.screenName};if(((s=l(this,ft))==null?void 0:s.screenID)===r.screenID&&((o=l(this,ft))==null?void 0:o.screenName)===r.screenName)return;const i=((a=l(this,ft))==null?void 0:a.screenID)??null;if(x(this,ft,r),l(this,gt)==="single_session"){(!l(this,cn)||i!==r.screenID)&&x(this,un,!0);return}l(this,cn)!==jp(l(this,gt),r.screenID,l(this,jt).clientGUID??"default-client")&&(x(this,Vt,null),x(this,qn,null),l(this,Bt)&&l(this,te).run.status==="idle"&&m(this,T,Nc).call(this).catch(c=>{m(this,T,zr).call(this,Co(c))}))}}te=new WeakMap,Bt=new WeakMap,qr=new WeakMap,Vt=new WeakMap,qn=new WeakMap,Yn=new WeakMap,Xn=new WeakMap,Kn=new WeakMap,cn=new WeakMap,Yr=new WeakMap,Pt=new WeakMap,ft=new WeakMap,un=new WeakMap,Jn=new WeakMap,Gt=new WeakMap,hn=new WeakMap,ys=new WeakMap,jt=new WeakMap,gt=new WeakMap,Ea=new WeakMap,qt=new WeakMap,T=new WeakSet,Tv=async function(){try{m(this,T,He).call(this,{lifecycle:{status:"connecting"}});const{stream:t,socket:r,metadata:i}=await fD({serverURL:l(this,jt).serverURL,token:l(this,jt).token,createSocket:l(this,ys),onDisconnect:l(this,Ea)});x(this,Xn,i),m(this,T,He).call(this,{bridge:i}),x(this,qt,r),r.addEventListener("close",l(this,bs)),r.addEventListener("error",l(this,ws)),x(this,Bt,new eD(s=>({connection:s,sessionUpdate:async o=>{await m(this,T,Rv).call(this,o)},requestPermission:async o=>m(this,T,Dv).call(this,o)}),t)),await l(this,Bt).initialize({protocolVersion:zI,clientCapabilities:{},clientInfo:aD})}catch(t){throw t}},Iv=function(t){m(this,T,zr).call(this,Co(t))},Cv=function(t){const r=t==null?void 0:t.models;if(!(r!=null&&r.currentModelId))return;const i=r.availableModels.find(s=>s.modelId===r.currentModelId);console.info("[ACPClient] Current model:",(i==null?void 0:i.name)??r.currentModelId,`(${r.currentModelId})`)},Nc=async function(){const t=m(this,T,Fv).call(this);if(l(this,Vt)&&l(this,qn)===t){await l(this,Vt);return}x(this,qn,t),x(this,Vt,m(this,T,Pv).call(this,t)),await l(this,Vt)},Pv=async function(t){var c;const r=m(this,T,Yo).call(this);m(this,T,Zv).call(this);let i,s=!1,o=null;const a={cwd:m(this,T,Uv).call(this),mcpServers:[],_meta:{sessionKey:t}};try{if(x(this,Jn,!0),x(this,Gt,null),((c=l(this,Xn))==null?void 0:c.sessionIdStrategy)==="mapped"){const u=l(this,Kn).getActualSessionId(t);if(u)try{const h=await r.loadSession({...a,sessionId:u});if(dD(h))throw new Error("Mapped ACP session was not found");o=h,i=u,s=!0}catch{const h=await r.newSession(a);o=h,i=h.sessionId,l(this,Kn).setActualSessionId(t,i),s=!1}else{const h=await r.newSession(a);o=h,i=h.sessionId,l(this,Kn).setActualSessionId(t,i),s=!1}}else try{o=await r.loadSession({...a,sessionId:t}),i=t,s=l(this,te).messageOrder.length>0}catch{const u=await r.newSession(a);o=u,i=u.sessionId,s=!1}}finally{x(this,Jn,!1),x(this,Gt,null),m(this,T,Rn).call(this,"final")}m(this,T,Cv).call(this,o),await r.setSessionConfigOption({sessionId:i,configId:"verbose_level",value:"full"}),x(this,Yn,i),x(this,cn,t),s?(l(this,hn).add(t),l(this,gt)==="single_session"&&x(this,un,!1)):(l(this,hn).delete(t),x(this,un,l(this,gt)==="single_session")),m(this,T,He).call(this,{lifecycle:{status:"ready"}})},Rv=async function(t){const r=t.update;switch(r.sessionUpdate){case"user_message_chunk":r.content.type==="text"&&m(this,T,zv).call(this,r.content.text);return;case"agent_message_chunk":r.content.type==="text"&&m(this,T,Lv).call(this,r.content.text);return;case"tool_call":m(this,T,Ov).call(this,r);return;case"tool_call_update":m(this,T,Mv).call(this,r);return;case"agent_thought_chunk":return;default:return}},Dv=async function(t){return{outcome:{outcome:"cancelled"}}},Lv=function(t){x(this,Gt,null);const r=pD(t);if(!r)return;if(!l(this,Pt)){const s={id:m(this,T,Mr).call(this,"assistant"),kind:"assistant",text:r,status:"streaming"};x(this,Pt,s.id),m(this,T,Lr).call(this,s);return}const i=l(this,te).messagesById[l(this,Pt)];if(!i||i.kind!=="assistant")throw new Error("Open assistant message invariant violated");m(this,T,Or).call(this,{...i,text:`${i.text}${r}`,status:"streaming"})},Ov=function(t){m(this,T,Rn).call(this,"final");const r=m(this,T,Uc).call(this,t.toolCallId),i=Yp("content"in t?t.content:void 0),s={id:(r==null?void 0:r.id)??m(this,T,Mr).call(this,"tool"),kind:"tool_call",toolCallId:t.toolCallId,title:t.title,toolKind:t.kind??"other",status:t.status==="failed"?"failed":t.status==="completed"?"completed":"in_progress",text:(r==null?void 0:r.text)??i,locations:t.locations??(r==null?void 0:r.locations)};if(r){m(this,T,Or).call(this,s);return}m(this,T,Lr).call(this,s)},Mv=function(t){const r=m(this,T,Uc).call(this,t.toolCallId),i=(r==null?void 0:r.text)??"",s=Yp(t.content),o=s?`${i}${s}`:i,a={id:(r==null?void 0:r.id)??m(this,T,Mr).call(this,"tool"),kind:"tool_call",toolCallId:t.toolCallId,title:(r==null?void 0:r.title)??t.toolCallId,toolKind:(r==null?void 0:r.toolKind)??"other",status:t.status==="failed"?"failed":t.status==="completed"?"completed":"in_progress",text:o,locations:t.locations??(r==null?void 0:r.locations)};if(r){m(this,T,Or).call(this,a);return}m(this,T,Lr).call(this,a)},zv=function(t){if(m(this,T,Rn).call(this,"final"),!t)return;const r=l(this,Jn)?l(this,Gt):null;if(!r){const s=qp(t);if(!s)return;const o={id:m(this,T,Mr).call(this,"user"),kind:"user",text:s,status:"final"};m(this,T,Lr).call(this,o),l(this,Jn)&&x(this,Gt,o.id);return}const i=l(this,te).messagesById[r];if(!i||i.kind!=="user")throw new Error("Replay user message invariant violated");m(this,T,Or).call(this,{...i,text:qp(`${i.text}${t}`)})},Rn=function(t){if(!l(this,Pt))return;const r=l(this,te).messagesById[l(this,Pt)];(r==null?void 0:r.kind)==="assistant"&&m(this,T,Or).call(this,{...r,status:t}),x(this,Pt,null)},Lr=function(t){m(this,T,He).call(this,{messagesById:{...l(this,te).messagesById,[t.id]:t},messageOrder:[...l(this,te).messageOrder,t.id]})},Or=function(t){m(this,T,He).call(this,{messagesById:{...l(this,te).messagesById,[t.id]:t}})},He=function(t){const r={...l(this,te),...t};x(this,te,{...r,sendDisabled:r.lifecycle.status!=="ready"||r.run.status==="running"||r.run.status==="cancelling",cancelDisabled:!(r.run.status==="running"||r.run.status==="cancelling")||!r.run.canCancel}),this.dispatchEvent(new K("change"))},Nv=function(t){const r=l(this,cn);return!l(this,ft)||!r||!(l(this,gt)==="single_session"?l(this,un)||!l(this,hn).has(r):!l(this,hn).has(r))?t:(x(this,un,!1),l(this,hn).add(r),["[Television screen context]","This chat session is coming from a Television client in the screen below.",`screen_id: ${l(this,ft).screenID}`,`screen_name: ${l(this,ft).screenName??""}`,"When the user asks to inspect or change Television state with the tv CLI, use this screen ID with the --screen argument.","[/Television screen context]","",t].join(`
43
+ `))},Mr=function(t){const r=`${t}-${l(this,Yr)}`;return x(this,Yr,l(this,Yr)+1),r},Uc=function(t){for(const r of l(this,te).messageOrder){const i=l(this,te).messagesById[r];if((i==null?void 0:i.kind)==="tool_call"&&i.toolCallId===t)return i}return null},Fc=function(){if(!l(this,Yn))throw new Error("ACP session is not ready");return l(this,Yn)},Yo=function(){if(!l(this,Bt))throw new Error("ACP connection is not ready");return l(this,Bt)},Uv=function(){var r;const t=(r=l(this,Xn))==null?void 0:r.sessionCwd;if(!t)throw new Error("ACP bridge session cwd is not ready");return t},Fv=function(){var r;if(l(this,gt)==="single_session")return`${$v}-${(l(this,jt).clientGUID??"default-client").toLowerCase()}`;const t=(r=l(this,ft))==null?void 0:r.screenID;if(!t)throw new Error("Screen context is required for per-screen session mode");return jp(l(this,gt),t,l(this,jt).clientGUID??"default-client")},bs=new WeakMap,ws=new WeakMap,Zc=function(){x(this,Bt,null),x(this,qr,null),x(this,Vt,null),x(this,qn,null),x(this,Yn,null),x(this,cn,null),x(this,Xn,null),l(this,qt)&&(l(this,qt).removeEventListener("close",l(this,bs)),l(this,qt).removeEventListener("error",l(this,ws)),l(this,qt).close(),x(this,qt,null))},zr=function(t){this.disposed||l(this,te).lifecycle.status==="disconnected"||(m(this,T,Rn).call(this,"error"),m(this,T,Zc).call(this),m(this,T,He).call(this,{lifecycle:{status:"disconnected",...t?{error:t}:{}},run:{status:"idle",stopReason:null,canCancel:!1,error:null},bridge:null}))},Zv=function(){x(this,Pt,null),x(this,Gt,null),x(this,Yr,1),m(this,T,He).call(this,{run:{status:"idle",stopReason:null,canCancel:!1,error:null},messagesById:{},messageOrder:[]})},Hv=function(){return l(this,te).lifecycle.status==="disconnected"};function uD(){const n=new Map;return{getActualSessionId(e){return n.get(e)??null},setActualSessionId(e,t){n.set(e,t)},clearActualSessionId(e){n.delete(e)}}}function hD(){return{lifecycle:{status:"connecting"},run:{status:"idle",stopReason:null,canCancel:!1,error:null},bridge:null,messagesById:{},messageOrder:[],sendDisabled:!0,cancelDisabled:!0}}function dD(n){return n==null?!0:typeof n=="object"&&Object.keys(n).length===0}function jp(n,e,t){return n==="single_session"?`${$v}-${t.toLowerCase()}`:`agent:main:television-${t.toLowerCase()}-${e.toLowerCase()}`}function Wv(n){return n.replace(/^(?:\s*\n)+/,"")}function qp(n){let e=n;return e=e.replace(nD,""),e=e.replace(rD,""),e=e.replace(iD,""),e=Wv(e),e}function pD(n){let e=n;return e=e.replace(sD,""),e=Wv(e),e}function Yp(n){return!n||n.length===0?"":n.flatMap(e=>e.type==="content"&&e.content.type==="text"?[e.content.text]:[]).join("")}async function fD(n){const e=n.createSocket(vD(n.serverURL,n.token));let t=!1,r,i;const s=new Promise((u,h)=>{r=u,i=h}),o=new ReadableStream({start(u){let h=!1;const p=()=>{e.send(JSON.stringify({type:"acp-bridge-connect"}))},v=_=>{const C=mD(_);if(!C)return;let N;try{N=JSON.parse(C)}catch(P){const W=P instanceof Error?P:new Error(String(P));i(W),u.error(W);return}switch(N.type){case"acp-bridge-status":if(N.status==="ready"){let P;try{P=gD(N)}catch(W){const L=W instanceof Error?W:new Error(String(W));t||i(L),u.error(L);return}t||(t=!0,r(P));return}if(N.status==="error"||N.status==="exited"){const P=new Error(N.error??`ACP bridge ${N.status}`);t||i(P),u.error(P)}return;case"acp-bridge-message":u.enqueue(N.message);return}},g=()=>{var C;if(h)return;h=!0;const _=new Error("ACP bridge websocket closed");t||i(_),(C=n.onDisconnect)==null||C.call(n,_),u.close()},E=()=>{var C;if(h)return;h=!0;const _=new Error("ACP bridge websocket error");t||i(_),(C=n.onDisconnect)==null||C.call(n,_),u.error(_)};e.addEventListener("open",p),e.addEventListener("message",v),e.addEventListener("close",g),e.addEventListener("error",E)}}),a=new WritableStream({async write(u){await s,e.send(JSON.stringify({type:"acp-bridge-message",message:u}))},close(){e.close()},abort(){e.close()}}),c=await s;return{stream:{readable:o,writable:a},socket:e,metadata:c}}function gD(n){const{agent:e,sessionIdStrategy:t,sessionCwd:r}=n;if((e==="openclaw"||e==="hermes")&&(t==="deterministic"||t==="mapped")&&typeof r=="string"&&r.length>0)return{agent:e,sessionIdStrategy:t,sessionCwd:r};throw new Error("ACP bridge ready status missing bootstrap metadata")}function mD(n){if(typeof n=="string")return n;if(n instanceof Uint8Array)return new TextDecoder().decode(n);if(typeof Buffer<"u"&&n instanceof Buffer)return n.toString("utf8");if(typeof n=="object"&&n!==null&&"data"in n){const e=n.data;if(typeof e=="string")return e;if(e instanceof Uint8Array)return new TextDecoder().decode(e);if(Array.isArray(e))return Buffer.concat(e).toString("utf8")}return null}function vD(n,e){const t=new URL(n);return t.protocol=t.protocol==="https:"?"wss:":"ws:",t.pathname="/acp",t.search="",t.searchParams.set("token",e),t.hash="",t.toString()}function Co(n){return n instanceof Error?n.message:String(n)}const Xp="television.acpClientGUID",Kp="television.acpMappedSessions",yD=ki(wt);class bD extends yD{constructor(t){super();b(this,"screenManager");b(this,"clients",new Map);b(this,"options");b(this,"sessionMode");b(this,"clientGUID");b(this,"mappedSessionStore");b(this,"activeClient",null);b(this,"handleActiveScreenChanged",()=>{this.syncActiveClient()});this.screenManager=t.screenManager,this.sessionMode=t.sessionMode??"single_session";const r=t.storage??_D();this.options={serverURL:t.serverURL,token:t.token,...t.createSocket?{createSocket:t.createSocket}:{},...t.sessionMode?{sessionMode:t.sessionMode}:{}},this.clientGUID=t.clientGUID??ED(kD(r)),this.mappedSessionStore=t.mappedSessionStore??(r?new SD(r,t.serverURL):new wD),this.screenManager.addEventListener("active-screen-changed",this.handleActiveScreenChanged),this.syncActiveClient()}getActiveClient(){return this.activeClient}dispose(){this.screenManager.removeEventListener("active-screen-changed",this.handleActiveScreenChanged);for(const t of this.clients.values())t.dispose();this.clients.clear(),this.activeClient=null}syncActiveClient(){const t=this.screenManager.activeScreen,r=t?this.getClientForScreen(t):null;this.activeClient!==r&&(this.activeClient=r,this.dispatchEvent(new K("change")))}getClientForScreen(t){const r=this.sessionMode==="single_session"?"single_session":t.id;let i=this.clients.get(r);return i||(i=new cD({...this.options,sessionMode:this.sessionMode,clientGUID:this.clientGUID,mappedSessionStore:this.mappedSessionStore}),this.clients.set(r,i)),i.setScreenContext({screenID:t.id,screenName:t.name}),i}}var Xr;class wD{constructor(){w(this,Xr,new Map)}getActualSessionId(e){return l(this,Xr).get(e)??null}setActualSessionId(e,t){l(this,Xr).set(e,t)}clearActualSessionId(e){l(this,Xr).delete(e)}}Xr=new WeakMap;const Jp=1;var Kr,Ss,Qe,Xo,Ko,Hc;class SD{constructor(e,t){w(this,Qe);w(this,Kr);w(this,Ss);x(this,Kr,e),x(this,Ss,t)}getActualSessionId(e){const t=m(this,Qe,Ko).call(this)[m(this,Qe,Xo).call(this,e)];return typeof t=="string"&&t.length>0?t:null}setActualSessionId(e,t){const r=m(this,Qe,Ko).call(this);r[m(this,Qe,Xo).call(this,e)]=t,m(this,Qe,Hc).call(this,r)}clearActualSessionId(e){const t=m(this,Qe,Ko).call(this);delete t[m(this,Qe,Xo).call(this,e)],m(this,Qe,Hc).call(this,t)}}Kr=new WeakMap,Ss=new WeakMap,Qe=new WeakSet,Xo=function(e){return JSON.stringify([l(this,Ss),e])},Ko=function(){const e=l(this,Kr).getItem(Kp);if(!e)return{};let t;try{t=JSON.parse(e)}catch{return{}}if(typeof t!="object"||t===null||Array.isArray(t))return{};const r=t;return r.version!==Jp?{}:typeof r.entries!="object"||r.entries===null||Array.isArray(r.entries)?{}:Object.fromEntries(Object.entries(r.entries).filter(i=>typeof i[1]=="string"))},Hc=function(e){const t={version:Jp,entries:e};l(this,Kr).setItem(Kp,JSON.stringify(t))};function _D(){return typeof window>"u"?null:window.localStorage}function kD(n){if(!n)throw new Error("ACPClientManager requires storage when clientGUID is not provided");return n}function ED(n){const e=n.getItem(Xp);if(e)return e;const t=Gu().toLowerCase();return n.setItem(Xp,t),t}var _s;class xD extends wt{constructor(){super();w(this,_s,t=>{const r=AD(t);r!==null&&(t.preventDefault(),this.dispatchEvent(new tx("shortcut-triggered",{shortcut:r})))});document.addEventListener("keydown",l(this,_s))}dispose(){document.removeEventListener("keydown",l(this,_s))}}_s=new WeakMap;function AD(n){for(const[e,t]of Object.entries(Ox))if($D(n,t.trigger))return e;return null}function $D(n,e){return!(n.key.toLowerCase()!==e.key.toLowerCase()||n.metaKey!==!!e.meta||n.ctrlKey!==!!e.ctrl||n.shiftKey!==!!e.shift||n.altKey!==!!e.alt)}const TD="serverURL",ID="token",CD="mode",PD="electron";function Bv(n=window.location.search,e=window.location.origin){const r=new URLSearchParams(n).get(TD);return r?new URL(r).origin:new URL(e).origin}function Wc(n=window.location.search){return new URLSearchParams(n).get(ID)}function sh(n=window.location.search){return new URLSearchParams(n).get(CD)===PD}/**
44
+ * @license
45
+ * Copyright 2017 Google LLC
46
+ * SPDX-License-Identifier: BSD-3-Clause
47
+ */const ns=globalThis,Qp=n=>n,ma=ns.trustedTypes,ef=ma?ma.createPolicy("lit-html",{createHTML:n=>n}):void 0,Vv="$lit$",sn=`lit$${Math.random().toFixed(9).slice(2)}$`,Gv="?"+sn,RD=`<${Gv}>`,pr=document,os=()=>pr.createComment(""),as=n=>n===null||typeof n!="object"&&typeof n!="function",oh=Array.isArray,DD=n=>oh(n)||typeof(n==null?void 0:n[Symbol.iterator])=="function",Jl=`[
48
+ \f\r]`,Oi=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,tf=/-->/g,nf=/>/g,In=RegExp(`>|${Jl}(?:([^\\s"'>=/]+)(${Jl}*=${Jl}*(?:[^
49
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),rf=/'/g,sf=/"/g,jv=/^(?:script|style|textarea|title)$/i,LD=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),U=LD(1),pi=Symbol.for("lit-noChange"),se=Symbol.for("lit-nothing"),of=new WeakMap,Fn=pr.createTreeWalker(pr,129);function qv(n,e){if(!oh(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return ef!==void 0?ef.createHTML(e):e}const OD=(n,e)=>{const t=n.length-1,r=[];let i,s=e===2?"<svg>":e===3?"<math>":"",o=Oi;for(let a=0;a<t;a++){const c=n[a];let u,h,p=-1,v=0;for(;v<c.length&&(o.lastIndex=v,h=o.exec(c),h!==null);)v=o.lastIndex,o===Oi?h[1]==="!--"?o=tf:h[1]!==void 0?o=nf:h[2]!==void 0?(jv.test(h[2])&&(i=RegExp("</"+h[2],"g")),o=In):h[3]!==void 0&&(o=In):o===In?h[0]===">"?(o=i??Oi,p=-1):h[1]===void 0?p=-2:(p=o.lastIndex-h[2].length,u=h[1],o=h[3]===void 0?In:h[3]==='"'?sf:rf):o===sf||o===rf?o=In:o===tf||o===nf?o=Oi:(o=In,i=void 0);const g=o===In&&n[a+1].startsWith("/>")?" ":"";s+=o===Oi?c+RD:p>=0?(r.push(u),c.slice(0,p)+Vv+c.slice(p)+sn+g):c+sn+(p===-2?a:g)}return[qv(n,s+(n[t]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),r]};class ls{constructor({strings:e,_$litType$:t},r){let i;this.parts=[];let s=0,o=0;const a=e.length-1,c=this.parts,[u,h]=OD(e,t);if(this.el=ls.createElement(u,r),Fn.currentNode=this.el.content,t===2||t===3){const p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(i=Fn.nextNode())!==null&&c.length<a;){if(i.nodeType===1){if(i.hasAttributes())for(const p of i.getAttributeNames())if(p.endsWith(Vv)){const v=h[o++],g=i.getAttribute(p).split(sn),E=/([.?@])?(.*)/.exec(v);c.push({type:1,index:s,name:E[2],strings:g,ctor:E[1]==="."?zD:E[1]==="?"?ND:E[1]==="@"?UD:il}),i.removeAttribute(p)}else p.startsWith(sn)&&(c.push({type:6,index:s}),i.removeAttribute(p));if(jv.test(i.tagName)){const p=i.textContent.split(sn),v=p.length-1;if(v>0){i.textContent=ma?ma.emptyScript:"";for(let g=0;g<v;g++)i.append(p[g],os()),Fn.nextNode(),c.push({type:2,index:++s});i.append(p[v],os())}}}else if(i.nodeType===8)if(i.data===Gv)c.push({type:2,index:s});else{let p=-1;for(;(p=i.data.indexOf(sn,p+1))!==-1;)c.push({type:7,index:s}),p+=sn.length-1}s++}}static createElement(e,t){const r=pr.createElement("template");return r.innerHTML=e,r}}function fi(n,e,t=n,r){var o,a;if(e===pi)return e;let i=r!==void 0?(o=t._$Co)==null?void 0:o[r]:t._$Cl;const s=as(e)?void 0:e._$litDirective$;return(i==null?void 0:i.constructor)!==s&&((a=i==null?void 0:i._$AO)==null||a.call(i,!1),s===void 0?i=void 0:(i=new s(n),i._$AT(n,t,r)),r!==void 0?(t._$Co??(t._$Co=[]))[r]=i:t._$Cl=i),i!==void 0&&(e=fi(n,i._$AS(n,e.values),i,r)),e}class MD{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:t},parts:r}=this._$AD,i=((e==null?void 0:e.creationScope)??pr).importNode(t,!0);Fn.currentNode=i;let s=Fn.nextNode(),o=0,a=0,c=r[0];for(;c!==void 0;){if(o===c.index){let u;c.type===2?u=new ah(s,s.nextSibling,this,e):c.type===1?u=new c.ctor(s,c.name,c.strings,this,e):c.type===6&&(u=new FD(s,this,e)),this._$AV.push(u),c=r[++a]}o!==(c==null?void 0:c.index)&&(s=Fn.nextNode(),o++)}return Fn.currentNode=pr,i}p(e){let t=0;for(const r of this._$AV)r!==void 0&&(r.strings!==void 0?(r._$AI(e,r,t),t+=r.strings.length-2):r._$AI(e[t])),t++}}let ah=class Yv{get _$AU(){var e;return((e=this._$AM)==null?void 0:e._$AU)??this._$Cv}constructor(e,t,r,i){this.type=2,this._$AH=se,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=r,this.options=i,this._$Cv=(i==null?void 0:i.isConnected)??!0}get parentNode(){let e=this._$AA.parentNode;const t=this._$AM;return t!==void 0&&(e==null?void 0:e.nodeType)===11&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=fi(this,e,t),as(e)?e===se||e==null||e===""?(this._$AH!==se&&this._$AR(),this._$AH=se):e!==this._$AH&&e!==pi&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):DD(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==se&&as(this._$AH)?this._$AA.nextSibling.data=e:this.T(pr.createTextNode(e)),this._$AH=e}$(e){var s;const{values:t,_$litType$:r}=e,i=typeof r=="number"?this._$AC(e):(r.el===void 0&&(r.el=ls.createElement(qv(r.h,r.h[0]),this.options)),r);if(((s=this._$AH)==null?void 0:s._$AD)===i)this._$AH.p(t);else{const o=new MD(i,this),a=o.u(this.options);o.p(t),this.T(a),this._$AH=o}}_$AC(e){let t=of.get(e.strings);return t===void 0&&of.set(e.strings,t=new ls(e)),t}k(e){oh(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let r,i=0;for(const s of e)i===t.length?t.push(r=new Yv(this.O(os()),this.O(os()),this,this.options)):r=t[i],r._$AI(s),i++;i<t.length&&(this._$AR(r&&r._$AB.nextSibling,i),t.length=i)}_$AR(e=this._$AA.nextSibling,t){var r;for((r=this._$AP)==null?void 0:r.call(this,!1,!0,t);e!==this._$AB;){const i=Qp(e).nextSibling;Qp(e).remove(),e=i}}setConnected(e){var t;this._$AM===void 0&&(this._$Cv=e,(t=this._$AP)==null||t.call(this,e))}},il=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,r,i,s){this.type=1,this._$AH=se,this._$AN=void 0,this.element=e,this.name=t,this._$AM=i,this.options=s,r.length>2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=se}_$AI(e,t=this,r,i){const s=this.strings;let o=!1;if(s===void 0)e=fi(this,e,t,0),o=!as(e)||e!==this._$AH&&e!==pi,o&&(this._$AH=e);else{const a=e;let c,u;for(e=s[0],c=0;c<s.length-1;c++)u=fi(this,a[r+c],t,c),u===pi&&(u=this._$AH[c]),o||(o=!as(u)||u!==this._$AH[c]),u===se?e=se:e!==se&&(e+=(u??"")+s[c+1]),this._$AH[c]=u}o&&!i&&this.j(e)}j(e){e===se?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}},zD=class extends il{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===se?void 0:e}},ND=class extends il{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==se)}},UD=class extends il{constructor(e,t,r,i,s){super(e,t,r,i,s),this.type=5}_$AI(e,t=this){if((e=fi(this,e,t,0)??se)===pi)return;const r=this._$AH,i=e===se&&r!==se||e.capture!==r.capture||e.once!==r.once||e.passive!==r.passive,s=e!==se&&(r===se||i);i&&this.element.removeEventListener(this.name,this,r),s&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){var t;typeof this._$AH=="function"?this._$AH.call(((t=this.options)==null?void 0:t.host)??this.element,e):this._$AH.handleEvent(e)}};class FD{constructor(e,t,r){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(e){fi(this,e)}}const Ql=ns.litHtmlPolyfillSupport;Ql==null||Ql(ls,ah),(ns.litHtmlVersions??(ns.litHtmlVersions=[])).push("3.3.2");const Re=(n,e,t)=>{const r=e;let i=r._$litPart$;return i===void 0&&(r._$litPart$=i=new ah(e.insertBefore(os(),null),null,void 0,{})),i._$AI(n),i},ZD=.5,af=.1,lf=8,HD=4,Xv=3,Kv=3,WD=4,Zn=255,Jv=.2126,Qv=.7152,ey=.0722;async function lh(n){const e=BD(n);if(!e)return"light";try{return await jD(n,e)>=ZD?"light":"dark"}catch{return"light"}}function BD(n){if(typeof document.elementsFromPoint!="function")return null;const e=n.getBoundingClientRect(),t=e.left+e.width/2,r=e.top+e.height/2,i=document.elementsFromPoint(t,r);for(const s of i){if(!(s instanceof HTMLElement)||s===n||n.contains(s))continue;const o=window.getComputedStyle(s);if(VD(o))return s}return null}function VD(n){return n.backgroundImage&&n.backgroundImage!=="none"?!0:GD(n.backgroundColor)>0}function GD(n){if(!n)return 0;const e=n.match(/rgba?\(([^)]+)\)/);if(!e)return 0;const t=e[1].split(/[\s,/]+/).filter(Boolean);return t.length===WD?parseFloat(t[Xv]):t.length===Kv?1:0}async function jD(n,e){const t=n.getBoundingClientRect(),r=e.getBoundingClientRect(),i={x:Po((t.left-r.left)/r.width),y:Po((t.top-r.top)/r.height),width:Po(t.width/r.width),height:Po(t.height/r.height)},s=window.getComputedStyle(e),o=qD(s.backgroundImage);return o?XD({url:o,surfaceWidth:r.width,surfaceHeight:r.height,region:i}):KD(s.backgroundColor)}function qD(n){const e=n.match(/url\(\s*["']?([^"')]+)["']?\s*\)/);return e?e[1]:null}const cf=new Map;function YD(n){let e=cf.get(n);return e||(e=new Promise((t,r)=>{const i=new Image;i.crossOrigin="anonymous",i.onload=()=>t(i),i.onerror=()=>r(new Error(`Failed to load ${n}`)),i.src=n}),cf.set(n,e),e)}async function XD(n){const e=await YD(n.url),t=Math.max(lf,Math.ceil(n.surfaceWidth*af)),r=Math.max(lf,Math.ceil(n.surfaceHeight*af)),i=document.createElement("canvas");i.width=t,i.height=r;const s=i.getContext("2d",{willReadFrequently:!0});if(!s)return 1;const o=n.surfaceWidth/n.surfaceHeight,a=e.naturalWidth/e.naturalHeight;let c,u;a>o?(u=r,c=r*a):(c=t,u=t/a);const h=(t-c)/2,p=(r-u)/2;s.drawImage(e,h,p,c,u);const v=Math.max(0,Math.floor(n.region.x*t)),g=Math.max(0,Math.floor(n.region.y*r)),E=Math.max(1,Math.min(t-v,Math.floor(n.region.width*t))),_=Math.max(1,Math.min(r-g,Math.floor(n.region.height*r))),C=s.getImageData(v,g,E,_).data;let N=0,P=0;for(let W=0;W<C.length;W+=HD){const L=C[W]/Zn,H=C[W+1]/Zn,F=C[W+2]/Zn,ce=C[W+Xv]/Zn;N+=ce*(Jv*L+Qv*H+ey*F),P+=1}return P>0?N/P:1}function KD(n){const e=n.match(/rgba?\(([^)]+)\)/);if(!e)return 1;const t=e[1].split(/[\s,/]+/).filter(Boolean).map(parseFloat);if(t.length<Kv)return 1;const r=t[0]/Zn,i=t[1]/Zn,s=t[2]/Zn;return Jv*r+Qv*i+ey*s}function Po(n){return n<0?0:n>1?1:n}const ec=new WeakSet,uf=new WeakSet;function ty(n){if(uf.has(n))return;uf.add(n);for(const t of n.querySelectorAll('button[variant="ghost"]'))tc(t);if(typeof MutationObserver!="function")return;new MutationObserver(t=>{for(const r of t)if(r.type==="childList")for(const i of r.addedNodes)JD(i,tc);else r.type==="attributes"&&r.target instanceof HTMLButtonElement&&r.target.getAttribute("variant")==="ghost"&&tc(r.target)}).observe(n,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["variant"]})}function JD(n,e){if(n instanceof Element){n instanceof HTMLButtonElement&&n.getAttribute("variant")==="ghost"&&e(n);for(const t of n.querySelectorAll('button[variant="ghost"]'))e(t)}}async function tc(n){if(ec.has(n))return;ec.add(n);const e=await lh(n);if(n.getAttribute("variant")!=="ghost"){ec.delete(n);return}n.setAttribute("tone",e)}const QD="*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;width:100%;height:100%}h1,h2,h3,h4,h5,h6,p,ul,ol,blockquote,pre,hr{margin:0}button,input,textarea,select{font:inherit;color:inherit}@font-face{font-family:Hind;src:url("+new URL("Hind-Variable-C47b_dt9.woff2",import.meta.url).href+') format("woff2-variations");font-weight:300 700;font-style:normal;font-display:swap}:root{--font-sans: "Hind", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-brand: var(--font-sans);--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--font-weight-body: 500;--text-base: 13.5px;--text-scale: 1.125;--text-sm: round(calc(var(--text-base) / var(--text-scale)), 1px);--text-lg: round(calc(var(--text-base) * var(--text-scale)), 1px);--text-xl: round(calc(var(--text-lg) * var(--text-scale)), 1px);--leading-base: 1.5;--space-2: 2px;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-12: 12px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-32: 32px;--space-48: 48px;--space-64: 64px;--radius-4: 4px;--radius-8: 8px;--radius-12: 12px;--radius-16: 16px;--radius-24: 24px;--radius-full: 9999px;--shadow-hairline: 0 0 0 .5px var(--color-border);--shadow-control: 0 1px 1px rgb(0 0 0 / .04), 0 2px 6px rgb(0 0 0 / .06);--alpha-50: 4%;--alpha-100: 8%;--alpha-200: 15%;--alpha-300: 22%;--alpha-400: 30%;--alpha-500: 40%;--alpha-600: 50%;--alpha-700: 65%;--alpha-800: 80%;--alpha-900: 90%;--alpha-950: 95%;--tint-50: color-mix(in srgb, currentColor var(--alpha-50), transparent);--tint-100: color-mix(in srgb, currentColor var(--alpha-100), transparent);--tint-200: color-mix(in srgb, currentColor var(--alpha-200), transparent);--tint-300: color-mix(in srgb, currentColor var(--alpha-300), transparent);--tint-400: color-mix(in srgb, currentColor var(--alpha-400), transparent);--tint-500: color-mix(in srgb, currentColor var(--alpha-500), transparent);--tint-600: color-mix(in srgb, currentColor var(--alpha-600), transparent);--tint-700: color-mix(in srgb, currentColor var(--alpha-700), transparent);--tint-800: color-mix(in srgb, currentColor var(--alpha-800), transparent);--tint-900: color-mix(in srgb, currentColor var(--alpha-900), transparent);--tint-950: color-mix(in srgb, currentColor var(--alpha-950), transparent);--color-overlay-hover: color-mix(in srgb, var(--black) var(--alpha-100), transparent);--color-overlay-active: color-mix(in srgb, var(--black) var(--alpha-300), transparent);--backdrop-blur-glass: blur(20px) saturate(1.4);--black: #000000;--white: #ffffff;--neutral-50: oklch(.985 0 0);--neutral-100: oklch(.97 0 0);--neutral-200: oklch(.923 0 0);--neutral-300: oklch(.869 0 0);--neutral-350: oklch(.79 0 0);--neutral-400: oklch(.709 0 0);--neutral-500: oklch(.553 0 0);--neutral-600: oklch(.444 0 0);--neutral-700: oklch(.374 0 0);--neutral-800: oklch(.268 0 0);--neutral-900: oklch(.216 0 0);--neutral-950: oklch(.147 0 0);--red-50: oklch(.969 .015 12.422);--red-100: oklch(.941 .03 12.58);--red-200: oklch(.892 .058 10.001);--red-300: oklch(.81 .117 11.638);--red-400: oklch(.712 .194 13.428);--red-500: oklch(.645 .246 16.439);--red-600: oklch(.586 .253 17.585);--red-700: oklch(.514 .222 16.935);--red-800: oklch(.455 .188 13.697);--red-900: oklch(.41 .159 10.272);--red-950: oklch(.271 .105 12.094);--orange-50: oklch(.98 .016 73.684);--orange-100: oklch(.954 .038 75.164);--orange-200: oklch(.901 .076 70.697);--orange-300: oklch(.837 .128 66.29);--orange-400: oklch(.75 .183 55.934);--orange-500: oklch(.705 .213 47.604);--orange-600: oklch(.646 .222 41.116);--orange-700: oklch(.553 .195 38.402);--orange-800: oklch(.47 .157 37.304);--orange-900: oklch(.408 .123 38.172);--orange-950: oklch(.266 .079 36.259);--yellow-50: oklch(.987 .026 102.212);--yellow-100: oklch(.973 .071 103.193);--yellow-200: oklch(.945 .129 101.54);--yellow-300: oklch(.905 .182 98.111);--yellow-400: oklch(.852 .199 91.936);--yellow-500: oklch(.795 .184 86.047);--yellow-600: oklch(.681 .162 75.834);--yellow-700: oklch(.554 .135 66.442);--yellow-800: oklch(.476 .114 61.907);--yellow-900: oklch(.421 .095 57.708);--yellow-950: oklch(.286 .066 53.813);--green-50: oklch(.979 .021 166.113);--green-100: oklch(.95 .052 163.051);--green-200: oklch(.905 .093 164.15);--green-300: oklch(.845 .143 164.978);--green-400: oklch(.765 .177 163.223);--green-500: oklch(.696 .17 162.48);--green-600: oklch(.596 .145 163.225);--green-700: oklch(.508 .118 165.612);--green-800: oklch(.432 .095 166.913);--green-900: oklch(.378 .077 168.94);--green-950: oklch(.262 .051 172.552);--blue-50: oklch(.97 .014 254.604);--blue-100: oklch(.932 .032 255.585);--blue-200: oklch(.882 .059 254.128);--blue-300: oklch(.809 .105 251.813);--blue-400: oklch(.707 .165 254.624);--blue-500: oklch(.623 .214 259.815);--blue-600: oklch(.546 .245 262.881);--blue-700: oklch(.488 .243 264.376);--blue-800: oklch(.424 .199 265.638);--blue-900: oklch(.379 .146 265.522);--blue-950: oklch(.282 .091 267.935);--purple-50: oklch(.969 .016 293.756);--purple-100: oklch(.943 .029 294.588);--purple-200: oklch(.894 .057 293.283);--purple-300: oklch(.811 .111 293.571);--purple-400: oklch(.702 .183 293.541);--purple-500: oklch(.606 .25 292.717);--purple-600: oklch(.541 .281 293.009);--purple-700: oklch(.491 .27 292.581);--purple-800: oklch(.432 .232 292.759);--purple-900: oklch(.38 .189 293.745);--purple-950: oklch(.283 .141 291.089)}@supports (corner-shape: squircle){:root{--radius-8: 10px;--radius-12: 15px;--radius-16: 20px;--radius-24: 30px}}:root[data-font=system]{--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif}:root{--color-bg: var(--neutral-50);--color-bg-muted: var(--neutral-100);--color-surface: var(--white);--color-surface-muted: var(--neutral-100);--color-interactive: var(--neutral-200);--color-interactive-hover: var(--neutral-300);--color-border: rgba(0, 0, 0, .1);--color-border-muted: rgba(0, 0, 0, .06);--color-text: var(--neutral-900);--color-text-muted: var(--neutral-500);--color-link: inherit;--color-focus-ring: var(--neutral-500);--color-overlay-backdrop: rgb(0 0 0 / .5);--color-highlight: rgb(255 255 255 / .5);--color-primary: var(--blue-500);--color-danger: var(--red-600);color-scheme:light}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-weight-body);line-height:var(--leading-base);letter-spacing:.015em;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-link);text-underline-offset:.15em;text-decoration-thickness:.08em}h1,h2,h3,h4,h5,h6{font-weight:600;color:inherit}code{font-family:var(--font-mono);font-size:.9em;background:var(--color-bg-muted);padding:var(--space-2) var(--space-4);border-radius:var(--radius-4)}pre{font-family:var(--font-mono);background:var(--color-bg-muted);padding:var(--space-12);border-radius:var(--radius-8);overflow-x:auto}pre code{background:none;padding:0}blockquote{padding-left:var(--space-16);border-left:3px solid var(--color-border);color:var(--color-text-muted)}hr{border:none;border-top:1px solid var(--color-border)}table{border-collapse:collapse}th,td{padding:var(--space-8) var(--space-12);border:1px solid var(--color-border);text-align:left}th{background:var(--color-bg-muted);font-weight:600}input,textarea{padding:6px 10px;border:.5px solid var(--tint-300);border-radius:var(--radius-12);background:var(--tint-100);color:inherit;font:inherit;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}textarea{resize:none}input::placeholder,textarea::placeholder{color:var(--tint-500)}input:focus,textarea:focus{background:color-mix(in srgb,var(--white) var(--alpha-300),transparent);border-color:var(--color-primary);outline:none;box-shadow:0 0 0 1.5px var(--color-primary)}label.field{display:grid;gap:4px;font-size:13px}label.field>span{font-size:11.5px;font-weight:450;color:var(--tint-800)}@supports (corner-shape: squircle){*{corner-shape:squircle}}button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-6);padding:4px 14px;border:.5px solid var(--tint-200);border-radius:var(--radius-12);background:var(--color-surface);color:inherit;font:inherit;cursor:default;box-shadow:var(--shadow-control)}button:hover:not(:disabled){background:color-mix(in srgb,var(--color-surface) 96%,black)}button:active:not(:disabled){background:color-mix(in srgb,var(--color-surface) 88%,black);box-shadow:inset 0 1px 2px #00000014}button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}button[variant=primary]{background:var(--color-primary);border-color:#0000002e;color:var(--white)}button[variant=primary]:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary) 92%,black)}button[variant=primary]:active:not(:disabled){background:color-mix(in srgb,var(--color-primary) 82%,black);box-shadow:inset 0 1px 2px #0000002e}button[variant=danger]{background:var(--color-danger);border-color:#0000002e;color:var(--white)}button[variant=danger]:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger) 92%,black)}button[variant=danger]:active:not(:disabled){background:color-mix(in srgb,var(--color-danger) 82%,black);box-shadow:inset 0 1px 2px #0000002e}button[variant=ghost]{background:transparent;border-color:transparent;color:inherit;box-shadow:none}button[variant=ghost]:hover:not(:disabled){background:var(--color-overlay-hover)}button[variant=ghost]:active:not(:disabled){background:var(--color-overlay-active);box-shadow:none}button[variant=ghost][data-active]:not(:disabled),button[variant=ghost][data-active]:hover:not(:disabled),button[variant=ghost][aria-expanded=true]:not(:disabled),button[variant=ghost][aria-expanded=true]:hover:not(:disabled){background:var(--color-overlay-active);box-shadow:none}button:disabled{background:var(--tint-300);border-color:transparent;color:var(--tint-700);box-shadow:none}[tone=dark] button:not([variant]):not(:disabled){background:var(--tint-200);border-color:var(--tint-300);box-shadow:inset 0 .5px 0 var(--tint-300)}[tone=dark] button:not([variant]):hover:not(:disabled){background:var(--tint-300)}[tone=dark] button:not([variant]):active:not(:disabled){background:var(--tint-400);box-shadow:inset 0 1px 2px #0003}[tone=light] button:not([variant]):not(:disabled){background:var(--color-surface);border-color:var(--tint-200);box-shadow:var(--shadow-control)}[tone=light] button:not([variant]):hover:not(:disabled){background:color-mix(in srgb,var(--color-surface) 96%,black)}[tone=light] button:not([variant]):active:not(:disabled){background:color-mix(in srgb,var(--color-surface) 88%,black);box-shadow:inset 0 1px 2px #00000014}button[size=sm]{min-height:24px;padding:var(--space-2) var(--space-8)}button[size=md]{min-height:32px;padding:var(--space-6) var(--space-12)}button[icon-only]{width:24px;height:24px;min-height:0;padding:0}[data-ui-icon]{display:inline-block;vertical-align:middle}.prose{line-height:var(--leading-base)}.prose h1{font-size:var(--text-xl);margin-bottom:var(--space-8)}.prose h2{font-size:var(--text-lg);margin-top:var(--space-24);margin-bottom:var(--space-8)}.prose h3,.prose h4,.prose h5,.prose h6{font-size:var(--text-base);margin-top:var(--space-24);margin-bottom:var(--space-8)}.prose p{margin:var(--space-12) 0}.prose ul,.prose ol{padding-left:var(--space-24);margin:var(--space-12) 0}.prose blockquote,.prose pre{margin:var(--space-12) 0}.prose hr{margin:var(--space-24) 0}.prose table{width:100%;margin:var(--space-12) 0}.prose img{max-width:100%;height:auto}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}[material=paper]{background:var(--white);border:.5px solid color-mix(in srgb,var(--black) var(--alpha-100),transparent);color:var(--color-text)}[material=glass]{background:color-mix(in srgb,var(--white) var(--alpha-700),transparent);border:.5px solid color-mix(in srgb,var(--black) var(--alpha-100),transparent);color:var(--color-text);backdrop-filter:var(--backdrop-blur-glass);-webkit-backdrop-filter:var(--backdrop-blur-glass)}[tone=dark]{color:color-mix(in srgb,var(--white) var(--alpha-950),transparent);border-color:color-mix(in srgb,var(--white) var(--alpha-200),transparent);--color-overlay-hover: color-mix(in srgb, var(--white) var(--alpha-200), transparent);--color-overlay-active: color-mix(in srgb, var(--black) var(--alpha-500), transparent)}[tone=dark][material=paper]{background:#000}[tone=dark][material=glass]{background:color-mix(in srgb,var(--black) var(--alpha-600),transparent)}[tone=light]{color:var(--color-text);border-color:color-mix(in srgb,var(--black) var(--alpha-100),transparent);--color-overlay-hover: color-mix(in srgb, var(--black) var(--alpha-100), transparent);--color-overlay-active: color-mix(in srgb, var(--black) var(--alpha-300), transparent)}[level="1"]{box-shadow:0 12px 32px #00000024}[level="2"]{box-shadow:0 4px 6px -2px #0000001f,0 40px 60px -16px #00000038}dropdown-menu{position:relative;display:inline-block;color:inherit}dropdown-group{display:grid;gap:var(--space-4)}dropdown-label{display:block;padding:var(--space-4) var(--space-8);color:var(--color-text-muted);font:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase}dropdown-divider{display:block;height:1px;margin:2px 0;background:var(--color-border)}[data-dropdown-trigger][aria-expanded=true],[data-dropdown-trigger][aria-expanded=true]:hover,dropdown-menu[open]::part(trigger),dropdown-menu[open]::part(trigger):hover{background:color-mix(in srgb,var(--color-surface) 88%,black);box-shadow:inset 0 1px 2px #00000014}[data-dropdown-trigger-label],dropdown-menu::part(trigger-label){min-width:0}[data-dropdown-trigger-icon],dropdown-menu::part(trigger-icon){display:inline-flex;align-items:center;justify-content:center;flex:none;color:var(--color-text-muted);transform:translateY(1px)}dropdown-item:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}dropdown-menu::part(panel){position:absolute;left:0;min-width:192px;padding:var(--space-4);border-radius:var(--radius-8);display:flex;flex-direction:column;gap:2px;z-index:2000}dropdown-menu::part(panel-bottom){top:calc(100% + var(--space-4))}dropdown-menu::part(panel-top){bottom:calc(100% + var(--space-4))}dropdown-item{display:flex;align-items:center;gap:var(--space-8);margin:0;padding:6px 12px;border-radius:var(--radius-8);font:inherit;line-height:1.2;color:inherit;font-weight:var(--font-weight-body);-webkit-user-select:none;user-select:none}dropdown-item>[data-ui-icon]{flex:none}dropdown-item[selected]{background:var(--color-overlay-active)}dropdown-item:hover{background:var(--color-primary);color:var(--white)}dropdown-item[action]{color:inherit}dropdown-item[danger]{color:var(--color-danger)}dropdown-item[danger]:hover{background:var(--color-danger);color:var(--white)}modal-overlay{color:inherit}modal-overlay::part(backdrop){position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-16);background:var(--color-overlay-backdrop)}panel-view{display:block}panel-view::part(panel){display:flex;flex-direction:column;gap:var(--space-16);color:var(--color-text)}panel-view::part(header){display:flex;align-items:center;justify-content:space-between;gap:var(--space-12)}panel-view::part(title){margin:0;font:inherit;font-size:var(--text-lg);font-weight:600;color:var(--color-text)}panel-view::part(button){display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0;border:1px solid var(--color-border);border-radius:var(--radius-4);background:var(--color-surface);color:var(--color-text);box-shadow:none}panel-view::part(button):hover{background:var(--color-interactive-hover)}panel-view::part(button):focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}panel-view::part(icon){display:inline-flex;align-items:center;justify-content:center;flex:none}ui-popover{display:contents}ui-popover::part(panel){position:fixed;min-width:192px;max-width:384px;padding:var(--space-16) var(--space-20);border-radius:var(--radius-16);outline:none;z-index:2000}ui-pill{display:inline-block;vertical-align:baseline;margin:2px 0;padding:0 var(--space-8);font-size:var(--text-sm);font-weight:500;line-height:1.7;border-radius:var(--radius-full);border:1px solid var(--neutral-300);background:var(--neutral-200);color:var(--neutral-900);white-space:nowrap}ui-pill[color=gray]{border-color:var(--neutral-300);background:var(--neutral-200);color:var(--neutral-900)}ui-pill[color=red]{border-color:var(--red-200);background:var(--red-100);color:var(--red-950)}ui-pill[color=orange]{border-color:var(--orange-200);background:var(--orange-100);color:var(--orange-950)}ui-pill[color=yellow]{border-color:var(--yellow-200);background:var(--yellow-100);color:var(--yellow-950)}ui-pill[color=green]{border-color:var(--green-200);background:var(--green-100);color:var(--green-950)}ui-pill[color=blue]{border-color:var(--blue-200);background:var(--blue-100);color:var(--blue-950)}ui-pill[color=purple]{border-color:var(--purple-200);background:var(--purple-100);color:var(--purple-950)}',ch=new CSSStyleSheet;ch.replaceSync(QD);try{document.adoptedStyleSheets=[...document.adoptedStyleSheets,ch]}catch{}ty(document);function ny(n){try{n.adoptedStyleSheets=[...n.adoptedStyleSheets,ch]}catch{}ty(n)}/**
50
+ * @license
51
+ * Copyright 2017 Google LLC
52
+ * SPDX-License-Identifier: BSD-3-Clause
53
+ */const ry={CHILD:2},uh=n=>(...e)=>({_$litDirective$:n,values:e});class iy{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,r){this._$Ct=e,this._$AM=t,this._$Ci=r}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}}/**
54
+ * @license
55
+ * Copyright 2017 Google LLC
56
+ * SPDX-License-Identifier: BSD-3-Clause
57
+ */let va=class extends iy{constructor(e){if(super(e),this.it=se,e.type!==ry.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===se||e==null)return this._t=void 0,this.it=e;if(e===pi)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;const t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};va.directiveName="unsafeHTML",va.resultType=1;const e2=uh(va);/**
58
+ * @license
59
+ * Copyright 2017 Google LLC
60
+ * SPDX-License-Identifier: BSD-3-Clause
61
+ */class Bc extends va{}Bc.directiveName="unsafeSVG",Bc.resultType=2;const t2=uh(Bc),n2={size:16,color:"currentColor",weight:"regular"};function r2(n){return typeof n=="string"?{regular:n}:n}function Ot(n,e="0 0 256 256"){const t=r2(n);return r=>{const{size:i,color:s,weight:o}={...n2,...r},a=t[o]??t.regular;return U`<svg
62
+ xmlns="http://www.w3.org/2000/svg"
63
+ data-ui-icon=""
64
+ width="${i}"
65
+ height="${i}"
66
+ viewBox="${e}"
67
+ fill="${s}"
68
+ >${t2(a)}</svg>`}}const i2=Ot('<path fill="none" stroke="currentColor" stroke-width="16" stroke-linecap="round" stroke-linejoin="round" d="M200 224H56C53.8783 224 51.8434 223.157 50.3431 221.657C48.8429 220.157 48 218.122 48 216V40C48 37.8783 48.8429 35.8434 50.3431 34.3431C51.8434 32.8429 53.8783 32 56 32H152L208 88V216C208 218.122 207.157 220.157 205.657 221.657C204.157 223.157 202.122 224 200 224Z"/><path fill="none" stroke="currentColor" stroke-width="16" stroke-linecap="round" stroke-linejoin="round" d="M152 32V88H208"/><path fill="none" stroke="currentColor" stroke-width="16" stroke-linecap="round" d="M80 88H124.5"/><path fill="none" stroke="currentColor" stroke-width="16" stroke-linecap="round" d="M80 128H175"/><path fill="none" stroke="currentColor" stroke-width="16" stroke-linecap="round" d="M80 169H175"/>'),sy=Ot('<path d="M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z"/>'),s2=Ot('<path d="M181.66,133.66l-80,80a8,8,0,0,1-11.32-11.32L164.69,128,90.34,53.66a8,8,0,0,1,11.32-11.32l80,80A8,8,0,0,1,181.66,133.66Z"/>'),oy=Ot('<path d="M213.66,93.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,82.34L128,156.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z"/>'),o2=Ot('<path d="M213.66,162.34l-80-80a8,8,0,0,0-11.32,0l-80,80A8,8,0,0,0,53.66,173.66L128,99.31l74.34,74.35a8,8,0,0,0,11.32-11.32Z"/>'),a2=Ot('<path d="M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z"/>'),l2=Ot({regular:'<path d="M219.31,108.68l-80-80a16,16,0,0,0-22.62,0l-80,80A15.87,15.87,0,0,0,32,120v96a8,8,0,0,0,8,8h64a8,8,0,0,0,8-8V160h32v56a8,8,0,0,0,8,8h64a8,8,0,0,0,8-8V120A15.87,15.87,0,0,0,219.31,108.68ZM208,208H160V152a8,8,0,0,0-8-8H104a8,8,0,0,0-8,8v56H48V120l80-80,80,80Z"/>',bold:'<path d="M222.14,105.85l-80-80a20,20,0,0,0-28.28,0l-80,80A19.86,19.86,0,0,0,28,120v96a12,12,0,0,0,12,12h64a12,12,0,0,0,12-12V164h24v52a12,12,0,0,0,12,12h64a12,12,0,0,0,12-12V120A19.86,19.86,0,0,0,222.14,105.85ZM204,204H164V152a12,12,0,0,0-12-12H104a12,12,0,0,0-12,12v52H52V121.65l76-76,76,76Z"/>',fill:'<path d="M224,120v96a8,8,0,0,1-8,8H160a8,8,0,0,1-8-8V164a4,4,0,0,0-4-4H108a4,4,0,0,0-4,4v52a8,8,0,0,1-8,8H40a8,8,0,0,1-8-8V120a16,16,0,0,1,4.69-11.31l80-80a16,16,0,0,1,22.62,0l80,80A16,16,0,0,1,224,120Z"/>'}),c2=Ot({regular:'<path d="M227.31,73.37,182.63,28.68a16,16,0,0,0-22.63,0L36.69,152A15.86,15.86,0,0,0,32,163.31V208a16,16,0,0,0,16,16H92.69A15.86,15.86,0,0,0,104,219.31L227.31,96a16,16,0,0,0,0-22.63ZM51.31,160,136,75.31,152.69,92,68,176.68ZM48,179.31,76.69,208H48Zm48,25.38L79.31,188,164,103.31,180.69,120Zm96-96L147.31,64l24-24L216,84.68Z"/>',bold:'<path d="M230.14,70.54,185.46,25.85a20,20,0,0,0-28.29,0L33.86,149.17A19.85,19.85,0,0,0,28,163.31V208a20,20,0,0,0,20,20H92.69a19.86,19.86,0,0,0,14.14-5.86L230.14,98.82a20,20,0,0,0,0-28.28ZM93,180l71-71,11,11-71,71ZM76,163,65,152l71-71,11,11ZM52,173l15.51,15.51h0L83,204H52ZM192,103,153,64l18.34-18.34,39,39Z"/>'}),u2=Ot({regular:'<path d="M216,48H176V40a24,24,0,0,0-24-24H104A24,24,0,0,0,80,40v8H40a8,8,0,0,0,0,16h8V208a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64h8a8,8,0,0,0,0-16ZM96,40a8,8,0,0,1,8-8h48a8,8,0,0,1,8,8v8H96Zm96,168H64V64H192ZM112,104v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm48,0v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Z"/>',bold:'<path d="M216,44H176V40a24,24,0,0,0-24-24H104A24,24,0,0,0,80,40v4H40a12,12,0,0,0,0,24h4V208a20,20,0,0,0,20,20H192a20,20,0,0,0,20-20V68h4a12,12,0,0,0,0-24ZM104,40h48v4H104Zm84,164H68V68H188Zm-84-48V120a12,12,0,0,1,24,0v36a12,12,0,0,1-24,0Zm40,0V120a12,12,0,0,1,24,0v36a12,12,0,0,1-24,0Z"/>'}),Vc=Ot({regular:'<path d="M239.18,97.26A16.38,16.38,0,0,0,224.92,86l-59-4.76L143.14,26.15a16.36,16.36,0,0,0-30.27,0L90.11,81.23,31.08,86a16.46,16.46,0,0,0-9.37,28.86l45,38.83L53,211.75a16.38,16.38,0,0,0,24.5,17.82L128,198.49l50.53,31.08A16.4,16.4,0,0,0,203,211.75l-13.76-58.07,45-38.83A16.43,16.43,0,0,0,239.18,97.26Zm-15.34,5.47-48.7,42a8,8,0,0,0-2.56,7.91l14.88,62.8a.37.37,0,0,1-.17.48c-.18.14-.23.11-.38,0l-54.72-33.65a8,8,0,0,0-8.38,0L69.09,215.94c-.15.09-.19.12-.38,0a.37.37,0,0,1-.17-.48l14.88-62.8a8,8,0,0,0-2.56-7.91l-48.7-42c-.12-.1-.23-.19-.13-.5s.18-.27.33-.29l63.92-5.16A8,8,0,0,0,103,91.86l24.62-59.61c.08-.17.11-.25.35-.25s.27.08.35.25L153,91.86a8,8,0,0,0,6.75,4.92l63.92,5.16c.15,0,.24,0,.33.29S224,102.63,223.84,102.73Z"/>',bold:'<path d="M243,96a20.33,20.33,0,0,0-17.74-14l-56.59-4.57L146.83,24.62a20.36,20.36,0,0,0-37.66,0L87.35,77.44,30.76,82A20.45,20.45,0,0,0,19.1,117.88l43.18,37.24-13.2,55.7A20.37,20.37,0,0,0,79.57,233L128,203.19,176.43,233a20.39,20.39,0,0,0,30.49-22.15l-13.2-55.7,43.18-37.24A20.43,20.43,0,0,0,243,96ZM172.53,141.7a12,12,0,0,0-3.84,11.86L181.58,208l-47.29-29.08a12,12,0,0,0-12.58,0L74.42,208l12.89-54.4a12,12,0,0,0-3.84-11.86L41.2,105.24l55.4-4.47a12,12,0,0,0,10.13-7.38L128,41.89l21.27,51.5a12,12,0,0,0,10.13,7.38l55.4,4.47Z"/>',fill:'<path d="M234.29,114.85l-45,38.83L203,211.75a16.4,16.4,0,0,1-24.5,17.82L128,198.49,77.47,229.57A16.4,16.4,0,0,1,53,211.75l13.76-58.07-45-38.83A16.46,16.46,0,0,1,31.08,86l59-4.76,22.76-55.08a16.36,16.36,0,0,1,30.27,0l22.75,55.08,59,4.76a16.46,16.46,0,0,1,9.37,28.86Z"/>'});class ay extends Event{constructor(t){super("dropdown-item-select",{bubbles:!0,composed:!0});b(this,"value");this.value=t}}class h2 extends Event{constructor(t){super("select",{bubbles:!0,composed:!0});b(this,"value");this.value=t}}var Ke,mt,dn,Qn,ne,ks,M,cy,Gi,uy,hy,Gc,dy,ji,Dn,er,Es,xs,As,xa,py,fy,jc,qi,gy,qc,Zt;class ly extends HTMLElement{constructor(){super();w(this,M);w(this,Ke,!1);w(this,mt,null);w(this,dn,null);w(this,Qn);w(this,ne,null);w(this,ks,new MutationObserver(t=>m(this,M,py).call(this,t)));w(this,er,()=>{m(this,M,ji).call(this,!l(this,Ke))});w(this,Es,t=>{t.key!=="Enter"&&t.key!==" "||(t.preventDefault(),l(this,er).call(this))});w(this,xs,t=>{l(this,Ke)&&(t.composedPath().includes(this)||m(this,M,ji).call(this,!1))});w(this,As,t=>{t instanceof ay&&(t.stopPropagation(),x(this,Ke,!1),m(this,M,Gi).call(this,t.value),m(this,M,Zt).call(this),this.dispatchEvent(new h2(t.value)))});w(this,xa,()=>{m(this,M,jc).call(this)});x(this,Qn,this.attachShadow({mode:"open"})),ny(l(this,Qn))}connectedCallback(){this.addEventListener("dropdown-item-select",l(this,As)),document.addEventListener("click",l(this,xs),!0),m(this,M,cy).call(this),l(this,ks).observe(this,{childList:!0,subtree:!0,characterData:!0,attributes:!0,attributeFilter:["selected","value","slot"]}),m(this,M,Zt).call(this)}disconnectedCallback(){this.removeEventListener("dropdown-item-select",l(this,As)),document.removeEventListener("click",l(this,xs),!0),l(this,ks).disconnect(),m(this,M,qc).call(this)}attributeChangedCallback(t){if(t==="open"){m(this,M,ji).call(this,this.hasAttribute("open"));return}m(this,M,Zt).call(this)}get open(){return l(this,Ke)}set open(t){this.toggleAttribute("open",t)}get title(){return this.getAttribute("title")??""}get placement(){return this.getAttribute("placement")==="top"?"top":"bottom"}get value(){return l(this,mt)}set value(t){t===null?(m(this,M,Dn).call(this,null,null),m(this,M,uy).call(this)):m(this,M,Gi).call(this,t),m(this,M,Zt).call(this)}close(){m(this,M,ji).call(this,!1)}}Ke=new WeakMap,mt=new WeakMap,dn=new WeakMap,Qn=new WeakMap,ne=new WeakMap,ks=new WeakMap,M=new WeakSet,cy=function(){var r;const t=this.querySelector("dropdown-item[selected]");t&&m(this,M,Dn).call(this,t.value,((r=t.textContent)==null?void 0:r.trim())??null)},Gi=function(t){var r;for(const i of l(this,M,Gc))i.value===t?(m(this,M,Dn).call(this,t,((r=i.textContent)==null?void 0:r.trim())??null),i.hasAttribute("selected")||i.setAttribute("selected","")):i.hasAttribute("selected")&&i.removeAttribute("selected")},uy=function(){const t=this.querySelectorAll("dropdown-item[selected]");for(const r of t)r.removeAttribute("selected")},hy=function(t){for(const r of l(this,M,Gc))if(r.value===t)return r;return null},Gc=function(){return this.querySelectorAll("dropdown-item")},dy=function(){return l(this,dn)??this.title},ji=function(t){l(this,Ke)!==t&&(x(this,Ke,t),m(this,M,Zt).call(this))},Dn=function(t,r){x(this,mt,t),x(this,dn,r)},er=new WeakMap,Es=new WeakMap,xs=new WeakMap,As=new WeakMap,xa=new WeakMap,py=function(t){t.every(i=>i.target instanceof Element?i.target.closest('[slot="trigger"]')!==null:!1)||m(this,M,fy).call(this)},fy=function(){var r,i;const t=this.querySelector("dropdown-item[selected]");if(t){const s=t.value,o=((r=t.textContent)==null?void 0:r.trim())??null,a=l(this,mt)!==s||l(this,dn)!==o;m(this,M,Dn).call(this,s,o),m(this,M,Gi).call(this,s),a?m(this,M,Zt).call(this):m(this,M,qi).call(this);return}if(l(this,mt)!==null){const s=m(this,M,hy).call(this,l(this,mt));if(s){const o=((i=s.textContent)==null?void 0:i.trim())??null,a=l(this,dn)!==o;m(this,M,Dn).call(this,l(this,mt),o),m(this,M,Gi).call(this,l(this,mt)),a?m(this,M,Zt).call(this):m(this,M,qi).call(this);return}}if(l(this,mt)!==null||l(this,dn)!==null){m(this,M,Dn).call(this,null,null),m(this,M,Zt).call(this);return}m(this,M,qi).call(this)},jc=function(){const t=l(this,Qn).querySelector('slot[name="trigger"]'),r=t instanceof HTMLSlotElement?t.assignedElements()[0]??null:null;l(this,ne)!==r&&(m(this,M,qc).call(this),x(this,ne,r),l(this,ne)&&(l(this,ne).addEventListener("click",l(this,er)),l(this,ne)instanceof HTMLButtonElement?l(this,ne).hasAttribute("type")||(l(this,ne).type="button"):(l(this,ne).hasAttribute("role")||l(this,ne).setAttribute("role","button"),l(this,ne).hasAttribute("tabindex")||(l(this,ne).tabIndex=0),l(this,ne).addEventListener("keydown",l(this,Es))))),m(this,M,qi).call(this)},qi=function(){l(this,ne)&&(l(this,ne).setAttribute("data-dropdown-trigger",""),l(this,ne).setAttribute("aria-haspopup","listbox"),l(this,ne).setAttribute("aria-expanded",l(this,Ke)?"true":"false"))},gy=function(){return this.placement==="top"?o2:oy},qc=function(){l(this,ne)&&(l(this,ne).removeEventListener("click",l(this,er)),l(this,ne).removeEventListener("keydown",l(this,Es)),l(this,ne).removeAttribute("data-dropdown-trigger"),l(this,ne).removeAttribute("aria-haspopup"),l(this,ne).removeAttribute("aria-expanded"),x(this,ne,null))},Zt=function(){this.toggleAttribute("open",l(this,Ke)),Re(U`
69
+ <slot name="trigger" @slotchange=${l(this,xa)}>
70
+ <button
71
+ class="fallback-trigger"
72
+ part="trigger"
73
+ type="button"
74
+ aria-haspopup="listbox"
75
+ aria-expanded=${l(this,Ke)?"true":"false"}
76
+ @click=${l(this,er)}
77
+ >
78
+ <span class="trigger-label" part="trigger-label">${l(this,M,dy)}</span>
79
+ <span class="trigger-icon" part="trigger-icon" aria-hidden="true">
80
+ ${l(this,M,gy).call(this,{size:16})}
81
+ </span>
82
+ </button>
83
+ </slot>
84
+ ${l(this,Ke)?U`
85
+ <div
86
+ class="panel"
87
+ part="panel panel-${this.placement}"
88
+ role="listbox"
89
+ material="paper"
90
+ level="1"
91
+ >
92
+ <slot></slot>
93
+ </div>
94
+ `:null}
95
+ `,l(this,Qn)),queueMicrotask(()=>m(this,M,jc).call(this))},b(ly,"observedAttributes",["title","placement","open"]);class d2 extends HTMLElement{}class p2 extends HTMLElement{}class f2 extends HTMLElement{}var mr,Yc,vy,$s,Ts;class my extends HTMLElement{constructor(){super(...arguments);w(this,mr);w(this,$s,()=>{this.action||m(this,mr,vy).call(this)});w(this,Ts,t=>{t.key!=="Enter"&&t.key!==" "||(t.preventDefault(),this.click())})}connectedCallback(){this.hasAttribute("role")||this.setAttribute("role","option"),this.hasAttribute("tabindex")||(this.tabIndex=0),this.addEventListener("click",l(this,$s)),this.addEventListener("keydown",l(this,Ts)),m(this,mr,Yc).call(this)}disconnectedCallback(){this.removeEventListener("click",l(this,$s)),this.removeEventListener("keydown",l(this,Ts))}attributeChangedCallback(){m(this,mr,Yc).call(this)}get value(){return this.getAttribute("value")??""}get selected(){return this.hasAttribute("selected")}get action(){return this.hasAttribute("action")}}mr=new WeakSet,Yc=function(){if(this.action){this.setAttribute("role","button"),this.removeAttribute("aria-selected");return}this.setAttribute("role","option"),this.setAttribute("aria-selected",this.selected?"true":"false")},vy=function(){this.dispatchEvent(new ay(this.value))},$s=new WeakMap,Ts=new WeakMap,b(my,"observedAttributes",["action","selected","value"]);customElements.get("dropdown-menu")||customElements.define("dropdown-menu",ly);customElements.get("dropdown-group")||customElements.define("dropdown-group",d2);customElements.get("dropdown-label")||customElements.define("dropdown-label",p2);customElements.get("dropdown-divider")||customElements.define("dropdown-divider",f2);customElements.get("dropdown-item")||customElements.define("dropdown-item",my);class g2 extends Event{constructor(){super("close",{bubbles:!0,composed:!0})}}var Is,wn,Xc,Aa,Cs,Kc;class yy extends HTMLElement{constructor(){super();w(this,wn);w(this,Is);w(this,Aa,t=>{t.target===t.currentTarget&&m(this,wn,Xc).call(this)});w(this,Cs,t=>{this.open&&t.key==="Escape"&&m(this,wn,Xc).call(this)});x(this,Is,this.attachShadow({mode:"open"}))}connectedCallback(){document.addEventListener("keydown",l(this,Cs)),m(this,wn,Kc).call(this)}disconnectedCallback(){document.removeEventListener("keydown",l(this,Cs))}attributeChangedCallback(){m(this,wn,Kc).call(this)}get open(){return this.hasAttribute("open")}}Is=new WeakMap,wn=new WeakSet,Xc=function(){this.dispatchEvent(new g2)},Aa=new WeakMap,Cs=new WeakMap,Kc=function(){Re(U`
96
+ ${this.open?U`
97
+ <div class="backdrop" part="backdrop" @click=${l(this,Aa)}>
98
+ <slot></slot>
99
+ </div>
100
+ `:null}
101
+ `,l(this,Is))},b(yy,"observedAttributes",["open"]);customElements.get("modal-overlay")||customElements.define("modal-overlay",yy);class m2 extends Event{constructor(){super("close",{bubbles:!0,composed:!0})}}class v2 extends HTMLElement{}var Ps,Rs,Jc;class by extends HTMLElement{constructor(){super();w(this,Rs);w(this,Ps);x(this,Ps,this.attachShadow({mode:"open"}))}connectedCallback(){m(this,Rs,Jc).call(this)}attributeChangedCallback(){m(this,Rs,Jc).call(this)}get closable(){return this.hasAttribute("closable")}}Ps=new WeakMap,Rs=new WeakSet,Jc=function(){const t=this.querySelector("panel-page");Re(U`
102
+ <section class="panel" part="panel">
103
+ <header class="title-bar" part="header">
104
+ <h2 class="title" part="title">${(t==null?void 0:t.getAttribute("title"))??""}</h2>
105
+ ${this.closable?U`
106
+ <button
107
+ type="button"
108
+ class="title-button"
109
+ part="button close-button"
110
+ aria-label="Close"
111
+ @click=${()=>this.dispatchEvent(new m2)}
112
+ >
113
+ <span class="close-icon" part="icon close-icon">${sy({size:16})}</span>
114
+ </button>
115
+ `:null}
116
+ </header>
117
+ <slot></slot>
118
+ </section>
119
+ `,l(this,Ps))},b(by,"observedAttributes",["closable"]);customElements.get("panel-view")||customElements.define("panel-view",by);customElements.get("panel-page")||customElements.define("panel-page",v2);class y2 extends Event{constructor(){super("close",{bubbles:!0,composed:!0})}}const hf='a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),[tabindex]:not([tabindex="-1"])',nc=4;var Be,Yt,tr,rt,Ds,Jr,re,Sy,_y,Qc,Ls,Os,nr,ky,eu,Ey,xy,Jo,Qo;class wy extends HTMLElement{constructor(){super();w(this,re);w(this,Be,!1);w(this,Yt,null);w(this,tr);w(this,rt,null);w(this,Ds,"bottom-start");w(this,Jr,!1);w(this,Ls,t=>{l(this,Be)&&(l(this,Jr)||t.composedPath().includes(this)||(this.open=!1))});w(this,Os,t=>{if(l(this,Be)){if(t.key==="Escape"){t.preventDefault(),this.open=!1;return}t.key==="Tab"&&m(this,re,ky).call(this,t)}});w(this,nr,()=>{l(this,Be)&&m(this,re,Jo).call(this)});x(this,tr,this.attachShadow({mode:"open"})),ny(l(this,tr))}connectedCallback(){this.hasAttribute("tone")||this.setAttribute("tone","light"),m(this,re,Qo).call(this)}disconnectedCallback(){m(this,re,Qc).call(this)}attributeChangedCallback(t){t==="open"&&m(this,re,Sy).call(this,this.hasAttribute("open"))}get open(){return l(this,Be)}set open(t){this.toggleAttribute("open",t)}get anchor(){return l(this,Yt)}set anchor(t){l(this,Yt)!==t&&(x(this,Yt,t),l(this,Be)&&m(this,re,Jo).call(this))}}Be=new WeakMap,Yt=new WeakMap,tr=new WeakMap,rt=new WeakMap,Ds=new WeakMap,Jr=new WeakMap,re=new WeakSet,Sy=function(t){var r;l(this,Be)!==t&&(x(this,Be,t),t?(x(this,Jr,!0),setTimeout(()=>{x(this,Jr,!1)},0),m(this,re,Qo).call(this),m(this,re,_y).call(this),queueMicrotask(()=>{l(this,Be)&&(m(this,re,Jo).call(this),m(this,re,xy).call(this))})):(m(this,re,Qc).call(this),m(this,re,Qo).call(this),(r=l(this,Yt))==null||r.focus(),this.dispatchEvent(new y2)))},_y=function(){document.addEventListener("click",l(this,Ls)),document.addEventListener("keydown",l(this,Os),!0),window.addEventListener("resize",l(this,nr)),window.addEventListener("scroll",l(this,nr),!0)},Qc=function(){document.removeEventListener("click",l(this,Ls)),document.removeEventListener("keydown",l(this,Os),!0),window.removeEventListener("resize",l(this,nr)),window.removeEventListener("scroll",l(this,nr),!0)},Ls=new WeakMap,Os=new WeakMap,nr=new WeakMap,ky=function(t){const r=m(this,re,eu).call(this);if(r.length===0){t.preventDefault();return}const i=r[0],s=r[r.length-1],o=m(this,re,Ey).call(this),a=o instanceof HTMLElement&&r.includes(o);t.shiftKey?(!a||o===i)&&(t.preventDefault(),s.focus()):(!a||o===s)&&(t.preventDefault(),i.focus())},eu=function(){if(!l(this,rt))return[];const t=l(this,rt).querySelector("slot");if(!(t instanceof HTMLSlotElement))return[];const r=[];for(const i of t.assignedElements({flatten:!0}))if(i instanceof HTMLElement){i.matches(hf)&&r.push(i);for(const s of i.querySelectorAll(hf))r.push(s)}return r},Ey=function(){var r;let t=document.activeElement;for(;t&&((r=t.shadowRoot)!=null&&r.activeElement);)t=t.shadowRoot.activeElement;return t},xy=function(){var r;const t=m(this,re,eu).call(this);t.length>0?t[0].focus():(r=l(this,rt))==null||r.focus()},Jo=function(){if(!l(this,Be)||!l(this,Yt)||!l(this,rt))return;const t=l(this,Yt).getBoundingClientRect(),r=l(this,rt).getBoundingClientRect(),s=window.innerHeight-t.bottom,o=r.height+nc,a=s<o&&t.top>o?"top-start":"bottom-start";x(this,Ds,a);const c=a==="bottom-start"?t.bottom+nc:t.top-r.height-nc,u=t.left;l(this,rt).style.top=`${c}px`,l(this,rt).style.left=`${u}px`,l(this,rt).setAttribute("data-placement",a)},Qo=function(){this.toggleAttribute("open",l(this,Be)),Re(l(this,Be)?U`<div
120
+ class="panel"
121
+ part="panel"
122
+ data-placement=${l(this,Ds)}
123
+ tabindex="-1"
124
+ role="dialog"
125
+ material="paper"
126
+ level="1"
127
+ >
128
+ <slot></slot>
129
+ </div>`:se,l(this,tr)),x(this,rt,l(this,tr).querySelector(".panel"))},b(wy,"observedAttributes",["open"]);customElements.get("ui-popover")||customElements.define("ui-popover",wy);function sl(n){return typeof n=="object"&&n!==null}function b2(n){return!sl(n)||n.type!=="wheel"||typeof n.deltaX!="number"||typeof n.deltaY!="number"||typeof n.shiftKey!="boolean"?!1:!("id"in n)}function w2(n){return!sl(n)||n.type!=="swipe-move"||typeof n.deltaX!="number"?!1:!("id"in n)}function S2(n){return!sl(n)||n.type!=="swipe-end"||typeof n.velocityX!="number"?!1:!("id"in n)}function Ay(n){return!sl(n)||n.type!=="open-artifact"||typeof n.artifactID!="string"?!1:!("id"in n)}function _2(n=window){if(n.parent===n)return;let e=0,t=0;n.document.documentElement&&(n.document.documentElement.style.touchAction="pan-y"),n.addEventListener("wheel",u=>{const h=u;e=h.clientX,t=h.clientY,n.parent.postMessage({type:"wheel",deltaX:h.deltaX,deltaY:h.deltaY,shiftKey:h.shiftKey},"*"),h.preventDefault()},{passive:!1});const r=8,i=100,s=1e3,o=new Map;n.addEventListener("pointerdown",u=>{const h=u;h.pointerType==="touch"&&o.set(h.pointerId,{startX:h.clientX,startY:h.clientY,lastX:h.clientX,offset:0,active:!1,discarded:!1,samples:[{time:h.timeStamp,offset:0}]})},{passive:!0}),n.addEventListener("pointermove",u=>{const h=u,p=o.get(h.pointerId);if(!p||p.discarded)return;if(!p.active){const _=h.clientX-p.startX,C=h.clientY-p.startY,N=Math.abs(_),P=Math.abs(C);if(N<r&&P<r)return;if(P>=N){p.discarded=!0;return}p.active=!0}const v=h.clientX-p.lastX;p.lastX=h.clientX,p.offset+=v,p.samples.push({time:h.timeStamp,offset:p.offset});const g=h.timeStamp-i;let E=0;for(let _=0;_<p.samples.length;_+=1){if(p.samples[_].time>=g){E=_;break}E=_+1}if(E>0){const _=Math.max(0,E-1);p.samples.splice(0,_)}n.parent.postMessage({type:"swipe-move",deltaX:v},"*"),h.preventDefault()},{passive:!1}),n.addEventListener("pointerup",u=>{const h=u,p=o.get(h.pointerId);if(!p||(o.delete(h.pointerId),!p.active))return;let v=0;if(p.samples.length>=2){const g=p.samples[0],E=p.samples[p.samples.length-1],_=E.time-g.time;_>0&&(v=(E.offset-g.offset)/_*s)}n.parent.postMessage({type:"swipe-end",velocityX:v},"*")}),n.addEventListener("pointercancel",u=>{const h=u,p=o.get(h.pointerId);p&&(o.delete(h.pointerId),p.active&&n.parent.postMessage({type:"swipe-end",velocityX:0},"*"))}),n.addEventListener("message",u=>{var _,C;const h=u.data;if(h===null||typeof h!="object"||h.type!=="scroll")return;const p=h,v=typeof p.deltaX=="number"?p.deltaX:0,g=typeof p.deltaY=="number"?p.deltaY:0;let E=((C=(_=n.document).elementFromPoint)==null?void 0:C.call(_,e,t))??null;for(;E!==null;){const N=n.getComputedStyle(E);if(g!==0){const P=(N.overflowY==="auto"||N.overflowY==="scroll")&&E.scrollHeight>E.clientHeight,W=g>0?E.scrollTop+E.clientHeight<E.scrollHeight:E.scrollTop>0;if(P&&W){E.scrollBy(v,g);return}}if(v!==0){const P=(N.overflowX==="auto"||N.overflowX==="scroll")&&E.scrollWidth>E.clientWidth,W=v>0?E.scrollLeft+E.clientWidth<E.scrollWidth:E.scrollLeft>0;if(P&&W){E.scrollBy(v,g);return}}E=E.parentElement}n.scrollBy(v,g)});function a(u){if(typeof u!="string")return!1;let h;try{h=new URL(u)}catch{return!1}if(h.protocol!=="artifact:")return!1;const p=h.hostname||h.pathname.replace(/^\/+/,"");return p===""?!1:(n.parent.postMessage({type:"open-artifact",artifactID:p},"*"),!0)}n.document.addEventListener("click",u=>{const h=u,p=typeof h.composedPath=="function"?h.composedPath():[];let v=null;for(const _ of p)if(_ instanceof HTMLAnchorElement||_&&_.tagName==="A"){v=_;break}if(v===null)return;const g=v.getAttribute("href");if(g===null)return;let E;try{E=new URL(g,n.document.baseURI).toString()}catch{return}a(E)&&u.preventDefault()},!0);const c=n.navigation;c&&c.addEventListener("navigate",u=>{var p;a((p=u.destination)==null?void 0:p.url)&&u.preventDefault()})}function k2(){return`(${_2.toString()})(window);`}const E2=tt(),x2=tt(),A2="No handler registered for update-content",$2="handleUpdateContent: handler already registered";function T2(n){return n instanceof Error&&typeof n.message=="string"?n.message:String(n)}const I2=ki(wt);var Qr,ei,ti,rr,ir,Ms,Ie,tu,$y,Ty,Yi,nu,Wf;let C2=(Wf=class extends I2{constructor(t){super();w(this,Ie);w(this,Qr);w(this,ei);w(this,ti);w(this,rr,null);w(this,ir,null);w(this,Ms,!1);x(this,Qr,t);const r=t.ownerDocument.defaultView;if(!r)throw new Error("ArtifactView: iframe has no owner window");x(this,ei,r),x(this,ti,i=>m(this,Ie,$y).call(this,i)),l(this,ei).addEventListener("message",l(this,ti))}get content(){return l(this,ir)}set content(t){m(this,Ie,nu).call(this),x(this,ir,t),l(this,Ms)&&m(this,Ie,tu).call(this,t)}handleUpdateContent(t){if(m(this,Ie,nu).call(this),l(this,rr)!==null)throw new Error($2);x(this,rr,t)}dispose(){l(this,ei).removeEventListener("message",l(this,ti)),x(this,rr,null)}},Qr=new WeakMap,ei=new WeakMap,ti=new WeakMap,rr=new WeakMap,ir=new WeakMap,Ms=new WeakMap,Ie=new WeakSet,tu=function(t){const r={type:"content-updated",content:t};m(this,Ie,Yi).call(this,r)},$y=function(t){if(this.disposed||t.source!==l(this,Qr).contentWindow)return;const r=t.data;if(AI(r)){x(this,Ms,!0),this.dispatchEvent(new E2("ready")),l(this,ir)!==null&&m(this,Ie,tu).call(this,l(this,ir));return}if($I(r)){m(this,Ie,Ty).call(this,r);return}if(Ay(r)){this.dispatchEvent(new x2("open-artifact",{artifactID:r.artifactID}));return}},Ty=async function(t){const r=l(this,rr);if(r===null){m(this,Ie,Yi).call(this,{type:"response",id:t.id,error:{message:A2}});return}try{await r(t.content)}catch(i){if(this.disposed)return;m(this,Ie,Yi).call(this,{type:"response",id:t.id,error:{message:T2(i)}});return}this.disposed||m(this,Ie,Yi).call(this,{type:"response",id:t.id,result:{}})},Yi=function(t){const r=l(this,Qr).contentWindow;r&&r.postMessage(t,"*")},nu=function(){if(this.disposed)throw new Error("ArtifactView is disposed")},Wf);async function P2(n){const e=await fetch(n);if(!e.ok)throw new Error(`Failed to fetch artifact content: ${e.status}`);const t=await e.text(),r=new DOMParser().parseFromString(t,"text/html"),i=r.createElement("base");i.href=new URL(n,window.location.href).href,r.head.insertBefore(i,r.head.firstChild);const s=r.createElement("script");s.textContent=k2(),r.head.appendChild(s);const o=new Blob([`<!DOCTYPE html>
130
+ ${r.documentElement.outerHTML}`],{type:"text/html"});return URL.createObjectURL(o)}const df="television-artifact-bridge",Iy=tt(),R2=tt();class D2 extends HTMLElement{constructor(){super(...arguments);b(this,"_artifact",null);b(this,"_viewURL",null);b(this,"_contentURL",null);b(this,"_screen",null);b(this,"_subscribedScreen",null);b(this,"_activeView",null);b(this,"_contentState",{kind:"idle"});b(this,"_fetchSequence",0);b(this,"_blobSequence",0);b(this,"_mountedViewURL",null);b(this,"_directRender",!1);b(this,"_blobURL",null);b(this,"_subscribedWebview",null);b(this,"_directRenderMessageListener",null);b(this,"handleScreenContentChanged",t=>{!this._artifact||t.artifactID!==this._artifact.id||this._activeView!==null&&this.refetchContent()});b(this,"handleOpenArtifact",t=>{this.requestFocus(t.artifactID)});b(this,"handleIframeMessage",t=>{const r=this.querySelector("iframe.artifact-frame");!r||r.contentWindow!==t.source||b2(t.data)&&this.dispatchArtifactWheel({deltaX:t.data.deltaX,deltaY:t.data.deltaY,shiftKey:t.data.shiftKey},i=>{var o;const s={type:"scroll",deltaX:0,deltaY:i};(o=r.contentWindow)==null||o.postMessage(s,this.iframeTargetOrigin(r))})});b(this,"handleWebviewIpcMessage",t=>{var o;const r=t.detail??t;if(!r||r.channel!==df)return;const i=(o=r.args)==null?void 0:o[0];if(!i||i.type!=="wheel")return;const s=this._subscribedWebview;s&&this.dispatchArtifactWheel({deltaX:i.deltaX??0,deltaY:i.deltaY??0,shiftKey:i.shiftKey??!1},a=>{var c;(c=s.send)==null||c.call(s,df,{type:"scroll",deltaX:0,deltaY:a})})})}set artifact(t){const r=this._artifact;this._artifact=t,this.render(),r!==null&&r!==t&&this.syncView()}get artifact(){return this._artifact}set viewURL(t){this._viewURL!==t&&(this._viewURL=t,this.syncView())}get viewURL(){return this._viewURL}set contentURL(t){this._contentURL!==t&&(this._contentURL=t,this.syncView())}get contentURL(){return this._contentURL}set screen(t){this._screen!==t&&(this._screen=t,this.syncScreenSubscription())}get screen(){return this._screen}set dragging(t){t?this.setAttribute("dragging","true"):this.removeAttribute("dragging")}get dragging(){return this.getAttribute("dragging")==="true"}get activeView(){return this._activeView}connectedCallback(){this.setAttribute("level","2"),this.render(),this.syncView(),this.syncScreenSubscription(),window.addEventListener("message",this.handleIframeMessage)}disconnectedCallback(){this.teardownView(),this.unsubscribeFromScreen(),window.removeEventListener("message",this.handleIframeMessage),this.unsubscribeFromWebview()}handleClose(){this._artifact&&this.dispatchEvent(new Iy("close-artifact",{artifactID:this._artifact.id,bubbles:!0,composed:!0}))}syncView(){var t,r;if(this.isConnected){if((t=this._artifact)!=null&&t.externalURL){this.teardownView(),this._contentState={kind:"ready"},this.render();return}if(this._viewURL!==null){if(this._directRender&&this.teardownView(),this._mountedViewURL!==this._viewURL){this.teardownView(),this._contentState={kind:"loading"},this._mountedViewURL=this._viewURL,this.render();const i=this.querySelector("iframe.artifact-frame");if(!i){this._contentState={kind:"error"},this.render();return}this._activeView=new C2(i),this._activeView.handleUpdateContent(async s=>{await this.saveContent(s)}),this._activeView.addEventListener("open-artifact",this.handleOpenArtifact),this.loadBlobFrame(this._viewURL),this.startContentFetch();return}this._activeView!==null&&this.startContentFetch();return}if(this._contentURL!==null){this.teardownView(),this._directRender=!0,this._contentState={kind:"idle"},this.render(),this.installDirectRenderMessageListener(),((r=this._artifact)==null?void 0:r.status)==="committed"&&this.loadBlobFrame(this._contentURL);return}this.teardownView(),this._contentState={kind:"idle"},this.render()}}async saveContent(t){const r=this._screen,i=this._artifact;if(!r||!i)throw new Error("artifact-view: cannot save without a screen and artifact");await r.server.client.artifacts.putContent({artifactID:i.id,content:t})}syncScreenSubscription(){if(!this.isConnected){this.unsubscribeFromScreen();return}this._subscribedScreen!==this._screen&&(this.unsubscribeFromScreen(),this._screen!==null&&(this._screen.addEventListener("artifact-content-changed",this.handleScreenContentChanged),this._subscribedScreen=this._screen))}unsubscribeFromScreen(){this._subscribedScreen!==null&&(this._subscribedScreen.removeEventListener("artifact-content-changed",this.handleScreenContentChanged),this._subscribedScreen=null)}startContentFetch(){this._fetchSequence+=1;const t=this._fetchSequence,r=this._contentURL,i=this._activeView;if(!i||r===null){this._contentState={kind:"error"},this.render();return}this._contentState={kind:"loading"},(async()=>{try{const s=await fetch(r);if(t!==this._fetchSequence)return;if(!s.ok){this._contentState={kind:"error"},this.teardownView(),this.render();return}const o=await s.text();if(t!==this._fetchSequence||this._activeView!==i)return;this._activeView.content=o,this._contentState={kind:"ready"}}catch{if(t!==this._fetchSequence)return;this._contentState={kind:"error"},this.teardownView(),this.render()}})()}refetchContent(){this._fetchSequence+=1;const t=this._fetchSequence,r=this._contentURL,i=this._activeView;!i||r===null||(async()=>{try{const s=await fetch(r);if(t!==this._fetchSequence||!s.ok)return;const o=await s.text();if(t!==this._fetchSequence||this._activeView!==i)return;this._activeView.content=o}catch{}})()}loadBlobFrame(t){this._blobSequence+=1;const r=this._blobSequence;(async()=>{try{const i=await P2(t);if(r!==this._blobSequence){URL.revokeObjectURL(i);return}this._blobURL=i,this.render();const s=this.querySelector("iframe.artifact-frame");s&&(s.src=i)}catch{if(r!==this._blobSequence)return;this._contentState={kind:"error"},this.teardownView(),this.render()}})()}teardownView(){this._activeView!==null&&(this._activeView.removeEventListener("open-artifact",this.handleOpenArtifact),this._activeView.dispose(),this._activeView=null),this.removeDirectRenderMessageListener(),this._blobURL!==null&&(URL.revokeObjectURL(this._blobURL),this._blobURL=null),this._mountedViewURL=null,this._directRender=!1,this._fetchSequence+=1,this._blobSequence+=1}installDirectRenderMessageListener(){if(this._directRenderMessageListener!==null)return;const t=r=>{const i=this.querySelector("iframe.artifact-frame");i&&r.source===i.contentWindow&&Ay(r.data)&&this.requestFocus(r.data.artifactID)};this._directRenderMessageListener=t,window.addEventListener("message",t)}removeDirectRenderMessageListener(){this._directRenderMessageListener!==null&&(window.removeEventListener("message",this._directRenderMessageListener),this._directRenderMessageListener=null)}requestFocus(t){const r=this._screen;r&&r.server.client.viewer.focus({artifactID:t}).catch(i=>{console.warn("artifact-view: viewer.focus failed",i)})}contentTemplate(){var t;if((t=this._artifact)!=null&&t.externalURL){const r=this._artifact.externalURL;return sh()?U`
131
+ <webview
132
+ class="artifact-frame artifact-content"
133
+ src=${r}
134
+ allowpopups
135
+ ></webview>
136
+ `:U`
137
+ <iframe
138
+ class="artifact-frame artifact-content"
139
+ src=${r}
140
+ sandbox="allow-scripts"
141
+ ></iframe>
142
+ `}return this._contentState.kind==="error"?U`
143
+ <div class="artifact-content artifact-placeholder">
144
+ <em>Failed to load content</em>
145
+ </div>
146
+ `:this._viewURL!==null||this._directRender?U`
147
+ <iframe
148
+ class="artifact-frame artifact-content"
149
+ src=${this._blobURL??"about:blank"}
150
+ sandbox="allow-scripts"
151
+ ></iframe>
152
+ `:U`
153
+ <div class="artifact-content artifact-placeholder">
154
+ <em>Artifact unavailable</em>
155
+ </div>
156
+ `}template(){const t=this._artifact;return U`
157
+ ${this.contentTemplate()}
158
+ <footer class="artifact-title-bar" drag-handle material="glass">
159
+ <div class="artifact-title-group">
160
+ <span class="artifact-title-icon">${i2({size:16})}</span>
161
+ <span class="artifact-title">${t.title}</span>
162
+ </div>
163
+ <button
164
+ icon-only
165
+ variant="ghost"
166
+ class="artifact-close-btn"
167
+ @click=${()=>this.handleClose()}
168
+ aria-label="Close"
169
+ >
170
+ ${sy({size:16})}
171
+ </button>
172
+ </footer>
173
+ `}render(){this._artifact&&(this.setAttribute("type",this._artifact.type),Re(this.template(),this),this.syncWebviewSubscription())}dispatchArtifactWheel(t,r){this.dispatchEvent(new R2("artifact-wheel",{bubbles:!0,composed:!0,deltaX:t.deltaX,deltaY:t.deltaY,shiftKey:t.shiftKey,scrollNative:r}))}syncWebviewSubscription(){const t=this.querySelector("webview");t!==this._subscribedWebview&&(this.unsubscribeFromWebview(),t&&(t.addEventListener("ipc-message",this.handleWebviewIpcMessage),this._subscribedWebview=t))}unsubscribeFromWebview(){this._subscribedWebview&&(this._subscribedWebview.removeEventListener("ipc-message",this.handleWebviewIpcMessage),this._subscribedWebview=null)}iframeTargetOrigin(t){const r=t.getAttribute("sandbox")??"";if(!new Set(r.split(/\s+/).filter(Boolean)).has("allow-same-origin"))return"*";const s=t.getAttribute("src")??t.src;if(!s)return"*";try{return new URL(s,window.location.href).origin}catch{return"*"}}}customElements.define("artifact-view",D2);const we=n=>({type:"px",...n}),Te=n=>({type:"unit",...n}),Ro=2;class L2{constructor(e){b(this,"basis");b(this,"min");b(this,"_gap");b(this,"_viewport");b(this,"_unit");this.basis=e.basis,this.min=e.min,this._viewport=e.viewport,this._gap=e.gap??we({x:he,y:he});const t=this._viewport.x??hr,r=this._viewport.y??ua,i=this._gap.x??he,s=this._gap.y??he,o=t<=hx,a=o?t-i*Ro:Math.min(hr,t-i*Ro),c=o?r-s*Ro:Math.min(ua,r-s*Ro),u=(a-i*(Lt-1))/Lt,h=(c-s*(et-1))/et,p=this.basis.x??0,v=this.basis.y??0,g=this.min.x??0,E=this.min.y??0;this._unit=we(o?{x:Math.max(g,u),y:Math.max(E,h)}:{x:Math.max(g,Math.min(p,u)),y:Math.max(E,Math.min(v,h))})}get unit(){return this._unit}get viewport(){return this._viewport}get gap(){return this._gap}toUnits(e){return Te({x:e.x==null?void 0:e.x/(this._unit.x??1),y:e.y==null?void 0:e.y/(this._unit.y??1)})}toPixels(e){const t=this._unit.x??0,r=this._unit.y??0,i=this._gap.x??he,s=this._gap.y??he,o=e.x==null?void 0:e.x*t+Math.max(0,e.x-1)*i,a=e.y==null?void 0:e.y*r+Math.max(0,e.y-1)*s;return we({x:o,y:a})}}const fr=1e-4,Je=1e-6,O2=40,M2=24;function Cy(n,e){return Math.max(0,n-e*2)}function Py(n){const e=[0];for(const t of n)e.push((e[e.length-1]??0)+t);return e}function Ry(n){const e=[0];for(let t=0;t<n.length;t+=1){const r=e[t]??0;e.push(r+n[t]+he)}return e}function Dy(n,e,t){if(e<0||e>=n.length)return 0;let r=0,i=0;for(let s=e;s<n.length;s+=1){const o=n[s],a=i===0?o:r+he+o;if(a>t+fr)break;r=a,i+=1}return Math.max(1,i)}function z2(n,e,t){if(e<0||e>=n.length)return 0;let r=0,i=0;for(let s=e;s>=0;s-=1){const o=n[s],a=i===0?o:r+he+o;if(a>t+fr)break;r=a,i+=1}return Math.max(1,i)}function N2(n,e){if(n.length===0)return 0;let t=0,r=0;for(let i=n.length-1;i>=0;i-=1){const s=n[i],o=r===0?s:t+he+s;if(o>e+fr)break;t=o,r+=1}return Math.max(1,r)}function hh(n,e){if(n.length===0)return 0;const t=N2(n,e);return Math.max(0,n.length-t)}function pf(n,e,t){if(n.length===0)return 0;const r=Dy(n,e,t),i=Math.min(n.length,e+r);if(i<=e)return 0;const s=n.slice(e,i);return s.reduce((o,a)=>o+a,0)+Math.max(0,s.length-1)*he}function ru(n,e,t){const r=n[e]??0;return t-r}function Nr(n,e,t,r,i){if(n.length===0)return 0;const s=hh(n,i),o=e[s]??0,a=Math.max(0,Math.min(o,t));let c=0;for(let H=0;H<s;H+=1){const F=e[H]??0,ce=e[H+1]??F;if(a>=F&&a<=ce+fr){c=H;break}c=H+1}const u=Math.min(c+1,s),h=e[c]??0,p=e[u]??h,v=Math.max(p-h,fr),g=u===c?0:(a-h)/v,E=Ry(n),_=pf(n,c,i),C=pf(n,u,i),N=(r-_)/2,P=(r-C)/2,W=ru(E,c,N),L=ru(E,u,P);return W+(L-W)*g}function ff(n,e,t,r,i){const s=hh(n,r),o=e[s]??0;let a=0,c=o;for(let u=0;u<O2;u+=1){const h=(a+c)/2;Nr(n,e,h,t,r)>i?a=h:c=h}return(a+c)/2}function gf(n,e,t){const r=Ry(n),[i,s]=e,o=n.slice(i,s+1),a=o.reduce((u,h)=>u+h,0)+Math.max(0,o.length-1)*he,c=(t-a)/2;return ru(r,i,c)}function U2(n,e,t){const r=Dy(n,e,t);return[e,Math.min(n.length-1,e+r-1)]}function F2(n,e,t){const r=z2(n,e,t);return[Math.max(0,e-r+1),e]}function Z2(n){const e=new Set,t=[];for(const r of n){const i=`${r.nodeRange[0]}:${r.nodeRange[1]}`;if(e.has(i))continue;const s=t[t.length-1];s&&Math.abs(s.anchor-r.anchor)<=Je||(e.add(i),t.push(r))}return t}function H2(n){const{nodeCols:e,nodeWidthsPx:t,viewportWidthPx:r}=n;if(e.length===0||t.length===0)return{viewspans:[],minScroll:0,maxScroll:0};const i=n.gapPx??he,s=Cy(r,i),o=Py(e),a=hh(t,s),c=o[a]??0,u=[];for(let h=0;h<=a;h+=1){const p=U2(t,h,s),v=gf(t,p,r),g=ff(t,o,r,s,v);u.push({nodeRange:p,anchor:Math.max(0,Math.min(c,g))})}for(let h=t.length-1;h>=0;h-=1){const p=F2(t,h,s),v=`${p[0]}:${p[1]}`;if(u.some(_=>`${_.nodeRange[0]}:${_.nodeRange[1]}`===v))continue;const g=gf(t,p,r),E=ff(t,o,r,s,g);u.push({nodeRange:p,anchor:Math.max(0,Math.min(c,E))})}return u.sort((h,p)=>Math.abs(h.anchor-p.anchor)>Je?h.anchor-p.anchor:h.nodeRange[0]!==p.nodeRange[0]?h.nodeRange[0]-p.nodeRange[0]:h.nodeRange[1]-p.nodeRange[1]),{viewspans:Z2(u),minScroll:0,maxScroll:c}}function rc(n,e){var i;let t=0,r=Number.POSITIVE_INFINITY;for(let s=0;s<n.length;s+=1){const o=Math.abs((((i=n[s])==null?void 0:i.anchor)??0)-e);if(o+Je<r){r=o,t=s;continue}Math.abs(o-r)<=Je&&s<t&&(t=s)}return t}function W2(n,e,t){return t<=0?0:Math.max(0,Math.min(t-1,n+e))}function Rr(n,e,t){return Math.max(e,Math.min(t,n))}function B2(n,e){var t;for(let r=0;r<n.length;r+=1)if(Math.abs((((t=n[r])==null?void 0:t.anchor)??0)-e)<=Je)return r;return-1}function V2(n,e,t){var i,s,o,a;if(n.length===0)return e;const r=B2(n,e);if(r>=0){const c=n[r];if(!c)return e;if(t>0){const v=c.nodeRange[0]+1,g=n.filter(_=>_.nodeRange[0]===v);if(g.length===0)return((i=n[n.length-1])==null?void 0:i.anchor)??e;let E=g[0];for(const _ of g)_.nodeRange[1]>E.nodeRange[1]&&(E=_);return E.anchor}const u=c.nodeRange[1]-1,h=n.filter(v=>v.nodeRange[1]===u);if(h.length===0)return((s=n[0])==null?void 0:s.anchor)??e;let p=h[0];for(const v of h)v.nodeRange[0]<p.nodeRange[0]&&(p=v);return p.anchor}if(t>0){for(const c of n)if(c.anchor>e+Je)return c.anchor;return((o=n[n.length-1])==null?void 0:o.anchor)??e}for(let c=n.length-1;c>=0;c-=1){const u=n[c];if(u&&u.anchor<e-Je)return u.anchor}return((a=n[0])==null?void 0:a.anchor)??e}class G2 extends wt{constructor(t){super();b(this,"_scroll",0);b(this,"minScroll",0);b(this,"maxScroll",0);b(this,"viewspans",[]);b(this,"activeViewspanIndex",null);b(this,"nodeWidthsPx",[]);b(this,"boundaryCols",[0]);b(this,"viewportWidthPx",0);b(this,"framedViewportWidthPx",0);this._scroll=(t==null?void 0:t.x)??0}get scroll(){return Te({x:this._scroll})}get translate(){return we({x:Nr(this.nodeWidthsPx,this.boundaryCols,this._scroll,this.viewportWidthPx,this.framedViewportWidthPx)})}set scroll(t){const r=Rr(t.x??this._scroll,this.minScroll,this.maxScroll);Math.abs(r-this._scroll)<=Je||(this._scroll=r,this.activeViewspanIndex=null,this.dispatchEvent(new Pr("layout-scroll",{scroll:this.scroll})))}rebuild(t){const r=t.nodeWidths.map(u=>Math.max(0,u.x??0)),i=r.map(u=>t.grid.toPixels(Te({x:u})).x??0),s=t.grid.viewport.x??0,o=t.grid.gap.x??he,a=H2({nodeCols:r,nodeWidthsPx:i,viewportWidthPx:s,gapPx:o});this.nodeWidthsPx=i,this.boundaryCols=Py(r),this.viewportWidthPx=s,this.framedViewportWidthPx=Cy(s,o),this.viewspans=a.viewspans,this.minScroll=a.minScroll,this.maxScroll=a.maxScroll,this.activeViewspanIndex=null;const c=Rr(this._scroll,this.minScroll,this.maxScroll);Math.abs(c-this._scroll)>Je&&(this._scroll=c,this.dispatchEvent(new Pr("layout-scroll",{scroll:this.scroll})))}step(t){var a;if(this.viewspans.length===0)return;const r=this.activeViewspanIndex??rc(this.viewspans,this._scroll),i=W2(r,t,this.viewspans.length),s=((a=this.viewspans[i])==null?void 0:a.anchor)??this._scroll,o=Rr(s,this.minScroll,this.maxScroll);this.activeViewspanIndex=i,!(Math.abs(o-this._scroll)<=Je)&&(this._scroll=o,this.dispatchEvent(new Pr("layout-scroll",{scroll:this.scroll})))}snap(t){var s;if(this.viewspans.length===0)return;const r=t===void 0?((s=this.viewspans[rc(this.viewspans,this._scroll)])==null?void 0:s.anchor)??this._scroll:V2(this.viewspans,this._scroll,t),i=Rr(r,this.minScroll,this.maxScroll);this.activeViewspanIndex=rc(this.viewspans,i),!(Math.abs(i-this._scroll)<=Je)&&(this._scroll=i,this.dispatchEvent(new Pr("layout-scroll",{scroll:this.scroll})))}wheel(t){const r=Rr(this._scroll+(t.x??0),this.minScroll,this.maxScroll);this.activeViewspanIndex=null,!(Math.abs(r-this._scroll)<=Je)&&(this._scroll=r,this.dispatchEvent(new Pr("layout-scroll",{scroll:this.scroll})))}wheelPixels(t){const r=t.x??0;if(Math.abs(r)<=fr)return;this.activeViewspanIndex=null;const i=Nr(this.nodeWidthsPx,this.boundaryCols,this._scroll,this.viewportWidthPx,this.framedViewportWidthPx),s=i-r,o=Nr(this.nodeWidthsPx,this.boundaryCols,this.maxScroll,this.viewportWidthPx,this.framedViewportWidthPx),a=Nr(this.nodeWidthsPx,this.boundaryCols,this.minScroll,this.viewportWidthPx,this.framedViewportWidthPx),c=Math.max(o,Math.min(a,s));if(Math.abs(c-i)<=fr)return;let u=this.minScroll,h=this.maxScroll;for(let v=0;v<M2;v+=1){const g=(u+h)/2;Nr(this.nodeWidthsPx,this.boundaryCols,g,this.viewportWidthPx,this.framedViewportWidthPx)>c?u=g:h=g}const p=Rr((u+h)/2,this.minScroll,this.maxScroll);Math.abs(p-this._scroll)<=Je||(this._scroll=p,this.dispatchEvent(new Pr("layout-scroll",{scroll:this.scroll})))}}const ic={"stack-above":{left:.25,top:0,width:.5,height:.5},"stack-below":{left:.25,top:.5,width:.5,height:.5},"reorder-before":{left:0,top:0,width:.25,height:1},"reorder-after":{left:.75,top:0,width:.25,height:1}},j2=["stack-above","stack-below","reorder-before","reorder-after"];function sc(n,e){return{left:n.left+n.width*e.left,top:n.top+n.height*e.top,width:n.width*e.width,height:n.height*e.height}}function Cn(n,e,t){return n>=t.left&&n<t.left+t.width&&e>=t.top&&e<t.top+t.height}function dh(n,e){for(const t of n){if(t.type==="card"&&t.id===e)return t;if(t.type==="stack")for(const r of t.children){if(r.type==="card"&&r.id===e)return r;if(r.type==="row"){for(const i of r.children)if(i.id===e)return i}}}return null}function iu(n){return n.height===et||n.height===mn?{...n,height:mn}:n}function su(n){return n.height===mn?{...n,height:et}:n}function q2(n,e,t,r){const i=n.findIndex(h=>h.type==="stack"&&h.id===e);if(i===-1)return n;const s=n[i];if(!s||s.type!=="stack")return n;const o=s.children.find(h=>h.type==="card"&&h.id===t);if(!o||o.type!=="card")return n;const a=s.children.filter(h=>h.id!==t);if(a.length===s.children.length||a.length<1)return n;const c=[...n];if(a.length===1){const[h]=a;c[i]=h.type==="card"?su(h):h}else c[i]={...s,children:a};const u=Math.max(0,Math.min(r,c.length));return c.splice(u,0,su(o)),c}const Y2=tt(),X2=tt(),K2=50;function J2(n,e){if(n.type!==e.type)return!1;switch(n.type){case"reorder":return e.index===n.index;case"stack":return e.targetCardId===n.targetCardId&&e.position===n.position;case"stack-child-noop":return!0;case"stack-child-extract":return e.toIndex===n.toIndex;case"stack-child-reorder":return e.position===n.position;default:return!1}}function ao(n){return{id:n.id,type:"drop-target",width:n.width,height:n.height}}function mf(n){return n.map(eL)}function Q2(n){return n.type==="drop-target"?{id:n.id,type:"card",artifactID:n.id,width:n.width,height:n.height}:n}function eL(n){return n.type==="drop-target"?{id:n.id,type:"card",artifactID:n.id,width:n.width,height:n.height}:n.type==="stack"?{...n,children:n.children.map(Q2)}:n}function Ly(n,e){return n.find(r=>r.type==="card"&&r.id===e)??null}function vf(n,e){return n.find(r=>r.type==="stack"&&r.id===e)??null}function tL(n,e){const t=[...e],r=t.findIndex(a=>a.type==="card"&&a.id===n.nodeId);if(r===-1)return null;const i=t[r];if(!i||i.type!=="card")return null;t.splice(r,1);const s=Math.max(0,Math.min(n.lastReorderIndex,t.length));t.splice(s,0,i);const o=t.findIndex(a=>a.type==="card"&&a.id===n.nodeId);return o===-1?null:{base:t,visualDraggedIndex:o}}function nL(n,e,t,r){const i=[...n.base];i.splice(n.visualDraggedIndex,1);const s=i.findIndex(v=>v.type==="card"&&v.id===t.targetCardId),o=s===-1?null:i[s];if(!o||o.type!=="card")return null;const a=Ly(r,e.nodeId);if(!a)return null;const c=iu(a),u=iu(o),h=ao(c),p=t.position==="above"?[h,u]:[u,h];return i[s]={id:o.id,type:"stack",children:p},i}function oc(n,e){return n.parentStackId?iL(n,e):rL(n,e)}function rL(n,e){const t=n.hitTarget;if(t.type==="reorder"){const r=e[n.sourceIndex];if(!r||r.type!=="card")return[...e];const i=[...e];return i.splice(n.sourceIndex,1),i.splice(t.index,0,ao(r)),i}if(t.type==="stack"){const r=tL(n,e);return r?nL(r,n,t,e)??[...e]:[...e]}return[...e]}function iL(n,e){const t=n.hitTarget;switch(t.type){case"stack-child-reorder":return sL(n,e,t.position);case"stack-child-extract":return oL(n,e,t.toIndex);case"stack-child-noop":return aL(n,e);default:return[...e]}}function sL(n,e,t){const r=e.findIndex(v=>v.type==="stack"&&v.id===n.parentStackId);if(r===-1)return[...e];const i=e[r];if(!i||i.type!=="stack")return[...e];if(!i.children.every(v=>v.type==="card"))return[...e];const s=i.children,o=s.findIndex(v=>v.id===n.nodeId);if(o===-1)return[...e];const a=s[o],c=s.filter(v=>v.id!==n.nodeId),u=ao(a),h=t==="above"?[u,...c]:[...c,u],p=[...e];return p[r]={...i,children:h},p}function oL(n,e,t){if(!n.parentStackId)return[...e];const r=q2(e,n.parentStackId,n.nodeId,t);if(r===e)return[...e];const i=r.findIndex(a=>a.type==="card"&&a.id===n.nodeId);if(i===-1)return[...e];const s=r[i];if(!s||s.type!=="card")return[...e];const o=[...r];return o[i]=ao(s),o}function aL(n,e){const t=e.findIndex(c=>c.type==="stack"&&c.id===n.parentStackId);if(t===-1)return[...e];const r=e[t];if(!r||r.type!=="stack")return[...e];const i=r.children.findIndex(c=>c.type==="card"&&c.id===n.nodeId);if(i===-1)return[...e];const s=r.children[i];if(!s||s.type!=="card")return[...e];const o=[...e],a=[...r.children];return a[i]=ao(s),o[t]={...r,children:a},o}function lL(n,e){return e.find(r=>r.type==="stack"&&r.id===n.id)?n.id:Gu()}function cL(n,e,t){if(n.type==="drop-target"){const r=dh(e,t);if(!r)throw new Error(`finalize: missing dragged card ${t}`);return iu(r)}return n}function uL(n,e,t){const r=n.children.map(s=>cL(s,e,t));return{id:lL(n,e),type:"stack",children:r}}function hL(n,e,t){if(n.type==="drop-target"){const r=dh(e,t);if(!r)throw new Error(`finalize: missing dragged card ${t}`);return Ly(e,t)!==null?r:su(r)}return n.type==="card"||n.type==="row"?n:uL(n,e,t)}function dL(n,e,t){return n.map(r=>hL(r,e,t))}function pL(n,e){return JSON.stringify(n)===JSON.stringify(e)}const fL=ki(wt);class gL extends fL{constructor(t={}){super();b(this,"pending",null);b(this,"active",null)}start(t){if(this.pending||this.active)return;const r=t.pointer.x??0,i=t.pointer.y??0;this.pending={startX:r,startY:i,grabOffsetX:t.grabOffset.x??0,grabOffsetY:t.grabOffset.y??0,nodeId:t.nodeId,sourceIndex:t.source.index,parentStackId:t.source.parentId,width:t.size.x??0,height:t.size.y??0,baseLayout:t.layout}}update(t){const r=t.pointer.x??0,i=t.pointer.y??0,s=this.pending;if(s){const u=r-s.startX,h=i-s.startY;Math.hypot(u,h)>=px&&(this.pending=null,this.active={...s,pointerX:r,pointerY:i,hitTarget:{type:"reorder",index:s.sourceIndex},lastReorderIndex:s.sourceIndex},this.emitDrag(),this.dispatchEvent(new K("change")));return}if(!this.active)return;const o=oc(this.active,this.active.baseLayout),a=this.getHitTargetForPointer(r,i,t,o),c=a.type==="reorder"?a.index:this.active.lastReorderIndex;this.active.pointerX===r&&this.active.pointerY===i&&J2(this.active.hitTarget,a)&&this.active.lastReorderIndex===c||(this.active={...this.active,pointerX:r,pointerY:i,hitTarget:a,lastReorderIndex:c},this.emitDrag(),this.dispatchEvent(new K("change")))}drop(){if(this.pending){this.cancel();return}if(!this.active)return;const t=this.active.baseLayout;let r=null;try{const i=oc(this.active,t),s=dL(i,t,this.active.nodeId);pL(s,t)||(r=s)}catch{r=null}this.reset(),r&&this.dispatchEvent(new X2("drop",{layout:r})),this.dispatchEvent(new K("change"))}cancel(){!this.pending&&!this.active||(this.reset(),this.dispatchEvent(new K("change")))}dispose(){this.reset()}get status(){return this.active?"active":this.pending?"pending":"idle"}reset(){this.pending=null,this.active=null}emitDrag(){if(!this.active)return;const t=oc(this.active,this.active.baseLayout);this.dispatchEvent(new Y2("drag",{nodeId:this.active.nodeId,source:{index:this.active.sourceIndex,parentId:this.active.parentStackId},grabOffset:we({x:this.active.grabOffsetX,y:this.active.grabOffsetY}),pointer:we({x:this.active.pointerX,y:this.active.pointerY}),size:we({x:this.active.width,y:this.active.height}),projectedLayout:t}))}getHitTargetForPointer(t,r,i,s){return this.active?this.isPointerInsideDragBounds(t,r,i.viewport)?this.active.parentStackId?this.getStackChildHitTarget(t,r,i,s):this.getTopLevelCardHitTarget(t,r,i,s):{type:"reorder",index:this.active.sourceIndex}:{type:"reorder",index:0}}getStackChildHitTarget(t,r,i,s){var u;if(!((u=this.active)!=null&&u.parentStackId))return{type:"stack-child-noop"};const o=this.getSourceStackInteractionRect(i.geometry);if(o&&Cn(t,r,o)){const h=o.top+o.height/2;return{type:"stack-child-reorder",position:r<h?"above":"below"}}const a=this.getSourceRemainingSiblingRect(i.geometry);if(a&&Cn(t,r,a)){const h=a.top+a.height/2;return{type:"stack-child-reorder",position:r<h?"above":"below"}}return{type:"stack-child-extract",toIndex:this.getTopLevelReorderIndexForPointer(t,r,i,s)}}getSourceRemainingSiblingRect(t){var s,o;if(!((s=this.active)!=null&&s.parentStackId))return;const r=vf(this.active.baseLayout,this.active.parentStackId);if(!r)return;const i=r.children.find(a=>{var c;return a.type==="card"&&a.id!==((c=this.active)==null?void 0:c.nodeId)});if(i)return(o=t.find(a=>a.id===i.id))==null?void 0:o.rect}getSourceStackInteractionRect(t){var o;if(!((o=this.active)!=null&&o.parentStackId))return;const r=t.find(a=>{var c;return a.id===((c=this.active)==null?void 0:c.parentStackId)});if(r)return this.active.sourceStackRect=r.rect,r.rect;const i=vf(this.active.baseLayout,this.active.parentStackId);if(!i)return this.active.sourceStackRect;const s=i.children.find(a=>{var c;return a.type==="card"&&a.id!==((c=this.active)==null?void 0:c.nodeId)});if(s){const a=t.find(c=>c.id===s.id);if(a)return a.rect}return this.active.sourceStackRect}getTopLevelCardHitTarget(t,r,i,s){var g,E,_;const o=this.getTopLevelZoneNodes(i.geometry,s);if(o.length===0)return{type:"reorder",index:((g=this.active)==null?void 0:g.sourceIndex)??0};const c=(i.effectiveVelocity??0)<=K2;for(const C of o){const N=C.rect;if(!Cn(t,r,N))continue;const P=this.resolveTopLevelTargetForCard(t,r,C,C.logicalIndex,c);if(P)return P;if(!c&&((E=this.active)!=null&&E.hitTarget))return this.active.hitTarget}const u=this.getNearestTargetableZone(t,o);if(!u)return{type:"reorder",index:((_=this.active)==null?void 0:_.sourceIndex)??0};const h=Math.max(u.rect.left,Math.min(u.rect.left+u.rect.width,t)),p=this.resolveTopLevelTargetForCard(h,r,u,u.logicalIndex,c);if(p)return p;const v=u.rect.left+u.rect.width/2;return{type:"reorder",index:t<v?u.logicalIndex:u.logicalIndex+1}}getTopLevelReorderIndexForPointer(t,r,i,s){var u,h;const o=this.getTopLevelZoneNodes(i.geometry,s);if(o.length===0)return((u=this.active)==null?void 0:u.sourceIndex)??0;for(const p of o){if(!Cn(t,r,p.rect))continue;const v=sc(p.rect,ic["reorder-before"]);if(Cn(t,r,v))return p.logicalIndex;const g=sc(p.rect,ic["reorder-after"]);if(Cn(t,r,g))return p.logicalIndex+1}const a=this.getNearestTargetableZone(t,o);if(!a)return((h=this.active)==null?void 0:h.sourceIndex)??0;const c=a.rect.left+a.rect.width/2;return t<c?a.logicalIndex:a.logicalIndex+1}getTopLevelZoneNodes(t,r){const i=new Map(r.map(a=>[a.id,a])),s=[];let o=0;for(const a of t){const c=i.get(a.id);c&&c.type!=="drop-target"&&(c.type==="card"||c.type==="stack")&&(s.push({id:c.id,rect:a.rect,logicalIndex:o}),o+=1)}return s}resolveTopLevelTargetForCard(t,r,i,s,o){const a=i.rect;for(const c of j2){if(!o&&(c==="stack-above"||c==="stack-below"))continue;const u=ic[c],h=sc(a,u);if(Cn(t,r,h))return c==="stack-above"?{type:"stack",targetCardId:i.id,position:"above"}:c==="stack-below"?{type:"stack",targetCardId:i.id,position:"below"}:c==="reorder-before"?{type:"reorder",index:s}:{type:"reorder",index:s+1}}return null}getNearestTargetableZone(t,r){let i=null,s=Number.POSITIVE_INFINITY;for(const o of r){const a=o.rect.left,c=o.rect.left+o.rect.width,u=t<a?a-t:t>c?t-c:0;u<s&&(s=u,i=o)}return i}isPointerInsideDragBounds(t,r,i){return t>=i.left&&t<=i.left+i.width&&r>=i.top&&r<=i.top+i.height}}const yf=60,mL=80,bf=.5,wf=10;class vL{constructor(){b(this,"awaitingFreshWheelGesture",!1);b(this,"lastWheelEventAt",Number.NEGATIVE_INFINITY);b(this,"lastWheelDeltaX",0);b(this,"activeGestureType","none");b(this,"lastWheelGestureAt",Number.NEGATIVE_INFINITY)}markKeyboardNavigation(e){this.awaitingFreshWheelGesture=!0,this.lastWheelEventAt=e,this.activeGestureType="none"}reset(){this.awaitingFreshWheelGesture=!1,this.lastWheelEventAt=Number.NEGATIVE_INFINITY,this.lastWheelDeltaX=0,this.activeGestureType="none",this.lastWheelGestureAt=Number.NEGATIVE_INFINITY}decide(e){const{now:t,shiftKey:r,deltaX:i,deltaY:s,overArtifactContent:o}=e;t-this.lastWheelGestureAt>=yf&&(this.activeGestureType="none");const c=r&&s!==0,u=c?s:i,h=Math.abs(u),p=Math.abs(s);return this.activeGestureType==="vertical-artifact"&&o?h>=bf&&h>=p*wf?this.classifyHorizontal(t,u):(this.lastWheelGestureAt=t,{type:"scroll-native"}):this.activeGestureType==="horizontal-filmstrip"?!c&&o&&p>0&&p>=h*wf?(this.activeGestureType="vertical-artifact",this.lastWheelGestureAt=t,{type:"scroll-native"}):this.classifyHorizontal(t,u):h<bf?(o&&(this.activeGestureType="vertical-artifact"),this.lastWheelGestureAt=t,{type:"scroll-native"}):c||h>p?this.classifyHorizontal(t,u):p>h?(o&&(this.activeGestureType="vertical-artifact"),this.lastWheelGestureAt=t,{type:"scroll-native"}):o?(this.activeGestureType="vertical-artifact",this.lastWheelGestureAt=t,{type:"scroll-native"}):this.classifyHorizontal(t,u)}classifyHorizontal(e,t){const r=e-this.lastWheelEventAt,i=Math.sign(this.lastWheelDeltaX),s=Math.sign(t),o=i!==0&&s!==0&&i!==s,a=i!==0&&Math.abs(t)>=Math.abs(this.lastWheelDeltaX)+mL;return this.awaitingFreshWheelGesture&&r<yf&&!o&&!a?{type:"ignore"}:(this.lastWheelEventAt=e,this.lastWheelDeltaX=t,this.lastWheelGestureAt=e,this.awaitingFreshWheelGesture=!1,this.activeGestureType="horizontal-filmstrip",{type:"scroll-horizontal",horizontalDelta:t})}}const yL=100,bL=1e3;class wL{constructor(e,t){b(this,"_status","idle");b(this,"cumulativeOffset",0);b(this,"samples",[]);b(this,"scroll");b(this,"setAnimating");this.scroll=e,this.setAnimating=t}get status(){return this._status}start(e){this._status="active",this.cumulativeOffset=0,this.samples=[{time:e,offset:0}]}move(e,t){this._status==="active"&&(this.cumulativeOffset+=t,this.samples.push({time:e,offset:this.cumulativeOffset}),this.pruneSamples(e),this.setAnimating(!1),this.scroll.wheelPixels(we({x:-t})))}end(){if(this._status!=="active")return;const e=this.computeVelocityPxPerSec();this.setAnimating(!0),Math.abs(e)<gx?this.scroll.snap():this.scroll.snap(e>0?-1:1),this.reset()}cancel(){this._status==="active"&&(this.setAnimating(!0),this.scroll.snap(),this.reset())}reset(){this._status="idle",this.cumulativeOffset=0,this.samples=[]}pruneSamples(e){const t=e-yL;let r=0;for(let i=0;i<this.samples.length;i+=1){if(this.samples[i].time>=t){r=i;break}r=i+1}if(r>0){const i=Math.max(0,r-1);this.samples=this.samples.slice(i)}}computeVelocityPxPerSec(){if(this.samples.length<2)return 0;const e=this.samples[0],t=this.samples[this.samples.length-1],r=t.time-e.time;return r<=0?0:(t.offset-e.offset)/r*bL}}const SL=2,Sf=1e3,Do=1e-4;function _L(n){return n.replace(/["\\]/g,"\\$&")}function _f(n,e,t){if(n===0)return 0;const r=e.toPixels(Te({y:et})).y??0;return(t-r)/SL}function ac(n){const e=n.clientWidth>0?n.clientWidth:hr,t=n.clientHeight>0?n.clientHeight:ua;let r=0,i=0;if(n.isConnected){const o=getComputedStyle(n);r=parseFloat(o.paddingTop)||0,i=parseFloat(o.paddingBottom)||0}const s=Math.max(1,t-r-i);return{width:e,height:s,offsetY:r}}class kL extends Event{constructor(t){super("scroll",{bubbles:!0,composed:!0});b(this,"scrollPosition");this.scrollPosition=t}}class Oy extends Event{constructor(t){super("layout-change",{bubbles:!0,composed:!0});b(this,"layout");this.layout=t}}class EL extends HTMLElement{constructor(){super();b(this,"_layout",[]);b(this,"_scrollPosition",0);b(this,"layoutGrid",null);b(this,"layoutScroll",new G2(Te({x:0})));b(this,"scrollModelKey","");b(this,"resizeObserver",null);b(this,"renderPending",!1);b(this,"animateNextRender",!0);b(this,"wheelGesture",new vL);b(this,"swipeGesture",new wL(this.layoutScroll,t=>{this.animateNextRender=t}));b(this,"swipePointerId",null);b(this,"swipeStartX",0);b(this,"swipeStartY",0);b(this,"swipeLastX",0);b(this,"swipeActive",!1);b(this,"swipeShouldSuppressClick",!1);b(this,"swipeListenersAttached",!1);b(this,"dragController",new gL);b(this,"dragState",null);b(this,"activeDragPointerId",null);b(this,"dragListenersAttached",!1);b(this,"dragFrame",0);b(this,"lastDragFrameTime",0);b(this,"lastPointerX",0);b(this,"lastPointerY",0);b(this,"pointerVelocityPxPerSec",0);b(this,"scrollVelocityPxPerSec",0);b(this,"motionSampleTime",0);b(this,"motionSampleX",0);b(this,"motionSampleY",0);b(this,"dragTrackOffsetXPx",0);b(this,"previousProjectedLayoutForOffset",null);b(this,"renderContent",()=>U``);b(this,"onDragControllerChange",()=>{this.dragController.status==="idle"&&(this.dragState=null,this.dragTrackOffsetXPx=0,this.previousProjectedLayoutForOffset=null),this.scheduleRender()});b(this,"onDragControllerDrag",t=>{const r=mf(t.projectedLayout),i=this.shouldApplyTrackOffset(t.projectedLayout,t.source.parentId),s=t.source.parentId?this.getStackChildAnchorCardId(t.source.parentId,t.nodeId):null;this.dragTrackOffsetXPx=i?this.computeDragTrackOffset(this.previousProjectedLayoutForOffset,r,t.nodeId,t.source.parentId,s,this.dragTrackOffsetXPx):0,this.previousProjectedLayoutForOffset=r,this.dragState={nodeId:t.nodeId,source:t.source,grabOffset:t.grabOffset,pointer:t.pointer,size:t.size,projectedLayout:t.projectedLayout},this.scheduleRender()});b(this,"onDragControllerDrop",t=>{this.dragState=null,this.dragTrackOffsetXPx=0,this.previousProjectedLayoutForOffset=null,this.commitLayout(t.layout)});b(this,"onLayoutScrollInternal",t=>{const i=t.scroll.x??0;Math.abs(i-this._scrollPosition)<Do||(this._scrollPosition=i,this.emitScrollPositionChanged(i),this.scheduleRender())});b(this,"handleKeyDown",t=>{if(t.key==="Escape"&&this.dragController.status!=="idle"){t.preventDefault(),this.stopDragFrameLoop(),this.releaseActiveDragPointerCapture(),this.dragController.cancel(),this.detachDragListeners();return}this.dragController.status==="idle"&&(t.key==="ArrowRight"?(t.preventDefault(),this.wheelGesture.markKeyboardNavigation(Date.now()),this.shiftWindow(1)):t.key==="ArrowLeft"&&(t.preventDefault(),this.wheelGesture.markKeyboardNavigation(Date.now()),this.shiftWindow(-1)))});b(this,"handleWheel",t=>{if(this._layout.length===0)return;const r=this.wheelGesture.decide({now:Date.now(),shiftKey:t.shiftKey,deltaX:t.deltaX,deltaY:t.deltaY,overArtifactContent:!1});r.type==="scroll-horizontal"&&(t.preventDefault(),this.applyHorizontalWheel(r.horizontalDelta))});b(this,"handleWindowMessage",t=>{if(this._layout.length===0)return;const r=this.findManagedArtifactFrame(t.source);if(r&&this.isTrustedArtifactFrameMessage(t,r)){if(w2(t.data)){const i=typeof performance<"u"?performance.now():Date.now();this.swipeGesture.status==="idle"&&this.swipeGesture.start(i),this.swipeGesture.move(i,t.data.deltaX);return}if(S2(t.data)){this.swipeGesture.status==="active"&&this.swipeGesture.end();return}}});b(this,"handleArtifactWheel",t=>{if(this._layout.length===0)return;const r=this.wheelGesture.decide({now:Date.now(),shiftKey:t.shiftKey,deltaX:t.deltaX,deltaY:t.deltaY,overArtifactContent:!0});if(r.type==="scroll-horizontal"){this.applyHorizontalWheel(r.horizontalDelta);return}r.type==="scroll-native"&&t.scrollNative(t.deltaY)});b(this,"handlePointerDown",t=>{if(t.button!==0||this.dragController.status!=="idle")return;const r=t.target;if(!(r instanceof Element))return;const i=r.closest("[drag-handle]")!==null,s=r.closest("button, input, textarea, select, a, [role='button']")!==null;if(t.pointerType==="touch"&&!i&&!s&&this._layout.length>0){this.beginSwipeTracking(t);return}if(!i||s)return;const o=r.closest(".card-slot");if(!o)return;const a=o.getAttribute("data-layout-node-id");if(!a)return;const c=AL(this._layout,a);if(!c)return;const u=o.getBoundingClientRect();this.lastPointerX=t.clientX,this.lastPointerY=t.clientY,this.resetMotionTracking(t.clientX,t.clientY),this.focus(),this.dragController.start({nodeId:a,source:{index:c.topLevelIndex,parentId:c.sourceStackId},pointer:we({x:t.clientX,y:t.clientY}),grabOffset:we({x:t.clientX-u.left,y:t.clientY-u.top}),size:we({x:u.width,y:u.height}),layout:this._layout}),this.attachDragListeners(),this.activeDragPointerId=t.pointerId;try{this.setPointerCapture(t.pointerId)}catch{}t.preventDefault()});b(this,"handleSwipePointerMove",t=>{if(this.swipePointerId===null||t.pointerId!==this.swipePointerId)return;if(!this.swipeActive){const i=t.clientX-this.swipeStartX,s=t.clientY-this.swipeStartY,o=Math.abs(i),a=Math.abs(s);if(o<kp&&a<kp)return;if(a>=o){this.endSwipeTracking();return}this.swipeActive=!0,this.swipeShouldSuppressClick=!0;try{this.setPointerCapture(t.pointerId)}catch{}this.swipeGesture.start(t.timeStamp)}const r=t.clientX-this.swipeLastX;this.swipeLastX=t.clientX,this.swipeGesture.move(t.timeStamp,r),t.preventDefault()});b(this,"handleSwipePointerUp",t=>{this.swipePointerId===null||t.pointerId!==this.swipePointerId||(this.swipeActive&&this.swipeGesture.end(),this.releaseSwipePointerCapture(t.pointerId),this.endSwipeTracking())});b(this,"handleSwipePointerCancel",t=>{this.swipePointerId===null||t.pointerId!==this.swipePointerId||(this.swipeActive&&this.swipeGesture.cancel(),this.releaseSwipePointerCapture(t.pointerId),this.endSwipeTracking())});b(this,"handleSwipeWindowBlur",()=>{this.swipePointerId!==null&&this.swipeActive&&this.swipeGesture.cancel(),this.swipePointerId!==null&&this.releaseSwipePointerCapture(this.swipePointerId),this.endSwipeTracking()});b(this,"handleSwipeClick",t=>{this.swipeShouldSuppressClick&&(this.swipeShouldSuppressClick=!1,t.preventDefault(),t.stopPropagation(),typeof t.stopImmediatePropagation=="function"&&t.stopImmediatePropagation())});b(this,"handleWindowPointerMove",t=>{this.lastPointerX=t.clientX,this.lastPointerY=t.clientY,this.updatePointerVelocity(t.clientX,t.clientY),this.syncDragTargetForLatestPointer(),this.ensureDragFrameLoop()});b(this,"handleWindowPointerUp",t=>{this.stopDragFrameLoop(),this.releasePointerCaptureForEvent(t.pointerId),this.dragController.drop(),this.clearMotionTracking(),this.detachDragListeners()});b(this,"handleWindowPointerCancel",t=>{this.stopDragFrameLoop(),this.releasePointerCaptureForEvent(t.pointerId),this.dragController.cancel(),this.clearMotionTracking(),this.detachDragListeners()});b(this,"handleWindowBlur",()=>{this.releaseActiveDragPointerCapture(),this.stopDragFrameLoop(),this.dragController.cancel(),this.clearMotionTracking(),this.detachDragListeners()});b(this,"runDragFrame",t=>{if(this.dragController.status==="idle"){this.dragFrame=0;return}const r=Math.max(0,t-this.lastDragFrameTime)/Sf;this.lastDragFrameTime=t,this.samplePointerVelocityAt(t,this.lastPointerX,this.lastPointerY);const i=this.getBoundingClientRect(),s=this.clampPointerToViewport(this.lastPointerX,this.lastPointerY,i),o=this.getDragEdgeScrollDeltaPixels(s.x,i,r);this.scrollVelocityPxPerSec=r>Do?Math.abs(o)/r:0,Math.abs(o)>Do&&(this.animateNextRender=!1,this.layoutScroll.wheelPixels(we({x:o}))),this.dragController.status==="active"&&this.syncDragTarget(s.x,s.y,i),this.dragFrame=requestAnimationFrame(this.runDragFrame)});this.dragController.addEventListener("change",this.onDragControllerChange),this.dragController.addEventListener("drag",this.onDragControllerDrag),this.dragController.addEventListener("drop",this.onDragControllerDrop),this.layoutScroll.addEventListener("layout-scroll",this.onLayoutScrollInternal)}set layout(t){this._layout=[...t],this.stopDragFrameLoop(),this.dragController.cancel(),this.scrollModelKey="",this.syncScrollModel(),this.layoutScroll.scroll=Te({x:this._scrollPosition}),this.scheduleRender()}get layout(){return this._layout}commitLayout(t){this.layout=t,this.emitLayoutChanged()}set scrollPosition(t){Math.abs(t-this._scrollPosition)<Do||(this.animateNextRender=!1,this.syncScrollModel(),this.layoutScroll.scroll=Te({x:t}))}get scrollPosition(){return this._scrollPosition}focusArtifact(t){const r=Fr(this._layout),i=r.nodes.findIndex(o=>o.cards.some(a=>a.artifactID===t));if(i<0)return;let s=0;for(let o=0;o<i;o+=1)s+=r.nodes[o].width;this.scrollPosition=s,queueMicrotask(()=>{const o=this.querySelector(`.card-slot[data-layout-card-id="${_L(t)}"]`);if(!o)return;o.classList.remove("card-focus-pulse"),o.offsetHeight,o.classList.add("card-focus-pulse");const a=()=>{o.classList.remove("card-focus-pulse"),o.removeEventListener("animationend",a)};o.addEventListener("animationend",a)})}connectedCallback(){this.hasAttribute("tabindex")||(this.tabIndex=0),this.focus(),this.addEventListener("keydown",this.handleKeyDown),this.addEventListener("wheel",this.handleWheel,{passive:!1}),this.addEventListener("pointerdown",this.handlePointerDown),this.addEventListener("artifact-wheel",this.handleArtifactWheel),window.addEventListener("message",this.handleWindowMessage),typeof ResizeObserver<"u"&&(this.resizeObserver=new ResizeObserver(()=>this.render()),this.resizeObserver.observe(this)),this.render()}disconnectedCallback(){var t;this.removeEventListener("keydown",this.handleKeyDown),this.removeEventListener("wheel",this.handleWheel),this.removeEventListener("pointerdown",this.handlePointerDown),this.removeEventListener("artifact-wheel",this.handleArtifactWheel),window.removeEventListener("message",this.handleWindowMessage),(t=this.resizeObserver)==null||t.disconnect(),this.resizeObserver=null,this.wheelGesture.reset(),this.detachDragListeners(),this.swipeGesture.status==="active"&&this.swipeGesture.cancel(),this.swipePointerId!==null&&this.releaseSwipePointerCapture(this.swipePointerId),this.endSwipeTracking(),this.dragController.removeEventListener("change",this.onDragControllerChange),this.dragController.removeEventListener("drag",this.onDragControllerDrag),this.dragController.removeEventListener("drop",this.onDragControllerDrop),this.layoutScroll.removeEventListener("layout-scroll",this.onLayoutScrollInternal),this.dragController.dispose(),this.stopDragFrameLoop()}scheduleRender(){this.renderPending||(this.renderPending=!0,queueMicrotask(()=>{this.renderPending=!1,this.render()}))}createGrid(t,r){return new L2({basis:we({x:On,y:On}),min:we({x:Sp,y:Sp}),viewport:we({x:t,y:r}),gap:we({x:he,y:he})})}syncScrollModel(){const t=ac(this),i=Fr(this._layout).nodes.map(o=>o.width),s=`${t.width}x${t.height}:${i.join(",")}`;s===this.scrollModelKey&&this.layoutGrid||(this.scrollModelKey=s,this.layoutGrid=this.createGrid(t.width,t.height),this.layoutScroll.rebuild({grid:this.layoutGrid,nodeWidths:i.map(o=>Te({x:o}))}))}emitScrollPositionChanged(t){this.dispatchEvent(new kL(t))}emitLayoutChanged(){this.dispatchEvent(new Oy([...this._layout]))}shiftWindow(t){this.syncScrollModel(),this.animateNextRender=!0,this.layoutScroll.step(t)}applyHorizontalWheel(t){this.syncScrollModel();const r=this.layoutGrid;if(!r)return;this.animateNextRender=!1;const i=r.toUnits(we({x:t}));this.layoutScroll.wheel(Te({x:i.x??0}))}findManagedArtifactFrame(t){if(!t)return null;const r=this.querySelectorAll("iframe.artifact-frame");for(const i of r)if(i.contentWindow===t)return i;return null}isTrustedArtifactFrameMessage(t,r){if(t.origin==="null")return!0;const i=this.getArtifactFrameOrigin(r);return i===null||t.origin===i}getArtifactFrameOrigin(t){const r=t.getAttribute("src")??t.src;if(!r)return null;try{return new URL(r,window.location.href).origin}catch{return null}}beginSwipeTracking(t){this.swipePointerId=t.pointerId,this.swipeStartX=t.clientX,this.swipeStartY=t.clientY,this.swipeLastX=t.clientX,this.swipeActive=!1,this.swipeShouldSuppressClick=!1,this.attachSwipeListeners()}attachSwipeListeners(){this.swipeListenersAttached||(window.addEventListener("pointermove",this.handleSwipePointerMove),window.addEventListener("pointerup",this.handleSwipePointerUp),window.addEventListener("pointercancel",this.handleSwipePointerCancel),this.addEventListener("pointermove",this.handleSwipePointerMove),this.addEventListener("pointerup",this.handleSwipePointerUp),this.addEventListener("pointercancel",this.handleSwipePointerCancel),window.addEventListener("blur",this.handleSwipeWindowBlur),this.addEventListener("click",this.handleSwipeClick,{capture:!0}),this.swipeListenersAttached=!0)}detachSwipeListeners(){this.swipeListenersAttached&&(window.removeEventListener("pointermove",this.handleSwipePointerMove),window.removeEventListener("pointerup",this.handleSwipePointerUp),window.removeEventListener("pointercancel",this.handleSwipePointerCancel),this.removeEventListener("pointermove",this.handleSwipePointerMove),this.removeEventListener("pointerup",this.handleSwipePointerUp),this.removeEventListener("pointercancel",this.handleSwipePointerCancel),window.removeEventListener("blur",this.handleSwipeWindowBlur),this.removeEventListener("click",this.handleSwipeClick,{capture:!0}),this.swipeListenersAttached=!1)}endSwipeTracking(){this.swipePointerId=null,this.swipeActive=!1,this.detachSwipeListeners()}releaseSwipePointerCapture(t){try{this.hasPointerCapture(t)&&this.releasePointerCapture(t)}catch{}}releaseActiveDragPointerCapture(){this.activeDragPointerId!==null&&this.releasePointerCaptureForEvent(this.activeDragPointerId)}releasePointerCaptureForEvent(t){try{this.hasPointerCapture(t)&&this.releasePointerCapture(t)}catch{}}attachDragListeners(){this.dragListenersAttached||(window.addEventListener("pointermove",this.handleWindowPointerMove),window.addEventListener("pointerup",this.handleWindowPointerUp),window.addEventListener("pointercancel",this.handleWindowPointerCancel),this.addEventListener("pointermove",this.handleWindowPointerMove),this.addEventListener("pointerup",this.handleWindowPointerUp),this.addEventListener("pointercancel",this.handleWindowPointerCancel),window.addEventListener("blur",this.handleWindowBlur),this.dragListenersAttached=!0)}detachDragListeners(){this.dragListenersAttached&&(window.removeEventListener("pointermove",this.handleWindowPointerMove),window.removeEventListener("pointerup",this.handleWindowPointerUp),window.removeEventListener("pointercancel",this.handleWindowPointerCancel),this.removeEventListener("pointermove",this.handleWindowPointerMove),this.removeEventListener("pointerup",this.handleWindowPointerUp),this.removeEventListener("pointercancel",this.handleWindowPointerCancel),window.removeEventListener("blur",this.handleWindowBlur),this.dragListenersAttached=!1,this.activeDragPointerId=null)}getDisplayModel(){if(this.dragController.status!=="active"||!this.dragState)return{layout:this._layout,activePlaceholderId:null,placeholdersById:new Map};const t=new Map;return t.set(this.dragState.nodeId,{id:this.dragState.nodeId,sourceCardId:this.dragState.nodeId}),{layout:mf(this.dragState.projectedLayout),activePlaceholderId:this.dragState.nodeId,placeholdersById:t}}render(){const t=ac(this),r=this.createGrid(t.width,t.height);this.layoutGrid=r;const i=this.getDisplayModel(),s=i.layout,o=this.dragController.status==="active",a=Fr(s),c=a.nodes.map(L=>L.width),u=`${t.width}x${t.height}:${c.join(",")}`;!o&&u!==this.scrollModelKey&&(this.scrollModelKey=u,this.layoutScroll.rebuild({grid:r,nodeWidths:c.map(L=>Te({x:L}))}),this._scrollPosition=this.layoutScroll.scroll.x??this._scrollPosition);const h=xL(s),p=r.unit.x??On,v=r.unit.y??On,g=o?this.dragTrackOffsetXPx:0,E=(this.layoutScroll.translate.x??0)+g,_=_f(a.nodes.length,r,t.height),C=this.animateNextRender&&!o,N=[`transform: translate(${E}px, ${_}px);`,`transition-duration: ${C?dx:0}ms;`,`pointer-events: ${o?"none":"auto"};`].join(" ");this.animateNextRender=!0,this.style.setProperty("--layout-unit-x",`${p}px`),this.style.setProperty("--layout-unit-y",`${v}px`),this.style.setProperty("--layout-gap",`${he}px`);const P=this.dragState,W={width:(P==null?void 0:P.size.x)??0,height:(P==null?void 0:P.size.y)??0};Re(U`
174
+ <div class="track" style=${N}>
175
+ ${a.nodes.map((L,H)=>U`
176
+ <div
177
+ class="node"
178
+ layout-node=${String(H)}
179
+ data-layout-node-id=${L.id}
180
+ data-layout-placeholder=${String(i.activePlaceholderId===L.id)}
181
+ layout-node-cols=${String(L.width)}
182
+ style=${`grid-template-columns: repeat(${L.width}, var(--layout-unit-x)); width: ${r.toPixels(Te({x:L.width})).x}px;`}
183
+ >
184
+ ${L.cards.map(F=>{const ce=i.placeholdersById.get(F.id);if(P&&ce)return U`
185
+ <div
186
+ class="card-slot card-placeholder"
187
+ data-layout-placeholder-for=${P.nodeId}
188
+ data-layout-placeholder-ghost="false"
189
+ data-layout-source-stack=${P.source.parentId??""}
190
+ style=${`grid-column: ${F.col} / span ${F.width}; grid-row: ${F.row} / span ${F.height};`}
191
+ ></div>
192
+ `;const ue=h.get(F.id);return ue?U`
193
+ <div
194
+ class="card-slot"
195
+ data-layout-card-id=${F.artifactID}
196
+ data-layout-node-id=${F.id}
197
+ layout-cols=${String(F.width)}
198
+ layout-rows=${String(F.height)}
199
+ style=${`grid-column: ${F.col} / span ${F.width}; grid-row: ${F.row} / span ${F.height};`}
200
+ >
201
+ ${this.renderContent(ue,{isDragging:!1})}
202
+ </div>
203
+ `:null})}
204
+ </div>
205
+ `)}
206
+ </div>
207
+ ${P?(()=>{const L=this.getPlaceholderPixelSize(a,i.activePlaceholderId,r,W),H=P.pointer.x??0,F=P.pointer.y??0,ce=P.grabOffset.x??0,ue=P.grabOffset.y??0;return U`
208
+ <div
209
+ class="drag-preview"
210
+ data-layout-preview-card-id=${P.nodeId}
211
+ style=${[`width: ${L.width}px;`,`height: ${L.height}px;`,`left: ${H-ce}px;`,`top: ${F-ue}px;`].join(" ")}
212
+ >
213
+ ${this.renderDraggedPreview(P.nodeId)}
214
+ </div>
215
+ `})():null}
216
+ `,this)}ensureDragFrameLoop(){this.dragFrame!==0||this.dragController.status==="idle"||(this.lastDragFrameTime=performance.now(),this.dragFrame=requestAnimationFrame(this.runDragFrame))}stopDragFrameLoop(){this.dragFrame!==0&&(cancelAnimationFrame(this.dragFrame),this.dragFrame=0,this.scrollVelocityPxPerSec=0)}syncDragTargetForLatestPointer(){if(this.dragController.status==="idle")return;const t=this.getBoundingClientRect();if(this.dragController.status==="active"){const i=this.clampPointerToViewport(this.lastPointerX,this.lastPointerY,t);this.syncDragTarget(i.x,i.y,t);return}if(this.syncDragTarget(this.lastPointerX,this.lastPointerY,t),this.dragController.status==="pending")return;const r=this.clampPointerToViewport(this.lastPointerX,this.lastPointerY,t);(r.x!==this.lastPointerX||r.y!==this.lastPointerY)&&this.syncDragTarget(r.x,r.y,t)}syncDragTarget(t,r,i=this.getBoundingClientRect()){if(this.dragController.status==="idle")return;const s=this.getDisplayModel(),o=new Set(s.placeholdersById.keys()),a=this.dragController.status==="active"?this.dragTrackOffsetXPx:0,c=this.measureLayoutGeometry(s.layout,o,a);this.dragController.update({pointer:we({x:t,y:r}),viewport:{left:i.left,top:i.top,width:i.width,height:i.height},geometry:c,effectiveVelocity:Math.max(this.pointerVelocityPxPerSec,this.scrollVelocityPxPerSec)})}resetMotionTracking(t,r){this.pointerVelocityPxPerSec=0,this.scrollVelocityPxPerSec=0,this.motionSampleTime=performance.now(),this.motionSampleX=t,this.motionSampleY=r}clearMotionTracking(){this.pointerVelocityPxPerSec=0,this.scrollVelocityPxPerSec=0,this.motionSampleTime=0}updatePointerVelocity(t,r){this.samplePointerVelocityAt(performance.now(),t,r)}samplePointerVelocityAt(t,r,i){if(this.motionSampleTime===0){this.motionSampleTime=t,this.motionSampleX=r,this.motionSampleY=i,this.pointerVelocityPxPerSec=0;return}const s=t-this.motionSampleTime;if(s<100)return;const o=r-this.motionSampleX;this.pointerVelocityPxPerSec=Math.abs(o)/s*Sf,this.motionSampleTime=t,this.motionSampleX=r,this.motionSampleY=i}clampPointerToViewport(t,r,i){return{x:Math.max(i.left,Math.min(i.left+i.width,t)),y:Math.max(i.top,Math.min(i.top+i.height,r))}}isPointerOutsideViewport(t,r,i){return t<i.left||t>i.left+i.width||r<i.top||r>i.top+i.height}getDragEdgeScrollDeltaPixels(t,r,i){var u;const s=r.left+Ao,o=r.left+r.width-Ao,a=((u=this.layoutGrid)==null?void 0:u.unit.x)??On,c=fx*a;if(t<s){const h=Math.max(0,Math.min(1,(s-t)/Ao));return-(c*h**_p)*i}if(t>o){const h=Math.max(0,Math.min(1,(t-o)/Ao));return c*h**_p*i}return 0}measureLayoutGeometry(t,r,i=0){const s=this.layoutGrid;if(!s)return[];const o=Fr(t),a=new Map(o.nodes.map(_=>[_.id,_.width])),c=s.toPixels(Te({y:et})).y??ua,u=ac(this),h=(this.layoutScroll.translate.x??0)+i,p=_f(o.nodes.length,s,u.height),v=u.offsetY+p,g=[];let E=h;for(const _ of t){const C=a.get(_.id)??Lt,N=s.toPixels(Te({x:C})).x??hr,P={left:E,top:v,width:N,height:c};g.push({id:_.id,rect:P}),E+=N+he}return g}getPlaceholderPixelSize(t,r,i,s){if(!r)return s;for(const o of t.nodes)for(const a of o.cards)if(a.id===r)return{width:i.toPixels(Te({x:a.width})).x??s.width,height:i.toPixels(Te({y:a.height})).y??s.height};return s}renderDraggedPreview(t){const r=dh(this._layout,t);return r?this.renderContent(r,{isDragging:!0}):U``}shouldApplyTrackOffset(t,r){if(r)return!0;for(const i of t){if(i.type!=="stack")continue;if(i.children.some(o=>o.type==="drop-target")&&r!==i.id)return!0}return!1}computeDragTrackOffset(t,r,i,s,o,a){if(!t)return a;const c=s?o??this.getStableAnchorCardId(t,r,i):this.getStableAnchorNodeId(t,r,i);if(!c)return a;const u=s?Ef(t,c,this.layoutGrid):xf(t,c,this.layoutGrid),h=s?Ef(r,c,this.layoutGrid):xf(r,c,this.layoutGrid);return u===null||h===null?a:a+(u-h)}getStableAnchorCardId(t,r,i){const s=kf(t),o=new Set(kf(r));for(const a of s)if(a!==i&&o.has(a))return a;return null}getStableAnchorNodeId(t,r,i){const s=new Set(r.map(o=>o.id));for(const o of t)if(o.id!==i&&s.has(o.id))return o.id;return null}getStackChildAnchorCardId(t,r){const i=this._layout.find(o=>o.type==="stack"&&o.id===t);if(!i||i.type!=="stack")return null;const s=i.children.find(o=>o.type==="card"&&o.id!==r);return(s==null?void 0:s.id)??null}}function xL(n){const e=new Map;for(const t of n){if(t.type==="card"){e.set(t.id,t);continue}for(const r of t.children)if(r.type==="card")e.set(r.id,r);else for(const i of r.children)e.set(i.id,i)}return e}function AL(n,e){const t=n.findIndex(r=>r.type==="card"&&r.id===e);if(t!==-1)return{topLevelIndex:t};for(let r=0;r<n.length;r+=1){const i=n[r];if(!(!i||i.type!=="stack")&&i.children.some(s=>s.type==="card"&&s.id===e))return{topLevelIndex:r,sourceStackId:i.id}}return null}function kf(n){const e=[];for(const t of n){if(t.type==="card"){e.push(t.id);continue}if(t.type==="stack"){const r=t.children.find(i=>i.type==="card");r&&e.push(r.id)}}return e}function Ef(n,e,t){if(!t)return null;const r=Fr(n),i=new Map(r.nodes.map(o=>[o.id,o.width]));let s=0;for(const o of n){if(o.type==="card"&&o.id===e||o.type==="stack"&&o.children.some(u=>u.type==="card"&&u.id===e))return s;const a=i.get(o.id)??Lt,c=t.toPixels(Te({x:a})).x??hr;s+=c+he}return null}function xf(n,e,t){if(!t)return null;const r=Fr(n),i=new Map(r.nodes.map(o=>[o.id,o.width]));let s=0;for(const o of n){if(o.id===e)return s;const a=i.get(o.id)??Lt,c=t.toPixels(Te({x:a})).x??hr;s+=c+he}return null}customElements.get("layout-view")||customElements.define("layout-view",EL);class $L extends HTMLElement{constructor(){super(...arguments);b(this,"screenManager",qe.resolve("ScreenManager"));b(this,"boundModel",null);b(this,"handleActiveScreenChanged",()=>{this.rebindModel(),this.render()});b(this,"handleModelChange",()=>{this.render()});b(this,"handleCloseArtifact",t=>{t instanceof Iy&&this.screenManager.activeScreen&&this.screenManager.activeScreen.removeArtifact(t.artifactID)});b(this,"handleScrollPositionChanged",t=>{const r=t;typeof r.scrollPosition=="number"&&Number.isFinite(r.scrollPosition)&&this.screenManager.activeScreen&&this.screenManager.activeScreen.setScrollPosition(r.scrollPosition)});b(this,"handleLayoutChanged",t=>{t instanceof Oy&&this.screenManager.activeScreen&&this.screenManager.activeScreen.setLayout(t.layout)});b(this,"handleServerEvent",t=>{const r=t.event;if(r.type!=="viewer-focus"||!this.boundModel||r.screenID!==this.boundModel.id)return;const i=this.querySelector("layout-view");i&&i.focusArtifact(r.artifactID)})}connectedCallback(){this.screenManager.addEventListener("active-screen-changed",this.handleActiveScreenChanged),this.rebindModel(),this.render()}disconnectedCallback(){this.screenManager.removeEventListener("active-screen-changed",this.handleActiveScreenChanged),this.unbindModel()}rebindModel(){const t=this.screenManager.activeScreen;this.boundModel!==t&&(this.unbindModel(),this.boundModel=t,t&&(t.addEventListener("change",this.handleModelChange),t.server.addEventListener("server-event",this.handleServerEvent)))}unbindModel(){this.boundModel&&(this.boundModel.removeEventListener("change",this.handleModelChange),this.boundModel.server.removeEventListener("server-event",this.handleServerEvent),this.boundModel=null)}buildArtifactMap(){const t=this.screenManager.activeScreen;return t?new Map(t.artifacts):new Map}render(){const t=this.screenManager.activeScreen,r=(t==null?void 0:t.layout)??[],i=this.buildArtifactMap();if(r.length===0){Re(U`<p data-testid="empty-screen" class="empty">
217
+ No artifacts yet. Create one by asking for something.
218
+ </p>`,this);return}Re(U`
219
+ <layout-view
220
+ .layout=${r}
221
+ .renderContent=${(o,a)=>{const c=i.get(o.artifactID);return!c||!t?U``:U`<artifact-view
222
+ .artifact=${c}
223
+ .screen=${t}
224
+ .viewURL=${t.server.getViewURL(c)}
225
+ .contentURL=${t.server.getContentURL(c.id)}
226
+ .dragging=${a.isDragging}
227
+ ></artifact-view>`}}
228
+ .scrollPosition=${(t==null?void 0:t.scrollPosition)??0}
229
+ @scroll=${this.handleScrollPositionChanged}
230
+ @layout-change=${this.handleLayoutChanged}
231
+ @close-artifact=${this.handleCloseArtifact}
232
+ ></layout-view>
233
+ `,this)}}customElements.define("screen-view",$L);var $a,ni,zs,Jt,My,zy,ou;class TL extends HTMLElement{constructor(){super(...arguments);w(this,Jt);w(this,$a,qe.resolve("ScreenManager"));w(this,ni,qe.resolve("ServerManager"));w(this,zs,()=>{m(this,Jt,ou).call(this)})}connectedCallback(){l(this,ni).addEventListener("change",l(this,zs)),m(this,Jt,ou).call(this)}disconnectedCallback(){l(this,ni).removeEventListener("change",l(this,zs))}}$a=new WeakMap,ni=new WeakMap,zs=new WeakMap,Jt=new WeakSet,My=function(t,r){l(this,$a).setActive(t,r)},zy=function(){for(const t of l(this,ni).servers.values())return t;return null},ou=function(){const t=m(this,Jt,zy).call(this),i=(t?[...t.screens.values()]:[]).slice().sort((o,a)=>o.starred!==a.starred?o.starred?-1:1:o.name.localeCompare(a.name,void 0,{sensitivity:"base"})),s=i.length===0?U`<p class="empty">No screens yet. Hit + to create one.</p>`:U`
234
+ <ul class="tiles">
235
+ ${i.map(o=>U`
236
+ <li>
237
+ <button
238
+ class="tile"
239
+ type="button"
240
+ material="glass"
241
+ @click=${()=>t&&m(this,Jt,My).call(this,t.url,o.id)}
242
+ >
243
+ <span class="tile-name">${o.name}</span>
244
+ ${o.starred?U`<span class="tile-star" aria-hidden="true">${Vc({weight:"fill"})}</span>`:se}
245
+ </button>
246
+ </li>
247
+ `)}
248
+ </ul>
249
+ `;Re(s,this)};customElements.get("home-screen")||customElements.define("home-screen",TL);const lc=new WeakMap,Af=Object.prototype.hasOwnProperty,IL=(()=>{const n=new Set;let e=HTMLElement.prototype;for(;e;){for(const t of Object.getOwnPropertyNames(e))n.add(t);if(e===Node.prototype)break;e=Object.getPrototypeOf(e)}return n})();function CL(n,e){if(n===Boolean)return e!==null;if(e!==null)return n===Number?Number(e):e}var Ns,au,sr,it,Rt,ri,or,ii,Ce,Xi,Ny,Uy,Fy,ea;const Nn=class Nn extends HTMLElement{constructor(){var i;super();w(this,Ce);w(this,sr,new Map);w(this,it,new Map);w(this,Rt,new Map);w(this,ri,!1);w(this,or,!1);w(this,ii,!1);const t=m(i=Nn,Ns,au).call(i,this.constructor),r=this;for(const s of t.properties)Af.call(r,s)&&(l(this,Rt).set(s,r[s]),delete r[s])}static get observedAttributes(){var t;return m(t=Nn,Ns,au).call(t,this).observedAttributes}connected(){}disconnected(){}changed(t){}connectedCallback(){if(m(this,Ce,Fy).call(this),!l(this,or))for(const t of m(this,Ce,Xi).call(this).properties)l(this,it).has(t)||l(this,it).set(t,void 0);this.dispatchEvent(new Event("reactive:connect")),this.connected(),m(this,Ce,ea).call(this)}disconnectedCallback(){this.dispatchEvent(new Event("reactive:disconnect")),this.disconnected()}attributeChangedCallback(t,r,i){if(r===i)return;const s=m(this,Ce,Xi).call(this).byAttr.get(t);s&&(l(this,Rt).has(s.property)||(this[s.property]=CL(s.type,i)))}};Ns=new WeakSet,au=function(t){const r=lc.get(t);if(r)return r;const i=[...t.properties??[]],s=t.attributes??{},o=new Map,a=new Map;for(const u of i)if(IL.has(u))throw new Error(`Reactive property "${u}" collides with a built-in DOM property. Rename it to avoid shadowing the platform API.`);for(const[u,h]of Object.entries(s)){if(u.includes("-")&&h.property===void 0)throw new Error(`Attribute "${u}" must declare a "property" name because kebab-case cannot be a property.`);const p=h.property??u;if(!i.includes(p))throw new Error(`Attribute '${u}' references property '${p}', which isn't declared in \`static properties\`. Add it to \`properties\` to make it reactive.`);const v={attribute:u,property:p,type:h.type};o.set(u,v),a.set(p,v)}for(const u of i){const h=Object.getOwnPropertyDescriptor(t.prototype,u);if((h==null?void 0:h.get)!==void 0||(h==null?void 0:h.set)!==void 0)throw new Error(`Observed property "${u}" cannot define a custom getter/setter. Use changed() for side effects instead.`);h===void 0&&Object.defineProperty(t.prototype,u,{configurable:!0,enumerable:!0,get(){return l(this,sr).get(u)},set(p){m(this,Ce,Ny).call(this,u,p)}})}const c={properties:i,observedAttributes:Object.keys(s),byAttr:o,byProp:a};return lc.set(t,c),c},sr=new WeakMap,it=new WeakMap,Rt=new WeakMap,ri=new WeakMap,or=new WeakMap,ii=new WeakMap,Ce=new WeakSet,Xi=function(){return lc.get(this.constructor)},Ny=function(t,r){if(!l(this,ii)&&l(this,Rt).has(t))return;const i=l(this,sr).get(t);Object.is(i,r)||(l(this,it).has(t)||l(this,it).set(t,i),l(this,sr).set(t,r),l(this,Rt).delete(t),m(this,Ce,Uy).call(this,t,r),this.isConnected&&m(this,Ce,ea).call(this))},Uy=function(t,r){const i=m(this,Ce,Xi).call(this).byProp.get(t);if(!i)return;const{attribute:s,type:o}=i;if(o===Boolean){const c=this.hasAttribute(s);r&&!c?this.setAttribute(s,""):!r&&c&&this.removeAttribute(s);return}if(r==null){this.hasAttribute(s)&&this.removeAttribute(s);return}const a=String(r);this.getAttribute(s)!==a&&this.setAttribute(s,a)},Fy=function(){const t=this,r=m(this,Ce,Xi).call(this);for(const i of r.properties){if(!Af.call(t,i))continue;const s=t[i];delete t[i],!(l(this,Rt).has(i)||l(this,sr).has(i))&&(t[i]=s)}x(this,ii,!0);try{for(const[i,s]of l(this,Rt))t[i]=s;l(this,Rt).clear()}finally{x(this,ii,!1)}},ea=function(){l(this,ri)||!this.isConnected||l(this,or)&&l(this,it).size===0||(x(this,ri,!0),queueMicrotask(()=>{if(x(this,ri,!1),!this.isConnected||l(this,or)&&l(this,it).size===0)return;const t=new Map(l(this,it));l(this,it).clear(),x(this,or,!0);try{this.changed(t)}catch(r){console.error(r)}this.isConnected&&l(this,it).size>0&&m(this,Ce,ea).call(this)}))},w(Nn,Ns),b(Nn,"properties"),b(Nn,"attributes");let cs=Nn;/**
250
+ * @license
251
+ * Copyright 2020 Google LLC
252
+ * SPDX-License-Identifier: BSD-3-Clause
253
+ */const PL=n=>n.strings===void 0;/**
254
+ * @license
255
+ * Copyright 2017 Google LLC
256
+ * SPDX-License-Identifier: BSD-3-Clause
257
+ */const rs=(n,e)=>{var r;const t=n._$AN;if(t===void 0)return!1;for(const i of t)(r=i._$AO)==null||r.call(i,e,!1),rs(i,e);return!0},ya=n=>{let e,t;do{if((e=n._$AM)===void 0)break;t=e._$AN,t.delete(n),n=e}while((t==null?void 0:t.size)===0)},Zy=n=>{for(let e;e=n._$AM;n=e){let t=e._$AN;if(t===void 0)e._$AN=t=new Set;else if(t.has(n))break;t.add(n),LL(e)}};function RL(n){this._$AN!==void 0?(ya(this),this._$AM=n,Zy(this)):this._$AM=n}function DL(n,e=!1,t=0){const r=this._$AH,i=this._$AN;if(i!==void 0&&i.size!==0)if(e)if(Array.isArray(r))for(let s=t;s<r.length;s++)rs(r[s],!1),ya(r[s]);else r!=null&&(rs(r,!1),ya(r));else rs(this,n)}const LL=n=>{n.type==ry.CHILD&&(n._$AP??(n._$AP=DL),n._$AQ??(n._$AQ=RL))};class OL extends iy{constructor(){super(...arguments),this._$AN=void 0}_$AT(e,t,r){super._$AT(e,t,r),Zy(this),this.isConnected=e._$AU}_$AO(e,t=!0){var r,i;e!==this.isConnected&&(this.isConnected=e,e?(r=this.reconnected)==null||r.call(this):(i=this.disconnected)==null||i.call(this)),t&&(rs(this,e),ya(this))}setValue(e){if(PL(this._$Ct))this._$Ct._$AI(e,this);else{const t=[...this._$Ct._$AH];t[this._$Ci]=e,this._$Ct._$AI(t,this,0)}}disconnected(){}reconnected(){}}/**
258
+ * @license
259
+ * Copyright 2020 Google LLC
260
+ * SPDX-License-Identifier: BSD-3-Clause
261
+ */const Lo=()=>new ML;class ML{}const cc=new WeakMap,Oo=uh(class extends OL{render(n){return se}update(n,[e]){var r;const t=e!==this.G;return t&&this.G!==void 0&&this.rt(void 0),(t||this.lt!==this.ct)&&(this.G=e,this.ht=(r=n.options)==null?void 0:r.host,this.rt(this.ct=n.element)),se}rt(n){if(this.isConnected||(n=void 0),typeof this.G=="function"){const e=this.ht??globalThis;let t=cc.get(e);t===void 0&&(t=new WeakMap,cc.set(e,t)),t.get(this.G)!==void 0&&this.G.call(this.ht,void 0),t.set(this.G,n),n!==void 0&&this.G.call(this.ht,n)}else this.G.value=n}get lt(){var n,e;return typeof this.G=="function"?(n=cc.get(this.ht??globalThis))==null?void 0:n.get(this.G):(e=this.G)==null?void 0:e.value}disconnected(){this.lt===this.ct&&this.rt(void 0)}reconnected(){this.rt(this.ct)}});var Ve,pn,si,oi,Us,ar,lr,ie,Pe,Hy,Fs,Zs,lu,cu,Ta,Ia,Ca,Pa,Ra,Da,La,Oa,Hs,Ws,Ki,Wy,vt;class zL extends cs{constructor(){super(...arguments);w(this,Pe);w(this,Ve,qe.resolve("ScreenManager"));w(this,pn,null);w(this,si,new DisposableStack);w(this,oi,Lo());w(this,Us,Lo());w(this,ar,Lo());w(this,lr,Lo());w(this,ie,{kind:"none"});w(this,Fs,()=>{m(this,Pe,lu).call(this),l(this,vt).call(this)});w(this,Zs,()=>{l(this,vt).call(this)});w(this,Ta,()=>{l(this,Ve).clearActive()});w(this,Ia,()=>{const t=l(this,Ve).activeScreen;t&&t.setStarred(!t.starred)});w(this,Ca,t=>{l(this,ie).kind!=="none"&&(t.stopImmediatePropagation(),m(this,Pe,Ki).call(this))});w(this,Pa,()=>{var r;const t=l(this,Ve).activeScreen;t&&((r=l(this,oi).value)==null||r.close(),x(this,ie,{kind:"rename",draft:t.name}),l(this,vt).call(this))});w(this,Ra,()=>{var t;l(this,Ve).activeScreen&&((t=l(this,oi).value)==null||t.close(),x(this,ie,{kind:"delete",error:null}),l(this,vt).call(this))});w(this,Da,t=>{if(l(this,ie).kind!=="rename")return;const r=t.target;r instanceof HTMLInputElement&&x(this,ie,{kind:"rename",draft:r.value})});w(this,La,t=>{if(t.preventDefault(),l(this,ie).kind!=="rename")return;const r=l(this,Ve).activeScreen;if(!r)return;const i=l(this,ie).draft.trim();i.length>0&&i!==r.name&&r.rename(i),m(this,Pe,Ki).call(this)});w(this,Oa,async()=>{if(l(this,ie).kind!=="delete")return;const t=l(this,Ve).activeScreen;if(t){x(this,ie,{kind:"delete",error:null});try{await t.remove(),l(this,Ve).clearActive(),m(this,Pe,Ki).call(this)}catch(r){x(this,ie,{kind:"delete",error:r instanceof Error?r.message:"Failed to delete screen."}),l(this,vt).call(this)}}});w(this,Hs,()=>{m(this,Pe,Ki).call(this)});w(this,Ws,()=>{l(this,ie).kind!=="none"&&(x(this,ie,{kind:"none"}),l(this,vt).call(this))});w(this,vt,()=>{const t=U`
262
+ <button
263
+ icon-only
264
+ variant="ghost"
265
+ class="home"
266
+ type="button"
267
+ aria-label="Home"
268
+ @click=${l(this,Ta)}
269
+ >
270
+ ${l2({weight:"fill"})}
271
+ </button>
272
+ `;Re(U`${t}${m(this,Pe,Wy).call(this)}`,this);const r=l(this,Us).value??null;l(this,ar).value&&(l(this,ar).value.anchor=r),l(this,lr).value&&(l(this,lr).value.anchor=r)})}connected(){l(this,Ve).addEventListener("active-screen-changed",l(this,Fs)),m(this,Pe,lu).call(this),l(this,vt).call(this),m(this,Pe,Hy).call(this),l(this,si).defer(()=>{l(this,Ve).removeEventListener("active-screen-changed",l(this,Fs)),m(this,Pe,cu).call(this)})}disconnected(){l(this,si).dispose(),x(this,si,new DisposableStack)}}Ve=new WeakMap,pn=new WeakMap,si=new WeakMap,oi=new WeakMap,Us=new WeakMap,ar=new WeakMap,lr=new WeakMap,ie=new WeakMap,Pe=new WeakSet,Hy=async function(){const t=await lh(this);this.setAttribute("tone",t)},Fs=new WeakMap,Zs=new WeakMap,lu=function(){var r;const t=l(this,Ve).activeScreen;l(this,pn)!==t&&(m(this,Pe,cu).call(this),x(this,pn,t),(r=l(this,pn))==null||r.addEventListener("change",l(this,Zs)))},cu=function(){var t;(t=l(this,pn))==null||t.removeEventListener("change",l(this,Zs)),x(this,pn,null)},Ta=new WeakMap,Ia=new WeakMap,Ca=new WeakMap,Pa=new WeakMap,Ra=new WeakMap,Da=new WeakMap,La=new WeakMap,Oa=new WeakMap,Hs=new WeakMap,Ws=new WeakMap,Ki=function(){const t=l(this,ie).kind==="rename"?l(this,ar).value:l(this,ie).kind==="delete"?l(this,lr).value:null;t&&(t.open=!1),x(this,ie,{kind:"none"}),l(this,vt).call(this)},Wy=function(){const t=l(this,Ve).activeScreen;if(!t)return null;const r=l(this,ie).kind==="rename"?l(this,ie).draft:"",i=l(this,ie).kind==="delete"?l(this,ie).error:null;return U`
273
+ <span class="separator" aria-hidden="true">
274
+ ${s2()}
275
+ </span>
276
+ <dropdown-menu ${Oo(l(this,oi))}>
277
+ <button
278
+ slot="trigger"
279
+ type="button"
280
+ variant="ghost"
281
+ aria-label=${`Screen actions for ${t.name}`}
282
+ ?data-active=${l(this,ie).kind!=="none"}
283
+ @click=${l(this,Ca)}
284
+ ${Oo(l(this,Us))}
285
+ >
286
+ ${t.name}
287
+ </button>
288
+ <dropdown-group>
289
+ <dropdown-item action @click=${l(this,Pa)}>
290
+ ${c2()} Rename
291
+ </dropdown-item>
292
+ <dropdown-item action danger @click=${l(this,Ra)}>
293
+ ${u2()} Delete
294
+ </dropdown-item>
295
+ </dropdown-group>
296
+ </dropdown-menu>
297
+ <ui-popover
298
+ class="rename-popover"
299
+ ?open=${l(this,ie).kind==="rename"}
300
+ @close=${l(this,Ws)}
301
+ ${Oo(l(this,ar))}
302
+ >
303
+ <form class="screen-form" @submit=${l(this,La)}>
304
+ <label class="field">
305
+ <span>Screen name</span>
306
+ <input
307
+ type="text"
308
+ .value=${r}
309
+ @input=${l(this,Da)}
310
+ />
311
+ </label>
312
+ <div class="actions">
313
+ <button type="button" @click=${l(this,Hs)}>Cancel</button>
314
+ <button type="submit" variant="primary">Save</button>
315
+ </div>
316
+ </form>
317
+ </ui-popover>
318
+ <ui-popover
319
+ class="delete-popover"
320
+ ?open=${l(this,ie).kind==="delete"}
321
+ @close=${l(this,Ws)}
322
+ ${Oo(l(this,lr))}
323
+ >
324
+ <div class="screen-form">
325
+ <p class="confirm-text">Delete "${t.name}"?</p>
326
+ ${i?U`<p class="error">${i}</p>`:se}
327
+ <div class="actions">
328
+ <button type="button" @click=${l(this,Hs)}>Cancel</button>
329
+ <button
330
+ type="button"
331
+ variant="danger"
332
+ @click=${l(this,Oa)}
333
+ >
334
+ Delete
335
+ </button>
336
+ </div>
337
+ </div>
338
+ </ui-popover>
339
+ <button
340
+ icon-only
341
+ variant="ghost"
342
+ class="star"
343
+ type="button"
344
+ aria-label=${t.starred?"Unstar screen":"Star screen"}
345
+ ?data-starred=${t.starred}
346
+ @click=${l(this,Ia)}
347
+ >
348
+ ${t.starred?Vc({weight:"fill"}):Vc()}
349
+ </button>
350
+ `},vt=new WeakMap;customElements.define("screen-breadcrumb",zL);var Ma,za,ai,Sn,By,Vy,Na,Gy;class NL extends HTMLElement{constructor(){super(...arguments);w(this,Sn);w(this,Ma,qe.resolve("ServerManager"));w(this,za,qe.resolve("ScreenManager"));w(this,ai,!1);w(this,Na,async()=>{if(l(this,ai))return;const t=m(this,Sn,Vy).call(this);if(t){x(this,ai,!0);try{const r=await t.createScreen(UL(new Date));l(this,za).setActive(t.url,r.id)}catch{}finally{x(this,ai,!1)}}})}connectedCallback(){m(this,Sn,Gy).call(this),m(this,Sn,By).call(this)}}Ma=new WeakMap,za=new WeakMap,ai=new WeakMap,Sn=new WeakSet,By=async function(){const t=await lh(this);this.setAttribute("tone",t)},Vy=function(){for(const t of l(this,Ma).servers.values())return t;return null},Na=new WeakMap,Gy=function(){Re(U`
351
+ <button
352
+ icon-only
353
+ variant="ghost"
354
+ class="new-screen"
355
+ type="button"
356
+ aria-label="New screen"
357
+ @click=${l(this,Na)}
358
+ >
359
+ ${a2({size:16,weight:"bold"})}
360
+ </button>
361
+ `,this)};function UL(n){const e=n.toLocaleDateString("en-US",{month:"long",day:"numeric",year:"numeric"}),t=12,r=n.getHours(),i=r%t===0?t:r%t,s=n.getMinutes().toString().padStart(2,"0"),o=r>=t?"pm":"am";return`${e} at ${i}:${s}${o}`}customElements.define("screen-create-button",NL);function FL(n,e){let t=null;const r=()=>e((t==null?void 0:t.messages)??[]),i=()=>{const o=n.getActiveClient();o!==t&&(t==null||t.removeEventListener("change",r),t=o,t&&(t.addEventListener("change",r),t.connect().catch(a=>{console.error("ACPClient.connect() failed",a)})),r())};n.addEventListener("change",i),i();const s=()=>{n.removeEventListener("change",i),t==null||t.removeEventListener("change",r),t=null};return{dispose:s,[Symbol.dispose](){s()}}}/*! @license DOMPurify 3.3.3 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.3.3/LICENSE */const{entries:jy,setPrototypeOf:$f,isFrozen:ZL,getPrototypeOf:HL,getOwnPropertyDescriptor:WL}=Object;let{freeze:Ue,seal:lt,create:ta}=Object,{apply:uu,construct:hu}=typeof Reflect<"u"&&Reflect;Ue||(Ue=function(e){return e});lt||(lt=function(e){return e});uu||(uu=function(e,t){for(var r=arguments.length,i=new Array(r>2?r-2:0),s=2;s<r;s++)i[s-2]=arguments[s];return e.apply(t,i)});hu||(hu=function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return new e(...r)});const Mo=Fe(Array.prototype.forEach),BL=Fe(Array.prototype.lastIndexOf),Tf=Fe(Array.prototype.pop),Mi=Fe(Array.prototype.push),VL=Fe(Array.prototype.splice),na=Fe(String.prototype.toLowerCase),uc=Fe(String.prototype.toString),hc=Fe(String.prototype.match),zi=Fe(String.prototype.replace),GL=Fe(String.prototype.indexOf),jL=Fe(String.prototype.trim),Xe=Fe(Object.prototype.hasOwnProperty),Oe=Fe(RegExp.prototype.test),Ni=qL(TypeError);function Fe(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return uu(n,e,r)}}function qL(n){return function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return hu(n,t)}}function V(n,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:na;$f&&$f(n,null);let r=e.length;for(;r--;){let i=e[r];if(typeof i=="string"){const s=t(i);s!==i&&(ZL(e)||(e[r]=s),i=s)}n[i]=!0}return n}function YL(n){for(let e=0;e<n.length;e++)Xe(n,e)||(n[e]=null);return n}function At(n){const e=ta(null);for(const[t,r]of jy(n))Xe(n,t)&&(Array.isArray(r)?e[t]=YL(r):r&&typeof r=="object"&&r.constructor===Object?e[t]=At(r):e[t]=r);return e}function Ui(n,e){for(;n!==null;){const r=WL(n,e);if(r){if(r.get)return Fe(r.get);if(typeof r.value=="function")return Fe(r.value)}n=HL(n)}function t(){return null}return t}const If=Ue(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),dc=Ue(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),pc=Ue(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),XL=Ue(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),fc=Ue(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),KL=Ue(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Cf=Ue(["#text"]),Pf=Ue(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),gc=Ue(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Rf=Ue(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),zo=Ue(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),JL=lt(/\{\{[\w\W]*|[\w\W]*\}\}/gm),QL=lt(/<%[\w\W]*|[\w\W]*%>/gm),eO=lt(/\$\{[\w\W]*/gm),tO=lt(/^data-[\-\w.\u00B7-\uFFFF]+$/),nO=lt(/^aria-[\-\w]+$/),qy=lt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),rO=lt(/^(?:\w+script|data):/i),iO=lt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Yy=lt(/^html$/i),sO=lt(/^[a-z][.\w]*(-[.\w]+)+$/i);var Df=Object.freeze({__proto__:null,ARIA_ATTR:nO,ATTR_WHITESPACE:iO,CUSTOM_ELEMENT:sO,DATA_ATTR:tO,DOCTYPE_NAME:Yy,ERB_EXPR:QL,IS_ALLOWED_URI:qy,IS_SCRIPT_OR_DATA:rO,MUSTACHE_EXPR:JL,TMPLIT_EXPR:eO});const Fi={element:1,text:3,progressingInstruction:7,comment:8,document:9},oO=function(){return typeof window>"u"?null:window},aO=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let r=null;const i="data-tt-policy-suffix";t&&t.hasAttribute(i)&&(r=t.getAttribute(i));const s="dompurify"+(r?"#"+r:"");try{return e.createPolicy(s,{createHTML(o){return o},createScriptURL(o){return o}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}},Lf=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function Xy(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:oO();const e=z=>Xy(z);if(e.version="3.3.3",e.removed=[],!n||!n.document||n.document.nodeType!==Fi.document||!n.Element)return e.isSupported=!1,e;let{document:t}=n;const r=t,i=r.currentScript,{DocumentFragment:s,HTMLTemplateElement:o,Node:a,Element:c,NodeFilter:u,NamedNodeMap:h=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:p,DOMParser:v,trustedTypes:g}=n,E=c.prototype,_=Ui(E,"cloneNode"),C=Ui(E,"remove"),N=Ui(E,"nextSibling"),P=Ui(E,"childNodes"),W=Ui(E,"parentNode");if(typeof o=="function"){const z=t.createElement("template");z.content&&z.content.ownerDocument&&(t=z.content.ownerDocument)}let L,H="";const{implementation:F,createNodeIterator:ce,createDocumentFragment:ue,getElementsByTagName:Ti}=t,{importNode:co}=r;let xe=Lf();e.isSupported=typeof jy=="function"&&typeof W=="function"&&F&&F.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:An,ERB_EXPR:St,TMPLIT_EXPR:nn,DATA_ATTR:cl,ARIA_ATTR:uo,IS_SCRIPT_OR_DATA:pb,ATTR_WHITESPACE:Eh,CUSTOM_ELEMENT:fb}=Df;let{IS_ALLOWED_URI:xh}=Df,_e=null;const Ah=V({},[...If,...dc,...pc,...fc,...Cf]);let Ae=null;const $h=V({},[...Pf,...gc,...Rf,...zo]);let me=Object.seal(ta(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Ii=null,ho=null;const rn=Object.seal(ta(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Th=!0,ul=!0,Ih=!1,Ch=!0,Sr=!1,po=!0,$n=!1,hl=!1,dl=!1,_r=!1,fo=!1,go=!1,Ph=!0,Rh=!1;const gb="user-content-";let pl=!0,Ci=!1,kr={},_t=null;const fl=V({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Dh=null;const Lh=V({},["audio","video","img","source","image","track"]);let gl=null;const Oh=V({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),mo="http://www.w3.org/1998/Math/MathML",vo="http://www.w3.org/2000/svg",Mt="http://www.w3.org/1999/xhtml";let Er=Mt,ml=!1,vl=null;const mb=V({},[mo,vo,Mt],uc);let yo=V({},["mi","mo","mn","ms","mtext"]),bo=V({},["annotation-xml"]);const vb=V({},["title","style","font","a","script"]);let Pi=null;const yb=["application/xhtml+xml","text/html"],bb="text/html";let be=null,xr=null;const wb=t.createElement("form"),Mh=function(y){return y instanceof RegExp||y instanceof Function},yl=function(){let y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(xr&&xr===y)){if((!y||typeof y!="object")&&(y={}),y=At(y),Pi=yb.indexOf(y.PARSER_MEDIA_TYPE)===-1?bb:y.PARSER_MEDIA_TYPE,be=Pi==="application/xhtml+xml"?uc:na,_e=Xe(y,"ALLOWED_TAGS")?V({},y.ALLOWED_TAGS,be):Ah,Ae=Xe(y,"ALLOWED_ATTR")?V({},y.ALLOWED_ATTR,be):$h,vl=Xe(y,"ALLOWED_NAMESPACES")?V({},y.ALLOWED_NAMESPACES,uc):mb,gl=Xe(y,"ADD_URI_SAFE_ATTR")?V(At(Oh),y.ADD_URI_SAFE_ATTR,be):Oh,Dh=Xe(y,"ADD_DATA_URI_TAGS")?V(At(Lh),y.ADD_DATA_URI_TAGS,be):Lh,_t=Xe(y,"FORBID_CONTENTS")?V({},y.FORBID_CONTENTS,be):fl,Ii=Xe(y,"FORBID_TAGS")?V({},y.FORBID_TAGS,be):At({}),ho=Xe(y,"FORBID_ATTR")?V({},y.FORBID_ATTR,be):At({}),kr=Xe(y,"USE_PROFILES")?y.USE_PROFILES:!1,Th=y.ALLOW_ARIA_ATTR!==!1,ul=y.ALLOW_DATA_ATTR!==!1,Ih=y.ALLOW_UNKNOWN_PROTOCOLS||!1,Ch=y.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Sr=y.SAFE_FOR_TEMPLATES||!1,po=y.SAFE_FOR_XML!==!1,$n=y.WHOLE_DOCUMENT||!1,_r=y.RETURN_DOM||!1,fo=y.RETURN_DOM_FRAGMENT||!1,go=y.RETURN_TRUSTED_TYPE||!1,dl=y.FORCE_BODY||!1,Ph=y.SANITIZE_DOM!==!1,Rh=y.SANITIZE_NAMED_PROPS||!1,pl=y.KEEP_CONTENT!==!1,Ci=y.IN_PLACE||!1,xh=y.ALLOWED_URI_REGEXP||qy,Er=y.NAMESPACE||Mt,yo=y.MATHML_TEXT_INTEGRATION_POINTS||yo,bo=y.HTML_INTEGRATION_POINTS||bo,me=y.CUSTOM_ELEMENT_HANDLING||{},y.CUSTOM_ELEMENT_HANDLING&&Mh(y.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(me.tagNameCheck=y.CUSTOM_ELEMENT_HANDLING.tagNameCheck),y.CUSTOM_ELEMENT_HANDLING&&Mh(y.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(me.attributeNameCheck=y.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),y.CUSTOM_ELEMENT_HANDLING&&typeof y.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(me.allowCustomizedBuiltInElements=y.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Sr&&(ul=!1),fo&&(_r=!0),kr&&(_e=V({},Cf),Ae=ta(null),kr.html===!0&&(V(_e,If),V(Ae,Pf)),kr.svg===!0&&(V(_e,dc),V(Ae,gc),V(Ae,zo)),kr.svgFilters===!0&&(V(_e,pc),V(Ae,gc),V(Ae,zo)),kr.mathMl===!0&&(V(_e,fc),V(Ae,Rf),V(Ae,zo))),Xe(y,"ADD_TAGS")||(rn.tagCheck=null),Xe(y,"ADD_ATTR")||(rn.attributeCheck=null),y.ADD_TAGS&&(typeof y.ADD_TAGS=="function"?rn.tagCheck=y.ADD_TAGS:(_e===Ah&&(_e=At(_e)),V(_e,y.ADD_TAGS,be))),y.ADD_ATTR&&(typeof y.ADD_ATTR=="function"?rn.attributeCheck=y.ADD_ATTR:(Ae===$h&&(Ae=At(Ae)),V(Ae,y.ADD_ATTR,be))),y.ADD_URI_SAFE_ATTR&&V(gl,y.ADD_URI_SAFE_ATTR,be),y.FORBID_CONTENTS&&(_t===fl&&(_t=At(_t)),V(_t,y.FORBID_CONTENTS,be)),y.ADD_FORBID_CONTENTS&&(_t===fl&&(_t=At(_t)),V(_t,y.ADD_FORBID_CONTENTS,be)),pl&&(_e["#text"]=!0),$n&&V(_e,["html","head","body"]),_e.table&&(V(_e,["tbody"]),delete Ii.tbody),y.TRUSTED_TYPES_POLICY){if(typeof y.TRUSTED_TYPES_POLICY.createHTML!="function")throw Ni('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof y.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Ni('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');L=y.TRUSTED_TYPES_POLICY,H=L.createHTML("")}else L===void 0&&(L=aO(g,i)),L!==null&&typeof H=="string"&&(H=L.createHTML(""));Ue&&Ue(y),xr=y}},zh=V({},[...dc,...pc,...XL]),Nh=V({},[...fc,...KL]),Sb=function(y){let I=W(y);(!I||!I.tagName)&&(I={namespaceURI:Er,tagName:"template"});const R=na(y.tagName),oe=na(I.tagName);return vl[y.namespaceURI]?y.namespaceURI===vo?I.namespaceURI===Mt?R==="svg":I.namespaceURI===mo?R==="svg"&&(oe==="annotation-xml"||yo[oe]):!!zh[R]:y.namespaceURI===mo?I.namespaceURI===Mt?R==="math":I.namespaceURI===vo?R==="math"&&bo[oe]:!!Nh[R]:y.namespaceURI===Mt?I.namespaceURI===vo&&!bo[oe]||I.namespaceURI===mo&&!yo[oe]?!1:!Nh[R]&&(vb[R]||!zh[R]):!!(Pi==="application/xhtml+xml"&&vl[y.namespaceURI]):!1},kt=function(y){Mi(e.removed,{element:y});try{W(y).removeChild(y)}catch{C(y)}},Tn=function(y,I){try{Mi(e.removed,{attribute:I.getAttributeNode(y),from:I})}catch{Mi(e.removed,{attribute:null,from:I})}if(I.removeAttribute(y),y==="is")if(_r||fo)try{kt(I)}catch{}else try{I.setAttribute(y,"")}catch{}},Uh=function(y){let I=null,R=null;if(dl)y="<remove></remove>"+y;else{const ve=hc(y,/^[\r\n\t ]+/);R=ve&&ve[0]}Pi==="application/xhtml+xml"&&Er===Mt&&(y='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+y+"</body></html>");const oe=L?L.createHTML(y):y;if(Er===Mt)try{I=new v().parseFromString(oe,Pi)}catch{}if(!I||!I.documentElement){I=F.createDocument(Er,"template",null);try{I.documentElement.innerHTML=ml?H:oe}catch{}}const De=I.body||I.documentElement;return y&&R&&De.insertBefore(t.createTextNode(R),De.childNodes[0]||null),Er===Mt?Ti.call(I,$n?"html":"body")[0]:$n?I.documentElement:De},Fh=function(y){return ce.call(y.ownerDocument||y,y,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},bl=function(y){return y instanceof p&&(typeof y.nodeName!="string"||typeof y.textContent!="string"||typeof y.removeChild!="function"||!(y.attributes instanceof h)||typeof y.removeAttribute!="function"||typeof y.setAttribute!="function"||typeof y.namespaceURI!="string"||typeof y.insertBefore!="function"||typeof y.hasChildNodes!="function")},Zh=function(y){return typeof a=="function"&&y instanceof a};function zt(z,y,I){Mo(z,R=>{R.call(e,y,I,xr)})}const Hh=function(y){let I=null;if(zt(xe.beforeSanitizeElements,y,null),bl(y))return kt(y),!0;const R=be(y.nodeName);if(zt(xe.uponSanitizeElement,y,{tagName:R,allowedTags:_e}),po&&y.hasChildNodes()&&!Zh(y.firstElementChild)&&Oe(/<[/\w!]/g,y.innerHTML)&&Oe(/<[/\w!]/g,y.textContent)||y.nodeType===Fi.progressingInstruction||po&&y.nodeType===Fi.comment&&Oe(/<[/\w]/g,y.data))return kt(y),!0;if(!(rn.tagCheck instanceof Function&&rn.tagCheck(R))&&(!_e[R]||Ii[R])){if(!Ii[R]&&Bh(R)&&(me.tagNameCheck instanceof RegExp&&Oe(me.tagNameCheck,R)||me.tagNameCheck instanceof Function&&me.tagNameCheck(R)))return!1;if(pl&&!_t[R]){const oe=W(y)||y.parentNode,De=P(y)||y.childNodes;if(De&&oe){const ve=De.length;for(let Ze=ve-1;Ze>=0;--Ze){const Nt=_(De[Ze],!0);Nt.__removalCount=(y.__removalCount||0)+1,oe.insertBefore(Nt,N(y))}}}return kt(y),!0}return y instanceof c&&!Sb(y)||(R==="noscript"||R==="noembed"||R==="noframes")&&Oe(/<\/no(script|embed|frames)/i,y.innerHTML)?(kt(y),!0):(Sr&&y.nodeType===Fi.text&&(I=y.textContent,Mo([An,St,nn],oe=>{I=zi(I,oe," ")}),y.textContent!==I&&(Mi(e.removed,{element:y.cloneNode()}),y.textContent=I)),zt(xe.afterSanitizeElements,y,null),!1)},Wh=function(y,I,R){if(ho[I]||Ph&&(I==="id"||I==="name")&&(R in t||R in wb))return!1;if(!(ul&&!ho[I]&&Oe(cl,I))){if(!(Th&&Oe(uo,I))){if(!(rn.attributeCheck instanceof Function&&rn.attributeCheck(I,y))){if(!Ae[I]||ho[I]){if(!(Bh(y)&&(me.tagNameCheck instanceof RegExp&&Oe(me.tagNameCheck,y)||me.tagNameCheck instanceof Function&&me.tagNameCheck(y))&&(me.attributeNameCheck instanceof RegExp&&Oe(me.attributeNameCheck,I)||me.attributeNameCheck instanceof Function&&me.attributeNameCheck(I,y))||I==="is"&&me.allowCustomizedBuiltInElements&&(me.tagNameCheck instanceof RegExp&&Oe(me.tagNameCheck,R)||me.tagNameCheck instanceof Function&&me.tagNameCheck(R))))return!1}else if(!gl[I]){if(!Oe(xh,zi(R,Eh,""))){if(!((I==="src"||I==="xlink:href"||I==="href")&&y!=="script"&&GL(R,"data:")===0&&Dh[y])){if(!(Ih&&!Oe(pb,zi(R,Eh,"")))){if(R)return!1}}}}}}}return!0},Bh=function(y){return y!=="annotation-xml"&&hc(y,fb)},Vh=function(y){zt(xe.beforeSanitizeAttributes,y,null);const{attributes:I}=y;if(!I||bl(y))return;const R={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ae,forceKeepAttr:void 0};let oe=I.length;for(;oe--;){const De=I[oe],{name:ve,namespaceURI:Ze,value:Nt}=De,Ar=be(ve),wl=Nt;let $e=ve==="value"?wl:jL(wl);if(R.attrName=Ar,R.attrValue=$e,R.keepAttr=!0,R.forceKeepAttr=void 0,zt(xe.uponSanitizeAttribute,y,R),$e=R.attrValue,Rh&&(Ar==="id"||Ar==="name")&&(Tn(ve,y),$e=gb+$e),po&&Oe(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,$e)){Tn(ve,y);continue}if(Ar==="attributename"&&hc($e,"href")){Tn(ve,y);continue}if(R.forceKeepAttr)continue;if(!R.keepAttr){Tn(ve,y);continue}if(!Ch&&Oe(/\/>/i,$e)){Tn(ve,y);continue}Sr&&Mo([An,St,nn],jh=>{$e=zi($e,jh," ")});const Gh=be(y.nodeName);if(!Wh(Gh,Ar,$e)){Tn(ve,y);continue}if(L&&typeof g=="object"&&typeof g.getAttributeType=="function"&&!Ze)switch(g.getAttributeType(Gh,Ar)){case"TrustedHTML":{$e=L.createHTML($e);break}case"TrustedScriptURL":{$e=L.createScriptURL($e);break}}if($e!==wl)try{Ze?y.setAttributeNS(Ze,ve,$e):y.setAttribute(ve,$e),bl(y)?kt(y):Tf(e.removed)}catch{Tn(ve,y)}}zt(xe.afterSanitizeAttributes,y,null)},_b=function z(y){let I=null;const R=Fh(y);for(zt(xe.beforeSanitizeShadowDOM,y,null);I=R.nextNode();)zt(xe.uponSanitizeShadowNode,I,null),Hh(I),Vh(I),I.content instanceof s&&z(I.content);zt(xe.afterSanitizeShadowDOM,y,null)};return e.sanitize=function(z){let y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I=null,R=null,oe=null,De=null;if(ml=!z,ml&&(z="<!-->"),typeof z!="string"&&!Zh(z))if(typeof z.toString=="function"){if(z=z.toString(),typeof z!="string")throw Ni("dirty is not a string, aborting")}else throw Ni("toString is not a function");if(!e.isSupported)return z;if(hl||yl(y),e.removed=[],typeof z=="string"&&(Ci=!1),Ci){if(z.nodeName){const Nt=be(z.nodeName);if(!_e[Nt]||Ii[Nt])throw Ni("root node is forbidden and cannot be sanitized in-place")}}else if(z instanceof a)I=Uh("<!---->"),R=I.ownerDocument.importNode(z,!0),R.nodeType===Fi.element&&R.nodeName==="BODY"||R.nodeName==="HTML"?I=R:I.appendChild(R);else{if(!_r&&!Sr&&!$n&&z.indexOf("<")===-1)return L&&go?L.createHTML(z):z;if(I=Uh(z),!I)return _r?null:go?H:""}I&&dl&&kt(I.firstChild);const ve=Fh(Ci?z:I);for(;oe=ve.nextNode();)Hh(oe),Vh(oe),oe.content instanceof s&&_b(oe.content);if(Ci)return z;if(_r){if(fo)for(De=ue.call(I.ownerDocument);I.firstChild;)De.appendChild(I.firstChild);else De=I;return(Ae.shadowroot||Ae.shadowrootmode)&&(De=co.call(r,De,!0)),De}let Ze=$n?I.outerHTML:I.innerHTML;return $n&&_e["!doctype"]&&I.ownerDocument&&I.ownerDocument.doctype&&I.ownerDocument.doctype.name&&Oe(Yy,I.ownerDocument.doctype.name)&&(Ze="<!DOCTYPE "+I.ownerDocument.doctype.name+`>
362
+ `+Ze),Sr&&Mo([An,St,nn],Nt=>{Ze=zi(Ze,Nt," ")}),L&&go?L.createHTML(Ze):Ze},e.setConfig=function(){let z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};yl(z),hl=!0},e.clearConfig=function(){xr=null,hl=!1},e.isValidAttribute=function(z,y,I){xr||yl({});const R=be(z),oe=be(y);return Wh(R,oe,I)},e.addHook=function(z,y){typeof y=="function"&&Mi(xe[z],y)},e.removeHook=function(z,y){if(y!==void 0){const I=BL(xe[z],y);return I===-1?void 0:VL(xe[z],I,1)[0]}return Tf(xe[z])},e.removeHooks=function(z){xe[z]=[]},e.removeAllHooks=function(){xe=Lf()},e}var Ky=Xy();function ph(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var wr=ph();function Jy(n){wr=n}var zn={exec:()=>null};function q(n,e=""){let t=typeof n=="string"?n:n.source,r={replace:(i,s)=>{let o=typeof s=="string"?s:s.source;return o=o.replace(Ne.caret,"$1"),t=t.replace(i,o),r},getRegex:()=>new RegExp(t,e)};return r}var lO=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),Ne={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}>`)},cO=/^(?:[ \t]*(?:\n|$))+/,uO=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,hO=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,lo=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,dO=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,fh=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Qy=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,eb=q(Qy).replace(/bull/g,fh).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),pO=q(Qy).replace(/bull/g,fh).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),gh=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,fO=/^[^\n]+/,mh=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,gO=q(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",mh).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),mO=q(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,fh).getRegex(),ol="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",vh=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,vO=q("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",vh).replace("tag",ol).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),tb=q(gh).replace("hr",lo).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",ol).getRegex(),yO=q(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",tb).getRegex(),yh={blockquote:yO,code:uO,def:gO,fences:hO,heading:dO,hr:lo,html:vO,lheading:eb,list:mO,newline:cO,paragraph:tb,table:zn,text:fO},Of=q("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",lo).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",ol).getRegex(),bO={...yh,lheading:pO,table:Of,paragraph:q(gh).replace("hr",lo).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Of).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",ol).getRegex()},wO={...yh,html:q(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",vh).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:zn,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:q(gh).replace("hr",lo).replace("heading",` *#{1,6} *[^
363
+ ]`).replace("lheading",eb).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},SO=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,_O=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,nb=/^( {2,}|\\)\n(?!\s*$)/,kO=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,$i=/[\p{P}\p{S}]/u,al=/[\s\p{P}\p{S}]/u,bh=/[^\s\p{P}\p{S}]/u,EO=q(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,al).getRegex(),rb=/(?!~)[\p{P}\p{S}]/u,xO=/(?!~)[\s\p{P}\p{S}]/u,AO=/(?:[^\s\p{P}\p{S}]|~)/u,$O=q(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",lO?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),ib=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,TO=q(ib,"u").replace(/punct/g,$i).getRegex(),IO=q(ib,"u").replace(/punct/g,rb).getRegex(),sb="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",CO=q(sb,"gu").replace(/notPunctSpace/g,bh).replace(/punctSpace/g,al).replace(/punct/g,$i).getRegex(),PO=q(sb,"gu").replace(/notPunctSpace/g,AO).replace(/punctSpace/g,xO).replace(/punct/g,rb).getRegex(),RO=q("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,bh).replace(/punctSpace/g,al).replace(/punct/g,$i).getRegex(),DO=q(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,$i).getRegex(),LO="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",OO=q(LO,"gu").replace(/notPunctSpace/g,bh).replace(/punctSpace/g,al).replace(/punct/g,$i).getRegex(),MO=q(/\\(punct)/,"gu").replace(/punct/g,$i).getRegex(),zO=q(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),NO=q(vh).replace("(?:-->|$)","-->").getRegex(),UO=q("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",NO).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),ba=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,FO=q(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",ba).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),ob=q(/^!?\[(label)\]\[(ref)\]/).replace("label",ba).replace("ref",mh).getRegex(),ab=q(/^!?\[(ref)\](?:\[\])?/).replace("ref",mh).getRegex(),ZO=q("reflink|nolink(?!\\()","g").replace("reflink",ob).replace("nolink",ab).getRegex(),Mf=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,wh={_backpedal:zn,anyPunctuation:MO,autolink:zO,blockSkip:$O,br:nb,code:_O,del:zn,delLDelim:zn,delRDelim:zn,emStrongLDelim:TO,emStrongRDelimAst:CO,emStrongRDelimUnd:RO,escape:SO,link:FO,nolink:ab,punctuation:EO,reflink:ob,reflinkSearch:ZO,tag:UO,text:kO,url:zn},HO={...wh,link:q(/^!?\[(label)\]\((.*?)\)/).replace("label",ba).getRegex(),reflink:q(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",ba).getRegex()},du={...wh,emStrongRDelimAst:PO,emStrongLDelim:IO,delLDelim:DO,delRDelim:OO,url:q(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Mf).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:q(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",Mf).getRegex()},WO={...du,br:q(nb).replace("{2,}","*").getRegex(),text:q(du.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},No={normal:yh,gfm:bO,pedantic:wO},Zi={normal:wh,gfm:du,breaks:WO,pedantic:HO},BO={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},zf=n=>BO[n];function $t(n,e){if(e){if(Ne.escapeTest.test(n))return n.replace(Ne.escapeReplace,zf)}else if(Ne.escapeTestNoEncode.test(n))return n.replace(Ne.escapeReplaceNoEncode,zf);return n}function Nf(n){try{n=encodeURI(n).replace(Ne.percentDecode,"%")}catch{return null}return n}function Uf(n,e){var s;let t=n.replace(Ne.findPipe,(o,a,c)=>{let u=!1,h=a;for(;--h>=0&&c[h]==="\\";)u=!u;return u?"|":" |"}),r=t.split(Ne.splitPipe),i=0;if(r[0].trim()||r.shift(),r.length>0&&!((s=r.at(-1))!=null&&s.trim())&&r.pop(),e)if(r.length>e)r.splice(e);else for(;r.length<e;)r.push("");for(;i<r.length;i++)r[i]=r[i].trim().replace(Ne.slashPipe,"|");return r}function Hi(n,e,t){let r=n.length;if(r===0)return"";let i=0;for(;i<r&&n.charAt(r-i-1)===e;)i++;return n.slice(0,r-i)}function VO(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let r=0;r<n.length;r++)if(n[r]==="\\")r++;else if(n[r]===e[0])t++;else if(n[r]===e[1]&&(t--,t<0))return r;return t>0?-2:-1}function GO(n,e=0){let t=e,r="";for(let i of n)if(i===" "){let s=4-t%4;r+=" ".repeat(s),t+=s}else r+=i,t++;return r}function Ff(n,e,t,r,i){let s=e.href,o=e.title||null,a=n[1].replace(i.other.outputLinkReplace,"$1");r.state.inLink=!0;let c={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:s,title:o,text:a,tokens:r.inlineTokens(a)};return r.state.inLink=!1,c}function jO(n,e,t){let r=n.match(t.other.indentCodeCompensation);if(r===null)return e;let i=r[1];return e.split(`
364
+ `).map(s=>{let o=s.match(t.other.beginningSpace);if(o===null)return s;let[a]=o;return a.length>=i.length?s.slice(i.length):s}).join(`
365
+ `)}var wa=class{constructor(n){b(this,"options");b(this,"rules");b(this,"lexer");this.options=n||wr}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:Hi(t,`
366
+ `)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let t=e[0],r=jO(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:r}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let r=Hi(t,"#");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(t=r.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:Hi(e[0],`
367
+ `)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let t=Hi(e[0],`
368
+ `).split(`
369
+ `),r="",i="",s=[];for(;t.length>0;){let o=!1,a=[],c;for(c=0;c<t.length;c++)if(this.rules.other.blockquoteStart.test(t[c]))a.push(t[c]),o=!0;else if(!o)a.push(t[c]);else break;t=t.slice(c);let u=a.join(`
370
+ `),h=u.replace(this.rules.other.blockquoteSetextReplace,`
371
+ $1`).replace(this.rules.other.blockquoteSetextReplace2,"");r=r?`${r}
372
+ ${u}`:u,i=i?`${i}
373
+ ${h}`:h;let p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(h,s,!0),this.lexer.state.top=p,t.length===0)break;let v=s.at(-1);if((v==null?void 0:v.type)==="code")break;if((v==null?void 0:v.type)==="blockquote"){let g=v,E=g.raw+`
374
+ `+t.join(`
375
+ `),_=this.blockquote(E);s[s.length-1]=_,r=r.substring(0,r.length-g.raw.length)+_.raw,i=i.substring(0,i.length-g.text.length)+_.text;break}else if((v==null?void 0:v.type)==="list"){let g=v,E=g.raw+`
376
+ `+t.join(`
377
+ `),_=this.list(E);s[s.length-1]=_,r=r.substring(0,r.length-v.raw.length)+_.raw,i=i.substring(0,i.length-g.raw.length)+_.raw,t=E.substring(s.at(-1).raw.length).split(`
378
+ `);continue}}return{type:"blockquote",raw:r,tokens:s,text:i}}}list(n){var t,r;let e=this.rules.block.list.exec(n);if(e){let i=e[1].trim(),s=i.length>1,o={type:"list",raw:"",ordered:s,start:s?+i.slice(0,-1):"",loose:!1,items:[]};i=s?`\\d{1,9}\\${i.slice(-1)}`:`\\${i}`,this.options.pedantic&&(i=s?i:"[*+-]");let a=this.rules.other.listItemRegex(i),c=!1;for(;n;){let h=!1,p="",v="";if(!(e=a.exec(n))||this.rules.block.hr.test(n))break;p=e[0],n=n.substring(p.length);let g=GO(e[2].split(`
379
+ `,1)[0],e[1].length),E=n.split(`
380
+ `,1)[0],_=!g.trim(),C=0;if(this.options.pedantic?(C=2,v=g.trimStart()):_?C=e[1].length+1:(C=g.search(this.rules.other.nonSpaceChar),C=C>4?1:C,v=g.slice(C),C+=e[1].length),_&&this.rules.other.blankLine.test(E)&&(p+=E+`
381
+ `,n=n.substring(E.length+1),h=!0),!h){let N=this.rules.other.nextBulletRegex(C),P=this.rules.other.hrRegex(C),W=this.rules.other.fencesBeginRegex(C),L=this.rules.other.headingBeginRegex(C),H=this.rules.other.htmlBeginRegex(C),F=this.rules.other.blockquoteBeginRegex(C);for(;n;){let ce=n.split(`
382
+ `,1)[0],ue;if(E=ce,this.options.pedantic?(E=E.replace(this.rules.other.listReplaceNesting," "),ue=E):ue=E.replace(this.rules.other.tabCharGlobal," "),W.test(E)||L.test(E)||H.test(E)||F.test(E)||N.test(E)||P.test(E))break;if(ue.search(this.rules.other.nonSpaceChar)>=C||!E.trim())v+=`
383
+ `+ue.slice(C);else{if(_||g.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||W.test(g)||L.test(g)||P.test(g))break;v+=`
384
+ `+E}_=!E.trim(),p+=ce+`
385
+ `,n=n.substring(ce.length+1),g=ue.slice(C)}}o.loose||(c?o.loose=!0:this.rules.other.doubleBlankLine.test(p)&&(c=!0)),o.items.push({type:"list_item",raw:p,task:!!this.options.gfm&&this.rules.other.listIsTask.test(v),loose:!1,text:v,tokens:[]}),o.raw+=p}let u=o.items.at(-1);if(u)u.raw=u.raw.trimEnd(),u.text=u.text.trimEnd();else return;o.raw=o.raw.trimEnd();for(let h of o.items){if(this.lexer.state.top=!1,h.tokens=this.lexer.blockTokens(h.text,[]),h.task){if(h.text=h.text.replace(this.rules.other.listReplaceTask,""),((t=h.tokens[0])==null?void 0:t.type)==="text"||((r=h.tokens[0])==null?void 0:r.type)==="paragraph"){h.tokens[0].raw=h.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),h.tokens[0].text=h.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let v=this.lexer.inlineQueue.length-1;v>=0;v--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[v].src)){this.lexer.inlineQueue[v].src=this.lexer.inlineQueue[v].src.replace(this.rules.other.listReplaceTask,"");break}}let p=this.rules.other.listTaskCheckbox.exec(h.raw);if(p){let v={type:"checkbox",raw:p[0]+" ",checked:p[0]!=="[ ]"};h.checked=v.checked,o.loose?h.tokens[0]&&["paragraph","text"].includes(h.tokens[0].type)&&"tokens"in h.tokens[0]&&h.tokens[0].tokens?(h.tokens[0].raw=v.raw+h.tokens[0].raw,h.tokens[0].text=v.raw+h.tokens[0].text,h.tokens[0].tokens.unshift(v)):h.tokens.unshift({type:"paragraph",raw:v.raw,text:v.raw,tokens:[v]}):h.tokens.unshift(v)}}if(!o.loose){let p=h.tokens.filter(g=>g.type==="space"),v=p.length>0&&p.some(g=>this.rules.other.anyLine.test(g.raw));o.loose=v}}if(o.loose)for(let h of o.items){h.loose=!0;for(let p of h.tokens)p.type==="text"&&(p.type="paragraph")}return o}}html(n){let e=this.rules.block.html.exec(n);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(n){let e=this.rules.block.def.exec(n);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),r=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:r,title:i}}}table(n){var o;let e=this.rules.block.table.exec(n);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=Uf(e[1]),r=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=(o=e[3])!=null&&o.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
386
+ `):[],s={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===r.length){for(let a of r)this.rules.other.tableAlignRight.test(a)?s.align.push("right"):this.rules.other.tableAlignCenter.test(a)?s.align.push("center"):this.rules.other.tableAlignLeft.test(a)?s.align.push("left"):s.align.push(null);for(let a=0;a<t.length;a++)s.header.push({text:t[a],tokens:this.lexer.inline(t[a]),header:!0,align:s.align[a]});for(let a of i)s.rows.push(Uf(a,s.header.length).map((c,u)=>({text:c,tokens:this.lexer.inline(c),header:!1,align:s.align[u]})));return s}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e){let t=e[1].trim();return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:t,tokens:this.lexer.inline(t)}}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let t=e[1].charAt(e[1].length-1)===`
387
+ `?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let s=Hi(t.slice(0,-1),"\\");if((t.length-s.length)%2===0)return}else{let s=VO(e[2],"()");if(s===-2)return;if(s>-1){let o=(e[0].indexOf("!")===0?5:4)+e[1].length+s;e[2]=e[2].substring(0,s),e[0]=e[0].substring(0,o).trim(),e[3]=""}}let r=e[2],i="";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(r);s&&(r=s[1],i=s[3])}else i=e[3]?e[3].slice(1,-1):"";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?r=r.slice(1):r=r.slice(1,-1)),Ff(e,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let t;if((t=this.rules.inline.reflink.exec(n))||(t=this.rules.inline.nolink.exec(n))){let r=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[r.toLowerCase()];if(!i){let s=t[0].charAt(0);return{type:"text",raw:s,text:s}}return Ff(t,i,t[0],this.lexer,this.rules)}}emStrong(n,e,t=""){let r=this.rules.inline.emStrongLDelim.exec(n);if(!(!r||!r[1]&&!r[2]&&!r[3]&&!r[4]||r[4]&&t.match(this.rules.other.unicodeAlphaNumeric))&&(!(r[1]||r[3])||!t||this.rules.inline.punctuation.exec(t))){let i=[...r[0]].length-1,s,o,a=i,c=0,u=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(u.lastIndex=0,e=e.slice(-1*n.length+i);(r=u.exec(e))!=null;){if(s=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!s)continue;if(o=[...s].length,r[3]||r[4]){a+=o;continue}else if((r[5]||r[6])&&i%3&&!((i+o)%3)){c+=o;continue}if(a-=o,a>0)continue;o=Math.min(o,o+a+c);let h=[...r[0]][0].length,p=n.slice(0,i+r.index+h+o);if(Math.min(i,o)%2){let g=p.slice(1,-1);return{type:"em",raw:p,text:g,tokens:this.lexer.inlineTokens(g)}}let v=p.slice(2,-2);return{type:"strong",raw:p,text:v,tokens:this.lexer.inlineTokens(v)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),r=this.rules.other.nonSpaceChar.test(t),i=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return r&&i&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n,e,t=""){let r=this.rules.inline.delLDelim.exec(n);if(r&&(!r[1]||!t||this.rules.inline.punctuation.exec(t))){let i=[...r[0]].length-1,s,o,a=i,c=this.rules.inline.delRDelim;for(c.lastIndex=0,e=e.slice(-1*n.length+i);(r=c.exec(e))!=null;){if(s=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!s||(o=[...s].length,o!==i))continue;if(r[3]||r[4]){a+=o;continue}if(a-=o,a>0)continue;o=Math.min(o,o+a);let u=[...r[0]][0].length,h=n.slice(0,i+r.index+u+o),p=h.slice(i,-i);return{type:"del",raw:h,text:p,tokens:this.lexer.inlineTokens(p)}}}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let t,r;return e[2]==="@"?(t=e[1],r="mailto:"+t):(t=e[1],r=t),{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}url(n){var t;let e;if(e=this.rules.inline.url.exec(n)){let r,i;if(e[2]==="@")r=e[0],i="mailto:"+r;else{let s;do s=e[0],e[0]=((t=this.rules.inline._backpedal.exec(e[0]))==null?void 0:t[0])??"";while(s!==e[0]);r=e[0],e[1]==="www."?i="http://"+e[0]:i=e[0]}return{type:"link",raw:e[0],text:r,href:i,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},yt=class pu{constructor(e){b(this,"tokens");b(this,"options");b(this,"state");b(this,"inlineQueue");b(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||wr,this.options.tokenizer=this.options.tokenizer||new wa,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:Ne,block:No.normal,inline:Zi.normal};this.options.pedantic?(t.block=No.pedantic,t.inline=Zi.pedantic):this.options.gfm&&(t.block=No.gfm,this.options.breaks?t.inline=Zi.breaks:t.inline=Zi.gfm),this.tokenizer.rules=t}static get rules(){return{block:No,inline:Zi}}static lex(e,t){return new pu(t).lex(e)}static lexInline(e,t){return new pu(t).inlineTokens(e)}lex(e){e=e.replace(Ne.carriageReturn,`
388
+ `),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let r=this.inlineQueue[t];this.inlineTokens(r.src,r.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],r=!1){var i,s,o;for(this.tokenizer.lexer=this,this.options.pedantic&&(e=e.replace(Ne.tabCharGlobal," ").replace(Ne.spaceLine,""));e;){let a;if((s=(i=this.options.extensions)==null?void 0:i.block)!=null&&s.some(u=>(a=u.call({lexer:this},e,t))?(e=e.substring(a.raw.length),t.push(a),!0):!1))continue;if(a=this.tokenizer.space(e)){e=e.substring(a.raw.length);let u=t.at(-1);a.raw.length===1&&u!==void 0?u.raw+=`
389
+ `:t.push(a);continue}if(a=this.tokenizer.code(e)){e=e.substring(a.raw.length);let u=t.at(-1);(u==null?void 0:u.type)==="paragraph"||(u==null?void 0:u.type)==="text"?(u.raw+=(u.raw.endsWith(`
390
+ `)?"":`
391
+ `)+a.raw,u.text+=`
392
+ `+a.text,this.inlineQueue.at(-1).src=u.text):t.push(a);continue}if(a=this.tokenizer.fences(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.heading(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.hr(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.blockquote(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.list(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.html(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.def(e)){e=e.substring(a.raw.length);let u=t.at(-1);(u==null?void 0:u.type)==="paragraph"||(u==null?void 0:u.type)==="text"?(u.raw+=(u.raw.endsWith(`
393
+ `)?"":`
394
+ `)+a.raw,u.text+=`
395
+ `+a.raw,this.inlineQueue.at(-1).src=u.text):this.tokens.links[a.tag]||(this.tokens.links[a.tag]={href:a.href,title:a.title},t.push(a));continue}if(a=this.tokenizer.table(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.lheading(e)){e=e.substring(a.raw.length),t.push(a);continue}let c=e;if((o=this.options.extensions)!=null&&o.startBlock){let u=1/0,h=e.slice(1),p;this.options.extensions.startBlock.forEach(v=>{p=v.call({lexer:this},h),typeof p=="number"&&p>=0&&(u=Math.min(u,p))}),u<1/0&&u>=0&&(c=e.substring(0,u+1))}if(this.state.top&&(a=this.tokenizer.paragraph(c))){let u=t.at(-1);r&&(u==null?void 0:u.type)==="paragraph"?(u.raw+=(u.raw.endsWith(`
396
+ `)?"":`
397
+ `)+a.raw,u.text+=`
398
+ `+a.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=u.text):t.push(a),r=c.length!==e.length,e=e.substring(a.raw.length);continue}if(a=this.tokenizer.text(e)){e=e.substring(a.raw.length);let u=t.at(-1);(u==null?void 0:u.type)==="text"?(u.raw+=(u.raw.endsWith(`
399
+ `)?"":`
400
+ `)+a.raw,u.text+=`
401
+ `+a.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=u.text):t.push(a);continue}if(e){let u="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(u);break}else throw new Error(u)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){var c,u,h,p,v;this.tokenizer.lexer=this;let r=e,i=null;if(this.tokens.links){let g=Object.keys(this.tokens.links);if(g.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)g.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,i.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let s;for(;(i=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)s=i[2]?i[2].length:0,r=r.slice(0,i.index+s)+"["+"a".repeat(i[0].length-s-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);r=((u=(c=this.options.hooks)==null?void 0:c.emStrongMask)==null?void 0:u.call({lexer:this},r))??r;let o=!1,a="";for(;e;){o||(a=""),o=!1;let g;if((p=(h=this.options.extensions)==null?void 0:h.inline)!=null&&p.some(_=>(g=_.call({lexer:this},e,t))?(e=e.substring(g.raw.length),t.push(g),!0):!1))continue;if(g=this.tokenizer.escape(e)){e=e.substring(g.raw.length),t.push(g);continue}if(g=this.tokenizer.tag(e)){e=e.substring(g.raw.length),t.push(g);continue}if(g=this.tokenizer.link(e)){e=e.substring(g.raw.length),t.push(g);continue}if(g=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(g.raw.length);let _=t.at(-1);g.type==="text"&&(_==null?void 0:_.type)==="text"?(_.raw+=g.raw,_.text+=g.text):t.push(g);continue}if(g=this.tokenizer.emStrong(e,r,a)){e=e.substring(g.raw.length),t.push(g);continue}if(g=this.tokenizer.codespan(e)){e=e.substring(g.raw.length),t.push(g);continue}if(g=this.tokenizer.br(e)){e=e.substring(g.raw.length),t.push(g);continue}if(g=this.tokenizer.del(e,r,a)){e=e.substring(g.raw.length),t.push(g);continue}if(g=this.tokenizer.autolink(e)){e=e.substring(g.raw.length),t.push(g);continue}if(!this.state.inLink&&(g=this.tokenizer.url(e))){e=e.substring(g.raw.length),t.push(g);continue}let E=e;if((v=this.options.extensions)!=null&&v.startInline){let _=1/0,C=e.slice(1),N;this.options.extensions.startInline.forEach(P=>{N=P.call({lexer:this},C),typeof N=="number"&&N>=0&&(_=Math.min(_,N))}),_<1/0&&_>=0&&(E=e.substring(0,_+1))}if(g=this.tokenizer.inlineText(E)){e=e.substring(g.raw.length),g.raw.slice(-1)!=="_"&&(a=g.raw.slice(-1)),o=!0;let _=t.at(-1);(_==null?void 0:_.type)==="text"?(_.raw+=g.raw,_.text+=g.text):t.push(g);continue}if(e){let _="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(_);break}else throw new Error(_)}}return t}},Sa=class{constructor(n){b(this,"options");b(this,"parser");this.options=n||wr}space(n){return""}code({text:n,lang:e,escaped:t}){var s;let r=(s=(e||"").match(Ne.notSpaceStart))==null?void 0:s[0],i=n.replace(Ne.endingNewline,"")+`
402
+ `;return r?'<pre><code class="language-'+$t(r)+'">'+(t?i:$t(i,!0))+`</code></pre>
403
+ `:"<pre><code>"+(t?i:$t(i,!0))+`</code></pre>
404
+ `}blockquote({tokens:n}){return`<blockquote>
405
+ ${this.parser.parse(n)}</blockquote>
406
+ `}html({text:n}){return n}def(n){return""}heading({tokens:n,depth:e}){return`<h${e}>${this.parser.parseInline(n)}</h${e}>
407
+ `}hr(n){return`<hr>
408
+ `}list(n){let e=n.ordered,t=n.start,r="";for(let o=0;o<n.items.length;o++){let a=n.items[o];r+=this.listitem(a)}let i=e?"ol":"ul",s=e&&t!==1?' start="'+t+'"':"";return"<"+i+s+`>
409
+ `+r+"</"+i+`>
410
+ `}listitem(n){return`<li>${this.parser.parse(n.tokens)}</li>
411
+ `}checkbox({checked:n}){return"<input "+(n?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:n}){return`<p>${this.parser.parseInline(n)}</p>
412
+ `}table(n){let e="",t="";for(let i=0;i<n.header.length;i++)t+=this.tablecell(n.header[i]);e+=this.tablerow({text:t});let r="";for(let i=0;i<n.rows.length;i++){let s=n.rows[i];t="";for(let o=0;o<s.length;o++)t+=this.tablecell(s[o]);r+=this.tablerow({text:t})}return r&&(r=`<tbody>${r}</tbody>`),`<table>
413
+ <thead>
414
+ `+e+`</thead>
415
+ `+r+`</table>
416
+ `}tablerow({text:n}){return`<tr>
417
+ ${n}</tr>
418
+ `}tablecell(n){let e=this.parser.parseInline(n.tokens),t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+`</${t}>
419
+ `}strong({tokens:n}){return`<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return`<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return`<code>${$t(n,!0)}</code>`}br(n){return"<br>"}del({tokens:n}){return`<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:e,tokens:t}){let r=this.parser.parseInline(t),i=Nf(n);if(i===null)return r;n=i;let s='<a href="'+n+'"';return e&&(s+=' title="'+$t(e)+'"'),s+=">"+r+"</a>",s}image({href:n,title:e,text:t,tokens:r}){r&&(t=this.parser.parseInline(r,this.parser.textRenderer));let i=Nf(n);if(i===null)return $t(t);n=i;let s=`<img src="${n}" alt="${$t(t)}"`;return e&&(s+=` title="${$t(e)}"`),s+=">",s}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:$t(n.text)}},Sh=class{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return""+n}image({text:n}){return""+n}br(){return""}checkbox({raw:n}){return n}},bt=class fu{constructor(e){b(this,"options");b(this,"renderer");b(this,"textRenderer");this.options=e||wr,this.options.renderer=this.options.renderer||new Sa,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Sh}static parse(e,t){return new fu(t).parse(e)}static parseInline(e,t){return new fu(t).parseInline(e)}parse(e){var r,i;this.renderer.parser=this;let t="";for(let s=0;s<e.length;s++){let o=e[s];if((i=(r=this.options.extensions)==null?void 0:r.renderers)!=null&&i[o.type]){let c=o,u=this.options.extensions.renderers[c.type].call({parser:this},c);if(u!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(c.type)){t+=u||"";continue}}let a=o;switch(a.type){case"space":{t+=this.renderer.space(a);break}case"hr":{t+=this.renderer.hr(a);break}case"heading":{t+=this.renderer.heading(a);break}case"code":{t+=this.renderer.code(a);break}case"table":{t+=this.renderer.table(a);break}case"blockquote":{t+=this.renderer.blockquote(a);break}case"list":{t+=this.renderer.list(a);break}case"checkbox":{t+=this.renderer.checkbox(a);break}case"html":{t+=this.renderer.html(a);break}case"def":{t+=this.renderer.def(a);break}case"paragraph":{t+=this.renderer.paragraph(a);break}case"text":{t+=this.renderer.text(a);break}default:{let c='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}}return t}parseInline(e,t=this.renderer){var i,s;this.renderer.parser=this;let r="";for(let o=0;o<e.length;o++){let a=e[o];if((s=(i=this.options.extensions)==null?void 0:i.renderers)!=null&&s[a.type]){let u=this.options.extensions.renderers[a.type].call({parser:this},a);if(u!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(a.type)){r+=u||"";continue}}let c=a;switch(c.type){case"escape":{r+=t.text(c);break}case"html":{r+=t.html(c);break}case"link":{r+=t.link(c);break}case"image":{r+=t.image(c);break}case"checkbox":{r+=t.checkbox(c);break}case"strong":{r+=t.strong(c);break}case"em":{r+=t.em(c);break}case"codespan":{r+=t.codespan(c);break}case"br":{r+=t.br(c);break}case"del":{r+=t.del(c);break}case"text":{r+=t.text(c);break}default:{let u='Token with "'+c.type+'" type was not found.';if(this.options.silent)return console.error(u),"";throw new Error(u)}}}return r}},Uo,Ji=(Uo=class{constructor(n){b(this,"options");b(this,"block");this.options=n||wr}preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}emStrongMask(n){return n}provideLexer(){return this.block?yt.lex:yt.lexInline}provideParser(){return this.block?bt.parse:bt.parseInline}},b(Uo,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),b(Uo,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),Uo),qO=class{constructor(...n){b(this,"defaults",ph());b(this,"options",this.setOptions);b(this,"parse",this.parseMarkdown(!0));b(this,"parseInline",this.parseMarkdown(!1));b(this,"Parser",bt);b(this,"Renderer",Sa);b(this,"TextRenderer",Sh);b(this,"Lexer",yt);b(this,"Tokenizer",wa);b(this,"Hooks",Ji);this.use(...n)}walkTokens(n,e){var r,i;let t=[];for(let s of n)switch(t=t.concat(e.call(this,s)),s.type){case"table":{let o=s;for(let a of o.header)t=t.concat(this.walkTokens(a.tokens,e));for(let a of o.rows)for(let c of a)t=t.concat(this.walkTokens(c.tokens,e));break}case"list":{let o=s;t=t.concat(this.walkTokens(o.items,e));break}default:{let o=s;(i=(r=this.defaults.extensions)==null?void 0:r.childTokens)!=null&&i[o.type]?this.defaults.extensions.childTokens[o.type].forEach(a=>{let c=o[a].flat(1/0);t=t.concat(this.walkTokens(c,e))}):o.tokens&&(t=t.concat(this.walkTokens(o.tokens,e)))}}return t}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(t=>{let r={...t};if(r.async=this.defaults.async||r.async||!1,t.extensions&&(t.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let s=e.renderers[i.name];s?e.renderers[i.name]=function(...o){let a=i.renderer.apply(this,o);return a===!1&&(a=s.apply(this,o)),a}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=e[i.level];s?s.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),r.extensions=e),t.renderer){let i=this.defaults.renderer||new Sa(this.defaults);for(let s in t.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let o=s,a=t.renderer[o],c=i[o];i[o]=(...u)=>{let h=a.apply(i,u);return h===!1&&(h=c.apply(i,u)),h||""}}r.renderer=i}if(t.tokenizer){let i=this.defaults.tokenizer||new wa(this.defaults);for(let s in t.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let o=s,a=t.tokenizer[o],c=i[o];i[o]=(...u)=>{let h=a.apply(i,u);return h===!1&&(h=c.apply(i,u)),h}}r.tokenizer=i}if(t.hooks){let i=this.defaults.hooks||new Ji;for(let s in t.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let o=s,a=t.hooks[o],c=i[o];Ji.passThroughHooks.has(s)?i[o]=u=>{if(this.defaults.async&&Ji.passThroughHooksRespectAsync.has(s))return(async()=>{let p=await a.call(i,u);return c.call(i,p)})();let h=a.call(i,u);return c.call(i,h)}:i[o]=(...u)=>{if(this.defaults.async)return(async()=>{let p=await a.apply(i,u);return p===!1&&(p=await c.apply(i,u)),p})();let h=a.apply(i,u);return h===!1&&(h=c.apply(i,u)),h}}r.hooks=i}if(t.walkTokens){let i=this.defaults.walkTokens,s=t.walkTokens;r.walkTokens=function(o){let a=[];return a.push(s.call(this,o)),i&&(a=a.concat(i.call(this,o))),a}}this.defaults={...this.defaults,...r}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return yt.lex(n,e??this.defaults)}parser(n,e){return bt.parse(n,e??this.defaults)}parseMarkdown(n){return(e,t)=>{let r={...t},i={...this.defaults,...r},s=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return s(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return s(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=n),i.async)return(async()=>{let o=i.hooks?await i.hooks.preprocess(e):e,a=await(i.hooks?await i.hooks.provideLexer():n?yt.lex:yt.lexInline)(o,i),c=i.hooks?await i.hooks.processAllTokens(a):a;i.walkTokens&&await Promise.all(this.walkTokens(c,i.walkTokens));let u=await(i.hooks?await i.hooks.provideParser():n?bt.parse:bt.parseInline)(c,i);return i.hooks?await i.hooks.postprocess(u):u})().catch(s);try{i.hooks&&(e=i.hooks.preprocess(e));let o=(i.hooks?i.hooks.provideLexer():n?yt.lex:yt.lexInline)(e,i);i.hooks&&(o=i.hooks.processAllTokens(o)),i.walkTokens&&this.walkTokens(o,i.walkTokens);let a=(i.hooks?i.hooks.provideParser():n?bt.parse:bt.parseInline)(o,i);return i.hooks&&(a=i.hooks.postprocess(a)),a}catch(o){return s(o)}}}onError(n,e){return t=>{if(t.message+=`
420
+ Please report this to https://github.com/markedjs/marked.`,n){let r="<p>An error occurred:</p><pre>"+$t(t.message+"",!0)+"</pre>";return e?Promise.resolve(r):r}if(e)return Promise.reject(t);throw t}}},gr=new qO;function Q(n,e){return gr.parse(n,e)}Q.options=Q.setOptions=function(n){return gr.setOptions(n),Q.defaults=gr.defaults,Jy(Q.defaults),Q};Q.getDefaults=ph;Q.defaults=wr;Q.use=function(...n){return gr.use(...n),Q.defaults=gr.defaults,Jy(Q.defaults),Q};Q.walkTokens=function(n,e){return gr.walkTokens(n,e)};Q.parseInline=gr.parseInline;Q.Parser=bt;Q.parser=bt.parse;Q.Renderer=Sa;Q.TextRenderer=Sh;Q.Lexer=yt;Q.lexer=yt.lex;Q.Tokenizer=wa;Q.Hooks=Ji;Q.parse=Q;Q.options;Q.setOptions;Q.use;Q.walkTokens;Q.parseInline;bt.parse;yt.lex;Ky.addHook("afterSanitizeAttributes",n=>{n.tagName==="A"&&(n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"))});function YO(n){const e=Q.parse(n,{async:!1});return Ky.sanitize(e,{USE_PROFILES:{html:!0}})}const XO=8,Zf=new WeakMap;function KO(n){const e=Zf.get(n);if(e&&e.text===n.text)return e.html;const t=YO(n.text);return Zf.set(n,{text:n.text,html:t}),t}function JO(n){return n.replace(/_/g," ")}function QO(n){return U`
421
+ <div class="tool-call-header">
422
+ <span class="tool-call-title">${n.title}</span>
423
+ <span class="tool-call-meta">${n.toolKind} · ${JO(n.status)}</span>
424
+ </div>
425
+ ${n.text?U`<pre class="tool-call-text">${n.text}</pre>`:null}
426
+ `}function Hf(n){for(let e=n.length-1;e>=0;e-=1){const t=n[e];if(t&&t.kind==="user")return t.id}return null}var Xt,cr,Ua,Fa,Bs,gu;class lb extends cs{constructor(){super(...arguments);w(this,Bs);b(this,"messages",[]);w(this,Xt,!0);w(this,cr,null);w(this,Ua,()=>{const t=l(this,cr);if(!t)return;const i=t.scrollHeight-t.clientHeight-t.scrollTop<=XO;i!==l(this,Xt)&&(x(this,Xt,i),this.toggleAttribute("data-pinned",i))});w(this,Fa,()=>{x(this,Xt,!0),this.toggleAttribute("data-pinned",!0),m(this,Bs,gu).call(this,!0)})}changed(t){let r=!1;if(t.has("messages")){const i=t.get("messages")??[],s=Hf(this.messages);r=s!==null&&s!==Hf(i),r&&x(this,Xt,!0)}Re(this.template(),this),l(this,cr)||x(this,cr,this.querySelector(".history-scroll")),this.toggleAttribute("data-pinned",l(this,Xt)),m(this,Bs,gu).call(this,r)}template(){return U`
427
+ <div class="history-scroll" @scroll=${l(this,Ua)}>
428
+ ${this.messages.map(t=>{const r=t.kind==="assistant"?e2(KO(t)):t.kind==="tool_call"?QO(t):t.text;return U`<div
429
+ class="message message-${t.kind}"
430
+ data-message-id=${t.id}
431
+ >${r}</div>`})}
432
+ </div>
433
+ <button
434
+ type="button"
435
+ class="history-jump"
436
+ aria-label="Jump to latest message"
437
+ @click=${l(this,Fa)}
438
+ >
439
+ ${oy({size:16})}
440
+ </button>
441
+ `}}Xt=new WeakMap,cr=new WeakMap,Ua=new WeakMap,Fa=new WeakMap,Bs=new WeakSet,gu=function(t){requestAnimationFrame(()=>{const r=l(this,cr);r&&(!l(this,Xt)&&!t||(r.scrollTop=r.scrollHeight-r.clientHeight))})},b(lb,"properties",["messages"]);customElements.define("message-history",lb);var Vs,Gs,li,Za,Ha,st,ra,js,vu,yu,qs,Ys;class mu extends cs{constructor(){super(...arguments);w(this,st);b(this,"placeholder","What do you want to do?");b(this,"open",!1);b(this,"messages",[]);w(this,Vs,qe.resolve("ACPClientManager"));w(this,Gs,qe.resolve("ShortcutService"));w(this,li,null);b(this,"handleTriggerActivate",()=>{this.open=!0});b(this,"handleKeydown",t=>{if(t.key!=="Enter"||t.shiftKey)return;const r=t.currentTarget,i=r.value.trim();if(t.preventDefault(),!i)return;r.value="",m(this,st,ra).call(this,r);const s=l(this,Vs).getActiveClient();s&&s.sendMessage({text:i}).catch(o=>{console.error("ACPClient.sendMessage() failed",o)})});w(this,Za,t=>{m(this,st,ra).call(this,t.currentTarget)});w(this,Ha,t=>{if(t.target instanceof HTMLTextAreaElement)return;const r=t.currentTarget.querySelector("textarea");r==null||r.focus()});w(this,js,t=>{if(t.shortcut!=="focusCommandInput")return;if(!this.open){this.open=!0;return}const r=this.querySelector("textarea");if(r){if(document.activeElement===r){this.open=!1;return}r.focus()}});w(this,qs,t=>{t.target instanceof Node&&(this.contains(t.target)||(this.open=!1))});w(this,Ys,t=>{t.key==="Escape"&&(this.open=!1)})}connected(){const t=new DisposableStack;x(this,li,t);const r=FL(l(this,Vs),i=>{this.messages=i});t.defer(()=>r.dispose()),l(this,Gs).addEventListener("shortcut-triggered",l(this,js)),t.defer(()=>l(this,Gs).removeEventListener("shortcut-triggered",l(this,js))),this.open&&m(this,st,vu).call(this)}disconnected(){var t;(t=l(this,li))==null||t.dispose(),x(this,li,null),m(this,st,yu).call(this)}changed(t){if(this.open?(this.removeAttribute("material"),this.removeAttribute("tone"),this.removeAttribute("level")):(this.setAttribute("material","paper"),this.setAttribute("tone","dark"),this.setAttribute("level","overlay")),Re(this.template(),this),t.has("open"))if(this.open){m(this,st,vu).call(this);const r=this.querySelector("textarea");r&&(m(this,st,ra).call(this,r),r.focus())}else m(this,st,yu).call(this)}template(){return this.open?U`
442
+ ${this.messages.length>0?U`
443
+ <div
444
+ class="chat"
445
+ material="paper"
446
+ tone="dark"
447
+ level="overlay"
448
+ >
449
+ <message-history .messages=${this.messages}></message-history>
450
+ </div>
451
+ `:null}
452
+ <div
453
+ class="input"
454
+ material="paper"
455
+ tone="dark"
456
+ level="overlay"
457
+ @click=${l(this,Ha)}
458
+ >
459
+ <textarea
460
+ class="textarea"
461
+ rows="1"
462
+ @keydown=${this.handleKeydown}
463
+ @input=${l(this,Za)}
464
+ ></textarea>
465
+ </div>
466
+ `:U`
467
+ <div
468
+ class="trigger"
469
+ tabindex="0"
470
+ role="button"
471
+ @click=${this.handleTriggerActivate}
472
+ @focus=${this.handleTriggerActivate}
473
+ >
474
+ <span class="label">${this.placeholder}</span>
475
+ <span class="kbd" aria-hidden="true">⌘K</span>
476
+ </div>
477
+ `}}Vs=new WeakMap,Gs=new WeakMap,li=new WeakMap,Za=new WeakMap,Ha=new WeakMap,st=new WeakSet,ra=function(t){t.style.height="auto",t.style.height=`${t.scrollHeight}px`},js=new WeakMap,vu=function(){document.addEventListener("mousedown",l(this,qs)),document.addEventListener("keydown",l(this,Ys))},yu=function(){document.removeEventListener("mousedown",l(this,qs)),document.removeEventListener("keydown",l(this,Ys))},qs=new WeakMap,Ys=new WeakMap,b(mu,"properties",["placeholder","open","messages"]),b(mu,"attributes",{placeholder:{type:String},open:{type:Boolean}});customElements.define("command-panel",mu);class cb extends Event{constructor(t){super("auth-submit",{bubbles:!0,composed:!0});b(this,"token");this.token=t}}class eM extends HTMLElement{constructor(){super(...arguments);b(this,"_invalid",!1);b(this,"_tokenValue","")}set invalid(t){this._invalid=t,this.render()}get invalid(){return this._invalid}set tokenValue(t){this._tokenValue=t,this.render()}get tokenValue(){return this._tokenValue}connectedCallback(){this.render()}handleInput(t){const r=t.currentTarget;this._tokenValue=r.value}handleSubmit(t){t.preventDefault();const r=this._tokenValue.trim();r&&this.dispatchEvent(new cb(r))}render(){Re(U`
478
+ <modal-overlay open>
479
+ <section class="auth-modal">
480
+ <form class="auth-form" @submit=${t=>this.handleSubmit(t)}>
481
+ <h2 class="auth-modal-title">Enter access token</h2>
482
+ <p class="auth-modal-copy">This Television server requires a token.</p>
483
+ <label class="settings-field">
484
+ <span>Token</span>
485
+ <input
486
+ class=${this.invalid?"auth-token-input-invalid":""}
487
+ type="password"
488
+ name="token"
489
+ .value=${this.tokenValue}
490
+ @input=${t=>this.handleInput(t)}
491
+ required
492
+ />
493
+ </label>
494
+ <button type="submit" class="settings-submit-button">Connect</button>
495
+ </form>
496
+ </section>
497
+ </modal-overlay>
498
+ `,this)}}customElements.get("auth-modal")||customElements.define("auth-modal",eM);class tM extends HTMLElement{constructor(){super(...arguments);b(this,"runtimeServerURL",Bv());b(this,"electronMode",sh());b(this,"serverManager",qe.resolve("ServerManager"));b(this,"screenManager",qe.resolve("ScreenManager"));b(this,"connectError",null);b(this,"handleServerManagerChange",()=>{this.render()});b(this,"handleActiveScreenChanged",()=>{this.render()})}connectedCallback(){this.serverManager.addEventListener("change",this.handleServerManagerChange),this.screenManager.addEventListener("active-screen-changed",this.handleActiveScreenChanged),this.addEventListener("auth-submit",t=>{var i;const r=t instanceof cb?t.token:t instanceof CustomEvent&&typeof((i=t.detail)==null?void 0:i.token)=="string"?t.detail.token:null;r&&this.handleAuthSubmit(r)}),this.initializeConnection(),this.render()}disconnectedCallback(){this.serverManager.removeEventListener("change",this.handleServerManagerChange),this.screenManager.removeEventListener("active-screen-changed",this.handleActiveScreenChanged)}async initializeConnection(){if(this.electronMode){this.serverManager.connectConfiguredServers(this.runtimeServerURL,Wc());return}if(this.serverManager.activeServer)return;const t=new Oc({url:this.runtimeServerURL,name:"Server",token:Wc()});this.serverManager.add(t),this.serverManager.setActive(t);try{await t.connect(),this.connectError=null}catch(r){this.connectError=r instanceof Error&&!(r instanceof Lc)?r.message:null}this.render()}async handleAuthSubmit(t){const r=this.serverManager.activeServer;if(r){this.connectError=null,r.token=t,this.updateTokenQueryParam(t);try{await r.connect()}catch(i){i instanceof Lc||(this.connectError=i instanceof Error?i.message:String(i))}this.render()}}updateTokenQueryParam(t){const r=new URL(window.location.href);r.searchParams.set("token",t),window.history.replaceState({},"",`${r.pathname}${r.search}${r.hash}`)}render(){const t=this.serverManager.activeServer,r=(t==null?void 0:t.status)??null;if(r==="connecting"){Re(U`
499
+ <main class="auth-gate"><p>Connecting...</p></main>
500
+ `,this);return}if(r==="disconnected"){const o=t;if(!o)return;Re(U`
501
+ <main class="auth-gate">
502
+ <auth-modal
503
+ .invalid=${!!o.token}
504
+ .tokenValue=${o.token??""}
505
+ ></auth-modal>
506
+ </main>
507
+ `,this);return}const s=this.screenManager.activeScreen?U`<screen-view></screen-view>`:U`<home-screen></home-screen>`;Re(U`
508
+ <main>
509
+ ${this.connectError?U`<p data-testid="auth-error">${this.connectError}</p>`:U`
510
+ ${s}
511
+ ${r==="connected"?U`
512
+ <div class="chrome">
513
+ <div class="top-row electron-draggable">
514
+ <screen-breadcrumb></screen-breadcrumb>
515
+ <screen-create-button></screen-create-button>
516
+ </div>
517
+ <command-panel></command-panel>
518
+ </div>
519
+ `:null}
520
+ `}
521
+ </main>
522
+ `,this)}}customElements.get("television-app")||customElements.define("television-app",tM);const _h=sh(),ll=Bv(),ub=new Wx(_h?"television-electron":"television-browser",Hx(ll)),hb=new MI({localStore:ub,localServerURL:ll}),db=new Ux({localStore:ub,serverManager:hb}),nM=new bD({serverURL:ll,token:Wc()??"",screenManager:db}),rM=new xD;qe.register("ServerManager",()=>hb);qe.register("ScreenManager",()=>db);qe.register("ACPClientManager",()=>nM);qe.register("ShortcutService",()=>rM);const kh=document.createElement("television-app");kh.runtimeServerURL=ll;kh.electronMode=_h;_h&&document.body.classList.add("electron");document.body.appendChild(kh);