brs-js 2.1.3 → 3.0.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 (85) hide show
  1. package/README.md +271 -190
  2. package/dist/dist.js +6 -1
  3. package/dist/dist.js.map +1 -1
  4. package/dist/dist.mjs +7389 -0
  5. package/dist/dist.mjs.map +1 -0
  6. package/dist/dist.node.js +6 -1
  7. package/dist/dist.node.js.map +1 -1
  8. package/dist/dist.web.js +6 -1
  9. package/dist/dist.web.js.map +1 -1
  10. package/dist/src/brdb/bits.d.ts +13 -0
  11. package/dist/src/brdb/bits.d.ts.map +1 -0
  12. package/dist/src/brdb/brdb.d.ts +131 -0
  13. package/dist/src/brdb/brdb.d.ts.map +1 -0
  14. package/dist/src/brdb/brz.d.ts +51 -0
  15. package/dist/src/brdb/brz.d.ts.map +1 -0
  16. package/dist/src/brdb/bytes.d.ts +56 -0
  17. package/dist/src/brdb/bytes.d.ts.map +1 -0
  18. package/dist/src/brdb/catalog.d.ts +5 -0
  19. package/dist/src/brdb/catalog.d.ts.map +1 -0
  20. package/dist/src/brdb/componentDb.d.ts +8 -0
  21. package/dist/src/brdb/componentDb.d.ts.map +1 -0
  22. package/dist/src/brdb/fs.d.ts +16 -0
  23. package/dist/src/brdb/fs.d.ts.map +1 -0
  24. package/dist/src/brdb/guid.d.ts +11 -0
  25. package/dist/src/brdb/guid.d.ts.map +1 -0
  26. package/dist/src/brdb/index.d.ts +21 -0
  27. package/dist/src/brdb/index.d.ts.map +1 -0
  28. package/dist/src/brdb/msgpack.d.ts +23 -0
  29. package/dist/src/brdb/msgpack.d.ts.map +1 -0
  30. package/dist/src/brdb/pending.d.ts +11 -0
  31. package/dist/src/brdb/pending.d.ts.map +1 -0
  32. package/dist/src/brdb/reader.d.ts +176 -0
  33. package/dist/src/brdb/reader.d.ts.map +1 -0
  34. package/dist/src/brdb/schema.d.ts +73 -0
  35. package/dist/src/brdb/schema.d.ts.map +1 -0
  36. package/dist/src/brdb/schemaText.d.ts +8 -0
  37. package/dist/src/brdb/schemaText.d.ts.map +1 -0
  38. package/dist/src/brdb/schemas.d.ts +4 -0
  39. package/dist/src/brdb/schemas.d.ts.map +1 -0
  40. package/dist/src/brdb/world.d.ts +80 -0
  41. package/dist/src/brdb/world.d.ts.map +1 -0
  42. package/dist/src/{constants.d.ts → brs/constants.d.ts} +1 -1
  43. package/dist/src/brs/constants.d.ts.map +1 -0
  44. package/dist/src/brs/read.d.ts.map +1 -0
  45. package/dist/src/brs/read.v1.d.ts.map +1 -0
  46. package/dist/src/brs/read.v10.d.ts.map +1 -0
  47. package/dist/src/brs/read.v14.d.ts.map +1 -0
  48. package/dist/src/brs/read.v2.d.ts.map +1 -0
  49. package/dist/src/brs/read.v3.d.ts.map +1 -0
  50. package/dist/src/brs/read.v4.d.ts.map +1 -0
  51. package/dist/src/brs/read.v8.d.ts.map +1 -0
  52. package/dist/src/brs/read.v9.d.ts.map +1 -0
  53. package/dist/src/{types.d.ts → brs/types.d.ts} +35 -35
  54. package/dist/src/brs/types.d.ts.map +1 -0
  55. package/dist/src/{utils.d.ts → brs/utils.d.ts} +4 -9
  56. package/dist/src/brs/utils.d.ts.map +1 -0
  57. package/dist/src/{write.d.ts → brs/write.d.ts} +1 -1
  58. package/dist/src/brs/write.d.ts.map +1 -0
  59. package/dist/src/index.d.ts +10 -7
  60. package/dist/src/index.d.ts.map +1 -1
  61. package/dist/src/uuid.d.ts +1 -1
  62. package/dist/src/uuid.d.ts.map +1 -1
  63. package/package.json +41 -17
  64. package/dist/src/constants.d.ts.map +0 -1
  65. package/dist/src/read.d.ts.map +0 -1
  66. package/dist/src/read.v1.d.ts.map +0 -1
  67. package/dist/src/read.v10.d.ts.map +0 -1
  68. package/dist/src/read.v14.d.ts.map +0 -1
  69. package/dist/src/read.v2.d.ts.map +0 -1
  70. package/dist/src/read.v3.d.ts.map +0 -1
  71. package/dist/src/read.v4.d.ts.map +0 -1
  72. package/dist/src/read.v8.d.ts.map +0 -1
  73. package/dist/src/read.v9.d.ts.map +0 -1
  74. package/dist/src/types.d.ts.map +0 -1
  75. package/dist/src/utils.d.ts.map +0 -1
  76. package/dist/src/write.d.ts.map +0 -1
  77. /package/dist/src/{read.d.ts → brs/read.d.ts} +0 -0
  78. /package/dist/src/{read.v1.d.ts → brs/read.v1.d.ts} +0 -0
  79. /package/dist/src/{read.v10.d.ts → brs/read.v10.d.ts} +0 -0
  80. /package/dist/src/{read.v14.d.ts → brs/read.v14.d.ts} +0 -0
  81. /package/dist/src/{read.v2.d.ts → brs/read.v2.d.ts} +0 -0
  82. /package/dist/src/{read.v3.d.ts → brs/read.v3.d.ts} +0 -0
  83. /package/dist/src/{read.v4.d.ts → brs/read.v4.d.ts} +0 -0
  84. /package/dist/src/{read.v8.d.ts → brs/read.v8.d.ts} +0 -0
  85. /package/dist/src/{read.v9.d.ts → brs/read.v9.d.ts} +0 -0
@@ -0,0 +1,73 @@
1
+ import { ByteReader, ByteWriter } from './bytes';
2
+ import { SchemaData } from './schemaText';
3
+ import { EmbeddedSchemaName } from './schemas';
4
+ export type PropDesc = {
5
+ kind: 'type' | 'array' | 'flatarray';
6
+ type: string;
7
+ } | {
8
+ kind: 'map';
9
+ key: string;
10
+ value: string;
11
+ };
12
+ /** Compact data form emitted by scripts/syncBrdbData.mjs:
13
+ * 'T' = plain type, ['T'] = array, ['T', null] = flat array,
14
+ * { K: 'V' } = map (single entry). */
15
+ export type SchemaSourceProp = string | readonly [string] | readonly [string, null] | Readonly<Record<string, string>>;
16
+ export interface SchemaSource {
17
+ enums: Readonly<Record<string, Readonly<Record<string, number>>>>;
18
+ variants: Readonly<Record<string, readonly string[]>>;
19
+ structs: Readonly<Record<string, Readonly<Record<string, SchemaSourceProp>>>>;
20
+ }
21
+ export type BrdbValue = number | boolean | string | null | BrdbValue[] | {
22
+ [field: string]: BrdbValue;
23
+ };
24
+ /** A decoded variant value: which member the tag selected, plus its payload.
25
+ * Kept tagged (rather than flattened like the reference reader) so that
26
+ * decode -> encode round-trips byte-identically. */
27
+ export interface BrdbVariant {
28
+ $variant: string;
29
+ value: BrdbValue;
30
+ }
31
+ export declare class BrdbSchema {
32
+ readonly enums: Map<string, Map<string, number>>;
33
+ readonly variants: Map<string, string[]>;
34
+ readonly structs: Map<string, Map<string, PropDesc>>;
35
+ constructor(enums: Map<string, Map<string, number>>, variants: Map<string, string[]>, structs: Map<string, Map<string, PropDesc>>);
36
+ static fromText(text: string): BrdbSchema;
37
+ /** Hydrate a schema from the generated data form (see SchemaSource). */
38
+ static fromData(data: SchemaSource): BrdbSchema;
39
+ static fromBinary(bytes: Uint8Array): BrdbSchema;
40
+ /** Extract the named structs plus every type they transitively reference
41
+ * (sub-structs, enums, variants, and variant member types) into a
42
+ * self-contained subset. Primitive/unknown names are skipped. Uses a LIFO
43
+ * worklist; the result ORDER matches the reference implementation, and
44
+ * that order determines the serialized schema's bytes. */
45
+ extractStructsTransitive(seeds: Iterable<string>): SchemaData;
46
+ /** Merge definitions into this schema. Existing names keep their position
47
+ * (and are replaced); new names append, matching the reference merge. */
48
+ merge(data: SchemaData): void;
49
+ /** The zero value of a type: numbers 0, bool false, str '', asset refs
50
+ * null, arrays empty, structs recursive, enums ordinal 0, variants tag 0
51
+ * with the first member's zero value. */
52
+ zeroValue(ty: string): BrdbValue;
53
+ /** Complete a partial struct value: present fields pass through, missing
54
+ * fields get their zero value. Unknown keys are an error. */
55
+ fillStruct(structName: string, partial: Readonly<Record<string, BrdbValue>>): Record<string, BrdbValue>;
56
+ topoStructOrder(): string[];
57
+ toBinary(): Uint8Array;
58
+ flatTypeSize(ty: string): number;
59
+ writeValue(w: ByteWriter, ty: string, value: BrdbValue): void;
60
+ private writeVariantPayload;
61
+ private writeLegacyWireVariant;
62
+ private writeProperty;
63
+ private writeFlat;
64
+ private static readonly MAX_DECODE_DEPTH;
65
+ readValue(r: ByteReader, ty: string, depth?: number): BrdbValue;
66
+ private readLegacyWireVariant;
67
+ private readProperty;
68
+ private readFlat;
69
+ encode(ty: string, value: BrdbValue): Uint8Array;
70
+ decode(bytes: Uint8Array, ty: string): BrdbValue;
71
+ }
72
+ export declare function embeddedSchema(name: EmbeddedSchemaName): BrdbSchema;
73
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/brdb/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { PropDesc } from './schema';
2
+ export interface SchemaData {
3
+ enums: Map<string, Map<string, number>>;
4
+ variants: Map<string, string[]>;
5
+ structs: Map<string, Map<string, PropDesc>>;
6
+ }
7
+ export declare function parseSchemaText(text: string): SchemaData;
8
+ //# sourceMappingURL=schemaText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaText.d.ts","sourceRoot":"","sources":["../../../src/brdb/schemaText.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAChC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;CAC7C;AAkBD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAmExD"}
@@ -0,0 +1,4 @@
1
+ import type { SchemaSource } from './schema';
2
+ export type EmbeddedSchemaName = 'BRSavedGlobalDataSoA' | 'BRSavedOwnerTableSoA' | 'BRSavedBrickChunkIndexSoA' | 'BRSavedBrickChunkSoA' | 'BRSavedWireChunkSoA' | 'BRSavedComponentChunkSoA' | 'BRSavedComponentChunkSoA_max' | 'BRSavedEntityChunkIndexSoA' | 'BRSavedEntityChunkSoA';
3
+ export declare const SCHEMAS: Record<EmbeddedSchemaName, SchemaSource>;
4
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/brdb/schemas.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,MAAM,kBAAkB,GAC1B,sBAAsB,GACtB,sBAAsB,GACtB,2BAA2B,GAC3B,sBAAsB,GACtB,qBAAqB,GACrB,0BAA0B,GAC1B,8BAA8B,GAC9B,4BAA4B,GAC5B,uBAAuB,CAAC;AAE5B,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,kBAAkB,EAAE,YAAY,CAivD5D,CAAC"}
@@ -0,0 +1,80 @@
1
+ import type { WriteSaveObject } from '../brs/types';
2
+ import { Compressor } from './brz';
3
+ import { PendingEntry } from './pending';
4
+ import { BrdbValue } from './schema';
5
+ export declare const CHUNK_SIZE = 2048;
6
+ export declare const CHUNK_HALF = 1024;
7
+ export interface BundleJson {
8
+ type: string;
9
+ iD: string;
10
+ name: string;
11
+ version: string;
12
+ tags: string[];
13
+ authors: string[];
14
+ createdAt: string;
15
+ updatedAt: string;
16
+ description: string;
17
+ dependencies: unknown[];
18
+ gameVersion: string;
19
+ }
20
+ export interface WriteBrzOptions {
21
+ /** zstd compressor for blobs; omitted -> all blobs stored raw (valid, and
22
+ * what the byte-parity gates compare against). */
23
+ compress?: Compressor;
24
+ /** Meta/World.json environment. save.map is NOT used. Default "Plate". */
25
+ environment?: string;
26
+ /** Meta/Bundle.json field overrides. */
27
+ bundle?: Partial<BundleJson>;
28
+ }
29
+ /** A brdb-native component on a brick. Legacy brs components
30
+ * (save.components / brick.components) are NOT converted. */
31
+ export interface BrdbComponentInput {
32
+ /** brdb component type name, e.g. 'Component_Internal_Seat' */
33
+ type: string;
34
+ /** fields of the component's data struct; omitted fields zero-fill */
35
+ data?: Record<string, BrdbValue>;
36
+ }
37
+ export interface BrdbWireEndpointInput {
38
+ /** index into save.bricks */
39
+ brick_index: number;
40
+ /** brdb component type name (must be used by a brick in this save) */
41
+ component_type: string;
42
+ /** wire port name, e.g. 'Output' */
43
+ port: string;
44
+ }
45
+ /** A wire between two component ports, using brdb-native names. Legacy
46
+ * save.wires (brs component names) are NOT converted. */
47
+ export interface BrdbWireInput {
48
+ source: BrdbWireEndpointInput;
49
+ target: BrdbWireEndpointInput;
50
+ }
51
+ /** brdb-native extras alongside the legacy save shape: bricks carry a
52
+ * modern `components` ARRAY of typed inputs (replacing the legacy .brs
53
+ * component map on that field, which is not converted) and the save
54
+ * carries `wires`. */
55
+ export interface BrdbBrickExtras {
56
+ components?: BrdbComponentInput[];
57
+ }
58
+ export interface BrdbSaveExtras {
59
+ wires?: BrdbWireInput[];
60
+ }
61
+ /** The legacy save shape plus the brdb-native extras. The brick-level
62
+ * legacy `components` map and the save-level legacy `wires` list are
63
+ * replaced by the modern forms. */
64
+ export type WriteBrzSave = Omit<WriteSaveObject, 'bricks' | 'wires'> & {
65
+ bricks: (Omit<WriteSaveObject['bricks'][number], 'components'> & BrdbBrickExtras)[];
66
+ } & BrdbSaveExtras;
67
+ /** What the world writers accept: the modern shape, or an unmodified
68
+ * legacy save (whose map-shaped `components` and legacy-named `wires`
69
+ * are ignored rather than converted). */
70
+ export type WriteBrzInput = WriteBrzSave | WriteSaveObject;
71
+ export declare function toRelative(position: readonly number[]): {
72
+ chunk: [number, number, number];
73
+ rel: [number, number, number];
74
+ };
75
+ export declare function saveToPendingFs(save: WriteBrzInput, options?: WriteBrzOptions): PendingEntry[];
76
+ /** Write a .brz world from a legacy .brs-shaped WriteSaveObject. A
77
+ * builder-style world API for authoring saves from scratch is planned;
78
+ * this entry point exists for converting existing saves. */
79
+ export declare function writeBrzLegacy(save: WriteBrzInput, options?: WriteBrzOptions): Uint8Array;
80
+ //# sourceMappingURL=world.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"world.d.ts","sourceRoot":"","sources":["../../../src/brdb/world.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAuB,UAAU,EAAqB,MAAM,OAAO,CAAC;AAK3E,OAAO,EAAgB,YAAY,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAc,SAAS,EAAkB,MAAM,UAAU,CAAC;AAGjE,eAAO,MAAM,UAAU,OAAO,CAAC;AAC/B,eAAO,MAAM,UAAU,OAAO,CAAC;AAE/B,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B;sDACkD;IAClD,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAC9B;AAED;6DAC6D;AAC7D,MAAM,WAAW,kBAAkB;IACjC,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,qBAAqB;IACpC,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;CACd;AAED;yDACyD;AACzD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,MAAM,EAAE,qBAAqB,CAAC;CAC/B;AAED;;;sBAGsB;AACtB,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;CACzB;AAED;;mCAEmC;AACnC,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG;IACrE,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,GAC5D,eAAe,CAAC,EAAE,CAAC;CACtB,GAAG,cAAc,CAAC;AAEnB;;yCAEyC;AACzC,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG,eAAe,CAAC;AAK3D,wBAAgB,UAAU,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG;IACvD,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B,CAYA;AAuTD,wBAAgB,eAAe,CAC7B,IAAI,EAAE,aAAa,EACnB,OAAO,GAAE,eAAoB,GAC5B,YAAY,EAAE,CA2XhB;AAED;;4DAE4D;AAC5D,wBAAgB,cAAc,CAC5B,IAAI,EAAE,aAAa,EACnB,OAAO,GAAE,eAAoB,GAC5B,UAAU,CAGZ"}
@@ -1,5 +1,5 @@
1
1
  import { Uuid } from './types';
2
- export declare const MAGIC: Uint8Array;
2
+ export declare const MAGIC: Uint8Array<ArrayBuffer>;
3
3
  export declare const LATEST_VERSION = 14;
4
4
  export declare const MAX_INT: number;
5
5
  export declare const DEFAULT_UUID: Uuid;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/brs/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,eAAO,MAAM,KAAK,yBAA+B,CAAC;AAClD,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,OAAO,QAAa,CAAC;AAClC,eAAO,MAAM,YAAY,EAAE,IAA6C,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../src/brs/read.ts"],"names":[],"mappings":"AASA,OAAO,EAAY,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIhE,MAAM,CAAC,OAAO,UAAU,OAAO,CAC7B,QAAQ,EAAE,UAAU,EACpB,OAAO,GAAE,WAAgB,GACxB,cAAc,CA2ChB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.v1.d.ts","sourceRoot":"","sources":["../../../src/brs/read.v1.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,EACL,WAAW,EAGZ,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,WAAgB,GACxB,KAAK,CAoFP"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.v10.d.ts","sourceRoot":"","sources":["../../../src/brs/read.v10.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,MAAM,EAEN,WAAW,EAIZ,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,UAAU,UAAU,CAChC,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,WAAgB,GACxB,MAAM,CAwKR"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.v14.d.ts","sourceRoot":"","sources":["../../../src/brs/read.v14.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,MAAM,EAEN,WAAW,EAKZ,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,UAAU,UAAU,CAChC,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,WAAgB,GACxB,MAAM,CAkNR"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.v2.d.ts","sourceRoot":"","sources":["../../../src/brs/read.v2.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,EACL,WAAW,EAGZ,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,WAAgB,GACxB,KAAK,CAuFP"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.v3.d.ts","sourceRoot":"","sources":["../../../src/brs/read.v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,EACL,WAAW,EAIZ,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,WAAgB,GACxB,KAAK,CA+FP"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.v4.d.ts","sourceRoot":"","sources":["../../../src/brs/read.v4.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,EACL,WAAW,EAGZ,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,WAAgB,GACxB,KAAK,CAiGP"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.v8.d.ts","sourceRoot":"","sources":["../../../src/brs/read.v8.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,KAAK,EACL,WAAW,EAIZ,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,WAAgB,GACxB,KAAK,CA2JP"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.v9.d.ts","sourceRoot":"","sources":["../../../src/brs/read.v9.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,KAAK,EAEL,WAAW,EAIZ,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,WAAgB,GACxB,KAAK,CAmKP"}
@@ -1,22 +1,22 @@
1
1
  export interface BRSBytes extends Uint8Array {
2
2
  brsOffset: number;
3
3
  }
4
- declare type Modify<T, R> = Omit<T, keyof R> & R;
5
- export declare type Bytes = Uint8Array | BRSBytes;
6
- export declare type Uuid = string;
7
- export declare type UnrealClass = string;
8
- export declare type UnrealObject = string;
9
- export declare type UnrealBoolean = boolean;
10
- export declare type UnrealFloat = number;
11
- export declare type UnrealInteger = number;
12
- export declare type UnrealInteger64 = number;
13
- export declare type UnrealColor = [number, number, number, number];
14
- export declare type UnrealByte = number;
15
- export declare type UnrealRotator = [number, number, number];
16
- export declare type Vector3d = Vector;
17
- export declare type IntVector = Vector;
18
- export declare type UnrealString = string;
19
- export declare type WireGraphVariant = {
4
+ type Modify<T, R> = Omit<T, keyof R> & R;
5
+ export type Bytes = Uint8Array | BRSBytes;
6
+ export type Uuid = string;
7
+ export type UnrealClass = string;
8
+ export type UnrealObject = string;
9
+ export type UnrealBoolean = boolean;
10
+ export type UnrealFloat = number;
11
+ export type UnrealInteger = number;
12
+ export type UnrealInteger64 = number;
13
+ export type UnrealColor = [number, number, number, number];
14
+ export type UnrealByte = number;
15
+ export type UnrealRotator = [number, number, number];
16
+ export type Vector3d = Vector;
17
+ export type IntVector = Vector;
18
+ export type UnrealString = string;
19
+ export type WireGraphVariant = {
20
20
  number: number;
21
21
  } | {
22
22
  integer: number;
@@ -27,9 +27,9 @@ export declare type WireGraphVariant = {
27
27
  } | {
28
28
  object: true;
29
29
  };
30
- export declare type BRInventoryEntryPlan = string;
31
- export declare type UnrealType = UnrealClass | UnrealObject | UnrealBoolean | UnrealFloat | UnrealColor | UnrealByte | UnrealRotator | UnrealString | WireGraphVariant | UnrealInteger64 | Vector3d | IntVector | BRInventoryEntryPlan;
32
- declare type UnrealTypeFromString<T> = T extends 'Class' ? UnrealClass : T extends 'Object' ? UnrealObject : T extends 'Boolean' ? UnrealBoolean : T extends 'Float' ? UnrealFloat : T extends 'Color' ? UnrealColor : T extends 'Byte' ? UnrealByte : T extends 'Rotator' ? UnrealRotator : T extends 'Rotator3d' ? UnrealRotator : T extends 'Vector3d' ? Vector3d : T extends 'IntVector' ? IntVector : T extends 'String' ? UnrealString : T extends 'BRInventoryEntryPlan' ? BRInventoryEntryPlan : T extends 'WireGraphVariant' ? WireGraphVariant : T extends 'WireGraphPrimMathVariant' ? WireGraphVariant : T extends 'Integer' ? UnrealInteger : T extends 'Integer64' ? UnrealInteger64 : UnrealType;
30
+ export type BRInventoryEntryPlan = string;
31
+ export type UnrealType = UnrealClass | UnrealObject | UnrealBoolean | UnrealFloat | UnrealColor | UnrealByte | UnrealRotator | UnrealString | WireGraphVariant | UnrealInteger64 | Vector3d | IntVector | BRInventoryEntryPlan;
32
+ type UnrealTypeFromString<T> = T extends 'Class' ? UnrealClass : T extends 'Object' ? UnrealObject : T extends 'Boolean' ? UnrealBoolean : T extends 'Float' ? UnrealFloat : T extends 'Color' ? UnrealColor : T extends 'Byte' ? UnrealByte : T extends 'Rotator' ? UnrealRotator : T extends 'Rotator3d' ? UnrealRotator : T extends 'Vector3d' ? Vector3d : T extends 'IntVector' ? IntVector : T extends 'String' ? UnrealString : T extends 'BRInventoryEntryPlan' ? BRInventoryEntryPlan : T extends 'WireGraphVariant' ? WireGraphVariant : T extends 'WireGraphPrimMathVariant' ? WireGraphVariant : T extends 'Integer' ? UnrealInteger : T extends 'Integer64' ? UnrealInteger64 : UnrealType;
33
33
  export interface User {
34
34
  id: Uuid;
35
35
  name: string;
@@ -54,7 +54,7 @@ export declare enum Rotation {
54
54
  Deg180 = 2,
55
55
  Deg270 = 3
56
56
  }
57
- export declare type ColorRgb = [number, number, number];
57
+ export type ColorRgb = [number, number, number];
58
58
  export interface Collision {
59
59
  player: boolean;
60
60
  weapon: boolean;
@@ -74,7 +74,7 @@ export interface UnknownComponents {
74
74
  };
75
75
  };
76
76
  }
77
- export declare type KnownComponents = {
77
+ export type KnownComponents = {
78
78
  BCD_SpotLight: {
79
79
  version: 1;
80
80
  brick_indices?: number[];
@@ -867,20 +867,20 @@ export declare type KnownComponents = {
867
867
  };
868
868
  export interface DefinedComponents extends UnknownComponents, Partial<KnownComponents> {
869
869
  }
870
- export declare type Components<C extends DefinedComponents> = {
870
+ export type Components<C extends DefinedComponents> = {
871
871
  [T in keyof C]: {
872
872
  [V in keyof C[T]['properties']]: UnrealTypeFromString<C[T]['properties'][V]>;
873
873
  };
874
874
  } & {
875
875
  [component_name: string]: AppliedComponent;
876
876
  };
877
- export declare type Vector = [number, number, number];
878
- export declare type WirePort = {
877
+ export type Vector = [number, number, number];
878
+ export type WirePort = {
879
879
  brick_index: number;
880
880
  component: string;
881
881
  port: string;
882
882
  };
883
- export declare type Wire = {
883
+ export type Wire = {
884
884
  source: WirePort;
885
885
  target: WirePort;
886
886
  };
@@ -903,12 +903,12 @@ export interface BrickV3 extends BrickV2 {
903
903
  export interface BrickV8 extends BrickV3 {
904
904
  components: Components<DefinedComponents>;
905
905
  }
906
- export declare type BrickV9 = Modify<BrickV8, {
906
+ export type BrickV9 = Modify<BrickV8, {
907
907
  physical_index: number;
908
908
  material_intensity: number;
909
909
  color: ColorRgb | number;
910
910
  }>;
911
- export declare type BrickV10 = Modify<BrickV9, {
911
+ export type BrickV10 = Modify<BrickV9, {
912
912
  collision: Collision;
913
913
  }>;
914
914
  export interface BrsV1 {
@@ -922,21 +922,21 @@ export interface BrsV1 {
922
922
  colors: UnrealColor[];
923
923
  bricks: BrickV1[];
924
924
  }
925
- export declare type BrsV2 = Modify<BrsV1, {
925
+ export type BrsV2 = Modify<BrsV1, {
926
926
  version: 2;
927
927
  materials: string[];
928
928
  bricks: BrickV2[];
929
929
  }>;
930
- export declare type BrsV3 = Modify<BrsV2, {
930
+ export type BrsV3 = Modify<BrsV2, {
931
931
  version: 3;
932
932
  brick_owners: User[];
933
933
  bricks: BrickV3[];
934
934
  }>;
935
- export declare type BrsV4 = Modify<BrsV3, {
935
+ export type BrsV4 = Modify<BrsV3, {
936
936
  version: 4;
937
937
  save_time: Uint8Array;
938
938
  }>;
939
- export declare type BrsV8 = Modify<BrsV4, {
939
+ export type BrsV8 = Modify<BrsV4, {
940
940
  version: 8;
941
941
  host: User;
942
942
  brick_owners: LegacyOwner[];
@@ -945,20 +945,20 @@ export declare type BrsV8 = Modify<BrsV4, {
945
945
  bricks: BrickV8[];
946
946
  components: DefinedComponents;
947
947
  }>;
948
- export declare type BrsV9 = Modify<BrsV8, {
948
+ export type BrsV9 = Modify<BrsV8, {
949
949
  version: 9;
950
950
  physical_materials: string[];
951
951
  bricks: BrickV9[];
952
952
  }>;
953
- export declare type BrsV10 = Modify<BrsV9, {
953
+ export type BrsV10 = Modify<BrsV9, {
954
954
  version: 10;
955
955
  bricks: BrickV10[];
956
956
  }>;
957
- export declare type BrsV14 = Modify<BrsV10, {
957
+ export type BrsV14 = Modify<BrsV10, {
958
958
  version: 14;
959
959
  wires: Wire[];
960
960
  }>;
961
- export declare type ReadSaveObject = BrsV1 | BrsV2 | BrsV3 | BrsV4 | BrsV8 | BrsV9 | BrsV10 | BrsV14;
961
+ export type ReadSaveObject = BrsV1 | BrsV2 | BrsV3 | BrsV4 | BrsV8 | BrsV9 | BrsV10 | BrsV14;
962
962
  export interface Brick {
963
963
  asset_name_index?: number;
964
964
  size: Vector;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/brs/types.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,5 @@
1
1
  import { BRSBytes, Bytes, UnrealFloat, UnrealType, Uuid, WireGraphVariant } from './types';
2
- export declare const bgra: ([b, g, r, a]: number[]) => [
3
- number,
4
- number,
5
- number,
6
- number
7
- ];
2
+ export declare const bgra: ([b, g, r, a]: number[]) => [number, number, number, number];
8
3
  export declare function isEqual<T>(arrA: Array<T>, arrB: Array<T>): boolean;
9
4
  export declare function subarray(data: Bytes, len: number, isCopy?: boolean): Uint8Array;
10
5
  export declare function chunk(arr: Bytes, size: number): BRSBytes[];
@@ -18,10 +13,10 @@ declare function write_compressed(...args: Uint8Array[]): Uint8Array;
18
13
  declare function read_string(data: Bytes): string;
19
14
  declare function write_string(str: string): Uint8Array;
20
15
  declare function read_uuid(data: Bytes): string;
21
- declare function write_uuid(uuid: Uuid): Uint8Array;
16
+ declare function write_uuid(uuid: Uuid): Uint8Array<ArrayBufferLike>;
22
17
  declare function read_array<T>(data: Bytes, fn: (_: Bytes) => T): T[];
23
18
  declare function read_each(data: Bytes, fn: (_: Bytes) => void): void;
24
- declare function write_array<T>(arr: T[], fn: (_: T) => Uint8Array): Uint8Array;
19
+ declare function write_array<T>(arr: T[], fn: (_: T) => Uint8Array): Uint8Array<ArrayBufferLike>;
25
20
  export declare class BitReader {
26
21
  buffer: Uint8Array;
27
22
  pos: number;
@@ -57,7 +52,7 @@ export declare class BitWriter {
57
52
  uint_packed(value: number): void;
58
53
  int_packed(value: number): void;
59
54
  finish(): Uint8Array;
60
- finishSection(): Uint8Array;
55
+ finishSection(): Uint8Array<ArrayBufferLike>;
61
56
  string(str: string): void;
62
57
  float(num: UnrealFloat): void;
63
58
  integer(num: number): void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/brs/utils.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import { DefinedComponents, WriteOptions, WriteSaveObject } from './types';
2
2
  export declare const DEFAULT_COMPONENTS: DefinedComponents;
3
- export default function writeBrs(save: WriteSaveObject, options?: WriteOptions): Uint8Array;
3
+ export default function writeBrs(save: WriteSaveObject, options?: WriteOptions): Uint8Array<ArrayBufferLike>;
4
4
  //# sourceMappingURL=write.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../../src/brs/write.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,iBAAiB,EAEjB,YAAY,EACZ,eAAe,EAChB,MAAM,SAAS,CAAC;AAKjB,eAAO,MAAM,kBAAkB,EAAE,iBA+ThC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,IAAI,EAAE,eAAe,EACrB,OAAO,GAAE,YAAiB,+BAwS3B"}
@@ -1,16 +1,19 @@
1
- import read from './read';
2
- import write from './write';
3
- import * as utils from './utils';
4
- import * as constants from './constants';
5
- import * as types from './types';
6
- export * from './types';
1
+ import read from './brs/read';
2
+ import write from './brs/write';
3
+ import * as utils from './brs/utils';
4
+ import * as constants from './brs/constants';
5
+ import * as types from './brs/types';
6
+ import * as brdb from './brdb';
7
+ export * from './brs/types';
7
8
  declare const brs: {
8
9
  read: typeof read;
9
10
  write: typeof write;
10
11
  utils: typeof utils;
11
12
  constants: typeof constants;
12
13
  types: typeof types;
14
+ brdb: typeof brdb;
13
15
  };
14
- export { read, write, utils, constants, types };
16
+ export { read, write, utils, constants, types, brdb };
17
+ export { Brdb, WorldReader, writeBrzLegacy } from './brdb';
15
18
  export default brs;
16
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,cAAc,SAAS,CAAC;AAGxB,QAAA,MAAM,GAAG;;;;;;CAA2C,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAChD,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,cAAc,aAAa,CAAC;AAG5B,QAAA,MAAM,GAAG;;;;;;;CAAiD,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC3D,eAAe,GAAG,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Uuid } from './types';
1
+ import { Uuid } from './brs/types';
2
2
  export declare function uuidStringify(arr: number[]): Uuid;
3
3
  export declare function uuidParse(uuid: Uuid): Uint8Array;
4
4
  //# sourceMappingURL=uuid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../../src/uuid.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAkB/B,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAuBjD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAgChD"}
1
+ {"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../../src/uuid.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAkBnC,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAuBjD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAgChD"}