seroval 0.14.0 → 0.14.1

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 (42) hide show
  1. package/dist/cjs/development/index.cjs +147 -112
  2. package/dist/cjs/development/index.cjs.map +2 -2
  3. package/dist/cjs/production/index.cjs +3 -3
  4. package/dist/esm/development/index.mjs +147 -112
  5. package/dist/esm/development/index.mjs.map +2 -2
  6. package/dist/esm/production/index.mjs +3 -3
  7. package/dist/types/core/base-primitives.d.ts +3 -3
  8. package/dist/types/core/base-primitives.d.ts.map +1 -1
  9. package/dist/types/core/constants.d.ts +2 -3
  10. package/dist/types/core/constants.d.ts.map +1 -1
  11. package/dist/types/core/context/deserializer.d.ts.map +1 -1
  12. package/dist/types/core/context/parser/stream.d.ts.map +1 -1
  13. package/dist/types/core/context/parser.d.ts +3 -3
  14. package/dist/types/core/context/parser.d.ts.map +1 -1
  15. package/dist/types/core/context/serializer.d.ts +11 -10
  16. package/dist/types/core/context/serializer.d.ts.map +1 -1
  17. package/dist/types/core/cross/serializer.d.ts +1 -8
  18. package/dist/types/core/cross/serializer.d.ts.map +1 -1
  19. package/dist/types/core/keys.d.ts +0 -12
  20. package/dist/types/core/keys.d.ts.map +1 -1
  21. package/dist/types/core/special-reference.d.ts +13 -3
  22. package/dist/types/core/special-reference.d.ts.map +1 -1
  23. package/dist/types/core/types.d.ts +33 -20
  24. package/dist/types/core/types.d.ts.map +1 -1
  25. package/dist/types/core/web-api.d.ts +2 -2
  26. package/dist/types/core/web-api.d.ts.map +1 -1
  27. package/dist/types/index.d.ts +1 -1
  28. package/dist/types/index.d.ts.map +1 -1
  29. package/package.json +2 -2
  30. package/src/core/base-primitives.ts +3 -2
  31. package/src/core/constants.ts +1 -2
  32. package/src/core/context/deserializer.ts +6 -7
  33. package/src/core/context/parser/async.ts +2 -2
  34. package/src/core/context/parser/stream.ts +29 -13
  35. package/src/core/context/parser.ts +12 -36
  36. package/src/core/context/serializer.ts +105 -44
  37. package/src/core/cross/serializer.ts +0 -57
  38. package/src/core/keys.ts +0 -36
  39. package/src/core/special-reference.ts +23 -3
  40. package/src/core/types.ts +33 -24
  41. package/src/core/web-api.ts +2 -1
  42. package/src/index.ts +1 -1
@@ -1,4 +1,5 @@
1
1
  import type { SerovalNodeType, SerovalObjectFlags, SerovalConstant, Symbols, ErrorConstructorTag } from './constants';
2
+ import type { SpecialReference } from './special-reference';
2
3
  export interface SerovalBaseNode {
3
4
  t: SerovalNodeType;
4
5
  i: number | undefined;
@@ -93,7 +94,7 @@ export interface SerovalMapNode extends SerovalBaseNode {
93
94
  t: SerovalNodeType.Map;
94
95
  i: number;
95
96
  e: SerovalMapRecordNode;
96
- f: SerovalMapSentinelNode | SerovalIndexedValueNode;
97
+ f: SerovalNodeWithID;
97
98
  }
98
99
  export interface SerovalArrayNode extends SerovalBaseNode {
99
100
  t: SerovalNodeType.Array;
@@ -192,34 +193,49 @@ export interface SerovalBoxedNode extends SerovalBaseNode {
192
193
  export interface SerovalPromiseConstructorNode extends SerovalBaseNode {
193
194
  t: SerovalNodeType.PromiseConstructor;
194
195
  i: number;
196
+ f: SerovalNodeWithID;
195
197
  }
196
198
  export interface SerovalPromiseResolveNode extends SerovalBaseNode {
197
199
  t: SerovalNodeType.PromiseResolve;
198
200
  i: number;
199
- f: SerovalNode;
201
+ a: [
202
+ resolver: SerovalNodeWithID,
203
+ resolved: SerovalNode
204
+ ];
200
205
  }
201
206
  export interface SerovalPromiseRejectNode extends SerovalBaseNode {
202
207
  t: SerovalNodeType.PromiseReject;
203
208
  i: number;
204
- f: SerovalNode;
209
+ a: [
210
+ resolver: SerovalNodeWithID,
211
+ resolved: SerovalNode
212
+ ];
205
213
  }
206
214
  export interface SerovalReadableStreamConstructorNode extends SerovalBaseNode {
207
215
  t: SerovalNodeType.ReadableStreamConstructor;
208
216
  i: number;
217
+ f: SerovalNodeWithID;
209
218
  }
210
219
  export interface SerovalReadableStreamEnqueueNode extends SerovalBaseNode {
211
220
  t: SerovalNodeType.ReadableStreamEnqueue;
212
221
  i: number;
213
- f: SerovalNode;
214
- }
215
- export interface SerovalReadableStreamCloseNode extends SerovalBaseNode {
216
- t: SerovalNodeType.ReadableStreamClose;
217
- i: number;
222
+ a: [
223
+ resolver: SerovalNodeWithID,
224
+ resolved: SerovalNode
225
+ ];
218
226
  }
219
227
  export interface SerovalReadableStreamErrorNode extends SerovalBaseNode {
220
228
  t: SerovalNodeType.ReadableStreamError;
221
229
  i: number;
222
- f: SerovalNode;
230
+ a: [
231
+ resolver: SerovalNodeWithID,
232
+ resolved: SerovalNode
233
+ ];
234
+ }
235
+ export interface SerovalReadableStreamCloseNode extends SerovalBaseNode {
236
+ t: SerovalNodeType.ReadableStreamClose;
237
+ i: number;
238
+ f: SerovalNodeWithID;
223
239
  }
224
240
  export interface SerovalRequestNode extends SerovalBaseNode {
225
241
  t: SerovalNodeType.Request;
@@ -256,9 +272,10 @@ export interface SerovalPluginNode extends SerovalBaseNode {
256
272
  s: unknown;
257
273
  c: string;
258
274
  }
259
- export interface SerovalMapSentinelNode extends SerovalBaseNode {
260
- t: SerovalNodeType.MapSentinel;
275
+ export interface SerovalSpecialReferenceNode extends SerovalBaseNode {
276
+ t: SerovalNodeType.SpecialReference;
261
277
  i: number;
278
+ s: SpecialReference;
262
279
  }
263
280
  export interface SerovalIteratorFactoryNode extends SerovalBaseNode {
264
281
  t: SerovalNodeType.IteratorFactory;
@@ -268,7 +285,7 @@ export interface SerovalIteratorFactoryNode extends SerovalBaseNode {
268
285
  export interface SerovalIteratorFactoryInstanceNode extends SerovalBaseNode {
269
286
  t: SerovalNodeType.IteratorFactoryInstance;
270
287
  a: [
271
- instance: SerovalNode,
288
+ instance: SerovalNodeWithID,
272
289
  sequence: SerovalNode
273
290
  ];
274
291
  }
@@ -281,7 +298,7 @@ export interface SerovalAsyncIteratorFactoryNode extends SerovalBaseNode {
281
298
  export interface SerovalAsyncIteratorFactoryInstanceNode extends SerovalBaseNode {
282
299
  t: SerovalNodeType.AsyncIteratorFactoryInstance;
283
300
  a: [
284
- instance: SerovalNode,
301
+ instance: SerovalNodeWithID,
285
302
  sequence: SerovalNode
286
303
  ];
287
304
  }
@@ -289,16 +306,12 @@ export interface SerovalReadableStreamNode extends SerovalBaseNode {
289
306
  t: SerovalNodeType.ReadableStream;
290
307
  i: number;
291
308
  a: [
292
- instance: SerovalNode,
309
+ instance: SerovalNodeWithID,
293
310
  sequence: SerovalNode
294
311
  ];
295
312
  }
296
- export interface SerovalReadableStreamFactoryNode extends SerovalBaseNode {
297
- t: SerovalNodeType.ReadableStreamFactory;
298
- i: number;
299
- }
300
- export type SerovalSyncNode = SerovalPrimitiveNode | SerovalIndexedValueNode | SerovalSemiPrimitiveNode | SerovalSetNode | SerovalMapNode | SerovalArrayNode | SerovalObjectNode | SerovalNullConstructorNode | SerovalPromiseNode | SerovalErrorNode | SerovalAggregateErrorNode | SerovalWKSymbolNode | SerovalURLNode | SerovalURLSearchParamsNode | SerovalReferenceNode | SerovalArrayBufferNode | SerovalDataViewNode | SerovalBlobNode | SerovalFileNode | SerovalHeadersNode | SerovalFormDataNode | SerovalBoxedNode | SerovalEventNode | SerovalCustomEventNode | SerovalDOMExceptionNode | SerovalPluginNode | SerovalMapSentinelNode | SerovalIteratorFactoryNode | SerovalIteratorFactoryInstanceNode | SerovalAsyncIteratorFactoryNode | SerovalAsyncIteratorFactoryInstanceNode;
301
- export type SerovalAsyncNode = SerovalPromiseNode | SerovalBlobNode | SerovalFileNode | SerovalPromiseConstructorNode | SerovalPromiseResolveNode | SerovalPromiseRejectNode | SerovalReadableStreamConstructorNode | SerovalReadableStreamEnqueueNode | SerovalReadableStreamCloseNode | SerovalReadableStreamErrorNode | SerovalRequestNode | SerovalResponseNode | SerovalReadableStreamNode | SerovalReadableStreamFactoryNode;
313
+ export type SerovalSyncNode = SerovalPrimitiveNode | SerovalIndexedValueNode | SerovalSemiPrimitiveNode | SerovalSetNode | SerovalMapNode | SerovalArrayNode | SerovalObjectNode | SerovalNullConstructorNode | SerovalPromiseNode | SerovalErrorNode | SerovalAggregateErrorNode | SerovalWKSymbolNode | SerovalURLNode | SerovalURLSearchParamsNode | SerovalReferenceNode | SerovalArrayBufferNode | SerovalDataViewNode | SerovalBlobNode | SerovalFileNode | SerovalHeadersNode | SerovalFormDataNode | SerovalBoxedNode | SerovalEventNode | SerovalCustomEventNode | SerovalDOMExceptionNode | SerovalPluginNode | SerovalSpecialReferenceNode | SerovalIteratorFactoryNode | SerovalIteratorFactoryInstanceNode | SerovalAsyncIteratorFactoryNode | SerovalAsyncIteratorFactoryInstanceNode;
314
+ export type SerovalAsyncNode = SerovalPromiseNode | SerovalBlobNode | SerovalFileNode | SerovalPromiseConstructorNode | SerovalPromiseResolveNode | SerovalPromiseRejectNode | SerovalReadableStreamConstructorNode | SerovalReadableStreamEnqueueNode | SerovalReadableStreamCloseNode | SerovalReadableStreamErrorNode | SerovalRequestNode | SerovalResponseNode | SerovalReadableStreamNode;
302
315
  export type SerovalNode = SerovalSyncNode | SerovalAsyncNode;
303
316
  export type SerovalNodeWithID = Extract<SerovalNode, {
304
317
  i: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import type { SerovalCustomEventNode, SerovalDOMExceptionNode, SerovalEventNode, SerovalNode, SerovalReadableStreamNode, SerovalURLNode, SerovalURLSearchParamsNode } from './types';
1
+ import type { SerovalCustomEventNode, SerovalDOMExceptionNode, SerovalEventNode, SerovalNode, SerovalNodeWithID, SerovalReadableStreamNode, SerovalURLNode, SerovalURLSearchParamsNode } from './types';
2
2
  export declare function createURLNode(id: number, current: URL): SerovalURLNode;
3
3
  export declare function createURLSearchParamsNode(id: number, current: URLSearchParams): SerovalURLSearchParamsNode;
4
4
  export declare function createDOMExceptionNode(id: number, current: DOMException): SerovalDOMExceptionNode;
5
5
  export declare function createEventNode(id: number, type: string, options: SerovalNode): SerovalEventNode;
6
6
  export declare function createCustomEventNode(id: number, type: string, options: SerovalNode): SerovalCustomEventNode;
7
- export declare function createReadableStreamNode(id: number, factory: SerovalNode, items: SerovalNode): SerovalReadableStreamNode;
7
+ export declare function createReadableStreamNode(id: number, factory: SerovalNodeWithID, items: SerovalNode): SerovalReadableStreamNode;
8
8
  //# sourceMappingURL=web-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"web-api.d.ts","sourceRoot":"","sources":["../../../src/core/web-api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,EACX,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAEjB,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,GAAG,GACX,cAAc,CAehB;AAED,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,eAAe,GACvB,0BAA0B,CAe5B;AAED,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,YAAY,GACpB,uBAAuB,CAezB;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,GACnB,gBAAgB,CAelB;AAED,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,GACnB,sBAAsB,CAexB;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,WAAW,GACjB,yBAAyB,CAkB3B"}
1
+ {"version":3,"file":"web-api.d.ts","sourceRoot":"","sources":["../../../src/core/web-api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAEjB,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,GAAG,GACX,cAAc,CAehB;AAED,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,eAAe,GACvB,0BAA0B,CAe5B;AAED,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,YAAY,GACpB,uBAAuB,CAezB;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,GACnB,gBAAgB,CAelB;AAED,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,GACnB,sBAAsB,CAexB;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,WAAW,GACjB,yBAAyB,CAkB3B"}
@@ -4,7 +4,7 @@ export { Feature } from './core/compat';
4
4
  export { createReference } from './core/reference';
5
5
  export * from './core/tree';
6
6
  export * from './core/cross';
7
- export { GLOBAL_CONTEXT_API_SCRIPT, getCrossReferenceHeader } from './core/keys';
7
+ export { getCrossReferenceHeader } from './core/keys';
8
8
  export { default as Serializer } from './core/Serializer';
9
9
  export * from './core/plugin';
10
10
  export type { SerovalNode } from './core/types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEjF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC1D,cAAc,eAAe,CAAC;AAE9B,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC1D,cAAc,eAAe,CAAC;AAE9B,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAe,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "seroval",
3
3
  "type": "module",
4
- "version": "0.14.0",
4
+ "version": "0.14.1",
5
5
  "files": [
6
6
  "dist",
7
7
  "src"
@@ -66,5 +66,5 @@
66
66
  "typesVersions": {
67
67
  "*": {}
68
68
  },
69
- "gitHead": "0fb114d1b7cd06d9fb33e895c5bb143a73d9f457"
69
+ "gitHead": "6c22472b58ec0dc367bf91bde033da0e9d8706fa"
70
70
  }
@@ -26,6 +26,7 @@ import type {
26
26
  SerovalIndexedValueNode,
27
27
  SerovalIteratorFactoryInstanceNode,
28
28
  SerovalNode,
29
+ SerovalNodeWithID,
29
30
  SerovalNumberNode,
30
31
  SerovalObjectRecordNode,
31
32
  SerovalPluginNode,
@@ -412,7 +413,7 @@ export function createSetNode(
412
413
  }
413
414
 
414
415
  export function createIteratorFactoryInstanceNode(
415
- factory: SerovalNode,
416
+ factory: SerovalNodeWithID,
416
417
  items: SerovalNode,
417
418
  ): SerovalIteratorFactoryInstanceNode {
418
419
  return {
@@ -435,7 +436,7 @@ export function createIteratorFactoryInstanceNode(
435
436
  }
436
437
 
437
438
  export function createAsyncIteratorFactoryInstanceNode(
438
- factory: SerovalNode,
439
+ factory: SerovalNodeWithID,
439
440
  items: SerovalNode,
440
441
  ): SerovalAsyncIteratorFactoryInstanceNode {
441
442
  return {
@@ -51,13 +51,12 @@ export const enum SerovalNodeType {
51
51
  CustomEvent = 38,
52
52
  DOMException = 39,
53
53
  Plugin = 40,
54
- MapSentinel = 41,
54
+ SpecialReference = 41,
55
55
  IteratorFactory = 42,
56
56
  IteratorFactoryInstance = 43,
57
57
  AsyncIteratorFactory = 44,
58
58
  AsyncIteratorFactoryInstance = 45,
59
59
  ReadableStream = 46,
60
- ReadableStreamFactory = 47,
61
60
  }
62
61
 
63
62
  export const enum SerovalObjectFlags {
@@ -449,7 +449,7 @@ export default abstract class BaseDeserializerContext implements PluginAccessOpt
449
449
  const deferred = this.refs.get(node.i) as Deferred | undefined;
450
450
  assert(deferred, new Error('Missing Promise instance.'));
451
451
  deferred.resolve(
452
- this.deserialize(node.f),
452
+ this.deserialize(node.a[1]),
453
453
  );
454
454
  return undefined;
455
455
  }
@@ -458,7 +458,7 @@ export default abstract class BaseDeserializerContext implements PluginAccessOpt
458
458
  const deferred = this.refs.get(node.i) as Deferred | undefined;
459
459
  assert(deferred, new Error('Missing Promise instance.'));
460
460
  deferred.reject(
461
- this.deserialize(node.f),
461
+ this.deserialize(node.a[1]),
462
462
  );
463
463
  return undefined;
464
464
  }
@@ -476,7 +476,7 @@ export default abstract class BaseDeserializerContext implements PluginAccessOpt
476
476
  const deferred = this.refs.get(node.i) as DeferredStream | undefined;
477
477
  assert(deferred, new Error('Missing ReadableStream instance.'));
478
478
  deferred.enqueue(
479
- this.deserialize(node.f),
479
+ this.deserialize(node.a[1]),
480
480
  );
481
481
  return undefined;
482
482
  }
@@ -485,7 +485,7 @@ export default abstract class BaseDeserializerContext implements PluginAccessOpt
485
485
  const deferred = this.refs.get(node.i) as DeferredStream | undefined;
486
486
  assert(deferred, new Error('Missing Promise instance.'));
487
487
  deferred.error(
488
- this.deserialize(node.f),
488
+ this.deserialize(node.a[1]),
489
489
  );
490
490
  return undefined;
491
491
  }
@@ -508,7 +508,7 @@ export default abstract class BaseDeserializerContext implements PluginAccessOpt
508
508
  node: SerovalAsyncIteratorFactoryInstanceNode,
509
509
  ): unknown {
510
510
  const source = this.deserialize(node.a[1]);
511
- if ((source as object).constructor === ReadableStream) {
511
+ if (node.s) {
512
512
  return readableStreamToAsyncIterator(
513
513
  source as ReadableStream<SerializedAsyncIteratorResult<unknown>>,
514
514
  );
@@ -615,10 +615,9 @@ export default abstract class BaseDeserializerContext implements PluginAccessOpt
615
615
  return this.deserializeAsyncIteratorFactoryInstance(node);
616
616
  case SerovalNodeType.ReadableStream:
617
617
  return this.deserializeReadableStream(node);
618
- case SerovalNodeType.MapSentinel:
618
+ case SerovalNodeType.SpecialReference:
619
619
  case SerovalNodeType.IteratorFactory:
620
620
  case SerovalNodeType.AsyncIteratorFactory:
621
- case SerovalNodeType.ReadableStreamFactory:
622
621
  default:
623
622
  throw new Error('invariant');
624
623
  }
@@ -79,7 +79,7 @@ import {
79
79
  createCustomEventNode,
80
80
  createReadableStreamNode,
81
81
  } from '../../web-api';
82
- import { UNIVERSAL_SENTINEL } from '../../special-reference';
82
+ import { SpecialReference, UNIVERSAL_SENTINEL } from '../../special-reference';
83
83
 
84
84
  type ObjectLikeNode =
85
85
  | SerovalObjectNode
@@ -489,7 +489,7 @@ export default abstract class BaseAsyncParserContext extends BaseParserContext {
489
489
  ): Promise<SerovalReadableStreamNode> {
490
490
  return createReadableStreamNode(
491
491
  id,
492
- this.parseReadableStreamFactory(),
492
+ this.parseSpecialReference(SpecialReference.ReadableStream),
493
493
  await this.parse(
494
494
  await readableStreamToSequence(current),
495
495
  ),
@@ -28,7 +28,7 @@ import type {
28
28
  } from '../../types';
29
29
  import { createDOMExceptionNode, createURLNode, createURLSearchParamsNode } from '../../web-api';
30
30
  import { asyncIteratorToReadableStream, iteratorToSequence } from '../../utils/iterator-to-sequence';
31
- import { UNIVERSAL_SENTINEL } from '../../special-reference';
31
+ import { SpecialReference, UNIVERSAL_SENTINEL } from '../../special-reference';
32
32
 
33
33
  export interface BaseStreamParserContextOptions extends BaseSyncParserContextOptions {
34
34
  onParse: (node: SerovalNode, initial: boolean) => void;
@@ -57,7 +57,11 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
57
57
  }
58
58
 
59
59
  private onParse(node: SerovalNode, initial: boolean): void {
60
- this.onParseCallback(node, initial);
60
+ try {
61
+ this.onParseCallback(node, initial);
62
+ } catch (error) {
63
+ this.onError(error);
64
+ }
61
65
  }
62
66
 
63
67
  private onError(error: unknown): void {
@@ -174,7 +178,7 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
174
178
  p: undefined,
175
179
  e: undefined,
176
180
  a: undefined,
177
- f: undefined,
181
+ f: this.parseSpecialReference(SpecialReference.ReadableStreamClose),
178
182
  b: undefined,
179
183
  o: undefined,
180
184
  }, false);
@@ -191,8 +195,11 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
191
195
  m: undefined,
192
196
  p: undefined,
193
197
  e: undefined,
194
- a: undefined,
195
- f: parsed,
198
+ a: [
199
+ this.parseSpecialReference(SpecialReference.ReadableStreamEnqueue),
200
+ parsed,
201
+ ],
202
+ f: undefined,
196
203
  b: undefined,
197
204
  o: undefined,
198
205
  }, false);
@@ -214,8 +221,11 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
214
221
  m: undefined,
215
222
  p: undefined,
216
223
  e: undefined,
217
- a: undefined,
218
- f: parsed,
224
+ a: [
225
+ this.parseSpecialReference(SpecialReference.ReadableStreamError),
226
+ parsed,
227
+ ],
228
+ f: undefined,
219
229
  b: undefined,
220
230
  o: undefined,
221
231
  }, false);
@@ -244,7 +254,7 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
244
254
  p: undefined,
245
255
  e: undefined,
246
256
  a: undefined,
247
- f: undefined,
257
+ f: this.parseSpecialReference(SpecialReference.ReadableStreamConstructor),
248
258
  b: undefined,
249
259
  o: undefined,
250
260
  };
@@ -314,8 +324,11 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
314
324
  m: undefined,
315
325
  p: undefined,
316
326
  e: undefined,
317
- a: undefined,
318
- f: parsed,
327
+ a: [
328
+ this.parseSpecialReference(SpecialReference.PromiseResolve),
329
+ parsed,
330
+ ],
331
+ f: undefined,
319
332
  b: undefined,
320
333
  o: undefined,
321
334
  }, false);
@@ -335,8 +348,11 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
335
348
  m: undefined,
336
349
  p: undefined,
337
350
  e: undefined,
338
- a: undefined,
339
- f: parsed,
351
+ a: [
352
+ this.parseSpecialReference(SpecialReference.PromiseReject),
353
+ parsed,
354
+ ],
355
+ f: undefined,
340
356
  b: undefined,
341
357
  o: undefined,
342
358
  }, false);
@@ -356,7 +372,7 @@ export default abstract class BaseStreamParserContext extends BaseSyncParserCont
356
372
  p: undefined,
357
373
  e: undefined,
358
374
  a: undefined,
359
- f: undefined,
375
+ f: this.parseSpecialReference(SpecialReference.PromiseConstructor),
360
376
  b: undefined,
361
377
  o: undefined,
362
378
  };
@@ -14,23 +14,22 @@ import {
14
14
  import type { Plugin, PluginAccessOptions, SerovalMode } from '../plugin';
15
15
  import { hasReferenceID } from '../reference';
16
16
  import {
17
+ SpecialReference,
17
18
  ASYNC_ITERATOR,
18
19
  ITERATOR,
19
- MAP_SENTINEL,
20
- READABLE_STREAM,
20
+ SPECIAL_REFS,
21
21
  } from '../special-reference';
22
22
  import type {
23
23
  SerovalAsyncIteratorFactoryNode,
24
24
  SerovalIndexedValueNode,
25
25
  SerovalIteratorFactoryNode,
26
26
  SerovalMapNode,
27
- SerovalMapSentinelNode,
28
27
  SerovalNode,
29
28
  SerovalNullConstructorNode,
30
29
  SerovalObjectNode,
31
30
  SerovalObjectRecordNode,
32
- SerovalReadableStreamFactoryNode,
33
31
  SerovalReferenceNode,
32
+ SerovalSpecialReferenceNode,
34
33
  SerovalWKSymbolNode,
35
34
  } from '../types';
36
35
  import { getObjectFlag } from '../utils/get-object-flag';
@@ -115,18 +114,21 @@ export abstract class BaseParserContext implements PluginAccessOptions {
115
114
  return createReferenceNode(id, current);
116
115
  }
117
116
 
118
- protected parseMapSentinel(): SerovalIndexedValueNode | SerovalMapSentinelNode {
119
- const registeredID = this.refs.get(MAP_SENTINEL);
117
+ protected parseSpecialReference(
118
+ ref: SpecialReference,
119
+ ): SerovalIndexedValueNode | SerovalSpecialReferenceNode {
120
+ const specialRef = SPECIAL_REFS[ref];
121
+ const registeredID = this.refs.get(specialRef);
120
122
  if (registeredID != null) {
121
123
  this.markRef(registeredID);
122
124
  return createIndexedValueNode(registeredID);
123
125
  }
124
126
  const id = this.refs.size;
125
- this.refs.set(MAP_SENTINEL, id);
127
+ this.refs.set(specialRef, id);
126
128
  return {
127
- t: SerovalNodeType.MapSentinel,
129
+ t: SerovalNodeType.SpecialReference,
128
130
  i: id,
129
- s: undefined,
131
+ s: ref,
130
132
  l: undefined,
131
133
  c: undefined,
132
134
  m: undefined,
@@ -227,33 +229,7 @@ export abstract class BaseParserContext implements PluginAccessOptions {
227
229
  p: undefined,
228
230
  e: { k, v, s },
229
231
  a: undefined,
230
- f: this.parseMapSentinel(),
231
- b: undefined,
232
- o: undefined,
233
- };
234
- }
235
-
236
- protected parseReadableStreamFactory(): (
237
- SerovalIndexedValueNode | SerovalReadableStreamFactoryNode
238
- ) {
239
- const registeredID = this.refs.get(READABLE_STREAM);
240
- if (registeredID != null) {
241
- this.markRef(registeredID);
242
- return createIndexedValueNode(registeredID);
243
- }
244
- const id = this.refs.size;
245
- this.refs.set(READABLE_STREAM, id);
246
- return {
247
- t: SerovalNodeType.ReadableStreamFactory,
248
- i: id,
249
- s: undefined,
250
- l: undefined,
251
- c: undefined,
252
- m: undefined,
253
- p: undefined,
254
- e: undefined,
255
- a: undefined,
256
- f: undefined,
232
+ f: this.parseSpecialReference(SpecialReference.MapSentinel),
257
233
  b: undefined,
258
234
  o: undefined,
259
235
  };