@mirascript/mirascript 0.1.19 → 0.1.20
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/{chunk-5AEWM4W6.js → chunk-4T5YE7LC.js} +241 -177
- package/dist/chunk-4T5YE7LC.js.map +6 -0
- package/dist/{chunk-RLWIIOH5.js → chunk-BV5YXQYA.js} +1 -1
- package/dist/{chunk-RLWIIOH5.js.map → chunk-BV5YXQYA.js.map} +1 -1
- package/dist/chunk-OVTSNACH.js +152 -0
- package/dist/chunk-OVTSNACH.js.map +6 -0
- package/dist/{chunk-BFSB6SQK.js → chunk-ZKL4MRMP.js} +77 -185
- package/dist/chunk-ZKL4MRMP.js.map +6 -0
- package/dist/cli/index.js +6 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/compiler/emit/constants.d.ts +1 -2
- package/dist/compiler/emit/constants.d.ts.map +1 -1
- package/dist/compiler/emit/consts.d.ts +2 -2
- package/dist/compiler/emit/consts.d.ts.map +1 -1
- package/dist/compiler/emit/index.d.ts +2 -3
- package/dist/compiler/emit/index.d.ts.map +1 -1
- package/dist/compiler/emit/sourcemap.d.ts +1 -2
- package/dist/compiler/emit/sourcemap.d.ts.map +1 -1
- package/dist/compiler/emit-script.d.ts +10 -0
- package/dist/compiler/emit-script.d.ts.map +1 -0
- package/dist/compiler/generate-bytecode.d.ts +4 -2
- package/dist/compiler/generate-bytecode.d.ts.map +1 -1
- package/dist/compiler/index.d.ts +1 -6
- package/dist/compiler/index.d.ts.map +1 -1
- package/dist/compiler/load-module.d.ts +2 -0
- package/dist/compiler/load-module.d.ts.map +1 -0
- package/dist/compiler/worker.js +1 -1
- package/dist/helpers/constants.d.ts +2 -0
- package/dist/helpers/constants.d.ts.map +1 -1
- package/dist/helpers/serialize.d.ts.map +1 -1
- package/dist/helpers/utils.d.ts.map +1 -1
- package/dist/index.js +6 -11
- package/dist/subtle.d.ts +3 -1
- package/dist/subtle.d.ts.map +1 -1
- package/dist/subtle.js +3 -3
- package/dist/vm/checkpoint.d.ts +1 -1
- package/dist/vm/checkpoint.d.ts.map +1 -1
- package/dist/vm/helpers.d.ts +6 -1
- package/dist/vm/helpers.d.ts.map +1 -1
- package/dist/vm/lib/global/json.d.ts.map +1 -1
- package/dist/vm/lib/helpers.d.ts +1 -1
- package/dist/vm/lib/helpers.d.ts.map +1 -1
- package/dist/vm/types/context.d.ts +7 -16
- package/dist/vm/types/context.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/compiler/emit/constants.ts +1 -2
- package/src/compiler/emit/consts.ts +166 -29
- package/src/compiler/emit/index.ts +40 -32
- package/src/compiler/emit/sourcemap.ts +21 -76
- package/src/compiler/emit-script.ts +30 -0
- package/src/compiler/generate-bytecode.ts +5 -8
- package/src/compiler/index.ts +2 -30
- package/src/compiler/load-module.ts +3 -0
- package/src/helpers/constants.ts +2 -0
- package/src/helpers/serialize.ts +1 -4
- package/src/helpers/utils.ts +2 -7
- package/src/subtle.ts +3 -1
- package/src/vm/checkpoint.ts +42 -17
- package/src/vm/helpers.ts +12 -5
- package/src/vm/lib/global/json.ts +2 -0
- package/src/vm/lib/helpers.ts +2 -1
- package/src/vm/types/context.ts +42 -29
- package/src/vm/types/wrapper.ts +3 -3
- package/dist/chunk-5AEWM4W6.js.map +0 -6
- package/dist/chunk-BFSB6SQK.js.map +0 -6
- package/dist/chunk-RIT53WVY.js +0 -1
- package/dist/chunk-RIT53WVY.js.map +0 -6
- package/dist/compiler/emit/globals.d.ts +0 -17
- package/dist/compiler/emit/globals.d.ts.map +0 -1
- package/src/compiler/emit/globals.ts +0 -39
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { VmPrimitive } from '../../vm/index.js';
|
|
2
2
|
/** 将值转为 JS 字面量 */
|
|
3
3
|
export declare function toJsLiteral(value: VmPrimitive | undefined): string;
|
|
4
|
-
/**
|
|
5
|
-
export declare function
|
|
4
|
+
/** 读取常量表 */
|
|
5
|
+
export declare function readConsts(constChunk: Uint8Array): VmPrimitive[];
|
|
6
6
|
//# sourceMappingURL=consts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/compiler/emit/consts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,kBAAkB;AAClB,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAalE;
|
|
1
|
+
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/compiler/emit/consts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,kBAAkB;AAClB,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAalE;AAwHD,YAAY;AACZ,wBAAgB,UAAU,CAAC,UAAU,EAAE,UAAU,GAAG,WAAW,EAAE,CA8ChE"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { VmPrimitive } from '../../vm/index.js';
|
|
2
2
|
import type { ScriptInput, TranspileOptions } from '../types.js';
|
|
3
3
|
import type { IRange } from '../diagnostic.js';
|
|
4
|
-
import { type GlobalMap } from './globals.js';
|
|
5
4
|
/** 生成代码 */
|
|
6
5
|
export declare function emit(source: ScriptInput, chunk: Uint8Array, sourcemaps: readonly IRange[], options: TranspileOptions): string;
|
|
7
6
|
/** 代码生成 */
|
|
@@ -14,7 +13,6 @@ export declare class Emitter {
|
|
|
14
13
|
readonly pretty: boolean;
|
|
15
14
|
readonly chunkSize: number;
|
|
16
15
|
readonly codeSize: number;
|
|
17
|
-
private readonly constReader;
|
|
18
16
|
/** 读取常量表 */
|
|
19
17
|
private readConsts;
|
|
20
18
|
readonly constVals: VmPrimitive[];
|
|
@@ -24,9 +22,10 @@ export declare class Emitter {
|
|
|
24
22
|
private codeOffset;
|
|
25
23
|
private closureCounter;
|
|
26
24
|
private identCounter;
|
|
25
|
+
/** 记录函数声明所在位置 */
|
|
26
|
+
private readonly functions;
|
|
27
27
|
/** 制造缩进 */
|
|
28
28
|
private ident;
|
|
29
|
-
readonly globals: GlobalMap;
|
|
30
29
|
/** 读取全局变量 */
|
|
31
30
|
private rg;
|
|
32
31
|
readonly codeLines: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/compiler/emit/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/compiler/emit/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAK/C,WAAW;AACX,wBAAgB,IAAI,CAChB,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,OAAO,EAAE,gBAAgB,GAC1B,MAAM,CAKR;AAYD,WAAW;AACX,qBAAa,OAAO;IAEZ,QAAQ,CAAC,MAAM,EAAE,WAAW;IAC5B,QAAQ,CAAC,KAAK,EAAE,UAAU;IAC1B,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE;IACtC,QAAQ,CAAC,OAAO,EAAE,gBAAgB;gBAHzB,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,OAAO,EAAE,gBAAgB;IActC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,YAAY;IACZ,OAAO,CAAC,UAAU;IAMlB,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAM;IAElC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAW;IACtC,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,YAAY,CAAK;IACzB,iBAAiB;IACjB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAE1C,WAAW;IACX,OAAO,CAAC,KAAK;IAKb,aAAa;IACb,OAAO,CAAC,EAAE;IAWV,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAM;IAElC,oBAAoB;IACpB,OAAO,CAAC,EAAE;IAKV,qBAAqB;IACrB,OAAO,CAAC,EAAE;IAIV,oBAAoB;IACpB,OAAO,CAAC,SAAS;IAOjB,oBAAoB;IACpB,OAAO,CAAC,SAAS;IAKjB,WAAW;IACX,OAAO,CAAC,WAAW;IAmBnB,YAAY;IACZ,OAAO,CAAC,YAAY;IAmBpB,yBAAyB;IACzB,OAAO,CAAC,UAAU;IAyBlB,gBAAgB;IAChB,OAAO,CAAC,UAAU;IAoElB,eAAe;IACf,OAAO,CAAC,SAAS;IAuDjB,WAAW;IACX,OAAO,CAAC,QAAQ;IAsZhB,eAAe;IACf,IAAI,IAAI,IAAI;IAKZ,YAAY;IACZ,YAAY,IAAI,IAAI;CAOvB"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { IRange } from '../diagnostic.js';
|
|
2
2
|
import type { ScriptInput, TranspileOptions } from '../types.js';
|
|
3
|
-
import type { GlobalMap } from './globals.js';
|
|
4
3
|
/** 创建源映射 */
|
|
5
|
-
export declare function createSourceMap(source: ScriptInput | undefined, sourcemaps: readonly IRange[], codeLines:
|
|
4
|
+
export declare function createSourceMap(source: ScriptInput | undefined, sourcemaps: readonly IRange[], codeLines: string[], functions: readonly number[], options: TranspileOptions): void;
|
|
6
5
|
//# sourceMappingURL=sourcemap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sourcemap.d.ts","sourceRoot":"","sources":["../../../src/compiler/emit/sourcemap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"sourcemap.d.ts","sourceRoot":"","sources":["../../../src/compiler/emit/sourcemap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAoCjE,YAAY;AACZ,wBAAgB,eAAe,CAC3B,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,OAAO,EAAE,gBAAgB,GAC1B,IAAI,CAoEN"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ScriptInput, TranspileOptions } from './types.js';
|
|
2
|
+
import type { VmBytecodeResult } from './generate-bytecode.js';
|
|
3
|
+
import { type VmScript } from './create-script.js';
|
|
4
|
+
/** 报告编译错误 */
|
|
5
|
+
export declare function reportDiagnostic(source: ScriptInput, diagnostics: Uint32Array, fileName: string | undefined): never;
|
|
6
|
+
/**
|
|
7
|
+
* 生成 MiraScript 对应的 JavaScript 代码
|
|
8
|
+
*/
|
|
9
|
+
export declare function emitScript(source: ScriptInput, [code, diagnostics]: VmBytecodeResult, options: TranspileOptions): VmScript;
|
|
10
|
+
//# sourceMappingURL=emit-script.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emit-script.d.ts","sourceRoot":"","sources":["../../src/compiler/emit-script.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAGjE,aAAa;AACb,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,CAInH;AAED;;GAEG;AACH,wBAAgB,UAAU,CACtB,MAAM,EAAE,WAAW,EACnB,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,gBAAgB,EACrC,OAAO,EAAE,gBAAgB,GAC1B,QAAQ,CASV"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import type { CompileOptions, ScriptInput } from './types.js';
|
|
2
|
+
/** MiraScript 字节码 */
|
|
3
|
+
export type VmBytecodeResult = [code: Uint8Array | undefined, diagnostics: Uint32Array];
|
|
2
4
|
/**
|
|
3
5
|
* 生成 MiraScript 字节码
|
|
4
6
|
*/
|
|
5
|
-
export declare function generateBytecodeSync(script: ScriptInput, options: CompileOptions):
|
|
7
|
+
export declare function generateBytecodeSync(script: ScriptInput, options: CompileOptions): VmBytecodeResult;
|
|
6
8
|
/**
|
|
7
9
|
* 生成 MiraScript 字节码
|
|
8
10
|
*/
|
|
9
|
-
export declare function generateBytecode(script: ScriptInput, options: CompileOptions): Promise<
|
|
11
|
+
export declare function generateBytecode(script: ScriptInput, options: CompileOptions): Promise<VmBytecodeResult>;
|
|
10
12
|
//# sourceMappingURL=generate-bytecode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-bytecode.d.ts","sourceRoot":"","sources":["../../src/compiler/generate-bytecode.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D
|
|
1
|
+
{"version":3,"file":"generate-bytecode.d.ts","sourceRoot":"","sources":["../../src/compiler/generate-bytecode.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D,qBAAqB;AACrB,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;AAExF;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,GAAG,gBAAgB,CAInG;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAO9G"}
|
package/dist/compiler/index.d.ts
CHANGED
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
import type { ScriptInput, TranspileOptions } from './types.js';
|
|
2
2
|
import { type VmScript } from './create-script.js';
|
|
3
|
-
import
|
|
4
|
-
export { generateBytecode, generateBytecodeSync };
|
|
3
|
+
import './load-module.js';
|
|
5
4
|
export * from './types.js';
|
|
6
5
|
export type { VmScript };
|
|
7
|
-
/**
|
|
8
|
-
* 生成 MiraScript 对应的 JavaScript 代码
|
|
9
|
-
*/
|
|
10
|
-
export declare function emitScript(source: ScriptInput, [code, diagnostics]: [Uint8Array | undefined, Uint32Array], options: TranspileOptions): VmScript;
|
|
11
6
|
/**
|
|
12
7
|
* 生成 MiraScript 对应的 JavaScript 代码
|
|
13
8
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compiler/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compiler/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAKjE,OAAO,kBAAkB,CAAC;AAE1B,cAAc,YAAY,CAAC;AAC3B,YAAY,EAAE,QAAQ,EAAE,CAAC;AAKzB;;GAEG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAmBhH;AACD;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAE,gBAAqB,GAAG,QAAQ,CAOrG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-module.d.ts","sourceRoot":"","sources":["../../src/compiler/load-module.ts"],"names":[],"mappings":""}
|
package/dist/compiler/worker.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export declare const REG_IDENTIFIER: RegExp;
|
|
2
2
|
export declare const REG_ORDINAL: RegExp;
|
|
3
|
+
export declare const REG_IDENTIFIER_FULL: RegExp;
|
|
4
|
+
export declare const REG_ORDINAL_FULL: RegExp;
|
|
3
5
|
export declare const REG_WHITESPACE: RegExp;
|
|
4
6
|
export declare const REG_HEX: RegExp;
|
|
5
7
|
export declare const REG_OCT: RegExp;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/helpers/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,QAAkD,CAAC;AAC9E,eAAO,MAAM,WAAW,QAC2I,CAAC;AACpK,eAAO,MAAM,cAAc,QAAmB,CAAC;AAC/C,eAAO,MAAM,OAAO,QAAkC,CAAC;AACvD,eAAO,MAAM,OAAO,QAAsB,CAAC;AAC3C,eAAO,MAAM,OAAO,QAAoB,CAAC;AACzC,eAAO,MAAM,UAAU,QAAiD,CAAC;AACzE,eAAO,MAAM,mBAAmB,QAAc,CAAC;AAE/C,eAAO,MAAM,SAAS,eAAqC,CAAC;AAC5D,eAAO,MAAM,WAAW,eAAuC,CAAC;AAChE,eAAO,MAAM,gBAAgB,eAA6C,CAAC;AAC3E,eAAO,MAAM,UAAU,eAAsC,CAAC;AAC9D,eAAO,MAAM,SAAS,eAAqC,CAAC;AAC5D,eAAO,MAAM,SAAS,eAAqC,CAAC;AAC5D,eAAO,MAAM,UAAU,eAAsC,CAAC;AAE9D,eAAO,MAAM,cAAc,kBAAkB,CAAC;AAC9C,eAAO,MAAM,0BAA0B,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/helpers/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,QAAkD,CAAC;AAC9E,eAAO,MAAM,WAAW,QAC2I,CAAC;AACpK,eAAO,MAAM,mBAAmB,QAAiE,CAAC;AAClG,eAAO,MAAM,gBAAgB,QAA2D,CAAC;AACzF,eAAO,MAAM,cAAc,QAAmB,CAAC;AAC/C,eAAO,MAAM,OAAO,QAAkC,CAAC;AACvD,eAAO,MAAM,OAAO,QAAsB,CAAC;AAC3C,eAAO,MAAM,OAAO,QAAoB,CAAC;AACzC,eAAO,MAAM,UAAU,QAAiD,CAAC;AACzE,eAAO,MAAM,mBAAmB,QAAc,CAAC;AAE/C,eAAO,MAAM,SAAS,eAAqC,CAAC;AAC5D,eAAO,MAAM,WAAW,eAAuC,CAAC;AAChE,eAAO,MAAM,gBAAgB,eAA6C,CAAC;AAC3E,eAAO,MAAM,UAAU,eAAsC,CAAC;AAC9D,eAAO,MAAM,SAAS,eAAqC,CAAC;AAC5D,eAAO,MAAM,SAAS,eAAqC,CAAC;AAC5D,eAAO,MAAM,UAAU,eAAsC,CAAC;AAE9D,eAAO,MAAM,cAAc,kBAAkB,CAAC;AAC9C,eAAO,MAAM,0BAA0B,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/helpers/serialize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAY/F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/helpers/serialize.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/helpers/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAQ,OAAO,gCAAU,CAAC;AACjC,eAAO,MAAQ,QAAQ,gCAAE,KAAK,gCAAE,SAAS,gCAAE,aAAa,8BAAW,CAAC;AACpE,eAAO,MAAQ,MAAM,yNAAE,IAAI;;;GAAE,MAAM;;;;GAAE,OAAO;;;;GAAE,MAAM;;;;;;;;;;;;;GAAE,cAAc,sBAAE,WAAW,2FAAE,cAAc;;;;6BAAW,CAAC;AAC7G,eAAO,MAAQ,KAAK,sBAAY,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/helpers/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAQ,OAAO,gCAAU,CAAC;AACjC,eAAO,MAAQ,QAAQ,gCAAE,KAAK,gCAAE,SAAS,gCAAE,aAAa,8BAAW,CAAC;AACpE,eAAO,MAAQ,MAAM,yNAAE,IAAI;;;GAAE,MAAM;;;;GAAE,OAAO;;;;GAAE,MAAM;;;;;;;;;;;;;GAAE,cAAc,sBAAE,WAAW,2FAAE,cAAc;;;;6BAAW,CAAC;AAC7G,eAAO,MAAQ,KAAK,sBAAY,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAGxB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,21 +1,19 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {
|
|
2
|
+
compile,
|
|
3
|
+
compileSync
|
|
4
|
+
} from "./chunk-OVTSNACH.js";
|
|
2
5
|
import {
|
|
3
6
|
VmExtern,
|
|
4
7
|
VmFunction,
|
|
5
8
|
VmModule,
|
|
6
|
-
compile,
|
|
7
|
-
compileSync,
|
|
8
9
|
configCheckpoint,
|
|
9
10
|
createVmContext,
|
|
10
11
|
defineVmContextValue,
|
|
11
|
-
emitScript,
|
|
12
12
|
unwrapFromVmValue,
|
|
13
13
|
wrapToVmValue
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-ZKL4MRMP.js";
|
|
15
15
|
import {
|
|
16
16
|
VmError,
|
|
17
|
-
generateBytecode,
|
|
18
|
-
generateBytecodeSync,
|
|
19
17
|
getVmFunctionInfo,
|
|
20
18
|
isVmAny,
|
|
21
19
|
isVmArray,
|
|
@@ -35,7 +33,7 @@ import {
|
|
|
35
33
|
isVmValue,
|
|
36
34
|
isVmWrapper,
|
|
37
35
|
serialize
|
|
38
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-4T5YE7LC.js";
|
|
39
37
|
export {
|
|
40
38
|
VmError,
|
|
41
39
|
VmExtern,
|
|
@@ -46,9 +44,6 @@ export {
|
|
|
46
44
|
configCheckpoint,
|
|
47
45
|
createVmContext,
|
|
48
46
|
defineVmContextValue,
|
|
49
|
-
emitScript,
|
|
50
|
-
generateBytecode,
|
|
51
|
-
generateBytecodeSync,
|
|
52
47
|
getVmFunctionInfo,
|
|
53
48
|
isVmAny,
|
|
54
49
|
isVmArray,
|
package/dist/subtle.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import './compiler/load-module.js';
|
|
1
2
|
export * as constants from './helpers/constants.js';
|
|
2
3
|
export * as convert from './helpers/convert/index.js';
|
|
3
4
|
export { DefaultVmContext } from './vm/types/context.js';
|
|
@@ -5,7 +6,8 @@ export * as operations from './vm/operations.js';
|
|
|
5
6
|
export { display as serializeForDisplay, serialize, serializeNil, serializeBoolean, serializeNumber, serializeString, serializeRecordKey, serializeArray, serializeRecord, type SerializeOptions, } from './helpers/serialize.js';
|
|
6
7
|
export { lib } from './vm/lib/index.js';
|
|
7
8
|
export * from './compiler/diagnostic.js';
|
|
8
|
-
export {
|
|
9
|
+
export { emitScript } from './compiler/emit-script.js';
|
|
10
|
+
export { generateBytecode, generateBytecodeSync, type VmBytecodeResult } from './compiler/generate-bytecode.js';
|
|
9
11
|
/** 所有 MiraScript 关键字 */
|
|
10
12
|
export declare let keywords: () => readonly string[];
|
|
11
13
|
//# sourceMappingURL=subtle.d.ts.map
|
package/dist/subtle.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subtle.d.ts","sourceRoot":"","sources":["../src/subtle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"subtle.d.ts","sourceRoot":"","sources":["../src/subtle.ts"],"names":[],"mappings":"AACA,OAAO,2BAA2B,CAAC;AAEnC,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,OAAO,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,EACH,OAAO,IAAI,mBAAmB,EAC9B,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,KAAK,gBAAgB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEhH,wBAAwB;AACxB,eAAO,IAAI,QAAQ,EAAE,MAAM,SAAS,MAAM,EAIzC,CAAC"}
|
package/dist/subtle.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
keywords
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BV5YXQYA.js";
|
|
4
4
|
import {
|
|
5
5
|
DefaultVmContext,
|
|
6
6
|
convert_exports,
|
|
7
7
|
emitScript,
|
|
8
8
|
lib,
|
|
9
9
|
operations_exports
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ZKL4MRMP.js";
|
|
11
11
|
import {
|
|
12
12
|
DiagnosticCode,
|
|
13
13
|
constants_exports,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
serializeRecord,
|
|
26
26
|
serializeRecordKey,
|
|
27
27
|
serializeString
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-4T5YE7LC.js";
|
|
29
29
|
export {
|
|
30
30
|
DefaultVmContext,
|
|
31
31
|
DiagnosticCode,
|
package/dist/vm/checkpoint.d.ts
CHANGED
|
@@ -5,5 +5,5 @@ export declare function CpEnter(): void;
|
|
|
5
5
|
/** 检查点 */
|
|
6
6
|
export declare function CpExit(): void;
|
|
7
7
|
/** 设置检查点超时时间 */
|
|
8
|
-
export declare function configCheckpoint(timeout?: number): void;
|
|
8
|
+
export declare function configCheckpoint(timeout?: number, checkInterval?: number): void;
|
|
9
9
|
//# sourceMappingURL=checkpoint.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkpoint.d.ts","sourceRoot":"","sources":["../../src/vm/checkpoint.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"checkpoint.d.ts","sourceRoot":"","sources":["../../src/vm/checkpoint.ts"],"names":[],"mappings":"AAkBA,UAAU;AACV,wBAAgB,EAAE,IAAI,IAAI,CAczB;AACD,UAAU;AACV,wBAAgB,OAAO,IAAI,IAAI,CAU9B;AACD,UAAU;AACV,wBAAgB,MAAM,IAAI,IAAI,CAQ7B;AAGD,gBAAgB;AAChB,wBAAgB,gBAAgB,CAC5B,OAAO,GAAE,MAA2B,EACpC,aAAa,GAAE,MAA4B,GAC5C,IAAI,CAaN"}
|
package/dist/vm/helpers.d.ts
CHANGED
|
@@ -3,10 +3,15 @@ import { type VmContext } from './types/context.js';
|
|
|
3
3
|
import type { VmConst, VmAny, VmArray, VmValue } from './types/index.js';
|
|
4
4
|
import { VmFunction } from './types/function.js';
|
|
5
5
|
export { Cp, CpEnter, CpExit } from './checkpoint.js';
|
|
6
|
+
/** 过滤剩余参数数组 */
|
|
6
7
|
export declare const Vargs: (varags: VmAny[]) => VmArray;
|
|
8
|
+
/** 构造 record | array 元素 */
|
|
7
9
|
export declare const Element: (value: VmAny) => VmConst;
|
|
10
|
+
/** 构造 record 可选元素 */
|
|
8
11
|
export declare const ElementOpt: (key: string, value: VmAny) => VmConst;
|
|
9
|
-
|
|
12
|
+
/** 构造函数和函数表达式 */
|
|
13
|
+
export declare const Function: (name: string | null | undefined, fn: VmFunctionLike) => VmFunction;
|
|
14
|
+
/** 读取闭包上值 */
|
|
10
15
|
export declare const Upvalue: (value: VmAny) => VmValue;
|
|
11
16
|
export declare const ArrayRange: (start: VmAny, end: VmAny) => VmArray;
|
|
12
17
|
export declare const ArrayRangeExclusive: (start: VmAny, end: VmAny) => VmArray;
|
package/dist/vm/helpers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/vm/helpers.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEtD,eAAO,MAAM,KAAK,GAAI,QAAQ,KAAK,EAAE,KAAG,OAQvC,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/vm/helpers.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEtD,eAAe;AACf,eAAO,MAAM,KAAK,GAAI,QAAQ,KAAK,EAAE,KAAG,OAQvC,CAAC;AAEF,2BAA2B;AAC3B,eAAO,MAAM,OAAO,GAAI,OAAO,KAAK,KAAG,OAItC,CAAC;AAGF,qBAAqB;AACrB,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,OAAO,KAAK,KAAG,OAItD,CAAC;AAEF,iBAAiB;AACjB,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,cAAc,KAAG,UAG9E,CAAC;AAEF,aAAa;AACb,eAAO,MAAM,OAAO,GAAI,OAAO,KAAK,KAAG,OAGtC,CAAC;AAUF,eAAO,MAAM,UAAU,GAAI,OAAO,KAAK,EAAE,KAAK,KAAK,KAAG,OAUrD,CAAC;AACF,eAAO,MAAM,mBAAmB,GAAI,OAAO,KAAK,EAAE,KAAK,KAAK,KAAG,OAU9D,CAAC;AAEF,cAAc;AACd,wBAAgB,cAAc,IAAI,SAAS,CAE1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/vm/lib/global/json.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/vm/lib/global/json.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,OAAO,4IAqBnB,CAAC;AAEF,eAAO,MAAM,SAAS,yfAkBrB,CAAC"}
|
package/dist/vm/lib/helpers.d.ts
CHANGED
|
@@ -46,7 +46,7 @@ export declare function map(data: VmConst,
|
|
|
46
46
|
/** 返回 `undefined` 表示跳过该元素 */
|
|
47
47
|
mapper: (value: VmConst, index: number | string | null, data: VmConst) => VmConst | undefined): VmConst;
|
|
48
48
|
/** 库函数选项 */
|
|
49
|
-
export type VmLibOption = Pick<VmFunctionOption, 'summary' | 'params' | 'paramsType' | 'returns' | 'returnsType' | 'examples'>;
|
|
49
|
+
export type VmLibOption = Pick<VmFunctionOption, 'summary' | 'params' | 'paramsType' | 'returns' | 'returnsType' | 'examples' | 'injectCp'>;
|
|
50
50
|
/** 库函数 */
|
|
51
51
|
export type VmLib<T extends VmFunctionLike | VmConst = VmFunctionLike> = (T extends VmFunctionLike ? T : {
|
|
52
52
|
value: T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/vm/lib/helpers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/vm/lib/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,26 +19,17 @@ export interface VmContext {
|
|
|
19
19
|
/** MiraScript 执行上下文 */
|
|
20
20
|
export type VmContextRecord = Record<string, VmValue>;
|
|
21
21
|
/** MiraScript 执行上下文 */
|
|
22
|
-
export type VmContextRecordLoose = Record<string,
|
|
22
|
+
export type VmContextRecordLoose = Record<string, VmAny>;
|
|
23
23
|
export declare const VM_SHARED_CONTEXT: Record<string, VmImmutable>;
|
|
24
24
|
export declare const VM_SHARED_CONTEXT_DESCRIPTIONS: Record<string, string | undefined>;
|
|
25
25
|
/** 定义在所有 MiraScript 执行上下文中共享的全局变量 */
|
|
26
26
|
export declare function defineVmContextValue(name: string, value: VmImmutable | ((...args: VmAny[]) => VmAny), override?: boolean, description?: string | null | undefined): void;
|
|
27
27
|
/** 无后备的实现 */
|
|
28
|
-
export declare const DefaultVmContext: VmContext
|
|
29
|
-
/**
|
|
30
|
-
|
|
31
|
-
vmValues?: VmContextRecordLoose | null | undefined,
|
|
32
|
-
externValues?: Record<string, unknown> | null | undefined,
|
|
33
|
-
describer?: ((key: string) => string | undefined) | null | undefined
|
|
34
|
-
];
|
|
35
|
-
/** 以工厂函数为后备的实现 */
|
|
36
|
-
type CreateVmContextWithFactory = readonly [
|
|
37
|
-
getter: (key: string) => VmValue | undefined,
|
|
38
|
-
enumerator?: (() => Iterable<string>) | null | undefined,
|
|
39
|
-
describer?: ((key: string) => string | undefined) | null | undefined
|
|
40
|
-
];
|
|
28
|
+
export declare const DefaultVmContext: Readonly<VmContext>;
|
|
29
|
+
/** 获取用于执行脚本的默认执行上下文 */
|
|
30
|
+
export declare function createVmContext(): Readonly<VmContext>;
|
|
41
31
|
/** 创建用于执行脚本的执行上下文 */
|
|
42
|
-
export declare function createVmContext(
|
|
43
|
-
|
|
32
|
+
export declare function createVmContext(vmValues?: VmContextRecordLoose | null, externValues?: Record<string, unknown> | null, describer?: ((key: string) => string | undefined) | null): VmContext;
|
|
33
|
+
/** 创建用于执行脚本的执行上下文 */
|
|
34
|
+
export declare function createVmContext(getter: (key: string) => VmValue | undefined, enumerator?: (() => Iterable<string>) | null, describer?: ((key: string) => string | undefined) | null): VmContext;
|
|
44
35
|
//# sourceMappingURL=context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/vm/types/context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAK9D,uBAAuB;AACvB,MAAM,WAAW,SAAS;IACtB,YAAY;IACZ,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAC5B,0BAA0B;IAC1B,IAAI,IAAI,SAAS,MAAM,EAAE,CAAC;IAC1B,oCAAoC;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,oCAAoC;IACpC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC7B;AACD,uBAAuB;AACvB,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACtD,uBAAuB;AACvB,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/vm/types/context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAK9D,uBAAuB;AACvB,MAAM,WAAW,SAAS;IACtB,YAAY;IACZ,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAC5B,0BAA0B;IAC1B,IAAI,IAAI,SAAS,MAAM,EAAE,CAAC;IAC1B,oCAAoC;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,oCAAoC;IACpC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC7B;AACD,uBAAuB;AACvB,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACtD,uBAAuB;AACvB,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAgB,CAAC;AAC3E,eAAO,MAAM,8BAA8B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAgB,CAAC;AAS/F,qCAAqC;AACrC,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,CAAC,EAClD,QAAQ,UAAQ,EAChB,WAAW,GAAE,MAAM,GAAG,IAAI,GAAG,SAAqB,GACnD,IAAI,CAcN;AAED,aAAa;AACb,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,SAAS,CAsB/C,CAAC;AAsEH,uBAAuB;AACvB,wBAAgB,eAAe,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC;AACvD,qBAAqB;AACrB,wBAAgB,eAAe,CAC3B,QAAQ,CAAC,EAAE,oBAAoB,GAAG,IAAI,EACtC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAC7C,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI,GACzD,SAAS,CAAC;AACb,qBAAqB;AACrB,wBAAgB,eAAe,CAC3B,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,EAC5C,UAAU,CAAC,EAAE,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EAC5C,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI,GACzD,SAAS,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mirascript/mirascript",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.20",
|
|
4
4
|
"author": "CloudPSS",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "An expression based scripting language.",
|
|
@@ -36,16 +36,16 @@
|
|
|
36
36
|
"commander": "^14.0.2",
|
|
37
37
|
"source-map-js": "^1.2.1",
|
|
38
38
|
"supports-color": "^10.2.2",
|
|
39
|
-
"@mirascript/bindings": "~0.1.
|
|
39
|
+
"@mirascript/bindings": "~0.1.20"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@types/node": "^24.10.
|
|
42
|
+
"@types/node": "^24.10.2",
|
|
43
43
|
"@types/sinon": "^21.0.0",
|
|
44
44
|
"ava": "^6.4.1",
|
|
45
45
|
"c8": "^10.1.3",
|
|
46
46
|
"madge": "^8.0.0",
|
|
47
47
|
"sinon": "^21.0.0",
|
|
48
|
-
"type-fest": "^5.
|
|
48
|
+
"type-fest": "^5.3.1"
|
|
49
49
|
},
|
|
50
50
|
"scripts": {
|
|
51
51
|
"watch": "pnpm build:ts --watch",
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export const SCRIPT_PREFIX = `
|
|
2
|
-
export const GLOBAL_HINT = `/* globals */`;
|
|
1
|
+
export const SCRIPT_PREFIX = `return ((global = GlobalFallback()) => { try { CpEnter();`;
|