mcbe-leveldb 1.6.0-jsonly → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/Changelog.md CHANGED
@@ -1,3 +1,9 @@
1
+ # v1.7.0
2
+
3
+ ## Additions
4
+
5
+ - Added a custom serializer and parser for the `Digest` content type.
6
+
1
7
  # v1.6.0
2
8
 
3
9
  ## Additions
@@ -95,7 +101,7 @@
95
101
  - Added the `rawFileExtension` property to the following content types:
96
102
  - `StructureTemplate`
97
103
  - `LevelDat`
98
- - Added a custom serializer and parser for the `LevelDat` content types as it was actually not just pure NBT, as there was 8 bytes of important extra data before the NBT data.
104
+ - Added a custom serializer and parser for the `LevelDat` content type as it was actually not just pure NBT, as there was 8 bytes of important extra data before the NBT data.
99
105
  - Added/Updated documentation for several content types.
100
106
  - Added the `DynamicProperties` NBT schema.
101
107
 
package/DBUtils.js CHANGED
@@ -4,14 +4,14 @@ import { JSONB } from "./utils/JSONB.js";
4
4
  export function getKeysOfType(dbOrDBKeys, type) {
5
5
  if (Array.isArray(dbOrDBKeys))
6
6
  return dbOrDBKeys.filter((key) => getContentTypeFromDBKey(key) === type);
7
- return new Promise(async (resolve) => {
7
+ return new Promise((resolve) => void (async () => {
8
8
  const foundKeys = [];
9
9
  for await (const [rawKey, _value] of dbOrDBKeys.getIterator({ keys: true, keyAsBuffer: true, values: false })) {
10
10
  if (getContentTypeFromDBKey(rawKey) === type)
11
11
  foundKeys.push(rawKey);
12
12
  }
13
13
  resolve(foundKeys);
14
- });
14
+ })());
15
15
  }
16
16
  export function getKeysOfTypes(dbOrDBKeys, types) {
17
17
  const results = {};
@@ -26,14 +26,14 @@ export function getKeysOfTypes(dbOrDBKeys, types) {
26
26
  }
27
27
  return results;
28
28
  }
29
- return new Promise(async (resolve) => {
29
+ return new Promise((resolve) => void (async () => {
30
30
  for await (const [rawKey, _value] of dbOrDBKeys.getIterator({ keys: true, keyAsBuffer: true, values: false })) {
31
31
  const contentType = getContentTypeFromDBKey(rawKey);
32
32
  if (types.includes(contentType))
33
33
  results[contentType].push(rawKey);
34
34
  }
35
35
  resolve(results);
36
- });
36
+ })());
37
37
  }
38
38
  /**
39
39
  * Gets a player's name from their UUID.
package/DBUtils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"DBUtils.js","sourceRoot":"","sources":["DBUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DBUtils.js","sourceRoot":"","sources":["DBUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAA2B,MAAM,iBAAiB,CAAC;AACnF,OAAO,GAAG,MAAM,gBAAgB,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AA0BzC,MAAM,UAAU,aAAa,CAA+B,UAA8B,EAAE,IAAO;IAC/F,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,GAAW,EAAW,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC;IACzH,OAAO,IAAI,OAAO,CACd,CAAC,OAA+C,EAAQ,EAAE,CACtD,KAAK,CAAC,KAAK,IAAmB,EAAE;QAC5B,MAAM,SAAS,GAA0B,EAAE,CAAC;QAC5C,IAAI,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC5G,IAAI,uBAAuB,CAAC,MAAM,CAAC,KAAK,IAAI;gBAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC,CAAC,EAAE,CACX,CAAC;AACN,CAAC;AA2BD,MAAM,UAAU,cAAc,CAC1B,UAA8B,EAC9B,KAAQ;IAER,MAAM,OAAO,GAAG,EAA2C,CAAC;IAC5D,KAAK,CAAC,OAAO,CAAC,CAAC,WAAsB,EAAQ,EAAE;QAC3C,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IACH,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAuB,uBAAuB,CAAC,GAAG,CAAC,CAAC;YACrE,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAAE,OAAO,CAAC,WAAwB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,OAAO,IAAI,OAAO,CACd,CAAC,OAAuE,EAAQ,EAAE,CAC9E,KAAK,CAAC,KAAK,IAAmB,EAAE;QAC5B,IAAI,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC5G,MAAM,WAAW,GAAuB,uBAAuB,CAAC,MAAM,CAAC,CAAC;YACxE,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAAE,OAAO,CAAC,WAAwB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC,CAAC,EAAE,CACX,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAAW,EAAE,IAAqB;IAC1E,MAAM,iBAAiB,GAAmB,MAAM,EAAE;SAC7C,GAAG,CAAC,mBAAmB,CAAC;SACxB,IAAI,CAAC,CAAC,IAAmB,EAA2B,EAAE,CACnD,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAsE,EAAW,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CACxI,CAAC;IACN,IAAI,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAC;IACpC,OAAO,yBAAyB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,iBAA0B,EAAE,IAAqB;IACvF,MAAM,UAAU,GAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC3C,KAAK,MAAM,MAAM,IAAI,sCAAsC,EAAE,CAAC;QAC1D,MAAM,IAAI,GAAkB,MAAM,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;QAClE,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAgBD;;;;GAIG;AACH,MAAM,sCAAsC,GAA4C;IACpF,SAAS,6BAA6B,CAAC,iBAA0B,EAAE,IAAY;QAC3E,MAAM,UAAU,GAAa;YACzB,+BAA+B;YAC/B,sCAAsC;YACtC,kBAAkB;YAClB,sCAAsC;SACzC,CAAC;QACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACjC,MAAM,sBAAsB,GACxB,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9G,IAAI,CAAC,sBAAsB;gBAAE,SAAS;YACtC,KAAK,MAAM,GAAG,IAAI,sBAAsB,EAAE,CAAC;gBACvC,IAAI,GAAG,KAAK,UAAU,IAAI,EAAE;oBAAE,SAAS;gBACvC,MAAM,oBAAoB,GAAqE,sBAAsB,CAAC,GAAG,CAAS,CAAC;gBACnI,IAAI,oBAAoB,CAAC,IAAI,KAAK,QAAQ;oBAAE,SAAS;gBACrD,IAAI,CAAC;oBACD,MAAM,IAAI,GAAQ,KAAK,CAAC,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;oBAC1D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;wBAAE,OAAO,IAAI,CAAC,IAAI,CAAC;gBACrG,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACT,SAAS;gBACb,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAC"}
package/DBUtils.ts ADDED
@@ -0,0 +1,184 @@
1
+ import type { LevelDB } from "@8crafter/leveldb-zlib";
2
+ import { getContentTypeFromDBKey, type DBEntryContentType } from "./LevelUtils.ts";
3
+ import NBT from "prismarine-nbt";
4
+ import { JSONB } from "./utils/JSONB.ts";
5
+
6
+ // TO-DO: Make an abstract class version of the LevelDB class to use as the type of the db parameter.
7
+
8
+ /**
9
+ * Gets the keys from the LevelDB with a specific content type.
10
+ *
11
+ * @template T The content type to look for.
12
+ * @param db The LevelDB. Should match the type of the {@link LevelDB} class from the {@link https://www.npmjs.com/package/@8crafter/leveldb-zlib | @8crafter/leveldb-zlib} package. It does not have to be the one from that package, as long as the types match.
13
+ * @param type The {@link DBEntryContentType | content type} to look for.
14
+ * @returns The keys from the LevelDB with the specified content type, the keys are in Buffer format, this is because some keys contain binary data like chunk indices.
15
+ */
16
+ export async function getKeysOfType<T extends DBEntryContentType>(db: LevelDB, type: T): Promise<Buffer<ArrayBuffer>[]>;
17
+ /**
18
+ * Gets the keys from the list of LevelDB keys with a specific content type.
19
+ *
20
+ * @template T The content type to look for.
21
+ * @template TArrayBuffer The type of the buffers.
22
+ * @param dbKeys The LevelDB keys. Should be an array of Buffers.
23
+ * @param type The {@link DBEntryContentType | content type} to look for.
24
+ * @returns The keys from the provided LevelDB keys array with the specified content type, the keys are in Buffer format, this is because some keys contain binary data like chunk indices.
25
+ */
26
+ export function getKeysOfType<T extends DBEntryContentType, TArrayBuffer extends ArrayBufferLike = ArrayBufferLike>(
27
+ dbKeys: Buffer<TArrayBuffer>[],
28
+ type: T
29
+ ): Buffer<TArrayBuffer>[];
30
+ export function getKeysOfType<T extends DBEntryContentType>(dbOrDBKeys: LevelDB | Buffer[], type: T): Promise<Buffer<ArrayBuffer>[]> | Buffer[] {
31
+ if (Array.isArray(dbOrDBKeys)) return dbOrDBKeys.filter((key: Buffer): boolean => getContentTypeFromDBKey(key) === type);
32
+ return new Promise(
33
+ (resolve: (value: Buffer<ArrayBuffer>[]) => void): void =>
34
+ void (async (): Promise<void> => {
35
+ const foundKeys: Buffer<ArrayBuffer>[] = [];
36
+ for await (const [rawKey, _value] of dbOrDBKeys.getIterator({ keys: true, keyAsBuffer: true, values: false })) {
37
+ if (getContentTypeFromDBKey(rawKey) === type) foundKeys.push(rawKey);
38
+ }
39
+ resolve(foundKeys);
40
+ })()
41
+ );
42
+ }
43
+
44
+ /**
45
+ * Gets the keys from the LevelDB with one of the specified content types.
46
+ *
47
+ * @template T The content types to look for.
48
+ * @param db The LevelDB. Should match the type of the {@link LevelDB} class from the {@link https://www.npmjs.com/package/@8crafter/leveldb-zlib | @8crafter/leveldb-zlib} package. It does not have to be the one from that package, as long as the types match.
49
+ * @param types The {@link DBEntryContentType | content types} to look for.
50
+ * @returns An object mapping each of the specified content types to the keys from the LevelDB with that content type, the keys are in Buffer format, this is because some keys contain binary data like chunk indices.
51
+ */
52
+ export async function getKeysOfTypes<T extends DBEntryContentType[] | readonly DBEntryContentType[]>(
53
+ db: LevelDB,
54
+ types: T
55
+ ): Promise<{ [key in T[number]]: Buffer<ArrayBuffer>[] }>;
56
+ /**
57
+ * Gets the keys from the list of LevelDB keys with one of the specified content types.
58
+ *
59
+ * @template T The content types to look for.
60
+ * @template TArrayBuffer The type of the buffers.
61
+ * @param dbKeys The LevelDB keys. Should be an array of Buffers.
62
+ * @param types The {@link DBEntryContentType | content types} to look for.
63
+ * @returns An object mapping each of the specified content types to the keys from the provided LevelDB keys array with that content type, the keys are in Buffer format, this is because some keys contain binary data like chunk indices.
64
+ */
65
+ export function getKeysOfTypes<T extends DBEntryContentType[] | readonly DBEntryContentType[], TArrayBuffer extends ArrayBufferLike>(
66
+ dbKeys: Buffer<TArrayBuffer>[],
67
+ types: T
68
+ ): { [key in T[number]]: Buffer<TArrayBuffer>[] };
69
+ export function getKeysOfTypes<T extends DBEntryContentType[] | readonly DBEntryContentType[]>(
70
+ dbOrDBKeys: LevelDB | Buffer[],
71
+ types: T
72
+ ): Promise<{ [key in T[number]]: Buffer<ArrayBuffer>[] }> | { [key in T[number]]: Buffer[] } {
73
+ const results = {} as { [key in T[number]]: Buffer<any>[] };
74
+ types.forEach((contentType: T[number]): void => {
75
+ results[contentType] = [];
76
+ });
77
+ if (Array.isArray(dbOrDBKeys)) {
78
+ for (const key of dbOrDBKeys) {
79
+ const contentType: DBEntryContentType = getContentTypeFromDBKey(key);
80
+ if (types.includes(contentType)) results[contentType as T[number]].push(key);
81
+ }
82
+ return results;
83
+ }
84
+ return new Promise(
85
+ (resolve: (value: { [key in T[number]]: Buffer<ArrayBuffer>[] }) => void): void =>
86
+ void (async (): Promise<void> => {
87
+ for await (const [rawKey, _value] of dbOrDBKeys.getIterator({ keys: true, keyAsBuffer: true, values: false })) {
88
+ const contentType: DBEntryContentType = getContentTypeFromDBKey(rawKey);
89
+ if (types.includes(contentType)) results[contentType as T[number]].push(rawKey);
90
+ }
91
+ resolve(results);
92
+ })()
93
+ );
94
+ }
95
+
96
+ /**
97
+ * Gets a player's name from their UUID.
98
+ *
99
+ * Only works if the player's name was stored in an add-on's dynamic properties with their ID linked to it, and it only works for a hardcoded list of add-ons,
100
+ * if you have your own add-on that you would like this to be able to read the player's names from, {@link https://www.8crafter.com/main/contact | contact 8Crafter},
101
+ * or make a pull request.
102
+ *
103
+ * @param db The LevelDB. Should match the type of the {@link LevelDB} class from the {@link https://www.npmjs.com/package/@8crafter/leveldb-zlib | @8crafter/leveldb-zlib} package. It does not have to be the one from that package, as long as the types match.
104
+ * @param uuid The UUID of the play to get the name of.
105
+ * @returns The name of the player, or `null` if the player's name cannot be found or the world has no dynamic properties.
106
+ *
107
+ * @throws {any} If there was an error reading the DynamicProperties from the DB.
108
+ */
109
+ export async function getPlayerNameFromUUID(db: LevelDB, uuid: string | bigint): Promise<string | null> {
110
+ const dynamicProperties: NBT.NBT | null = await db
111
+ .get("DynamicProperties")
112
+ .then((data: Buffer | null): Promise<NBT.NBT> | null =>
113
+ data ? NBT.parse(data!).then((data: { parsed: NBT.NBT; type: NBT.NBTFormat; metadata: NBT.Metadata }): NBT.NBT => data.parsed) : null
114
+ );
115
+ if (!dynamicProperties) return null;
116
+ return getPlayerNameFromUUIDSync(dynamicProperties, uuid);
117
+ }
118
+
119
+ /**
120
+ * Gets a player's name from their UUID using the provided dynamic properties data.
121
+ *
122
+ * Only works if the player's name was stored in an add-on's dynamic properties with their ID linked to it, and it only works for a hardcoded list of add-ons,
123
+ * if you have your own add-on that you would like this to be able to read the player's names from, {@link https://www.8crafter.com/main/contact | contact 8Crafter},
124
+ * or make a pull request.
125
+ *
126
+ * @param dynamicProperties The dynamic properties data, should be the data from the `DynamicProperties` LevelDB key.
127
+ * @param uuid The UUID of the play to get the name of.
128
+ * @returns The name of the player, or `null` if the player's name cannot be found .
129
+ */
130
+ export function getPlayerNameFromUUIDSync(dynamicProperties: NBT.NBT, uuid: string | bigint): string | null {
131
+ const UUIDString: string = uuid.toString();
132
+ for (const parser of playerUUIDToNameDynamicPropertyParsers) {
133
+ const name: string | null = parser(dynamicProperties, UUIDString);
134
+ if (name !== null) return name;
135
+ }
136
+ return null;
137
+ }
138
+
139
+ /**
140
+ * A function that can be used to get a player's name from their UUID from the dynamic properties.
141
+ */
142
+ interface PlayerUUIDToNameDynamicPropertyParser {
143
+ /**
144
+ * A function that can be used to get a player's name from their UUID from the dynamic properties.
145
+ *
146
+ * @param dynamicProperties The dynamic properties data, should be the data from the `DynamicProperties` LevelDB key.
147
+ * @param uuid The UUID of the player to get the name of.
148
+ * @returns The name of the player, or `null` if the player's name cannot be found.
149
+ */
150
+ (dynamicProperties: NBT.NBT, uuid: string): string | null;
151
+ }
152
+
153
+ /**
154
+ * The list of functions that can be used to get a player's name from their UUID from the dynamic properties.
155
+ *
156
+ * These will be called in order until one of them returns a non-null value.
157
+ */
158
+ const playerUUIDToNameDynamicPropertyParsers: PlayerUUIDToNameDynamicPropertyParser[] = [
159
+ function parse8CraftersServerUtilities(dynamicProperties: NBT.NBT, uuid: string): string | null {
160
+ const addOnUUIDs: string[] = [
161
+ // Internal development version
162
+ "53170125-3e79-4659-9bba-e49eb90b6ded",
163
+ // Release version
164
+ "53170125-3e79-4659-9bba-e49eb90b6dea",
165
+ ];
166
+ for (const addOnUUID of addOnUUIDs) {
167
+ const addonDynamicProperties: NBT.Compound["value"] | null =
168
+ dynamicProperties.value[addOnUUID]?.type === "compound" ? dynamicProperties.value[addOnUUID].value : null;
169
+ if (!addonDynamicProperties) continue;
170
+ for (const key in addonDynamicProperties) {
171
+ if (key !== `player:${uuid}`) continue;
172
+ const dynamicPropertyValue: NBT.Byte | NBT.Double | NBT.String | NBT.List<NBT.TagType.Float> = addonDynamicProperties[key]! as any;
173
+ if (dynamicPropertyValue.type !== "string") continue;
174
+ try {
175
+ const data: any = JSONB.parse(dynamicPropertyValue.value);
176
+ if (typeof data === "object" && data !== null && typeof data.name === "string") return data.name;
177
+ } catch (e) {
178
+ continue;
179
+ }
180
+ }
181
+ }
182
+ return null;
183
+ },
184
+ ];
package/LevelUtils.d.ts CHANGED
@@ -585,14 +585,69 @@ export declare const entryContentTypeToFormatMap: {
585
585
  readonly type: "NBT";
586
586
  };
587
587
  /**
588
- * @todo Figure out how to parse this.
589
- * @todo Add a description for this.
588
+ * A list of entity IDs in a chunk.
589
+ *
590
+ * These IDs are the ones used in the entities' LevelDB keys.
591
+ *
592
+ * The IDs are 32-bit signed integers.
590
593
  */
591
594
  readonly Digest: {
592
595
  /**
593
596
  * The format type of the data.
594
597
  */
595
- readonly type: "unknown";
598
+ readonly type: "custom";
599
+ /**
600
+ * The format type that results from the {@link entryContentTypeToFormatMap.Entity.parse | parse} method.
601
+ */
602
+ readonly resultType: "JSONNBT";
603
+ /**
604
+ * The function to parse the data.
605
+ *
606
+ * The {@link data} parameter should be the buffer read directly from the file or LevelDB entry.
607
+ *
608
+ * @param data The data to parse, as a buffer.
609
+ * @returns A promise that resolves with the parsed data.
610
+ *
611
+ * @throws {any} If an error occurs while parsing the data.
612
+ */
613
+ readonly parse: (data: Buffer) => Promise<{
614
+ type: "compound";
615
+ value: {
616
+ entityIds: {
617
+ type: "list";
618
+ value: {
619
+ type: "list";
620
+ value: {
621
+ type: "int";
622
+ value: [id1: number, id2: number];
623
+ }[];
624
+ };
625
+ };
626
+ };
627
+ }>;
628
+ /**
629
+ * The function to serialize the data.
630
+ *
631
+ * This result of this can be written directly to the file or LevelDB entry.
632
+ *
633
+ * @param data The data to serialize.
634
+ * @returns The serialized data, as a buffer.
635
+ */
636
+ readonly serialize: (data: {
637
+ type: "compound";
638
+ value: {
639
+ entityIds: {
640
+ type: "list";
641
+ value: {
642
+ type: "list";
643
+ value: {
644
+ type: "int";
645
+ value: [id1: number, id2: number];
646
+ }[];
647
+ };
648
+ };
649
+ };
650
+ }) => Buffer<ArrayBuffer>;
596
651
  };
597
652
  /**
598
653
  * The data for a map.
package/LevelUtils.js CHANGED
@@ -428,8 +428,8 @@ export const entryContentTypeToFormatMap = {
428
428
  value: result.biomes.map((subchunk) => ({
429
429
  values: {
430
430
  type: "list",
431
- value: subchunk.values
432
- ? {
431
+ value: subchunk.values ?
432
+ {
433
433
  type: "int",
434
434
  value: subchunk.values,
435
435
  }
@@ -622,8 +622,8 @@ export const entryContentTypeToFormatMap = {
622
622
  version: NBT.byte(version),
623
623
  layerCount: NBT.byte(numStorageBlocks),
624
624
  layers: { type: "list", value: NBT.comp(layers) },
625
- ...(version >= 0x09
626
- ? {
625
+ ...(version >= 0x09 ?
626
+ {
627
627
  subChunkIndex: NBT.byte(subChunkIndex),
628
628
  }
629
629
  : {}),
@@ -1078,14 +1078,66 @@ export const entryContentTypeToFormatMap = {
1078
1078
  type: "NBT",
1079
1079
  },
1080
1080
  /**
1081
- * @todo Figure out how to parse this.
1082
- * @todo Add a description for this.
1081
+ * A list of entity IDs in a chunk.
1082
+ *
1083
+ * These IDs are the ones used in the entities' LevelDB keys.
1084
+ *
1085
+ * The IDs are 32-bit signed integers.
1083
1086
  */
1084
1087
  Digest: {
1085
1088
  /**
1086
1089
  * The format type of the data.
1087
1090
  */
1088
- type: "unknown",
1091
+ type: "custom",
1092
+ /**
1093
+ * The format type that results from the {@link entryContentTypeToFormatMap.Entity.parse | parse} method.
1094
+ */
1095
+ resultType: "JSONNBT",
1096
+ /**
1097
+ * The function to parse the data.
1098
+ *
1099
+ * The {@link data} parameter should be the buffer read directly from the file or LevelDB entry.
1100
+ *
1101
+ * @param data The data to parse, as a buffer.
1102
+ * @returns A promise that resolves with the parsed data.
1103
+ *
1104
+ * @throws {any} If an error occurs while parsing the data.
1105
+ */
1106
+ async parse(data) {
1107
+ const entityIds = [];
1108
+ for (let i = 0; i < data.length; i += 8) {
1109
+ entityIds.push({ type: "int", value: [data.readInt32LE(i), data.readInt32LE(i + 4)] });
1110
+ }
1111
+ return {
1112
+ type: "compound",
1113
+ value: {
1114
+ entityIds: {
1115
+ type: "list",
1116
+ value: {
1117
+ type: "list",
1118
+ value: entityIds,
1119
+ },
1120
+ },
1121
+ },
1122
+ };
1123
+ },
1124
+ /**
1125
+ * The function to serialize the data.
1126
+ *
1127
+ * This result of this can be written directly to the file or LevelDB entry.
1128
+ *
1129
+ * @param data The data to serialize.
1130
+ * @returns The serialized data, as a buffer.
1131
+ */
1132
+ serialize(data) {
1133
+ const rawData = data.value.entityIds.value.value.map((entityIds) => {
1134
+ const buffer = Buffer.alloc(8);
1135
+ buffer.writeInt32LE(entityIds.value[0], 0);
1136
+ buffer.writeInt32LE(entityIds.value[1], 4);
1137
+ return buffer;
1138
+ });
1139
+ return Buffer.concat(rawData);
1140
+ },
1089
1141
  },
1090
1142
  /**
1091
1143
  * The data for a map.
@@ -1610,7 +1662,7 @@ export function getChunkKeyIndices(key) {
1610
1662
  return {
1611
1663
  x: getInt32Val(key, 0),
1612
1664
  z: getInt32Val(key, 4),
1613
- dimension: [13, 14].includes(key.length) ? dimensions[getInt32Val(key, 8)] ?? "overworld" : "overworld",
1665
+ dimension: [13, 14].includes(key.length) ? (dimensions[getInt32Val(key, 8)] ?? "overworld") : "overworld",
1614
1666
  ...([10, 14].includes(key.length) ? { subChunkIndex: (key.at(-1) << 24) >> 24 } : undefined),
1615
1667
  };
1616
1668
  }
package/LevelUtils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"LevelUtils.js","sourceRoot":"","sources":["LevelUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LevelUtils.js","sourceRoot":"","sources":["LevelUtils.ts"],"names":[],"mappings":"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"}