@mirascript/wasm 0.1.59 → 0.1.61
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/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/loader/node.d.ts +2 -1
- package/dist/loader/node.d.ts.map +1 -1
- package/dist/loader/node.js +12 -2
- package/dist/loader/node.js.map +1 -1
- package/dist/loader/web.d.ts +2 -1
- package/dist/loader/web.d.ts.map +1 -1
- package/dist/loader/web.js +3 -2
- package/dist/loader/web.js.map +1 -1
- package/lib/wasm.js +1 -1
- package/lib/wasm_bg.wasm +0 -0
- package/package.json +7 -6
- package/src/index.ts +2 -1
- package/src/loader/node.ts +13 -2
- package/src/loader/web.ts +3 -2
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAyC,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACxG,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAyC,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACxG,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AAGvC,OAAO,EAAE,IAAI,EAAE,CAAC;AAEhB,YAAY;AACZ,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAG1C;AAED,eAAe;AACf,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAmBvE;AAED,WAAW;AACX,MAAM,WAAW,aAAa;IAC1B,WAAW;IACX,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,eAAe;IACf,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;CAC/B;AAuBD,uBAAuB;AACvB,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,aAAa,CAI5F"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as wasm from '../lib/wasm.js';
|
|
2
|
+
import { loadModule } from '#loader';
|
|
2
3
|
export { wasm };
|
|
3
4
|
/** 初始化模块 */
|
|
4
5
|
export async function init() {
|
|
5
|
-
const
|
|
6
|
+
const module = await loadModule();
|
|
6
7
|
await wasm.default({ module_or_path: module });
|
|
7
8
|
}
|
|
8
9
|
/** 创建可重用的配置 */
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,IAAI,EAAE,CAAC;AAEhB,YAAY;AACZ,MAAM,CAAC,KAAK,UAAU,IAAI;IACtB,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,eAAe;AACf,MAAM,UAAU,YAAY,CAAC,MAA6B;IACtD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;IACtC,IAAI,MAAM,YAAY,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;IACjD,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,GAAG,KAAK,MAAM;YAAE,SAAS,CAAC,aAAa;QAC3C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;YAAE,SAAS;QAC1C,IAAI,KAAK,GAAG,MAAM,CAAC,GAAmB,CAAU,CAAC;QACjD,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YACvB,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAkB,CAAU,CAAC;QACxD,CAAC;QACD,IAAI,GAAG,KAAK,8BAA8B,EAAE,CAAC;YACzC,KAAK,GAAG,IAAI,CAAC,0BAA0B,CAAC,KAAmC,CAAU,CAAC;QAC1F,CAAC;QACD,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;YAAE,SAAS;QAC5B,GAAG,CAAC,GAAmB,CAAC,GAAG,KAAK,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAUD,SAAS;AACT,SAAS,WAAW,CAChB,QAAgE,EAChE,MAAS,EACT,MAA4B;IAE5B,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAC7B,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAClC,CAAC;YAAS,CAAC;QACP,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,oBAAoB;QACpB,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,EAAE,CAAC;QACf,CAAC;IACL,CAAC;AACL,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,WAAW,CAAC,MAAmB,EAAE,MAA4B;IACzE,OAAO,OAAO,MAAM,IAAI,QAAQ;QAC5B,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QAC3C,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC"}
|
package/dist/loader/node.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/loader/node.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/loader/node.ts"],"names":[],"mappings":"AAMA,iBAAiB;AACjB,wBAAsB,UAAU,IAAI,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,CAOnE"}
|
package/dist/loader/node.js
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
1
2
|
import fs from 'node:fs/promises';
|
|
2
|
-
|
|
3
|
-
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
import { loadModule as loadWeb } from './web.js';
|
|
5
|
+
/** 加载 wasm 模块 */
|
|
6
|
+
export async function loadModule() {
|
|
7
|
+
const url = new URL('../../lib/wasm_bg.wasm', import.meta.url);
|
|
8
|
+
if (url.protocol !== 'file:') {
|
|
9
|
+
return await loadWeb();
|
|
10
|
+
}
|
|
11
|
+
const file = fileURLToPath(url);
|
|
12
|
+
return await fs.readFile(file);
|
|
13
|
+
}
|
|
4
14
|
//# sourceMappingURL=node.js.map
|
package/dist/loader/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/loader/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/loader/node.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAE9B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAEjD,iBAAiB;AACjB,MAAM,CAAC,KAAK,UAAU,UAAU;IAC5B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/D,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,MAAM,OAAO,EAAE,CAAC;IAC3B,CAAC;IACD,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC"}
|
package/dist/loader/web.d.ts
CHANGED
package/dist/loader/web.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../src/loader/web.ts"],"names":[],"mappings":"AAmEA,
|
|
1
|
+
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../src/loader/web.ts"],"names":[],"mappings":"AAmEA,iBAAiB;AACjB,wBAAsB,UAAU,IAAI,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,CAYnE"}
|
package/dist/loader/web.js
CHANGED
|
@@ -59,7 +59,8 @@ async function body(response) {
|
|
|
59
59
|
throw new Error(`Failed to fetch wasm module: ${resp.status} ${resp.statusText}`);
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
|
-
|
|
62
|
+
/** 加载 wasm 模块 */
|
|
63
|
+
export async function loadModule() {
|
|
63
64
|
const candidates = [loadEsmSh, loadEsm, loadUrl];
|
|
64
65
|
for (const candidate of candidates) {
|
|
65
66
|
try {
|
|
@@ -73,5 +74,5 @@ export const module = /* @__PURE__ */ (async () => {
|
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
76
|
throw new Error('Failed to load wasm module');
|
|
76
|
-
}
|
|
77
|
+
}
|
|
77
78
|
//# sourceMappingURL=web.js.map
|
package/dist/loader/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/loader/web.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/loader/web.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,KAAK,UAAU,OAAO;IAClB,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,iBAAiB;AACjB,KAAK,UAAU,OAAO;IAClB,0CAA0C;IAC1C,8CAA8C;IAC9C,MAAM,CAAC,GAAY,MAAM,MAAM,CAAC,4BAA4B,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAC3F,OAAO,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC;AAED,oBAAoB;AACpB,KAAK,UAAU,SAAS;IACpB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;IACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,OAAO,CAAC,EAAE,CAAC;QAC9F,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC;QAC7B,MAAM,IAAI,OAAO,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,aAAa,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACtG,MAAM;QACV,CAAC;IACL,CAAC;IACD,MAAM,IAAI,kBAAkB,CAAC;IAC7B,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,WAAW;AACX,KAAK,UAAU,GAAG,CAAC,CAAU;IACzB,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,QAAQ,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QAC9C,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IACD,IACI,CAAC,YAAY,GAAG;QAChB,CAAC,OAAO,CAAC,IAAI,QAAQ;YACjB,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EACvG,CAAC;QACC,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,CAAC,YAAY,QAAQ,EAAE,CAAC;QACxB,OAAO,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,WAAW,EAAE,CAAC;QACpD,OAAO,CAAgB,CAAC;IAC5B,CAAC;IACD,IAAI,CAAC,YAAY,WAAW,CAAC,MAAM,EAAE,CAAC;QAClC,OAAO,CAA4B,CAAC;IACxC,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;AAClD,CAAC;AAED,eAAe;AACf,KAAK,UAAU,IAAI,CAAC,QAAsC;IACtD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC;IAC5B,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IAChB,CAAC;SAAM,CAAC;QACJ,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACtF,CAAC;AACL,CAAC;AAED,iBAAiB;AACjB,MAAM,CAAC,KAAK,UAAU,UAAU;IAC5B,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,SAAS,EAAE,CAAC;YAC9B,IAAI,GAAG,IAAI,IAAI;gBAAE,SAAS;YAC1B,OAAO,GAAG,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACL,SAAS;QACb,CAAC;IACL,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;AAClD,CAAC"}
|
package/lib/wasm.js
CHANGED
|
@@ -361,7 +361,7 @@ export function main() {
|
|
|
361
361
|
function __wbg_get_imports() {
|
|
362
362
|
const import0 = {
|
|
363
363
|
__proto__: null,
|
|
364
|
-
|
|
364
|
+
__wbg___wbindgen_throw_81fc77679af83bc6: function(arg0, arg1) {
|
|
365
365
|
throw new Error(getStringFromWasm0(arg0, arg1));
|
|
366
366
|
},
|
|
367
367
|
__wbg_error_a6fa202b58aa1cd3: function(arg0, arg1) {
|
package/lib/wasm_bg.wasm
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mirascript/wasm",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.61",
|
|
4
4
|
"author": "CloudPSS",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "MiraScript compiler for WebAssembly",
|
|
@@ -8,17 +8,18 @@
|
|
|
8
8
|
"main": "dist/index.js",
|
|
9
9
|
"types": "dist/index.d.ts",
|
|
10
10
|
"exports": {
|
|
11
|
-
".": "./dist/index.js"
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
".": "./dist/index.js"
|
|
12
|
+
},
|
|
13
|
+
"imports": {
|
|
14
|
+
"#loader": {
|
|
14
15
|
"node": "./dist/loader/node.js",
|
|
15
16
|
"default": "./dist/loader/web.js"
|
|
16
17
|
}
|
|
17
18
|
},
|
|
18
19
|
"devDependencies": {
|
|
19
|
-
"@types/node": "^25.5.
|
|
20
|
+
"@types/node": "^25.5.2",
|
|
20
21
|
"nodemon": "^3.1.14",
|
|
21
|
-
"@mirascript/constants": "~0.1.
|
|
22
|
+
"@mirascript/constants": "~0.1.61"
|
|
22
23
|
},
|
|
23
24
|
"scripts": {
|
|
24
25
|
"wasm": "wasm-pack build --target web --out-dir ../../packages/wasm/lib --no-pack ../../crates/wasm",
|
package/src/index.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import type { Config, InputMode, DiagnosticPositionEncoding, ScriptInput } from '@mirascript/constants';
|
|
2
2
|
import * as wasm from '../lib/wasm.js';
|
|
3
|
+
import { loadModule } from '#loader';
|
|
3
4
|
|
|
4
5
|
export { wasm };
|
|
5
6
|
|
|
6
7
|
/** 初始化模块 */
|
|
7
8
|
export async function init(): Promise<void> {
|
|
8
|
-
const
|
|
9
|
+
const module = await loadModule();
|
|
9
10
|
await wasm.default({ module_or_path: module });
|
|
10
11
|
}
|
|
11
12
|
|
package/src/loader/node.ts
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
|
|
1
3
|
import fs from 'node:fs/promises';
|
|
4
|
+
import { fileURLToPath } from 'node:url';
|
|
5
|
+
import { loadModule as loadWeb } from './web.js';
|
|
2
6
|
|
|
3
|
-
|
|
4
|
-
export
|
|
7
|
+
/** 加载 wasm 模块 */
|
|
8
|
+
export async function loadModule(): Promise<BufferSource | Response> {
|
|
9
|
+
const url = new URL('../../lib/wasm_bg.wasm', import.meta.url);
|
|
10
|
+
if (url.protocol !== 'file:') {
|
|
11
|
+
return await loadWeb();
|
|
12
|
+
}
|
|
13
|
+
const file = fileURLToPath(url);
|
|
14
|
+
return await fs.readFile(file);
|
|
15
|
+
}
|
package/src/loader/web.ts
CHANGED
|
@@ -65,7 +65,8 @@ async function body(response: Response | Promise<Response>): Promise<Response> {
|
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
|
|
68
|
+
/** 加载 wasm 模块 */
|
|
69
|
+
export async function loadModule(): Promise<BufferSource | Response> {
|
|
69
70
|
const candidates = [loadEsmSh, loadEsm, loadUrl];
|
|
70
71
|
for (const candidate of candidates) {
|
|
71
72
|
try {
|
|
@@ -77,4 +78,4 @@ export const module: Promise<Response | BufferSource> = /* @__PURE__ */ (async (
|
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
80
|
throw new Error('Failed to load wasm module');
|
|
80
|
-
}
|
|
81
|
+
}
|