nucleation 0.10.21 → 0.10.23
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/BlockPos.mjs +1 -0
- package/Dimensions.mjs +1 -0
- package/FieldRange.mjs +1 -0
- package/ItemScale.mjs +1 -0
- package/MeshBounds.mjs +1 -0
- package/MeshProgress.mjs +1 -0
- package/README.md +12 -0
- package/RegionBounds.mjs +1 -0
- package/Schematic.d.mts +32 -0
- package/Schematic.d.ts +32 -0
- package/Schematic.mjs +100 -0
- package/SdfBounds.mjs +1 -0
- package/SdfNormal.mjs +1 -0
- package/TextureInfo.mjs +1 -0
- package/diplomat-runtime.mjs +19 -14
- package/nucleation.wasm +0 -0
- package/package.json +7 -2
- package/renderer/AnimationEffect.d.mts +44 -0
- package/renderer/AnimationEffect.d.ts +44 -0
- package/renderer/AnimationEffect.mjs +204 -0
- package/renderer/Autostack.d.mts +43 -0
- package/renderer/Autostack.d.ts +43 -0
- package/renderer/Autostack.mjs +134 -0
- package/renderer/BlockPos.d.mts +28 -0
- package/renderer/BlockPos.d.ts +28 -0
- package/renderer/BlockPos.mjs +130 -0
- package/renderer/BlockState.d.mts +39 -0
- package/renderer/BlockState.d.ts +39 -0
- package/renderer/BlockState.mjs +134 -0
- package/renderer/Blocks.d.mts +91 -0
- package/renderer/Blocks.d.ts +91 -0
- package/renderer/Blocks.mjs +308 -0
- package/renderer/Brush.d.mts +99 -0
- package/renderer/Brush.d.ts +99 -0
- package/renderer/Brush.mjs +335 -0
- package/renderer/BuildAnimation.d.mts +179 -0
- package/renderer/BuildAnimation.d.ts +179 -0
- package/renderer/BuildAnimation.mjs +1148 -0
- package/renderer/BuildingTool.d.mts +46 -0
- package/renderer/BuildingTool.d.ts +46 -0
- package/renderer/BuildingTool.mjs +121 -0
- package/renderer/CellExecutor.d.mts +51 -0
- package/renderer/CellExecutor.d.ts +51 -0
- package/renderer/CellExecutor.mjs +171 -0
- package/renderer/CellularSdfConfig.d.mts +22 -0
- package/renderer/CellularSdfConfig.d.ts +22 -0
- package/renderer/CellularSdfConfig.mjs +69 -0
- package/renderer/ChunkMeshResult.d.mts +75 -0
- package/renderer/ChunkMeshResult.d.ts +75 -0
- package/renderer/ChunkMeshResult.mjs +253 -0
- package/renderer/CircuitBuilder.d.mts +118 -0
- package/renderer/CircuitBuilder.d.ts +118 -0
- package/renderer/CircuitBuilder.mjs +516 -0
- package/renderer/Curve3D.d.mts +27 -0
- package/renderer/Curve3D.d.ts +27 -0
- package/renderer/Curve3D.mjs +101 -0
- package/renderer/DefinitionRegion.d.mts +274 -0
- package/renderer/DefinitionRegion.d.ts +274 -0
- package/renderer/DefinitionRegion.mjs +973 -0
- package/renderer/Design.d.mts +348 -0
- package/renderer/Design.d.ts +348 -0
- package/renderer/Design.mjs +1334 -0
- package/renderer/Diff.d.mts +88 -0
- package/renderer/Diff.d.ts +88 -0
- package/renderer/Diff.mjs +316 -0
- package/renderer/Dimensions.d.mts +28 -0
- package/renderer/Dimensions.d.ts +28 -0
- package/renderer/Dimensions.mjs +130 -0
- package/renderer/DistanceField.d.mts +39 -0
- package/renderer/DistanceField.d.ts +39 -0
- package/renderer/DistanceField.mjs +114 -0
- package/renderer/ExecutionMode.d.mts +42 -0
- package/renderer/ExecutionMode.d.ts +42 -0
- package/renderer/ExecutionMode.mjs +127 -0
- package/renderer/Field3.d.mts +40 -0
- package/renderer/Field3.d.ts +40 -0
- package/renderer/Field3.mjs +160 -0
- package/renderer/FieldProgram.d.mts +40 -0
- package/renderer/FieldProgram.d.ts +40 -0
- package/renderer/FieldProgram.mjs +167 -0
- package/renderer/FieldProgramBinaryOp.d.mts +42 -0
- package/renderer/FieldProgramBinaryOp.d.ts +42 -0
- package/renderer/FieldProgramBinaryOp.mjs +118 -0
- package/renderer/FieldProgramBuilder.d.mts +104 -0
- package/renderer/FieldProgramBuilder.d.ts +104 -0
- package/renderer/FieldProgramBuilder.mjs +486 -0
- package/renderer/FieldProgramDistanceKind.d.mts +26 -0
- package/renderer/FieldProgramDistanceKind.d.ts +26 -0
- package/renderer/FieldProgramDistanceKind.mjs +78 -0
- package/renderer/FieldProgramUnaryOp.d.mts +34 -0
- package/renderer/FieldProgramUnaryOp.d.ts +34 -0
- package/renderer/FieldProgramUnaryOp.mjs +102 -0
- package/renderer/FieldProgramValueType.d.mts +25 -0
- package/renderer/FieldProgramValueType.d.ts +25 -0
- package/renderer/FieldProgramValueType.mjs +75 -0
- package/renderer/FieldRange.d.mts +15 -0
- package/renderer/FieldRange.d.ts +15 -0
- package/renderer/FieldRange.mjs +109 -0
- package/renderer/Fingerprint.d.mts +44 -0
- package/renderer/Fingerprint.d.ts +44 -0
- package/renderer/Fingerprint.mjs +197 -0
- package/renderer/GeneratedChunk.d.mts +35 -0
- package/renderer/GeneratedChunk.d.ts +35 -0
- package/renderer/GeneratedChunk.mjs +178 -0
- package/renderer/GeneratedChunkCoverage.d.mts +25 -0
- package/renderer/GeneratedChunkCoverage.d.ts +25 -0
- package/renderer/GeneratedChunkCoverage.mjs +75 -0
- package/renderer/GeneratedChunkOverlayMode.d.mts +24 -0
- package/renderer/GeneratedChunkOverlayMode.d.ts +24 -0
- package/renderer/GeneratedChunkOverlayMode.mjs +72 -0
- package/renderer/GeneratedWorldStream.d.mts +28 -0
- package/renderer/GeneratedWorldStream.d.ts +28 -0
- package/renderer/GeneratedWorldStream.mjs +86 -0
- package/renderer/Geo.d.mts +41 -0
- package/renderer/Geo.d.ts +41 -0
- package/renderer/Geo.mjs +121 -0
- package/renderer/Hdl.d.mts +56 -0
- package/renderer/Hdl.d.ts +56 -0
- package/renderer/Hdl.mjs +163 -0
- package/renderer/InterpolationSpace.d.mts +25 -0
- package/renderer/InterpolationSpace.d.ts +25 -0
- package/renderer/InterpolationSpace.mjs +73 -0
- package/renderer/IoLayout.d.mts +26 -0
- package/renderer/IoLayout.d.ts +26 -0
- package/renderer/IoLayout.mjs +81 -0
- package/renderer/IoLayoutBuilder.d.mts +73 -0
- package/renderer/IoLayoutBuilder.d.ts +73 -0
- package/renderer/IoLayoutBuilder.mjs +315 -0
- package/renderer/IoType.d.mts +41 -0
- package/renderer/IoType.d.ts +41 -0
- package/renderer/IoType.mjs +125 -0
- package/renderer/ItemModelConfig.d.mts +65 -0
- package/renderer/ItemModelConfig.d.ts +65 -0
- package/renderer/ItemModelConfig.mjs +223 -0
- package/renderer/ItemModelPackBuilder.d.mts +32 -0
- package/renderer/ItemModelPackBuilder.d.ts +32 -0
- package/renderer/ItemModelPackBuilder.mjs +104 -0
- package/renderer/ItemModelResult.d.mts +72 -0
- package/renderer/ItemModelResult.d.ts +72 -0
- package/renderer/ItemModelResult.mjs +268 -0
- package/renderer/ItemScale.d.mts +31 -0
- package/renderer/ItemScale.d.ts +31 -0
- package/renderer/ItemScale.mjs +133 -0
- package/renderer/LayoutFunction.d.mts +52 -0
- package/renderer/LayoutFunction.d.ts +52 -0
- package/renderer/LayoutFunction.mjs +159 -0
- package/renderer/MchprsWorld.d.mts +131 -0
- package/renderer/MchprsWorld.d.ts +131 -0
- package/renderer/MchprsWorld.mjs +423 -0
- package/renderer/MeshBounds.d.mts +40 -0
- package/renderer/MeshBounds.d.ts +40 -0
- package/renderer/MeshBounds.mjs +181 -0
- package/renderer/MeshConfig.d.mts +101 -0
- package/renderer/MeshConfig.d.ts +101 -0
- package/renderer/MeshConfig.mjs +306 -0
- package/renderer/MeshJob.d.mts +44 -0
- package/renderer/MeshJob.d.ts +44 -0
- package/renderer/MeshJob.mjs +116 -0
- package/renderer/MeshPhase.d.mts +38 -0
- package/renderer/MeshPhase.d.ts +38 -0
- package/renderer/MeshPhase.mjs +90 -0
- package/renderer/MeshProgress.d.mts +32 -0
- package/renderer/MeshProgress.d.ts +32 -0
- package/renderer/MeshProgress.mjs +134 -0
- package/renderer/MeshResult.d.mts +76 -0
- package/renderer/MeshResult.d.ts +76 -0
- package/renderer/MeshResult.mjs +269 -0
- package/renderer/MultiMeshResult.d.mts +50 -0
- package/renderer/MultiMeshResult.d.ts +50 -0
- package/renderer/MultiMeshResult.mjs +166 -0
- package/renderer/Nbt.d.mts +50 -0
- package/renderer/Nbt.d.ts +50 -0
- package/renderer/Nbt.mjs +161 -0
- package/renderer/NucleationError.d.mts +53 -0
- package/renderer/NucleationError.d.ts +53 -0
- package/renderer/NucleationError.mjs +136 -0
- package/renderer/OutputCondition.d.mts +45 -0
- package/renderer/OutputCondition.d.ts +45 -0
- package/renderer/OutputCondition.mjs +129 -0
- package/renderer/Palette.d.mts +157 -0
- package/renderer/Palette.d.ts +157 -0
- package/renderer/Palette.mjs +487 -0
- package/renderer/PaletteBuilder.d.mts +119 -0
- package/renderer/PaletteBuilder.d.ts +119 -0
- package/renderer/PaletteBuilder.mjs +457 -0
- package/renderer/README.md +67 -0
- package/renderer/RawMeshExport.d.mts +74 -0
- package/renderer/RawMeshExport.d.ts +74 -0
- package/renderer/RawMeshExport.mjs +243 -0
- package/renderer/RedstoneGraph.d.mts +58 -0
- package/renderer/RedstoneGraph.d.ts +58 -0
- package/renderer/RedstoneGraph.mjs +242 -0
- package/renderer/RegionBounds.d.mts +41 -0
- package/renderer/RegionBounds.d.ts +41 -0
- package/renderer/RegionBounds.mjs +182 -0
- package/renderer/RenderConfig.d.mts +101 -0
- package/renderer/RenderConfig.d.ts +101 -0
- package/renderer/RenderConfig.mjs +271 -0
- package/renderer/Renderer.d.mts +51 -0
- package/renderer/Renderer.d.ts +51 -0
- package/renderer/Renderer.mjs +219 -0
- package/renderer/ResourcePack.d.mts +105 -0
- package/renderer/ResourcePack.d.ts +105 -0
- package/renderer/ResourcePack.mjs +447 -0
- package/renderer/ResourcePackList.d.mts +32 -0
- package/renderer/ResourcePackList.d.ts +32 -0
- package/renderer/ResourcePackList.mjs +96 -0
- package/renderer/Routing.d.mts +66 -0
- package/renderer/Routing.d.ts +66 -0
- package/renderer/Routing.mjs +220 -0
- package/renderer/Schematic.d.mts +977 -0
- package/renderer/Schematic.d.ts +977 -0
- package/renderer/Schematic.mjs +3820 -0
- package/renderer/SchematicBuilder.d.mts +103 -0
- package/renderer/SchematicBuilder.d.ts +103 -0
- package/renderer/SchematicBuilder.mjs +401 -0
- package/renderer/SchematicRegions.d.mts +93 -0
- package/renderer/SchematicRegions.d.ts +93 -0
- package/renderer/SchematicRegions.mjs +411 -0
- package/renderer/SchematicSplitResult.d.mts +26 -0
- package/renderer/SchematicSplitResult.d.ts +26 -0
- package/renderer/SchematicSplitResult.mjs +84 -0
- package/renderer/Scripting.d.mts +40 -0
- package/renderer/Scripting.d.ts +40 -0
- package/renderer/Scripting.mjs +138 -0
- package/renderer/Sdf.d.mts +234 -0
- package/renderer/Sdf.d.ts +234 -0
- package/renderer/Sdf.mjs +1234 -0
- package/renderer/SdfAxis.d.mts +25 -0
- package/renderer/SdfAxis.d.ts +25 -0
- package/renderer/SdfAxis.mjs +75 -0
- package/renderer/SdfBounds.d.mts +19 -0
- package/renderer/SdfBounds.d.ts +19 -0
- package/renderer/SdfBounds.mjs +161 -0
- package/renderer/SdfCellMode.d.mts +26 -0
- package/renderer/SdfCellMode.d.ts +26 -0
- package/renderer/SdfCellMode.mjs +78 -0
- package/renderer/SdfNormal.d.mts +16 -0
- package/renderer/SdfNormal.d.ts +16 -0
- package/renderer/SdfNormal.mjs +122 -0
- package/renderer/Shape.d.mts +143 -0
- package/renderer/Shape.d.ts +143 -0
- package/renderer/Shape.mjs +458 -0
- package/renderer/SortStrategy.d.mts +86 -0
- package/renderer/SortStrategy.d.ts +86 -0
- package/renderer/SortStrategy.mjs +272 -0
- package/renderer/Store.d.mts +83 -0
- package/renderer/Store.d.ts +83 -0
- package/renderer/Store.mjs +369 -0
- package/renderer/StoreIo.d.mts +71 -0
- package/renderer/StoreIo.d.ts +71 -0
- package/renderer/StoreIo.mjs +292 -0
- package/renderer/TextureAtlas.d.mts +40 -0
- package/renderer/TextureAtlas.d.ts +40 -0
- package/renderer/TextureAtlas.mjs +122 -0
- package/renderer/TextureInfo.d.mts +34 -0
- package/renderer/TextureInfo.d.ts +34 -0
- package/renderer/TextureInfo.mjs +149 -0
- package/renderer/TickSettleMode.d.mts +34 -0
- package/renderer/TickSettleMode.d.ts +34 -0
- package/renderer/TickSettleMode.mjs +84 -0
- package/renderer/TickSimulation.d.mts +572 -0
- package/renderer/TickSimulation.d.ts +572 -0
- package/renderer/TickSimulation.mjs +1299 -0
- package/renderer/TypedCircuitExecutor.d.mts +101 -0
- package/renderer/TypedCircuitExecutor.d.ts +101 -0
- package/renderer/TypedCircuitExecutor.mjs +378 -0
- package/renderer/Value.d.mts +73 -0
- package/renderer/Value.d.ts +73 -0
- package/renderer/Value.mjs +275 -0
- package/renderer/VideoConfig.d.mts +15 -0
- package/renderer/VideoConfig.d.ts +15 -0
- package/renderer/VideoConfig.mjs +44 -0
- package/renderer/VoxelModel.d.mts +34 -0
- package/renderer/VoxelModel.d.ts +34 -0
- package/renderer/VoxelModel.mjs +113 -0
- package/renderer/Voxelizer.d.mts +80 -0
- package/renderer/Voxelizer.d.ts +80 -0
- package/renderer/Voxelizer.mjs +261 -0
- package/renderer/WorldChunkView.d.mts +75 -0
- package/renderer/WorldChunkView.d.ts +75 -0
- package/renderer/WorldChunkView.mjs +224 -0
- package/renderer/WorldGenerator.d.mts +75 -0
- package/renderer/WorldGenerator.d.ts +75 -0
- package/renderer/WorldGenerator.mjs +255 -0
- package/renderer/WorldSink.d.mts +50 -0
- package/renderer/WorldSink.d.ts +50 -0
- package/renderer/WorldSink.mjs +177 -0
- package/renderer/WorldStream.d.mts +45 -0
- package/renderer/WorldStream.d.ts +45 -0
- package/renderer/WorldStream.mjs +184 -0
- package/renderer/WsPartitionHints.d.mts +29 -0
- package/renderer/WsPartitionHints.d.ts +29 -0
- package/renderer/WsPartitionHints.mjs +102 -0
- package/renderer/WsProfile.d.mts +46 -0
- package/renderer/WsProfile.d.ts +46 -0
- package/renderer/WsProfile.mjs +152 -0
- package/renderer/WsRunResult.d.mts +83 -0
- package/renderer/WsRunResult.d.ts +83 -0
- package/renderer/WsRunResult.mjs +326 -0
- package/renderer/WsSegmentJob.d.mts +28 -0
- package/renderer/WsSegmentJob.d.ts +28 -0
- package/renderer/WsSegmentJob.mjs +81 -0
- package/renderer/diplomat-runtime.d.mts +15 -0
- package/renderer/diplomat-runtime.d.ts +15 -0
- package/renderer/diplomat-runtime.mjs +779 -0
- package/renderer/diplomat-wasm.mjs +52 -0
- package/renderer/diplomat.config.mjs +5 -0
- package/renderer/index.d.mts +193 -0
- package/renderer/index.d.ts +193 -0
- package/renderer/index.mjs +196 -0
- package/renderer/nucleation.wasm +0 -0
- package/renderer/veneer/design.d.ts +167 -0
- package/renderer/veneer/design.mjs +480 -0
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import type { NucleationError } from "./NucleationError.mjs"
|
|
3
|
+
import type { ResourcePackList } from "./ResourcePackList.mjs"
|
|
4
|
+
import type { TextureInfo } from "./TextureInfo.mjs"
|
|
5
|
+
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* A loaded (possibly merged) Minecraft resource pack.
|
|
11
|
+
* Wraps {@link crate::meshing::ResourcePackSource}.
|
|
12
|
+
*/
|
|
13
|
+
export class ResourcePack {
|
|
14
|
+
/** @internal */
|
|
15
|
+
get ffiValue(): pointer;
|
|
16
|
+
/** @internal */
|
|
17
|
+
constructor();
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Load a resource pack from an in-memory ZIP buffer.
|
|
22
|
+
*/
|
|
23
|
+
static fromBytes(data: Array<number>): ResourcePack;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Load and merge multiple resource packs, lowest priority first.
|
|
27
|
+
*/
|
|
28
|
+
static fromList(list: ResourcePackList): ResourcePack;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Number of blockstate definitions in the pack.
|
|
32
|
+
*/
|
|
33
|
+
blockstateCount(): number;
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Number of model definitions in the pack.
|
|
37
|
+
*/
|
|
38
|
+
modelCount(): number;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Number of textures in the pack.
|
|
42
|
+
*/
|
|
43
|
+
textureCount(): number;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Namespaces present in the pack, as a JSON array string.
|
|
47
|
+
*/
|
|
48
|
+
namespacesJson(): string;
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* All blockstate identifiers, as a JSON array string.
|
|
52
|
+
*/
|
|
53
|
+
listBlockstatesJson(): string;
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* All model identifiers, as a JSON array string.
|
|
57
|
+
*/
|
|
58
|
+
listModelsJson(): string;
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* All texture identifiers, as a JSON array string.
|
|
62
|
+
*/
|
|
63
|
+
listTexturesJson(): string;
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* The blockstate definition JSON for `name`; `NotFound` if absent.
|
|
67
|
+
*/
|
|
68
|
+
getBlockstateJson(name: string): string;
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* The model definition JSON for `name`; `NotFound` if absent.
|
|
72
|
+
*/
|
|
73
|
+
getModelJson(name: string): string;
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Texture metadata (size, animation flag, frame count).
|
|
77
|
+
*/
|
|
78
|
+
getTextureInfo(name: string): TextureInfo;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Raw RGBA pixels of a texture, base64-encoded.
|
|
82
|
+
*/
|
|
83
|
+
getTexturePixelsB64(name: string): string;
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Add (or override) a blockstate definition from a JSON string.
|
|
87
|
+
*/
|
|
88
|
+
addBlockstateJson(name: string, json: string): void;
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Add (or override) a model definition from a JSON string.
|
|
92
|
+
*/
|
|
93
|
+
addModelJson(name: string, json: string): void;
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Add a raw RGBA texture (`pixels` length must be `width * height * 4`).
|
|
97
|
+
*/
|
|
98
|
+
addTexture(name: string, width: number, height: number, pixels: Array<number>): void;
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Register a MeshExporter with the FormatManager so `save_as("mesh", ...)`
|
|
102
|
+
* works. (Old ABI: `schematic_register_mesh_exporter`.)
|
|
103
|
+
*/
|
|
104
|
+
registerMeshExporter(): void;
|
|
105
|
+
}
|
|
@@ -0,0 +1,447 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import { NucleationError } from "./NucleationError.mjs"
|
|
3
|
+
import { ResourcePackList } from "./ResourcePackList.mjs"
|
|
4
|
+
import { TextureInfo } from "./TextureInfo.mjs"
|
|
5
|
+
import wasm from "./diplomat-wasm.mjs";
|
|
6
|
+
import * as diplomatRuntime from "./diplomat-runtime.mjs";
|
|
7
|
+
|
|
8
|
+
const ResourcePack_box_destroy_registry = new FinalizationRegistry((ptr) => {
|
|
9
|
+
wasm.ResourcePack_destroy(ptr);
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* A loaded (possibly merged) Minecraft resource pack.
|
|
14
|
+
* Wraps {@link crate::meshing::ResourcePackSource}.
|
|
15
|
+
*/
|
|
16
|
+
export class ResourcePack {
|
|
17
|
+
// Internal ptr reference:
|
|
18
|
+
#ptr = null;
|
|
19
|
+
|
|
20
|
+
// Lifetimes are only to keep dependencies alive.
|
|
21
|
+
// Since JS won't garbage collect until there are no incoming edges.
|
|
22
|
+
#selfEdge = [];
|
|
23
|
+
|
|
24
|
+
#internalConstructor(symbol, ptr, selfEdge) {
|
|
25
|
+
if (symbol !== diplomatRuntime.internalConstructor) {
|
|
26
|
+
console.error("ResourcePack is an Opaque type. You cannot call its constructor.");
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
this.#ptr = ptr;
|
|
30
|
+
this.#selfEdge = selfEdge;
|
|
31
|
+
|
|
32
|
+
// Are we being borrowed? If not, we can register.
|
|
33
|
+
if (this.#selfEdge.length === 0) {
|
|
34
|
+
ResourcePack_box_destroy_registry.register(this, this.#ptr);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
/** @internal */
|
|
40
|
+
get ffiValue() {
|
|
41
|
+
return this.#ptr;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Load a resource pack from an in-memory ZIP buffer.
|
|
47
|
+
*/
|
|
48
|
+
static fromBytes(data) {
|
|
49
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
50
|
+
|
|
51
|
+
const dataSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.slice(wasm, data, "u8")));
|
|
52
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
const result = wasm.ResourcePack_from_bytes(diplomatReceive.buffer, dataSlice.ptr);
|
|
56
|
+
|
|
57
|
+
try {
|
|
58
|
+
if (!diplomatReceive.resultFlag) {
|
|
59
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
60
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
61
|
+
}
|
|
62
|
+
return new ResourcePack(diplomatRuntime.internalConstructor, diplomatRuntime.ptrRead(wasm, diplomatReceive.buffer), []);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
finally {
|
|
66
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
67
|
+
functionCleanupArena.free();
|
|
68
|
+
|
|
69
|
+
diplomatReceive.free();
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Load and merge multiple resource packs, lowest priority first.
|
|
75
|
+
*/
|
|
76
|
+
static fromList(list) {
|
|
77
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
const result = wasm.ResourcePack_from_list(diplomatReceive.buffer, list.ffiValue);
|
|
81
|
+
|
|
82
|
+
try {
|
|
83
|
+
if (!diplomatReceive.resultFlag) {
|
|
84
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
85
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
86
|
+
}
|
|
87
|
+
return new ResourcePack(diplomatRuntime.internalConstructor, diplomatRuntime.ptrRead(wasm, diplomatReceive.buffer), []);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
finally {
|
|
91
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
92
|
+
diplomatReceive.free();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Number of blockstate definitions in the pack.
|
|
98
|
+
*/
|
|
99
|
+
blockstateCount() {
|
|
100
|
+
|
|
101
|
+
const result = wasm.ResourcePack_blockstate_count(this.ffiValue);
|
|
102
|
+
|
|
103
|
+
try {
|
|
104
|
+
return result;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
finally {
|
|
108
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Number of model definitions in the pack.
|
|
114
|
+
*/
|
|
115
|
+
modelCount() {
|
|
116
|
+
|
|
117
|
+
const result = wasm.ResourcePack_model_count(this.ffiValue);
|
|
118
|
+
|
|
119
|
+
try {
|
|
120
|
+
return result;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
finally {
|
|
124
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Number of textures in the pack.
|
|
130
|
+
*/
|
|
131
|
+
textureCount() {
|
|
132
|
+
|
|
133
|
+
const result = wasm.ResourcePack_texture_count(this.ffiValue);
|
|
134
|
+
|
|
135
|
+
try {
|
|
136
|
+
return result;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
finally {
|
|
140
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Namespaces present in the pack, as a JSON array string.
|
|
146
|
+
*/
|
|
147
|
+
namespacesJson() {
|
|
148
|
+
const write = new diplomatRuntime.DiplomatWriteBuf(wasm);
|
|
149
|
+
|
|
150
|
+
wasm.ResourcePack_namespaces_json(this.ffiValue, write.buffer);
|
|
151
|
+
|
|
152
|
+
try {
|
|
153
|
+
return write.readString8();
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
finally {
|
|
157
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
158
|
+
write.free();
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* All blockstate identifiers, as a JSON array string.
|
|
164
|
+
*/
|
|
165
|
+
listBlockstatesJson() {
|
|
166
|
+
const write = new diplomatRuntime.DiplomatWriteBuf(wasm);
|
|
167
|
+
|
|
168
|
+
wasm.ResourcePack_list_blockstates_json(this.ffiValue, write.buffer);
|
|
169
|
+
|
|
170
|
+
try {
|
|
171
|
+
return write.readString8();
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
finally {
|
|
175
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
176
|
+
write.free();
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* All model identifiers, as a JSON array string.
|
|
182
|
+
*/
|
|
183
|
+
listModelsJson() {
|
|
184
|
+
const write = new diplomatRuntime.DiplomatWriteBuf(wasm);
|
|
185
|
+
|
|
186
|
+
wasm.ResourcePack_list_models_json(this.ffiValue, write.buffer);
|
|
187
|
+
|
|
188
|
+
try {
|
|
189
|
+
return write.readString8();
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
finally {
|
|
193
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
194
|
+
write.free();
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* All texture identifiers, as a JSON array string.
|
|
200
|
+
*/
|
|
201
|
+
listTexturesJson() {
|
|
202
|
+
const write = new diplomatRuntime.DiplomatWriteBuf(wasm);
|
|
203
|
+
|
|
204
|
+
wasm.ResourcePack_list_textures_json(this.ffiValue, write.buffer);
|
|
205
|
+
|
|
206
|
+
try {
|
|
207
|
+
return write.readString8();
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
finally {
|
|
211
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
212
|
+
write.free();
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* The blockstate definition JSON for `name`; `NotFound` if absent.
|
|
218
|
+
*/
|
|
219
|
+
getBlockstateJson(name) {
|
|
220
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
221
|
+
|
|
222
|
+
const nameSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, name)));
|
|
223
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
224
|
+
|
|
225
|
+
const write = new diplomatRuntime.DiplomatWriteBuf(wasm);
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
const result = wasm.ResourcePack_get_blockstate_json(diplomatReceive.buffer, this.ffiValue, nameSlice.ptr, write.buffer);
|
|
229
|
+
|
|
230
|
+
try {
|
|
231
|
+
if (!diplomatReceive.resultFlag) {
|
|
232
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
233
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
234
|
+
}
|
|
235
|
+
return write.readString8();
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
finally {
|
|
239
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
240
|
+
functionCleanupArena.free();
|
|
241
|
+
|
|
242
|
+
diplomatReceive.free();
|
|
243
|
+
write.free();
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* The model definition JSON for `name`; `NotFound` if absent.
|
|
249
|
+
*/
|
|
250
|
+
getModelJson(name) {
|
|
251
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
252
|
+
|
|
253
|
+
const nameSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, name)));
|
|
254
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
255
|
+
|
|
256
|
+
const write = new diplomatRuntime.DiplomatWriteBuf(wasm);
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
const result = wasm.ResourcePack_get_model_json(diplomatReceive.buffer, this.ffiValue, nameSlice.ptr, write.buffer);
|
|
260
|
+
|
|
261
|
+
try {
|
|
262
|
+
if (!diplomatReceive.resultFlag) {
|
|
263
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
264
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
265
|
+
}
|
|
266
|
+
return write.readString8();
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
finally {
|
|
270
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
271
|
+
functionCleanupArena.free();
|
|
272
|
+
|
|
273
|
+
diplomatReceive.free();
|
|
274
|
+
write.free();
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
/**
|
|
279
|
+
* Texture metadata (size, animation flag, frame count).
|
|
280
|
+
*/
|
|
281
|
+
getTextureInfo(name) {
|
|
282
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
283
|
+
|
|
284
|
+
const nameSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, name)));
|
|
285
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 17, 4, true);
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
const result = wasm.ResourcePack_get_texture_info(diplomatReceive.buffer, this.ffiValue, nameSlice.ptr);
|
|
289
|
+
|
|
290
|
+
try {
|
|
291
|
+
if (!diplomatReceive.resultFlag) {
|
|
292
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
293
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
294
|
+
}
|
|
295
|
+
return TextureInfo._fromFFI(diplomatRuntime.internalConstructor, diplomatReceive.buffer);
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
finally {
|
|
299
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
300
|
+
functionCleanupArena.free();
|
|
301
|
+
|
|
302
|
+
diplomatReceive.free();
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
/**
|
|
307
|
+
* Raw RGBA pixels of a texture, base64-encoded.
|
|
308
|
+
*/
|
|
309
|
+
getTexturePixelsB64(name) {
|
|
310
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
311
|
+
|
|
312
|
+
const nameSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, name)));
|
|
313
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
314
|
+
|
|
315
|
+
const write = new diplomatRuntime.DiplomatWriteBuf(wasm);
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
const result = wasm.ResourcePack_get_texture_pixels_b64(diplomatReceive.buffer, this.ffiValue, nameSlice.ptr, write.buffer);
|
|
319
|
+
|
|
320
|
+
try {
|
|
321
|
+
if (!diplomatReceive.resultFlag) {
|
|
322
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
323
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
324
|
+
}
|
|
325
|
+
return write.readString8();
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
finally {
|
|
329
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
330
|
+
functionCleanupArena.free();
|
|
331
|
+
|
|
332
|
+
diplomatReceive.free();
|
|
333
|
+
write.free();
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
/**
|
|
338
|
+
* Add (or override) a blockstate definition from a JSON string.
|
|
339
|
+
*/
|
|
340
|
+
addBlockstateJson(name, json) {
|
|
341
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
342
|
+
|
|
343
|
+
const nameSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, name)));
|
|
344
|
+
const jsonSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, json)));
|
|
345
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
const result = wasm.ResourcePack_add_blockstate_json(diplomatReceive.buffer, this.ffiValue, nameSlice.ptr, jsonSlice.ptr);
|
|
349
|
+
|
|
350
|
+
try {
|
|
351
|
+
if (!diplomatReceive.resultFlag) {
|
|
352
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
353
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
finally {
|
|
358
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
359
|
+
functionCleanupArena.free();
|
|
360
|
+
|
|
361
|
+
diplomatReceive.free();
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
/**
|
|
366
|
+
* Add (or override) a model definition from a JSON string.
|
|
367
|
+
*/
|
|
368
|
+
addModelJson(name, json) {
|
|
369
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
370
|
+
|
|
371
|
+
const nameSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, name)));
|
|
372
|
+
const jsonSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, json)));
|
|
373
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
const result = wasm.ResourcePack_add_model_json(diplomatReceive.buffer, this.ffiValue, nameSlice.ptr, jsonSlice.ptr);
|
|
377
|
+
|
|
378
|
+
try {
|
|
379
|
+
if (!diplomatReceive.resultFlag) {
|
|
380
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
381
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
finally {
|
|
386
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
387
|
+
functionCleanupArena.free();
|
|
388
|
+
|
|
389
|
+
diplomatReceive.free();
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
/**
|
|
394
|
+
* Add a raw RGBA texture (`pixels` length must be `width * height * 4`).
|
|
395
|
+
*/
|
|
396
|
+
addTexture(name, width, height, pixels) {
|
|
397
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
398
|
+
|
|
399
|
+
const nameSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.str8(wasm, name)));
|
|
400
|
+
const pixelsSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.slice(wasm, pixels, "u8")));
|
|
401
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
const result = wasm.ResourcePack_add_texture(diplomatReceive.buffer, this.ffiValue, nameSlice.ptr, width, height, pixelsSlice.ptr);
|
|
405
|
+
|
|
406
|
+
try {
|
|
407
|
+
if (!diplomatReceive.resultFlag) {
|
|
408
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
409
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
finally {
|
|
414
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
415
|
+
functionCleanupArena.free();
|
|
416
|
+
|
|
417
|
+
diplomatReceive.free();
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
/**
|
|
422
|
+
* Register a MeshExporter with the FormatManager so `save_as("mesh", ...)`
|
|
423
|
+
* works. (Old ABI: `schematic_register_mesh_exporter`.)
|
|
424
|
+
*/
|
|
425
|
+
registerMeshExporter() {
|
|
426
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
const result = wasm.ResourcePack_register_mesh_exporter(diplomatReceive.buffer, this.ffiValue);
|
|
430
|
+
|
|
431
|
+
try {
|
|
432
|
+
if (!diplomatReceive.resultFlag) {
|
|
433
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
434
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
finally {
|
|
439
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
440
|
+
diplomatReceive.free();
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
constructor(symbol, ptr, selfEdge) {
|
|
445
|
+
return this.#internalConstructor(...arguments)
|
|
446
|
+
}
|
|
447
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Ordered list of raw resource-pack ZIP buffers, lowest priority first.
|
|
8
|
+
* Feed it to {@link ResourcePack::from_list}.
|
|
9
|
+
*/
|
|
10
|
+
export class ResourcePackList {
|
|
11
|
+
/** @internal */
|
|
12
|
+
get ffiValue(): pointer;
|
|
13
|
+
/** @internal */
|
|
14
|
+
constructor();
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Create an empty resource-pack list.
|
|
19
|
+
*/
|
|
20
|
+
static create(): ResourcePackList;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Append one resource-pack ZIP buffer. Later buffers overlay earlier
|
|
24
|
+
* ones on per-key collision (Minecraft pack-ordering semantics).
|
|
25
|
+
*/
|
|
26
|
+
add(data: Array<number>): void;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Number of pack buffers added so far.
|
|
30
|
+
*/
|
|
31
|
+
len(): number;
|
|
32
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Ordered list of raw resource-pack ZIP buffers, lowest priority first.
|
|
8
|
+
* Feed it to {@link ResourcePack::from_list}.
|
|
9
|
+
*/
|
|
10
|
+
export class ResourcePackList {
|
|
11
|
+
/** @internal */
|
|
12
|
+
get ffiValue(): pointer;
|
|
13
|
+
/** @internal */
|
|
14
|
+
constructor();
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Create an empty resource-pack list.
|
|
19
|
+
*/
|
|
20
|
+
static create(): ResourcePackList;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Append one resource-pack ZIP buffer. Later buffers overlay earlier
|
|
24
|
+
* ones on per-key collision (Minecraft pack-ordering semantics).
|
|
25
|
+
*/
|
|
26
|
+
add(data: Array<number>): void;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Number of pack buffers added so far.
|
|
30
|
+
*/
|
|
31
|
+
len(): number;
|
|
32
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import wasm from "./diplomat-wasm.mjs";
|
|
3
|
+
import * as diplomatRuntime from "./diplomat-runtime.mjs";
|
|
4
|
+
|
|
5
|
+
const ResourcePackList_box_destroy_registry = new FinalizationRegistry((ptr) => {
|
|
6
|
+
wasm.ResourcePackList_destroy(ptr);
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Ordered list of raw resource-pack ZIP buffers, lowest priority first.
|
|
11
|
+
* Feed it to {@link ResourcePack::from_list}.
|
|
12
|
+
*/
|
|
13
|
+
export class ResourcePackList {
|
|
14
|
+
// Internal ptr reference:
|
|
15
|
+
#ptr = null;
|
|
16
|
+
|
|
17
|
+
// Lifetimes are only to keep dependencies alive.
|
|
18
|
+
// Since JS won't garbage collect until there are no incoming edges.
|
|
19
|
+
#selfEdge = [];
|
|
20
|
+
|
|
21
|
+
#internalConstructor(symbol, ptr, selfEdge) {
|
|
22
|
+
if (symbol !== diplomatRuntime.internalConstructor) {
|
|
23
|
+
console.error("ResourcePackList is an Opaque type. You cannot call its constructor.");
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
this.#ptr = ptr;
|
|
27
|
+
this.#selfEdge = selfEdge;
|
|
28
|
+
|
|
29
|
+
// Are we being borrowed? If not, we can register.
|
|
30
|
+
if (this.#selfEdge.length === 0) {
|
|
31
|
+
ResourcePackList_box_destroy_registry.register(this, this.#ptr);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
/** @internal */
|
|
37
|
+
get ffiValue() {
|
|
38
|
+
return this.#ptr;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Create an empty resource-pack list.
|
|
44
|
+
*/
|
|
45
|
+
static create() {
|
|
46
|
+
|
|
47
|
+
const result = wasm.ResourcePackList_create();
|
|
48
|
+
|
|
49
|
+
try {
|
|
50
|
+
return new ResourcePackList(diplomatRuntime.internalConstructor, result, []);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
finally {
|
|
54
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Append one resource-pack ZIP buffer. Later buffers overlay earlier
|
|
60
|
+
* ones on per-key collision (Minecraft pack-ordering semantics).
|
|
61
|
+
*/
|
|
62
|
+
add(data) {
|
|
63
|
+
let functionCleanupArena = new diplomatRuntime.CleanupArena();
|
|
64
|
+
|
|
65
|
+
const dataSlice = functionCleanupArena.alloc(diplomatRuntime.DiplomatBuf.sliceWrapper(wasm, diplomatRuntime.DiplomatBuf.slice(wasm, data, "u8")));
|
|
66
|
+
wasm.ResourcePackList_add(this.ffiValue, dataSlice.ptr);
|
|
67
|
+
|
|
68
|
+
try {}
|
|
69
|
+
|
|
70
|
+
finally {
|
|
71
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
72
|
+
functionCleanupArena.free();
|
|
73
|
+
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Number of pack buffers added so far.
|
|
79
|
+
*/
|
|
80
|
+
len() {
|
|
81
|
+
|
|
82
|
+
const result = wasm.ResourcePackList_len(this.ffiValue);
|
|
83
|
+
|
|
84
|
+
try {
|
|
85
|
+
return result;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
finally {
|
|
89
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
constructor(symbol, ptr, selfEdge) {
|
|
94
|
+
return this.#internalConstructor(...arguments)
|
|
95
|
+
}
|
|
96
|
+
}
|