@mbler/mcx-core 0.0.2-alpha.r3 → 0.0.2-alpha.r4
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 +2 -1
- package/dist/index.d.ts +31 -15
- package/dist/index.js +179 -7
- package/dist/index.js.map +1 -1
- package/dist/types/compile-mcx/types.d.ts +2 -20
- package/dist/types/index.d.ts +4 -0
- package/dist/types/transforms/config.d.ts +6 -0
- package/dist/types/transforms/utils.d.ts +6 -0
- package/dist/types/types.d.ts +1 -0
- package/package.json +5 -5
- package/__test__/index.js +0 -2
- package/dist/types/compile-mcx/compiler/compileMain.d.ts +0 -18
- package/dist/types/compile-mcx/compiler/moduleParser.d.ts +0 -4
- package/dist/types/compile-mcx/context.d.ts +0 -10
- package/dist/types/compile-mcx/loader/index.d.ts +0 -2
- package/dist/types/compile-mcx/loader/mcx.d.ts +0 -1
- package/dist/types/compile-mcx/loader/utils.d.ts +0 -12
- package/dist/types/compile-mcx/template/module.d.ts +0 -1
- package/dist/types/mcxlib/index.d.ts +0 -5
- package/dist/types/mcxlib/module.d.ts +0 -2
package/README.md
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
# mcx
|
|
2
2
|
|
|
3
3
|
mcx-core 是 mbler 的 mcx 功能的编译器核心,目前在 alpha 阶段。
|
|
4
|
-
你可以在 npm 上下载它,不过 npm 上的仅会在发布版本更新,github上为最新
|
|
5
4
|
|
|
5
|
+
本工具基于 typescript 开发,底层模块加载由 rollup 支持由工具 mbler 串起编译流程。
|
|
6
6
|
## 整体架构
|
|
7
7
|
|
|
8
8
|
| **npm包名** | **描述** | **完成度(%)** |
|
|
9
9
|
|-----------------------|------------------------------|---------|
|
|
10
10
|
| **@mbler/mcx** | 为用户提供的typescript类型包 | 0 |
|
|
11
11
|
| **@mbler/mcx-core** | mcx核心编译器啥的代码 | 10 |
|
|
12
|
+
| **@mbler/mcx-types** | 提供类型 | 10 |
|
|
12
13
|
| **@mbler/mcx-compat** | mcx检查器规则,主要适配不一样的minecraft版本 | 0 |
|
|
13
14
|
| **mbler** | 核心脚手架,把这些东西组装成一个方便使用的cli工具 | 90 |
|
|
14
15
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CompileOpt } from '@mbler/mcx-types';
|
|
2
2
|
import * as t from '@babel/types';
|
|
3
3
|
import { Expression, CallExpression, SpreadElement, ArgumentPlaceholder, ImportDeclaration, ExportNamedDeclaration, ExportAllDeclaration, ExportDefaultDeclaration } from '@babel/types';
|
|
4
|
-
import { RollupOptions } from 'rollup';
|
|
5
4
|
|
|
6
5
|
interface BaseToken {
|
|
7
6
|
data: string;
|
|
@@ -17,6 +16,10 @@ interface TagToken extends BaseToken {
|
|
|
17
16
|
interface TagEndToken extends BaseToken {
|
|
18
17
|
type: 'TagEnd';
|
|
19
18
|
}
|
|
19
|
+
interface ContentToken extends BaseToken {
|
|
20
|
+
type: 'Content';
|
|
21
|
+
}
|
|
22
|
+
type Token = TagToken | TagEndToken | ContentToken;
|
|
20
23
|
type AttributeMap = Record<string, string | boolean>;
|
|
21
24
|
interface MCXLoc {
|
|
22
25
|
start: {
|
|
@@ -57,6 +60,28 @@ interface ParseReadFileOpt {
|
|
|
57
60
|
want: 'string' | 'object';
|
|
58
61
|
}
|
|
59
62
|
type ReadFileOpt = Partial<ParseReadFileOpt>;
|
|
63
|
+
type mcxType = "component" | "event" | "app";
|
|
64
|
+
|
|
65
|
+
type types_AttributeMap = AttributeMap;
|
|
66
|
+
type types_BaseToken = BaseToken;
|
|
67
|
+
type types_ContentToken = ContentToken;
|
|
68
|
+
type types_JsType = JsType;
|
|
69
|
+
type types_MCXLoc = MCXLoc;
|
|
70
|
+
type types_ParseReadFileOpt = ParseReadFileOpt;
|
|
71
|
+
type types_ParsedTagContentNode = ParsedTagContentNode;
|
|
72
|
+
type types_ParsedTagNode = ParsedTagNode;
|
|
73
|
+
type types_PropNode = PropNode;
|
|
74
|
+
type types_PropValue = PropValue;
|
|
75
|
+
type types_ReadFileOpt = ReadFileOpt;
|
|
76
|
+
type types_TagEndToken = TagEndToken;
|
|
77
|
+
type types_TagToken = TagToken;
|
|
78
|
+
type types_Token = Token;
|
|
79
|
+
type types_TokenType = TokenType;
|
|
80
|
+
type types_TypeVerifyBody = TypeVerifyBody;
|
|
81
|
+
type types_mcxType = mcxType;
|
|
82
|
+
declare namespace types {
|
|
83
|
+
export type { types_AttributeMap as AttributeMap, types_BaseToken as BaseToken, types_ContentToken as ContentToken, types_JsType as JsType, types_MCXLoc as MCXLoc, types_ParseReadFileOpt as ParseReadFileOpt, types_ParsedTagContentNode as ParsedTagContentNode, types_ParsedTagNode as ParsedTagNode, types_PropNode as PropNode, types_PropValue as PropValue, types_ReadFileOpt as ReadFileOpt, types_TagEndToken as TagEndToken, types_TagToken as TagToken, types_Token as Token, types_TokenType as TokenType, types_TypeVerifyBody as TypeVerifyBody, types_mcxType as mcxType };
|
|
84
|
+
}
|
|
60
85
|
|
|
61
86
|
declare function PropParser(code: string): PropNode[];
|
|
62
87
|
|
|
@@ -122,18 +147,6 @@ interface MCXstructureLoc {
|
|
|
122
147
|
}>;
|
|
123
148
|
}
|
|
124
149
|
|
|
125
|
-
interface CompileUserConfig {
|
|
126
|
-
babelParser?: ParserOptions;
|
|
127
|
-
rollupOptions?: RollupOptions;
|
|
128
|
-
}
|
|
129
|
-
interface CompileOpt {
|
|
130
|
-
main: string;
|
|
131
|
-
ProjectDir: string;
|
|
132
|
-
moduleDir: string;
|
|
133
|
-
output: string;
|
|
134
|
-
config?: Partial<CompileUserConfig>;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
150
|
declare function CompileMcxDir(BuildOpt: CompileOpt): Promise<void>;
|
|
138
151
|
|
|
139
152
|
declare class McxUtlis {
|
|
@@ -217,6 +230,8 @@ declare namespace Compiler {
|
|
|
217
230
|
export type { Compiler_Context as Context };
|
|
218
231
|
}
|
|
219
232
|
|
|
233
|
+
declare function transform(compileData: MCXCompileData): Promise<string>;
|
|
234
|
+
|
|
220
235
|
declare const _default: {
|
|
221
236
|
load: typeof CompileMcxDir;
|
|
222
237
|
AST: {
|
|
@@ -225,6 +240,7 @@ declare const _default: {
|
|
|
225
240
|
};
|
|
226
241
|
Compiler: typeof Compiler;
|
|
227
242
|
utils: typeof McxUtlis;
|
|
243
|
+
transform: typeof transform;
|
|
228
244
|
};
|
|
229
245
|
|
|
230
|
-
export { _default as default };
|
|
246
|
+
export { types as PUBTYPE, _default as default };
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
3
5
|
var fs = require('node:fs/promises');
|
|
4
6
|
var path = require('node:path');
|
|
5
7
|
var rollup = require('rollup');
|
|
@@ -8,6 +10,7 @@ var json = require('@rollup/plugin-json');
|
|
|
8
10
|
var module_resolve = require('@rollup/plugin-node-resolve');
|
|
9
11
|
var t = require('@babel/types');
|
|
10
12
|
var Parser = require('@babel/parser');
|
|
13
|
+
var generator = require('@babel/generator');
|
|
11
14
|
|
|
12
15
|
function _interopNamespaceDefault(e) {
|
|
13
16
|
var n = Object.create(null);
|
|
@@ -30,6 +33,7 @@ var fs__namespace = /*#__PURE__*/_interopNamespaceDefault(fs);
|
|
|
30
33
|
var path__namespace = /*#__PURE__*/_interopNamespaceDefault(path);
|
|
31
34
|
var t__namespace = /*#__PURE__*/_interopNamespaceDefault(t);
|
|
32
35
|
var Parser__namespace = /*#__PURE__*/_interopNamespaceDefault(Parser);
|
|
36
|
+
var generator__namespace = /*#__PURE__*/_interopNamespaceDefault(generator);
|
|
33
37
|
|
|
34
38
|
let Lexer$1 = class Lexer {
|
|
35
39
|
text;
|
|
@@ -88,8 +92,8 @@ let Lexer$1 = class Lexer {
|
|
|
88
92
|
inKey = false;
|
|
89
93
|
inValue = true;
|
|
90
94
|
const nextIndex = i + 1;
|
|
91
|
-
|
|
92
|
-
quoteChar =
|
|
95
|
+
nextIndex < tagContent.length ? tagContent[nextIndex] : ' ';
|
|
96
|
+
quoteChar = null;
|
|
93
97
|
}
|
|
94
98
|
else if (char === ' ' && inKey && currentKey) {
|
|
95
99
|
attributes[currentKey.trim()] = 'true';
|
|
@@ -1278,24 +1282,178 @@ var Compiler = /*#__PURE__*/Object.freeze({
|
|
|
1278
1282
|
compileMCXFn: compileMCXFn
|
|
1279
1283
|
});
|
|
1280
1284
|
|
|
1285
|
+
var config = {
|
|
1286
|
+
// script tag compile function name
|
|
1287
|
+
scriptCompileFn: "__main",
|
|
1288
|
+
// use event tag , import event as
|
|
1289
|
+
eventImported: "__mcx__event",
|
|
1290
|
+
eventVarName: "__use_event"
|
|
1291
|
+
};
|
|
1292
|
+
|
|
1293
|
+
const allKeys = (() => {
|
|
1294
|
+
// 闭包
|
|
1295
|
+
const findkeyByVarId = (id, result) => {
|
|
1296
|
+
if (id.type == "VoidPattern")
|
|
1297
|
+
return;
|
|
1298
|
+
if (id.type == "ArrayPattern") {
|
|
1299
|
+
id.elements.forEach((node) => {
|
|
1300
|
+
if (!node)
|
|
1301
|
+
return;
|
|
1302
|
+
findkeyByVarId(node, result);
|
|
1303
|
+
});
|
|
1304
|
+
}
|
|
1305
|
+
else if (id.type == "Identifier") {
|
|
1306
|
+
result.push(id.name);
|
|
1307
|
+
}
|
|
1308
|
+
else if (id.type == "RestElement") {
|
|
1309
|
+
id.argument;
|
|
1310
|
+
findkeyByVarId(id, result);
|
|
1311
|
+
}
|
|
1312
|
+
else if (id.type == "ObjectPattern") {
|
|
1313
|
+
for (const property of id.properties) {
|
|
1314
|
+
if (property.type == "ObjectProperty") {
|
|
1315
|
+
const key = property.key;
|
|
1316
|
+
if (property.value.type == "AssignmentPattern") {
|
|
1317
|
+
const assigmentNode = property.value;
|
|
1318
|
+
findkeyByVarId(assigmentNode.left, result);
|
|
1319
|
+
}
|
|
1320
|
+
else if (key.type == "Identifier") {
|
|
1321
|
+
result.push(key.name);
|
|
1322
|
+
}
|
|
1323
|
+
continue;
|
|
1324
|
+
}
|
|
1325
|
+
findkeyByVarId(property.argument, result);
|
|
1326
|
+
}
|
|
1327
|
+
}
|
|
1328
|
+
else if (id.type == "AssignmentPattern") {
|
|
1329
|
+
findkeyByVarId(id.left, result);
|
|
1330
|
+
}
|
|
1331
|
+
};
|
|
1332
|
+
return (node) => {
|
|
1333
|
+
let result = [];
|
|
1334
|
+
if (node.type == "VariableDeclaration") {
|
|
1335
|
+
for (const declaration of node.declarations) {
|
|
1336
|
+
findkeyByVarId(declaration.id, result);
|
|
1337
|
+
}
|
|
1338
|
+
}
|
|
1339
|
+
return result;
|
|
1340
|
+
};
|
|
1341
|
+
})();
|
|
1342
|
+
const generateTempId = (() => {
|
|
1343
|
+
let num = 0;
|
|
1344
|
+
return () => {
|
|
1345
|
+
num++;
|
|
1346
|
+
return `__mcx_${num}`;
|
|
1347
|
+
};
|
|
1348
|
+
})();
|
|
1349
|
+
function generateMain(JSIR) {
|
|
1350
|
+
const base = t__namespace.blockStatement(JSIR.node.body);
|
|
1351
|
+
const exports$1 = [];
|
|
1352
|
+
const importDeclarations = JSIR.BuildCache.import.map(Utils.CacheToImportNode);
|
|
1353
|
+
if (JSIR.BuildCache.export.length >= 1)
|
|
1354
|
+
for (let exportNode of JSIR.BuildCache.export) {
|
|
1355
|
+
// namedExport
|
|
1356
|
+
if (exportNode.type == "ExportNamedDeclaration") {
|
|
1357
|
+
if (exportNode.declaration) {
|
|
1358
|
+
// push declaration
|
|
1359
|
+
base.body.push(exportNode.declaration);
|
|
1360
|
+
// add export
|
|
1361
|
+
const keys = allKeys(exportNode.declaration);
|
|
1362
|
+
// ExportNamedDeclaration can export one and more items. So forEach it.
|
|
1363
|
+
keys.forEach((item) => {
|
|
1364
|
+
const milb = t__namespace.identifier(item);
|
|
1365
|
+
exports$1.push(t__namespace.objectProperty(milb, milb));
|
|
1366
|
+
});
|
|
1367
|
+
continue;
|
|
1368
|
+
}
|
|
1369
|
+
else if (exportNode.specifiers.length >= 1 && exportNode.source) {
|
|
1370
|
+
importDeclarations.push(t__namespace.importDeclaration(exportNode.specifiers.map((vaule) => {
|
|
1371
|
+
if (vaule) {
|
|
1372
|
+
if (vaule.type == "ExportSpecifier") {
|
|
1373
|
+
return t__namespace.importSpecifier(vaule.local, vaule.exported);
|
|
1374
|
+
}
|
|
1375
|
+
else if (vaule.type == "ExportNamespaceSpecifier") {
|
|
1376
|
+
return t__namespace.importNamespaceSpecifier(vaule.exported);
|
|
1377
|
+
}
|
|
1378
|
+
else {
|
|
1379
|
+
return t__namespace.importDefaultSpecifier(vaule.exported);
|
|
1380
|
+
}
|
|
1381
|
+
}
|
|
1382
|
+
throw new Error("[compile export]: can't handler specifier");
|
|
1383
|
+
}), exportNode.source));
|
|
1384
|
+
}
|
|
1385
|
+
}
|
|
1386
|
+
else if (exportNode.type == "ExportDefaultDeclaration") {
|
|
1387
|
+
exports$1.push(t__namespace.objectProperty(t__namespace.identifier("default"), t__namespace.isExpression(exportNode.declaration)
|
|
1388
|
+
? exportNode.declaration
|
|
1389
|
+
: DeclarationToExpression(exportNode.declaration)));
|
|
1390
|
+
}
|
|
1391
|
+
else {
|
|
1392
|
+
const source = exportNode.source;
|
|
1393
|
+
const id = generateTempId();
|
|
1394
|
+
importDeclarations.push(t__namespace.importDeclaration([t__namespace.importNamespaceSpecifier(t__namespace.identifier(id))], source));
|
|
1395
|
+
exports$1.push(t__namespace.spreadElement(t__namespace.identifier(id)));
|
|
1396
|
+
}
|
|
1397
|
+
}
|
|
1398
|
+
base.body.push(t__namespace.returnStatement(t__namespace.objectExpression(exports$1)));
|
|
1399
|
+
return [
|
|
1400
|
+
...importDeclarations,
|
|
1401
|
+
t__namespace.variableDeclaration("const", [
|
|
1402
|
+
t__namespace.variableDeclarator(t__namespace.identifier(config.scriptCompileFn), t__namespace.callExpression(t__namespace.functionExpression(null, [], base, false, false), [])),
|
|
1403
|
+
]),
|
|
1404
|
+
];
|
|
1405
|
+
}
|
|
1406
|
+
function DeclarationToExpression(node) {
|
|
1407
|
+
if (node.type == "ClassDeclaration")
|
|
1408
|
+
return t__namespace.classExpression(node.id, node.superClass, node.body, node.decorators);
|
|
1409
|
+
if (node.type == "FunctionDeclaration")
|
|
1410
|
+
return t__namespace.functionExpression(node.id, node.params, node.body, node.generator, node.async);
|
|
1411
|
+
throw new Error("[compile node]: can't to expression: " + node.type);
|
|
1412
|
+
}
|
|
1413
|
+
|
|
1281
1414
|
function addImport(statement, source, importArray) {
|
|
1282
1415
|
statement.unshift(t__namespace.importDeclaration(importArray, t__namespace.stringLiteral(source)));
|
|
1283
1416
|
}
|
|
1284
1417
|
async function compileComponent(compileData) {
|
|
1285
1418
|
// TODO
|
|
1286
1419
|
}
|
|
1420
|
+
function loadEvent(event, body) {
|
|
1421
|
+
const subscribeBody = [];
|
|
1422
|
+
for (const [name, useExport] of Object.entries(event.subscribe)) {
|
|
1423
|
+
subscribeBody.push(t__namespace.objectProperty(t__namespace.identifier(name), t__namespace.memberExpression(t__namespace.identifier(config.scriptCompileFn), t__namespace.identifier(useExport))));
|
|
1424
|
+
}
|
|
1425
|
+
const armg = t__namespace.objectExpression([
|
|
1426
|
+
t__namespace.objectProperty(t__namespace.identifier("on"), t__namespace.stringLiteral(event.on)),
|
|
1427
|
+
t__namespace.objectProperty(t__namespace.identifier("data"), t__namespace.objectExpression(subscribeBody)),
|
|
1428
|
+
]);
|
|
1429
|
+
body.push(t__namespace.variableDeclaration("const", [
|
|
1430
|
+
t__namespace.variableDeclarator(t__namespace.identifier(config.eventVarName), t__namespace.newExpression(t__namespace.identifier(config.eventImported), [armg])),
|
|
1431
|
+
]));
|
|
1432
|
+
}
|
|
1287
1433
|
async function transform(compileData) {
|
|
1288
1434
|
const mcxModule = "@mbler/mcx";
|
|
1289
|
-
|
|
1435
|
+
// first compile script
|
|
1436
|
+
const statement = generateMain(compileData.JSIR);
|
|
1437
|
+
const exportIndex = [];
|
|
1438
|
+
let mcxtype = null;
|
|
1290
1439
|
if (compileData.strLoc.Event.isLoad) {
|
|
1440
|
+
mcxtype = "event";
|
|
1291
1441
|
addImport(statement, mcxModule, [
|
|
1292
|
-
t__namespace.importSpecifier(t__namespace.identifier(
|
|
1442
|
+
t__namespace.importSpecifier(t__namespace.identifier(config.eventImported), t__namespace.identifier("Event")),
|
|
1293
1443
|
]);
|
|
1444
|
+
loadEvent(compileData.strLoc.Event, statement);
|
|
1445
|
+
exportIndex.push(t__namespace.exportSpecifier(t__namespace.identifier(config.eventVarName), t__namespace.identifier("event")));
|
|
1294
1446
|
}
|
|
1295
1447
|
if (Object.keys(compileData.strLoc.Component).length >= 1) {
|
|
1448
|
+
if (mcxtype == "event")
|
|
1449
|
+
throw new Error("[compile component]: a mcx must event or component, can't both");
|
|
1296
1450
|
compileComponent();
|
|
1451
|
+
// component 是宏,不必参与编译
|
|
1452
|
+
return "export default {use(){}}";
|
|
1297
1453
|
}
|
|
1298
|
-
|
|
1454
|
+
exportIndex.push(t__namespace.exportSpecifier(t__namespace.identifier("__main"), t__namespace.identifier("default")));
|
|
1455
|
+
statement.push(t__namespace.exportNamedDeclaration(null, exportIndex));
|
|
1456
|
+
return generator__namespace.generate(t__namespace.program(statement)).code;
|
|
1299
1457
|
}
|
|
1300
1458
|
|
|
1301
1459
|
function mcxPlugn() {
|
|
@@ -1332,11 +1490,19 @@ function AbsoluteJoin(base, dir) {
|
|
|
1332
1490
|
return path.isAbsolute(dir) ? dir : path.join(base, dir);
|
|
1333
1491
|
}
|
|
1334
1492
|
async function CompileProject(opt) {
|
|
1335
|
-
await rollup.rollup({
|
|
1493
|
+
const rollupResult = await rollup.rollup({
|
|
1336
1494
|
input: AbsoluteJoin(opt.ProjectDir, opt.main),
|
|
1337
1495
|
external: ["@minecraft/server", "@minecraft/server-ui"],
|
|
1338
1496
|
plugins: [mcxPlugn(), commjs(), json(), module_resolve()],
|
|
1339
1497
|
});
|
|
1498
|
+
await fs.rm(opt.output, {
|
|
1499
|
+
recursive: true
|
|
1500
|
+
});
|
|
1501
|
+
await rollupResult.write({
|
|
1502
|
+
file: AbsoluteJoin(opt.output, "./index.js"),
|
|
1503
|
+
format: "esm",
|
|
1504
|
+
sourcemap: true
|
|
1505
|
+
});
|
|
1340
1506
|
}
|
|
1341
1507
|
|
|
1342
1508
|
/**
|
|
@@ -1371,12 +1537,18 @@ async function CompileMcxDir(BuildOpt) {
|
|
|
1371
1537
|
await CompileMcxProject(BuildOpt);
|
|
1372
1538
|
}
|
|
1373
1539
|
|
|
1540
|
+
var types = /*#__PURE__*/Object.freeze({
|
|
1541
|
+
__proto__: null
|
|
1542
|
+
});
|
|
1543
|
+
|
|
1374
1544
|
var index = {
|
|
1375
1545
|
load: CompileMcxDir,
|
|
1376
1546
|
AST: AST,
|
|
1377
1547
|
Compiler,
|
|
1378
1548
|
utils: McxUtlis,
|
|
1549
|
+
transform
|
|
1379
1550
|
};
|
|
1380
1551
|
|
|
1381
|
-
|
|
1552
|
+
exports.PUBTYPE = types;
|
|
1553
|
+
exports.default = index;
|
|
1382
1554
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/ast/tag.ts","../src/ast/prop.ts","../src/ast/index.ts","../src/utils.ts","../src/compile-mcx/types.ts","../src/compile-mcx/compiler/compileData.ts","../src/compile-mcx/compiler/utils.ts","../src/compile-mcx/compiler/index.ts","../src/transforms/index.ts","../src/compile-mcx/compiler/main.ts","../src/compile-mcx/compile.ts","../src/compile-mcx/index.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["Lexer","AST_tag","AST_prop","fs","path","readFile","Parser","t","CompileData.JsCompileData","CompileData.MCXCompileData","parse","extname","isAbsolute","join","rollup","Utils","mkdir","CompileMain","Compiler","compiler","utils"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/ast/tag.ts","../src/ast/prop.ts","../src/ast/index.ts","../src/utils.ts","../src/compile-mcx/types.ts","../src/compile-mcx/compiler/compileData.ts","../src/compile-mcx/compiler/utils.ts","../src/compile-mcx/compiler/index.ts","../src/transforms/config.ts","../src/transforms/utils.ts","../src/transforms/index.ts","../src/compile-mcx/compiler/main.ts","../src/compile-mcx/compile.ts","../src/compile-mcx/index.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["Lexer","AST_tag","AST_prop","fs","path","readFile","Parser","t","CompileData.JsCompileData","CompileData.MCXCompileData","parse","exports","generator","extname","isAbsolute","join","rollup","rm","Utils","mkdir","CompileMain","Compiler","compiler","utils"],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { ParserOptions } from "@babel/parser";
|
|
2
1
|
import type { ImportDeclaration, ExportAllDeclaration, ExportDefaultDeclaration, ExportNamedDeclaration, Expression, SpreadElement, ArgumentPlaceholder, CallExpression } from "@babel/types";
|
|
3
|
-
import {
|
|
2
|
+
import { CompileOpt } from "@mbler/mcx-types";
|
|
4
3
|
interface callList {
|
|
5
4
|
source: Expression;
|
|
6
5
|
set: (callEXp: CallExpression) => boolean;
|
|
@@ -22,12 +21,6 @@ interface BuildCache {
|
|
|
22
21
|
import: ImportList[];
|
|
23
22
|
export: Array<ExportNamedDeclaration | ExportAllDeclaration | ExportDefaultDeclaration>;
|
|
24
23
|
}
|
|
25
|
-
type MCX_INFO = {
|
|
26
|
-
author: "github@RuanhoR";
|
|
27
|
-
buildSystem: string;
|
|
28
|
-
buildSystemVersion: string;
|
|
29
|
-
buildTime: number;
|
|
30
|
-
};
|
|
31
24
|
export declare const _MCXstructureLocComponentTypes: {
|
|
32
25
|
readonly items: "item";
|
|
33
26
|
readonly blocks: "block";
|
|
@@ -54,15 +47,4 @@ interface MCXstructureLoc {
|
|
|
54
47
|
};
|
|
55
48
|
}>;
|
|
56
49
|
}
|
|
57
|
-
export type { BuildCache,
|
|
58
|
-
interface CompileUserConfig {
|
|
59
|
-
babelParser?: ParserOptions;
|
|
60
|
-
rollupOptions?: RollupOptions;
|
|
61
|
-
}
|
|
62
|
-
interface CompileOpt {
|
|
63
|
-
main: string;
|
|
64
|
-
ProjectDir: string;
|
|
65
|
-
moduleDir: string;
|
|
66
|
-
output: string;
|
|
67
|
-
config?: Partial<CompileUserConfig>;
|
|
68
|
-
}
|
|
50
|
+
export type { BuildCache, ImportList, ImportListImport, callList, CompileOpt, MCXstructureLoc, MCXstructureLocComponentType };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import compiler from "./compile-mcx/index.js";
|
|
2
2
|
import utils from "./utils.js";
|
|
3
3
|
import * as Compiler from "./compile-mcx/compiler";
|
|
4
|
+
import * as PUBTYPE from "./types.js";
|
|
5
|
+
import { transform } from "./transforms";
|
|
4
6
|
declare const _default: {
|
|
5
7
|
load: typeof compiler;
|
|
6
8
|
AST: {
|
|
@@ -9,5 +11,7 @@ declare const _default: {
|
|
|
9
11
|
};
|
|
10
12
|
Compiler: typeof Compiler;
|
|
11
13
|
utils: typeof utils;
|
|
14
|
+
transform: typeof transform;
|
|
12
15
|
};
|
|
13
16
|
export default _default;
|
|
17
|
+
export { PUBTYPE };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as t from "@babel/types";
|
|
2
|
+
import { JsCompileData } from "../compile-mcx/compiler/compileData";
|
|
3
|
+
declare const allKeys: (node: t.Declaration) => string[];
|
|
4
|
+
declare function generateMain(JSIR: JsCompileData): [...t.ImportDeclaration[], t.VariableDeclaration];
|
|
5
|
+
declare function DeclarationToExpression(node: t.FunctionDeclaration | t.ClassDeclaration | t.TSDeclareFunction): t.Expression;
|
|
6
|
+
export { DeclarationToExpression, generateMain, allKeys };
|
package/dist/types/types.d.ts
CHANGED
|
@@ -56,4 +56,5 @@ export interface ParseReadFileOpt {
|
|
|
56
56
|
want: 'string' | 'object';
|
|
57
57
|
}
|
|
58
58
|
export type ReadFileOpt = Partial<ParseReadFileOpt>;
|
|
59
|
+
export type mcxType = "component" | "event" | "app";
|
|
59
60
|
export type { Token, ContentToken, TagEndToken, TagToken, BaseToken, AttributeMap, PropValue, TokenType, ParsedTagContentNode, TypeVerifyBody, JsType, PropNode, ParsedTagNode, MCXLoc };
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mbler/mcx-core",
|
|
3
|
-
"version": "0.0.2-alpha.
|
|
3
|
+
"version": "0.0.2-alpha.r4",
|
|
4
4
|
"description": "a DSL compiler of mcx",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"test": "
|
|
7
|
+
"test": "cd __test__ && npm run test",
|
|
8
8
|
"build": "rollup -c"
|
|
9
9
|
},
|
|
10
10
|
"keywords": [
|
|
@@ -26,8 +26,7 @@
|
|
|
26
26
|
"files": [
|
|
27
27
|
"dist",
|
|
28
28
|
"README.md",
|
|
29
|
-
"LICENSE"
|
|
30
|
-
"__test__"
|
|
29
|
+
"LICENSE"
|
|
31
30
|
],
|
|
32
31
|
"publishConfig": {
|
|
33
32
|
"registry": "https://registry.npmjs.org",
|
|
@@ -40,6 +39,7 @@
|
|
|
40
39
|
"@types/babel__generator": "^7.27.0",
|
|
41
40
|
"@types/node": "^25.2.0",
|
|
42
41
|
"rollup-plugin-dts": "^6.3.0",
|
|
43
|
-
"tslib": "^2.8.1"
|
|
42
|
+
"tslib": "^2.8.1",
|
|
43
|
+
"@mbler/mcx-types": "latest"
|
|
44
44
|
}
|
|
45
45
|
}
|
package/__test__/index.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { CompileOpt } from "../types";
|
|
2
|
-
import * as CompileData from "./compileData";
|
|
3
|
-
import * as t from "@babel/types";
|
|
4
|
-
export default class CompileMain {
|
|
5
|
-
opt: CompileOpt;
|
|
6
|
-
main: string;
|
|
7
|
-
cacheMap: Map<string, CompileData.JsCompileData | CompileData.MCXCompileData | string>;
|
|
8
|
-
constructor(opt: CompileOpt);
|
|
9
|
-
bundlerProgram: t.Program | null;
|
|
10
|
-
start(): Promise<void>;
|
|
11
|
-
moduleId: Record<string, number>;
|
|
12
|
-
private handlerCall;
|
|
13
|
-
private loadModule;
|
|
14
|
-
private generateFnId;
|
|
15
|
-
private pushModule;
|
|
16
|
-
private buildFunction;
|
|
17
|
-
private compMain;
|
|
18
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { MCX_INFO, BuildCache } from "./types.js";
|
|
2
|
-
export default class Context {
|
|
3
|
-
__MCX__: MCX_INFO;
|
|
4
|
-
}
|
|
5
|
-
interface contextType {
|
|
6
|
-
BuildCache: BuildCache;
|
|
7
|
-
__MCX__: MCX_INFO;
|
|
8
|
-
}
|
|
9
|
-
export type { contextType };
|
|
10
|
-
export declare const InfoCompile: string[];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function MCXLoader(fileDir: string): Promise<import("../compiler/compileData").MCXCompileData>;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { JsCompileData, MCXCompileData } from "../compiler/compileData";
|
|
2
|
-
declare class Utils {
|
|
3
|
-
CheckPath(filePath: string): string;
|
|
4
|
-
readFile(filePath: string): Promise<Buffer>;
|
|
5
|
-
readFileAsJSON(filePath: string): Promise<any>;
|
|
6
|
-
readFileAsMcx(filePath: string): Promise<MCXCompileData>;
|
|
7
|
-
readFileAsJS(filePath: string): Promise<JsCompileData>;
|
|
8
|
-
writeFile(filePath: string, data: string | Buffer): Promise<boolean>;
|
|
9
|
-
}
|
|
10
|
-
declare const utils: Utils;
|
|
11
|
-
export default utils;
|
|
12
|
-
export { utils as Utils };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|