@elaraai/east 1.0.45 → 1.0.47

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 (90) hide show
  1. package/dist/src/containers/sortedmap.d.ts +22 -0
  2. package/dist/src/containers/sortedmap.d.ts.map +1 -1
  3. package/dist/src/containers/sortedmap.js +31 -2
  4. package/dist/src/containers/sortedmap.js.map +1 -1
  5. package/dist/src/containers/sortedset.d.ts +22 -0
  6. package/dist/src/containers/sortedset.d.ts.map +1 -1
  7. package/dist/src/containers/sortedset.js +31 -2
  8. package/dist/src/containers/sortedset.js.map +1 -1
  9. package/dist/src/expr/blob.d.ts +6 -1
  10. package/dist/src/expr/blob.d.ts.map +1 -1
  11. package/dist/src/expr/blob.js +6 -1
  12. package/dist/src/expr/blob.js.map +1 -1
  13. package/dist/src/expr/libs/blob.d.ts +10 -1
  14. package/dist/src/expr/libs/blob.d.ts.map +1 -1
  15. package/dist/src/expr/libs/blob.js +10 -1
  16. package/dist/src/expr/libs/blob.js.map +1 -1
  17. package/dist/src/fuzz.d.ts.map +1 -1
  18. package/dist/src/fuzz.js +11 -2
  19. package/dist/src/fuzz.js.map +1 -1
  20. package/dist/src/serialization/beast2/index.d.ts +76 -22
  21. package/dist/src/serialization/beast2/index.d.ts.map +1 -1
  22. package/dist/src/serialization/beast2/index.js +87 -720
  23. package/dist/src/serialization/beast2/index.js.map +1 -1
  24. package/dist/src/serialization/beast2/index.spec.js +147 -4
  25. package/dist/src/serialization/beast2/index.spec.js.map +1 -1
  26. package/dist/src/serialization/beast2/shared.d.ts +79 -0
  27. package/dist/src/serialization/beast2/shared.d.ts.map +1 -0
  28. package/dist/src/serialization/beast2/shared.js +143 -0
  29. package/dist/src/serialization/beast2/shared.js.map +1 -0
  30. package/dist/src/serialization/beast2/v4/container.d.ts +67 -0
  31. package/dist/src/serialization/beast2/v4/container.d.ts.map +1 -0
  32. package/dist/src/serialization/beast2/v4/container.js +727 -0
  33. package/dist/src/serialization/beast2/v4/container.js.map +1 -0
  34. package/dist/src/serialization/beast2/{sourcemap-table.d.ts → v4/sourcemap-table.d.ts} +2 -2
  35. package/dist/src/serialization/beast2/v4/sourcemap-table.d.ts.map +1 -0
  36. package/dist/src/serialization/beast2/{sourcemap-table.js → v4/sourcemap-table.js} +2 -2
  37. package/dist/src/serialization/beast2/v4/sourcemap-table.js.map +1 -0
  38. package/dist/src/serialization/beast2/{string-table.d.ts → v4/string-table.d.ts} +1 -1
  39. package/dist/src/serialization/beast2/v4/string-table.d.ts.map +1 -0
  40. package/dist/src/serialization/beast2/{string-table.js → v4/string-table.js} +1 -1
  41. package/dist/src/serialization/beast2/v4/string-table.js.map +1 -0
  42. package/dist/src/serialization/beast2/{type-table.d.ts → v4/type-table.d.ts} +6 -4
  43. package/dist/src/serialization/beast2/v4/type-table.d.ts.map +1 -0
  44. package/dist/src/serialization/beast2/{type-table.js → v4/type-table.js} +103 -10
  45. package/dist/src/serialization/beast2/v4/type-table.js.map +1 -0
  46. package/dist/src/serialization/beast2/{value-table.d.ts → v4/value-table.d.ts} +2 -2
  47. package/dist/src/serialization/beast2/v4/value-table.d.ts.map +1 -0
  48. package/dist/src/serialization/beast2/{value-table.js → v4/value-table.js} +3 -3
  49. package/dist/src/serialization/beast2/v4/value-table.js.map +1 -0
  50. package/dist/src/serialization/beast2/v5/codec.d.ts +213 -0
  51. package/dist/src/serialization/beast2/v5/codec.d.ts.map +1 -0
  52. package/dist/src/serialization/beast2/v5/codec.js +954 -0
  53. package/dist/src/serialization/beast2/v5/codec.js.map +1 -0
  54. package/dist/src/serialization/beast2/v5/deflate.d.ts +16 -0
  55. package/dist/src/serialization/beast2/v5/deflate.d.ts.map +1 -0
  56. package/dist/src/serialization/beast2/v5/deflate.js +172 -0
  57. package/dist/src/serialization/beast2/v5/deflate.js.map +1 -0
  58. package/dist/src/serialization/beast2/v5/frames.d.ts +150 -0
  59. package/dist/src/serialization/beast2/v5/frames.d.ts.map +1 -0
  60. package/dist/src/serialization/beast2/v5/frames.js +284 -0
  61. package/dist/src/serialization/beast2/v5/frames.js.map +1 -0
  62. package/dist/src/serialization/beast2/v5/index.spec.d.ts +6 -0
  63. package/dist/src/serialization/beast2/v5/index.spec.d.ts.map +1 -0
  64. package/dist/src/serialization/beast2/v5/index.spec.js +484 -0
  65. package/dist/src/serialization/beast2/v5/index.spec.js.map +1 -0
  66. package/dist/src/serialization/beast2/v5/stream.d.ts +177 -0
  67. package/dist/src/serialization/beast2/v5/stream.d.ts.map +1 -0
  68. package/dist/src/serialization/beast2/v5/stream.js +447 -0
  69. package/dist/src/serialization/beast2/v5/stream.js.map +1 -0
  70. package/dist/src/serialization/beast2/v5/type-section.d.ts +81 -0
  71. package/dist/src/serialization/beast2/v5/type-section.d.ts.map +1 -0
  72. package/dist/src/serialization/beast2/v5/type-section.js +211 -0
  73. package/dist/src/serialization/beast2/v5/type-section.js.map +1 -0
  74. package/dist/src/serialization/beast2/version.d.ts +40 -0
  75. package/dist/src/serialization/beast2/version.d.ts.map +1 -0
  76. package/dist/src/serialization/beast2/version.js +23 -0
  77. package/dist/src/serialization/beast2/version.js.map +1 -0
  78. package/dist/src/serialization/index.d.ts +1 -1
  79. package/dist/src/serialization/index.d.ts.map +1 -1
  80. package/dist/src/serialization/index.js +1 -1
  81. package/dist/src/serialization/index.js.map +1 -1
  82. package/package.json +1 -1
  83. package/dist/src/serialization/beast2/sourcemap-table.d.ts.map +0 -1
  84. package/dist/src/serialization/beast2/sourcemap-table.js.map +0 -1
  85. package/dist/src/serialization/beast2/string-table.d.ts.map +0 -1
  86. package/dist/src/serialization/beast2/string-table.js.map +0 -1
  87. package/dist/src/serialization/beast2/type-table.d.ts.map +0 -1
  88. package/dist/src/serialization/beast2/type-table.js.map +0 -1
  89. package/dist/src/serialization/beast2/value-table.d.ts.map +0 -1
  90. package/dist/src/serialization/beast2/value-table.js.map +0 -1
@@ -3,15 +3,12 @@
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
5
  /**
6
- * Beast2 v2 — complete encoder and decoder.
6
+ * Beast2 container — version-agnostic public entry points.
7
7
  *
8
- * File layout: magic(8) + type_table_section + string_table_section + value_data
9
- * Type table: flat array of unique types, referenced by varint index.
10
- * String table: flat array of unique strings, referenced by varint index.
11
- * Value data: type-driven positional encoding, no inline type tags.
12
- * Functions: IR encoded directly — EastTypeType schema positions auto-emit type table indices.
13
- *
14
- * See devdocs/BEAST2.md for the full specification.
8
+ * Decoders dispatch on the magic's version byte (`v4` = 0x04, `v5` = 0x05) so
9
+ * every entry point accepts blobs of either container version. Encoders write
10
+ * the v4 container by default. See `SPEC.md` for the magic registry and
11
+ * version policy, `v4/SPEC.md` and `v5/SPEC.md` for the wire formats.
15
12
  */
16
13
  import { type EastTypeValue } from "../../type_of_type.js";
17
14
  import type { EastType, ValueTypeOf } from "../../types.js";
@@ -19,32 +16,89 @@ import { type FunctionIR, type AsyncFunctionIR } from "../../ir.js";
19
16
  import type { PlatformFunction } from "../../platform.js";
20
17
  import { EastIR, AsyncEastIR } from "../../eastir.js";
21
18
  import type { SourceMap } from "../../location.js";
22
- export declare const MAGIC_BYTES: Uint8Array<ArrayBuffer>;
23
- export type Beast2DecodeOptions = {
24
- platform?: PlatformFunction[];
25
- };
26
- export declare function encodeBeast2For(type: EastTypeValue, options?: {
19
+ import { type Beast2DecodeOptions } from "./shared.js";
20
+ import type { Beast2Codec } from "./v5/frames.js";
21
+ import { type Beast2Version } from "./version.js";
22
+ export { MAGIC_BYTES } from "./v4/container.js";
23
+ export { MAGIC_BYTES_V5 } from "./v5/codec.js";
24
+ export type { Beast2DecodeOptions } from "./shared.js";
25
+ export type { Beast2Codec } from "./v5/frames.js";
26
+ export { Beast2Writer, type Beast2WriterOptions, encodeBeast2SegmentsFor, iterBeast2SegmentsFor, Beast2Pages, openBeast2PagesFor, } from "./v5/stream.js";
27
+ export { BEAST2_WRITE_VERSION, BEAST2_READ_VERSIONS, type Beast2Version } from "./version.js";
28
+ /** Options accepted by {@link encodeBeast2For}. */
29
+ export type Beast2EncodeOptions = {
30
+ /** Explicit source map to embed (overrides discovery from function values). */
27
31
  sourceMap?: SourceMap | null;
28
- }): (value: any) => Uint8Array;
29
- export declare function encodeBeast2For<T extends EastType>(type: T, options?: {
30
- sourceMap?: SourceMap | null;
31
- }): (value: ValueTypeOf<T>) => Uint8Array;
32
+ /** Container version to write. Defaults to `5`. Pass `4` to write the
33
+ * legacy globally-sectioned container for a reader that predates v5. */
34
+ version?: Beast2Version;
35
+ /** v5 only: per-frame codec. Defaults to `"deflate"`. */
36
+ codec?: Beast2Codec;
37
+ /** v5 only: write the trailing index + footer (container roots).
38
+ * Defaults to `false`. */
39
+ index?: boolean;
40
+ };
41
+ /**
42
+ * Builds an encoder closure for the given type.
43
+ *
44
+ * The returned function encodes values of `type` into a self-contained beast2
45
+ * blob. The container version defaults to v5 — the segment-terminated record
46
+ * stream (see `v5/SPEC.md`), deflate-framed — and accepts the `codec` and
47
+ * `index` options. Pass `version: 4` for the legacy container; decode entry
48
+ * points accept every version regardless.
49
+ *
50
+ * @param type - the root East type (as `EastType` or `EastTypeValue`)
51
+ * @param options - encode options (source map, container version, v5 codec/index)
52
+ * @returns a reusable function encoding values of `type` to beast2 bytes
53
+ */
54
+ export declare function encodeBeast2For(type: EastTypeValue, options?: Beast2EncodeOptions): (value: any) => Uint8Array;
55
+ export declare function encodeBeast2For<T extends EastType>(type: T, options?: Beast2EncodeOptions): (value: ValueTypeOf<T>) => Uint8Array;
56
+ /**
57
+ * Builds a decoder closure for the given type.
58
+ *
59
+ * The returned function dispatches on the blob's magic version byte, so v4
60
+ * blobs decode through the same entry point as newer container versions.
61
+ *
62
+ * @param type - the expected root East type (as `EastType` or `EastTypeValue`)
63
+ * @param options - decode options (platform functions for decoded functions)
64
+ * @returns a reusable function decoding beast2 bytes to values of `type`
65
+ */
32
66
  export declare function decodeBeast2For(type: EastTypeValue, options?: Beast2DecodeOptions): (data: Uint8Array) => any;
33
67
  export declare function decodeBeast2For<T extends EastType>(type: T, options?: Beast2DecodeOptions): (data: Uint8Array) => ValueTypeOf<T>;
68
+ /**
69
+ * Builds an async decoder closure for the given type.
70
+ *
71
+ * Identical to {@link decodeBeast2For} but decompresses v5 deflate frames with
72
+ * the platform's async decompressor (`DecompressionStream`), so it works in
73
+ * browsers where Node's zlib is unavailable. v4 blobs decode synchronously.
74
+ *
75
+ * @param type - the expected root East type (as `EastType` or `EastTypeValue`)
76
+ * @param options - decode options (platform functions for decoded functions)
77
+ * @returns a reusable async function decoding beast2 bytes to values of `type`
78
+ */
79
+ export declare function decodeBeast2ForAsync(type: EastTypeValue, options?: Beast2DecodeOptions): (data: Uint8Array) => Promise<any>;
80
+ export declare function decodeBeast2ForAsync<T extends EastType>(type: T, options?: Beast2DecodeOptions): (data: Uint8Array) => Promise<ValueTypeOf<T>>;
81
+ /**
82
+ * Decodes a self-describing blob using its embedded root type.
83
+ *
84
+ * @param data - a beast2 blob of any supported container version
85
+ * @param options - decode options (platform functions for decoded functions)
86
+ * @returns the blob's root type and decoded value
87
+ */
88
+ export declare function decodeBeast2(data: Uint8Array, options?: Beast2DecodeOptions): {
89
+ type: EastTypeValue;
90
+ value: any;
91
+ };
34
92
  /** Encode an EastIR (or AsyncEastIR) as a beast2 blob that carries both the
35
93
  * IR and its source map. Prefer this over `encodeBeast2For(IRType)(ir)` when
36
94
  * encoding a program rather than opaque IR data. */
37
- export declare function encodeEastIR<I extends any[], O>(eastIR: EastIR<I, O> | AsyncEastIR<I, O>): Uint8Array;
95
+ export declare function encodeEastIR<I extends any[], O>(eastIR: EastIR<I, O> | AsyncEastIR<I, O>, options?: Omit<Beast2EncodeOptions, "sourceMap">): Uint8Array;
38
96
  /** Decode a beast2 blob whose root is a Function IR into an EastIR. The
39
97
  * returned wrapper has its source_map populated from the blob's source_map
40
98
  * section, so downstream compile() resolves loc_ids automatically. */
41
99
  export declare function decodeEastIR<I extends any[] = any[], O = any>(data: Uint8Array): EastIR<I, O>;
42
100
  /** Async-function variant of decodeEastIR. */
43
101
  export declare function decodeAsyncEastIR<I extends any[] = any[], O = any>(data: Uint8Array): AsyncEastIR<I, O>;
44
- export declare function decodeBeast2(data: Uint8Array, options?: Beast2DecodeOptions): {
45
- type: EastTypeValue;
46
- value: any;
47
- };
48
102
  export declare function compileFunctionIR<I extends any[], O>(ir: FunctionIR, platform: PlatformFunction[]): (...args: I) => O;
49
103
  export declare function compileAsyncFunctionIR<I extends any[], O>(ir: AsyncFunctionIR, platform: PlatformFunction[]): (...args: I) => Promise<O>;
50
104
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/serialization/beast2/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAO5D,OAAO,EAAU,KAAK,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAItD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAmDnD,eAAO,MAAM,WAAW,yBAAmE,CAAC;AAkB5F,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC/B,CAAC;AAglBF,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;CAAE,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,UAAU,CAAA;AAC5H,wBAAgB,eAAe,CAAC,CAAC,SAAS,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;CAAE,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,UAAU,CAAA;AAqE/I,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,CAAC,IAAI,EAAE,UAAU,KAAK,GAAG,CAAA;AAC9G,wBAAgB,eAAe,CAAC,CAAC,SAAS,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,CAAC,IAAI,EAAE,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,CAAA;AAgDjI;;qDAEqD;AACrD,wBAAgB,YAAY,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,UAAU,CAErG;AAED;;uEAEuE;AACvE,wBAAgB,YAAY,CAAC,CAAC,SAAS,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAQ7F;AAED,8CAA8C;AAC9C,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,UAAU,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAQvG;AAkCD,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,GAAG,CAAA;CAAE,CA2BjH;AAQD,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,CAErH;AAED,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAExI"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/serialization/beast2/index.ts"],"names":[],"mappings":"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"}