Skip to content
This repository was archived by the owner on Oct 23, 2024. It is now read-only.

Commit bec4c97

Browse files
committed
Build: embed binary files.
1 parent 39a3e54 commit bec4c97

File tree

7 files changed

+95
-79
lines changed

7 files changed

+95
-79
lines changed

generated/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
*.json

index.js

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import banner_patterns from './resources/banner_patterns.json';
2+
import block_id_map from './jsp/block_id_map.json';
3+
import creativeitems from './resources/creativeitems.json';
4+
import entity_id_map from './resources/entity_id_map.json';
5+
import item_id_map from './jsp/item_id_map.json';
6+
//import recipes from '../resources/recipes.json';
7+
8+
export {
9+
banner_patterns,
10+
block_id_map,
11+
creativeitems,
12+
entity_id_map,
13+
item_id_map
14+
// recipes,
15+
};
16+
17+
import biome_definitions_data from './generated/biome_definitions.json';
18+
import entity_identifiers_data from './generated/entity_identifiers.json';
19+
import canonical_block_states_data from './generated/runtime_block_states.json';
20+
import r12_to_current_block_map_data from './generated/r12_to_current_block_map.json';
21+
22+
const toBuffer = ({ data }) => Buffer.from(data, 'base64');
23+
export const biome_definitions = toBuffer(biome_definitions_data);
24+
export const entity_identifiers = toBuffer(entity_identifiers_data);
25+
export const canonical_block_states = toBuffer(canonical_block_states_data);
26+
export const r12_to_current_block_map = toBuffer(r12_to_current_block_map_data);

package.json

+5-5
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
"prettier": "@nordcom/prettier",
44
"sideEffects": false,
55
"type": "module",
6-
"version": "1.20.73",
6+
"version": "1.20.73-b",
77
"files": [
88
"dist",
9-
"jsp",
9+
"generated",
1010
"resources",
1111
"index.d.ts",
1212
"README.md"
@@ -33,8 +33,8 @@
3333
"url": "git+https://github.com/JSPrismarine/BedrockData.git"
3434
},
3535
"scripts": {
36-
"build": "bun build src/index.ts --outdir=dist --target=node",
37-
"typecheck": "tsc -noEmit"
36+
"prepublish": "pnpm run build",
37+
"build": "node utils/build.js && bun build index.js --outdir=dist --target=node"
3838
},
3939
"author": "JSPrismarine",
4040
"contributors": [
@@ -52,8 +52,8 @@
5252
"license": "MIT",
5353
"private": false,
5454
"devDependencies": {
55-
"@nordcom/prettier": "0.1.1",
5655
"@types/node": "20.12.5",
56+
"@nordcom/prettier": "0.1.1",
5757
"typescript": "5.4.4"
5858
},
5959
"dependencies": {}

pnpm-lock.yaml

+38
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/index.ts

-34
This file was deleted.

tsconfig.json

-40
This file was deleted.

utils/build.js

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import fs from 'node:fs';
2+
import path from 'node:path';
3+
4+
const files = [
5+
'resources/biome_definitions.nbt',
6+
'resources/entity_identifiers.nbt',
7+
'jsp/runtime_block_states.dat',
8+
'resources/r12_to_current_block_map.bin'
9+
];
10+
11+
for (const file of files) {
12+
const filename = path.basename(file);
13+
console.log(`Converting ${filename}...`);
14+
15+
const dir = path.resolve(file);
16+
const raw = fs.readFileSync(dir);
17+
console.log(`file size: ${raw.length} bytes`);
18+
19+
const data = raw.toString('base64');
20+
21+
fs.writeFileSync(
22+
path.resolve('generated', `${filename.split('.').slice(0, -1).join('.')}.json`),
23+
JSON.stringify({ data }, null, 0)
24+
);
25+
}

0 commit comments

Comments
 (0)