seroval 1.5.4 → 1.5.5
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.
- package/dist/cjs/development/index.cjs +52 -29
- package/dist/cjs/development/index.cjs.map +3 -3
- package/dist/cjs/production/index.cjs +3 -3
- package/dist/esm/development/index.mjs +52 -29
- package/dist/esm/development/index.mjs.map +3 -3
- package/dist/esm/production/index.mjs +3 -3
- package/dist/types/core/context/deserializer.d.ts.map +1 -1
- package/dist/types/core/context/serializer.d.ts +9 -2
- package/dist/types/core/context/serializer.d.ts.map +1 -1
- package/dist/types/core/context/sync-parser.d.ts +2 -0
- package/dist/types/core/context/sync-parser.d.ts.map +1 -1
- package/dist/types/core/utils/valid-properties.d.ts +3 -0
- package/dist/types/core/utils/valid-properties.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/core/base-primitives.ts +1 -1
- package/src/core/context/deserializer.ts +1 -34
- package/src/core/context/serializer.ts +44 -4
- package/src/core/context/sync-parser.ts +11 -0
- package/src/core/utils/valid-properties.ts +34 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var M=(i=>(i[i.AggregateError=1]="AggregateError",i[i.ArrowFunction=2]="ArrowFunction",i[i.ErrorPrototypeStack=4]="ErrorPrototypeStack",i[i.ObjectAssign=8]="ObjectAssign",i[i.BigIntTypedArray=16]="BigIntTypedArray",i[i.RegExp=32]="RegExp",i))(M||{});var v=Symbol.asyncIterator,
|
|
2
|
-
`:return"\\n";case"\r":return"\\r";case"\b":return"\\b";case" ":return"\\t";case"\f":return"\\f";case"<":return"\\x3C";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:return o}}function y(e){let r="",t=0,n;for(let a=0,s=e.length;a<s;a++)n=
|
|
3
|
-
`;case"\\r":return"\r";case"\\b":return"\b";case"\\t":return" ";case"\\f":return"\f";case"\\x3C":return"<";case"\\u2028":return"\u2028";case"\\u2029":return"\u2029";default:return e}}function D(e){return e.replace(/(\\\\|\\"|\\n|\\r|\\b|\\t|\\f|\\u2028|\\u2029|\\x3C)/g,pn)}var L="__SEROVAL_REFS__",le="$R",Ie=`self.${le}`;function dn(e){return e==null?`${Ie}=${Ie}||[]`:`(${Ie}=${Ie}||{})["${y(e)}"]=[]`}var Er=new Map,U=new Map;function gn(e,r){return Er.set(r,e),U.set(e,r),r}function Ir(e){return Er.has(e)}function yn(e){return U.has(e)}function ft(e){if(Ir(e))return Er.get(e);throw new Re(e)}function St(e){if(yn(e))return U.get(e);throw new Pe(e)}typeof globalThis!="undefined"?Object.defineProperty(globalThis,L,{value:U,configurable:!0,writable:!1,enumerable:!1}):typeof window!="undefined"?Object.defineProperty(window,L,{value:U,configurable:!0,writable:!1,enumerable:!1}):typeof self!="undefined"?Object.defineProperty(self,L,{value:U,configurable:!0,writable:!1,enumerable:!1}):typeof global!="undefined"&&Object.defineProperty(global,L,{value:U,configurable:!0,writable:!1,enumerable:!1});function xe(e){return e instanceof EvalError?1:e instanceof RangeError?2:e instanceof ReferenceError?3:e instanceof SyntaxError?4:e instanceof TypeError?5:e instanceof URIError?6:0}function Nn(e){let r=Ce[xe(e)];return e.name!==r?{name:e.name}:e.constructor.name!==r?{name:e.constructor.name}:{}}function Z(e,r){let t=Nn(e),n=Object.getOwnPropertyNames(e);for(let a=0,s=n.length,i;a<s;a++)i=n[a],i!=="name"&&i!=="message"&&(i==="stack"?r&4&&(t=t||{},t[i]=e[i]):(t=t||{},t[i]=e[i]));return t}function Te(e){return Object.isFrozen(e)?3:Object.isSealed(e)?2:Object.isExtensible(e)?0:1}function Oe(e){switch(e){case Number.POSITIVE_INFINITY:return ut;case Number.NEGATIVE_INFINITY:return lt}return e!==e?ct:Object.is(e,-0)?it:c(0,o,e,o,o,o,o,o,o,o,o,o)}function $(e){return c(1,o,y(e),o,o,o,o,o,o,o,o,o)}function we(e){return c(3,o,""+e,o,o,o,o,o,o,o,o,o)}function pt(e){return c(4,e,o,o,o,o,o,o,o,o,o,o)}function he(e,r){let t=r.valueOf();return c(5,e,t!==t?"":r.toISOString(),o,o,o,o,o,o,o,o,o)}function ze(e,r){return c(6,e,o,y(r.source),r.flags,o,o,o,o,o,o,o)}function dt(e,r){return c(17,e,ve[r],o,o,o,o,o,o,o,o,o)}function gt(e,r){return c(18,e,y(ft(r)),o,o,o,o,o,o,o,o,o)}function ce(e,r,t){return c(25,e,t,y(r),o,o,o,o,o,o,o,o)}function _e(e,r,t){return c(9,e,o,o,o,o,o,t,o,o,Te(r),o)}function ke(e,r){return c(21,e,o,o,o,o,o,o,r,o,o,o)}function De(e,r,t){return c(15,e,o,r.constructor.name,o,o,o,o,t,r.byteOffset,o,r.length)}function Fe(e,r,t){return c(16,e,o,r.constructor.name,o,o,o,o,t,r.byteOffset,o,r.byteLength)}function Be(e,r,t){return c(20,e,o,o,o,o,o,o,t,r.byteOffset,o,r.byteLength)}function Ve(e,r,t){return c(13,e,xe(r),o,y(r.message),t,o,o,o,o,o,o)}function Me(e,r,t){return c(14,e,xe(r),o,y(r.message),t,o,o,o,o,o,o)}function Le(e,r){return c(7,e,o,o,o,o,o,r,o,o,o,o)}function Ue(e,r){return c(28,o,o,o,o,o,o,[e,r],o,o,o,o)}function je(e,r){return c(30,o,o,o,o,o,o,[e,r],o,o,o,o)}function Ye(e,r,t){return c(31,e,o,o,o,o,o,t,r,o,o,o)}function qe(e,r){return c(32,e,o,o,o,o,o,o,r,o,o,o)}function We(e,r){return c(33,e,o,o,o,o,o,o,r,o,o,o)}function Ge(e,r){return c(34,e,o,o,o,o,o,o,r,o,o,o)}function Ke(e,r,t,n){return c(35,e,t,o,o,o,o,r,o,o,o,n)}var{toString:bs}=Object.prototype;var bn={parsing:1,serialization:2,deserialization:3};function vn(e){return`Seroval Error (step: ${bn[e]})`}var Cn=(e,r)=>vn(e),fe=class extends Error{constructor(t,n){super(Cn(t,n));this.cause=n}},z=class extends fe{constructor(r){super("parsing",r)}},Rr=class extends fe{constructor(r){super("serialization",r)}},He=class extends fe{constructor(r){super("deserialization",r)}};function _(e){return`Seroval Error (specific: ${e})`}var x=class extends Error{constructor(t){super(_(1));this.value=t}},h=class extends Error{constructor(r){super(_(2))}},X=class extends Error{constructor(r){super(_(3))}},V=class extends Error{constructor(r){super(_(4))}},Re=class extends Error{constructor(t){super(_(5));this.value=t}},Pe=class extends Error{constructor(r){super(_(6))}},Je=class extends Error{constructor(r){super(_(7))}},O=class extends Error{constructor(r){super(_(8))}},yt=class extends Error{constructor(r){super(_(9))}},Q=class extends Error{constructor(r){super(_(9))}};var j=class{constructor(r,t){this.value=r;this.replacement=t}};var ee=()=>{let e={p:0,s:0,f:0};return e.p=new Promise((r,t)=>{e.s=r,e.f=t}),e},An=(e,r)=>{e.s(r),e.p.s=1,e.p.v=r},En=(e,r)=>{e.f(r),e.p.s=2,e.p.v=r},Nt=ee.toString(),bt=An.toString(),vt=En.toString(),Pr=()=>{let e=[],r=[],t=!0,n=!1,a=0,s=(l,g,S)=>{for(S=0;S<a;S++)r[S]&&r[S][g](l)},i=(l,g,S,d)=>{for(g=0,S=e.length;g<S;g++)d=e[g],!t&&g===S-1?l[n?"return":"throw"](d):l.next(d)},u=(l,g)=>(t&&(g=a++,r[g]=l),i(l),()=>{t&&(r[g]=r[a],r[a--]=void 0)});return{__SEROVAL_STREAM__:!0,on:l=>u(l),next:l=>{t&&(e.push(l),s(l,"next"))},throw:l=>{t&&(e.push(l),s(l,"throw"),t=!1,n=!1,r.length=0)},return:l=>{t&&(e.push(l),s(l,"return"),t=!1,n=!0,r.length=0)}}},Ct=Pr.toString(),xr=e=>r=>()=>{let t=0,n={[e]:()=>n,next:()=>{if(t>r.d)return{done:!0,value:void 0};let a=t++,s=r.v[a];if(a===r.t)throw s;return{done:a===r.d,value:s}}};return n},At=xr.toString(),Tr=(e,r)=>t=>()=>{let n=0,a=-1,s=!1,i=[],u=[],l=(S=0,d=u.length)=>{for(;S<d;S++)u[S].s({done:!0,value:void 0})};t.on({next:S=>{let d=u.shift();d&&d.s({done:!1,value:S}),i.push(S)},throw:S=>{let d=u.shift();d&&d.f(S),l(),a=i.length,s=!0,i.push(S)},return:S=>{let d=u.shift();d&&d.s({done:!0,value:S}),l(),a=i.length,i.push(S)}});let g={[e]:()=>g,next:()=>{if(a===-1){let G=n++;if(G>=i.length){let rt=r();return u.push(rt),rt.p}return{done:!1,value:i[G]}}if(n>a)return{done:!0,value:void 0};let S=n++,d=i[S];if(S!==a)return{done:!1,value:d};if(s)throw d;return{done:!0,value:d}}};return g},Et=Tr.toString(),Or=e=>{let r=atob(e),t=r.length,n=new Uint8Array(t);for(let a=0;a<t;a++)n[a]=r.charCodeAt(a);return n.buffer},It=Or.toString();function Ze(e){return"__SEROVAL_SEQUENCE__"in e}function wr(e,r,t){return{__SEROVAL_SEQUENCE__:!0,v:e,t:r,d:t}}function $e(e){let r=[],t=-1,n=-1,a=e[C]();for(;;)try{let s=a.next();if(r.push(s.value),s.done){n=r.length-1;break}}catch(s){t=r.length,r.push(s)}return wr(r,t,n)}var In=xr(C);function Rt(e){return In(e)}var Pt={},xt={};var Tt={0:{},1:{},2:{},3:{},4:{},5:{}},Ot={0:"[]",1:Nt,2:bt,3:vt,4:Ct,5:It};function Xe(e){return"__SEROVAL_STREAM__"in e}function re(){return Pr()}function Qe(e){let r=re(),t=e[v]();async function n(){try{let a=await t.next();a.done?r.return(a.value):(r.next(a.value),await n())}catch(a){r.throw(a)}}return n().catch(()=>{}),r}var Rn=Tr(v,ee);function wt(e){return Rn(e)}async function hr(e){try{return[1,await e]}catch(r){return[0,r]}}function me(e,r){return{plugins:r.plugins,mode:e,marked:new Set,features:63^(r.disabledFeatures||0),refs:r.refs||new Map,depthLimit:r.depthLimit||1e3}}function pe(e,r){e.marked.add(r)}function zr(e,r){let t=e.refs.size;return e.refs.set(r,t),t}function er(e,r){let t=e.refs.get(r);return t!=null?(pe(e,t),{type:1,value:pt(t)}):{type:0,value:zr(e,r)}}function Y(e,r){let t=er(e,r);return t.type===1?t:Ir(r)?{type:2,value:gt(t.value,r)}:t}function I(e,r){let t=Y(e,r);if(t.type!==0)return t.value;if(r in ve)return dt(t.value,r);throw new x(r)}function k(e,r){let t=er(e,Tt[r]);return t.type===1?t.value:c(26,t.value,r,o,o,o,o,o,o,o,o,o)}function rr(e){let r=er(e,Pt);return r.type===1?r.value:c(27,r.value,o,o,o,o,o,o,I(e,C),o,o,o)}function tr(e){let r=er(e,xt);return r.type===1?r.value:c(29,r.value,o,o,o,o,o,[k(e,1),I(e,v)],o,o,o,o)}function nr(e,r,t,n){return c(t?11:10,e,o,o,o,n,o,o,o,o,Te(r),o)}function or(e,r,t,n){return c(8,r,o,o,o,o,{k:t,v:n},o,k(e,0),o,o,o)}function zt(e,r,t){return c(22,r,t,o,o,o,o,o,k(e,1),o,o,o)}function ar(e,r,t){let n=new Uint8Array(t),a="";for(let s=0,i=n.length;s<i;s++)a+=String.fromCharCode(n[s]);return c(19,r,y(btoa(a)),o,o,o,o,o,k(e,5),o,o,o)}function te(e,r){return{base:me(e,r),child:void 0}}var kr=class{constructor(r,t){this._p=r;this.depth=t}parse(r){return N(this._p,this.depth,r)}};async function xn(e,r,t){let n=[];for(let a=0,s=t.length;a<s;a++)a in t?n[a]=await N(e,r,t[a]):n[a]=0;return n}async function Tn(e,r,t,n){return _e(t,n,await xn(e,r,n))}async function Dr(e,r,t){let n=Object.entries(t),a=[],s=[];for(let i=0,u=n.length;i<u;i++)a.push(y(n[i][0])),s.push(await N(e,r,n[i][1]));return C in t&&(a.push(I(e.base,C)),s.push(Ue(rr(e.base),await N(e,r,$e(t))))),v in t&&(a.push(I(e.base,v)),s.push(je(tr(e.base),await N(e,r,Qe(t))))),P in t&&(a.push(I(e.base,P)),s.push($(t[P]))),R in t&&(a.push(I(e.base,R)),s.push(t[R]?H:J)),{k:a,v:s}}async function _r(e,r,t,n,a){return nr(t,n,a,await Dr(e,r,n))}async function On(e,r,t,n){return ke(t,await N(e,r,n.valueOf()))}async function wn(e,r,t,n){return De(t,n,await N(e,r,n.buffer))}async function hn(e,r,t,n){return Fe(t,n,await N(e,r,n.buffer))}async function zn(e,r,t,n){return Be(t,n,await N(e,r,n.buffer))}async function _t(e,r,t,n){let a=Z(n,e.base.features);return Ve(t,n,a?await Dr(e,r,a):o)}async function _n(e,r,t,n){let a=Z(n,e.base.features);return Me(t,n,a?await Dr(e,r,a):o)}async function kn(e,r,t,n){let a=[],s=[];for(let[i,u]of n.entries())a.push(await N(e,r,i)),s.push(await N(e,r,u));return or(e.base,t,a,s)}async function Dn(e,r,t,n){let a=[];for(let s of n.keys())a.push(await N(e,r,s));return Le(t,a)}async function kt(e,r,t,n){let a=e.base.plugins;if(a)for(let s=0,i=a.length;s<i;s++){let u=a[s];if(u.parse.async&&u.test(n))return ce(t,u.tag,await u.parse.async(n,new kr(e,r),{id:t}))}return o}async function Fn(e,r,t,n){let[a,s]=await hr(n);return c(12,t,a,o,o,o,o,o,await N(e,r,s),o,o,o)}function Bn(e,r,t,n,a){let s=[],i=t.on({next:u=>{pe(this.base,r),N(this,e,u).then(l=>{s.push(qe(r,l))},l=>{a(l),i()})},throw:u=>{pe(this.base,r),N(this,e,u).then(l=>{s.push(We(r,l)),n(s),i()},l=>{a(l),i()})},return:u=>{pe(this.base,r),N(this,e,u).then(l=>{s.push(Ge(r,l)),n(s),i()},l=>{a(l),i()})}})}async function Vn(e,r,t,n){return Ye(t,k(e.base,4),await new Promise(Bn.bind(e,r,t,n)))}async function Mn(e,r,t,n){let a=[];for(let s=0,i=n.v.length;s<i;s++)a[s]=await N(e,r,n.v[s]);return Ke(t,a,n.t,n.d)}async function Ln(e,r,t,n){if(Array.isArray(n))return Tn(e,r,t,n);if(Xe(n))return Vn(e,r,t,n);if(Ze(n))return Mn(e,r,t,n);let a=n.constructor;if(a===j)return N(e,r,n.replacement);let s=await kt(e,r,t,n);if(s)return s;switch(a){case Object:return _r(e,r,t,n,!1);case o:return _r(e,r,t,n,!0);case Date:return he(t,n);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return _t(e,r,t,n);case Number:case Boolean:case String:case BigInt:return On(e,r,t,n);case ArrayBuffer:return ar(e.base,t,n);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return wn(e,r,t,n);case DataView:return zn(e,r,t,n);case Map:return kn(e,r,t,n);case Set:return Dn(e,r,t,n);default:break}if(a===Promise||n instanceof Promise)return Fn(e,r,t,n);let i=e.base.features;if(i&32&&a===RegExp)return ze(t,n);if(i&16)switch(a){case BigInt64Array:case BigUint64Array:return hn(e,r,t,n);default:break}if(i&1&&typeof AggregateError!="undefined"&&(a===AggregateError||n instanceof AggregateError))return _n(e,r,t,n);if(n instanceof Error)return _t(e,r,t,n);if(C in n||v in n)return _r(e,r,t,n,!!a);throw new x(n)}async function Un(e,r,t){let n=Y(e.base,t);if(n.type!==0)return n.value;let a=await kt(e,r,n.value,t);if(a)return a;throw new x(t)}async function N(e,r,t){switch(typeof t){case"boolean":return t?H:J;case"undefined":return Ae;case"string":return $(t);case"number":return Oe(t);case"bigint":return we(t);case"object":{if(t){let n=Y(e.base,t);return n.type===0?await Ln(e,r+1,n.value,t):n.value}return Ee}case"symbol":return I(e.base,t);case"function":return Un(e,r,t);default:throw new x(t)}}async function ne(e,r){try{return await N(e,0,r)}catch(t){throw t instanceof z?t:new z(t)}}var oe=(t=>(t[t.Vanilla=1]="Vanilla",t[t.Cross=2]="Cross",t))(oe||{});function ai(e){return e}function Dt(e,r){for(let t=0,n=r.length;t<n;t++){let a=r[t];e.has(a)||(e.add(a),a.extends&&Dt(e,a.extends))}}function A(e){if(e){let r=new Set;return Dt(r,e),[...r]}}function Ft(e){switch(e){case"Int8Array":return Int8Array;case"Int16Array":return Int16Array;case"Int32Array":return Int32Array;case"Uint8Array":return Uint8Array;case"Uint16Array":return Uint16Array;case"Uint32Array":return Uint32Array;case"Uint8ClampedArray":return Uint8ClampedArray;case"Float32Array":return Float32Array;case"Float64Array":return Float64Array;case"BigInt64Array":return BigInt64Array;case"BigUint64Array":return BigUint64Array;default:throw new Je(e)}}var jn=1e6,Yn=1e4,qn=2e4;function Vt(e,r){switch(r){case 3:return Object.freeze(e);case 1:return Object.preventExtensions(e);case 2:return Object.seal(e);default:return e}}var Wn=1e3;function Mt(e,r){var n;let t=r.refs||new Map;return"types"in t||Object.assign(t,{types:new Map}),{mode:e,plugins:r.plugins,refs:t,features:(n=r.features)!=null?n:63^(r.disabledFeatures||0),depthLimit:r.depthLimit||Wn}}function Lt(e){return{mode:1,base:Mt(1,e),child:o,state:{marked:new Set(e.markedRefs)}}}function Ut(e){return{mode:2,base:Mt(2,e),child:o}}var Fr=class{constructor(r,t){this._p=r;this.depth=t}deserialize(r){return p(this._p,this.depth,r)}};function jt(e,r){if(r<0||!Number.isFinite(r)||!Number.isInteger(r))throw new O({t:4,i:r});if(e.refs.has(r))throw new Error("Conflicted ref id: "+r)}function Gn(e,r,t){return jt(e.base,r),e.state.marked.has(r)&&e.base.refs.set(r,t),t}function Kn(e,r,t){return jt(e.base,r),e.base.refs.set(r,t),t}function b(e,r,t){return e.mode===1?Gn(e,r,t):Kn(e,r,t)}function Br(e,r,t){if(Object.hasOwn(r,t))return r[t];throw new O(e)}function Hn(e,r){return b(e,r.i,St(D(r.s)))}function Jn(e,r,t){let n=t.a,a=n.length,s=b(e,t.i,new Array(a));for(let i=0,u;i<a;i++)u=n[i],u&&(s[i]=p(e,r,u));return Vt(s,t.o),s}function Zn(e){switch(e){case"constructor":case"__proto__":case"prototype":case"__defineGetter__":case"__defineSetter__":case"__lookupGetter__":case"__lookupSetter__":return!1;default:return!0}}function $n(e){switch(e){case v:case R:case P:case C:return!0;default:return!1}}function Bt(e,r,t){Zn(r)?e[r]=t:Object.defineProperty(e,r,{value:t,configurable:!0,enumerable:!0,writable:!0})}function Xn(e,r,t,n,a){if(typeof n=="string")Bt(t,D(n),p(e,r,a));else{let s=p(e,r,n);switch(typeof s){case"string":Bt(t,s,p(e,r,a));break;case"symbol":$n(s)&&(t[s]=p(e,r,a));break;default:throw new O(n)}}}function Yt(e,r,t){e.base.refs.types.set(r,t)}function de(e,r,t,n){if(e.base.refs.types.get(t)!==n)throw new O(r)}function qt(e,r,t,n){let a=t.k;if(a.length>0)for(let i=0,u=t.v,l=a.length;i<l;i++)Xn(e,r,n,a[i],u[i]);return n}function Qn(e,r,t){let n=b(e,t.i,t.t===10?{}:Object.create(null));return qt(e,r,t.p,n),Vt(n,t.o),n}function eo(e,r){return b(e,r.i,new Date(r.s))}function ro(e,r){if(e.base.features&32){let t=D(r.c);if(t.length>qn)throw new O(r);return b(e,r.i,new RegExp(t,r.m))}throw new h(r)}function to(e,r,t){let n=b(e,t.i,new Set);for(let a=0,s=t.a,i=s.length;a<i;a++)n.add(p(e,r,s[a]));return n}function no(e,r,t){let n=b(e,t.i,new Map);for(let a=0,s=t.e.k,i=t.e.v,u=s.length;a<u;a++)n.set(p(e,r,s[a]),p(e,r,i[a]));return n}function oo(e,r){if(r.s.length>jn)throw new O(r);return b(e,r.i,Or(D(r.s)))}function ao(e,r,t){var u;let n=Ft(t.c),a=p(e,r,t.f),s=(u=t.b)!=null?u:0;if(s<0||s>a.byteLength)throw new O(t);return b(e,t.i,new n(a,s,t.l))}function so(e,r,t){var i;let n=p(e,r,t.f),a=(i=t.b)!=null?i:0;if(a<0||a>n.byteLength)throw new O(t);return b(e,t.i,new DataView(n,a,t.l))}function Wt(e,r,t,n){if(t.p){let a=qt(e,r,t.p,{});Object.defineProperties(n,Object.getOwnPropertyDescriptors(a))}return n}function io(e,r,t){let n=b(e,t.i,new AggregateError([],D(t.m)));return Wt(e,r,t,n)}function uo(e,r,t){let n=Br(t,st,t.s),a=b(e,t.i,new n(D(t.m)));return Wt(e,r,t,a)}function lo(e,r,t){let n=ee(),a=b(e,t.i,n.p),s=p(e,r,t.f);return t.s?n.s(s):n.f(s),a}function co(e,r,t){return b(e,t.i,Object(p(e,r,t.f)))}function fo(e,r,t){let n=e.base.plugins;if(n){let a=D(t.c);for(let s=0,i=n.length;s<i;s++){let u=n[s];if(u.tag===a)return b(e,t.i,u.deserialize(t.s,new Fr(e,r),{id:t.i}))}}throw new X(t.c)}function So(e,r){let t=b(e,r.i,b(e,r.s,ee()).p);return Yt(e,r.s,22),t}function mo(e,r,t){let n=e.base.refs.get(t.i);if(n)return de(e,t,t.i,22),n.s(p(e,r,t.a[1])),o;throw new V("Promise")}function po(e,r,t){let n=e.base.refs.get(t.i);if(n)return de(e,t,t.i,22),n.f(p(e,r,t.a[1])),o;throw new V("Promise")}function go(e,r,t){p(e,r,t.a[0]);let n=p(e,r,t.a[1]);return Rt(n)}function yo(e,r,t){p(e,r,t.a[0]);let n=p(e,r,t.a[1]);return wt(n)}function No(e,r,t){let n=b(e,t.i,re());Yt(e,t.i,31);let a=t.a,s=a.length;if(s)for(let i=0;i<s;i++)p(e,r,a[i]);return n}function bo(e,r,t){let n=e.base.refs.get(t.i);if(n)return de(e,t,t.i,31),n.next(p(e,r,t.f)),o;throw new V("Stream")}function vo(e,r,t){let n=e.base.refs.get(t.i);if(n)return de(e,t,t.i,31),n.throw(p(e,r,t.f)),o;throw new V("Stream")}function Co(e,r,t){let n=e.base.refs.get(t.i);if(n)return de(e,t,t.i,31),n.return(p(e,r,t.f)),o;throw new V("Stream")}function Ao(e,r,t){return p(e,r,t.f),o}function Eo(e,r,t){return p(e,r,t.a[1]),o}function Io(e,r,t){let n=b(e,t.i,wr([],t.s,t.l));for(let a=0,s=t.a.length;a<s;a++)n.v[a]=p(e,r,t.a[a]);return n}function p(e,r,t){if(r>e.base.depthLimit)throw new Q(e.base.depthLimit);switch(r+=1,t.t){case 2:return Br(t,at,t.s);case 0:return Number(t.s);case 1:return D(String(t.s));case 3:if(String(t.s).length>Yn)throw new O(t);return BigInt(t.s);case 4:return e.base.refs.get(t.i);case 18:return Hn(e,t);case 9:return Jn(e,r,t);case 10:case 11:return Qn(e,r,t);case 5:return eo(e,t);case 6:return ro(e,t);case 7:return to(e,r,t);case 8:return no(e,r,t);case 19:return oo(e,t);case 16:case 15:return ao(e,r,t);case 20:return so(e,r,t);case 14:return io(e,r,t);case 13:return uo(e,r,t);case 12:return lo(e,r,t);case 17:return Br(t,nt,t.s);case 21:return co(e,r,t);case 25:return fo(e,r,t);case 22:return So(e,t);case 23:return mo(e,r,t);case 24:return po(e,r,t);case 28:return go(e,r,t);case 30:return yo(e,r,t);case 31:return No(e,r,t);case 32:return bo(e,r,t);case 33:return vo(e,r,t);case 34:return Co(e,r,t);case 27:return Ao(e,r,t);case 29:return Eo(e,r,t);case 35:return Io(e,r,t);default:throw new h(t)}}function sr(e,r){try{return p(e,0,r)}catch(t){throw new He(t)}}var Ro=()=>T,Po=Ro.toString(),Gt=/=>/.test(Po);function ir(e,r){return Gt?(e.length===1?e[0]:"("+e.join(",")+")")+"=>"+(r.startsWith("{")?"("+r+")":r):"function("+e.join(",")+"){return "+r+"}"}function Kt(e,r){return Gt?(e.length===1?e[0]:"("+e.join(",")+")")+"=>{"+r+"}":"function("+e.join(",")+"){"+r+"}"}var Zt="hjkmoquxzABCDEFGHIJKLNPQRTUVWXYZ$_",Ht=Zt.length,$t="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_",Jt=$t.length;function Vr(e){let r=e%Ht,t=Zt[r];for(e=(e-r)/Ht;e>0;)r=e%Jt,t+=$t[r],e=(e-r)/Jt;return t}var xo=/^[$A-Z_][0-9A-Z_$]*$/i;function Mr(e){let r=e[0];return(r==="$"||r==="_"||r>="A"&&r<="Z"||r>="a"&&r<="z")&&xo.test(e)}function ye(e){switch(e.t){case 0:return e.s+"="+e.v;case 2:return e.s+".set("+e.k+","+e.v+")";case 1:return e.s+".add("+e.v+")";case 3:return e.s+".delete("+e.k+")"}}function To(e){let r=[],t=e[0];for(let n=1,a=e.length,s,i=t;n<a;n++)s=e[n],s.t===0&&s.v===i.v?t={t:0,s:s.s,k:o,v:ye(t)}:s.t===2&&s.s===i.s?t={t:2,s:ye(t),k:s.k,v:s.v}:s.t===1&&s.s===i.s?t={t:1,s:ye(t),k:o,v:s.v}:s.t===3&&s.s===i.s?t={t:3,s:ye(t),k:s.k,v:o}:(r.push(t),t=s),i=s;return r.push(t),r}function on(e){if(e.length){let r="",t=To(e);for(let n=0,a=t.length;n<a;n++)r+=ye(t[n])+",";return r}return o}var Oo="Object.create(null)",wo="new Set",ho="new Map",zo="Promise.resolve",_o="Promise.reject",ko={3:"Object.freeze",2:"Object.seal",1:"Object.preventExtensions",0:o};function an(e,r){return{mode:e,plugins:r.plugins,features:r.features,marked:new Set(r.markedRefs),stack:[],flags:[],assignments:[]}}function Do(){return{valid:new Map,vars:[]}}function ur(e){return{mode:1,base:an(1,e),state:Do(),child:o}}function lr(e){return{mode:2,base:an(2,e),state:e,child:o}}var Lr=class{constructor(r){this._p=r}serialize(r){return f(this._p,r)}};function Fo(e,r){let t=e.valid.get(r);t==null&&(t=e.valid.size,e.valid.set(r,t));let n=e.vars[t];return n==null&&(n=Vr(t),e.vars[t]=n),n}function Bo(e){return le+"["+e+"]"}function m(e,r){return e.mode===1?Fo(e.state,r):Bo(r)}function w(e,r){e.marked.add(r)}function Ur(e,r){return e.marked.has(r)}function Yr(e,r,t){r!==0&&(w(e.base,t),e.base.flags.push({type:r,value:m(e,t)}))}function Vo(e){let r="";for(let t=0,n=e.flags,a=n.length;t<a;t++){let s=n[t];r+=ko[s.type]+"("+s.value+"),"}return r}function sn(e){let r=on(e.assignments),t=Vo(e);return r?t?r+t:r:t}function qr(e,r,t){e.assignments.push({t:0,s:r,k:o,v:t})}function Mo(e,r,t){e.base.assignments.push({t:1,s:m(e,r),k:o,v:t})}function ge(e,r,t,n){e.base.assignments.push({t:2,s:m(e,r),k:t,v:n})}function Xt(e,r,t){e.base.assignments.push({t:3,s:m(e,r),k:t,v:o})}function Ne(e,r,t,n){qr(e.base,m(e,r)+"["+t+"]",n)}function jr(e,r,t,n){qr(e.base,m(e,r)+"."+t,n)}function Lo(e,r,t,n){qr(e.base,m(e,r)+".v["+t+"]",n)}function F(e,r){return r.t===4&&e.stack.includes(r.i)}function ae(e,r,t){return e.mode===1&&!Ur(e.base,r)?t:m(e,r)+"="+t}function Uo(e){return L+'.get("'+e.s+'")'}function Qt(e,r,t,n){return t?F(e.base,t)?(w(e.base,r),Ne(e,r,n,m(e,t.i)),""):f(e,t):""}function jo(e,r){let t=r.i,n=r.a,a=n.length;if(a>0){e.base.stack.push(t);let s=Qt(e,t,n[0],0),i=s==="";for(let u=1,l;u<a;u++)l=Qt(e,t,n[u],u),s+=","+l,i=l==="";return e.base.stack.pop(),Yr(e,r.o,r.i),"["+s+(i?",]":"]")}return"[]"}function en(e,r,t,n){if(typeof t=="string"){let a=Number(t),s=a>=0&&a.toString()===t||Mr(t);if(F(e.base,n)){let i=m(e,n.i);return w(e.base,r.i),s&&a!==a?jr(e,r.i,t,i):Ne(e,r.i,s?t:'"'+t+'"',i),""}return(s?t:'"'+t+'"')+":"+f(e,n)}return"["+f(e,t)+"]:"+f(e,n)}function un(e,r,t){let n=t.k,a=n.length;if(a>0){let s=t.v;e.base.stack.push(r.i);let i=en(e,r,n[0],s[0]);for(let u=1,l=i;u<a;u++)l=en(e,r,n[u],s[u]),i+=(l&&i&&",")+l;return e.base.stack.pop(),"{"+i+"}"}return"{}"}function Yo(e,r){return Yr(e,r.o,r.i),un(e,r,r.p)}function qo(e,r,t,n){let a=un(e,r,t);return a!=="{}"?"Object.assign("+n+","+a+")":n}function Wo(e,r,t,n,a){let s=e.base,i=f(e,a),u=Number(n),l=u>=0&&u.toString()===n||Mr(n);if(F(s,a))l&&u!==u?jr(e,r.i,n,i):Ne(e,r.i,l?n:'"'+n+'"',i);else{let g=s.assignments;s.assignments=t,l&&u!==u?jr(e,r.i,n,i):Ne(e,r.i,l?n:'"'+n+'"',i),s.assignments=g}}function Go(e,r,t,n,a){if(typeof n=="string")Wo(e,r,t,n,a);else{let s=e.base,i=s.stack;s.stack=[];let u=f(e,a);s.stack=i;let l=s.assignments;s.assignments=t,Ne(e,r.i,f(e,n),u),s.assignments=l}}function Ko(e,r,t){let n=t.k,a=n.length;if(a>0){let s=[],i=t.v;e.base.stack.push(r.i);for(let u=0;u<a;u++)Go(e,r,s,n[u],i[u]);return e.base.stack.pop(),on(s)}return o}function Wr(e,r,t){if(r.p){let n=e.base;if(n.features&8)t=qo(e,r,r.p,t);else{w(n,r.i);let a=Ko(e,r,r.p);if(a)return"("+ae(e,r.i,t)+","+a+m(e,r.i)+")"}}return t}function Ho(e,r){return Yr(e,r.o,r.i),Wr(e,r,Oo)}function Jo(e){return'new Date("'+e.s+'")'}function Zo(e,r){if(e.base.features&32)return"/"+r.c+"/"+r.m;throw new h(r)}function rn(e,r,t){let n=e.base;return F(n,t)?(w(n,r),Mo(e,r,m(e,t.i)),""):f(e,t)}function $o(e,r){let t=wo,n=r.a,a=n.length,s=r.i;if(a>0){e.base.stack.push(s);let i=rn(e,s,n[0]);for(let u=1,l=i;u<a;u++)l=rn(e,s,n[u]),i+=(l&&i&&",")+l;e.base.stack.pop(),i&&(t+="(["+i+"])")}return t}function tn(e,r,t,n,a){let s=e.base;if(F(s,t)){let i=m(e,t.i);if(w(s,r),F(s,n)){let l=m(e,n.i);return ge(e,r,i,l),""}if(n.t!==4&&n.i!=null&&Ur(s,n.i)){let l="("+f(e,n)+",["+a+","+a+"])";return ge(e,r,i,m(e,n.i)),Xt(e,r,a),l}let u=s.stack;return s.stack=[],ge(e,r,i,f(e,n)),s.stack=u,""}if(F(s,n)){let i=m(e,n.i);if(w(s,r),t.t!==4&&t.i!=null&&Ur(s,t.i)){let l="("+f(e,t)+",["+a+","+a+"])";return ge(e,r,m(e,t.i),i),Xt(e,r,a),l}let u=s.stack;return s.stack=[],ge(e,r,f(e,t),i),s.stack=u,""}return"["+f(e,t)+","+f(e,n)+"]"}function Xo(e,r){let t=ho,n=r.e.k,a=n.length,s=r.i,i=r.f,u=m(e,i.i),l=e.base;if(a>0){let g=r.e.v;l.stack.push(s);let S=tn(e,s,n[0],g[0],u);for(let d=1,G=S;d<a;d++)G=tn(e,s,n[d],g[d],u),S+=(G&&S&&",")+G;l.stack.pop(),S&&(t+="(["+S+"])")}return i.t===26&&(w(l,i.i),t="("+f(e,i)+","+t+")"),t}function Qo(e,r){return q(e,r.f)+'("'+r.s+'")'}function ea(e,r){return"new "+r.c+"("+f(e,r.f)+","+r.b+","+r.l+")"}function ra(e,r){return"new DataView("+f(e,r.f)+","+r.b+","+r.l+")"}function ta(e,r){let t=r.i;e.base.stack.push(t);let n=Wr(e,r,'new AggregateError([],"'+r.m+'")');return e.base.stack.pop(),n}function na(e,r){return Wr(e,r,"new "+Ce[r.s]+'("'+r.m+'")')}function oa(e,r){let t,n=r.f,a=r.i,s=r.s?zo:_o,i=e.base;if(F(i,n)){let u=m(e,n.i);t=s+(r.s?"().then("+ir([],u)+")":"().catch("+Kt([],"throw "+u)+")")}else{i.stack.push(a);let u=f(e,n);i.stack.pop(),t=s+"("+u+")"}return t}function aa(e,r){return"Object("+f(e,r.f)+")"}function q(e,r){let t=f(e,r);return r.t===4?t:"("+t+")"}function sa(e,r){if(e.mode===1)throw new h(r);return"("+ae(e,r.s,q(e,r.f)+"()")+").p"}function ia(e,r){if(e.mode===1)throw new h(r);return q(e,r.a[0])+"("+m(e,r.i)+","+f(e,r.a[1])+")"}function ua(e,r){if(e.mode===1)throw new h(r);return q(e,r.a[0])+"("+m(e,r.i)+","+f(e,r.a[1])+")"}function la(e,r){let t=e.base.plugins;if(t)for(let n=0,a=t.length;n<a;n++){let s=t[n];if(s.tag===r.c)return e.child==null&&(e.child=new Lr(e)),s.serialize(r.s,e.child,{id:r.i})}throw new X(r.c)}function ca(e,r){let t="",n=!1;return r.f.t!==4&&(w(e.base,r.f.i),t="("+f(e,r.f)+",",n=!0),t+=ae(e,r.i,"("+At+")("+m(e,r.f.i)+")"),n&&(t+=")"),t}function fa(e,r){return q(e,r.a[0])+"("+f(e,r.a[1])+")"}function Sa(e,r){let t=r.a[0],n=r.a[1],a=e.base,s="";t.t!==4&&(w(a,t.i),s+="("+f(e,t)),n.t!==4&&(w(a,n.i),s+=(s?",":"(")+f(e,n)),s&&(s+=",");let i=ae(e,r.i,"("+Et+")("+m(e,n.i)+","+m(e,t.i)+")");return s?s+i+")":i}function ma(e,r){return q(e,r.a[0])+"("+f(e,r.a[1])+")"}function pa(e,r){let t=ae(e,r.i,q(e,r.f)+"()"),n=r.a.length;if(n){let a=f(e,r.a[0]);for(let s=1;s<n;s++)a+=","+f(e,r.a[s]);return"("+t+","+a+","+m(e,r.i)+")"}return t}function da(e,r){return m(e,r.i)+".next("+f(e,r.f)+")"}function ga(e,r){return m(e,r.i)+".throw("+f(e,r.f)+")"}function ya(e,r){return m(e,r.i)+".return("+f(e,r.f)+")"}function nn(e,r,t,n){let a=e.base;return F(a,n)?(w(a,r),Lo(e,r,t,m(e,n.i)),""):f(e,n)}function Na(e,r){let t=r.a,n=t.length,a=r.i;if(n>0){e.base.stack.push(a);let s=nn(e,a,0,t[0]);for(let i=1,u=s;i<n;i++)u=nn(e,a,i,t[i]),s+=(u&&s&&",")+u;if(e.base.stack.pop(),s)return"{__SEROVAL_SEQUENCE__:!0,v:["+s+"],t:"+r.s+",d:"+r.l+"}"}return"{__SEROVAL_SEQUENCE__:!0,v:[],t:-1,d:0}"}function ba(e,r){switch(r.t){case 17:return tt[r.s];case 18:return Uo(r);case 9:return jo(e,r);case 10:return Yo(e,r);case 11:return Ho(e,r);case 5:return Jo(r);case 6:return Zo(e,r);case 7:return $o(e,r);case 8:return Xo(e,r);case 19:return Qo(e,r);case 16:case 15:return ea(e,r);case 20:return ra(e,r);case 14:return ta(e,r);case 13:return na(e,r);case 12:return oa(e,r);case 21:return aa(e,r);case 22:return sa(e,r);case 25:return la(e,r);case 26:return Ot[r.s];case 35:return Na(e,r);default:throw new h(r)}}function f(e,r){switch(r.t){case 2:return ot[r.s];case 0:return""+r.s;case 1:return'"'+r.s+'"';case 3:return r.s+"n";case 4:return m(e,r.i);case 23:return ia(e,r);case 24:return ua(e,r);case 27:return ca(e,r);case 28:return fa(e,r);case 29:return Sa(e,r);case 30:return ma(e,r);case 31:return pa(e,r);case 32:return da(e,r);case 33:return ga(e,r);case 34:return ya(e,r);default:return ae(e,r.i,ba(e,r))}}function cr(e,r){let t=f(e,r);if(r.i!=null&&e.state.vars.length){let n=sn(e.base),a=t;if(n){let s=m(e,r.i);a=t+","+n+s,t.startsWith(s+"=")||(a=s+"="+a),a="("+a+")"}return"("+ir(e.state.vars,a)+")()"}return r.t===10?"("+t+")":t}function fr(e,r){let t=f(e,r),n=r.i;if(n==null)return t;let a=sn(e.base),s=m(e,n),i=e.state.scopeId,u=i==null?"":le,l=a?"("+t+","+a+s+")":t;if(u==="")return r.t===10&&!a?"("+l+")":l;let g=i==null?"()":"("+le+'["'+y(i)+'"])';return"("+ir([u],l)+")"+g}function ie(e,r){return{type:1,base:me(e,r),child:o}}var Kr=class{constructor(r,t){this._p=r;this.depth=t}parse(r){return E(this._p,this.depth,r)}},Hr=class{constructor(r,t){this._p=r;this.depth=t}parse(r){return E(this._p,this.depth,r)}parseWithError(r){return W(this._p,this.depth,r)}isAlive(){return this._p.state.alive}pushPendingState(){Qr(this._p)}popPendingState(){be(this._p)}onParse(r){se(this._p,r)}onError(r){$r(this._p,r)}};function va(e){return{alive:!0,pending:0,initial:!0,buffer:[],onParse:e.onParse,onError:e.onError,onDone:e.onDone}}function Jr(e){return{type:2,base:me(2,e),state:va(e)}}function Ca(e,r,t){let n=[];for(let a=0,s=t.length;a<s;a++)a in t?n[a]=E(e,r,t[a]):n[a]=0;return n}function Aa(e,r,t,n){return _e(t,n,Ca(e,r,n))}function Zr(e,r,t){let n=Object.entries(t),a=[],s=[];for(let i=0,u=n.length;i<u;i++)a.push(y(n[i][0])),s.push(E(e,r,n[i][1]));return C in t&&(a.push(I(e.base,C)),s.push(Ue(rr(e.base),E(e,r,$e(t))))),v in t&&(a.push(I(e.base,v)),s.push(je(tr(e.base),E(e,r,e.type===1?re():Qe(t))))),P in t&&(a.push(I(e.base,P)),s.push($(t[P]))),R in t&&(a.push(I(e.base,R)),s.push(t[R]?H:J)),{k:a,v:s}}function Gr(e,r,t,n,a){return nr(t,n,a,Zr(e,r,n))}function Ea(e,r,t,n){return ke(t,E(e,r,n.valueOf()))}function Ia(e,r,t,n){return De(t,n,E(e,r,n.buffer))}function Ra(e,r,t,n){return Fe(t,n,E(e,r,n.buffer))}function Pa(e,r,t,n){return Be(t,n,E(e,r,n.buffer))}function ln(e,r,t,n){let a=Z(n,e.base.features);return Ve(t,n,a?Zr(e,r,a):o)}function xa(e,r,t,n){let a=Z(n,e.base.features);return Me(t,n,a?Zr(e,r,a):o)}function Ta(e,r,t,n){let a=[],s=[];for(let[i,u]of n.entries())a.push(E(e,r,i)),s.push(E(e,r,u));return or(e.base,t,a,s)}function Oa(e,r,t,n){let a=[];for(let s of n.keys())a.push(E(e,r,s));return Le(t,a)}function wa(e,r,t,n){let a=Ye(t,k(e.base,4),[]);return e.type===1||(Qr(e),n.on({next:s=>{if(e.state.alive){let i=W(e,r,s);i&&se(e,qe(t,i))}},throw:s=>{if(e.state.alive){let i=W(e,r,s);i&&se(e,We(t,i))}be(e)},return:s=>{if(e.state.alive){let i=W(e,r,s);i&&se(e,Ge(t,i))}be(e)}})),a}function ha(e,r,t){if(this.state.alive){let n=W(this,r,t);n&&se(this,c(23,e,o,o,o,o,o,[k(this.base,2),n],o,o,o,o)),be(this)}}function za(e,r,t){if(this.state.alive){let n=W(this,r,t);n&&se(this,c(24,e,o,o,o,o,o,[k(this.base,3),n],o,o,o,o))}be(this)}function _a(e,r,t,n){let a=zr(e.base,{});return e.type===2&&(Qr(e),n.then(ha.bind(e,a,r),za.bind(e,a,r))),zt(e.base,t,a)}function ka(e,r,t,n,a){for(let s=0,i=a.length;s<i;s++){let u=a[s];if(u.parse.sync&&u.test(n))return ce(t,u.tag,u.parse.sync(n,new Kr(e,r),{id:t}))}return o}function Da(e,r,t,n,a){for(let s=0,i=a.length;s<i;s++){let u=a[s];if(u.parse.stream&&u.test(n))return ce(t,u.tag,u.parse.stream(n,new Hr(e,r),{id:t}))}return o}function cn(e,r,t,n){let a=e.base.plugins;return a?e.type===1?ka(e,r,t,n,a):Da(e,r,t,n,a):o}function Fa(e,r,t,n){let a=[];for(let s=0,i=n.v.length;s<i;s++)a[s]=E(e,r,n.v[s]);return Ke(t,a,n.t,n.d)}function Ba(e,r,t,n,a){switch(a){case Object:return Gr(e,r,t,n,!1);case o:return Gr(e,r,t,n,!0);case Date:return he(t,n);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return ln(e,r,t,n);case Number:case Boolean:case String:case BigInt:return Ea(e,r,t,n);case ArrayBuffer:return ar(e.base,t,n);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return Ia(e,r,t,n);case DataView:return Pa(e,r,t,n);case Map:return Ta(e,r,t,n);case Set:return Oa(e,r,t,n);default:break}if(a===Promise||n instanceof Promise)return _a(e,r,t,n);let s=e.base.features;if(s&32&&a===RegExp)return ze(t,n);if(s&16)switch(a){case BigInt64Array:case BigUint64Array:return Ra(e,r,t,n);default:break}if(s&1&&typeof AggregateError!="undefined"&&(a===AggregateError||n instanceof AggregateError))return xa(e,r,t,n);if(n instanceof Error)return ln(e,r,t,n);if(C in n||v in n)return Gr(e,r,t,n,!!a);throw new x(n)}function Va(e,r,t,n){if(Array.isArray(n))return Aa(e,r,t,n);if(Xe(n))return wa(e,r,t,n);if(Ze(n))return Fa(e,r,t,n);let a=n.constructor;if(a===j)return E(e,r,n.replacement);let s=cn(e,r,t,n);return s||Ba(e,r,t,n,a)}function Ma(e,r,t){let n=Y(e.base,t);if(n.type!==0)return n.value;let a=cn(e,r,n.value,t);if(a)return a;throw new x(t)}function E(e,r,t){if(r>=e.base.depthLimit)throw new Q(e.base.depthLimit);switch(typeof t){case"boolean":return t?H:J;case"undefined":return Ae;case"string":return $(t);case"number":return Oe(t);case"bigint":return we(t);case"object":{if(t){let n=Y(e.base,t);return n.type===0?Va(e,r+1,n.value,t):n.value}return Ee}case"symbol":return I(e.base,t);case"function":return Ma(e,r,t);default:throw new x(t)}}function ue(e,r){try{return E(e,0,r)}catch(t){throw t instanceof z?t:new z(t)}}function se(e,r){e.state.initial?e.state.buffer.push(r):Xr(e,r,!1)}function $r(e,r){if(e.state.onError)e.state.onError(r);else throw r instanceof z?r:new z(r)}function fn(e){e.state.onDone&&e.state.onDone()}function Xr(e,r,t){try{e.state.onParse(r,t)}catch(n){$r(e,n)}}function Qr(e){e.state.pending++}function be(e){--e.state.pending<=0&&fn(e)}function W(e,r,t){try{return E(e,r,t)}catch(n){return $r(e,n),o}}function et(e,r){let t=W(e,0,r);t&&(Xr(e,t,!0),e.state.initial=!1,La(e,e.state),e.state.pending<=0&&Sr(e))}function La(e,r){for(let t=0,n=r.buffer.length;t<n;t++)Xr(e,r.buffer[t],!1)}function Sr(e){e.state.alive&&(fn(e),e.state.alive=!1)}function nu(e,r={}){let t=A(r.plugins),n=ie(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs}),a=ue(n,e),s=lr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked});return fr(s,a)}async function ou(e,r={}){let t=A(r.plugins),n=te(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs}),a=await ne(n,e),s=lr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked});return fr(s,a)}function au(e,r={}){let t=A(r.plugins),n=ie(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs});return ue(n,e)}async function su(e,r={}){let t=A(r.plugins),n=te(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs});return await ne(n,e)}function Sn(e,r){let t=A(r.plugins),n=Jr({plugins:t,refs:r.refs,disabledFeatures:r.disabledFeatures,onParse(a,s){let i=lr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked}),u;try{u=fr(i,a)}catch(l){r.onError&&r.onError(l);return}r.onSerialize(u,s)},onError:r.onError,onDone:r.onDone});return et(n,e),Sr.bind(null,n)}function iu(e,r){let t=A(r.plugins),n=Jr({plugins:t,refs:r.refs,disabledFeatures:r.disabledFeatures,depthLimit:r.depthLimit,onParse:r.onParse,onError:r.onError,onDone:r.onDone});return et(n,e),Sr.bind(null,n)}function uu(e,r){let t=A(r.plugins),n=Ut({plugins:t,refs:r.refs,features:r.features,disabledFeatures:r.disabledFeatures,depthLimit:r.depthLimit});return sr(n,e)}var mr=class{constructor(r){this.options=r;this.alive=!0;this.flushed=!1;this.done=!1;this.pending=0;this.cleanups=[];this.refs=new Map;this.keys=new Set;this.ids=0;this.plugins=A(r.plugins)}write(r,t){this.alive&&!this.flushed&&(this.pending++,this.keys.add(r),this.cleanups.push(Sn(t,{plugins:this.plugins,scopeId:this.options.scopeId,refs:this.refs,disabledFeatures:this.options.disabledFeatures,onError:this.options.onError,onSerialize:(n,a)=>{this.alive&&this.options.onData(a?this.options.globalIdentifier+'["'+y(r)+'"]='+n:n)},onDone:()=>{this.alive&&(this.pending--,this.pending<=0&&this.flushed&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}})))}getNextID(){for(;this.keys.has(""+this.ids);)this.ids++;return""+this.ids}push(r){let t=this.getNextID();return this.write(t,r),t}flush(){this.alive&&(this.flushed=!0,this.pending<=0&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}close(){if(this.alive){for(let r=0,t=this.cleanups.length;r<t;r++)this.cleanups[r]();!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0),this.alive=!1}}};function vu(e,r={}){let t=A(r.plugins),n=ie(1,{plugins:t,disabledFeatures:r.disabledFeatures}),a=ue(n,e),s=ur({plugins:t,features:n.base.features,markedRefs:n.base.marked});return cr(s,a)}async function Cu(e,r={}){let t=A(r.plugins),n=te(1,{plugins:t,disabledFeatures:r.disabledFeatures}),a=await ne(n,e),s=ur({plugins:t,features:n.base.features,markedRefs:n.base.marked});return cr(s,a)}function Au(e){return(0,eval)(e)}function Eu(e,r={}){let t=A(r.plugins),n=ie(1,{plugins:t,disabledFeatures:r.disabledFeatures});return{t:ue(n,e),f:n.base.features,m:Array.from(n.base.marked)}}async function Iu(e,r={}){let t=A(r.plugins),n=te(1,{plugins:t,disabledFeatures:r.disabledFeatures});return{t:await ne(n,e),f:n.base.features,m:Array.from(n.base.marked)}}function Ru(e,r={}){let t=A(r.plugins),n=ur({plugins:t,features:e.f,markedRefs:e.m});return cr(n,e.t)}function Pu(e,r={}){var i;let t=A(r.plugins),n=r.disabledFeatures||0,a=(i=e.f)!=null?i:63,s=Lt({plugins:t,markedRefs:e.m,features:a&~n,disabledFeatures:n});return sr(s,e.t)}export{M as Feature,j as OpaqueReference,mr as Serializer,yt as SerovalConflictedNodeIdError,Q as SerovalDepthLimitError,He as SerovalDeserializationError,fe as SerovalError,O as SerovalMalformedNodeError,V as SerovalMissingInstanceError,X as SerovalMissingPluginError,Re as SerovalMissingReferenceError,Pe as SerovalMissingReferenceForIdError,oe as SerovalMode,z as SerovalParserError,Rr as SerovalSerializationError,Je as SerovalUnknownTypedArrayError,h as SerovalUnsupportedNodeError,x as SerovalUnsupportedTypeError,Ru as compileJSON,ai as createPlugin,gn as createReference,re as createStream,nu as crossSerialize,ou as crossSerializeAsync,Sn as crossSerializeStream,Au as deserialize,uu as fromCrossJSON,Pu as fromJSON,dn as getCrossReferenceHeader,A as resolvePlugins,vu as serialize,Cu as serializeAsync,au as toCrossJSON,su as toCrossJSONAsync,iu as toCrossJSONStream,Eu as toJSON,Iu as toJSONAsync};
|
|
1
|
+
var M=(i=>(i[i.AggregateError=1]="AggregateError",i[i.ArrowFunction=2]="ArrowFunction",i[i.ErrorPrototypeStack=4]="ErrorPrototypeStack",i[i.ObjectAssign=8]="ObjectAssign",i[i.BigIntTypedArray=16]="BigIntTypedArray",i[i.RegExp=32]="RegExp",i))(M||{});var v=Symbol.asyncIterator,dr=Symbol.hasInstance,R=Symbol.isConcatSpreadable,C=Symbol.iterator,gr=Symbol.match,yr=Symbol.matchAll,Nr=Symbol.replace,br=Symbol.search,vr=Symbol.species,Cr=Symbol.split,Ar=Symbol.toPrimitive,P=Symbol.toStringTag,Er=Symbol.unscopables;var nt={0:"Symbol.asyncIterator",1:"Symbol.hasInstance",2:"Symbol.isConcatSpreadable",3:"Symbol.iterator",4:"Symbol.match",5:"Symbol.matchAll",6:"Symbol.replace",7:"Symbol.search",8:"Symbol.species",9:"Symbol.split",10:"Symbol.toPrimitive",11:"Symbol.toStringTag",12:"Symbol.unscopables"},Ce={[v]:0,[dr]:1,[R]:2,[C]:3,[gr]:4,[yr]:5,[Nr]:6,[br]:7,[vr]:8,[Cr]:9,[Ar]:10,[P]:11,[Er]:12},ot={0:v,1:dr,2:R,3:C,4:gr,5:yr,6:Nr,7:br,8:vr,9:Cr,10:Ar,11:P,12:Er},at={2:"!0",3:"!1",1:"void 0",0:"null",4:"-0",5:"1/0",6:"-1/0",7:"0/0"},o=void 0,st={2:!0,3:!1,1:o,0:null,4:-0,5:Number.POSITIVE_INFINITY,6:Number.NEGATIVE_INFINITY,7:Number.NaN};var Ae={0:"Error",1:"EvalError",2:"RangeError",3:"ReferenceError",4:"SyntaxError",5:"TypeError",6:"URIError"},it={0:Error,1:EvalError,2:RangeError,3:ReferenceError,4:SyntaxError,5:TypeError,6:URIError};function c(e,r,t,n,a,s,i,u,l,g,S,d){return{t:e,i:r,s:t,c:n,m:a,p:s,e:i,a:u,f:l,b:g,o:S,l:d}}function B(e){return c(2,o,e,o,o,o,o,o,o,o,o,o)}var H=B(2),J=B(3),Ee=B(1),Ie=B(0),ut=B(4),lt=B(5),ct=B(6),ft=B(7);function dn(e){switch(e){case'"':return'\\"';case"\\":return"\\\\";case`
|
|
2
|
+
`:return"\\n";case"\r":return"\\r";case"\b":return"\\b";case" ":return"\\t";case"\f":return"\\f";case"<":return"\\x3C";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:return o}}function y(e){let r="",t=0,n;for(let a=0,s=e.length;a<s;a++)n=dn(e[a]),n&&(r+=e.slice(t,a)+n,t=a+1);return t===0?r=e:r+=e.slice(t),r}function gn(e){switch(e){case"\\\\":return"\\";case'\\"':return'"';case"\\n":return`
|
|
3
|
+
`;case"\\r":return"\r";case"\\b":return"\b";case"\\t":return" ";case"\\f":return"\f";case"\\x3C":return"<";case"\\u2028":return"\u2028";case"\\u2029":return"\u2029";default:return e}}function h(e){return e.replace(/(\\\\|\\"|\\n|\\r|\\b|\\t|\\f|\\u2028|\\u2029|\\x3C)/g,gn)}var L="__SEROVAL_REFS__",le="$R",Re=`self.${le}`;function yn(e){return e==null?`${Re}=${Re}||[]`:`(${Re}=${Re}||{})["${y(e)}"]=[]`}var Ir=new Map,U=new Map;function Nn(e,r){return Ir.set(r,e),U.set(e,r),r}function Rr(e){return Ir.has(e)}function bn(e){return U.has(e)}function St(e){if(Rr(e))return Ir.get(e);throw new Pe(e)}function mt(e){if(bn(e))return U.get(e);throw new xe(e)}typeof globalThis!="undefined"?Object.defineProperty(globalThis,L,{value:U,configurable:!0,writable:!1,enumerable:!1}):typeof window!="undefined"?Object.defineProperty(window,L,{value:U,configurable:!0,writable:!1,enumerable:!1}):typeof self!="undefined"?Object.defineProperty(self,L,{value:U,configurable:!0,writable:!1,enumerable:!1}):typeof global!="undefined"&&Object.defineProperty(global,L,{value:U,configurable:!0,writable:!1,enumerable:!1});function Te(e){return e instanceof EvalError?1:e instanceof RangeError?2:e instanceof ReferenceError?3:e instanceof SyntaxError?4:e instanceof TypeError?5:e instanceof URIError?6:0}function vn(e){let r=Ae[Te(e)];return e.name!==r?{name:e.name}:e.constructor.name!==r?{name:e.constructor.name}:{}}function Z(e,r){let t=vn(e),n=Object.getOwnPropertyNames(e);for(let a=0,s=n.length,i;a<s;a++)i=n[a],i!=="name"&&i!=="message"&&(i==="stack"?r&4&&(t=t||{},t[i]=e[i]):(t=t||{},t[i]=e[i]));return t}function Oe(e){return Object.isFrozen(e)?3:Object.isSealed(e)?2:Object.isExtensible(e)?0:1}function we(e){switch(e){case Number.POSITIVE_INFINITY:return lt;case Number.NEGATIVE_INFINITY:return ct}return e!==e?ft:Object.is(e,-0)?ut:c(0,o,e,o,o,o,o,o,o,o,o,o)}function $(e){return c(1,o,y(e),o,o,o,o,o,o,o,o,o)}function he(e){return c(3,o,""+e,o,o,o,o,o,o,o,o,o)}function dt(e){return c(4,e,o,o,o,o,o,o,o,o,o,o)}function ze(e,r){let t=r.valueOf();return c(5,e,t!==t?"":r.toISOString(),o,o,o,o,o,o,o,o,o)}function _e(e,r){return c(6,e,o,y(r.source),r.flags,o,o,o,o,o,o,o)}function gt(e,r){return c(17,e,Ce[r],o,o,o,o,o,o,o,o,o)}function yt(e,r){return c(18,e,y(St(r)),o,o,o,o,o,o,o,o,o)}function ce(e,r,t){return c(25,e,t,y(r),o,o,o,o,o,o,o,o)}function ke(e,r,t){return c(9,e,o,o,o,o,o,t,o,o,Oe(r),o)}function De(e,r){return c(21,e,o,o,o,o,o,o,r,o,o,o)}function Fe(e,r,t){return c(15,e,o,r.constructor.name,o,o,o,o,t,r.byteOffset,o,r.length)}function Be(e,r,t){return c(16,e,o,r.constructor.name,o,o,o,o,t,r.byteOffset,o,r.length)}function Ve(e,r,t){return c(20,e,o,o,o,o,o,o,t,r.byteOffset,o,r.byteLength)}function Me(e,r,t){return c(13,e,Te(r),o,y(r.message),t,o,o,o,o,o,o)}function Le(e,r,t){return c(14,e,Te(r),o,y(r.message),t,o,o,o,o,o,o)}function Ue(e,r){return c(7,e,o,o,o,o,o,r,o,o,o,o)}function je(e,r){return c(28,o,o,o,o,o,o,[e,r],o,o,o,o)}function Ye(e,r){return c(30,o,o,o,o,o,o,[e,r],o,o,o,o)}function qe(e,r,t){return c(31,e,o,o,o,o,o,t,r,o,o,o)}function We(e,r){return c(32,e,o,o,o,o,o,o,r,o,o,o)}function Ke(e,r){return c(33,e,o,o,o,o,o,o,r,o,o,o)}function Ge(e,r){return c(34,e,o,o,o,o,o,o,r,o,o,o)}function He(e,r,t,n){return c(35,e,t,o,o,o,o,r,o,o,o,n)}var{toString:bs}=Object.prototype;var Cn={parsing:1,serialization:2,deserialization:3};function An(e){return`Seroval Error (step: ${Cn[e]})`}var En=(e,r)=>An(e),fe=class extends Error{constructor(t,n){super(En(t,n));this.cause=n}},_=class extends fe{constructor(r){super("parsing",r)}},Pr=class extends fe{constructor(r){super("serialization",r)}},Je=class extends fe{constructor(r){super("deserialization",r)}};function k(e){return`Seroval Error (specific: ${e})`}var x=class extends Error{constructor(t){super(k(1));this.value=t}},z=class extends Error{constructor(r){super(k(2))}},X=class extends Error{constructor(r){super(k(3))}},V=class extends Error{constructor(r){super(k(4))}},Pe=class extends Error{constructor(t){super(k(5));this.value=t}},xe=class extends Error{constructor(r){super(k(6))}},Ze=class extends Error{constructor(r){super(k(7))}},O=class extends Error{constructor(r){super(k(8))}},Nt=class extends Error{constructor(r){super(k(9))}},Q=class extends Error{constructor(r){super(k(9))}};var j=class{constructor(r,t){this.value=r;this.replacement=t}};var ee=()=>{let e={p:0,s:0,f:0};return e.p=new Promise((r,t)=>{e.s=r,e.f=t}),e},In=(e,r)=>{e.s(r),e.p.s=1,e.p.v=r},Rn=(e,r)=>{e.f(r),e.p.s=2,e.p.v=r},bt=ee.toString(),vt=In.toString(),Ct=Rn.toString(),xr=()=>{let e=[],r=[],t=!0,n=!1,a=0,s=(l,g,S)=>{for(S=0;S<a;S++)r[S]&&r[S][g](l)},i=(l,g,S,d)=>{for(g=0,S=e.length;g<S;g++)d=e[g],!t&&g===S-1?l[n?"return":"throw"](d):l.next(d)},u=(l,g)=>(t&&(g=a++,r[g]=l),i(l),()=>{t&&(r[g]=r[a],r[a--]=void 0)});return{__SEROVAL_STREAM__:!0,on:l=>u(l),next:l=>{t&&(e.push(l),s(l,"next"))},throw:l=>{t&&(e.push(l),s(l,"throw"),t=!1,n=!1,r.length=0)},return:l=>{t&&(e.push(l),s(l,"return"),t=!1,n=!0,r.length=0)}}},At=xr.toString(),Tr=e=>r=>()=>{let t=0,n={[e]:()=>n,next:()=>{if(t>r.d)return{done:!0,value:void 0};let a=t++,s=r.v[a];if(a===r.t)throw s;return{done:a===r.d,value:s}}};return n},Et=Tr.toString(),Or=(e,r)=>t=>()=>{let n=0,a=-1,s=!1,i=[],u=[],l=(S=0,d=u.length)=>{for(;S<d;S++)u[S].s({done:!0,value:void 0})};t.on({next:S=>{let d=u.shift();d&&d.s({done:!1,value:S}),i.push(S)},throw:S=>{let d=u.shift();d&&d.f(S),l(),a=i.length,s=!0,i.push(S)},return:S=>{let d=u.shift();d&&d.s({done:!0,value:S}),l(),a=i.length,i.push(S)}});let g={[e]:()=>g,next:()=>{if(a===-1){let K=n++;if(K>=i.length){let tt=r();return u.push(tt),tt.p}return{done:!1,value:i[K]}}if(n>a)return{done:!0,value:void 0};let S=n++,d=i[S];if(S!==a)return{done:!1,value:d};if(s)throw d;return{done:!0,value:d}}};return g},It=Or.toString(),wr=e=>{let r=atob(e),t=r.length,n=new Uint8Array(t);for(let a=0;a<t;a++)n[a]=r.charCodeAt(a);return n.buffer},Rt=wr.toString();function $e(e){return"__SEROVAL_SEQUENCE__"in e}function hr(e,r,t){return{__SEROVAL_SEQUENCE__:!0,v:e,t:r,d:t}}function Xe(e){let r=[],t=-1,n=-1,a=e[C]();for(;;)try{let s=a.next();if(r.push(s.value),s.done){n=r.length-1;break}}catch(s){t=r.length,r.push(s)}return hr(r,t,n)}var Pn=Tr(C);function Pt(e){return Pn(e)}var xt={},Tt={};var Ot={0:{},1:{},2:{},3:{},4:{},5:{}},wt={0:"[]",1:bt,2:vt,3:Ct,4:At,5:Rt};function Qe(e){return"__SEROVAL_STREAM__"in e}function re(){return xr()}function er(e){let r=re(),t=e[v]();async function n(){try{let a=await t.next();a.done?r.return(a.value):(r.next(a.value),await n())}catch(a){r.throw(a)}}return n().catch(()=>{}),r}var xn=Or(v,ee);function ht(e){return xn(e)}async function zr(e){try{return[1,await e]}catch(r){return[0,r]}}function me(e,r){return{plugins:r.plugins,mode:e,marked:new Set,features:63^(r.disabledFeatures||0),refs:r.refs||new Map,depthLimit:r.depthLimit||1e3}}function pe(e,r){e.marked.add(r)}function _r(e,r){let t=e.refs.size;return e.refs.set(r,t),t}function rr(e,r){let t=e.refs.get(r);return t!=null?(pe(e,t),{type:1,value:dt(t)}):{type:0,value:_r(e,r)}}function Y(e,r){let t=rr(e,r);return t.type===1?t:Rr(r)?{type:2,value:yt(t.value,r)}:t}function I(e,r){let t=Y(e,r);if(t.type!==0)return t.value;if(r in Ce)return gt(t.value,r);throw new x(r)}function D(e,r){let t=rr(e,Ot[r]);return t.type===1?t.value:c(26,t.value,r,o,o,o,o,o,o,o,o,o)}function tr(e){let r=rr(e,xt);return r.type===1?r.value:c(27,r.value,o,o,o,o,o,o,I(e,C),o,o,o)}function nr(e){let r=rr(e,Tt);return r.type===1?r.value:c(29,r.value,o,o,o,o,o,[D(e,1),I(e,v)],o,o,o,o)}function or(e,r,t,n){return c(t?11:10,e,o,o,o,n,o,o,o,o,Oe(r),o)}function ar(e,r,t,n){return c(8,r,o,o,o,o,{k:t,v:n},o,D(e,0),o,o,o)}function _t(e,r,t){return c(22,r,t,o,o,o,o,o,D(e,1),o,o,o)}function sr(e,r,t){let n=new Uint8Array(t),a="";for(let s=0,i=n.length;s<i;s++)a+=String.fromCharCode(n[s]);return c(19,r,y(btoa(a)),o,o,o,o,o,D(e,5),o,o,o)}function te(e,r){return{base:me(e,r),child:void 0}}var Dr=class{constructor(r,t){this._p=r;this.depth=t}parse(r){return N(this._p,this.depth,r)}};async function On(e,r,t){let n=[];for(let a=0,s=t.length;a<s;a++)a in t?n[a]=await N(e,r,t[a]):n[a]=0;return n}async function wn(e,r,t,n){return ke(t,n,await On(e,r,n))}async function Fr(e,r,t){let n=Object.entries(t),a=[],s=[];for(let i=0,u=n.length;i<u;i++)a.push(y(n[i][0])),s.push(await N(e,r,n[i][1]));return C in t&&(a.push(I(e.base,C)),s.push(je(tr(e.base),await N(e,r,Xe(t))))),v in t&&(a.push(I(e.base,v)),s.push(Ye(nr(e.base),await N(e,r,er(t))))),P in t&&(a.push(I(e.base,P)),s.push($(t[P]))),R in t&&(a.push(I(e.base,R)),s.push(t[R]?H:J)),{k:a,v:s}}async function kr(e,r,t,n,a){return or(t,n,a,await Fr(e,r,n))}async function hn(e,r,t,n){return De(t,await N(e,r,n.valueOf()))}async function zn(e,r,t,n){return Fe(t,n,await N(e,r,n.buffer))}async function _n(e,r,t,n){return Be(t,n,await N(e,r,n.buffer))}async function kn(e,r,t,n){return Ve(t,n,await N(e,r,n.buffer))}async function kt(e,r,t,n){let a=Z(n,e.base.features);return Me(t,n,a?await Fr(e,r,a):o)}async function Dn(e,r,t,n){let a=Z(n,e.base.features);return Le(t,n,a?await Fr(e,r,a):o)}async function Fn(e,r,t,n){let a=[],s=[];for(let[i,u]of n.entries())a.push(await N(e,r,i)),s.push(await N(e,r,u));return ar(e.base,t,a,s)}async function Bn(e,r,t,n){let a=[];for(let s of n.keys())a.push(await N(e,r,s));return Ue(t,a)}async function Dt(e,r,t,n){let a=e.base.plugins;if(a)for(let s=0,i=a.length;s<i;s++){let u=a[s];if(u.parse.async&&u.test(n))return ce(t,u.tag,await u.parse.async(n,new Dr(e,r),{id:t}))}return o}async function Vn(e,r,t,n){let[a,s]=await zr(n);return c(12,t,a,o,o,o,o,o,await N(e,r,s),o,o,o)}function Mn(e,r,t,n,a){let s=[],i=t.on({next:u=>{pe(this.base,r),N(this,e,u).then(l=>{s.push(We(r,l))},l=>{a(l),i()})},throw:u=>{pe(this.base,r),N(this,e,u).then(l=>{s.push(Ke(r,l)),n(s),i()},l=>{a(l),i()})},return:u=>{pe(this.base,r),N(this,e,u).then(l=>{s.push(Ge(r,l)),n(s),i()},l=>{a(l),i()})}})}async function Ln(e,r,t,n){return qe(t,D(e.base,4),await new Promise(Mn.bind(e,r,t,n)))}async function Un(e,r,t,n){let a=[];for(let s=0,i=n.v.length;s<i;s++)a[s]=await N(e,r,n.v[s]);return He(t,a,n.t,n.d)}async function jn(e,r,t,n){if(Array.isArray(n))return wn(e,r,t,n);if(Qe(n))return Ln(e,r,t,n);if($e(n))return Un(e,r,t,n);let a=n.constructor;if(a===j)return N(e,r,n.replacement);let s=await Dt(e,r,t,n);if(s)return s;switch(a){case Object:return kr(e,r,t,n,!1);case o:return kr(e,r,t,n,!0);case Date:return ze(t,n);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return kt(e,r,t,n);case Number:case Boolean:case String:case BigInt:return hn(e,r,t,n);case ArrayBuffer:return sr(e.base,t,n);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return zn(e,r,t,n);case DataView:return kn(e,r,t,n);case Map:return Fn(e,r,t,n);case Set:return Bn(e,r,t,n);default:break}if(a===Promise||n instanceof Promise)return Vn(e,r,t,n);let i=e.base.features;if(i&32&&a===RegExp)return _e(t,n);if(i&16)switch(a){case BigInt64Array:case BigUint64Array:return _n(e,r,t,n);default:break}if(i&1&&typeof AggregateError!="undefined"&&(a===AggregateError||n instanceof AggregateError))return Dn(e,r,t,n);if(n instanceof Error)return kt(e,r,t,n);if(C in n||v in n)return kr(e,r,t,n,!!a);throw new x(n)}async function Yn(e,r,t){let n=Y(e.base,t);if(n.type!==0)return n.value;let a=await Dt(e,r,n.value,t);if(a)return a;throw new x(t)}async function N(e,r,t){switch(typeof t){case"boolean":return t?H:J;case"undefined":return Ee;case"string":return $(t);case"number":return we(t);case"bigint":return he(t);case"object":{if(t){let n=Y(e.base,t);return n.type===0?await jn(e,r+1,n.value,t):n.value}return Ie}case"symbol":return I(e.base,t);case"function":return Yn(e,r,t);default:throw new x(t)}}async function ne(e,r){try{return await N(e,0,r)}catch(t){throw t instanceof _?t:new _(t)}}var oe=(t=>(t[t.Vanilla=1]="Vanilla",t[t.Cross=2]="Cross",t))(oe||{});function ai(e){return e}function Ft(e,r){for(let t=0,n=r.length;t<n;t++){let a=r[t];e.has(a)||(e.add(a),a.extends&&Ft(e,a.extends))}}function A(e){if(e){let r=new Set;return Ft(r,e),[...r]}}function Bt(e){switch(e){case"Int8Array":return Int8Array;case"Int16Array":return Int16Array;case"Int32Array":return Int32Array;case"Uint8Array":return Uint8Array;case"Uint16Array":return Uint16Array;case"Uint32Array":return Uint32Array;case"Uint8ClampedArray":return Uint8ClampedArray;case"Float32Array":return Float32Array;case"Float64Array":return Float64Array;case"BigInt64Array":return BigInt64Array;case"BigUint64Array":return BigUint64Array;default:throw new Ze(e)}}function de(e){switch(e){case"constructor":case"__proto__":case"prototype":case"__defineGetter__":case"__defineSetter__":case"__lookupGetter__":case"__lookupSetter__":return!1;default:return!0}}function Vt(e){switch(e){case v:case R:case P:case C:return!0;default:return!1}}var qn=1e6,Wn=1e4,Kn=2e4;function Lt(e,r){switch(r){case 3:return Object.freeze(e);case 1:return Object.preventExtensions(e);case 2:return Object.seal(e);default:return e}}var Gn=1e3;function Ut(e,r){var n;let t=r.refs||new Map;return"types"in t||Object.assign(t,{types:new Map}),{mode:e,plugins:r.plugins,refs:t,features:(n=r.features)!=null?n:63^(r.disabledFeatures||0),depthLimit:r.depthLimit||Gn}}function jt(e){return{mode:1,base:Ut(1,e),child:o,state:{marked:new Set(e.markedRefs)}}}function Yt(e){return{mode:2,base:Ut(2,e),child:o}}var Br=class{constructor(r,t){this._p=r;this.depth=t}deserialize(r){return p(this._p,this.depth,r)}};function qt(e,r){if(r<0||!Number.isFinite(r)||!Number.isInteger(r))throw new O({t:4,i:r});if(e.refs.has(r))throw new Error("Conflicted ref id: "+r)}function Hn(e,r,t){return qt(e.base,r),e.state.marked.has(r)&&e.base.refs.set(r,t),t}function Jn(e,r,t){return qt(e.base,r),e.base.refs.set(r,t),t}function b(e,r,t){return e.mode===1?Hn(e,r,t):Jn(e,r,t)}function Vr(e,r,t){if(Object.hasOwn(r,t))return r[t];throw new O(e)}function Zn(e,r){return b(e,r.i,mt(h(r.s)))}function $n(e,r,t){let n=t.a,a=n.length,s=b(e,t.i,new Array(a));for(let i=0,u;i<a;i++)u=n[i],u&&(s[i]=p(e,r,u));return Lt(s,t.o),s}function Mt(e,r,t){de(r)?e[r]=t:Object.defineProperty(e,r,{value:t,configurable:!0,enumerable:!0,writable:!0})}function Xn(e,r,t,n,a){if(typeof n=="string")Mt(t,h(n),p(e,r,a));else{let s=p(e,r,n);switch(typeof s){case"string":Mt(t,s,p(e,r,a));break;case"symbol":Vt(s)&&(t[s]=p(e,r,a));break;default:throw new O(n)}}}function Wt(e,r,t){e.base.refs.types.set(r,t)}function ge(e,r,t,n){if(e.base.refs.types.get(t)!==n)throw new O(r)}function Kt(e,r,t,n){let a=t.k;if(a.length>0)for(let i=0,u=t.v,l=a.length;i<l;i++)Xn(e,r,n,a[i],u[i]);return n}function Qn(e,r,t){let n=b(e,t.i,t.t===10?{}:Object.create(null));return Kt(e,r,t.p,n),Lt(n,t.o),n}function eo(e,r){return b(e,r.i,new Date(r.s))}function ro(e,r){if(e.base.features&32){let t=h(r.c);if(t.length>Kn)throw new O(r);return b(e,r.i,new RegExp(t,r.m))}throw new z(r)}function to(e,r,t){let n=b(e,t.i,new Set);for(let a=0,s=t.a,i=s.length;a<i;a++)n.add(p(e,r,s[a]));return n}function no(e,r,t){let n=b(e,t.i,new Map);for(let a=0,s=t.e.k,i=t.e.v,u=s.length;a<u;a++)n.set(p(e,r,s[a]),p(e,r,i[a]));return n}function oo(e,r){if(r.s.length>qn)throw new O(r);return b(e,r.i,wr(h(r.s)))}function ao(e,r,t){var u;let n=Bt(t.c),a=p(e,r,t.f),s=(u=t.b)!=null?u:0;if(s<0||s>a.byteLength)throw new O(t);return b(e,t.i,new n(a,s,t.l))}function so(e,r,t){var i;let n=p(e,r,t.f),a=(i=t.b)!=null?i:0;if(a<0||a>n.byteLength)throw new O(t);return b(e,t.i,new DataView(n,a,t.l))}function Gt(e,r,t,n){if(t.p){let a=Kt(e,r,t.p,{});Object.defineProperties(n,Object.getOwnPropertyDescriptors(a))}return n}function io(e,r,t){let n=b(e,t.i,new AggregateError([],h(t.m)));return Gt(e,r,t,n)}function uo(e,r,t){let n=Vr(t,it,t.s),a=b(e,t.i,new n(h(t.m)));return Gt(e,r,t,a)}function lo(e,r,t){let n=ee(),a=b(e,t.i,n.p),s=p(e,r,t.f);return t.s?n.s(s):n.f(s),a}function co(e,r,t){return b(e,t.i,Object(p(e,r,t.f)))}function fo(e,r,t){let n=e.base.plugins;if(n){let a=h(t.c);for(let s=0,i=n.length;s<i;s++){let u=n[s];if(u.tag===a)return b(e,t.i,u.deserialize(t.s,new Br(e,r),{id:t.i}))}}throw new X(t.c)}function So(e,r){let t=b(e,r.i,b(e,r.s,ee()).p);return Wt(e,r.s,22),t}function mo(e,r,t){let n=e.base.refs.get(t.i);if(n)return ge(e,t,t.i,22),n.s(p(e,r,t.a[1])),o;throw new V("Promise")}function po(e,r,t){let n=e.base.refs.get(t.i);if(n)return ge(e,t,t.i,22),n.f(p(e,r,t.a[1])),o;throw new V("Promise")}function go(e,r,t){p(e,r,t.a[0]);let n=p(e,r,t.a[1]);return Pt(n)}function yo(e,r,t){p(e,r,t.a[0]);let n=p(e,r,t.a[1]);return ht(n)}function No(e,r,t){let n=b(e,t.i,re());Wt(e,t.i,31);let a=t.a,s=a.length;if(s)for(let i=0;i<s;i++)p(e,r,a[i]);return n}function bo(e,r,t){let n=e.base.refs.get(t.i);if(n)return ge(e,t,t.i,31),n.next(p(e,r,t.f)),o;throw new V("Stream")}function vo(e,r,t){let n=e.base.refs.get(t.i);if(n)return ge(e,t,t.i,31),n.throw(p(e,r,t.f)),o;throw new V("Stream")}function Co(e,r,t){let n=e.base.refs.get(t.i);if(n)return ge(e,t,t.i,31),n.return(p(e,r,t.f)),o;throw new V("Stream")}function Ao(e,r,t){return p(e,r,t.f),o}function Eo(e,r,t){return p(e,r,t.a[1]),o}function Io(e,r,t){let n=b(e,t.i,hr([],t.s,t.l));for(let a=0,s=t.a.length;a<s;a++)n.v[a]=p(e,r,t.a[a]);return n}function p(e,r,t){if(r>e.base.depthLimit)throw new Q(e.base.depthLimit);switch(r+=1,t.t){case 2:return Vr(t,st,t.s);case 0:return Number(t.s);case 1:return h(String(t.s));case 3:if(String(t.s).length>Wn)throw new O(t);return BigInt(t.s);case 4:return e.base.refs.get(t.i);case 18:return Zn(e,t);case 9:return $n(e,r,t);case 10:case 11:return Qn(e,r,t);case 5:return eo(e,t);case 6:return ro(e,t);case 7:return to(e,r,t);case 8:return no(e,r,t);case 19:return oo(e,t);case 16:case 15:return ao(e,r,t);case 20:return so(e,r,t);case 14:return io(e,r,t);case 13:return uo(e,r,t);case 12:return lo(e,r,t);case 17:return Vr(t,ot,t.s);case 21:return co(e,r,t);case 25:return fo(e,r,t);case 22:return So(e,t);case 23:return mo(e,r,t);case 24:return po(e,r,t);case 28:return go(e,r,t);case 30:return yo(e,r,t);case 31:return No(e,r,t);case 32:return bo(e,r,t);case 33:return vo(e,r,t);case 34:return Co(e,r,t);case 27:return Ao(e,r,t);case 29:return Eo(e,r,t);case 35:return Io(e,r,t);default:throw new z(t)}}function ir(e,r){try{return p(e,0,r)}catch(t){throw new Je(t)}}var Ro=()=>T,Po=Ro.toString(),Ht=/=>/.test(Po);function ur(e,r){return Ht?(e.length===1?e[0]:"("+e.join(",")+")")+"=>"+(r.startsWith("{")?"("+r+")":r):"function("+e.join(",")+"){return "+r+"}"}function Jt(e,r){return Ht?(e.length===1?e[0]:"("+e.join(",")+")")+"=>{"+r+"}":"function("+e.join(",")+"){"+r+"}"}var Xt="hjkmoquxzABCDEFGHIJKLNPQRTUVWXYZ$_",Zt=Xt.length,Qt="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_",$t=Qt.length;function Mr(e){let r=e%Zt,t=Xt[r];for(e=(e-r)/Zt;e>0;)r=e%$t,t+=Qt[r],e=(e-r)/$t;return t}var xo=/^[$A-Z_][0-9A-Z_$]*$/i;function Lr(e){let r=e[0];return(r==="$"||r==="_"||r>="A"&&r<="Z"||r>="a"&&r<="z")&&xo.test(e)}function Ne(e){switch(e.t){case 0:return e.s+"="+e.v;case 2:return e.s+".set("+e.k+","+e.v+")";case 1:return e.s+".add("+e.v+")";case 3:return e.s+".delete("+e.k+")";case 4:return"Object.defineProperty("+e.s+',"__proto__",{value:'+e.k+",configurable:!0,enumerable:!0,writable:!0})"}}function To(e){let r=[],t=e[0];for(let n=1,a=e.length,s,i=t;n<a;n++)s=e[n],s.t===0&&s.v===i.v?t={t:0,s:s.s,k:o,v:Ne(t)}:s.t===2&&s.s===i.s?t={t:2,s:Ne(t),k:s.k,v:s.v}:s.t===1&&s.s===i.s?t={t:1,s:Ne(t),k:o,v:s.v}:s.t===3&&s.s===i.s?t={t:3,s:Ne(t),k:s.k,v:o}:(r.push(t),t=s),i=s;return r.push(t),r}function sn(e){if(e.length){let r="",t=To(e);for(let n=0,a=t.length;n<a;n++)r+=Ne(t[n])+",";return r}return o}var Oo="Object.create(null)",wo="new Set",ho="new Map",zo="Promise.resolve",_o="Promise.reject",ko={3:"Object.freeze",2:"Object.seal",1:"Object.preventExtensions",0:o};function un(e,r){return{mode:e,plugins:r.plugins,features:r.features,marked:new Set(r.markedRefs),stack:[],flags:[],assignments:[]}}function Do(){return{valid:new Map,vars:[]}}function lr(e){return{mode:1,base:un(1,e),state:Do(),child:o}}function cr(e){return{mode:2,base:un(2,e),state:e,child:o}}var Ur=class{constructor(r){this._p=r}serialize(r){return f(this._p,r)}};function Fo(e,r){let t=e.valid.get(r);t==null&&(t=e.valid.size,e.valid.set(r,t));let n=e.vars[t];return n==null&&(n=Mr(t),e.vars[t]=n),n}function Bo(e){return le+"["+e+"]"}function m(e,r){return e.mode===1?Fo(e.state,r):Bo(r)}function w(e,r){e.marked.add(r)}function jr(e,r){return e.marked.has(r)}function qr(e,r,t){r!==0&&(w(e.base,t),e.base.flags.push({type:r,value:m(e,t)}))}function Vo(e){let r="";for(let t=0,n=e.flags,a=n.length;t<a;t++){let s=n[t];r+=ko[s.type]+"("+s.value+"),"}return r}function ln(e){let r=sn(e.assignments),t=Vo(e);return r?t?r+t:r:t}function Wr(e,r,t){e.assignments.push({t:0,s:r,k:o,v:t})}function Mo(e,r,t){e.base.assignments.push({t:1,s:m(e,r),k:o,v:t})}function ye(e,r,t,n){e.base.assignments.push({t:2,s:m(e,r),k:t,v:n})}function en(e,r,t){e.base.assignments.push({t:3,s:m(e,r),k:t,v:o})}function be(e,r,t,n){Wr(e.base,m(e,r)+"["+t+"]",n)}function Yr(e,r,t,n){if(!de(t)){e.base.assignments.push({t:4,s:m(e,r),k:n,v:o});return}Wr(e.base,m(e,r)+"."+t,n)}function Lo(e,r,t,n){Wr(e.base,m(e,r)+".v["+t+"]",n)}function F(e,r){return r.t===4&&e.stack.includes(r.i)}function ae(e,r,t){return e.mode===1&&!jr(e.base,r)?t:m(e,r)+"="+t}function Uo(e){return L+'.get("'+e.s+'")'}function rn(e,r,t,n){return t?F(e.base,t)?(w(e.base,r),be(e,r,n,m(e,t.i)),""):f(e,t):""}function jo(e,r){let t=r.i,n=r.a,a=n.length;if(a>0){e.base.stack.push(t);let s=rn(e,t,n[0],0),i=s==="";for(let u=1,l;u<a;u++)l=rn(e,t,n[u],u),s+=","+l,i=l==="";return e.base.stack.pop(),qr(e,r.o,r.i),"["+s+(i?",]":"]")}return"[]"}function tn(e,r,t,n){if(typeof t=="string"){let a=Number(t),s=a>=0&&a.toString()===t||Lr(t);if(F(e.base,n)){let i=m(e,n.i);return w(e.base,r.i),s&&a!==a?Yr(e,r.i,t,i):be(e,r.i,s?t:'"'+t+'"',i),""}return de(t)?(s?t:'"'+t+'"')+":"+f(e,n):'["'+t+'"]:'+f(e,n)}return"["+f(e,t)+"]:"+f(e,n)}function cn(e,r,t){let n=t.k,a=n.length;if(a>0){let s=t.v;e.base.stack.push(r.i);let i=tn(e,r,n[0],s[0]);for(let u=1,l=i;u<a;u++)l=tn(e,r,n[u],s[u]),i+=(l&&i&&",")+l;return e.base.stack.pop(),"{"+i+"}"}return"{}"}function Yo(e,r){return qr(e,r.o,r.i),cn(e,r,r.p)}function qo(e,r,t,n){let a=cn(e,r,t);return a!=="{}"?"Object.assign("+n+","+a+")":n}function Wo(e,r,t,n,a){let s=e.base,i=f(e,a),u=Number(n),l=u>=0&&u.toString()===n||Lr(n);if(F(s,a))l&&u!==u?Yr(e,r.i,n,i):be(e,r.i,l?n:'"'+n+'"',i);else{let g=s.assignments;s.assignments=t,l&&u!==u?Yr(e,r.i,n,i):be(e,r.i,l?n:'"'+n+'"',i),s.assignments=g}}function Ko(e,r,t,n,a){if(typeof n=="string")Wo(e,r,t,n,a);else{let s=e.base,i=s.stack;s.stack=[];let u=f(e,a);s.stack=i;let l=s.assignments;s.assignments=t,be(e,r.i,f(e,n),u),s.assignments=l}}function Go(e,r,t){let n=t.k,a=n.length;if(a>0){let s=[],i=t.v;e.base.stack.push(r.i);for(let u=0;u<a;u++)Ko(e,r,s,n[u],i[u]);return e.base.stack.pop(),sn(s)}return o}function Kr(e,r,t){if(r.p){let n=e.base;if(n.features&8)t=qo(e,r,r.p,t);else{w(n,r.i);let a=Go(e,r,r.p);if(a)return"("+ae(e,r.i,t)+","+a+m(e,r.i)+")"}}return t}function Ho(e,r){return qr(e,r.o,r.i),Kr(e,r,Oo)}function Jo(e){return'new Date("'+e.s+'")'}function Zo(e,r){if(e.base.features&32)return"/"+h(r.c)+"/"+r.m;throw new z(r)}function nn(e,r,t){let n=e.base;return F(n,t)?(w(n,r),Mo(e,r,m(e,t.i)),""):f(e,t)}function $o(e,r){let t=wo,n=r.a,a=n.length,s=r.i;if(a>0){e.base.stack.push(s);let i=nn(e,s,n[0]);for(let u=1,l=i;u<a;u++)l=nn(e,s,n[u]),i+=(l&&i&&",")+l;e.base.stack.pop(),i&&(t+="(["+i+"])")}return t}function on(e,r,t,n,a){let s=e.base;if(F(s,t)){let i=m(e,t.i);if(w(s,r),F(s,n)){let l=m(e,n.i);return ye(e,r,i,l),""}if(n.t!==4&&n.i!=null&&jr(s,n.i)){let l="("+f(e,n)+",["+a+","+a+"])";return ye(e,r,i,m(e,n.i)),en(e,r,a),l}let u=s.stack;return s.stack=[],ye(e,r,i,f(e,n)),s.stack=u,""}if(F(s,n)){let i=m(e,n.i);if(w(s,r),t.t!==4&&t.i!=null&&jr(s,t.i)){let l="("+f(e,t)+",["+a+","+a+"])";return ye(e,r,m(e,t.i),i),en(e,r,a),l}let u=s.stack;return s.stack=[],ye(e,r,f(e,t),i),s.stack=u,""}return"["+f(e,t)+","+f(e,n)+"]"}function Xo(e,r){let t=ho,n=r.e.k,a=n.length,s=r.i,i=r.f,u=m(e,i.i),l=e.base;if(a>0){let g=r.e.v;l.stack.push(s);let S=on(e,s,n[0],g[0],u);for(let d=1,K=S;d<a;d++)K=on(e,s,n[d],g[d],u),S+=(K&&S&&",")+K;l.stack.pop(),S&&(t+="(["+S+"])")}return i.t===26&&(w(l,i.i),t="("+f(e,i)+","+t+")"),t}function Qo(e,r){return q(e,r.f)+'("'+r.s+'")'}function ea(e,r){return"new "+r.c+"("+f(e,r.f)+","+r.b+","+r.l+")"}function ra(e,r){return"new DataView("+f(e,r.f)+","+r.b+","+r.l+")"}function ta(e,r){let t=r.i;e.base.stack.push(t);let n=Kr(e,r,'new AggregateError([],"'+r.m+'")');return e.base.stack.pop(),n}function na(e,r){return Kr(e,r,"new "+Ae[r.s]+'("'+r.m+'")')}function oa(e,r){let t,n=r.f,a=r.i,s=r.s?zo:_o,i=e.base;if(F(i,n)){let u=m(e,n.i);t=s+(r.s?"().then("+ur([],u)+")":"().catch("+Jt([],"throw "+u)+")")}else{i.stack.push(a);let u=f(e,n);i.stack.pop(),t=s+"("+u+")"}return t}function aa(e,r){return"Object("+f(e,r.f)+")"}function q(e,r){let t=f(e,r);return r.t===4?t:"("+t+")"}function sa(e,r){if(e.mode===1)throw new z(r);return"("+ae(e,r.s,q(e,r.f)+"()")+").p"}function ia(e,r){if(e.mode===1)throw new z(r);return q(e,r.a[0])+"("+m(e,r.i)+","+f(e,r.a[1])+")"}function ua(e,r){if(e.mode===1)throw new z(r);return q(e,r.a[0])+"("+m(e,r.i)+","+f(e,r.a[1])+")"}function la(e,r){let t=e.base.plugins;if(t)for(let n=0,a=t.length;n<a;n++){let s=t[n];if(s.tag===r.c)return e.child==null&&(e.child=new Ur(e)),s.serialize(r.s,e.child,{id:r.i})}throw new X(r.c)}function ca(e,r){let t="",n=!1;return r.f.t!==4&&(w(e.base,r.f.i),t="("+f(e,r.f)+",",n=!0),t+=ae(e,r.i,"("+Et+")("+m(e,r.f.i)+")"),n&&(t+=")"),t}function fa(e,r){return q(e,r.a[0])+"("+f(e,r.a[1])+")"}function Sa(e,r){let t=r.a[0],n=r.a[1],a=e.base,s="";t.t!==4&&(w(a,t.i),s+="("+f(e,t)),n.t!==4&&(w(a,n.i),s+=(s?",":"(")+f(e,n)),s&&(s+=",");let i=ae(e,r.i,"("+It+")("+m(e,n.i)+","+m(e,t.i)+")");return s?s+i+")":i}function ma(e,r){return q(e,r.a[0])+"("+f(e,r.a[1])+")"}function pa(e,r){let t=ae(e,r.i,q(e,r.f)+"()"),n=r.a.length;if(n){let a=f(e,r.a[0]);for(let s=1;s<n;s++)a+=","+f(e,r.a[s]);return"("+t+","+a+","+m(e,r.i)+")"}return t}function da(e,r){return m(e,r.i)+".next("+f(e,r.f)+")"}function ga(e,r){return m(e,r.i)+".throw("+f(e,r.f)+")"}function ya(e,r){return m(e,r.i)+".return("+f(e,r.f)+")"}function an(e,r,t,n){let a=e.base;return F(a,n)?(w(a,r),Lo(e,r,t,m(e,n.i)),""):f(e,n)}function Na(e,r){let t=r.a,n=t.length,a=r.i;if(n>0){e.base.stack.push(a);let s=an(e,a,0,t[0]);for(let i=1,u=s;i<n;i++)u=an(e,a,i,t[i]),s+=(u&&s&&",")+u;if(e.base.stack.pop(),s)return"{__SEROVAL_SEQUENCE__:!0,v:["+s+"],t:"+r.s+",d:"+r.l+"}"}return"{__SEROVAL_SEQUENCE__:!0,v:[],t:-1,d:0}"}function ba(e,r){switch(r.t){case 17:return nt[r.s];case 18:return Uo(r);case 9:return jo(e,r);case 10:return Yo(e,r);case 11:return Ho(e,r);case 5:return Jo(r);case 6:return Zo(e,r);case 7:return $o(e,r);case 8:return Xo(e,r);case 19:return Qo(e,r);case 16:case 15:return ea(e,r);case 20:return ra(e,r);case 14:return ta(e,r);case 13:return na(e,r);case 12:return oa(e,r);case 21:return aa(e,r);case 22:return sa(e,r);case 25:return la(e,r);case 26:return wt[r.s];case 35:return Na(e,r);default:throw new z(r)}}function f(e,r){switch(r.t){case 2:return at[r.s];case 0:return""+r.s;case 1:return'"'+r.s+'"';case 3:return r.s+"n";case 4:return m(e,r.i);case 23:return ia(e,r);case 24:return ua(e,r);case 27:return ca(e,r);case 28:return fa(e,r);case 29:return Sa(e,r);case 30:return ma(e,r);case 31:return pa(e,r);case 32:return da(e,r);case 33:return ga(e,r);case 34:return ya(e,r);default:return ae(e,r.i,ba(e,r))}}function fr(e,r){let t=f(e,r);if(r.i!=null&&e.state.vars.length){let n=ln(e.base),a=t;if(n){let s=m(e,r.i);a=t+","+n+s,t.startsWith(s+"=")||(a=s+"="+a),a="("+a+")"}return"("+ur(e.state.vars,a)+")()"}return r.t===10?"("+t+")":t}function Sr(e,r){let t=f(e,r),n=r.i;if(n==null)return t;let a=ln(e.base),s=m(e,n),i=e.state.scopeId,u=i==null?"":le,l=a?"("+t+","+a+s+")":t;if(u==="")return r.t===10&&!a?"("+l+")":l;let g=i==null?"()":"("+le+'["'+y(i)+'"])';return"("+ur([u],l)+")"+g}function ie(e,r){return{type:1,base:me(e,r),child:o}}var Hr=class{constructor(r,t){this._p=r;this.depth=t}parse(r){return E(this._p,this.depth,r)}},Jr=class{constructor(r,t){this._p=r;this.depth=t}parse(r){return E(this._p,this.depth,r)}parseWithError(r){return W(this._p,this.depth,r)}isAlive(){return this._p.state.alive}pushPendingState(){et(this._p)}popPendingState(){ve(this._p)}onParse(r){se(this._p,r)}onError(r){Xr(this._p,r)}addCleanup(r){this._p.state.cleanups.push(r)}};function va(e){return{alive:!0,pending:0,initial:!0,buffer:[],onParse:e.onParse,onError:e.onError,onDone:e.onDone,cleanups:[]}}function Zr(e){return{type:2,base:me(2,e),state:va(e)}}function Ca(e,r,t){let n=[];for(let a=0,s=t.length;a<s;a++)a in t?n[a]=E(e,r,t[a]):n[a]=0;return n}function Aa(e,r,t,n){return ke(t,n,Ca(e,r,n))}function $r(e,r,t){let n=Object.entries(t),a=[],s=[];for(let i=0,u=n.length;i<u;i++)a.push(y(n[i][0])),s.push(E(e,r,n[i][1]));return C in t&&(a.push(I(e.base,C)),s.push(je(tr(e.base),E(e,r,Xe(t))))),v in t&&(a.push(I(e.base,v)),s.push(Ye(nr(e.base),E(e,r,e.type===1?re():er(t))))),P in t&&(a.push(I(e.base,P)),s.push($(t[P]))),R in t&&(a.push(I(e.base,R)),s.push(t[R]?H:J)),{k:a,v:s}}function Gr(e,r,t,n,a){return or(t,n,a,$r(e,r,n))}function Ea(e,r,t,n){return De(t,E(e,r,n.valueOf()))}function Ia(e,r,t,n){return Fe(t,n,E(e,r,n.buffer))}function Ra(e,r,t,n){return Be(t,n,E(e,r,n.buffer))}function Pa(e,r,t,n){return Ve(t,n,E(e,r,n.buffer))}function fn(e,r,t,n){let a=Z(n,e.base.features);return Me(t,n,a?$r(e,r,a):o)}function xa(e,r,t,n){let a=Z(n,e.base.features);return Le(t,n,a?$r(e,r,a):o)}function Ta(e,r,t,n){let a=[],s=[];for(let[i,u]of n.entries())a.push(E(e,r,i)),s.push(E(e,r,u));return ar(e.base,t,a,s)}function Oa(e,r,t,n){let a=[];for(let s of n.keys())a.push(E(e,r,s));return Ue(t,a)}function wa(e,r,t,n){let a=qe(t,D(e.base,4),[]);return e.type===1||(et(e),n.on({next:s=>{if(e.state.alive){let i=W(e,r,s);i&&se(e,We(t,i))}},throw:s=>{if(e.state.alive){let i=W(e,r,s);i&&se(e,Ke(t,i))}ve(e)},return:s=>{if(e.state.alive){let i=W(e,r,s);i&&se(e,Ge(t,i))}ve(e)}})),a}function ha(e,r,t){if(this.state.alive){let n=W(this,r,t);n&&se(this,c(23,e,o,o,o,o,o,[D(this.base,2),n],o,o,o,o)),ve(this)}}function za(e,r,t){if(this.state.alive){let n=W(this,r,t);n&&se(this,c(24,e,o,o,o,o,o,[D(this.base,3),n],o,o,o,o))}ve(this)}function _a(e,r,t,n){let a=_r(e.base,{});return e.type===2&&(et(e),n.then(ha.bind(e,a,r),za.bind(e,a,r))),_t(e.base,t,a)}function ka(e,r,t,n,a){for(let s=0,i=a.length;s<i;s++){let u=a[s];if(u.parse.sync&&u.test(n))return ce(t,u.tag,u.parse.sync(n,new Hr(e,r),{id:t}))}return o}function Da(e,r,t,n,a){for(let s=0,i=a.length;s<i;s++){let u=a[s];if(u.parse.stream&&u.test(n))return ce(t,u.tag,u.parse.stream(n,new Jr(e,r),{id:t}))}return o}function Sn(e,r,t,n){let a=e.base.plugins;return a?e.type===1?ka(e,r,t,n,a):Da(e,r,t,n,a):o}function Fa(e,r,t,n){let a=[];for(let s=0,i=n.v.length;s<i;s++)a[s]=E(e,r,n.v[s]);return He(t,a,n.t,n.d)}function Ba(e,r,t,n,a){switch(a){case Object:return Gr(e,r,t,n,!1);case o:return Gr(e,r,t,n,!0);case Date:return ze(t,n);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return fn(e,r,t,n);case Number:case Boolean:case String:case BigInt:return Ea(e,r,t,n);case ArrayBuffer:return sr(e.base,t,n);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return Ia(e,r,t,n);case DataView:return Pa(e,r,t,n);case Map:return Ta(e,r,t,n);case Set:return Oa(e,r,t,n);default:break}if(a===Promise||n instanceof Promise)return _a(e,r,t,n);let s=e.base.features;if(s&32&&a===RegExp)return _e(t,n);if(s&16)switch(a){case BigInt64Array:case BigUint64Array:return Ra(e,r,t,n);default:break}if(s&1&&typeof AggregateError!="undefined"&&(a===AggregateError||n instanceof AggregateError))return xa(e,r,t,n);if(n instanceof Error)return fn(e,r,t,n);if(C in n||v in n)return Gr(e,r,t,n,!!a);throw new x(n)}function Va(e,r,t,n){if(Array.isArray(n))return Aa(e,r,t,n);if(Qe(n))return wa(e,r,t,n);if($e(n))return Fa(e,r,t,n);let a=n.constructor;if(a===j)return E(e,r,n.replacement);let s=Sn(e,r,t,n);return s||Ba(e,r,t,n,a)}function Ma(e,r,t){let n=Y(e.base,t);if(n.type!==0)return n.value;let a=Sn(e,r,n.value,t);if(a)return a;throw new x(t)}function E(e,r,t){if(r>=e.base.depthLimit)throw new Q(e.base.depthLimit);switch(typeof t){case"boolean":return t?H:J;case"undefined":return Ee;case"string":return $(t);case"number":return we(t);case"bigint":return he(t);case"object":{if(t){let n=Y(e.base,t);return n.type===0?Va(e,r+1,n.value,t):n.value}return Ie}case"symbol":return I(e.base,t);case"function":return Ma(e,r,t);default:throw new x(t)}}function ue(e,r){try{return E(e,0,r)}catch(t){throw t instanceof _?t:new _(t)}}function se(e,r){e.state.initial?e.state.buffer.push(r):Qr(e,r,!1)}function Xr(e,r){if(e.state.onError)e.state.onError(r);else throw r instanceof _?r:new _(r)}function mn(e){e.state.onDone&&e.state.onDone();for(let r=0,t=e.state.cleanups.length;r<t;r++)e.state.cleanups[r]()}function Qr(e,r,t){try{e.state.onParse(r,t)}catch(n){Xr(e,n)}}function et(e){e.state.pending++}function ve(e){--e.state.pending<=0&&mn(e)}function W(e,r,t){try{return E(e,r,t)}catch(n){return Xr(e,n),o}}function rt(e,r){let t=W(e,0,r);t&&(Qr(e,t,!0),e.state.initial=!1,La(e,e.state),e.state.pending<=0&&mr(e))}function La(e,r){for(let t=0,n=r.buffer.length;t<n;t++)Qr(e,r.buffer[t],!1)}function mr(e){e.state.alive&&(mn(e),e.state.alive=!1)}function su(e,r={}){let t=A(r.plugins),n=ie(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs}),a=ue(n,e),s=cr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked});return Sr(s,a)}async function iu(e,r={}){let t=A(r.plugins),n=te(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs}),a=await ne(n,e),s=cr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked});return Sr(s,a)}function uu(e,r={}){let t=A(r.plugins),n=ie(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs});return ue(n,e)}async function lu(e,r={}){let t=A(r.plugins),n=te(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs});return await ne(n,e)}function pn(e,r){let t=A(r.plugins),n=Zr({plugins:t,refs:r.refs,disabledFeatures:r.disabledFeatures,onParse(a,s){let i=cr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked}),u;try{u=Sr(i,a)}catch(l){r.onError&&r.onError(l);return}r.onSerialize(u,s)},onError:r.onError,onDone:r.onDone});return rt(n,e),mr.bind(null,n)}function cu(e,r){let t=A(r.plugins),n=Zr({plugins:t,refs:r.refs,disabledFeatures:r.disabledFeatures,depthLimit:r.depthLimit,onParse:r.onParse,onError:r.onError,onDone:r.onDone});return rt(n,e),mr.bind(null,n)}function fu(e,r){let t=A(r.plugins),n=Yt({plugins:t,refs:r.refs,features:r.features,disabledFeatures:r.disabledFeatures,depthLimit:r.depthLimit});return ir(n,e)}var pr=class{constructor(r){this.options=r;this.alive=!0;this.flushed=!1;this.done=!1;this.pending=0;this.cleanups=[];this.refs=new Map;this.keys=new Set;this.ids=0;this.plugins=A(r.plugins)}write(r,t){this.alive&&!this.flushed&&(this.pending++,this.keys.add(r),this.cleanups.push(pn(t,{plugins:this.plugins,scopeId:this.options.scopeId,refs:this.refs,disabledFeatures:this.options.disabledFeatures,onError:this.options.onError,onSerialize:(n,a)=>{this.alive&&this.options.onData(a?this.options.globalIdentifier+'["'+y(r)+'"]='+n:n)},onDone:()=>{this.alive&&(this.pending--,this.pending<=0&&this.flushed&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}})))}getNextID(){for(;this.keys.has(""+this.ids);)this.ids++;return""+this.ids}push(r){let t=this.getNextID();return this.write(t,r),t}flush(){this.alive&&(this.flushed=!0,this.pending<=0&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}close(){if(this.alive){for(let r=0,t=this.cleanups.length;r<t;r++)this.cleanups[r]();!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0),this.alive=!1}}};function Eu(e,r={}){let t=A(r.plugins),n=ie(1,{plugins:t,disabledFeatures:r.disabledFeatures}),a=ue(n,e),s=lr({plugins:t,features:n.base.features,markedRefs:n.base.marked});return fr(s,a)}async function Iu(e,r={}){let t=A(r.plugins),n=te(1,{plugins:t,disabledFeatures:r.disabledFeatures}),a=await ne(n,e),s=lr({plugins:t,features:n.base.features,markedRefs:n.base.marked});return fr(s,a)}function Ru(e){return(0,eval)(e)}function Pu(e,r={}){let t=A(r.plugins),n=ie(1,{plugins:t,disabledFeatures:r.disabledFeatures});return{t:ue(n,e),f:n.base.features,m:Array.from(n.base.marked)}}async function xu(e,r={}){let t=A(r.plugins),n=te(1,{plugins:t,disabledFeatures:r.disabledFeatures});return{t:await ne(n,e),f:n.base.features,m:Array.from(n.base.marked)}}function Tu(e,r={}){let t=A(r.plugins),n=lr({plugins:t,features:e.f,markedRefs:e.m});return fr(n,e.t)}function Ou(e,r={}){var i;let t=A(r.plugins),n=r.disabledFeatures||0,a=(i=e.f)!=null?i:63,s=jt({plugins:t,markedRefs:e.m,features:a&~n,disabledFeatures:n});return ir(s,e.t)}export{M as Feature,j as OpaqueReference,pr as Serializer,Nt as SerovalConflictedNodeIdError,Q as SerovalDepthLimitError,Je as SerovalDeserializationError,fe as SerovalError,O as SerovalMalformedNodeError,V as SerovalMissingInstanceError,X as SerovalMissingPluginError,Pe as SerovalMissingReferenceError,xe as SerovalMissingReferenceForIdError,oe as SerovalMode,_ as SerovalParserError,Pr as SerovalSerializationError,Ze as SerovalUnknownTypedArrayError,z as SerovalUnsupportedNodeError,x as SerovalUnsupportedTypeError,Tu as compileJSON,ai as createPlugin,Nn as createReference,re as createStream,su as crossSerialize,iu as crossSerializeAsync,pn as crossSerializeStream,Ru as deserialize,fu as fromCrossJSON,Ou as fromJSON,yn as getCrossReferenceHeader,A as resolvePlugins,Eu as serialize,Iu as serializeAsync,uu as toCrossJSON,lu as toCrossJSONAsync,cu as toCrossJSONStream,Pu as toJSON,xu as toJSONAsync};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserializer.d.ts","sourceRoot":"","sources":["../../../../src/core/context/deserializer.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,eAAe,EAGhB,MAAM,cAAc,CAAC;AActB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"deserializer.d.ts","sourceRoot":"","sources":["../../../../src/core/context/deserializer.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,eAAe,EAGhB,MAAM,cAAc,CAAC;AActB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAMxC,OAAO,KAAK,EAcV,WAAW,EAkBZ,MAAM,UAAU,CAAC;AA4BlB,MAAM,WAAW,8BAA+B,SAAQ,mBAAmB;IACzE,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B;;OAEG;IACH,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;KAAE,CAAC;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAID,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,8BAA8B,GACtC,uBAAuB,CAczB;AAED,MAAM,WAAW,iCACf,SAAQ,IAAI,CAAC,8BAA8B,EAAE,MAAM,CAAC;IACpD,UAAU,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACrB;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC;IAC1B,IAAI,EAAE,uBAAuB,CAAC;IAC9B,KAAK,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAC5C,KAAK,EAAE,wBAAwB,CAAC;CACjC;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,iCAAiC,GACzC,0BAA0B,CAS5B;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC;IACxB,IAAI,EAAE,uBAAuB,CAAC;IAC9B,KAAK,EAAE,wBAAwB,GAAG,SAAS,CAAC;CAC7C;AAED,MAAM,MAAM,+BAA+B,GAAG,8BAA8B,CAAC;AAE7E,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,+BAA+B,GACvC,wBAAwB,CAM1B;AAED,KAAK,mBAAmB,GACpB,0BAA0B,GAC1B,wBAAwB,CAAC;AAE7B,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,KAAK;gBADL,EAAE,EAAE,mBAAmB,EACvB,KAAK,EAAE,MAAM;IAGvB,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,GAAG,CAAC;CAGrC;AA2nBD,wBAAgB,cAAc,CAC5B,GAAG,EAAE,mBAAmB,EACxB,IAAI,EAAE,WAAW,GAChB,OAAO,CAMT"}
|
|
@@ -6,7 +6,8 @@ declare const enum AssignmentType {
|
|
|
6
6
|
Index = 0,
|
|
7
7
|
Add = 1,
|
|
8
8
|
Set = 2,
|
|
9
|
-
Delete = 3
|
|
9
|
+
Delete = 3,
|
|
10
|
+
Define = 4
|
|
10
11
|
}
|
|
11
12
|
interface IndexAssignment {
|
|
12
13
|
t: AssignmentType.Index;
|
|
@@ -32,7 +33,13 @@ interface DeleteAssignment {
|
|
|
32
33
|
k: string;
|
|
33
34
|
v: undefined;
|
|
34
35
|
}
|
|
35
|
-
|
|
36
|
+
interface DefineAssignment {
|
|
37
|
+
t: AssignmentType.Define;
|
|
38
|
+
s: string;
|
|
39
|
+
k: string;
|
|
40
|
+
v: undefined;
|
|
41
|
+
}
|
|
42
|
+
type Assignment = IndexAssignment | AddAssignment | SetAssignment | DeleteAssignment | DefineAssignment;
|
|
36
43
|
export interface FlaggedObject {
|
|
37
44
|
type: SerovalObjectFlags;
|
|
38
45
|
value: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../../src/core/context/serializer.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,kBAAkB,EAEnB,MAAM,cAAc,CAAC;AAYtB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGxC,OAAO,KAAK,EAeV,WAAW,EAoBZ,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../../src/core/context/serializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,6 +39,7 @@ export declare class StreamParsePluginContext {
|
|
|
39
39
|
popPendingState(): void;
|
|
40
40
|
onParse(node: SerovalNode): void;
|
|
41
41
|
onError(error: unknown): void;
|
|
42
|
+
addCleanup(callback: () => void): void;
|
|
42
43
|
}
|
|
43
44
|
interface StreamParserState {
|
|
44
45
|
alive: boolean;
|
|
@@ -48,6 +49,7 @@ interface StreamParserState {
|
|
|
48
49
|
onParse: (node: SerovalNode, initial: boolean) => void;
|
|
49
50
|
onError?: (error: unknown) => void;
|
|
50
51
|
onDone?: () => void;
|
|
52
|
+
cleanups: (() => void)[];
|
|
51
53
|
}
|
|
52
54
|
export declare function createStreamParserContext(options: StreamParserContextOptions): StreamParserContext;
|
|
53
55
|
type SOSParserContext = SyncParserContext | StreamParserContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-parser.d.ts","sourceRoot":"","sources":["../../../../src/core/context/sync-parser.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAe,WAAW,EAAE,MAAM,WAAW,CAAC;AAoBrD,OAAO,KAAK,EAQV,WAAW,EAWZ,MAAM,UAAU,CAAC;AAMlB,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAkB5E,MAAM,MAAM,wBAAwB,GAAG,wBAAwB,CAAC;AAEhE,mBAAW,UAAU;IACnB,IAAI,IAAI;IACR,MAAM,IAAI;CACX;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC;IACtB,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,sBAAsB,GAAG,SAAS,CAAC;CAC3C;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,wBAAwB,GAChC,iBAAiB,CAMnB;AAED,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,KAAK;gBADL,EAAE,EAAE,iBAAiB,EACrB,KAAK,EAAE,MAAM;IAGvB,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,WAAW;CAGlC;AAED,MAAM,WAAW,0BAA2B,SAAQ,wBAAwB;IAC1E,OAAO,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACvD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;IACxB,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,iBAAiB,CAAC;CAC1B;AACD,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,KAAK;gBADL,EAAE,EAAE,mBAAmB,EACvB,KAAK,EAAE,MAAM;IAGvB,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,WAAW;IAIjC,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,WAAW,GAAG,SAAS;IAItD,OAAO,IAAI,OAAO;IAIlB,gBAAgB,IAAI,IAAI;IAIxB,eAAe,IAAI,IAAI;IAIvB,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAIhC,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"sync-parser.d.ts","sourceRoot":"","sources":["../../../../src/core/context/sync-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"valid-properties.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/valid-properties.ts"],"names":[],"mappings":"AAOA,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAc/C;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAUrD"}
|
package/package.json
CHANGED
|
@@ -27,12 +27,6 @@ import { createSequence, type Sequence, sequenceToIterator } from '../sequence';
|
|
|
27
27
|
import type { Stream } from '../stream';
|
|
28
28
|
import { createStream, streamToAsyncIterable } from '../stream';
|
|
29
29
|
import { deserializeString } from '../string';
|
|
30
|
-
import {
|
|
31
|
-
SYM_ASYNC_ITERATOR,
|
|
32
|
-
SYM_IS_CONCAT_SPREADABLE,
|
|
33
|
-
SYM_ITERATOR,
|
|
34
|
-
SYM_TO_STRING_TAG,
|
|
35
|
-
} from '../symbols';
|
|
36
30
|
import type {
|
|
37
31
|
SerovalAggregateErrorNode,
|
|
38
32
|
SerovalArrayBufferNode,
|
|
@@ -71,6 +65,7 @@ import type {
|
|
|
71
65
|
TypedArrayValue,
|
|
72
66
|
} from '../utils/typed-array';
|
|
73
67
|
import { getTypedArrayConstructor } from '../utils/typed-array';
|
|
68
|
+
import { isValidKey, isValidSymbol } from '../utils/valid-properties';
|
|
74
69
|
|
|
75
70
|
const MAX_BASE64_LENGTH = 1_000_000; // ~0.75MB decoded
|
|
76
71
|
const MAX_BIGINT_LENGTH = 10_000;
|
|
@@ -279,34 +274,6 @@ function deserializeArray(
|
|
|
279
274
|
return result;
|
|
280
275
|
}
|
|
281
276
|
|
|
282
|
-
function isValidKey(key: string): boolean {
|
|
283
|
-
switch (key) {
|
|
284
|
-
case 'constructor':
|
|
285
|
-
case '__proto__':
|
|
286
|
-
case 'prototype':
|
|
287
|
-
case '__defineGetter__':
|
|
288
|
-
case '__defineSetter__':
|
|
289
|
-
case '__lookupGetter__':
|
|
290
|
-
case '__lookupSetter__':
|
|
291
|
-
// case 'then':
|
|
292
|
-
return false;
|
|
293
|
-
default:
|
|
294
|
-
return true;
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
function isValidSymbol(symbol: symbol): boolean {
|
|
299
|
-
switch (symbol) {
|
|
300
|
-
case SYM_ASYNC_ITERATOR:
|
|
301
|
-
case SYM_IS_CONCAT_SPREADABLE:
|
|
302
|
-
case SYM_TO_STRING_TAG:
|
|
303
|
-
case SYM_ITERATOR:
|
|
304
|
-
return true;
|
|
305
|
-
default:
|
|
306
|
-
return false;
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
|
|
310
277
|
function assignStringProperty(
|
|
311
278
|
object: Record<string | symbol, unknown>,
|
|
312
279
|
key: string,
|
|
@@ -21,7 +21,7 @@ import { GLOBAL_CONTEXT_REFERENCES, REFERENCES_KEY } from '../keys';
|
|
|
21
21
|
import type { PluginAccessOptions } from '../plugin';
|
|
22
22
|
import { SerovalMode } from '../plugin';
|
|
23
23
|
import { SPECIAL_REF_STRING } from '../special-reference';
|
|
24
|
-
import { serializeString } from '../string';
|
|
24
|
+
import { deserializeString, serializeString } from '../string';
|
|
25
25
|
import type {
|
|
26
26
|
SerovalAggregateErrorNode,
|
|
27
27
|
SerovalArrayBufferNode,
|
|
@@ -60,12 +60,14 @@ import type {
|
|
|
60
60
|
} from '../types';
|
|
61
61
|
import getIdentifier from '../utils/get-identifier';
|
|
62
62
|
import { isValidIdentifier } from '../utils/is-valid-identifier';
|
|
63
|
+
import { isValidKey } from '../utils/valid-properties';
|
|
63
64
|
|
|
64
65
|
const enum AssignmentType {
|
|
65
66
|
Index = 0,
|
|
66
67
|
Add = 1,
|
|
67
68
|
Set = 2,
|
|
68
69
|
Delete = 3,
|
|
70
|
+
Define = 4,
|
|
69
71
|
}
|
|
70
72
|
|
|
71
73
|
interface IndexAssignment {
|
|
@@ -96,12 +98,23 @@ interface DeleteAssignment {
|
|
|
96
98
|
v: undefined;
|
|
97
99
|
}
|
|
98
100
|
|
|
101
|
+
// Defines an own `__proto__` data property (see `createObjectAssign`).
|
|
102
|
+
// `k` holds the serialized value; `v` is unused so this never participates
|
|
103
|
+
// in the value-based merging done by `mergeAssignments`.
|
|
104
|
+
interface DefineAssignment {
|
|
105
|
+
t: AssignmentType.Define;
|
|
106
|
+
s: string;
|
|
107
|
+
k: string;
|
|
108
|
+
v: undefined;
|
|
109
|
+
}
|
|
110
|
+
|
|
99
111
|
// Array of assignments to be done (used for recursion)
|
|
100
112
|
type Assignment =
|
|
101
113
|
| IndexAssignment
|
|
102
114
|
| AddAssignment
|
|
103
115
|
| SetAssignment
|
|
104
|
-
| DeleteAssignment
|
|
116
|
+
| DeleteAssignment
|
|
117
|
+
| DefineAssignment;
|
|
105
118
|
|
|
106
119
|
export interface FlaggedObject {
|
|
107
120
|
type: SerovalObjectFlags;
|
|
@@ -118,6 +131,14 @@ function getAssignmentExpression(assignment: Assignment): string {
|
|
|
118
131
|
return assignment.s + '.add(' + assignment.v + ')';
|
|
119
132
|
case AssignmentType.Delete:
|
|
120
133
|
return assignment.s + '.delete(' + assignment.k + ')';
|
|
134
|
+
case AssignmentType.Define:
|
|
135
|
+
return (
|
|
136
|
+
'Object.defineProperty(' +
|
|
137
|
+
assignment.s +
|
|
138
|
+
',"__proto__",{value:' +
|
|
139
|
+
assignment.k +
|
|
140
|
+
',configurable:!0,enumerable:!0,writable:!0})'
|
|
141
|
+
);
|
|
121
142
|
}
|
|
122
143
|
}
|
|
123
144
|
|
|
@@ -482,6 +503,19 @@ function createObjectAssign(
|
|
|
482
503
|
key: string,
|
|
483
504
|
value: string,
|
|
484
505
|
): void {
|
|
506
|
+
if (!isValidKey(key)) {
|
|
507
|
+
// `obj.__proto__ = x`, including the bracket form `obj["__proto__"] = x`,
|
|
508
|
+
// invokes the prototype setter rather than creating an own property.
|
|
509
|
+
// Define the property instead so the round-trip preserves it as an actual
|
|
510
|
+
// own property (matches the inline path in `serializeProperty`).
|
|
511
|
+
ctx.base.assignments.push({
|
|
512
|
+
t: AssignmentType.Define,
|
|
513
|
+
s: getRefParam(ctx, ref),
|
|
514
|
+
k: value,
|
|
515
|
+
v: NIL,
|
|
516
|
+
});
|
|
517
|
+
return;
|
|
518
|
+
}
|
|
485
519
|
createAssignment(ctx.base, getRefParam(ctx, ref) + '.' + key, value);
|
|
486
520
|
}
|
|
487
521
|
|
|
@@ -630,7 +664,13 @@ function serializeProperty(
|
|
|
630
664
|
}
|
|
631
665
|
return '';
|
|
632
666
|
}
|
|
633
|
-
|
|
667
|
+
if (isValidKey(key)) {
|
|
668
|
+
return (isIdentifier ? key : '"' + key + '"') + ':' + serialize(ctx, val);
|
|
669
|
+
}
|
|
670
|
+
// `__proto__` as an identifier or string key in an object literal is the
|
|
671
|
+
// prototype setter, not an own property; use a computed key so the
|
|
672
|
+
// round-trip preserves it as an actual own property.
|
|
673
|
+
return '["' + key + '"]:' + serialize(ctx, val);
|
|
634
674
|
}
|
|
635
675
|
return '[' + serialize(ctx, key) + ']:' + serialize(ctx, val);
|
|
636
676
|
}
|
|
@@ -816,7 +856,7 @@ function serializeRegExp(
|
|
|
816
856
|
node: SerovalRegExpNode,
|
|
817
857
|
): string {
|
|
818
858
|
if (ctx.base.features & Feature.RegExp) {
|
|
819
|
-
return '/' + node.c + '/' + node.m;
|
|
859
|
+
return '/' + deserializeString(node.c) + '/' + node.m;
|
|
820
860
|
}
|
|
821
861
|
throw new SerovalUnsupportedNodeError(node);
|
|
822
862
|
}
|
|
@@ -173,6 +173,10 @@ export class StreamParsePluginContext {
|
|
|
173
173
|
onError(error: unknown): void {
|
|
174
174
|
onError(this._p, error);
|
|
175
175
|
}
|
|
176
|
+
|
|
177
|
+
addCleanup(callback: () => void): void {
|
|
178
|
+
this._p.state.cleanups.push(callback);
|
|
179
|
+
}
|
|
176
180
|
}
|
|
177
181
|
|
|
178
182
|
interface StreamParserState {
|
|
@@ -188,6 +192,8 @@ interface StreamParserState {
|
|
|
188
192
|
onParse: (node: SerovalNode, initial: boolean) => void;
|
|
189
193
|
onError?: (error: unknown) => void;
|
|
190
194
|
onDone?: () => void;
|
|
195
|
+
|
|
196
|
+
cleanups: (() => void)[];
|
|
191
197
|
}
|
|
192
198
|
|
|
193
199
|
function createStreamParserState(
|
|
@@ -201,6 +207,7 @@ function createStreamParserState(
|
|
|
201
207
|
onParse: options.onParse,
|
|
202
208
|
onError: options.onError,
|
|
203
209
|
onDone: options.onDone,
|
|
210
|
+
cleanups: [],
|
|
204
211
|
};
|
|
205
212
|
}
|
|
206
213
|
|
|
@@ -861,6 +868,10 @@ function onDone(ctx: StreamParserContext): void {
|
|
|
861
868
|
if (ctx.state.onDone) {
|
|
862
869
|
ctx.state.onDone();
|
|
863
870
|
}
|
|
871
|
+
|
|
872
|
+
for (let i = 0, len = ctx.state.cleanups.length; i < len; i++) {
|
|
873
|
+
ctx.state.cleanups[i]();
|
|
874
|
+
}
|
|
864
875
|
}
|
|
865
876
|
|
|
866
877
|
function onParseInternal(
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {
|
|
2
|
+
SYM_ASYNC_ITERATOR,
|
|
3
|
+
SYM_IS_CONCAT_SPREADABLE,
|
|
4
|
+
SYM_ITERATOR,
|
|
5
|
+
SYM_TO_STRING_TAG,
|
|
6
|
+
} from '../symbols';
|
|
7
|
+
|
|
8
|
+
export function isValidKey(key: string): boolean {
|
|
9
|
+
switch (key) {
|
|
10
|
+
case 'constructor':
|
|
11
|
+
case '__proto__':
|
|
12
|
+
case 'prototype':
|
|
13
|
+
case '__defineGetter__':
|
|
14
|
+
case '__defineSetter__':
|
|
15
|
+
case '__lookupGetter__':
|
|
16
|
+
case '__lookupSetter__':
|
|
17
|
+
// case 'then':
|
|
18
|
+
return false;
|
|
19
|
+
default:
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export function isValidSymbol(symbol: symbol): boolean {
|
|
25
|
+
switch (symbol) {
|
|
26
|
+
case SYM_ASYNC_ITERATOR:
|
|
27
|
+
case SYM_IS_CONCAT_SPREADABLE:
|
|
28
|
+
case SYM_TO_STRING_TAG:
|
|
29
|
+
case SYM_ITERATOR:
|
|
30
|
+
return true;
|
|
31
|
+
default:
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|