@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.
@@ -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;AAEvC,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"}
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 { module } = await import('@mirascript/wasm/loader');
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;AAEvC,OAAO,EAAE,IAAI,EAAE,CAAC;AAEhB,YAAY;AACZ,MAAM,CAAC,KAAK,UAAU,IAAI;IACtB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAC3D,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"}
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"}
@@ -1,2 +1,3 @@
1
- export declare const module: Promise<BufferSource>;
1
+ /** 加载 wasm 模块 */
2
+ export declare function loadModule(): Promise<BufferSource | Response>;
2
3
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/loader/node.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM,EAAE,OAAO,CAAC,YAAY,CAAqC,CAAC"}
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"}
@@ -1,4 +1,14 @@
1
+ /// <reference types="node" />
1
2
  import fs from 'node:fs/promises';
2
- const file = /* @__PURE__ */ new URL('../../lib/wasm_bg.wasm', import.meta.url);
3
- export const module = /* @__PURE__ */ fs.readFile(file);
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
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/loader/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,GAAG,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChF,MAAM,CAAC,MAAM,MAAM,GAA0B,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,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"}
@@ -1,2 +1,3 @@
1
- export declare const module: Promise<Response | BufferSource>;
1
+ /** 加载 wasm 模块 */
2
+ export declare function loadModule(): Promise<BufferSource | Response>;
2
3
  //# sourceMappingURL=web.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../src/loader/web.ts"],"names":[],"mappings":"AAmEA,eAAO,MAAM,MAAM,EAAE,OAAO,CAAC,QAAQ,GAAG,YAAY,CAYhD,CAAC"}
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"}
@@ -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
- export const module = /* @__PURE__ */ (async () => {
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
@@ -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":"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"}
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
- __wbg___wbindgen_throw_bd5a70920abf0236: function(arg0, arg1) {
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.59",
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
- "./types": "./dist/types.js",
13
- "./loader": {
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.0",
20
+ "@types/node": "^25.5.2",
20
21
  "nodemon": "^3.1.14",
21
- "@mirascript/constants": "~0.1.59"
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 { module } = await import('@mirascript/wasm/loader');
9
+ const module = await loadModule();
9
10
  await wasm.default({ module_or_path: module });
10
11
  }
11
12
 
@@ -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
- const file = /* @__PURE__ */ new URL('../../lib/wasm_bg.wasm', import.meta.url);
4
- export const module: Promise<BufferSource> = /* @__PURE__ */ fs.readFile(file);
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
- export const module: Promise<Response | BufferSource> = /* @__PURE__ */ (async () => {
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
+ }