@bytecodealliance/jco 0.4.0 → 0.4.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.
- package/README.md +3 -2
- package/api.mjs +6 -50
- package/cli.mjs +6 -50
- package/js-component-bindgen-component.core.wasm +0 -0
- package/package.json +4 -4
- package/wasm-tools.core.wasm +0 -0
package/README.md
CHANGED
|
@@ -98,7 +98,7 @@ Add new producer metadata to a component or core Wasm binary.
|
|
|
98
98
|
Usage: jco <command> [options]
|
|
99
99
|
|
|
100
100
|
jco - WebAssembly JS Component Tools
|
|
101
|
-
|
|
101
|
+
JS Component Transpilation Bindgen & Wasm Tools for JS
|
|
102
102
|
|
|
103
103
|
Options:
|
|
104
104
|
-V, --version output the version number
|
|
@@ -109,7 +109,8 @@ Commands:
|
|
|
109
109
|
opt [options] <component-file> optimizes a Wasm component, including running wasm-opt Binaryen optimizations
|
|
110
110
|
wit [options] <component-path> extract the WIT from a WebAssembly Component [wasm-tools component wit]
|
|
111
111
|
print [options] <input> print the WebAssembly WAT text for a binary file [wasm-tools print]
|
|
112
|
-
metadata [options] [module]
|
|
112
|
+
metadata-show [options] [module] extract the producer metadata for a Wasm binary [wasm-tools metadata show]
|
|
113
|
+
metadata-add [options] [module] add producer metadata for a Wasm binary [wasm-tools metadata add]
|
|
113
114
|
parse [options] <input> parses the Wasm text format into a binary file [wasm-tools parse]
|
|
114
115
|
new [options] <core-module> create a WebAssembly component adapted from a component core Wasm [wasm-tools component new]
|
|
115
116
|
embed [options] [core-module] embed the component typing section into a core Wasm module [wasm-tools component embed]
|
package/api.mjs
CHANGED
|
@@ -40303,7 +40303,6 @@ let exports2;
|
|
|
40303
40303
|
let realloc0;
|
|
40304
40304
|
let postReturn0;
|
|
40305
40305
|
let postReturn1;
|
|
40306
|
-
let postReturn2;
|
|
40307
40306
|
const exports = {
|
|
40308
40307
|
parse(arg0) {
|
|
40309
40308
|
const ptr0 = utf8Encode(arg0, realloc0, memory0);
|
|
@@ -40713,7 +40712,7 @@ const exports = {
|
|
|
40713
40712
|
const base9 = dataView(memory0).getInt32(ret + 4, true);
|
|
40714
40713
|
const result9 = [];
|
|
40715
40714
|
for (let i = 0; i < len9; i++) {
|
|
40716
|
-
const base = base9 + i *
|
|
40715
|
+
const base = base9 + i * 36;
|
|
40717
40716
|
let variant2;
|
|
40718
40717
|
switch (dataView(memory0).getUint8(base + 0, true)) {
|
|
40719
40718
|
case 0: {
|
|
@@ -40750,8 +40749,8 @@ const exports = {
|
|
|
40750
40749
|
throw new TypeError('invalid variant discriminant for ModuleMetaType');
|
|
40751
40750
|
}
|
|
40752
40751
|
}
|
|
40753
|
-
const len8 = dataView(memory0).getInt32(base +
|
|
40754
|
-
const base8 = dataView(memory0).getInt32(base +
|
|
40752
|
+
const len8 = dataView(memory0).getInt32(base + 32, true);
|
|
40753
|
+
const base8 = dataView(memory0).getInt32(base + 28, true);
|
|
40755
40754
|
const result8 = [];
|
|
40756
40755
|
for (let i = 0; i < len8; i++) {
|
|
40757
40756
|
const base = base8 + i * 16;
|
|
@@ -40776,6 +40775,7 @@ const exports = {
|
|
|
40776
40775
|
result9.push({
|
|
40777
40776
|
name: variant2,
|
|
40778
40777
|
metaType: variant3,
|
|
40778
|
+
range: [dataView(memory0).getInt32(base + 20, true) >>> 0, dataView(memory0).getInt32(base + 24, true) >>> 0],
|
|
40779
40779
|
producers: result8,
|
|
40780
40780
|
});
|
|
40781
40781
|
}
|
|
@@ -40872,49 +40872,6 @@ const exports = {
|
|
|
40872
40872
|
}
|
|
40873
40873
|
return variant10.val;
|
|
40874
40874
|
},
|
|
40875
|
-
extractCoreModules(arg0) {
|
|
40876
|
-
const val0 = arg0;
|
|
40877
|
-
const len0 = val0.byteLength;
|
|
40878
|
-
const ptr0 = realloc0(0, 0, 1, len0 * 1);
|
|
40879
|
-
const src0 = new Uint8Array(val0.buffer || val0, val0.byteOffset, len0 * 1);
|
|
40880
|
-
(new Uint8Array(memory0.buffer, ptr0, len0 * 1)).set(src0);
|
|
40881
|
-
const ret = exports1['exports#extract-core-modules'](ptr0, len0);
|
|
40882
|
-
let variant3;
|
|
40883
|
-
switch (dataView(memory0).getUint8(ret + 0, true)) {
|
|
40884
|
-
case 0: {
|
|
40885
|
-
const len1 = dataView(memory0).getInt32(ret + 8, true);
|
|
40886
|
-
const base1 = dataView(memory0).getInt32(ret + 4, true);
|
|
40887
|
-
const result1 = [];
|
|
40888
|
-
for (let i = 0; i < len1; i++) {
|
|
40889
|
-
const base = base1 + i * 8;
|
|
40890
|
-
result1.push([dataView(memory0).getInt32(base + 0, true) >>> 0, dataView(memory0).getInt32(base + 4, true) >>> 0]);
|
|
40891
|
-
}
|
|
40892
|
-
variant3= {
|
|
40893
|
-
tag: 'ok',
|
|
40894
|
-
val: result1
|
|
40895
|
-
};
|
|
40896
|
-
break;
|
|
40897
|
-
}
|
|
40898
|
-
case 1: {
|
|
40899
|
-
const ptr2 = dataView(memory0).getInt32(ret + 4, true);
|
|
40900
|
-
const len2 = dataView(memory0).getInt32(ret + 8, true);
|
|
40901
|
-
const result2 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr2, len2));
|
|
40902
|
-
variant3= {
|
|
40903
|
-
tag: 'err',
|
|
40904
|
-
val: result2
|
|
40905
|
-
};
|
|
40906
|
-
break;
|
|
40907
|
-
}
|
|
40908
|
-
default: {
|
|
40909
|
-
throw new TypeError('invalid variant discriminant for expected');
|
|
40910
|
-
}
|
|
40911
|
-
}
|
|
40912
|
-
postReturn2(ret);
|
|
40913
|
-
if (variant3.tag === 'err') {
|
|
40914
|
-
throw new ComponentError(variant3.val);
|
|
40915
|
-
}
|
|
40916
|
-
return variant3.val;
|
|
40917
|
-
},
|
|
40918
40875
|
|
|
40919
40876
|
};
|
|
40920
40877
|
|
|
@@ -40941,7 +40898,6 @@ const $init = (async() => {
|
|
|
40941
40898
|
realloc0 = exports1.cabi_realloc;
|
|
40942
40899
|
postReturn0 = exports1['cabi_post_exports#component-embed'];
|
|
40943
40900
|
postReturn1 = exports1['cabi_post_exports#metadata-show'];
|
|
40944
|
-
postReturn2 = exports1['cabi_post_exports#extract-core-modules'];
|
|
40945
40901
|
})();
|
|
40946
40902
|
|
|
40947
40903
|
await $init;
|
|
@@ -41004,7 +40960,7 @@ _obj_wasm_tools_js__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies_
|
|
|
41004
40960
|
|
|
41005
40961
|
|
|
41006
40962
|
|
|
41007
|
-
const {
|
|
40963
|
+
const { metadataShow, print } = _obj_wasm_tools_js__WEBPACK_IMPORTED_MODULE_0__/* .exports */ .I;
|
|
41008
40964
|
|
|
41009
40965
|
let WASM_OPT;
|
|
41010
40966
|
try {
|
|
@@ -41060,7 +41016,7 @@ async function optimizeComponent (componentBytes, opts) {
|
|
|
41060
41016
|
const showSpinner = (0,_common_js__WEBPACK_IMPORTED_MODULE_4__/* .getShowSpinner */ .AZ)();
|
|
41061
41017
|
let spinner;
|
|
41062
41018
|
try {
|
|
41063
|
-
const coreModules =
|
|
41019
|
+
const coreModules = metadataShow(componentBytes).slice(1, -1).map(({ range }) => range);
|
|
41064
41020
|
|
|
41065
41021
|
let completed = 0;
|
|
41066
41022
|
const spinnerText = () => chalk_template__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z`{cyan ${completed} / ${coreModules.length}} Running Binaryen on WebAssembly Component Internal Core Modules \n`;
|
package/cli.mjs
CHANGED
|
@@ -43627,7 +43627,6 @@ let exports2;
|
|
|
43627
43627
|
let realloc0;
|
|
43628
43628
|
let postReturn0;
|
|
43629
43629
|
let postReturn1;
|
|
43630
|
-
let postReturn2;
|
|
43631
43630
|
const exports = {
|
|
43632
43631
|
parse(arg0) {
|
|
43633
43632
|
const ptr0 = utf8Encode(arg0, realloc0, memory0);
|
|
@@ -44037,7 +44036,7 @@ const exports = {
|
|
|
44037
44036
|
const base9 = dataView(memory0).getInt32(ret + 4, true);
|
|
44038
44037
|
const result9 = [];
|
|
44039
44038
|
for (let i = 0; i < len9; i++) {
|
|
44040
|
-
const base = base9 + i *
|
|
44039
|
+
const base = base9 + i * 36;
|
|
44041
44040
|
let variant2;
|
|
44042
44041
|
switch (dataView(memory0).getUint8(base + 0, true)) {
|
|
44043
44042
|
case 0: {
|
|
@@ -44074,8 +44073,8 @@ const exports = {
|
|
|
44074
44073
|
throw new TypeError('invalid variant discriminant for ModuleMetaType');
|
|
44075
44074
|
}
|
|
44076
44075
|
}
|
|
44077
|
-
const len8 = dataView(memory0).getInt32(base +
|
|
44078
|
-
const base8 = dataView(memory0).getInt32(base +
|
|
44076
|
+
const len8 = dataView(memory0).getInt32(base + 32, true);
|
|
44077
|
+
const base8 = dataView(memory0).getInt32(base + 28, true);
|
|
44079
44078
|
const result8 = [];
|
|
44080
44079
|
for (let i = 0; i < len8; i++) {
|
|
44081
44080
|
const base = base8 + i * 16;
|
|
@@ -44100,6 +44099,7 @@ const exports = {
|
|
|
44100
44099
|
result9.push({
|
|
44101
44100
|
name: variant2,
|
|
44102
44101
|
metaType: variant3,
|
|
44102
|
+
range: [dataView(memory0).getInt32(base + 20, true) >>> 0, dataView(memory0).getInt32(base + 24, true) >>> 0],
|
|
44103
44103
|
producers: result8,
|
|
44104
44104
|
});
|
|
44105
44105
|
}
|
|
@@ -44196,49 +44196,6 @@ const exports = {
|
|
|
44196
44196
|
}
|
|
44197
44197
|
return variant10.val;
|
|
44198
44198
|
},
|
|
44199
|
-
extractCoreModules(arg0) {
|
|
44200
|
-
const val0 = arg0;
|
|
44201
|
-
const len0 = val0.byteLength;
|
|
44202
|
-
const ptr0 = realloc0(0, 0, 1, len0 * 1);
|
|
44203
|
-
const src0 = new Uint8Array(val0.buffer || val0, val0.byteOffset, len0 * 1);
|
|
44204
|
-
(new Uint8Array(memory0.buffer, ptr0, len0 * 1)).set(src0);
|
|
44205
|
-
const ret = exports1['exports#extract-core-modules'](ptr0, len0);
|
|
44206
|
-
let variant3;
|
|
44207
|
-
switch (dataView(memory0).getUint8(ret + 0, true)) {
|
|
44208
|
-
case 0: {
|
|
44209
|
-
const len1 = dataView(memory0).getInt32(ret + 8, true);
|
|
44210
|
-
const base1 = dataView(memory0).getInt32(ret + 4, true);
|
|
44211
|
-
const result1 = [];
|
|
44212
|
-
for (let i = 0; i < len1; i++) {
|
|
44213
|
-
const base = base1 + i * 8;
|
|
44214
|
-
result1.push([dataView(memory0).getInt32(base + 0, true) >>> 0, dataView(memory0).getInt32(base + 4, true) >>> 0]);
|
|
44215
|
-
}
|
|
44216
|
-
variant3= {
|
|
44217
|
-
tag: 'ok',
|
|
44218
|
-
val: result1
|
|
44219
|
-
};
|
|
44220
|
-
break;
|
|
44221
|
-
}
|
|
44222
|
-
case 1: {
|
|
44223
|
-
const ptr2 = dataView(memory0).getInt32(ret + 4, true);
|
|
44224
|
-
const len2 = dataView(memory0).getInt32(ret + 8, true);
|
|
44225
|
-
const result2 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr2, len2));
|
|
44226
|
-
variant3= {
|
|
44227
|
-
tag: 'err',
|
|
44228
|
-
val: result2
|
|
44229
|
-
};
|
|
44230
|
-
break;
|
|
44231
|
-
}
|
|
44232
|
-
default: {
|
|
44233
|
-
throw new TypeError('invalid variant discriminant for expected');
|
|
44234
|
-
}
|
|
44235
|
-
}
|
|
44236
|
-
postReturn2(ret);
|
|
44237
|
-
if (variant3.tag === 'err') {
|
|
44238
|
-
throw new ComponentError(variant3.val);
|
|
44239
|
-
}
|
|
44240
|
-
return variant3.val;
|
|
44241
|
-
},
|
|
44242
44199
|
|
|
44243
44200
|
};
|
|
44244
44201
|
|
|
@@ -44265,7 +44222,6 @@ const $init = (async() => {
|
|
|
44265
44222
|
realloc0 = exports1.cabi_realloc;
|
|
44266
44223
|
postReturn0 = exports1['cabi_post_exports#component-embed'];
|
|
44267
44224
|
postReturn1 = exports1['cabi_post_exports#metadata-show'];
|
|
44268
|
-
postReturn2 = exports1['cabi_post_exports#extract-core-modules'];
|
|
44269
44225
|
})();
|
|
44270
44226
|
|
|
44271
44227
|
await $init;
|
|
@@ -44298,7 +44254,7 @@ _obj_wasm_tools_js__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies_
|
|
|
44298
44254
|
|
|
44299
44255
|
|
|
44300
44256
|
|
|
44301
|
-
const {
|
|
44257
|
+
const { metadataShow, print } = _obj_wasm_tools_js__WEBPACK_IMPORTED_MODULE_0__/* .exports */ .I;
|
|
44302
44258
|
|
|
44303
44259
|
let WASM_OPT;
|
|
44304
44260
|
try {
|
|
@@ -44354,7 +44310,7 @@ async function optimizeComponent (componentBytes, opts) {
|
|
|
44354
44310
|
const showSpinner = (0,_common_js__WEBPACK_IMPORTED_MODULE_4__/* .getShowSpinner */ .AZ)();
|
|
44355
44311
|
let spinner;
|
|
44356
44312
|
try {
|
|
44357
|
-
const coreModules =
|
|
44313
|
+
const coreModules = metadataShow(componentBytes).slice(1, -1).map(({ range }) => range);
|
|
44358
44314
|
|
|
44359
44315
|
let completed = 0;
|
|
44360
44316
|
const spinnerText = () => chalk_template__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z`{cyan ${completed} / ${coreModules.length}} Running Binaryen on WebAssembly Component Internal Core Modules \n`;
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bytecodealliance/jco",
|
|
3
3
|
"description": "JavaScript tooling for working with WebAssembly Components",
|
|
4
|
-
"version": "0.4.
|
|
4
|
+
"version": "0.4.1",
|
|
5
5
|
"exports": "./api.mjs",
|
|
6
6
|
"types": "api.d.ts",
|
|
7
7
|
"author": "Guy Bedford",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
},
|
|
11
11
|
"repository": {
|
|
12
12
|
"type": "git",
|
|
13
|
-
"url": "git+https://github.com/bytecodealliance/
|
|
13
|
+
"url": "git+https://github.com/bytecodealliance/jco.git"
|
|
14
14
|
},
|
|
15
15
|
"keywords": [
|
|
16
16
|
"Wasm",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
],
|
|
20
20
|
"license": "(Apache-2.0 WITH LLVM-exception)",
|
|
21
21
|
"bugs": {
|
|
22
|
-
"url": "https://github.com/bytecodealliance/
|
|
22
|
+
"url": "https://github.com/bytecodealliance/jco/issues"
|
|
23
23
|
},
|
|
24
|
-
"homepage": "https://github.com/bytecodealliance/
|
|
24
|
+
"homepage": "https://github.com/bytecodealliance/jco#readme"
|
|
25
25
|
}
|
package/wasm-tools.core.wasm
CHANGED
|
Binary file
|