seroval 0.15.1 → 1.0.2

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.
Files changed (114) hide show
  1. package/README.md +3 -3
  2. package/dist/cjs/development/index.cjs +1287 -1945
  3. package/dist/cjs/development/index.cjs.map +3 -3
  4. package/dist/cjs/production/index.cjs +3 -3
  5. package/dist/esm/development/index.mjs +1288 -1946
  6. package/dist/esm/development/index.mjs.map +3 -3
  7. package/dist/esm/production/index.mjs +3 -3
  8. package/dist/types/core/Serializer.d.ts +2 -1
  9. package/dist/types/core/Serializer.d.ts.map +1 -1
  10. package/dist/types/core/UnsupportedTypeError.d.ts.map +1 -1
  11. package/dist/types/core/base-primitives.d.ts +6 -2
  12. package/dist/types/core/base-primitives.d.ts.map +1 -1
  13. package/dist/types/core/compat.d.ts +5 -13
  14. package/dist/types/core/compat.d.ts.map +1 -1
  15. package/dist/types/core/constants.d.ts +17 -29
  16. package/dist/types/core/constants.d.ts.map +1 -1
  17. package/dist/types/core/context/deserializer.d.ts +6 -16
  18. package/dist/types/core/context/deserializer.d.ts.map +1 -1
  19. package/dist/types/core/context/parser/async.d.ts +2 -11
  20. package/dist/types/core/context/parser/async.d.ts.map +1 -1
  21. package/dist/types/core/context/parser/stream.d.ts +10 -10
  22. package/dist/types/core/context/parser/stream.d.ts.map +1 -1
  23. package/dist/types/core/context/parser/sync.d.ts +5 -7
  24. package/dist/types/core/context/parser/sync.d.ts.map +1 -1
  25. package/dist/types/core/context/parser.d.ts +26 -5
  26. package/dist/types/core/context/parser.d.ts.map +1 -1
  27. package/dist/types/core/context/serializer.d.ts +21 -30
  28. package/dist/types/core/context/serializer.d.ts.map +1 -1
  29. package/dist/types/core/cross/async.d.ts.map +1 -1
  30. package/dist/types/core/cross/deserializer.d.ts.map +1 -1
  31. package/dist/types/core/cross/index.d.ts.map +1 -1
  32. package/dist/types/core/cross/parser.d.ts.map +1 -1
  33. package/dist/types/core/cross/serializer.d.ts +1 -1
  34. package/dist/types/core/cross/serializer.d.ts.map +1 -1
  35. package/dist/types/core/cross/stream.d.ts.map +1 -1
  36. package/dist/types/core/cross/sync.d.ts.map +1 -1
  37. package/dist/types/core/keys.d.ts.map +1 -1
  38. package/dist/types/core/literals.d.ts.map +1 -1
  39. package/dist/types/core/plugin.d.ts +21 -0
  40. package/dist/types/core/plugin.d.ts.map +1 -1
  41. package/dist/types/core/reference.d.ts.map +1 -1
  42. package/dist/types/core/special-reference.d.ts +4 -9
  43. package/dist/types/core/special-reference.d.ts.map +1 -1
  44. package/dist/types/core/stream.d.ts +18 -0
  45. package/dist/types/core/stream.d.ts.map +1 -0
  46. package/dist/types/core/string.d.ts.map +1 -1
  47. package/dist/types/core/tree/async.d.ts.map +1 -1
  48. package/dist/types/core/tree/deserializer.d.ts.map +1 -1
  49. package/dist/types/core/tree/index.d.ts +1 -1
  50. package/dist/types/core/tree/index.d.ts.map +1 -1
  51. package/dist/types/core/tree/serializer.d.ts +3 -11
  52. package/dist/types/core/tree/serializer.d.ts.map +1 -1
  53. package/dist/types/core/types.d.ts +28 -122
  54. package/dist/types/core/types.d.ts.map +1 -1
  55. package/dist/types/core/utils/deferred.d.ts +0 -7
  56. package/dist/types/core/utils/deferred.d.ts.map +1 -1
  57. package/dist/types/core/utils/error.d.ts +2 -1
  58. package/dist/types/core/utils/error.d.ts.map +1 -1
  59. package/dist/types/core/utils/get-identifier.d.ts.map +1 -1
  60. package/dist/types/core/utils/is-valid-identifier.d.ts.map +1 -1
  61. package/dist/types/core/utils/iterator-to-sequence.d.ts +0 -12
  62. package/dist/types/core/utils/iterator-to-sequence.d.ts.map +1 -1
  63. package/dist/types/core/utils/typed-array.d.ts +2 -0
  64. package/dist/types/core/utils/typed-array.d.ts.map +1 -1
  65. package/dist/types/index.d.ts +2 -3
  66. package/dist/types/index.d.ts.map +1 -1
  67. package/package.json +7 -7
  68. package/src/core/Serializer.ts +44 -28
  69. package/src/core/UnsupportedTypeError.ts +2 -3
  70. package/src/core/base-primitives.ts +124 -38
  71. package/src/core/compat.ts +5 -14
  72. package/src/core/constants.ts +28 -39
  73. package/src/core/context/deserializer.ts +122 -308
  74. package/src/core/context/parser/async.ts +163 -375
  75. package/src/core/context/parser/stream.ts +110 -381
  76. package/src/core/context/parser/sync.ts +125 -266
  77. package/src/core/context/parser.ts +119 -68
  78. package/src/core/context/serializer.ts +396 -473
  79. package/src/core/cross/async.ts +1 -1
  80. package/src/core/cross/deserializer.ts +1 -4
  81. package/src/core/cross/index.ts +26 -20
  82. package/src/core/cross/parser.ts +1 -1
  83. package/src/core/cross/serializer.ts +30 -20
  84. package/src/core/cross/stream.ts +1 -1
  85. package/src/core/cross/sync.ts +1 -1
  86. package/src/core/keys.ts +3 -1
  87. package/src/core/literals.ts +22 -8
  88. package/src/core/plugin.ts +48 -10
  89. package/src/core/reference.ts +4 -5
  90. package/src/core/special-reference.ts +5 -15
  91. package/src/core/stream.ts +205 -0
  92. package/src/core/string.ts +53 -22
  93. package/src/core/tree/async.ts +1 -1
  94. package/src/core/tree/deserializer.ts +4 -9
  95. package/src/core/tree/index.ts +15 -10
  96. package/src/core/tree/serializer.ts +6 -50
  97. package/src/core/types.ts +39 -179
  98. package/src/core/utils/deferred.ts +0 -27
  99. package/src/core/utils/error.ts +26 -15
  100. package/src/core/utils/get-identifier.ts +5 -4
  101. package/src/core/utils/is-valid-identifier.ts +6 -5
  102. package/src/core/utils/iterator-to-sequence.ts +0 -174
  103. package/src/core/utils/typed-array.ts +35 -11
  104. package/src/index.ts +3 -12
  105. package/dist/types/core/utils/constructors.d.ts +0 -5
  106. package/dist/types/core/utils/constructors.d.ts.map +0 -1
  107. package/dist/types/core/web-api.d.ts +0 -8
  108. package/dist/types/core/web-api.d.ts.map +0 -1
  109. package/dist/types/types.d.ts +0 -21
  110. package/dist/types/types.d.ts.map +0 -1
  111. package/src/core/utils/constructors.ts +0 -49
  112. package/src/core/web-api.ts +0 -138
  113. package/src/example.ts +0 -25
  114. package/src/types.ts +0 -84
@@ -1,3 +1,3 @@
1
- var{toString:mr}=Object.prototype,m=class extends Error{constructor(r){super('Unsupported type "'+mr.call(r)+'"');this.value=r}};function f(n,e){if(!n)throw e}var Ve={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"},T={[Symbol.asyncIterator]:0,[Symbol.hasInstance]:1,[Symbol.isConcatSpreadable]:2,[Symbol.iterator]:3,[Symbol.match]:4,[Symbol.matchAll]:5,[Symbol.replace]:6,[Symbol.search]:7,[Symbol.species]:8,[Symbol.split]:9,[Symbol.toPrimitive]:10,[Symbol.toStringTag]:11,[Symbol.unscopables]:12},je={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},Ue={2:"!0",3:"!1",1:"void 0",0:"null",4:"-0",5:"1/0",6:"-1/0",7:"0/0"},Me={2:!0,3:!1,1:void 0,0:null,4:-0,5:1/0,6:-1/0,7:NaN};var ne={0:"Error",1:"EvalError",2:"RangeError",3:"ReferenceError",4:"SyntaxError",5:"TypeError",6:"URIError"},Le={0:Error,1:EvalError,2:RangeError,3:ReferenceError,4:SyntaxError,5:TypeError,6:URIError};function g(n){return{t:2,i:void 0,s:n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}var y=g(2),v=g(3),se=g(1),x=g(0),_e=g(4),qe=g(5),We=g(6),Ke=g(7);function Sr(n){switch(n){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}}function d(n){let e="",r=0,t;for(let s=0,a=n.length;s<a;s++)t=Sr(n[s]),t&&(e+=n.slice(r,s)+t,r=s+1);return r===0?e=n:e+=n.slice(r),e}function p(n){return n.replace(/\\"/g,'"').replace(/\\\\/g,"\\").replace(/\\n/g,`
3
- `).replace(/\\r/g,"\r").replace(/\\b/g,"\b").replace(/\\t/g," ").replace(/\\f/g,"\f").replace(/\\x3C/g,"<").replace(/\\u2028/g,"\u2028").replace(/\\u2029/g,"\u2029")}var I="__SEROVAL_REFS__",B="$R",ae=`self.${B}`;function hr(n){return n==null?`${ae}=${ae}||[]`:`(${ae}=${ae}||{})["${d(n)}"]=[]`}var Ce=new Map,A=new Map;function gr(n,e){return Ce.set(e,n),A.set(n,e),e}function w(n){return Ce.has(n)}function yr(n){return A.has(n)}function He(n){return f(w(n),new Error("Missing reference id")),Ce.get(n)}function Ge(n){return f(yr(n),new Error("Missing reference for id:"+n)),A.get(n)}typeof globalThis!==void 0?Object.defineProperty(globalThis,I,{value:A,configurable:!0,writable:!1,enumerable:!1}):typeof window!==void 0?Object.defineProperty(window,I,{value:A,configurable:!0,writable:!1,enumerable:!1}):typeof self!==void 0?Object.defineProperty(self,I,{value:A,configurable:!0,writable:!1,enumerable:!1}):typeof global!==void 0&&Object.defineProperty(global,I,{value:A,configurable:!0,writable:!1,enumerable:!1});var b=(u=>(u[u.AggregateError=1]="AggregateError",u[u.ArrowFunction=4]="ArrowFunction",u[u.BigInt=8]="BigInt",u[u.ErrorPrototypeStack=16]="ErrorPrototypeStack",u[u.Map=32]="Map",u[u.ObjectAssign=128]="ObjectAssign",u[u.Promise=256]="Promise",u[u.Set=512]="Set",u[u.Symbol=1024]="Symbol",u[u.TypedArray=2048]="TypedArray",u[u.BigIntTypedArray=4096]="BigIntTypedArray",u[u.WebAPI=8192]="WebAPI",u))(b||{});function ie(n){return n instanceof EvalError?1:n instanceof RangeError?2:n instanceof ReferenceError?3:n instanceof SyntaxError?4:n instanceof TypeError?5:n instanceof URIError?6:0}function V(n,e){let r,t=ne[ie(n)];n.name!==t?r={name:n.name}:n.constructor.name!==t&&(r={name:n.constructor.name});let s=Object.getOwnPropertyNames(n);for(let a=0,i=s.length,o;a<i;a++)o=s[a],o!=="name"&&o!=="message"&&(o==="stack"?e&16&&(r=r||{},r[o]=n[o]):(r=r||{},r[o]=n[o]));return r}function oe(n){return Object.isFrozen(n)?3:Object.isSealed(n)?2:Object.isExtensible(n)?0:1}function de(n){switch(n){case 1/0:return qe;case-1/0:return We;default:return n!==n?Ke:Object.is(n,-0)?_e:{t:0,i:void 0,s:n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}}function N(n){return{t:1,i:void 0,s:d(n),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function le(n){return{t:3,i:void 0,s:""+n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function P(n){return{t:4,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function j(n,e){return{t:5,i:n,s:e.toISOString(),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:void 0,a:void 0,b:void 0,o:void 0}}function U(n,e){return{t:6,i:n,s:void 0,l:void 0,c:e.source,m:e.flags,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function M(n,e){let r=new Uint8Array(e),t=r.length,s=new Array(t);for(let a=0;a<t;a++)s[a]=r[a];return{t:21,i:n,s,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ue(n,e){return f(e in T,new Error("Only well-known symbols are supported.")),{t:17,i:n,s:T[e],l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ce(n,e){return{t:20,i:n,s:d(He(e)),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function L(n,e,r){return{t:40,i:n,s:r,l:void 0,c:d(e),m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function fe(n,e,r){return{t:9,i:n,s:void 0,l:e.length,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:void 0,b:void 0,o:oe(e)}}function pe(n,e){return{t:27,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function me(n,e,r){return{t:15,i:n,s:void 0,l:e.length,c:e.constructor.name,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function Se(n,e,r){return{t:16,i:n,s:void 0,l:e.length,c:e.constructor.name,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function he(n,e,r){return{t:22,i:n,s:void 0,l:e.byteLength,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function ge(n,e,r){return{t:13,i:n,s:ie(e),l:void 0,c:void 0,m:d(e.message),p:r,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ye(n,e,r){return{t:14,i:n,s:ie(e),l:void 0,c:void 0,m:d(e.message),p:r,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ve(n,e,r){return{t:7,i:n,s:void 0,l:e,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:void 0,b:void 0,o:void 0}}function _(n,e){return{t:43,i:void 0,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[n,e],f:void 0,b:void 0,o:void 0}}function be(n,e){return{t:45,i:void 0,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[n,e],f:void 0,b:void 0,o:void 0}}function Ne(n,e){return{body:e,cache:n.cache,credentials:n.credentials,headers:n.headers,integrity:n.integrity,keepalive:n.keepalive,method:n.method,mode:n.mode,redirect:n.redirect,referrer:n.referrer,referrerPolicy:n.referrerPolicy}}function Re(n){return{headers:n.headers,status:n.status,statusText:n.statusText}}function Ee(n){return{bubbles:n.bubbles,cancelable:n.cancelable,composed:n.composed}}function xe(n){return{detail:n.detail,bubbles:n.bubbles,cancelable:n.cancelable,composed:n.composed}}function q(n){let e=[],r=-1,t=-1,s=n[Symbol.iterator]();for(;;)try{let a=s.next();if(e.push(a.value),a.done){t=e.length-1;break}}catch(a){r=e.length,e.push(a)}return{v:e,t:r,d:t}}function Ye(n){return()=>{let e=0;return{[Symbol.iterator](){return this},next(){if(e>n.d)return{done:!0,value:void 0};let r=e++,t=n.v[r];if(r===n.t)throw t;return{done:r===n.d,value:t}}}}}async function $e(n){let e=[],r=-1,t=-1,s=n[Symbol.asyncIterator]();for(;;)try{let a=await s.next();if(e.push(a.value),a.done){t=e.length-1;break}}catch(a){r=e.length,e.push(a)}return{v:e,t:r,d:t}}function Ze(n){return()=>{let e=0;return{[Symbol.asyncIterator](){return this},async next(){if(e>n.d)return{done:!0,value:void 0};let r=e++,t=n.v[r];if(r===n.t)throw t;return Promise.resolve({done:r===n.d,value:t})}}}}function Xe(n,e){return new ReadableStream({async start(r){let t=n[Symbol.asyncIterator]();for(;e.isAlive();)try{let s=await t.next();if(r.enqueue([s.done?2:0,s.value]),s.done){r.close();return}}catch(s){r.enqueue([1,s])}r.close()}})}function Qe(n){let e=n;return()=>{let[r,t]=e.tee(),s=r;e=t;let a=s.getReader();return{[Symbol.asyncIterator](){return this},async next(){let i=await a.read();if(i.done)return{done:!0,value:void 0};let[o,c]=i.value;if(o===1)throw c;return{done:o===2,value:c}}}}}async function er(n){let e=[],r=-1,t=-1,s=n.getReader();for(;;)try{let a=await s.read();if(e.push(a.value),a.done){t=e.length-1;break}}catch(a){r=e.length,t=r,e.push(a);break}return{v:e,t:r,d:t}}function rr(n){return new ReadableStream({start(e){for(let r=0;r<n.d;r++)e.enqueue(n.v[r]);n.t===-1?e.close():e.error(n.v[n.t])}})}var l={},ze={},Oe={};var tr={0:{},1:{},2:{},3:{},4:{},5:{},6:{},7:{},8:{}};var W=class{constructor(e){this.marked=new Set;this.plugins=e.plugins,this.features=16383^(e.disabledFeatures||0),this.refs=e.refs||new Map}markRef(e){this.marked.add(e)}isMarked(e){return this.marked.has(e)}getReference(e){let r=this.refs.get(e);if(r!=null)return this.markRef(r),P(r);let t=this.refs.size;return this.refs.set(e,t),w(e)?ce(t,e):t}getStrictReference(e){let r=this.refs.get(e);if(r!=null)return this.markRef(r),P(r);let t=this.refs.size;return this.refs.set(e,t),ce(t,e)}parseFunction(e){return f(w(e),new Error("Cannot serialize function without reference ID.")),this.getStrictReference(e)}parseWKSymbol(e){f(this.features&1024,new m(e));let r=this.refs.get(e);if(r!=null)return this.markRef(r),P(r);let t=e in T;f(e in T||w(e),new Error("Cannot serialize symbol without reference ID."));let s=this.refs.size;return this.refs.set(e,s),t?ue(s,e):ce(s,e)}parseSpecialReference(e){let r=tr[e],t=this.refs.get(r);if(t!=null)return this.markRef(t),P(t);let s=this.refs.size;return this.refs.set(r,s),{t:41,i:s,s:e,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}parseIteratorFactory(){let e=this.refs.get(ze);if(e!=null)return this.markRef(e),P(e);let r=this.refs.size;return this.refs.set(ze,r),{t:42,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseWKSymbol(Symbol.iterator),b:void 0,o:void 0}}parseAsyncIteratorFactory(e){let r=this.refs.get(Oe);if(r!=null)return this.markRef(r),P(r);let t=this.refs.size;return this.refs.set(Oe,t),{t:44,i:t,s:e,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseWKSymbol(Symbol.asyncIterator),b:void 0,o:void 0}}createObjectNode(e,r,t,s){return{t:t?11:10,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:s,e:void 0,a:void 0,f:void 0,b:void 0,o:oe(r)}}createMapNode(e,r,t,s){return{t:8,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:{k:r,v:t,s},a:void 0,f:this.parseSpecialReference(0),b:void 0,o:void 0}}};async function De(n){try{return[1,await n]}catch(e){return[0,e]}}function K(n,e){return{t:18,i:n,s:d(e.href),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:void 0,a:void 0,b:void 0,o:void 0}}function H(n,e){return{t:19,i:n,s:d(e.toString()),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:void 0,a:void 0,b:void 0,o:void 0}}function G(n,e){return{t:39,i:n,s:d(e.message),l:void 0,c:d(e.name),m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Ie(n,e,r){return{t:37,i:n,s:d(e),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:void 0,o:void 0}}function Ae(n,e,r){return{t:38,i:n,s:d(e),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:void 0,o:void 0}}function nr(n,e,r){return{t:46,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[e,r],f:void 0,b:void 0,o:void 0}}var C=class extends W{async parseItems(e){let r=[];for(let t=0,s=e.length;t<s;t++)t in e&&(r[t]=await this.parse(e[t]));return r}async parseArray(e,r){return fe(e,r,await this.parseItems(r))}async parseProperties(e){let r=Object.entries(e),t=[],s=[];for(let a=0,i=r.length;a<i;a++)t.push(d(r[a][0])),s.push(await this.parse(r[a][1]));if(this.features&1024){let a=Symbol.iterator;a in e&&(t.push(this.parseWKSymbol(a)),s.push(_(this.parseIteratorFactory(),await this.parse(q(e))))),a=Symbol.asyncIterator,a in e&&(t.push(this.parseWKSymbol(a)),s.push(be(this.parseAsyncIteratorFactory(0),await this.parse(await $e(e))))),a=Symbol.toStringTag,a in e&&(t.push(this.parseWKSymbol(a)),s.push(N(e[a]))),a=Symbol.isConcatSpreadable,a in e&&(t.push(this.parseWKSymbol(a)),s.push(e[a]?y:v))}return{k:t,v:s,s:t.length}}async parsePlainObject(e,r,t){return this.createObjectNode(e,r,t,await this.parseProperties(r))}async parseBoxed(e,r){return pe(e,await this.parse(r.valueOf()))}async parseTypedArray(e,r){return me(e,r,await this.parse(r.buffer))}async parseBigIntTypedArray(e,r){return Se(e,r,await this.parse(r.buffer))}async parseDataView(e,r){return he(e,r,await this.parse(r.buffer))}async parseError(e,r){let t=V(r,this.features);return ge(e,r,t?await this.parseProperties(t):void 0)}async parseAggregateError(e,r){let t=V(r,this.features);return ye(e,r,t?await this.parseProperties(t):void 0)}async parseMap(e,r){let t=[],s=[];for(let[a,i]of r.entries())t.push(await this.parse(a)),s.push(await this.parse(i));return this.createMapNode(e,t,s,r.size)}async parseSet(e,r){let t=[];for(let s of r.keys())t.push(await this.parse(s));return ve(e,r.size,t)}async parseBlob(e,r){return{t:23,i:e,s:void 0,l:void 0,c:d(r.type),m:void 0,p:void 0,e:void 0,f:await this.parse(await r.arrayBuffer()),a:void 0,b:void 0,o:void 0}}async parseFile(e,r){return{t:24,i:e,s:void 0,l:void 0,c:d(r.type),m:d(r.name),p:void 0,e:void 0,f:await this.parse(await r.arrayBuffer()),a:void 0,b:r.lastModified,o:void 0}}async parsePlainProperties(e){let r=e.length,t=[],s=[];for(let a=0;a<r;a++)t.push(d(e[a][0])),s.push(await this.parse(e[a][1]));return{k:t,v:s,s:r}}async parseHeaders(e,r){let t=[];return r.forEach((s,a)=>{t.push([a,s])}),{t:25,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:await this.parsePlainProperties(t),a:void 0,f:void 0,b:void 0,o:void 0}}async parseFormData(e,r){let t=[];return r.forEach((s,a)=>{t.push([a,s])}),{t:26,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:await this.parsePlainProperties(t),a:void 0,f:void 0,b:void 0,o:void 0}}async parseRequest(e,r){return{t:35,i:e,s:d(r.url),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:await this.parse(Ne(r,r.body?await r.clone().arrayBuffer():null)),a:void 0,b:void 0,o:void 0}}async parseResponse(e,r){return{t:36,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:void 0,a:[r.body?await this.parse(await r.clone().arrayBuffer()):x,await this.parse(Re(r))],b:void 0,o:void 0}}async parseEvent(e,r){return Ie(e,r.type,await this.parse(Ee(r)))}async parseCustomEvent(e,r){return Ae(e,r.type,await this.parse(xe(r)))}async parsePromise(e,r){let[t,s]=await De(r);return{t:12,i:e,s:t,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:await this.parse(s),b:void 0,o:void 0}}async parsePlugin(e,r){let t=this.plugins;if(t)for(let s=0,a=t.length;s<a;s++){let i=t[s];if(i.parse.async&&i.test(r))return L(e,i.tag,await i.parse.async(r,this,{id:e}))}}async parseReadableStream(e,r){return nr(e,this.parseSpecialReference(1),await this.parse(await er(r)))}async parseObject(e,r){if(Array.isArray(r))return this.parseArray(e,r);let t=r.constructor;switch(t){case Object:return this.parsePlainObject(e,r,!1);case void 0:return this.parsePlainObject(e,r,!0);case Date:return j(e,r);case RegExp:return U(e,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(e,r);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(e,r);default:break}let s=this.features;if(s&256&&(t===Promise||r instanceof Promise))return this.parsePromise(e,r);if(s&2048)switch(t){case ArrayBuffer:return M(e,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(e,r);case DataView:return this.parseDataView(e,r);default:break}if((s&4104)===4104)switch(t){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(e,r);default:break}if(s&32&&t===Map)return this.parseMap(e,r);if(s&512&&t===Set)return this.parseSet(e,r);if(s&8192)switch(t){case(typeof URL!="undefined"?URL:l):return K(e,r);case(typeof URLSearchParams!="undefined"?URLSearchParams:l):return H(e,r);case(typeof Blob!="undefined"?Blob:l):return this.parseBlob(e,r);case(typeof File!="undefined"?File:l):return this.parseFile(e,r);case(typeof Headers!="undefined"?Headers:l):return this.parseHeaders(e,r);case(typeof FormData!="undefined"?FormData:l):return this.parseFormData(e,r);case(typeof Request!="undefined"?Request:l):return this.parseRequest(e,r);case(typeof Response!="undefined"?Response:l):return this.parseResponse(e,r);case(typeof Event!="undefined"?Event:l):return this.parseEvent(e,r);case(typeof CustomEvent!="undefined"?CustomEvent:l):return this.parseCustomEvent(e,r);case(typeof DOMException!="undefined"?DOMException:l):return G(e,r);case(typeof ReadableStream!="undefined"?ReadableStream:l):return this.parseReadableStream(e,r);default:break}let a=await this.parsePlugin(e,r);if(a)return a;if(s&1&&typeof AggregateError!="undefined"&&(t===AggregateError||r instanceof AggregateError))return this.parseAggregateError(e,r);if(r instanceof Error)return this.parseError(e,r);if(s&1024&&(Symbol.iterator in r||Symbol.asyncIterator in r))return this.parsePlainObject(e,r,!!t);throw new m(r)}async parse(e){switch(e){case!0:return y;case!1:return v;case void 0:return se;case null:return x;default:break}switch(typeof e){case"string":return N(e);case"number":return de(e);case"bigint":return f(this.features&8,new m(e)),le(e);case"object":{let r=this.getReference(e);return typeof r=="number"?this.parseObject(r,e):r}case"symbol":return this.parseWKSymbol(e);case"function":return this.parseFunction(e);default:throw new m(e)}}};var J=class extends C{constructor(){super(...arguments);this.mode="vanilla"}};function sr(n){switch(n){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 Error(`Unknown TypedArray "${n}"`)}}function Fe(){let n,e;return{promise:new Promise((r,t)=>{n=r,e=t}),resolve(r){n(r)},reject(r){e(r)}}}function ar(){let n;return{stream:new ReadableStream({start(e){n=e}}),close(){n.close()},enqueue(e){n.enqueue(e)},error(e){n.error(e)}}}function ir(n,e){switch(e){case 3:return Object.freeze(n);case 1:return Object.preventExtensions(n);case 2:return Object.seal(n);default:return n}}var z=class{constructor(e){this.plugins=e.plugins,this.refs=e.refs||new Map}deserializeReference(e){return this.assignIndexedValue(e.i,Ge(p(e.s)))}deserializeArray(e){let r=e.l,t=this.assignIndexedValue(e.i,new Array(r)),s;for(let a=0;a<r;a++)s=e.a[a],s&&(t[a]=this.deserialize(s));return ir(t,e.o),t}deserializeProperties(e,r){let t=e.s;if(t){let s=e.k,a=e.v;for(let i=0,o;i<t;i++)o=s[i],typeof o=="string"?r[p(o)]=this.deserialize(a[i]):r[this.deserialize(o)]=this.deserialize(a[i])}return r}deserializeObject(e){let r=this.assignIndexedValue(e.i,e.t===10?{}:Object.create(null));return this.deserializeProperties(e.p,r),ir(r,e.o),r}deserializeDate(e){return this.assignIndexedValue(e.i,new Date(e.s))}deserializeRegExp(e){return this.assignIndexedValue(e.i,new RegExp(e.c,e.m))}deserializeSet(e){let r=this.assignIndexedValue(e.i,new Set),t=e.a;for(let s=0,a=e.l;s<a;s++)r.add(this.deserialize(t[s]));return r}deserializeMap(e){let r=this.assignIndexedValue(e.i,new Map),t=e.e.k,s=e.e.v;for(let a=0,i=e.e.s;a<i;a++)r.set(this.deserialize(t[a]),this.deserialize(s[a]));return r}deserializeArrayBuffer(e){let r=new Uint8Array(e.s);return this.assignIndexedValue(e.i,r.buffer)}deserializeTypedArray(e){let r=sr(e.c),t=this.deserialize(e.f);return this.assignIndexedValue(e.i,new r(t,e.b,e.l))}deserializeDataView(e){let r=this.deserialize(e.f);return this.assignIndexedValue(e.i,new DataView(r,e.b,e.l))}deserializeDictionary(e,r){if(e.p){let t=this.deserializeProperties(e.p,{});Object.assign(r,t)}return r}deserializeAggregateError(e){let r=this.assignIndexedValue(e.i,new AggregateError([],p(e.m)));return this.deserializeDictionary(e,r)}deserializeError(e){let r=Le[e.s],t=this.assignIndexedValue(e.i,new r(p(e.m)));return this.deserializeDictionary(e,t)}async deserializePromise(e){let r=Fe(),t=this.assignIndexedValue(e.i,r),s=this.deserialize(e.f);return e.s?r.resolve(s):r.reject(s),t.promise}deserializeURL(e){return this.assignIndexedValue(e.i,new URL(p(e.s)))}deserializeURLSearchParams(e){return this.assignIndexedValue(e.i,new URLSearchParams(p(e.s)))}deserializeBlob(e){let r=this.deserialize(e.f);return this.assignIndexedValue(e.i,new Blob([r],{type:p(e.c)}))}deserializeFile(e){let r=this.deserialize(e.f);return this.assignIndexedValue(e.i,new File([r],p(e.m),{type:p(e.c),lastModified:e.b}))}deserializeHeaders(e){let r=this.assignIndexedValue(e.i,new Headers),t=e.e.k,s=e.e.v;for(let a=0,i=e.e.s;a<i;a++)r.set(p(t[a]),this.deserialize(s[a]));return r}deserializeFormData(e){let r=this.assignIndexedValue(e.i,new FormData),t=e.e.k,s=e.e.v;for(let a=0,i=e.e.s;a<i;a++)r.set(p(t[a]),this.deserialize(s[a]));return r}deserializeBoxed(e){return this.assignIndexedValue(e.i,Object(this.deserialize(e.f)))}deserializeRequest(e){return this.assignIndexedValue(e.i,new Request(p(e.s),this.deserialize(e.f)))}deserializeResponse(e){return this.assignIndexedValue(e.i,new Response(this.deserialize(e.a[0]),this.deserialize(e.a[1])))}deserializeEvent(e){return this.assignIndexedValue(e.i,new Event(p(e.s),this.deserialize(e.f)))}deserializeCustomEvent(e){return this.assignIndexedValue(e.i,new CustomEvent(p(e.s),this.deserialize(e.f)))}deserializeDOMException(e){return this.assignIndexedValue(e.i,new DOMException(p(e.s),p(e.c)))}deserializePlugin(e){let r=this.plugins;if(r)for(let t=0,s=r.length;t<s;t++){let a=r[t];if(a.tag===e.c)return this.assignIndexedValue(e.i,a.deserialize(e.s,this,{id:e.i}))}throw new Error('Missing plugin for tag "'+e.c+'".')}deserializePromiseConstructor(e){return this.assignIndexedValue(e.i,Fe()).promise}deserializePromiseResolve(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.resolve(this.deserialize(e.a[1]))}deserializePromiseReject(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.reject(this.deserialize(e.a[1]))}deserializeReadableStreamConstructor(e){return this.assignIndexedValue(e.i,ar()).stream}deserializeReadableStreamEnqueue(e){let r=this.refs.get(e.i);f(r,new Error("Missing ReadableStream instance.")),r.enqueue(this.deserialize(e.a[1]))}deserializeReadableStreamError(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.error(this.deserialize(e.a[1]))}deserializeReadableStreamClose(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.close()}deserializeIteratorFactoryInstance(e){let r=this.deserialize(e.a[1]);return Ye(r)}deserializeAsyncIteratorFactoryInstance(e){let r=this.deserialize(e.a[1]);return e.s?Qe(r):Ze(r)}deserializeReadableStream(e){return this.assignIndexedValue(e.i,rr(this.deserialize(e.a[1])))}deserialize(e){switch(e.t){case 2:return Me[e.s];case 0:return e.s;case 1:return p(e.s);case 3:return BigInt(e.s);case 4:return this.refs.get(e.i);case 20:return this.deserializeReference(e);case 9:return this.deserializeArray(e);case 10:case 11:return this.deserializeObject(e);case 5:return this.deserializeDate(e);case 6:return this.deserializeRegExp(e);case 7:return this.deserializeSet(e);case 8:return this.deserializeMap(e);case 21:return this.deserializeArrayBuffer(e);case 16:case 15:return this.deserializeTypedArray(e);case 22:return this.deserializeDataView(e);case 14:return this.deserializeAggregateError(e);case 13:return this.deserializeError(e);case 12:return this.deserializePromise(e);case 17:return je[e.s];case 18:return this.deserializeURL(e);case 19:return this.deserializeURLSearchParams(e);case 23:return this.deserializeBlob(e);case 24:return this.deserializeFile(e);case 25:return this.deserializeHeaders(e);case 26:return this.deserializeFormData(e);case 27:return this.deserializeBoxed(e);case 35:return this.deserializeRequest(e);case 36:return this.deserializeResponse(e);case 37:return this.deserializeEvent(e);case 38:return this.deserializeCustomEvent(e);case 39:return this.deserializeDOMException(e);case 40:return this.deserializePlugin(e);case 28:return this.deserializePromiseConstructor(e);case 29:return this.deserializePromiseResolve(e);case 30:return this.deserializePromiseReject(e);case 31:return this.deserializeReadableStreamConstructor(e);case 32:return this.deserializeReadableStreamEnqueue(e);case 34:return this.deserializeReadableStreamError(e);case 33:return this.deserializeReadableStreamClose(e);case 43:return this.deserializeIteratorFactoryInstance(e);case 45:return this.deserializeAsyncIteratorFactoryInstance(e);case 46:return this.deserializeReadableStream(e);case 41:case 42:case 44:default:throw new Error("invariant")}}};var Q=class extends z{constructor(r){super({plugins:r.plugins,refs:void 0});this.mode="vanilla";this.marked=new Set(r.markedRefs)}assignIndexedValue(r,t){return this.marked.has(r)&&this.refs.set(r,t),t}};var br=/^[$A-Z_][0-9A-Z_$]*$/i;function Te(n){let e=n[0];return(e==="$"||e==="_"||e>="A"&&e<="Z"||e>="a"&&e<="z")&&br.test(n)}function ee(n){switch(n.t){case"index":return n.s+"="+n.v;case"set":return n.s+".set("+n.k+","+n.v+")";case"add":return n.s+".add("+n.v+")";case"delete":return n.s+".delete("+n.k+")";default:return""}}function Nr(n){let e=[],r=n[0];for(let t=1,s=n.length,a,i=r;t<s;t++)a=n[t],a.t==="index"&&a.v===i.v?r={t:"index",s:a.s,k:void 0,v:ee(r)}:a.t==="set"&&a.s===i.s?r={t:"set",s:ee(r),k:a.k,v:a.v}:a.t==="add"&&a.s===i.s?r={t:"add",s:ee(r),k:void 0,v:a.v}:a.t==="delete"&&a.s===i.s?r={t:"delete",s:ee(r),k:a.k,v:void 0}:(e.push(r),r=a),i=a;return e.push(r),e}function or(n){if(n.length){let e="",r=Nr(n);for(let t=0,s=r.length;t<s;t++)e+=ee(r[t])+",";return e}}var Rr="Object.create(null)",Er="new Set",xr="new Map",Ir="Promise.resolve",Ar="Promise.reject",wr={3:"Object.freeze",2:"Object.seal",1:"Object.preventExtensions",0:void 0},O=class{constructor(e){this.stack=[];this.flags=[];this.assignments=[];this.plugins=e.plugins,this.features=e.features,this.marked=new Set(e.markedRefs)}createFunction(e,r){return this.features&4?(e.length===1?e[0]:"("+e.join(",")+")")+"=>"+r:"function("+e.join(",")+"){return "+r+"}"}createEffectfulFunction(e,r){return this.features&4?(e.length===1?e[0]:"("+e.join(",")+")")+"=>{"+r+"}":"function("+e.join(",")+"){"+r+"}"}markRef(e){this.marked.add(e)}isMarked(e){return this.marked.has(e)}pushObjectFlag(e,r){e!==0&&(this.markRef(r),this.flags.push({type:e,value:this.getRefParam(r)}))}resolveFlags(){let e="";for(let r=0,t=this.flags,s=t.length;r<s;r++){let a=t[r];e+=wr[a.type]+"("+a.value+"),"}return e}resolvePatches(){let e=or(this.assignments),r=this.resolveFlags();return e?r?e+r:e:r}createAssignment(e,r){this.assignments.push({t:"index",s:e,k:void 0,v:r})}createAddAssignment(e,r){this.assignments.push({t:"add",s:this.getRefParam(e),k:void 0,v:r})}createSetAssignment(e,r,t){this.assignments.push({t:"set",s:this.getRefParam(e),k:r,v:t})}createDeleteAssignment(e,r){this.assignments.push({t:"delete",s:this.getRefParam(e),k:r,v:void 0})}createArrayAssign(e,r,t){this.createAssignment(this.getRefParam(e)+"["+r+"]",t)}createObjectAssign(e,r,t){this.createAssignment(this.getRefParam(e)+"."+r,t)}isIndexedValueInStack(e){return e.t===4&&this.stack.includes(e.i)}serializeReference(e){return this.assignIndexedValue(e.i,I+'.get("'+e.s+'")')}serializeArrayItem(e,r,t){return r?this.isIndexedValueInStack(r)?(this.markRef(e),this.createArrayAssign(e,t,this.getRefParam(r.i)),""):this.serialize(r):""}serializeArray(e){let r=e.i;if(e.l){this.stack.push(r);let t=e.a,s=this.serializeArrayItem(r,t[0],0),a=s==="";for(let i=1,o=e.l,c;i<o;i++)c=this.serializeArrayItem(r,t[i],i),s+=","+c,a=c==="";return this.stack.pop(),this.pushObjectFlag(e.o,e.i),this.assignIndexedValue(r,"["+s+(a?",]":"]"))}return this.assignIndexedValue(r,"[]")}serializeProperty(e,r,t){if(typeof r=="string"){let s=Number(r),a=s>=0||Te(r);if(this.isIndexedValueInStack(t)){let i=this.getRefParam(t.i);return this.markRef(e.i),a&&s!==s?this.createObjectAssign(e.i,r,i):this.createArrayAssign(e.i,a?r:'"'+r+'"',i),""}return(a?r:'"'+r+'"')+":"+this.serialize(t)}return"["+this.serialize(r)+"]:"+this.serialize(t)}serializeProperties(e,r){let t=r.s;if(t){this.stack.push(e.i);let s=r.k,a=r.v,i=this.serializeProperty(e,s[0],a[0]);for(let o=1,c=i;o<t;o++)c=this.serializeProperty(e,s[o],a[o]),i+=(c&&i&&",")+c;return this.stack.pop(),"{"+i+"}"}return"{}"}serializeObject(e){return this.pushObjectFlag(e.o,e.i),this.assignIndexedValue(e.i,this.serializeProperties(e,e.p))}serializeWithObjectAssign(e,r,t){let s=this.serializeProperties(e,r);return s!=="{}"?"Object.assign("+t+","+s+")":t}serializeAssignment(e,r,t,s){if(typeof t=="string"){let a=this.serialize(s),i=Number(t),o=i>=0||Te(t);if(this.isIndexedValueInStack(s))o&&i!==i?this.createObjectAssign(e.i,t,a):this.createArrayAssign(e.i,o?t:'"'+t+'"',a);else{let c=this.assignments;this.assignments=r,o?this.createObjectAssign(e.i,t,a):this.createArrayAssign(e.i,o?t:'"'+t+'"',a),this.assignments=c}}else{let a=this.stack;this.stack=[];let i=this.serialize(s);this.stack=a;let o=this.assignments;this.assignments=r,this.createArrayAssign(e.i,this.serialize(t),i),this.assignments=o}}serializeAssignments(e,r){let t=r.s;if(t){this.stack.push(e.i);let s=[],a=r.k,i=r.v;for(let o=0;o<t;o++)this.serializeAssignment(e,s,a[o],i[o]);return this.stack.pop(),or(s)}}serializeDictionary(e,r){if(e.p)if(this.features&128)r=this.serializeWithObjectAssign(e,e.p,r);else{this.markRef(e.i);let t=this.serializeAssignments(e,e.p);if(t)return"("+this.assignIndexedValue(e.i,r)+","+t+this.getRefParam(e.i)+")"}return this.assignIndexedValue(e.i,r)}serializeNullConstructor(e){return this.pushObjectFlag(e.o,e.i),this.serializeDictionary(e,Rr)}serializeDate(e){return this.assignIndexedValue(e.i,'new Date("'+e.s+'")')}serializeRegExp(e){return this.assignIndexedValue(e.i,"/"+e.c+"/"+e.m)}serializeSetItem(e,r){return this.isIndexedValueInStack(r)?(this.markRef(e),this.createAddAssignment(e,this.getRefParam(r.i)),""):this.serialize(r)}serializeSet(e){let r=Er,t=e.l,s=e.i;if(t){let a=e.a;this.stack.push(s);let i=this.serializeSetItem(s,a[0]);for(let o=1,c=i;o<t;o++)c=this.serializeSetItem(s,a[o]),i+=(c&&i&&",")+c;this.stack.pop(),i&&(r+="(["+i+"])")}return this.assignIndexedValue(s,r)}serializeMapEntry(e,r,t,s){if(this.isIndexedValueInStack(r)){let a=this.getRefParam(r.i);if(this.markRef(e),this.isIndexedValueInStack(t)){let o=this.getRefParam(t.i);return this.createSetAssignment(e,a,o),""}if(t.t!==4&&t.i!=null&&this.isMarked(t.i)){let o="("+this.serialize(t)+",["+s+","+s+"])";return this.createSetAssignment(e,a,this.getRefParam(t.i)),this.createDeleteAssignment(e,s),o}let i=this.stack;return this.stack=[],this.createSetAssignment(e,a,this.serialize(t)),this.stack=i,""}if(this.isIndexedValueInStack(t)){let a=this.getRefParam(t.i);if(this.markRef(e),r.t!==4&&r.i!=null&&this.isMarked(r.i)){let o="("+this.serialize(r)+",["+s+","+s+"])";return this.createSetAssignment(e,this.getRefParam(r.i),a),this.createDeleteAssignment(e,s),o}let i=this.stack;return this.stack=[],this.createSetAssignment(e,this.serialize(r),a),this.stack=i,""}return"["+this.serialize(r)+","+this.serialize(t)+"]"}serializeMap(e){let r=xr,t=e.e.s,s=e.i,a=e.f,i=this.getRefParam(a.i);if(t){let o=e.e.k,c=e.e.v;this.stack.push(s);let E=this.serializeMapEntry(s,o[0],c[0],i);for(let F=1,Pe=E;F<t;F++)Pe=this.serializeMapEntry(s,o[F],c[F],i),E+=(Pe&&E&&",")+Pe;this.stack.pop(),E&&(r+="(["+E+"])")}return a.t===41&&(this.markRef(a.i),r="("+this.serialize(a)+","+r+")"),this.assignIndexedValue(s,r)}serializeArrayBuffer(e){let r="new Uint8Array(",t=e.s,s=t.length;if(s){r+="["+t[0];for(let a=1;a<s;a++)r+=","+t[a];r+="]"}return this.assignIndexedValue(e.i,r+").buffer")}serializeTypedArray(e){return this.assignIndexedValue(e.i,"new "+e.c+"("+this.serialize(e.f)+","+e.b+","+e.l+")")}serializeDataView(e){return this.assignIndexedValue(e.i,"new DataView("+this.serialize(e.f)+","+e.b+","+e.l+")")}serializeAggregateError(e){let r=e.i;this.stack.push(r);let t='new AggregateError([],"'+e.m+'")';return this.stack.pop(),this.serializeDictionary(e,t)}serializeError(e){return this.serializeDictionary(e,"new "+ne[e.s]+'("'+e.m+'")')}serializePromise(e){let r,t=e.f,s=e.i,a=e.s?Ir:Ar;if(this.isIndexedValueInStack(t)){let i=this.getRefParam(t.i);r=a+(e.s?"().then("+this.createFunction([],i)+")":"().catch("+this.createEffectfulFunction([],"throw "+i)+")")}else{this.stack.push(s);let i=this.serialize(t);this.stack.pop(),r=a+"("+i+")"}return this.assignIndexedValue(s,r)}serializeWKSymbol(e){return this.assignIndexedValue(e.i,Ve[e.s])}serializeURL(e){return this.assignIndexedValue(e.i,'new URL("'+e.s+'")')}serializeURLSearchParams(e){return this.assignIndexedValue(e.i,e.s?'new URLSearchParams("'+e.s+'")':"new URLSearchParams")}serializeBlob(e){return this.assignIndexedValue(e.i,"new Blob(["+this.serialize(e.f)+'],{type:"'+e.c+'"})')}serializeFile(e){return this.assignIndexedValue(e.i,"new File(["+this.serialize(e.f)+'],"'+e.m+'",{type:"'+e.c+'",lastModified:'+e.b+"})")}serializeHeaders(e){return this.assignIndexedValue(e.i,"new Headers("+this.serializeProperties(e,e.e)+")")}serializeFormDataEntry(e,r,t){return this.getRefParam(e)+'.append("'+r+'",'+this.serialize(t)+")"}serializeFormDataEntries(e,r){let t=e.e.k,s=e.e.v,a=e.i,i=this.serializeFormDataEntry(a,t[0],s[0]);for(let o=1;o<r;o++)i+=","+this.serializeFormDataEntry(a,t[o],s[o]);return i}serializeFormData(e){let r=e.e.s,t=e.i;r&&this.markRef(t);let s=this.assignIndexedValue(t,"new FormData()");if(r){let a=this.serializeFormDataEntries(e,r);return"("+s+","+(a?a+",":"")+this.getRefParam(t)+")"}return s}serializeBoxed(e){return this.assignIndexedValue(e.i,"Object("+this.serialize(e.f)+")")}serializeRequest(e){return this.assignIndexedValue(e.i,'new Request("'+e.s+'",'+this.serialize(e.f)+")")}serializeResponse(e){return this.assignIndexedValue(e.i,"new Response("+this.serialize(e.a[0])+","+this.serialize(e.a[1])+")")}serializeEvent(e){return this.assignIndexedValue(e.i,'new Event("'+e.s+'",'+this.serialize(e.f)+")")}serializeCustomEvent(e){return this.assignIndexedValue(e.i,'new CustomEvent("'+e.s+'",'+this.serialize(e.f)+")")}serializeDOMException(e){return this.assignIndexedValue(e.i,'new DOMException("'+e.s+'","'+e.c+'")')}serializePlugin(e){let r=this.plugins;if(r)for(let t=0,s=r.length;t<s;t++){let a=r[t];if(a.tag===e.c)return this.assignIndexedValue(e.i,a.serialize(e.s,this,{id:e.i}))}throw new Error('Missing plugin for tag "'+e.c+'".')}getConstructor(e){let r=this.serialize(e);return r===this.getRefParam(e.i)?r:"("+r+")"}serializePromiseConstructor(e){return this.assignIndexedValue(e.i,this.getConstructor(e.f)+"()")}serializePromiseResolve(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializePromiseReject(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializeReadableStreamConstructor(e){return this.assignIndexedValue(e.i,this.getConstructor(e.f)+"()")}serializeReadableStreamEnqueue(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializeReadableStreamError(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializeReadableStreamClose(e){return this.getConstructor(e.f)+"("+this.getRefParam(e.i)+")"}serializeSpecialReferenceValue(e){switch(e){case 0:return"[]";case 1:return this.createFunction(["s"],"new ReadableStream({start:"+this.createFunction(["c"],"Promise.resolve().then("+this.createEffectfulFunction(["i","v"],"for(i=0;i<s.d;i++)c.enqueue(s.v[i]);(s.t===-1)?c.close():c.error(s.v[i])")+")")+"})");case 2:return this.createFunction(["s","f","p"],"((p=new Promise("+this.createEffectfulFunction(["a","b"],"s=a,f=b")+")).s=s,p.f=f,p)");case 3:return this.createEffectfulFunction(["p","d"],'p.s(d),p.status="success",p.value=d;delete p.s;delete p.f');case 4:return this.createEffectfulFunction(["p","d"],'p.f(d),p.status="failure",p.value=d;delete p.s;delete p.f');case 5:return this.createFunction(["s","c"],"((s=new ReadableStream({start:"+this.createEffectfulFunction(["x"],"c=x")+"})).c=c,s)");case 6:return this.createEffectfulFunction(["s","d"],"s.c.enqueue(d)");case 7:return this.createEffectfulFunction(["s","d"],"s.c.error(d);delete s.c");case 8:return this.createEffectfulFunction(["s"],"s.c.close();delete s.c");default:return""}}serializeSpecialReference(e){return this.assignIndexedValue(e.i,this.serializeSpecialReferenceValue(e.s))}serializeIteratorFactory(e){return this.assignIndexedValue(e.i,this.createFunction(["s"],this.createFunction(["i","c","d","t"],"(i=0,t={["+this.serialize(e.f)+"]:"+this.createFunction([],"t")+",next:"+this.createEffectfulFunction([],"if(i>s.d)return{done:!0,value:void 0};c=i++,d=s.v[c];if(c===s.t)throw d;return{done:c===s.d,value:d}")+"})")))}serializeIteratorFactoryInstance(e){return this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")"}getStreamingAsyncIteratorFactory(e){return this.createFunction(["s"],this.createFunction(["b","t"],"(b=s.tee(),s=b[0],b=b[1].getReader(),t={["+this.serialize(e.f)+"]:"+this.createFunction([],"t")+",next:"+this.createFunction([],"b.read().then("+this.createEffectfulFunction(["d"],"if(d.done)return{done:!0,value:void 0};d=d.value;if(d[0]===1)throw d[1];return{done:d[0]===2,value:d[1]}")+")")+"})"))}getBlockingAsyncIteratorFactory(e){return this.createFunction(["s"],this.createFunction(["i","t"],"(i=0,t={["+this.serialize(e.f)+"]:"+this.createFunction([],"t")+",next:"+this.createFunction([],"Promise.resolve().then("+this.createEffectfulFunction(["c","d"],"if(i>s.d)return{done:!0,value:void 0};c=i++,d=s.v[c];if(c===s.t)throw d;return{done:c===s.d,value:d}")+")")+"})"))}serializeAsyncIteratorFactory(e){return this.assignIndexedValue(e.i,e.s?this.getStreamingAsyncIteratorFactory(e):this.getBlockingAsyncIteratorFactory(e))}serializeAsyncIteratorFactoryInstance(e){return this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")"}serializeReadableStream(e){this.stack.push(e.i);let r=this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")";return this.stack.pop(),this.assignIndexedValue(e.i,r)}serialize(e){switch(e.t){case 2:return Ue[e.s];case 0:return""+e.s;case 1:return'"'+e.s+'"';case 3:return e.s+"n";case 4:return this.getRefParam(e.i);case 20:return this.serializeReference(e);case 9:return this.serializeArray(e);case 10:return this.serializeObject(e);case 11:return this.serializeNullConstructor(e);case 5:return this.serializeDate(e);case 6:return this.serializeRegExp(e);case 7:return this.serializeSet(e);case 8:return this.serializeMap(e);case 21:return this.serializeArrayBuffer(e);case 16:case 15:return this.serializeTypedArray(e);case 22:return this.serializeDataView(e);case 14:return this.serializeAggregateError(e);case 13:return this.serializeError(e);case 12:return this.serializePromise(e);case 17:return this.serializeWKSymbol(e);case 18:return this.serializeURL(e);case 19:return this.serializeURLSearchParams(e);case 23:return this.serializeBlob(e);case 24:return this.serializeFile(e);case 25:return this.serializeHeaders(e);case 26:return this.serializeFormData(e);case 27:return this.serializeBoxed(e);case 28:return this.serializePromiseConstructor(e);case 29:return this.serializePromiseResolve(e);case 30:return this.serializePromiseReject(e);case 31:return this.serializeReadableStreamConstructor(e);case 32:return this.serializeReadableStreamEnqueue(e);case 34:return this.serializeReadableStreamError(e);case 33:return this.serializeReadableStreamClose(e);case 35:return this.serializeRequest(e);case 36:return this.serializeResponse(e);case 37:return this.serializeEvent(e);case 38:return this.serializeCustomEvent(e);case 39:return this.serializeDOMException(e);case 40:return this.serializePlugin(e);case 41:return this.serializeSpecialReference(e);case 42:return this.serializeIteratorFactory(e);case 43:return this.serializeIteratorFactoryInstance(e);case 44:return this.serializeAsyncIteratorFactory(e);case 45:return this.serializeAsyncIteratorFactoryInstance(e);case 46:return this.serializeReadableStream(e);default:throw new Error("invariant")}}};var ur="hjkmoquxzABCDEFGHIJKLNPQRTUVWXYZ$_",dr=ur.length,cr="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_",lr=cr.length;function Be(n){let e=n%dr,r=ur[e];for(n=(n-e)/dr;n>0;)e=n%lr,r+=cr[e],n=(n-e)/lr;return r}var k=class extends O{constructor(){super(...arguments);this.mode="vanilla";this.valid=new Map;this.vars=[]}markRef(r){this.marked.add(r)}getRefParam(r){let t=this.valid.get(r);t==null&&(t=this.valid.size,this.valid.set(r,t));let s=this.vars[t];return s==null&&(s=Be(t),this.vars[t]=s),s}assignIndexedValue(r,t){return this.isMarked(r)?this.getRefParam(r)+"="+t:t}serializePromiseConstructor(r){throw new Error('Unsupported node type "'+r.t+'".')}serializePromiseResolve(r){throw new Error('Unsupported node type "'+r.t+'".')}serializePromiseReject(r){throw new Error('Unsupported node type "'+r.t+'".')}serializeReadableStreamConstructor(r){throw new Error('Unsupported node type "'+r.t+'".')}serializeReadableStreamEnqueue(r){throw new Error('Unsupported node type "'+r.t+'".')}serializeReadableStreamError(r){throw new Error('Unsupported node type "'+r.t+'".')}serializeReadableStreamClose(r){throw new Error('Unsupported node type "'+r.t+'".')}serializeTop(r){let t=this.serialize(r);if(r.i!=null&&this.vars.length){let s=this.resolvePatches(),a=t;if(s){let i=this.getRefParam(r.i);a=t+","+s+i,t.startsWith(i+"=")||(a=i+"="+a)}return"("+this.createFunction(this.vars,"("+a+")")+")()"}return r.t===10?"("+t+")":t}};var h=class extends W{parseItems(e){let r=[];for(let t=0,s=e.length;t<s;t++)t in e&&(r[t]=this.parse(e[t]));return r}parseArray(e,r){return fe(e,r,this.parseItems(r))}parseProperties(e){let r=Object.entries(e),t=[],s=[];for(let a=0,i=r.length;a<i;a++)t.push(d(r[a][0])),s.push(this.parse(r[a][1]));if(this.features&1024){let a=Symbol.iterator;a in e&&(t.push(this.parseWKSymbol(a)),s.push(_(this.parseIteratorFactory(),this.parse(q(e))))),a=Symbol.toStringTag,a in e&&(t.push(this.parseWKSymbol(a)),s.push(N(e[a]))),a=Symbol.isConcatSpreadable,a in e&&(t.push(this.parseWKSymbol(a)),s.push(e[a]?y:v))}return{k:t,v:s,s:t.length}}parsePlainObject(e,r,t){return this.createObjectNode(e,r,t,this.parseProperties(r))}parseBoxed(e,r){return pe(e,this.parse(r.valueOf()))}parseTypedArray(e,r){return me(e,r,this.parse(r.buffer))}parseBigIntTypedArray(e,r){return Se(e,r,this.parse(r.buffer))}parseDataView(e,r){return he(e,r,this.parse(r.buffer))}parseError(e,r){let t=V(r,this.features);return ge(e,r,t?this.parseProperties(t):void 0)}parseAggregateError(e,r){let t=V(r,this.features);return ye(e,r,t?this.parseProperties(t):void 0)}parseMap(e,r){let t=[],s=[];for(let[a,i]of r.entries())t.push(this.parse(a)),s.push(this.parse(i));return this.createMapNode(e,t,s,r.size)}parseSet(e,r){let t=[];for(let s of r.keys())t.push(this.parse(s));return ve(e,r.size,t)}parsePlainProperties(e){let r=e.length,t=[],s=[];for(let a=0;a<r;a++)t.push(d(e[a][0])),s.push(this.parse(e[a][1]));return{k:t,v:s,s:r}}parseHeaders(e,r){let t=[];return r.forEach((s,a)=>{t.push([a,s])}),{t:25,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:this.parsePlainProperties(t),a:void 0,f:void 0,b:void 0,o:void 0}}parseFormData(e,r){let t=[];return r.forEach((s,a)=>{t.push([a,s])}),{t:26,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:this.parsePlainProperties(t),a:void 0,f:void 0,b:void 0,o:void 0}}parseEvent(e,r){return Ie(e,r.type,this.parse(Ee(r)))}parseCustomEvent(e,r){return Ae(e,r.type,this.parse(xe(r)))}parsePlugin(e,r){let t=this.plugins;if(t)for(let s=0,a=t.length;s<a;s++){let i=t[s];if(i.parse.sync&&i.test(r))return L(e,i.tag,i.parse.sync(r,this,{id:e}))}}parseObject(e,r){if(Array.isArray(r))return this.parseArray(e,r);let t=r.constructor;switch(t){case Object:return this.parsePlainObject(e,r,!1);case void 0:return this.parsePlainObject(e,r,!0);case Date:return j(e,r);case RegExp:return U(e,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(e,r);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(e,r);default:break}let s=this.features;if(s&2048)switch(t){case ArrayBuffer:return M(e,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(e,r);case DataView:return this.parseDataView(e,r);default:break}if((s&4104)===4104)switch(t){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(e,r);default:break}if(s&32&&t===Map)return this.parseMap(e,r);if(s&512&&t===Set)return this.parseSet(e,r);if(s&8192)switch(t){case(typeof URL!="undefined"?URL:l):return K(e,r);case(typeof URLSearchParams!="undefined"?URLSearchParams:l):return H(e,r);case(typeof Headers!="undefined"?Headers:l):return this.parseHeaders(e,r);case(typeof FormData!="undefined"?FormData:l):return this.parseFormData(e,r);case(typeof Event!="undefined"?Event:l):return this.parseEvent(e,r);case(typeof CustomEvent!="undefined"?CustomEvent:l):return this.parseCustomEvent(e,r);case(typeof DOMException!="undefined"?DOMException:l):return G(e,r);default:break}let a=this.parsePlugin(e,r);if(a)return a;if(s&1&&typeof AggregateError!="undefined"&&(t===AggregateError||r instanceof AggregateError))return this.parseAggregateError(e,r);if(r instanceof Error)return this.parseError(e,r);if(s&1024&&Symbol.iterator in r)return this.parsePlainObject(e,r,!!t);throw new m(r)}parse(e){switch(e){case!0:return y;case!1:return v;case void 0:return se;case null:return x;default:break}switch(typeof e){case"string":return N(e);case"number":return de(e);case"bigint":return f(this.features&8,new m(e)),le(e);case"object":{let r=this.getReference(e);return typeof r=="number"?this.parseObject(r,e):r}case"symbol":{f(this.features&1024,new m(e));let r=this.getReference(e);return typeof r=="number"?ue(r,e):r}case"function":return f(w(e),new Error("Cannot serialize function without reference ID.")),this.getStrictReference(e);default:throw new m(e)}}};var Y=class extends h{constructor(){super(...arguments);this.mode="vanilla"}};function fr(n,e={}){let r=new Y({plugins:e.plugins,disabledFeatures:e.disabledFeatures}),t=r.parse(n);return new k({plugins:e.plugins,features:r.features,markedRefs:r.marked}).serializeTop(t)}async function An(n,e={}){let r=new J({plugins:e.plugins,disabledFeatures:e.disabledFeatures}),t=await r.parse(n);return new k({plugins:e.plugins,features:r.features,markedRefs:r.marked}).serializeTop(t)}function wn(n){return(0,eval)(n)}function Pn(n,e={}){let r=new Y({plugins:e.plugins,disabledFeatures:e.disabledFeatures});return{t:r.parse(n),f:r.features,m:Array.from(r.marked)}}async function Cn(n,e={}){let r=new J({plugins:e.plugins,disabledFeatures:e.disabledFeatures});return{t:await r.parse(n),f:r.features,m:Array.from(r.marked)}}function zn(n,e={}){return new k({plugins:e.plugins,features:n.f,markedRefs:n.m}).serializeTop(n.t)}function On(n,e={}){return new Q({plugins:e.plugins,markedRefs:n.m}).deserialize(n.t)}var $=class extends C{constructor(){super(...arguments);this.mode="cross"}};var re=class extends z{constructor(){super(...arguments);this.mode="cross"}assignIndexedValue(r,t){return this.refs.has(r)||this.refs.set(r,t),t}};var D=class extends O{constructor(r){super(r);this.mode="cross";this.scopeId=r.scopeId}getRefParam(r){return typeof r=="string"?B+"."+r:B+"["+r+"]"}assignIndexedValue(r,t){return this.getRefParam(r)+"="+t}serializeTop(r){let t=this.serialize(r),s=r.i;if(s==null)return t;let a=this.resolvePatches(),i=this.getRefParam(s),o=this.scopeId==null?"":B,c=a?t+","+a:t;if(o==="")return a?"("+c+i+")":c;let E=this.scopeId==null?"()":"("+B+'["'+d(this.scopeId)+'"])',F=c+(a?i:"");return"("+this.createFunction([o],F)+")"+E}};var te=class extends h{constructor(r){super(r);this.alive=!0;this.pending=0;this.onParseCallback=r.onParse,this.onErrorCallback=r.onError,this.onDoneCallback=r.onDone}onParse(r,t){try{this.onParseCallback(r,t)}catch(s){this.onError(s)}}onError(r){if(this.onErrorCallback)this.onErrorCallback(r);else throw r}onDone(){this.onDoneCallback&&this.onDoneCallback()}push(r){this.onParse(this.parse(r),!1)}pushPendingState(){this.pending++}popPendingState(){--this.pending<=0&&this.onDone()}parseProperties(r){let t=Object.entries(r),s=[],a=[];for(let i=0,o=t.length;i<o;i++)s.push(d(t[i][0])),a.push(this.parse(t[i][1]));if(this.features&1024){let i=Symbol.iterator;i in r&&(s.push(this.parseWKSymbol(i)),a.push(_(this.parseIteratorFactory(),this.parse(q(r))))),i=Symbol.asyncIterator,i in r&&(s.push(this.parseWKSymbol(i)),a.push(be(this.parseAsyncIteratorFactory(1),this.parse(Xe(r,this))))),i=Symbol.toStringTag,i in r&&(s.push(this.parseWKSymbol(i)),a.push(N(r[i]))),i=Symbol.isConcatSpreadable,i in r&&(s.push(this.parseWKSymbol(i)),a.push(r[i]?y:v))}return{k:s,v:a,s:s.length}}pushReadableStreamReader(r,t){t.read().then(s=>{if(this.alive)if(s.done)this.onParse({t:33,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseSpecialReference(8),b:void 0,o:void 0},!1),this.popPendingState();else{let a=this.parseWithError(s.value);a&&(this.onParse({t:32,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(6),a],f:void 0,b:void 0,o:void 0},!1),this.pushReadableStreamReader(r,t))}},s=>{if(this.alive){let a=this.parseWithError(s);a&&this.onParse({t:34,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(7),a],f:void 0,b:void 0,o:void 0},!1),this.popPendingState()}})}parseReadableStream(r,t){let s=t.getReader();return this.pushPendingState(),this.pushReadableStreamReader(r,s),{t:31,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseSpecialReference(5),b:void 0,o:void 0}}parseRequest(r,t){return{t:35,i:r,s:d(t.url),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:this.parse(Ne(t,t.clone().body)),a:void 0,b:void 0,o:void 0}}parseResponse(r,t){return{t:36,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:void 0,a:[t.body?this.parse(t.clone().body):x,this.parse(Re(t))],b:void 0,o:void 0}}parsePromise(r,t){return t.then(s=>{let a=this.parseWithError(s);a&&this.onParse({t:29,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(3),a],f:void 0,b:void 0,o:void 0},!1),this.popPendingState()},s=>{if(this.alive){let a=this.parseWithError(s);a&&this.onParse({t:30,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(4),a],f:void 0,b:void 0,o:void 0},!1)}this.popPendingState()}),this.pushPendingState(),{t:28,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseSpecialReference(2),b:void 0,o:void 0}}parsePlugin(r,t){let s=this.plugins;if(s)for(let a=0,i=s.length;a<i;a++){let o=s[a];if(o.parse.stream&&o.test(t))return L(r,o.tag,o.parse.stream(t,this,{id:r}))}}parseObject(r,t){if(Array.isArray(t))return this.parseArray(r,t);let s=t.constructor;switch(s){case Object:return this.parsePlainObject(r,t,!1);case void 0:return this.parsePlainObject(r,t,!0);case Date:return j(r,t);case RegExp:return U(r,t);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(r,t);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(r,t);default:break}let a=this.features;if(a&256&&(s===Promise||t instanceof Promise))return this.parsePromise(r,t);if(a&2048)switch(s){case ArrayBuffer:return M(r,t);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(r,t);case DataView:return this.parseDataView(r,t);default:break}if((a&4104)===4104)switch(s){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(r,t);default:break}if(a&32&&s===Map)return this.parseMap(r,t);if(a&512&&s===Set)return this.parseSet(r,t);if(a&8192)switch(s){case(typeof URL!="undefined"?URL:l):return K(r,t);case(typeof URLSearchParams!="undefined"?URLSearchParams:l):return H(r,t);case(typeof Headers!="undefined"?Headers:l):return this.parseHeaders(r,t);case(typeof FormData!="undefined"?FormData:l):return this.parseFormData(r,t);case(typeof ReadableStream!="undefined"?ReadableStream:l):return this.parseReadableStream(r,t);case(typeof Request!="undefined"?Request:l):return this.parseRequest(r,t);case(typeof Response!="undefined"?Response:l):return this.parseResponse(r,t);case(typeof Event!="undefined"?Event:l):return this.parseEvent(r,t);case(typeof CustomEvent!="undefined"?CustomEvent:l):return this.parseCustomEvent(r,t);case(typeof DOMException!="undefined"?DOMException:l):return G(r,t);default:break}let i=this.parsePlugin(r,t);if(i)return i;if(a&1&&typeof AggregateError!="undefined"&&(s===AggregateError||t instanceof AggregateError))return this.parseAggregateError(r,t);if(t instanceof Error)return this.parseError(r,t);if(a&1024&&(Symbol.iterator in t||Symbol.asyncIterator in t))return this.parsePlainObject(r,t,!!s);throw new m(t)}parseWithError(r){try{return this.parse(r)}catch(t){this.onError(t);return}}start(r){let t=this.parseWithError(r);t&&(this.onParse(t,!0),this.pending<=0&&this.destroy())}destroy(){this.alive&&(this.onDone(),this.alive=!1)}isAlive(){return this.alive}};var Z=class extends te{constructor(){super(...arguments);this.mode="cross"}};var X=class extends h{constructor(){super(...arguments);this.mode="cross"}};function ds(n,e={}){let r=new X({plugins:e.plugins,disabledFeatures:e.disabledFeatures,refs:e.refs}),t=r.parse(n);return new D({plugins:e.plugins,features:r.features,scopeId:e.scopeId,markedRefs:r.marked}).serializeTop(t)}async function ls(n,e={}){let r=new $({plugins:e.plugins,disabledFeatures:e.disabledFeatures,refs:e.refs}),t=await r.parse(n);return new D({plugins:e.plugins,features:r.features,scopeId:e.scopeId,markedRefs:r.marked}).serializeTop(t)}function us(n,e={}){return new X({plugins:e.plugins,disabledFeatures:e.disabledFeatures,refs:e.refs}).parse(n)}async function cs(n,e={}){return new $({plugins:e.plugins,disabledFeatures:e.disabledFeatures,refs:e.refs}).parse(n)}function pr(n,e){let r=new Z({plugins:e.plugins,refs:e.refs,disabledFeatures:e.disabledFeatures,onParse(t,s){let a=new D({plugins:e.plugins,features:r.features,scopeId:e.scopeId,markedRefs:r.marked}),i;try{i=a.serializeTop(t)}catch(o){e.onError&&e.onError(o);return}e.onSerialize(i,s)},onError:e.onError,onDone:e.onDone});return r.start(n),()=>{r.destroy()}}function fs(n,e){let r=new Z({plugins:e.plugins,refs:e.refs,disabledFeatures:e.disabledFeatures,onParse:e.onParse,onError:e.onError,onDone:e.onDone});return r.start(n),()=>{r.destroy()}}function ps(n,e){return new re({plugins:e.plugins,refs:e.refs}).deserialize(n)}var we=class{constructor(e){this.options=e;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}write(e,r){this.alive&&!this.flushed&&(this.pending++,this.keys.add(e),this.cleanups.push(pr(r,{plugins:this.options.plugins,scopeId:this.options.scopeId,refs:this.refs,disabledFeatures:this.options.disabledFeatures,onError:this.options.onError,onSerialize:(t,s)=>{this.alive&&this.options.onData(s?this.options.globalIdentifier+'["'+d(e)+'"]='+t:t)},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(e){let r=this.getNextID();return this.write(r,e),r}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 e=0,r=this.cleanups.length;e<r;e++)this.cleanups[e]();!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0),this.alive=!1}}};function ys(n){return n}var Ns=fr;export{b as Feature,we as Serializer,zn as compileJSON,ys as createPlugin,gr as createReference,ds as crossSerialize,ls as crossSerializeAsync,pr as crossSerializeStream,Ns as default,wn as deserialize,ps as fromCrossJSON,On as fromJSON,hr as getCrossReferenceHeader,fr as serialize,An as serializeAsync,us as toCrossJSON,cs as toCrossJSONAsync,fs as toCrossJSONStream,Pn as toJSON,Cn as toJSONAsync};
1
+ var C=(o=>(o[o.AggregateError=1]="AggregateError",o[o.ArrowFunction=2]="ArrowFunction",o[o.ErrorPrototypeStack=4]="ErrorPrototypeStack",o[o.ObjectAssign=8]="ObjectAssign",o[o.BigIntTypedArray=16]="BigIntTypedArray",o))(C||{});function f(n,e){if(!n)throw e}function nr(n){switch(n){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}}function u(n){let e="",r=0,t;for(let s=0,o=n.length;s<o;s++)t=nr(n[s]),t&&(e+=n.slice(r,s)+t,r=s+1);return r===0?e=n:e+=n.slice(r),e}function sr(n){switch(n){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 n}}function S(n){return n.replace(/(\\\\|\\"|\\n|\\r|\\b|\\t|\\f|\\u2028|\\u2029|\\x3C)/g,sr)}var b="__SEROVAL_REFS__",K="$R",q=`self.${K}`;function or(n){return n==null?`${q}=${q}||[]`:`(${q}=${q}||{})["${u(n)}"]=[]`}var Ie=new Map,x=new Map;function ir(n,e){return Ie.set(e,n),x.set(n,e),e}function Z(n){return Ie.has(n)}function ar(n){return x.has(n)}function Ce(n){return f(Z(n),new Error("Missing reference id")),Ie.get(n)}function Oe(n){return f(ar(n),new Error("Missing reference for id:"+n)),x.get(n)}typeof globalThis!="undefined"?Object.defineProperty(globalThis,b,{value:x,configurable:!0,writable:!1,enumerable:!1}):typeof window!="undefined"?Object.defineProperty(window,b,{value:x,configurable:!0,writable:!1,enumerable:!1}):typeof self!="undefined"?Object.defineProperty(self,b,{value:x,configurable:!0,writable:!1,enumerable:!1}):typeof global!="undefined"&&Object.defineProperty(global,b,{value:x,configurable:!0,writable:!1,enumerable:!1});function wr(n){return n}function ze(n,e){for(let r=0,t=e.length;r<t;r++){let s=e[r];n.has(s)||(n.add(s),s.extends&&ze(n,s.extends))}}function c(n){if(n){let e=new Set;return ze(e,n),[...e]}}var{toString:lr}=Object.prototype,p=class extends Error{constructor(r){super('Unsupported type "'+lr.call(r)+'"');this.value=r}};var Te={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"},L={[Symbol.asyncIterator]:0,[Symbol.hasInstance]:1,[Symbol.isConcatSpreadable]:2,[Symbol.iterator]:3,[Symbol.match]:4,[Symbol.matchAll]:5,[Symbol.replace]:6,[Symbol.search]:7,[Symbol.species]:8,[Symbol.split]:9,[Symbol.toPrimitive]:10,[Symbol.toStringTag]:11,[Symbol.unscopables]:12},ke={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},Fe={2:"!0",3:"!1",1:"void 0",0:"null",4:"-0",5:"1/0",6:"-1/0",7:"0/0"},De={2:!0,3:!1,1:void 0,0:null,4:-0,5:1/0,6:-1/0,7:NaN};var X={0:"Error",1:"EvalError",2:"RangeError",3:"ReferenceError",4:"SyntaxError",5:"TypeError",6:"URIError"},Ve={0:Error,1:EvalError,2:RangeError,3:ReferenceError,4:SyntaxError,5:TypeError,6:URIError};function h(n){return{t:2,i:void 0,s:n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}var y=h(2),v=h(3),Q=h(1),ee=h(0),Be=h(4),je=h(5),Me=h(6),_e=h(7);function re(n){return n instanceof EvalError?1:n instanceof RangeError?2:n instanceof ReferenceError?3:n instanceof SyntaxError?4:n instanceof TypeError?5:n instanceof URIError?6:0}function dr(n){let e=X[re(n)];return n.name!==e?{name:n.name}:n.constructor.name!==e?{name:n.constructor.name}:{}}function O(n,e){let r=dr(n),t=Object.getOwnPropertyNames(n);for(let s=0,o=t.length,i;s<o;s++)i=t[s],i!=="name"&&i!=="message"&&(i==="stack"?e&4&&(r=r||{},r[i]=n[i]):(r=r||{},r[i]=n[i]));return r}function te(n){return Object.isFrozen(n)?3:Object.isSealed(n)?2:Object.isExtensible(n)?0:1}function ne(n){switch(n){case 1/0:return je;case-1/0:return Me}return n!==n?_e:Object.is(n,-0)?Be:{t:0,i:void 0,s:n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function N(n){return{t:1,i:void 0,s:u(n),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function se(n){return{t:3,i:void 0,s:""+n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function We(n){return{t:4,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function oe(n,e){return{t:5,i:n,s:e.toISOString(),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:void 0,a:void 0,b:void 0,o:void 0}}function ie(n,e){return{t:6,i:n,s:void 0,l:void 0,c:u(e.source),m:e.flags,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ae(n,e){let r=new Uint8Array(e),t=r.length,s=new Array(t);for(let o=0;o<t;o++)s[o]=r[o];return{t:19,i:n,s,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Ke(n,e){return f(e in L,new Error("Only well-known symbols are supported.")),{t:17,i:n,s:L[e],l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Ee(n,e){return{t:18,i:n,s:u(Ce(e)),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function z(n,e,r){return{t:25,i:n,s:r,l:void 0,c:u(e),m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function le(n,e,r){return{t:9,i:n,s:void 0,l:e.length,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:void 0,b:void 0,o:te(e)}}function de(n,e){return{t:21,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function ue(n,e,r){return{t:15,i:n,s:void 0,l:e.length,c:e.constructor.name,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function ce(n,e,r){return{t:16,i:n,s:void 0,l:e.length,c:e.constructor.name,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function fe(n,e,r){return{t:20,i:n,s:void 0,l:e.byteLength,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function pe(n,e,r){return{t:13,i:n,s:re(e),l:void 0,c:void 0,m:u(e.message),p:r,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function me(n,e,r){return{t:14,i:n,s:re(e),l:void 0,c:void 0,m:u(e.message),p:r,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ge(n,e,r){return{t:7,i:n,s:void 0,l:e,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:void 0,b:void 0,o:void 0}}function T(n,e){return{t:28,i:void 0,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[n,e],f:void 0,b:void 0,o:void 0}}function k(n,e){return{t:30,i:void 0,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[n,e],f:void 0,b:void 0,o:void 0}}function F(n,e,r){return{t:31,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:e,b:void 0,o:void 0}}function Se(n,e){return{t:32,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function he(n,e){return{t:33,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function ye(n,e){return{t:34,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function D(n){let e=[],r=-1,t=-1,s=n[Symbol.iterator]();for(;;)try{let o=s.next();if(e.push(o.value),o.done){t=e.length-1;break}}catch(o){r=e.length,e.push(o)}return{v:e,t:r,d:t}}function Le(n){return()=>{let e=0;return{[Symbol.iterator](){return this},next(){if(e>n.d)return{done:!0,value:void 0};let r=e++,t=n.v[r];if(r===n.t)throw t;return{done:r===n.d,value:t}}}}}var Je={},Ye={};var Ge={0:{},1:{},2:{},3:{},4:{}};var V=class{constructor(e){this.marked=new Set;this.plugins=e.plugins,this.features=31^(e.disabledFeatures||0),this.refs=e.refs||new Map}markRef(e){this.marked.add(e)}isMarked(e){return this.marked.has(e)}getIndexedValue(e){let r=this.refs.get(e);if(r!=null)return this.markRef(r),{type:1,value:We(r)};let t=this.refs.size;return this.refs.set(e,t),{type:0,value:t}}getReference(e){let r=this.getIndexedValue(e);return r.type===1?r:Z(e)?{type:2,value:Ee(r.value,e)}:r}getStrictReference(e){f(Z(e),new Error("Cannot serialize "+typeof e+" without reference ID."));let r=this.getIndexedValue(e);return r.type===1?r.value:Ee(r.value,e)}parseFunction(e){return this.getStrictReference(e)}parseWellKnownSymbol(e){let r=this.getReference(e);return r.type!==0?r.value:(f(e in L,new Error("Cannot serialized unsupported symbol.")),Ke(r.value,e))}parseSpecialReference(e){let r=this.getIndexedValue(Ge[e]);return r.type===1?r.value:{t:26,i:r.value,s:e,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}parseIteratorFactory(){let e=this.getIndexedValue(Je);return e.type===1?e.value:{t:27,i:e.value,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseWellKnownSymbol(Symbol.iterator),b:void 0,o:void 0}}parseAsyncIteratorFactory(){let e=this.getIndexedValue(Ye);return e.type===1?e.value:{t:29,i:e.value,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(1),this.parseWellKnownSymbol(Symbol.asyncIterator)],f:void 0,b:void 0,o:void 0}}createObjectNode(e,r,t,s){return{t:t?11:10,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:s,e:void 0,a:void 0,f:void 0,b:void 0,o:te(r)}}createMapNode(e,r,t,s){return{t:8,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:{k:r,v:t,s},a:void 0,f:this.parseSpecialReference(0),b:void 0,o:void 0}}createPromiseConstructorNode(e){return{t:22,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseSpecialReference(1),b:void 0,o:void 0}}};async function Re(n){try{return[1,await n]}catch(e){return[0,e]}}function J(){let n,e;return{promise:new Promise((r,t)=>{n=r,e=t}),resolve(r){n(r)},reject(r){e(r)}}}function Ne(n){return"__SEROVAL_STREAM__"in n}function B(){let n=new Set,e=[],r=!0,t=!1;function s(a){for(let l of n.keys())l.next(a)}function o(a){for(let l of n.keys())l.throw(a)}function i(a){for(let l of n.keys())l.return(a)}return{__SEROVAL_STREAM__:!0,on(a){r&&n.add(a);for(let l=0,d=e.length;l<d;l++){let g=e[l];l===d-1?t?a.return(g):a.throw(g):a.next(g)}return()=>{r&&n.delete(a)}},next(a){r&&(e.push(a),s(a))},throw(a){r&&(e.push(a),o(a),r=!1,t=!1,n.clear())},return(a){r&&(e.push(a),i(a),r=!1,t=!0,n.clear())}}}function be(n){let e=B(),r=n[Symbol.asyncIterator]();async function t(){try{let s=await r.next();s.done?e.return(s.value):(e.next(s.value),await t())}catch(s){e.throw(s)}}return t().catch(()=>{}),e}function He(n){return()=>{let e=[],r=[],t=0,s=-1,o=!1;function i(){for(let l=0,d=r.length;l<d;l++)r[l].resolve({done:!0,value:void 0})}n.on({next(l){let d=r.shift();d&&d.resolve({done:!1,value:l}),e.push(l)},throw(l){let d=r.shift();d&&d.reject(l),i(),s=e.length,e.push(l),o=!0},return(l){let d=r.shift();d&&d.resolve({done:!0,value:l}),i(),s=e.length,e.push(l)}});function a(){let l=t++,d=e[l];if(l!==s)return{done:!1,value:d};if(o)throw d;return{done:!0,value:d}}return{[Symbol.asyncIterator](){return this},async next(){if(s===-1){let l=t++;if(l>=e.length){let d=J();return r.push(d),await d.promise}return{done:!1,value:e[l]}}return t>s?{done:!0,value:void 0}:a()}}}}var I=class extends V{async parseItems(e){let r=[];for(let t=0,s=e.length;t<s;t++)t in e&&(r[t]=await this.parse(e[t]));return r}async parseArray(e,r){return le(e,r,await this.parseItems(r))}async parseProperties(e){let r=Object.entries(e),t=[],s=[];for(let i=0,a=r.length;i<a;i++)t.push(u(r[i][0])),s.push(await this.parse(r[i][1]));let o=Symbol.iterator;return o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(T(this.parseIteratorFactory(),await this.parse(D(e))))),o=Symbol.asyncIterator,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(k(this.parseAsyncIteratorFactory(),await this.parse(be(e))))),o=Symbol.toStringTag,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(N(e[o]))),o=Symbol.isConcatSpreadable,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(e[o]?y:v)),{k:t,v:s,s:t.length}}async parsePlainObject(e,r,t){return this.createObjectNode(e,r,t,await this.parseProperties(r))}async parseBoxed(e,r){return de(e,await this.parse(r.valueOf()))}async parseTypedArray(e,r){return ue(e,r,await this.parse(r.buffer))}async parseBigIntTypedArray(e,r){return ce(e,r,await this.parse(r.buffer))}async parseDataView(e,r){return fe(e,r,await this.parse(r.buffer))}async parseError(e,r){let t=O(r,this.features);return pe(e,r,t?await this.parseProperties(t):void 0)}async parseAggregateError(e,r){let t=O(r,this.features);return me(e,r,t?await this.parseProperties(t):void 0)}async parseMap(e,r){let t=[],s=[];for(let[o,i]of r.entries())t.push(await this.parse(o)),s.push(await this.parse(i));return this.createMapNode(e,t,s,r.size)}async parseSet(e,r){let t=[];for(let s of r.keys())t.push(await this.parse(s));return ge(e,r.size,t)}async parsePromise(e,r){let[t,s]=await Re(r);return{t:12,i:e,s:t,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:await this.parse(s),b:void 0,o:void 0}}async parsePlugin(e,r){let t=this.plugins;if(t)for(let s=0,o=t.length;s<o;s++){let i=t[s];if(i.parse.async&&i.test(r))return z(e,i.tag,await i.parse.async(r,this,{id:e}))}}async parseStream(e,r){return F(e,this.parseSpecialReference(4),await new Promise((t,s)=>{let o=[],i=r.on({next:a=>{this.markRef(e),this.parse(a).then(l=>{o.push(Se(e,l))},l=>{s(l),i()})},throw:a=>{this.markRef(e),this.parse(a).then(l=>{o.push(he(e,l)),t(o),i()},l=>{s(l),i()})},return:a=>{this.markRef(e),this.parse(a).then(l=>{o.push(ye(e,l)),t(o),i()},l=>{s(l),i()})}})}))}async parseObject(e,r){if(Array.isArray(r))return this.parseArray(e,r);if(Ne(r))return this.parseStream(e,r);let t=await this.parsePlugin(e,r);if(t)return t;let s=r.constructor;switch(s){case Object:return this.parsePlainObject(e,r,!1);case void 0:return this.parsePlainObject(e,r,!0);case Date:return oe(e,r);case RegExp:return ie(e,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(e,r);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(e,r);case ArrayBuffer:return ae(e,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(e,r);case DataView:return this.parseDataView(e,r);case Map:return this.parseMap(e,r);case Set:return this.parseSet(e,r);default:break}if(s===Promise||r instanceof Promise)return this.parsePromise(e,r);let o=this.features;if(o&16)switch(s){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(e,r);default:break}if(o&1&&typeof AggregateError!="undefined"&&(s===AggregateError||r instanceof AggregateError))return this.parseAggregateError(e,r);if(r instanceof Error)return this.parseError(e,r);if(Symbol.iterator in r||Symbol.asyncIterator in r)return this.parsePlainObject(e,r,!!s);throw new p(r)}async parse(e){switch(typeof e){case"boolean":return e?y:v;case"undefined":return Q;case"string":return N(e);case"number":return ne(e);case"bigint":return se(e);case"object":{if(e){let r=this.getReference(e);return r.type===0?await this.parseObject(r.value,e):r.value}return ee}case"symbol":return this.parseWellKnownSymbol(e);case"function":return this.parseFunction(e);default:throw new p(e)}}};var j=class extends I{constructor(){super(...arguments);this.mode="vanilla"}};function $e(n){switch(n){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 Error(`Unknown TypedArray "${n}"`)}}function qe(n,e){switch(e){case 3:return Object.freeze(n);case 1:return Object.preventExtensions(n);case 2:return Object.seal(n);default:return n}}var E=class{constructor(e){this.plugins=e.plugins,this.refs=e.refs||new Map}deserializeReference(e){return this.assignIndexedValue(e.i,Oe(S(e.s)))}deserializeArray(e){let r=e.l,t=this.assignIndexedValue(e.i,new Array(r)),s;for(let o=0;o<r;o++)s=e.a[o],s&&(t[o]=this.deserialize(s));return qe(t,e.o),t}deserializeProperties(e,r){let t=e.s;if(t){let s=e.k,o=e.v;for(let i=0,a;i<t;i++)a=s[i],typeof a=="string"?r[S(a)]=this.deserialize(o[i]):r[this.deserialize(a)]=this.deserialize(o[i])}return r}deserializeObject(e){let r=this.assignIndexedValue(e.i,e.t===10?{}:Object.create(null));return this.deserializeProperties(e.p,r),qe(r,e.o),r}deserializeDate(e){return this.assignIndexedValue(e.i,new Date(e.s))}deserializeRegExp(e){return this.assignIndexedValue(e.i,new RegExp(S(e.c),e.m))}deserializeSet(e){let r=this.assignIndexedValue(e.i,new Set),t=e.a;for(let s=0,o=e.l;s<o;s++)r.add(this.deserialize(t[s]));return r}deserializeMap(e){let r=this.assignIndexedValue(e.i,new Map),t=e.e.k,s=e.e.v;for(let o=0,i=e.e.s;o<i;o++)r.set(this.deserialize(t[o]),this.deserialize(s[o]));return r}deserializeArrayBuffer(e){let r=new Uint8Array(e.s);return this.assignIndexedValue(e.i,r.buffer)}deserializeTypedArray(e){let r=$e(e.c),t=this.deserialize(e.f);return this.assignIndexedValue(e.i,new r(t,e.b,e.l))}deserializeDataView(e){let r=this.deserialize(e.f);return this.assignIndexedValue(e.i,new DataView(r,e.b,e.l))}deserializeDictionary(e,r){if(e.p){let t=this.deserializeProperties(e.p,{});Object.assign(r,t)}return r}deserializeAggregateError(e){let r=this.assignIndexedValue(e.i,new AggregateError([],S(e.m)));return this.deserializeDictionary(e,r)}deserializeError(e){let r=Ve[e.s],t=this.assignIndexedValue(e.i,new r(S(e.m)));return this.deserializeDictionary(e,t)}deserializePromise(e){let r=J(),t=this.assignIndexedValue(e.i,r),s=this.deserialize(e.f);return e.s?r.resolve(s):r.reject(s),t.promise}deserializeBoxed(e){return this.assignIndexedValue(e.i,Object(this.deserialize(e.f)))}deserializePlugin(e){let r=this.plugins;if(r){let t=S(e.c);for(let s=0,o=r.length;s<o;s++){let i=r[s];if(i.tag===t)return this.assignIndexedValue(e.i,i.deserialize(e.s,this,{id:e.i}))}}throw new Error('Missing plugin for tag "'+e.c+'".')}deserializePromiseConstructor(e){return this.assignIndexedValue(e.i,J()).promise}deserializePromiseResolve(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.resolve(this.deserialize(e.a[1]))}deserializePromiseReject(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.reject(this.deserialize(e.a[1]))}deserializeIteratorFactoryInstance(e){this.deserialize(e.a[0]);let r=this.deserialize(e.a[1]);return Le(r)}deserializeAsyncIteratorFactoryInstance(e){this.deserialize(e.a[0]);let r=this.deserialize(e.a[1]);return He(r)}deserializeStreamConstructor(e){let r=this.assignIndexedValue(e.i,B()),t=e.a.length;if(t)for(let s=0;s<t;s++)this.deserialize(e.a[s]);return r}deserializeStreamNext(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.next(this.deserialize(e.f))}deserializeStreamThrow(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.throw(this.deserialize(e.f))}deserializeStreamReturn(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.return(this.deserialize(e.f))}deserializeIteratorFactory(e){this.deserialize(e.f)}deserializeAsyncIteratorFactory(e){this.deserialize(e.a[1])}deserialize(e){switch(e.t){case 2:return De[e.s];case 0:return e.s;case 1:return S(e.s);case 3:return BigInt(e.s);case 4:return this.refs.get(e.i);case 18:return this.deserializeReference(e);case 9:return this.deserializeArray(e);case 10:case 11:return this.deserializeObject(e);case 5:return this.deserializeDate(e);case 6:return this.deserializeRegExp(e);case 7:return this.deserializeSet(e);case 8:return this.deserializeMap(e);case 19:return this.deserializeArrayBuffer(e);case 16:case 15:return this.deserializeTypedArray(e);case 20:return this.deserializeDataView(e);case 14:return this.deserializeAggregateError(e);case 13:return this.deserializeError(e);case 12:return this.deserializePromise(e);case 17:return ke[e.s];case 21:return this.deserializeBoxed(e);case 25:return this.deserializePlugin(e);case 22:return this.deserializePromiseConstructor(e);case 23:return this.deserializePromiseResolve(e);case 24:return this.deserializePromiseReject(e);case 28:return this.deserializeIteratorFactoryInstance(e);case 30:return this.deserializeAsyncIteratorFactoryInstance(e);case 31:return this.deserializeStreamConstructor(e);case 32:return this.deserializeStreamNext(e);case 33:return this.deserializeStreamThrow(e);case 34:return this.deserializeStreamReturn(e);case 27:return this.deserializeIteratorFactory(e);case 29:return this.deserializeAsyncIteratorFactory(e);default:throw new Error("invariant")}}};var Y=class extends E{constructor(r){super(r);this.mode="vanilla";this.marked=new Set(r.markedRefs)}assignIndexedValue(r,t){return this.marked.has(r)&&this.refs.set(r,t),t}};var cr=/^[$A-Z_][0-9A-Z_$]*$/i;function we(n){let e=n[0];return(e==="$"||e==="_"||e>="A"&&e<="Z"||e>="a"&&e<="z")&&cr.test(n)}function G(n){switch(n.t){case 0:return n.s+"="+n.v;case 2:return n.s+".set("+n.k+","+n.v+")";case 1:return n.s+".add("+n.v+")";case 3:return n.s+".delete("+n.k+")"}}function fr(n){let e=[],r=n[0];for(let t=1,s=n.length,o,i=r;t<s;t++)o=n[t],o.t===0&&o.v===i.v?r={t:0,s:o.s,k:void 0,v:G(r)}:o.t===2&&o.s===i.s?r={t:2,s:G(r),k:o.k,v:o.v}:o.t===1&&o.s===i.s?r={t:1,s:G(r),k:void 0,v:o.v}:o.t===3&&o.s===i.s?r={t:3,s:G(r),k:o.k,v:void 0}:(e.push(r),r=o),i=o;return e.push(r),e}function Ze(n){if(n.length){let e="",r=fr(n);for(let t=0,s=r.length;t<s;t++)e+=G(r[t])+",";return e}}var pr="Object.create(null)",mr="new Set",gr="new Map",Sr="Promise.resolve",hr="Promise.reject",yr={3:"Object.freeze",2:"Object.seal",1:"Object.preventExtensions",0:void 0},R=class{constructor(e){this.stack=[];this.flags=[];this.assignments=[];this.plugins=e.plugins,this.features=e.features,this.marked=new Set(e.markedRefs)}createFunction(e,r){return this.features&2?(e.length===1?e[0]:"("+e.join(",")+")")+"=>"+r:"function("+e.join(",")+"){return "+r+"}"}createEffectfulFunction(e,r){return this.features&2?(e.length===1?e[0]:"("+e.join(",")+")")+"=>{"+r+"}":"function("+e.join(",")+"){"+r+"}"}markRef(e){this.marked.add(e)}isMarked(e){return this.marked.has(e)}pushObjectFlag(e,r){e!==0&&(this.markRef(r),this.flags.push({type:e,value:this.getRefParam(r)}))}resolveFlags(){let e="";for(let r=0,t=this.flags,s=t.length;r<s;r++){let o=t[r];e+=yr[o.type]+"("+o.value+"),"}return e}resolvePatches(){let e=Ze(this.assignments),r=this.resolveFlags();return e?r?e+r:e:r}createAssignment(e,r){this.assignments.push({t:0,s:e,k:void 0,v:r})}createAddAssignment(e,r){this.assignments.push({t:1,s:this.getRefParam(e),k:void 0,v:r})}createSetAssignment(e,r,t){this.assignments.push({t:2,s:this.getRefParam(e),k:r,v:t})}createDeleteAssignment(e,r){this.assignments.push({t:3,s:this.getRefParam(e),k:r,v:void 0})}createArrayAssign(e,r,t){this.createAssignment(this.getRefParam(e)+"["+r+"]",t)}createObjectAssign(e,r,t){this.createAssignment(this.getRefParam(e)+"."+r,t)}isIndexedValueInStack(e){return e.t===4&&this.stack.includes(e.i)}serializeReference(e){return this.assignIndexedValue(e.i,b+'.get("'+e.s+'")')}serializeArrayItem(e,r,t){return r?this.isIndexedValueInStack(r)?(this.markRef(e),this.createArrayAssign(e,t,this.getRefParam(r.i)),""):this.serialize(r):""}serializeArray(e){let r=e.i;if(e.l){this.stack.push(r);let t=e.a,s=this.serializeArrayItem(r,t[0],0),o=s==="";for(let i=1,a=e.l,l;i<a;i++)l=this.serializeArrayItem(r,t[i],i),s+=","+l,o=l==="";return this.stack.pop(),this.pushObjectFlag(e.o,e.i),this.assignIndexedValue(r,"["+s+(o?",]":"]"))}return this.assignIndexedValue(r,"[]")}serializeProperty(e,r,t){if(typeof r=="string"){let s=Number(r),o=s>=0||we(r);if(this.isIndexedValueInStack(t)){let i=this.getRefParam(t.i);return this.markRef(e.i),o&&s!==s?this.createObjectAssign(e.i,r,i):this.createArrayAssign(e.i,o?r:'"'+r+'"',i),""}return(o?r:'"'+r+'"')+":"+this.serialize(t)}return"["+this.serialize(r)+"]:"+this.serialize(t)}serializeProperties(e,r){let t=r.s;if(t){let s=r.k,o=r.v;this.stack.push(e.i);let i=this.serializeProperty(e,s[0],o[0]);for(let a=1,l=i;a<t;a++)l=this.serializeProperty(e,s[a],o[a]),i+=(l&&i&&",")+l;return this.stack.pop(),"{"+i+"}"}return"{}"}serializeObject(e){return this.pushObjectFlag(e.o,e.i),this.assignIndexedValue(e.i,this.serializeProperties(e,e.p))}serializeWithObjectAssign(e,r,t){let s=this.serializeProperties(e,r);return s!=="{}"?"Object.assign("+t+","+s+")":t}serializeStringKeyAssignment(e,r,t,s){let o=this.serialize(s),i=Number(t),a=i>=0||we(t);if(this.isIndexedValueInStack(s))a&&i!==i?this.createObjectAssign(e.i,t,o):this.createArrayAssign(e.i,a?t:'"'+t+'"',o);else{let l=this.assignments;this.assignments=r,a?this.createObjectAssign(e.i,t,o):this.createArrayAssign(e.i,a?t:'"'+t+'"',o),this.assignments=l}}serializeAssignment(e,r,t,s){if(typeof t=="string")this.serializeStringKeyAssignment(e,r,t,s);else{let o=this.stack;this.stack=[];let i=this.serialize(s);this.stack=o;let a=this.assignments;this.assignments=r,this.createArrayAssign(e.i,this.serialize(t),i),this.assignments=a}}serializeAssignments(e,r){let t=r.s;if(t){let s=[],o=r.k,i=r.v;this.stack.push(e.i);for(let a=0;a<t;a++)this.serializeAssignment(e,s,o[a],i[a]);return this.stack.pop(),Ze(s)}}serializeDictionary(e,r){if(e.p)if(this.features&8)r=this.serializeWithObjectAssign(e,e.p,r);else{this.markRef(e.i);let t=this.serializeAssignments(e,e.p);if(t)return"("+this.assignIndexedValue(e.i,r)+","+t+this.getRefParam(e.i)+")"}return this.assignIndexedValue(e.i,r)}serializeNullConstructor(e){return this.pushObjectFlag(e.o,e.i),this.serializeDictionary(e,pr)}serializeDate(e){return this.assignIndexedValue(e.i,'new Date("'+e.s+'")')}serializeRegExp(e){return this.assignIndexedValue(e.i,"/"+e.c+"/"+e.m)}serializeSetItem(e,r){return this.isIndexedValueInStack(r)?(this.markRef(e),this.createAddAssignment(e,this.getRefParam(r.i)),""):this.serialize(r)}serializeSet(e){let r=mr,t=e.l,s=e.i;if(t){let o=e.a;this.stack.push(s);let i=this.serializeSetItem(s,o[0]);for(let a=1,l=i;a<t;a++)l=this.serializeSetItem(s,o[a]),i+=(l&&i&&",")+l;this.stack.pop(),i&&(r+="(["+i+"])")}return this.assignIndexedValue(s,r)}serializeMapEntry(e,r,t,s){if(this.isIndexedValueInStack(r)){let o=this.getRefParam(r.i);if(this.markRef(e),this.isIndexedValueInStack(t)){let a=this.getRefParam(t.i);return this.createSetAssignment(e,o,a),""}if(t.t!==4&&t.i!=null&&this.isMarked(t.i)){let a="("+this.serialize(t)+",["+s+","+s+"])";return this.createSetAssignment(e,o,this.getRefParam(t.i)),this.createDeleteAssignment(e,s),a}let i=this.stack;return this.stack=[],this.createSetAssignment(e,o,this.serialize(t)),this.stack=i,""}if(this.isIndexedValueInStack(t)){let o=this.getRefParam(t.i);if(this.markRef(e),r.t!==4&&r.i!=null&&this.isMarked(r.i)){let a="("+this.serialize(r)+",["+s+","+s+"])";return this.createSetAssignment(e,this.getRefParam(r.i),o),this.createDeleteAssignment(e,s),a}let i=this.stack;return this.stack=[],this.createSetAssignment(e,this.serialize(r),o),this.stack=i,""}return"["+this.serialize(r)+","+this.serialize(t)+"]"}serializeMap(e){let r=gr,t=e.e.s,s=e.i,o=e.f,i=this.getRefParam(o.i);if(t){let a=e.e.k,l=e.e.v;this.stack.push(s);let d=this.serializeMapEntry(s,a[0],l[0],i);for(let g=1,Ae=d;g<t;g++)Ae=this.serializeMapEntry(s,a[g],l[g],i),d+=(Ae&&d&&",")+Ae;this.stack.pop(),d&&(r+="(["+d+"])")}return o.t===26&&(this.markRef(o.i),r="("+this.serialize(o)+","+r+")"),this.assignIndexedValue(s,r)}serializeArrayBuffer(e){let r="new Uint8Array(",t=e.s,s=t.length;if(s){r+="["+t[0];for(let o=1;o<s;o++)r+=","+t[o];r+="]"}return this.assignIndexedValue(e.i,r+").buffer")}serializeTypedArray(e){return this.assignIndexedValue(e.i,"new "+e.c+"("+this.serialize(e.f)+","+e.b+","+e.l+")")}serializeDataView(e){return this.assignIndexedValue(e.i,"new DataView("+this.serialize(e.f)+","+e.b+","+e.l+")")}serializeAggregateError(e){let r=e.i;this.stack.push(r);let t=this.serializeDictionary(e,'new AggregateError([],"'+e.m+'")');return this.stack.pop(),t}serializeError(e){return this.serializeDictionary(e,"new "+X[e.s]+'("'+e.m+'")')}serializePromise(e){let r,t=e.f,s=e.i,o=e.s?Sr:hr;if(this.isIndexedValueInStack(t)){let i=this.getRefParam(t.i);r=o+(e.s?"().then("+this.createFunction([],i)+")":"().catch("+this.createEffectfulFunction([],"throw "+i)+")")}else{this.stack.push(s);let i=this.serialize(t);this.stack.pop(),r=o+"("+i+")"}return this.assignIndexedValue(s,r)}serializeWellKnownSymbol(e){return this.assignIndexedValue(e.i,Te[e.s])}serializeBoxed(e){return this.assignIndexedValue(e.i,"Object("+this.serialize(e.f)+")")}serializePlugin(e){let r=this.plugins;if(r)for(let t=0,s=r.length;t<s;t++){let o=r[t];if(o.tag===e.c)return this.assignIndexedValue(e.i,o.serialize(e.s,this,{id:e.i}))}throw new Error('Missing plugin for tag "'+e.c+'".')}getConstructor(e){let r=this.serialize(e);return r===this.getRefParam(e.i)?r:"("+r+")"}serializePromiseConstructor(e){return this.assignIndexedValue(e.i,this.getConstructor(e.f)+"()")}serializePromiseResolve(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializePromiseReject(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializeSpecialReferenceValue(e){switch(e){case 0:return"[]";case 1:return this.createFunction(["s","f","p"],"((p=new Promise("+this.createEffectfulFunction(["a","b"],"s=a,f=b")+")).s=s,p.f=f,p)");case 2:return this.createEffectfulFunction(["p","d"],'p.s(d),p.status="success",p.value=d;delete p.s;delete p.f');case 3:return this.createEffectfulFunction(["p","d"],'p.f(d),p.status="failure",p.value=d;delete p.s;delete p.f');case 4:return this.createFunction(["b","a","s","l","p","f","e","n"],"(b=[],a=!0,s=!1,l=[],p=0,f="+this.createEffectfulFunction(["v","m","x"],"for(x=0;x<p;x++)l[x]&&l[x][m](v)")+",n="+this.createEffectfulFunction(["o","x","z","c"],'for(x=0,z=b.length;x<z;x++)(c=b[x],x===z-1?o[s?"return":"throw"](c):o.next(c))')+",e="+this.createFunction(["o","t"],"(a&&(l[t=p++]=o),n(o),"+this.createEffectfulFunction([],"a&&(l[t]=void 0)")+")")+",{__SEROVAL_STREAM__:!0,on:"+this.createFunction(["o"],"e(o)")+",next:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"next"))')+",throw:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"throw"),a=s=!1,l.length=0)')+",return:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"return"),a=!1,s=!0,l.length=0)')+"})");default:return""}}serializeSpecialReference(e){return this.assignIndexedValue(e.i,this.serializeSpecialReferenceValue(e.s))}serializeIteratorFactory(e){let r="",t=!1;return e.f.t!==4&&(this.markRef(e.f.i),r="("+this.serialize(e.f)+",",t=!0),r+=this.assignIndexedValue(e.i,this.createFunction(["s"],this.createFunction(["i","c","d","t"],"(i=0,t={["+this.getRefParam(e.f.i)+"]:"+this.createFunction([],"t")+",next:"+this.createEffectfulFunction([],"if(i>s.d)return{done:!0,value:void 0};if(d=s.v[c=i++],c===s.t)throw d;return{done:c===s.d,value:d}")+"})"))),t&&(r+=")"),r}serializeIteratorFactoryInstance(e){return this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")"}serializeAsyncIteratorFactory(e){let r=e.a[0],t=e.a[1],s="";r.t!==4&&(this.markRef(r.i),s+="("+this.serialize(r)),t.t!==4&&(this.markRef(t.i),s+=(s?",":"(")+this.serialize(t)),s&&(s+=",");let o=this.assignIndexedValue(e.i,this.createFunction(["s"],this.createFunction(["b","c","p","d","e","t","f"],"(b=[],c=0,p=[],d=-1,e=!1,f="+this.createEffectfulFunction(["i","l"],"for(i=0,l=p.length;i<l;i++)p[i].s({done:!0,value:void 0})")+",s.on({next:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.s({done:!1,value:v});b.push(v)")+",throw:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.f(v);f(),d=b.length,e=!0,b.push(v)")+",return:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.s({done:!0,value:v});f(),d=b.length,b.push(v)")+"}),t={["+this.getRefParam(t.i)+"]:"+this.createFunction([],"t")+",next:"+this.createEffectfulFunction(["i","t","v"],"if(d===-1){return((i=c++)>=b.length)?(p.push(t="+this.getRefParam(r.i)+"()),t):{done:!0,value:b[i]}}if(c>d)return{done:!0,value:void 0};if(v=b[i=c++],i!==d)return{done:!1,value:v};if(e)throw v;return{done:!0,value:v}")+"})")));return s?s+o+")":o}serializeAsyncIteratorFactoryInstance(e){return this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")"}serializeStreamConstructor(e){let r=this.assignIndexedValue(e.i,this.getConstructor(e.f)+"()"),t=e.a.length;if(t){let s=this.serialize(e.a[0]);for(let o=1;o<t;o++)s+=","+this.serialize(e.a[o]);return"("+r+","+s+","+this.getRefParam(e.i)+")"}return r}serializeStreamNext(e){return this.getRefParam(e.i)+".next("+this.serialize(e.f)+")"}serializeStreamThrow(e){return this.getRefParam(e.i)+".throw("+this.serialize(e.f)+")"}serializeStreamReturn(e){return this.getRefParam(e.i)+".return("+this.serialize(e.f)+")"}serialize(e){switch(e.t){case 2:return Fe[e.s];case 0:return""+e.s;case 1:return'"'+e.s+'"';case 3:return e.s+"n";case 4:return this.getRefParam(e.i);case 18:return this.serializeReference(e);case 9:return this.serializeArray(e);case 10:return this.serializeObject(e);case 11:return this.serializeNullConstructor(e);case 5:return this.serializeDate(e);case 6:return this.serializeRegExp(e);case 7:return this.serializeSet(e);case 8:return this.serializeMap(e);case 19:return this.serializeArrayBuffer(e);case 16:case 15:return this.serializeTypedArray(e);case 20:return this.serializeDataView(e);case 14:return this.serializeAggregateError(e);case 13:return this.serializeError(e);case 12:return this.serializePromise(e);case 17:return this.serializeWellKnownSymbol(e);case 21:return this.serializeBoxed(e);case 22:return this.serializePromiseConstructor(e);case 23:return this.serializePromiseResolve(e);case 24:return this.serializePromiseReject(e);case 25:return this.serializePlugin(e);case 26:return this.serializeSpecialReference(e);case 27:return this.serializeIteratorFactory(e);case 28:return this.serializeIteratorFactoryInstance(e);case 29:return this.serializeAsyncIteratorFactory(e);case 30:return this.serializeAsyncIteratorFactoryInstance(e);case 31:return this.serializeStreamConstructor(e);case 32:return this.serializeStreamNext(e);case 33:return this.serializeStreamThrow(e);case 34:return this.serializeStreamReturn(e);default:throw new Error("invariant")}}};var er="hjkmoquxzABCDEFGHIJKLNPQRTUVWXYZ$_",Xe=er.length,rr="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_",Qe=rr.length;function Pe(n){let e=n%Xe,r=er[e];for(n=(n-e)/Xe;n>0;)e=n%Qe,r+=rr[e],n=(n-e)/Qe;return r}var w=class extends R{constructor(){super(...arguments);this.mode="vanilla";this.valid=new Map;this.vars=[]}getRefParam(r){let t=this.valid.get(r);t==null&&(t=this.valid.size,this.valid.set(r,t));let s=this.vars[t];return s==null&&(s=Pe(t),this.vars[t]=s),s}assignIndexedValue(r,t){return this.isMarked(r)?this.getRefParam(r)+"="+t:t}serializePromiseConstructor(r){throw new Error('Unsupported node type "'+r.t+'".')}serializePromiseResolve(r){throw new Error('Unsupported node type "'+r.t+'".')}serializePromiseReject(r){throw new Error('Unsupported node type "'+r.t+'".')}serializeTop(r){let t=this.serialize(r);if(r.i!=null&&this.vars.length){let s=this.resolvePatches(),o=t;if(s){let i=this.getRefParam(r.i);o=t+","+s+i,t.startsWith(i+"=")||(o=i+"="+o)}return"("+this.createFunction(this.vars,"("+o+")")+")()"}return r.t===10?"("+t+")":t}};var m=class extends V{parseItems(e){let r=[];for(let t=0,s=e.length;t<s;t++)t in e&&(r[t]=this.parse(e[t]));return r}parseArray(e,r){return le(e,r,this.parseItems(r))}parseProperties(e){let r=Object.entries(e),t=[],s=[];for(let i=0,a=r.length;i<a;i++)t.push(u(r[i][0])),s.push(this.parse(r[i][1]));let o=Symbol.iterator;return o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(T(this.parseIteratorFactory(),this.parse(D(e))))),o=Symbol.asyncIterator,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(k(this.parseAsyncIteratorFactory(),this.parse(B())))),o=Symbol.toStringTag,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(N(e[o]))),o=Symbol.isConcatSpreadable,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(e[o]?y:v)),{k:t,v:s,s:t.length}}parsePlainObject(e,r,t){return this.createObjectNode(e,r,t,this.parseProperties(r))}parseBoxed(e,r){return de(e,this.parse(r.valueOf()))}parseTypedArray(e,r){return ue(e,r,this.parse(r.buffer))}parseBigIntTypedArray(e,r){return ce(e,r,this.parse(r.buffer))}parseDataView(e,r){return fe(e,r,this.parse(r.buffer))}parseError(e,r){let t=O(r,this.features);return pe(e,r,t?this.parseProperties(t):void 0)}parseAggregateError(e,r){let t=O(r,this.features);return me(e,r,t?this.parseProperties(t):void 0)}parseMap(e,r){let t=[],s=[];for(let[o,i]of r.entries())t.push(this.parse(o)),s.push(this.parse(i));return this.createMapNode(e,t,s,r.size)}parseSet(e,r){let t=[];for(let s of r.keys())t.push(this.parse(s));return ge(e,r.size,t)}parsePlugin(e,r){let t=this.plugins;if(t)for(let s=0,o=t.length;s<o;s++){let i=t[s];if(i.parse.sync&&i.test(r))return z(e,i.tag,i.parse.sync(r,this,{id:e}))}}parseStream(e,r){return F(e,this.parseSpecialReference(4),[])}parsePromise(e,r){return this.createPromiseConstructorNode(e)}parseObject(e,r){if(Array.isArray(r))return this.parseArray(e,r);if(Ne(r))return this.parseStream(e,r);let t=this.parsePlugin(e,r);if(t)return t;let s=r.constructor;switch(s){case Object:return this.parsePlainObject(e,r,!1);case void 0:return this.parsePlainObject(e,r,!0);case Date:return oe(e,r);case RegExp:return ie(e,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(e,r);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(e,r);case ArrayBuffer:return ae(e,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(e,r);case DataView:return this.parseDataView(e,r);case Map:return this.parseMap(e,r);case Set:return this.parseSet(e,r);default:break}if(s===Promise||r instanceof Promise)return this.parsePromise(e,r);let o=this.features;if(o&16)switch(s){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(e,r);default:break}if(o&1&&typeof AggregateError!="undefined"&&(s===AggregateError||r instanceof AggregateError))return this.parseAggregateError(e,r);if(r instanceof Error)return this.parseError(e,r);if(Symbol.iterator in r||Symbol.asyncIterator in r)return this.parsePlainObject(e,r,!!s);throw new p(r)}parse(e){switch(typeof e){case"boolean":return e?y:v;case"undefined":return Q;case"string":return N(e);case"number":return ne(e);case"bigint":return se(e);case"object":{if(e){let r=this.getReference(e);return r.type===0?this.parseObject(r.value,e):r.value}return ee}case"symbol":return this.parseWellKnownSymbol(e);case"function":return this.parseFunction(e);default:throw new p(e)}}};var M=class extends m{constructor(){super(...arguments);this.mode="vanilla"}};function fn(n,e={}){let r=c(e.plugins),t=new M({plugins:r,disabledFeatures:e.disabledFeatures}),s=t.parse(n);return new w({plugins:r,features:t.features,markedRefs:t.marked}).serializeTop(s)}async function pn(n,e={}){let r=c(e.plugins),t=new j({plugins:r,disabledFeatures:e.disabledFeatures}),s=await t.parse(n);return new w({plugins:r,features:t.features,markedRefs:t.marked}).serializeTop(s)}function mn(n){return(0,eval)(n)}function gn(n,e={}){let r=c(e.plugins),t=new M({plugins:r,disabledFeatures:e.disabledFeatures});return{t:t.parse(n),f:t.features,m:Array.from(t.marked)}}async function Sn(n,e={}){let r=c(e.plugins),t=new j({plugins:r,disabledFeatures:e.disabledFeatures});return{t:await t.parse(n),f:t.features,m:Array.from(t.marked)}}function hn(n,e={}){let r=c(e.plugins);return new w({plugins:r,features:n.f,markedRefs:n.m}).serializeTop(n.t)}function yn(n,e={}){let r=c(e.plugins);return new Y({plugins:r,markedRefs:n.m}).deserialize(n.t)}var _=class extends I{constructor(){super(...arguments);this.mode="cross"}};var H=class extends E{constructor(){super(...arguments);this.mode="cross"}assignIndexedValue(r,t){return this.refs.has(r)||this.refs.set(r,t),t}};var P=class extends R{constructor(r){super(r);this.mode="cross";this.scopeId=r.scopeId}getRefParam(r){return K+"["+r+"]"}assignIndexedValue(r,t){return this.getRefParam(r)+"="+t}serializeTop(r){let t=this.serialize(r),s=r.i;if(s==null)return t;let o=this.resolvePatches(),i=this.getRefParam(s),a=this.scopeId==null?"":K,l=o?t+","+o+i:t;if(a==="")return o?"("+l+")":l;let d=this.scopeId==null?"()":"("+K+'["'+u(this.scopeId)+'"])';return"("+this.createFunction([a],l)+")"+d}};var $=class extends m{constructor(r){super(r);this.alive=!0;this.pending=0;this.initial=!0;this.buffer=[];this.onParseCallback=r.onParse,this.onErrorCallback=r.onError,this.onDoneCallback=r.onDone}onParseInternal(r,t){try{this.onParseCallback(r,t)}catch(s){this.onError(s)}}flush(){for(let r=0,t=this.buffer.length;r<t;r++)this.onParseInternal(this.buffer[r],!1)}onParse(r){this.initial?this.buffer.push(r):this.onParseInternal(r,!1)}onError(r){if(this.onErrorCallback)this.onErrorCallback(r);else throw r}onDone(){this.onDoneCallback&&this.onDoneCallback()}pushPendingState(){this.pending++}popPendingState(){--this.pending<=0&&this.onDone()}parseProperties(r){let t=Object.entries(r),s=[],o=[];for(let a=0,l=t.length;a<l;a++)s.push(u(t[a][0])),o.push(this.parse(t[a][1]));let i=Symbol.iterator;return i in r&&(s.push(this.parseWellKnownSymbol(i)),o.push(T(this.parseIteratorFactory(),this.parse(D(r))))),i=Symbol.asyncIterator,i in r&&(s.push(this.parseWellKnownSymbol(i)),o.push(k(this.parseAsyncIteratorFactory(),this.parse(be(r))))),i=Symbol.toStringTag,i in r&&(s.push(this.parseWellKnownSymbol(i)),o.push(N(r[i]))),i=Symbol.isConcatSpreadable,i in r&&(s.push(this.parseWellKnownSymbol(i)),o.push(r[i]?y:v)),{k:s,v:o,s:s.length}}parsePromise(r,t){return t.then(s=>{let o=this.parseWithError(s);o&&this.onParse({t:23,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(2),o],f:void 0,b:void 0,o:void 0}),this.popPendingState()},s=>{if(this.alive){let o=this.parseWithError(s);o&&this.onParse({t:24,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(3),o],f:void 0,b:void 0,o:void 0})}this.popPendingState()}),this.pushPendingState(),this.createPromiseConstructorNode(r)}parsePlugin(r,t){let s=this.plugins;if(s)for(let o=0,i=s.length;o<i;o++){let a=s[o];if(a.parse.stream&&a.test(t))return z(r,a.tag,a.parse.stream(t,this,{id:r}))}}parseStream(r,t){let s=F(r,this.parseSpecialReference(4),[]);return this.pushPendingState(),t.on({next:o=>{if(this.alive){let i=this.parseWithError(o);i&&this.onParse(Se(r,i))}},throw:o=>{if(this.alive){let i=this.parseWithError(o);i&&this.onParse(he(r,i))}this.popPendingState()},return:o=>{if(this.alive){let i=this.parseWithError(o);i&&this.onParse(ye(r,i))}this.popPendingState()}}),s}parseWithError(r){try{return this.parse(r)}catch(t){this.onError(t);return}}start(r){let t=this.parseWithError(r);t&&(this.onParseInternal(t,!0),this.initial=!1,this.flush(),this.pending<=0&&this.destroy())}destroy(){this.alive&&(this.onDone(),this.alive=!1)}isAlive(){return this.alive}};var U=class extends ${constructor(){super(...arguments);this.mode="cross"}};var W=class extends m{constructor(){super(...arguments);this.mode="cross"}};function Gn(n,e={}){let r=c(e.plugins),t=new W({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}),s=t.parse(n);return new P({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}).serializeTop(s)}async function Hn(n,e={}){let r=c(e.plugins),t=new _({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}),s=await t.parse(n);return new P({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}).serializeTop(s)}function $n(n,e={}){let r=c(e.plugins);return new W({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}).parse(n)}async function qn(n,e={}){let r=c(e.plugins);return await new _({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}).parse(n)}function tr(n,e){let r=c(e.plugins),t=new U({plugins:r,refs:e.refs,disabledFeatures:e.disabledFeatures,onParse(s,o){let i=new P({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}),a;try{a=i.serializeTop(s)}catch(l){e.onError&&e.onError(l);return}e.onSerialize(a,o)},onError:e.onError,onDone:e.onDone});return t.start(n),()=>{t.destroy()}}function Zn(n,e){let r=c(e.plugins),t=new U({plugins:r,refs:e.refs,disabledFeatures:e.disabledFeatures,onParse:e.onParse,onError:e.onError,onDone:e.onDone});return t.start(n),()=>{t.destroy()}}function Xn(n,e){let r=c(e.plugins);return new H({plugins:r,refs:e.refs}).deserialize(n)}var xe=class{constructor(e){this.options=e;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=c(e.plugins)}write(e,r){this.alive&&!this.flushed&&(this.pending++,this.keys.add(e),this.cleanups.push(tr(r,{plugins:this.plugins,scopeId:this.options.scopeId,refs:this.refs,disabledFeatures:this.options.disabledFeatures,onError:this.options.onError,onSerialize:(t,s)=>{this.alive&&this.options.onData(s?this.options.globalIdentifier+'["'+u(e)+'"]='+t:t)},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(e){let r=this.getNextID();return this.write(r,e),r}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 e=0,r=this.cleanups.length;e<r;e++)this.cleanups[e]();!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0),this.alive=!1}}};export{C as Feature,xe as Serializer,hn as compileJSON,wr as createPlugin,ir as createReference,B as createStream,Gn as crossSerialize,Hn as crossSerializeAsync,tr as crossSerializeStream,mn as deserialize,Xn as fromCrossJSON,yn as fromJSON,or as getCrossReferenceHeader,c as resolvePlugins,fn as serialize,pn as serializeAsync,$n as toCrossJSON,qn as toCrossJSONAsync,Zn as toCrossJSONStream,gn as toJSON,Sn as toJSONAsync};
@@ -1,4 +1,4 @@
1
- import type { PluginAccessOptions } from './plugin';
1
+ import { type PluginAccessOptions } from './plugin';
2
2
  export interface SerializerOptions extends PluginAccessOptions {
3
3
  globalIdentifier: string;
4
4
  scopeId?: string;
@@ -15,6 +15,7 @@ export default class Serializer {
15
15
  private pending;
16
16
  private cleanups;
17
17
  private refs;
18
+ private plugins?;
18
19
  constructor(options: SerializerOptions);
19
20
  keys: Set<string>;
20
21
  write(key: string, value: unknown): void;
@@ -1 +1 @@
1
- {"version":3,"file":"Serializer.d.ts","sourceRoot":"","sources":["../../../src/core/Serializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAIpD,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;IAc3B,OAAO,CAAC,OAAO;IAbjB,OAAO,CAAC,KAAK,CAAQ;IAErB,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,IAAI,CAAS;IAErB,OAAO,CAAC,OAAO,CAAK;IAEpB,OAAO,CAAC,QAAQ,CAAsB;IAEtC,OAAO,CAAC,IAAI,CAA8B;gBAGhC,OAAO,EAAE,iBAAiB;IAIpC,IAAI,cAAqB;IAEzB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAgCxC,GAAG,SAAK;IAER,OAAO,CAAC,SAAS;IAOjB,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAM5B,KAAK,IAAI,IAAI;IAUb,KAAK,IAAI,IAAI;CAYd"}
1
+ {"version":3,"file":"Serializer.d.ts","sourceRoot":"","sources":["../../../src/core/Serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,UAAU,CAAC;AAIlB,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;IAejB,OAAO,CAAC,OAAO;IAd3B,OAAO,CAAC,KAAK,CAAQ;IAErB,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,IAAI,CAAS;IAErB,OAAO,CAAC,OAAO,CAAK;IAEpB,OAAO,CAAC,QAAQ,CAAsB;IAEtC,OAAO,CAAC,IAAI,CAA8B;IAE1C,OAAO,CAAC,OAAO,CAAC,CAAqB;gBAEjB,OAAO,EAAE,iBAAiB;IAI9C,IAAI,cAAqB;IAEzB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IA2CxC,GAAG,SAAK;IAER,OAAO,CAAC,SAAS;IAOjB,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAM5B,KAAK,IAAI,IAAI;IAUb,KAAK,IAAI,IAAI;CAYd"}
@@ -1 +1 @@
1
- {"version":3,"file":"UnsupportedTypeError.d.ts","sourceRoot":"","sources":["../../../src/core/UnsupportedTypeError.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,KAAK;IAClC,KAAK,EAAE,OAAO;gBAAd,KAAK,EAAE,OAAO;CAGlC"}
1
+ {"version":3,"file":"UnsupportedTypeError.d.ts","sourceRoot":"","sources":["../../../src/core/UnsupportedTypeError.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,KAAK;IAClC,KAAK,EAAE,OAAO;gBAAd,KAAK,EAAE,OAAO;CAGlC"}
@@ -1,6 +1,6 @@
1
- import type { BigIntTypedArrayValue, TypedArrayValue } from '../types';
2
1
  import type { WellKnownSymbols } from './constants';
3
- import type { SerovalAggregateErrorNode, SerovalArrayBufferNode, SerovalArrayNode, SerovalAsyncIteratorFactoryInstanceNode, SerovalBigIntNode, SerovalBigIntTypedArrayNode, SerovalBoxedNode, SerovalConstantNode, SerovalDataViewNode, SerovalDateNode, SerovalErrorNode, SerovalIndexedValueNode, SerovalIteratorFactoryInstanceNode, SerovalNode, SerovalNodeWithID, SerovalNumberNode, SerovalObjectRecordNode, SerovalPluginNode, SerovalReferenceNode, SerovalRegExpNode, SerovalSetNode, SerovalStringNode, SerovalTypedArrayNode, SerovalWKSymbolNode } from './types';
2
+ import type { SerovalAggregateErrorNode, SerovalArrayBufferNode, SerovalArrayNode, SerovalAsyncIteratorFactoryInstanceNode, SerovalBigIntNode, SerovalBigIntTypedArrayNode, SerovalBoxedNode, SerovalConstantNode, SerovalDataViewNode, SerovalDateNode, SerovalErrorNode, SerovalIndexedValueNode, SerovalIteratorFactoryInstanceNode, SerovalNode, SerovalNodeWithID, SerovalNumberNode, SerovalObjectRecordNode, SerovalPluginNode, SerovalReferenceNode, SerovalRegExpNode, SerovalSetNode, SerovalStreamConstructorNode, SerovalStreamNextNode, SerovalStreamReturnNode, SerovalStreamThrowNode, SerovalStringNode, SerovalTypedArrayNode, SerovalWKSymbolNode } from './types';
3
+ import type { BigIntTypedArrayValue, TypedArrayValue } from './utils/typed-array';
4
4
  export declare function createNumberNode(value: number): SerovalConstantNode | SerovalNumberNode;
5
5
  export declare function createStringNode(value: string): SerovalStringNode;
6
6
  export declare function createBigIntNode(current: bigint): SerovalBigIntNode;
@@ -21,4 +21,8 @@ export declare function createAggregateErrorNode(id: number, current: AggregateE
21
21
  export declare function createSetNode(id: number, size: number, items: SerovalNode[]): SerovalSetNode;
22
22
  export declare function createIteratorFactoryInstanceNode(factory: SerovalNodeWithID, items: SerovalNode): SerovalIteratorFactoryInstanceNode;
23
23
  export declare function createAsyncIteratorFactoryInstanceNode(factory: SerovalNodeWithID, items: SerovalNode): SerovalAsyncIteratorFactoryInstanceNode;
24
+ export declare function createStreamConstructorNode(id: number, factory: SerovalNodeWithID, sequence: SerovalNode[]): SerovalStreamConstructorNode;
25
+ export declare function createStreamNextNode(id: number, parsed: SerovalNode): SerovalStreamNextNode;
26
+ export declare function createStreamThrowNode(id: number, parsed: SerovalNode): SerovalStreamThrowNode;
27
+ export declare function createStreamReturnNode(id: number, parsed: SerovalNode): SerovalStreamReturnNode;
24
28
  //# sourceMappingURL=base-primitives.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-primitives.d.ts","sourceRoot":"","sources":["../../../src/core/base-primitives.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAWpD,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,gBAAgB,EAChB,uCAAuC,EACvC,iBAAiB,EACjB,2BAA2B,EAC3B,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,kCAAkC,EAClC,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAGjB,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,GAAG,iBAAiB,CA6BvF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAejE;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,GACd,iBAAiB,CAenB;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,CAe1E;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,GAAG,eAAe,CAezE;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,iBAAiB,CAe/E;AAED,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,WAAW,GACnB,sBAAsB,CAqBxB;AAED,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,gBAAgB,GACxB,mBAAmB,CAgBrB;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,CAAC,GACL,oBAAoB,CAetB;AAED,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,GACb,iBAAiB,CAenB;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,EAAE,EAClB,WAAW,EAAE,WAAW,EAAE,GACzB,gBAAgB,CAelB;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,WAAW,GACjB,gBAAgB,CAelB;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,WAAW,GAClB,qBAAqB,CAevB;AAED,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,WAAW,GAClB,2BAA2B,CAe7B;AAED,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,WAAW,GAClB,mBAAmB,CAerB;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,uBAAuB,GAAG,SAAS,GAC3C,gBAAgB,CAelB;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,uBAAuB,GAAG,SAAS,GAC3C,yBAAyB,CAe3B;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,EAAE,GACnB,cAAc,CAehB;AAED,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,WAAW,GACjB,kCAAkC,CAkBpC;AAED,wBAAgB,sCAAsC,CACpD,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,WAAW,GACjB,uCAAuC,CAkBzC"}
1
+ {"version":3,"file":"base-primitives.d.ts","sourceRoot":"","sources":["../../../src/core/base-primitives.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAWpD,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,gBAAgB,EAChB,uCAAuC,EACvC,iBAAiB,EACjB,2BAA2B,EAC3B,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,kCAAkC,EAClC,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,4BAA4B,EAC5B,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,EACV,qBAAqB,EACrB,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAE7B,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,GACZ,mBAAmB,GAAG,iBAAiB,CA2BzC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAejE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,CAenE;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,CAe1E;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,GAAG,eAAe,CAezE;AAED,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,GACd,iBAAiB,CAenB;AAED,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,WAAW,GACnB,sBAAsB,CAqBxB;AAED,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,gBAAgB,GACxB,mBAAmB,CAmBrB;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,CAAC,GACL,oBAAoB,CAetB;AAED,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,GACb,iBAAiB,CAenB;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,EAAE,EAClB,WAAW,EAAE,WAAW,EAAE,GACzB,gBAAgB,CAelB;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,WAAW,GACjB,gBAAgB,CAelB;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,WAAW,GAClB,qBAAqB,CAevB;AAED,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,WAAW,GAClB,2BAA2B,CAe7B;AAED,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,WAAW,GAClB,mBAAmB,CAerB;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,uBAAuB,GAAG,SAAS,GAC3C,gBAAgB,CAelB;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,uBAAuB,GAAG,SAAS,GAC3C,yBAAyB,CAe3B;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,EAAE,GACnB,cAAc,CAehB;AAED,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,WAAW,GACjB,kCAAkC,CAepC;AAED,wBAAgB,sCAAsC,CACpD,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,WAAW,GACjB,uCAAuC,CAezC;AAED,wBAAgB,2BAA2B,CACzC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,WAAW,EAAE,GACtB,4BAA4B,CAe9B;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,WAAW,GAClB,qBAAqB,CAevB;AAED,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,WAAW,GAClB,sBAAsB,CAexB;AAED,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,WAAW,GAClB,uBAAuB,CAezB"}
@@ -5,18 +5,10 @@
5
5
  */
6
6
  export declare const enum Feature {
7
7
  AggregateError = 1,
8
- ArrowFunction = 4,
9
- BigInt = 8,
10
- ErrorPrototypeStack = 16,
11
- Map = 32,
12
- ObjectAssign = 128,
13
- Promise = 256,
14
- Set = 512,
15
- Symbol = 1024,
16
- TypedArray = 2048,
17
- BigIntTypedArray = 4096,
18
- WebAPI = 8192
8
+ ArrowFunction = 2,
9
+ ErrorPrototypeStack = 4,
10
+ ObjectAssign = 8,
11
+ BigIntTypedArray = 16
19
12
  }
20
- export declare const ALL_ENABLED = 16383;
21
- export declare const BIGINT_FLAG: number;
13
+ export declare const ALL_ENABLED = 31;
22
14
  //# sourceMappingURL=compat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compat.d.ts","sourceRoot":"","sources":["../../../src/core/compat.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,0BAAkB,OAAO;IACvB,cAAc,IAAO;IACrB,aAAa,IAAO;IACpB,MAAM,IAAO;IACb,mBAAmB,KAAO;IAC1B,GAAG,KAAO;IACV,YAAY,MAAO;IACnB,OAAO,MAAQ;IACf,GAAG,MAAQ;IACX,MAAM,OAAQ;IACd,UAAU,OAAQ;IAClB,gBAAgB,OAAS;IACzB,MAAM,OAAS;CAChB;AAED,eAAO,MAAM,WAAW,QAAS,CAAC;AAElC,eAAO,MAAM,WAAW,QAA4C,CAAC"}
1
+ {"version":3,"file":"compat.d.ts","sourceRoot":"","sources":["../../../src/core/compat.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,0BAAkB,OAAO;IACvB,cAAc,IAAO;IACrB,aAAa,IAAO;IACpB,mBAAmB,IAAO;IAC1B,YAAY,IAAO;IACnB,gBAAgB,KAAO;CACxB;AAED,eAAO,MAAM,WAAW,KAAO,CAAC"}
@@ -27,35 +27,23 @@ export declare const enum SerovalNodeType {
27
27
  TypedArray = 15,
28
28
  BigIntTypedArray = 16,
29
29
  WKSymbol = 17,
30
- URL = 18,
31
- URLSearchParams = 19,
32
- Reference = 20,
33
- ArrayBuffer = 21,
34
- DataView = 22,
35
- Blob = 23,
36
- File = 24,
37
- Headers = 25,
38
- FormData = 26,
39
- Boxed = 27,
40
- PromiseConstructor = 28,
41
- PromiseResolve = 29,
42
- PromiseReject = 30,
43
- ReadableStreamConstructor = 31,
44
- ReadableStreamEnqueue = 32,
45
- ReadableStreamClose = 33,
46
- ReadableStreamError = 34,
47
- Request = 35,
48
- Response = 36,
49
- Event = 37,
50
- CustomEvent = 38,
51
- DOMException = 39,
52
- Plugin = 40,
53
- SpecialReference = 41,
54
- IteratorFactory = 42,
55
- IteratorFactoryInstance = 43,
56
- AsyncIteratorFactory = 44,
57
- AsyncIteratorFactoryInstance = 45,
58
- ReadableStream = 46
30
+ Reference = 18,
31
+ ArrayBuffer = 19,
32
+ DataView = 20,
33
+ Boxed = 21,
34
+ PromiseConstructor = 22,
35
+ PromiseResolve = 23,
36
+ PromiseReject = 24,
37
+ Plugin = 25,
38
+ SpecialReference = 26,
39
+ IteratorFactory = 27,
40
+ IteratorFactoryInstance = 28,
41
+ AsyncIteratorFactory = 29,
42
+ AsyncIteratorFactoryInstance = 30,
43
+ StreamConstructor = 31,
44
+ StreamNext = 32,
45
+ StreamThrow = 33,
46
+ StreamReturn = 34
59
47
  }
60
48
  export declare const enum SerovalObjectFlags {
61
49
  None = 0,
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/core/constants.ts"],"names":[],"mappings":"AAAA,0BAAkB,eAAe;IAC/B,IAAI,IAAI;IACR,SAAS,IAAI;IACb,IAAI,IAAI;IACR,KAAK,IAAI;IACT,YAAY,IAAI;IAChB,QAAQ,IAAI;IACZ,gBAAgB,IAAI;IACpB,GAAG,IAAI;CACR;AAED,0BAAkB,eAAe;IAC/B,MAAM,IAAI;IACV,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,MAAM,IAAI;IACV,YAAY,IAAI;IAChB,IAAI,IAAI;IACR,MAAM,IAAI;IACV,GAAG,IAAI;IACP,GAAG,IAAI;IACP,KAAK,IAAI;IACT,MAAM,KAAK;IACX,eAAe,KAAK;IACpB,OAAO,KAAK;IACZ,KAAK,KAAK;IACV,cAAc,KAAK;IACnB,UAAU,KAAK;IACf,gBAAgB,KAAK;IACrB,QAAQ,KAAK;IACb,GAAG,KAAK;IACR,eAAe,KAAK;IACpB,SAAS,KAAK;IACd,WAAW,KAAK;IAChB,QAAQ,KAAK;IACb,IAAI,KAAK;IACT,IAAI,KAAK;IACT,OAAO,KAAK;IACZ,QAAQ,KAAK;IACb,KAAK,KAAK;IACV,kBAAkB,KAAK;IACvB,cAAc,KAAK;IACnB,aAAa,KAAK;IAClB,yBAAyB,KAAK;IAC9B,qBAAqB,KAAK;IAC1B,mBAAmB,KAAK;IACxB,mBAAmB,KAAK;IACxB,OAAO,KAAK;IACZ,QAAQ,KAAK;IACb,KAAK,KAAK;IACV,WAAW,KAAK;IAChB,YAAY,KAAK;IACjB,MAAM,KAAK;IACX,gBAAgB,KAAK;IACrB,eAAe,KAAK;IACpB,uBAAuB,KAAK;IAC5B,oBAAoB,KAAK;IACzB,4BAA4B,KAAK;IACjC,cAAc,KAAK;CACpB;AAED,0BAAkB,kBAAkB;IAClC,IAAI,IAAI;IACR,aAAa,IAAI;IACjB,MAAM,IAAI;IACV,MAAM,IAAI;CACX;AAED,0BAAkB,OAAO;IACvB,aAAa,IAAI;IACjB,WAAW,IAAI;IACf,kBAAkB,IAAI;IACtB,QAAQ,IAAI;IACZ,KAAK,IAAI;IACT,QAAQ,IAAI;IACZ,OAAO,IAAI;IACX,MAAM,IAAI;IACV,OAAO,IAAI;IACX,KAAK,IAAI;IACT,WAAW,KAAK;IAChB,WAAW,KAAK;IAChB,WAAW,KAAK;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAcjD,CAAC;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;CAc1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,cAAc,CAAC;AAE3D,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAcxD,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAS3D,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,eAAe,EAAE,OAAO,CASzD,CAAC;AAEF,0BAAkB,mBAAmB;IACnC,KAAK,IAAI;IACT,SAAS,IAAI;IACb,UAAU,IAAI;IACd,cAAc,IAAI;IAClB,WAAW,IAAI;IACf,SAAS,IAAI;IACb,QAAQ,IAAI;CACb;AAED,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAQxE,CAAC;AAEF,KAAK,iBAAiB,GAClB,gBAAgB,GAChB,oBAAoB,GACpB,qBAAqB,GACrB,yBAAyB,GACzB,sBAAsB,GACtB,oBAAoB,GACpB,mBAAmB,CAAC;AAExB,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,CAQ5E,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/core/constants.ts"],"names":[],"mappings":"AAAA,0BAAkB,eAAe;IAC/B,IAAI,IAAI;IACR,SAAS,IAAI;IACb,IAAI,IAAI;IACR,KAAK,IAAI;IACT,YAAY,IAAI;IAChB,QAAQ,IAAI;IACZ,gBAAgB,IAAI;IACpB,GAAG,IAAI;CACR;AAED,0BAAkB,eAAe;IAC/B,MAAM,IAAI;IACV,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,MAAM,IAAI;IACV,YAAY,IAAI;IAChB,IAAI,IAAI;IACR,MAAM,IAAI;IACV,GAAG,IAAI;IACP,GAAG,IAAI;IACP,KAAK,IAAI;IACT,MAAM,KAAK;IACX,eAAe,KAAK;IACpB,OAAO,KAAK;IACZ,KAAK,KAAK;IACV,cAAc,KAAK;IACnB,UAAU,KAAK;IACf,gBAAgB,KAAK;IACrB,QAAQ,KAAK;IACb,SAAS,KAAK;IACd,WAAW,KAAK;IAChB,QAAQ,KAAK;IACb,KAAK,KAAK;IACV,kBAAkB,KAAK;IACvB,cAAc,KAAK;IACnB,aAAa,KAAK;IAClB,MAAM,KAAK;IACX,gBAAgB,KAAK;IACrB,eAAe,KAAK;IACpB,uBAAuB,KAAK;IAC5B,oBAAoB,KAAK;IACzB,4BAA4B,KAAK;IACjC,iBAAiB,KAAK;IACtB,UAAU,KAAK;IACf,WAAW,KAAK;IAChB,YAAY,KAAK;CAClB;AAED,0BAAkB,kBAAkB;IAClC,IAAI,IAAI;IACR,aAAa,IAAI;IACjB,MAAM,IAAI;IACV,MAAM,IAAI;CACX;AAED,0BAAkB,OAAO;IACvB,aAAa,IAAI;IACjB,WAAW,IAAI;IACf,kBAAkB,IAAI;IACtB,QAAQ,IAAI;IACZ,KAAK,IAAI;IACT,QAAQ,IAAI;IACZ,OAAO,IAAI;IACX,MAAM,IAAI;IACV,OAAO,IAAI;IACX,KAAK,IAAI;IACT,WAAW,KAAK;IAChB,WAAW,KAAK;IAChB,WAAW,KAAK;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAcjD,CAAC;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;CAc1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,cAAc,CAAC;AAE3D,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAcxD,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAS3D,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,eAAe,EAAE,OAAO,CASzD,CAAC;AAEF,0BAAkB,mBAAmB;IACnC,KAAK,IAAI;IACT,SAAS,IAAI;IACb,UAAU,IAAI;IACd,cAAc,IAAI;IAClB,WAAW,IAAI;IACf,SAAS,IAAI;IACb,QAAQ,IAAI;CACb;AAED,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAQxE,CAAC;AAEF,KAAK,iBAAiB,GAClB,gBAAgB,GAChB,oBAAoB,GACpB,qBAAqB,GACrB,yBAAyB,GACzB,sBAAsB,GACtB,oBAAoB,GACpB,mBAAmB,CAAC;AAExB,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,CAS1E,CAAC"}
@@ -28,29 +28,19 @@ export default abstract class BaseDeserializerContext implements PluginAccessOpt
28
28
  private deserializeAggregateError;
29
29
  private deserializeError;
30
30
  private deserializePromise;
31
- private deserializeURL;
32
- private deserializeURLSearchParams;
33
- private deserializeBlob;
34
- private deserializeFile;
35
- private deserializeHeaders;
36
- private deserializeFormData;
37
31
  private deserializeBoxed;
38
- private deserializeRequest;
39
- private deserializeResponse;
40
- private deserializeEvent;
41
- private deserializeCustomEvent;
42
- private deserializeDOMException;
43
32
  private deserializePlugin;
44
33
  private deserializePromiseConstructor;
45
34
  private deserializePromiseResolve;
46
35
  private deserializePromiseReject;
47
- private deserializeReadableStreamConstructor;
48
- private deserializeReadableStreamEnqueue;
49
- private deserializeReadableStreamError;
50
- private deserializeReadableStreamClose;
51
36
  private deserializeIteratorFactoryInstance;
52
37
  private deserializeAsyncIteratorFactoryInstance;
53
- private deserializeReadableStream;
38
+ private deserializeStreamConstructor;
39
+ private deserializeStreamNext;
40
+ private deserializeStreamThrow;
41
+ private deserializeStreamReturn;
42
+ private deserializeIteratorFactory;
43
+ private deserializeAsyncIteratorFactory;
54
44
  deserialize(node: SerovalNode): unknown;
55
45
  }
56
46
  //# sourceMappingURL=deserializer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"deserializer.d.ts","sourceRoot":"","sources":["../../../../src/core/context/deserializer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAmBV,WAAW,EAuBZ,MAAM,UAAU,CAAC;AAQlB,OAAO,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AA6B1E,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7B;AAED,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,uBAAwB,YAAW,mBAAmB;IAClF,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAEpC;;;OAGG;IACH,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE3B,OAAO,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,SAAS,CAAC;gBAE7B,OAAO,EAAE,uBAAuB;IAK5C,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,EACrC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,CAAC,GACP,CAAC;IAEJ,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,qBAAqB;IAoB7B,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,qBAAqB;IAa7B,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,yBAAyB;IAcjC,OAAO,CAAC,gBAAgB;YAWV,kBAAkB;IAchC,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,0BAA0B;IAMlC,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,6BAA6B;IAOrC,OAAO,CAAC,yBAAyB;IASjC,OAAO,CAAC,wBAAwB;IAShC,OAAO,CAAC,oCAAoC;IAS5C,OAAO,CAAC,gCAAgC;IASxC,OAAO,CAAC,8BAA8B;IAStC,OAAO,CAAC,8BAA8B;IAOtC,OAAO,CAAC,kCAAkC;IAO1C,OAAO,CAAC,uCAAuC;IAY/C,OAAO,CAAC,yBAAyB;IAWjC,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;CA+FxC"}
1
+ {"version":3,"file":"deserializer.d.ts","sourceRoot":"","sources":["../../../../src/core/context/deserializer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAcV,WAAW,EAkBZ,MAAM,UAAU,CAAC;AAQlB,OAAO,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AA8B1E,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7B;AAED,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,uBAC5B,YAAW,mBAAmB;IAE9B,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAEpC;;;OAGG;IACH,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE3B,OAAO,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,SAAS,CAAC;gBAE7B,OAAO,EAAE,uBAAuB;IAK5C,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;IAEjE,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,qBAAqB;IAoB7B,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,yBAAyB;IAcjC,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,6BAA6B;IAMrC,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,kCAAkC;IAQ1C,OAAO,CAAC,uCAAuC;IAQ/C,OAAO,CAAC,4BAA4B;IAapC,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,0BAA0B;IAOlC,OAAO,CAAC,+BAA+B;IAOvC,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;CAyExC"}
@@ -1,5 +1,5 @@
1
1
  import { BaseParserContext } from '../parser';
2
- import type { SerovalNode, SerovalPlainRecordNode } from '../../types';
2
+ import type { SerovalNode } from '../../types';
3
3
  export default abstract class BaseAsyncParserContext extends BaseParserContext {
4
4
  private parseItems;
5
5
  private parseArray;
@@ -13,18 +13,9 @@ export default abstract class BaseAsyncParserContext extends BaseParserContext {
13
13
  private parseAggregateError;
14
14
  private parseMap;
15
15
  private parseSet;
16
- private parseBlob;
17
- private parseFile;
18
- protected parsePlainProperties(entries: [key: string, value: unknown][]): Promise<SerovalPlainRecordNode>;
19
- private parseHeaders;
20
- private parseFormData;
21
- private parseRequest;
22
- private parseResponse;
23
- private parseEvent;
24
- private parseCustomEvent;
25
16
  private parsePromise;
26
17
  private parsePlugin;
27
- private parseReadableStream;
18
+ private parseStream;
28
19
  private parseObject;
29
20
  parse<T>(current: T): Promise<SerovalNode>;
30
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../../../src/core/context/parser/async.ts"],"names":[],"mappings":"AAyCA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAI9C,OAAO,KAAK,EAKV,WAAW,EAeX,sBAAsB,EAOvB,MAAM,aAAa,CAAC;AAgBrB,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,sBAAuB,SAAQ,iBAAiB;YAC9D,UAAU;YAYV,UAAU;YAWV,eAAe;YA8Df,gBAAgB;YAahB,UAAU;YAOV,eAAe;YAOf,qBAAqB;YAOrB,aAAa;YAOb,UAAU;YAcV,mBAAmB;YAcnB,QAAQ;YAkBR,QAAQ;YAWR,SAAS;YAoBT,SAAS;cAoBP,oBAAoB,CAClC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,GACvC,OAAO,CAAC,sBAAsB,CAAC;YAepB,YAAY;YAwBZ,aAAa;YAwBb,YAAY;YAsBZ,aAAa;YAyBb,UAAU;YAOV,gBAAgB;YAWhB,YAAY;YAqBZ,WAAW;YAsBX,mBAAmB;YAanB,WAAW;IAuJnB,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;CA0BjD"}
1
+ {"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../../../src/core/context/parser/async.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAI9C,OAAO,KAAK,EAKV,WAAW,EAaZ,MAAM,aAAa,CAAC;AAcrB,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,sBAAuB,SAAQ,iBAAiB;YAC9D,UAAU;YAWV,UAAU;YAOV,eAAe;YAsDf,gBAAgB;YAahB,UAAU;YAOV,eAAe;YAOf,qBAAqB;YAWrB,aAAa;YAOb,UAAU;YAYV,mBAAmB;YAYnB,QAAQ;YAaR,QAAQ;YAWR,YAAY;YAqBZ,WAAW;YAsBX,WAAW;YAuDX,WAAW;IAqGnB,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;CA6BjD"}
@@ -1,6 +1,7 @@
1
1
  import type { BaseSyncParserContextOptions } from './sync';
2
2
  import BaseSyncParserContext from './sync';
3
- import type { SerovalNode, SerovalObjectRecordNode, SerovalPluginNode } from '../../types';
3
+ import type { SerovalNode, SerovalObjectRecordNode, SerovalPluginNode, SerovalPromiseConstructorNode } from '../../types';
4
+ import type { Stream } from '../../stream';
4
5
  export interface BaseStreamParserContextOptions extends BaseSyncParserContextOptions {
5
6
  onParse: (node: SerovalNode, initial: boolean) => void;
6
7
  onError?: (error: unknown) => void;
@@ -13,20 +14,19 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
13
14
  private onErrorCallback?;
14
15
  private onDoneCallback?;
15
16
  constructor(options: BaseStreamParserContextOptions);
17
+ private initial;
18
+ private buffer;
19
+ private onParseInternal;
20
+ private flush;
16
21
  private onParse;
17
22
  private onError;
18
23
  private onDone;
19
- push<T>(value: T): void;
20
- pushPendingState(): void;
21
- popPendingState(): void;
24
+ private pushPendingState;
25
+ private popPendingState;
22
26
  protected parseProperties(properties: Record<string | symbol, unknown>): SerovalObjectRecordNode;
23
- private pushReadableStreamReader;
24
- private parseReadableStream;
25
- private parseRequest;
26
- private parseResponse;
27
- private parsePromise;
27
+ protected parsePromise(id: number, current: Promise<unknown>): SerovalPromiseConstructorNode;
28
28
  protected parsePlugin(id: number, current: unknown): SerovalPluginNode | undefined;
29
- protected parseObject(id: number, current: object): SerovalNode;
29
+ protected parseStream(id: number, current: Stream<unknown>): SerovalNode;
30
30
  private parseWithError;
31
31
  /**
32
32
  * @private
@@ -1 +1 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../../../src/core/context/parser/stream.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,qBAAqB,MAAM,QAAQ,CAAC;AAM3C,OAAO,KAAK,EACV,WAAW,EAEX,uBAAuB,EACvB,iBAAiB,EAKlB,MAAM,aAAa,CAAC;AAKrB,MAAM,WAAW,8BAA+B,SAAQ,4BAA4B;IAClF,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,CAAC,OAAO,CAAC,QAAQ,OAAO,uBAAwB,SAAQ,qBAAqB;IAEjF,OAAO,CAAC,KAAK,CAAQ;IAGrB,OAAO,CAAC,OAAO,CAAK;IAEpB,OAAO,CAAC,eAAe,CAAgD;IAEvE,OAAO,CAAC,eAAe,CAAC,CAA2B;IAEnD,OAAO,CAAC,cAAc,CAAC,CAAa;gBAExB,OAAO,EAAE,8BAA8B;IAOnD,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,MAAM;IAMd,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAOvB,gBAAgB,IAAI,IAAI;IAIxB,eAAe,IAAI,IAAI;IAMvB,SAAS,CAAC,eAAe,CACvB,UAAU,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,GAC3C,uBAAuB;IA+D1B,OAAO,CAAC,wBAAwB;IA4EhC,OAAO,CAAC,mBAAmB;IAwB3B,OAAO,CAAC,YAAY;IAsBpB,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,YAAY;IAuEpB,SAAS,CAAC,WAAW,CACnB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,GACf,iBAAiB,GAAG,SAAS;IAmBhC,SAAS,CAAC,WAAW,CACnB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,GACd,WAAW;IAgJd,OAAO,CAAC,cAAc;IAStB;;OAEG;IACH,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI;IAY1B;;OAEG;IACH,OAAO,IAAI,IAAI;IAOf,OAAO,IAAI,OAAO;CAGnB"}
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../../../src/core/context/parser/stream.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,qBAAqB,MAAM,QAAQ,CAAC;AAI3C,OAAO,KAAK,EACV,WAAW,EAEX,uBAAuB,EACvB,iBAAiB,EACjB,6BAA6B,EAC9B,MAAM,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,MAAM,WAAW,8BACf,SAAQ,4BAA4B;IACpC,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,CAAC,OAAO,CAAC,QAAQ,OAAO,uBAAwB,SAAQ,qBAAqB;IAEjF,OAAO,CAAC,KAAK,CAAQ;IAGrB,OAAO,CAAC,OAAO,CAAK;IAEpB,OAAO,CAAC,eAAe,CAAgD;IAEvE,OAAO,CAAC,eAAe,CAAC,CAA2B;IAEnD,OAAO,CAAC,cAAc,CAAC,CAAa;gBAExB,OAAO,EAAE,8BAA8B;IAOnD,OAAO,CAAC,OAAO,CAAQ;IAEvB,OAAO,CAAC,MAAM,CAAqB;IAEnC,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,eAAe;IAMvB,SAAS,CAAC,eAAe,CACvB,UAAU,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,GAC3C,uBAAuB;IAoD1B,SAAS,CAAC,YAAY,CACpB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GACxB,6BAA6B;IAuDhC,SAAS,CAAC,WAAW,CACnB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,GACf,iBAAiB,GAAG,SAAS;IAmBhC,SAAS,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,WAAW;IAsCxE,OAAO,CAAC,cAAc;IAStB;;OAEG;IACH,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI;IAc1B;;OAEG;IACH,OAAO,IAAI,IAAI;IAOf,OAAO,IAAI,OAAO;CAGnB"}
@@ -1,7 +1,8 @@
1
- import type { BigIntTypedArrayValue, TypedArrayValue } from '../../../types';
2
1
  import type { BaseParserContextOptions } from '../parser';
3
2
  import { BaseParserContext } from '../parser';
4
- import type { SerovalBoxedNode, SerovalArrayNode, SerovalNode, SerovalNullConstructorNode, SerovalObjectNode, SerovalObjectRecordNode, SerovalErrorNode, SerovalMapNode, SerovalSetNode, SerovalPluginNode, SerovalAggregateErrorNode, SerovalCustomEventNode, SerovalEventNode, SerovalHeadersNode, SerovalPlainRecordNode, SerovalFormDataNode, SerovalTypedArrayNode, SerovalBigIntTypedArrayNode, SerovalDataViewNode } from '../../types';
3
+ import type { SerovalBoxedNode, SerovalArrayNode, SerovalNode, SerovalNullConstructorNode, SerovalObjectNode, SerovalObjectRecordNode, SerovalErrorNode, SerovalMapNode, SerovalSetNode, SerovalPluginNode, SerovalAggregateErrorNode, SerovalTypedArrayNode, SerovalBigIntTypedArrayNode, SerovalDataViewNode, SerovalPromiseConstructorNode } from '../../types';
4
+ import type { Stream } from '../../stream';
5
+ import type { BigIntTypedArrayValue, TypedArrayValue } from '../../utils/typed-array';
5
6
  type ObjectLikeNode = SerovalObjectNode | SerovalNullConstructorNode;
6
7
  export type BaseSyncParserContextOptions = BaseParserContextOptions;
7
8
  export default abstract class BaseSyncParserContext extends BaseParserContext {
@@ -17,12 +18,9 @@ export default abstract class BaseSyncParserContext extends BaseParserContext {
17
18
  protected parseAggregateError(id: number, current: AggregateError): SerovalAggregateErrorNode;
18
19
  protected parseMap(id: number, current: Map<unknown, unknown>): SerovalMapNode;
19
20
  protected parseSet(id: number, current: Set<unknown>): SerovalSetNode;
20
- protected parsePlainProperties(entries: [key: string, value: unknown][]): SerovalPlainRecordNode;
21
- protected parseHeaders(id: number, current: Headers): SerovalHeadersNode;
22
- protected parseFormData(id: number, current: FormData): SerovalFormDataNode;
23
- protected parseEvent(id: number, current: Event): SerovalEventNode;
24
- protected parseCustomEvent(id: number, current: CustomEvent): SerovalCustomEventNode;
25
21
  protected parsePlugin(id: number, current: unknown): SerovalPluginNode | undefined;
22
+ protected parseStream(id: number, _current: Stream<unknown>): SerovalNode;
23
+ protected parsePromise(id: number, _current: Promise<unknown>): SerovalPromiseConstructorNode;
26
24
  protected parseObject(id: number, current: object): SerovalNode;
27
25
  parse<T>(current: T): SerovalNode;
28
26
  }