@aiot-toolkit/aiotpack 2.0.1-alpha.3 → 2.0.1-alpha.5
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/lib/config/XtsConfig.d.ts +2 -2
- package/lib/config/XtsConfig.js +6 -2
- package/lib/config/XtsConfig.js.map +1 -1
- package/lib/followWorks/xts/entryTemplate.js +2 -2
- package/lib/followWorks/xts/entryTemplate.js.map +1 -1
- package/lib/followWorks/xts/generateRpk.d.ts +2 -0
- package/lib/followWorks/xts/generateRpk.js +14 -0
- package/lib/followWorks/xts/generateRpk.js.map +1 -0
- package/lib/followWorks/xts/ts2wasm.d.ts +3 -2
- package/lib/followWorks/xts/ts2wasm.js +43 -7
- package/lib/followWorks/xts/ts2wasm.js.map +1 -1
- package/lib/preWorks/xts/preInstall.d.ts +2 -0
- package/lib/preWorks/xts/preInstall.js +52 -0
- package/lib/preWorks/xts/preInstall.js.map +1 -0
- package/lib/utils/xts/XtsFollowWorks.d.ts +6 -2
- package/lib/utils/xts/XtsFollowWorks.js +6 -5
- package/lib/utils/xts/XtsFollowWorks.js.map +1 -1
- package/package.json +5 -5
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { IFileLaneConfig } from 'file-lane';
|
|
2
|
-
import { generateEntryFile } from '../followWorks/xts/entryTemplate';
|
|
3
2
|
import XtsLoader from '../loader/xts/XtsLoader';
|
|
4
3
|
/**
|
|
5
4
|
* XtsConfig
|
|
@@ -13,6 +12,7 @@ declare class XtsConfig implements IFileLaneConfig {
|
|
|
13
12
|
loader: (typeof XtsLoader)[];
|
|
14
13
|
}[];
|
|
15
14
|
};
|
|
16
|
-
|
|
15
|
+
preWorks: import("file-lane/lib/interface/IFileLaneConfig").PreWork[];
|
|
16
|
+
followWorks: import("file-lane/lib/interface/IFileLaneConfig").FollowWork[];
|
|
17
17
|
}
|
|
18
18
|
export default XtsConfig;
|
package/lib/config/XtsConfig.js
CHANGED
|
@@ -4,13 +4,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const entryTemplate_1 = require("../followWorks/xts/entryTemplate");
|
|
7
|
+
const generateRpk_1 = require("../followWorks/xts/generateRpk");
|
|
8
|
+
const ts2wasm_1 = require("../followWorks/xts/ts2wasm");
|
|
7
9
|
const XtsLoader_1 = __importDefault(require("../loader/xts/XtsLoader"));
|
|
10
|
+
const preInstall_1 = require("../preWorks/xts/preInstall");
|
|
8
11
|
/**
|
|
9
12
|
* XtsConfig
|
|
10
13
|
*/
|
|
11
14
|
class XtsConfig {
|
|
12
15
|
constructor() {
|
|
13
|
-
this.exclude = [/node_modules/, /dist/, /build/];
|
|
16
|
+
this.exclude = [/node_modules/, /dist/, /build/, /wasmUnpacked/];
|
|
14
17
|
this.output = 'build';
|
|
15
18
|
this.module = {
|
|
16
19
|
rules: [
|
|
@@ -20,7 +23,8 @@ class XtsConfig {
|
|
|
20
23
|
}
|
|
21
24
|
]
|
|
22
25
|
};
|
|
23
|
-
this.
|
|
26
|
+
this.preWorks = [preInstall_1.preInstall];
|
|
27
|
+
this.followWorks = [entryTemplate_1.generateEntryFile, ts2wasm_1.ts2wasm, generateRpk_1.generateRpk];
|
|
24
28
|
}
|
|
25
29
|
}
|
|
26
30
|
exports.default = XtsConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["config/XtsConfig.ts"],"names":[],"mappings":";;;;;AACA,oEAAoE;AACpE,wEAA+C;
|
|
1
|
+
{"version":3,"sources":["config/XtsConfig.ts"],"names":[],"mappings":";;;;;AACA,oEAAoE;AACpE,gEAA4D;AAC5D,wDAAoD;AACpD,wEAA+C;AAC/C,2DAAuD;AAEvD;;GAEG;AACH,MAAM,SAAS;IAAf;QACE,YAAO,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;QAC3D,WAAM,GAAG,OAAO,CAAA;QAChB,WAAM,GAAG;YACP,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,CAAC,QAAQ,CAAC;oBAChB,MAAM,EAAE,CAAC,mBAAS,CAAC;iBACpB;aACF;SACF,CAAA;QACD,aAAQ,GAAG,CAAC,uBAAU,CAAC,CAAA;QACvB,gBAAW,GAAG,CAAC,iCAAiB,EAAE,iBAAO,EAAE,yBAAW,CAAC,CAAA;IACzD,CAAC;CAAA;AAED,kBAAe,SAAS,CAAA","file":"XtsConfig.js","sourcesContent":["import { IFileLaneConfig } from 'file-lane'\nimport { generateEntryFile } from '../followWorks/xts/entryTemplate'\nimport { generateRpk } from '../followWorks/xts/generateRpk'\nimport { ts2wasm } from '../followWorks/xts/ts2wasm'\nimport XtsLoader from '../loader/xts/XtsLoader'\nimport { preInstall } from '../preWorks/xts/preInstall'\n\n/**\n * XtsConfig\n */\nclass XtsConfig implements IFileLaneConfig {\n exclude = [/node_modules/, /dist/, /build/, /wasmUnpacked/]\n output = 'build'\n module = {\n rules: [\n {\n test: [/\\.xts$/],\n loader: [XtsLoader]\n }\n ]\n }\n preWorks = [preInstall]\n followWorks = [generateEntryFile, ts2wasm, generateRpk]\n}\n\nexport default XtsConfig\n"],"sourceRoot":"../../src"}
|
|
@@ -121,7 +121,7 @@ function generateEntryFile(context) {
|
|
|
121
121
|
const { projectPath, output } = context;
|
|
122
122
|
ColorConsole_1.default.log({
|
|
123
123
|
level: shared_utils_1.LOG_LEVEL.Info,
|
|
124
|
-
message: `
|
|
124
|
+
message: `Generating entry file`
|
|
125
125
|
});
|
|
126
126
|
const dist = path_1.default.resolve(projectPath, output);
|
|
127
127
|
const manifests = yield (0, fast_glob_1.default)(`${dist}/**/manifest.json`);
|
|
@@ -157,7 +157,7 @@ function generateEntryFile(context) {
|
|
|
157
157
|
fs_extra_1.default.writeFileSync(path_1.default.join(projectPath, output, exports.XtsEntryFileName), template);
|
|
158
158
|
ColorConsole_1.default.log({
|
|
159
159
|
level: shared_utils_1.LOG_LEVEL.Info,
|
|
160
|
-
message: `
|
|
160
|
+
message: `Entry file built`
|
|
161
161
|
});
|
|
162
162
|
});
|
|
163
163
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["followWorks/xts/entryTemplate.ts"],"names":[],"mappings":"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","file":"entryTemplate.js","sourcesContent":["import { HomeState, tsFrameWork } from '@aiot-toolkit/parser/lib/xts/enum/Framework'\nimport { LOG_LEVEL } from '@aiot-toolkit/shared-utils'\nimport ColorConsole from '@aiot-toolkit/shared-utils/lib/ColorConsole'\nimport FastGlob from 'fast-glob'\nimport { IFileLaneContext } from 'file-lane'\nimport Fs from 'fs-extra'\nimport Path from 'path'\nexport interface Aspects {\n path: string\n name: string\n routes?: {\n importPath: string\n name: string\n route: string\n }[]\n}\n\nexport interface GenerateEntryParams {\n appPath: string\n aspects?: Aspects[]\n}\n\nexport const entryTemplate = (options: GenerateEntryParams) => {\n const { aspects = [] } = options\n\n function generatImportAspects() {\n if (!aspects) return ''\n let imports = '// import aspects\\n'\n for (let i = 0; i < aspects.length; i++) {\n const aspect = aspects[i]\n imports += `import AspectClass${i + 1} from './${aspect.path}'\\n`\n const { routes = [] } = aspect\n for (let r = 0; r < routes?.length; r++) {\n const route = routes[r]\n imports += `import Page${i + 1}_${r + 1}, { ${HomeState.interface} as ${\n HomeState.interface\n }${i + 1}_${r + 1}_ } from './${route.importPath}'\\n`\n }\n }\n return imports\n }\n\n function generateDefs() {\n let res = '// aspects\\n'\n for (let i = 0; i < aspects.length; i++) {\n const aspect = aspects[i]\n const { routes = [] } = aspect\n for (let r = 0; r < routes.length; r++) {\n const route = routes[r]\n res += `\n const pathPages${i + 1}_${r + 1} = new Map()\n pathPages${i + 1}_${r + 1}.set('${route.route}', function (params: ${HomeState.interface}${\n i + 1\n }_${r + 1}_): Page {\n return new Page${i + 1}_${r + 1}(params)\n })\n const aspectName_${i + 1} = '${aspect.name}'\n const aspectDef_${i + 1}: AspectDefinition = {\n newFn: (): ViewAspect => new AspectClass${i + 1}(),\n pathPages: pathPages${i + 1}_${r + 1}\n } \n aspectDefs.set(aspectName_${i + 1}, aspectDef_${i + 1})`\n }\n }\n\n return res\n }\n\n return `import {\n // class\n App,\n AppDefinition,\n AppContainer,\n AspectDefinition,\n ViewAspect,\n Page,\n Route,\n RouteInfo,\n // framework\n context,\n getInfoFromRoute,\n\n // export function\n on\n} from '../node_modules/${tsFrameWork.name}/index'\n\n// import app\nimport AppClass from './${options.appPath}'\n${generatImportAspects()}\nconsole.log('startApp-start timeEnd:', Date.now())\n\nfunction getAspectDefs() {\n const aspectDefs = new Map()\n ${generateDefs()}\n return aspectDefs\n}\n\nfunction entry(path: string): void {\n console.log('~~~~~~~~~entry path', path)\n const route: Route = { uri: path }\n const routeInfo: RouteInfo = getInfoFromRoute(route)\n // app\n let appName: string = ''\n if (routeInfo?.appName) appName = routeInfo.appName\n let app = context.getApp(appName)\n if (app === null) {\n const appDef: AppDefinition = {\n newFn: (): App => new AppClass()\n }\n const aspectDefs = getAspectDefs()\n app = new AppContainer(appDef, aspectDefs)\n }\n context.openApp(app, routeInfo)\n}\n\n// export api to native\nexport { entry, on }\n`\n}\n\nexport const XtsEntryFileName = '__entry__.ts'\n/**\n * 生成 __entry__.ts 文件\n * @param context\n */\nexport async function generateEntryFile(context: IFileLaneContext) {\n const { projectPath, output } = context\n ColorConsole.log({\n level: LOG_LEVEL.Info,\n message: `
|
|
1
|
+
{"version":3,"sources":["followWorks/xts/entryTemplate.ts"],"names":[],"mappings":"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","file":"entryTemplate.js","sourcesContent":["import { HomeState, tsFrameWork } from '@aiot-toolkit/parser/lib/xts/enum/Framework'\nimport { LOG_LEVEL } from '@aiot-toolkit/shared-utils'\nimport ColorConsole from '@aiot-toolkit/shared-utils/lib/ColorConsole'\nimport FastGlob from 'fast-glob'\nimport { IFileLaneContext } from 'file-lane'\nimport Fs from 'fs-extra'\nimport Path from 'path'\nexport interface Aspects {\n path: string\n name: string\n routes?: {\n importPath: string\n name: string\n route: string\n }[]\n}\n\nexport interface GenerateEntryParams {\n appPath: string\n aspects?: Aspects[]\n}\n\nexport const entryTemplate = (options: GenerateEntryParams) => {\n const { aspects = [] } = options\n\n function generatImportAspects() {\n if (!aspects) return ''\n let imports = '// import aspects\\n'\n for (let i = 0; i < aspects.length; i++) {\n const aspect = aspects[i]\n imports += `import AspectClass${i + 1} from './${aspect.path}'\\n`\n const { routes = [] } = aspect\n for (let r = 0; r < routes?.length; r++) {\n const route = routes[r]\n imports += `import Page${i + 1}_${r + 1}, { ${HomeState.interface} as ${\n HomeState.interface\n }${i + 1}_${r + 1}_ } from './${route.importPath}'\\n`\n }\n }\n return imports\n }\n\n function generateDefs() {\n let res = '// aspects\\n'\n for (let i = 0; i < aspects.length; i++) {\n const aspect = aspects[i]\n const { routes = [] } = aspect\n for (let r = 0; r < routes.length; r++) {\n const route = routes[r]\n res += `\n const pathPages${i + 1}_${r + 1} = new Map()\n pathPages${i + 1}_${r + 1}.set('${route.route}', function (params: ${HomeState.interface}${\n i + 1\n }_${r + 1}_): Page {\n return new Page${i + 1}_${r + 1}(params)\n })\n const aspectName_${i + 1} = '${aspect.name}'\n const aspectDef_${i + 1}: AspectDefinition = {\n newFn: (): ViewAspect => new AspectClass${i + 1}(),\n pathPages: pathPages${i + 1}_${r + 1}\n } \n aspectDefs.set(aspectName_${i + 1}, aspectDef_${i + 1})`\n }\n }\n\n return res\n }\n\n return `import {\n // class\n App,\n AppDefinition,\n AppContainer,\n AspectDefinition,\n ViewAspect,\n Page,\n Route,\n RouteInfo,\n // framework\n context,\n getInfoFromRoute,\n\n // export function\n on\n} from '../node_modules/${tsFrameWork.name}/index'\n\n// import app\nimport AppClass from './${options.appPath}'\n${generatImportAspects()}\nconsole.log('startApp-start timeEnd:', Date.now())\n\nfunction getAspectDefs() {\n const aspectDefs = new Map()\n ${generateDefs()}\n return aspectDefs\n}\n\nfunction entry(path: string): void {\n console.log('~~~~~~~~~entry path', path)\n const route: Route = { uri: path }\n const routeInfo: RouteInfo = getInfoFromRoute(route)\n // app\n let appName: string = ''\n if (routeInfo?.appName) appName = routeInfo.appName\n let app = context.getApp(appName)\n if (app === null) {\n const appDef: AppDefinition = {\n newFn: (): App => new AppClass()\n }\n const aspectDefs = getAspectDefs()\n app = new AppContainer(appDef, aspectDefs)\n }\n context.openApp(app, routeInfo)\n}\n\n// export api to native\nexport { entry, on }\n`\n}\n\nexport const XtsEntryFileName = '__entry__.ts'\n/**\n * 生成 __entry__.ts 文件\n * @param context\n */\nexport async function generateEntryFile(context: IFileLaneContext) {\n const { projectPath, output } = context\n ColorConsole.log({\n level: LOG_LEVEL.Info,\n message: `Generating entry file`\n })\n const dist = Path.resolve(projectPath, output)\n const manifests = await FastGlob(`${dist}/**/manifest.json`)\n\n function relativeDist(tar: string) {\n return Path.join('.', Path.relative(dist, tar)).replace(Path.sep, '/')\n }\n\n const appTs = await FastGlob(`${dist}/**/app.ts`)\n if (appTs.length !== 1) {\n ColorConsole.log({ level: LOG_LEVEL.Error, message: 'app.ts can only have one!' })\n }\n let opt: GenerateEntryParams = {\n appPath: relativeDist(appTs[0].replace('.ts', '')),\n aspects: []\n }\n\n for (const manifest of manifests) {\n const content = Fs.readFileSync(manifest, 'utf-8')\n const data = JSON.parse(content)\n if (data?.router?.pages) {\n opt.aspects?.push({\n name: data.name,\n path: relativeDist(Path.resolve(Path.dirname(manifest), 'aspect')),\n routes: Object.entries<{ path: string }>(data?.router?.pages).map(([k, v]) => {\n return {\n importPath: relativeDist(Path.resolve(Path.dirname(manifest), v.path)),\n name: k,\n route: v.path\n }\n })\n })\n }\n }\n\n const template = entryTemplate(opt)\n Fs.writeFileSync(Path.join(projectPath, output, XtsEntryFileName), template)\n ColorConsole.log({\n level: LOG_LEVEL.Info,\n message: `Entry file built`\n })\n}\n"],"sourceRoot":"../../../src"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.generateRpk = void 0;
|
|
7
|
+
const XtsFollowWorks_1 = __importDefault(require("../../utils/xts/XtsFollowWorks"));
|
|
8
|
+
const ts2wasm_1 = require("./ts2wasm");
|
|
9
|
+
const generateRpk = (context) => {
|
|
10
|
+
return XtsFollowWorks_1.default.defaultZipProject(context, { tarDir: ts2wasm_1.wasmPackageName });
|
|
11
|
+
};
|
|
12
|
+
exports.generateRpk = generateRpk;
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=generateRpk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["followWorks/xts/generateRpk.ts"],"names":[],"mappings":";;;;;;AACA,oFAA2D;AAE3D,uCAA2C;AAEpC,MAAM,WAAW,GAAe,CAAC,OAAO,EAAE,EAAE;IACjD,OAAO,wBAAc,CAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,yBAAe,EAAE,CAAC,CAAA;AAC/E,CAAC,CAAA;AAFY,QAAA,WAAW,eAEvB","file":"generateRpk.js","sourcesContent":["import { FollowWork } from 'file-lane/lib/interface/IFileLaneConfig'\nimport XtsFollowWorks from '../../utils/xts/XtsFollowWorks'\n\nimport { wasmPackageName } from './ts2wasm'\n\nexport const generateRpk: FollowWork = (context) => {\n return XtsFollowWorks.defaultZipProject(context, { tarDir: wasmPackageName })\n}\n"],"sourceRoot":"../../../src"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FollowWork } from 'file-lane/lib/interface/IFileLaneConfig';
|
|
2
|
+
export declare const wasmPackageName = "wasmUnpacked";
|
|
2
3
|
/**
|
|
3
4
|
* 将 __entry__.ts 文件打包成 warm 文件
|
|
4
5
|
* @param context
|
|
5
6
|
*/
|
|
6
|
-
export declare
|
|
7
|
+
export declare const ts2wasm: FollowWork;
|
|
@@ -12,20 +12,56 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.ts2wasm = void 0;
|
|
15
|
+
exports.ts2wasm = exports.wasmPackageName = void 0;
|
|
16
|
+
const shared_utils_1 = require("@aiot-toolkit/shared-utils");
|
|
17
|
+
const ColorConsole_1 = __importDefault(require("@aiot-toolkit/shared-utils/lib/ColorConsole"));
|
|
18
|
+
const child_process_1 = require("child_process");
|
|
19
|
+
const fast_glob_1 = __importDefault(require("fast-glob"));
|
|
20
|
+
const fs_1 = __importDefault(require("fs"));
|
|
16
21
|
const path_1 = __importDefault(require("path"));
|
|
17
22
|
const entryTemplate_1 = require("./entryTemplate");
|
|
23
|
+
exports.wasmPackageName = 'wasmUnpacked';
|
|
18
24
|
/**
|
|
19
25
|
* 将 __entry__.ts 文件打包成 warm 文件
|
|
20
26
|
* @param context
|
|
21
27
|
*/
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
const entryFile = path_1.default.resolve(buildDir, entryTemplate_1.XtsEntryFileName);
|
|
28
|
+
const ts2wasm = (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
+
ColorConsole_1.default.log({
|
|
30
|
+
level: shared_utils_1.LOG_LEVEL.Info,
|
|
31
|
+
message: 'Waiting for generating app.wasm file.'
|
|
27
32
|
});
|
|
28
|
-
|
|
33
|
+
/** 1. 生成 app.wasm 文件 */
|
|
34
|
+
const { projectPath, output } = context;
|
|
35
|
+
const buildDir = path_1.default.resolve(projectPath, output);
|
|
36
|
+
const entryFile = path_1.default.resolve(buildDir, entryTemplate_1.XtsEntryFileName);
|
|
37
|
+
const wasmDir = path_1.default.resolve(projectPath, exports.wasmPackageName);
|
|
38
|
+
fs_1.default.mkdirSync(wasmDir, {
|
|
39
|
+
recursive: true
|
|
40
|
+
});
|
|
41
|
+
// TODO: 后续修改为 @mi
|
|
42
|
+
const ts2wasmpath = path_1.default.resolve(projectPath, 'node_modules', 'mi/wasmnizer-ts');
|
|
43
|
+
const res = (0, child_process_1.execSync)(`node ${ts2wasmpath}/build/cli/ts2wasm.js ${entryFile} -o ${wasmDir}/app.wasm`, {
|
|
44
|
+
encoding: 'utf-8'
|
|
45
|
+
});
|
|
46
|
+
ColorConsole_1.default.log({
|
|
47
|
+
level: shared_utils_1.LOG_LEVEL.Info,
|
|
48
|
+
message: res
|
|
49
|
+
});
|
|
50
|
+
/** 2. 拷贝静态资源 */
|
|
51
|
+
// TODO: ignore 数组待优化
|
|
52
|
+
const files = fast_glob_1.default.sync(`${fast_glob_1.default.convertPathToPattern(projectPath)}/${output}/**/*`, {
|
|
53
|
+
absolute: true,
|
|
54
|
+
ignore: ['**/*.ts', '**/*.xts', '**/package.json', '**/package-lock.json', '**/*.wasm'],
|
|
55
|
+
onlyFiles: true
|
|
56
|
+
});
|
|
57
|
+
for (const from of files) {
|
|
58
|
+
const to = from.replace('/src', '').replace(`/${output}`, `/${exports.wasmPackageName}`);
|
|
59
|
+
fs_1.default.mkdirSync(path_1.default.dirname(to), {
|
|
60
|
+
recursive: true
|
|
61
|
+
});
|
|
62
|
+
fs_1.default.copyFileSync(from, to);
|
|
63
|
+
}
|
|
64
|
+
});
|
|
29
65
|
exports.ts2wasm = ts2wasm;
|
|
30
66
|
|
|
31
67
|
//# sourceMappingURL=ts2wasm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["followWorks/xts/ts2wasm.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"sources":["followWorks/xts/ts2wasm.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6DAAsD;AACtD,+FAAsE;AACtE,iDAAwC;AACxC,0DAA0B;AAE1B,4CAAmB;AACnB,gDAAuB;AACvB,mDAAkD;AAErC,QAAA,eAAe,GAAG,cAAc,CAAA;AAE7C;;;GAGG;AACI,MAAM,OAAO,GAAe,CAAO,OAAO,EAAE,EAAE;IACnD,sBAAY,CAAC,GAAG,CAAC;QACf,KAAK,EAAE,wBAAS,CAAC,IAAI;QACrB,OAAO,EAAE,uCAAuC;KACjD,CAAC,CAAA;IACF,wBAAwB;IACxB,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAEvC,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IAClD,MAAM,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,gCAAgB,CAAC,CAAA;IAC1D,MAAM,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,WAAW,EAAE,uBAAe,CAAC,CAAA;IAC1D,YAAE,CAAC,SAAS,CAAC,OAAO,EAAE;QACpB,SAAS,EAAE,IAAI;KAChB,CAAC,CAAA;IACF,kBAAkB;IAClB,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAAA;IAChF,MAAM,GAAG,GAAG,IAAA,wBAAQ,EAClB,QAAQ,WAAW,0BAA0B,SAAS,OAAO,OAAO,WAAW,EAC/E;QACE,QAAQ,EAAE,OAAO;KAClB,CACF,CAAA;IACD,sBAAY,CAAC,GAAG,CAAC;QACf,KAAK,EAAE,wBAAS,CAAC,IAAI;QACrB,OAAO,EAAE,GAAG;KACb,CAAC,CAAA;IACF,gBAAgB;IAChB,qBAAqB;IACrB,MAAM,KAAK,GAAG,mBAAE,CAAC,IAAI,CAAC,GAAG,mBAAE,CAAC,oBAAoB,CAAC,WAAW,CAAC,IAAI,MAAM,OAAO,EAAE;QAC9E,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,WAAW,CAAC;QACvF,SAAS,EAAE,IAAI;KAChB,CAAC,CAAA;IAEF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,MAAM,EAAE,EAAE,IAAI,uBAAe,EAAE,CAAC,CAAA;QAChF,YAAE,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YAC7B,SAAS,EAAE,IAAI;SAChB,CAAC,CAAA;QACF,YAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;KAC1B;AACH,CAAC,CAAA,CAAA;AAzCY,QAAA,OAAO,WAyCnB","file":"ts2wasm.js","sourcesContent":["import { LOG_LEVEL } from '@aiot-toolkit/shared-utils'\nimport ColorConsole from '@aiot-toolkit/shared-utils/lib/ColorConsole'\nimport { execSync } from 'child_process'\nimport fg from 'fast-glob'\nimport { FollowWork } from 'file-lane/lib/interface/IFileLaneConfig'\nimport fs from 'fs'\nimport path from 'path'\nimport { XtsEntryFileName } from './entryTemplate'\n\nexport const wasmPackageName = 'wasmUnpacked'\n\n/**\n * 将 __entry__.ts 文件打包成 warm 文件\n * @param context\n */\nexport const ts2wasm: FollowWork = async (context) => {\n ColorConsole.log({\n level: LOG_LEVEL.Info,\n message: 'Waiting for generating app.wasm file.'\n })\n /** 1. 生成 app.wasm 文件 */\n const { projectPath, output } = context\n\n const buildDir = path.resolve(projectPath, output)\n const entryFile = path.resolve(buildDir, XtsEntryFileName)\n const wasmDir = path.resolve(projectPath, wasmPackageName)\n fs.mkdirSync(wasmDir, {\n recursive: true\n })\n // TODO: 后续修改为 @mi\n const ts2wasmpath = path.resolve(projectPath, 'node_modules', 'mi/wasmnizer-ts')\n const res = execSync(\n `node ${ts2wasmpath}/build/cli/ts2wasm.js ${entryFile} -o ${wasmDir}/app.wasm`,\n {\n encoding: 'utf-8'\n }\n )\n ColorConsole.log({\n level: LOG_LEVEL.Info,\n message: res\n })\n /** 2. 拷贝静态资源 */\n // TODO: ignore 数组待优化\n const files = fg.sync(`${fg.convertPathToPattern(projectPath)}/${output}/**/*`, {\n absolute: true,\n ignore: ['**/*.ts', '**/*.xts', '**/package.json', '**/package-lock.json', '**/*.wasm'],\n onlyFiles: true\n })\n\n for (const from of files) {\n const to = from.replace('/src', '').replace(`/${output}`, `/${wasmPackageName}`)\n fs.mkdirSync(path.dirname(to), {\n recursive: true\n })\n fs.copyFileSync(from, to)\n }\n}\n"],"sourceRoot":"../../../src"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.preInstall = void 0;
|
|
16
|
+
const child_process_1 = require("child_process");
|
|
17
|
+
const fs_1 = __importDefault(require("fs"));
|
|
18
|
+
const path_1 = __importDefault(require("path"));
|
|
19
|
+
const preInstall = (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
20
|
+
const { projectPath } = context;
|
|
21
|
+
const packagePath = path_1.default.resolve(projectPath, 'package.json');
|
|
22
|
+
const preContent = {
|
|
23
|
+
dependencies: {
|
|
24
|
+
'@mi/ts-framework': 'https://pkgs.d.xiaomi.net:443/artifactory/api/npm/mi-npm/@mi/ts-framework/-/@mi/ts-framework-1.0.5.tgz',
|
|
25
|
+
'@mi/wasmnizer-ts': 'https://pkgs.d.xiaomi.net:443/artifactory/api/npm/mi-npm/@mi/wasmnizer-ts/-/@mi/wasmnizer-ts-0.0.9.tgz'
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
if (!fs_1.default.existsSync(packagePath)) {
|
|
29
|
+
/** 如果没有 package.json 则创建 */
|
|
30
|
+
fs_1.default.writeFileSync(packagePath, JSON.stringify(preContent), {
|
|
31
|
+
encoding: 'utf-8'
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
const pckageContent = require(packagePath);
|
|
36
|
+
if (!pckageContent.dependencies['@mi/ts-framework'] ||
|
|
37
|
+
!pckageContent.dependencies['@mi/wasmnizer-ts']) {
|
|
38
|
+
Object.assign(pckageContent, preContent);
|
|
39
|
+
fs_1.default.writeFileSync(packagePath, JSON.stringify(pckageContent), {
|
|
40
|
+
encoding: 'utf-8'
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
(0, child_process_1.execSync)('npm install', {
|
|
45
|
+
cwd: projectPath
|
|
46
|
+
});
|
|
47
|
+
// 目前ts2wasm不支持@符号
|
|
48
|
+
fs_1.default.renameSync(path_1.default.resolve(projectPath, 'node_modules/@mi'), path_1.default.resolve(projectPath, 'node_modules/mi'));
|
|
49
|
+
});
|
|
50
|
+
exports.preInstall = preInstall;
|
|
51
|
+
|
|
52
|
+
//# sourceMappingURL=preInstall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["preWorks/xts/preInstall.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAAwC;AAExC,4CAAmB;AACnB,gDAAuB;AAChB,MAAM,UAAU,GAAY,CAAO,OAAO,EAAE,EAAE;IACnD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAA;IAC/B,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;IAC7D,MAAM,UAAU,GAAG;QACjB,YAAY,EAAE;YACZ,kBAAkB,EAChB,wGAAwG;YAC1G,kBAAkB,EAChB,wGAAwG;SAC3G;KACF,CAAA;IAED,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;QAC/B,4BAA4B;QAC5B,YAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YACxD,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAA;KACH;SAAM;QACL,MAAM,aAAa,GAAwB,OAAO,CAAC,WAAW,CAAC,CAAA;QAC/D,IACE,CAAC,aAAa,CAAC,YAAY,CAAC,kBAAkB,CAAC;YAC/C,CAAC,aAAa,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAC/C;YACA,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;YACxC,YAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE;gBAC3D,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAA;SACH;KACF;IAED,IAAA,wBAAQ,EAAC,aAAa,EAAE;QACtB,GAAG,EAAE,WAAW;KACjB,CAAC,CAAA;IACF,kBAAkB;IAClB,YAAE,CAAC,UAAU,CACX,cAAI,CAAC,OAAO,CAAC,WAAW,EAAE,kBAAkB,CAAC,EAC7C,cAAI,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAC7C,CAAA;AACH,CAAC,CAAA,CAAA;AAtCY,QAAA,UAAU,cAsCtB","file":"preInstall.js","sourcesContent":["import { execSync } from 'child_process'\nimport { PreWork } from 'file-lane/lib/interface/IFileLaneConfig'\nimport fs from 'fs'\nimport path from 'path'\nexport const preInstall: PreWork = async (context) => {\n const { projectPath } = context\n const packagePath = path.resolve(projectPath, 'package.json')\n const preContent = {\n dependencies: {\n '@mi/ts-framework':\n 'https://pkgs.d.xiaomi.net:443/artifactory/api/npm/mi-npm/@mi/ts-framework/-/@mi/ts-framework-1.0.5.tgz',\n '@mi/wasmnizer-ts':\n 'https://pkgs.d.xiaomi.net:443/artifactory/api/npm/mi-npm/@mi/wasmnizer-ts/-/@mi/wasmnizer-ts-0.0.9.tgz'\n }\n }\n\n if (!fs.existsSync(packagePath)) {\n /** 如果没有 package.json 则创建 */\n fs.writeFileSync(packagePath, JSON.stringify(preContent), {\n encoding: 'utf-8'\n })\n } else {\n const pckageContent: Record<string, any> = require(packagePath)\n if (\n !pckageContent.dependencies['@mi/ts-framework'] ||\n !pckageContent.dependencies['@mi/wasmnizer-ts']\n ) {\n Object.assign(pckageContent, preContent)\n fs.writeFileSync(packagePath, JSON.stringify(pckageContent), {\n encoding: 'utf-8'\n })\n }\n }\n\n execSync('npm install', {\n cwd: projectPath\n })\n // 目前ts2wasm不支持@符号\n fs.renameSync(\n path.resolve(projectPath, 'node_modules/@mi'),\n path.resolve(projectPath, 'node_modules/mi')\n )\n}\n"],"sourceRoot":"../../../src"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { IFileLaneContext } from 'file-lane';
|
|
2
|
+
export interface DefaultZipProjectOptions {
|
|
3
|
+
tarDir?: string;
|
|
4
|
+
ext?: string;
|
|
5
|
+
}
|
|
2
6
|
/**
|
|
3
7
|
* XtsFollowWorks
|
|
4
8
|
*/
|
|
@@ -7,7 +11,7 @@ declare class XtsFollowWorks {
|
|
|
7
11
|
* 将项目中build文件夹的内容压缩成zip包,并将压缩产物放到dist文件夹下
|
|
8
12
|
* @param context
|
|
9
13
|
*/
|
|
10
|
-
static defaultZipProject(context: IFileLaneContext): Promise<void>;
|
|
14
|
+
static defaultZipProject(context: IFileLaneContext, options: DefaultZipProjectOptions): Promise<void>;
|
|
11
15
|
/**
|
|
12
16
|
* 将分布式项目按照manifest.json中的配置打包,思路如下:
|
|
13
17
|
* 1. 获取manifest中aspect的路由配置
|
|
@@ -24,6 +28,6 @@ declare class XtsFollowWorks {
|
|
|
24
28
|
* @param zipName
|
|
25
29
|
* @returns
|
|
26
30
|
*/
|
|
27
|
-
static getFilePath(projectPath: string, outputDir?: string, zipName?: string): string;
|
|
31
|
+
static getFilePath(projectPath: string, outputDir?: string, zipName?: string, ext?: string): string;
|
|
28
32
|
}
|
|
29
33
|
export default XtsFollowWorks;
|
|
@@ -26,9 +26,10 @@ class XtsFollowWorks {
|
|
|
26
26
|
* 将项目中build文件夹的内容压缩成zip包,并将压缩产物放到dist文件夹下
|
|
27
27
|
* @param context
|
|
28
28
|
*/
|
|
29
|
-
static defaultZipProject(context) {
|
|
29
|
+
static defaultZipProject(context, options) {
|
|
30
30
|
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
-
const {
|
|
31
|
+
const { projectPath } = context;
|
|
32
|
+
const output = options.tarDir || context.output;
|
|
32
33
|
const buildPath = path_1.default.join(projectPath, output);
|
|
33
34
|
const zipPath = path_1.default.join(projectPath, 'dist');
|
|
34
35
|
// buildPath必须是真实文件夹路径
|
|
@@ -43,7 +44,7 @@ class XtsFollowWorks {
|
|
|
43
44
|
fs_extra_1.default.ensureDirSync(zipPath);
|
|
44
45
|
// 清空dist文件夹
|
|
45
46
|
fs_extra_1.default.emptyDirSync(zipPath);
|
|
46
|
-
const filePath = XtsFollowWorks.getFilePath(projectPath);
|
|
47
|
+
const filePath = XtsFollowWorks.getFilePath(projectPath, 'dist', undefined, 'rpk');
|
|
47
48
|
yield FileLaneUtil_1.default.zipProject([buildPath], filePath);
|
|
48
49
|
}
|
|
49
50
|
catch (err) {
|
|
@@ -138,8 +139,8 @@ class XtsFollowWorks {
|
|
|
138
139
|
* @param zipName
|
|
139
140
|
* @returns
|
|
140
141
|
*/
|
|
141
|
-
static getFilePath(projectPath, outputDir = 'dist', zipName) {
|
|
142
|
-
zipName = zipName ? `${zipName}
|
|
142
|
+
static getFilePath(projectPath, outputDir = 'dist', zipName, ext = 'zip') {
|
|
143
|
+
zipName = zipName ? `${zipName}.${ext}` : `${path_1.default.basename(projectPath)}.${ext}`;
|
|
143
144
|
const zipPath = path_1.default.join(projectPath, outputDir);
|
|
144
145
|
return path_1.default.join(zipPath, zipName);
|
|
145
146
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["utils/xts/XtsFollowWorks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,6DAAsD;AACtD,+FAAsE;AAEtE,oFAA2D;AAC3D,wDAAyB;AACzB,gDAAuB;AAEvB,sEAA6C;
|
|
1
|
+
{"version":3,"sources":["utils/xts/XtsFollowWorks.ts"],"names":[],"mappings":"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","file":"XtsFollowWorks.js","sourcesContent":["import { LOG_LEVEL } from '@aiot-toolkit/shared-utils'\nimport ColorConsole from '@aiot-toolkit/shared-utils/lib/ColorConsole'\nimport { IFileLaneContext } from 'file-lane'\nimport FileLaneUtil from 'file-lane/lib/utils/FileLaneUtil'\nimport Fs from 'fs-extra'\nimport Path from 'path'\nimport IDeviceList from '../../interface/IDeviceList'\nimport UxFileUtils from './../ux/UxFileUtils'\n\nexport interface DefaultZipProjectOptions {\n tarDir?: string\n ext?: string\n}\n\n/**\n * XtsFollowWorks\n */\nclass XtsFollowWorks {\n /**\n * 将项目中build文件夹的内容压缩成zip包,并将压缩产物放到dist文件夹下\n * @param context\n */\n static async defaultZipProject(context: IFileLaneContext, options: DefaultZipProjectOptions) {\n const { projectPath } = context\n const output = options.tarDir || context.output\n const buildPath = Path.join(projectPath, output)\n const zipPath = Path.join(projectPath, 'dist')\n // buildPath必须是真实文件夹路径\n if (!Fs.existsSync(buildPath)) {\n ColorConsole.log({\n level: LOG_LEVEL.Error,\n message: `XtsConfig follwWorkers zip build error, buildPath not exist`\n })\n }\n try {\n // 确认文件夹是否存在,不存在则创建\n Fs.ensureDirSync(zipPath)\n // 清空dist文件夹\n Fs.emptyDirSync(zipPath)\n const filePath = XtsFollowWorks.getFilePath(projectPath, 'dist', undefined, 'rpk')\n await FileLaneUtil.zipProject([buildPath], filePath)\n } catch (err) {\n ColorConsole.log({ level: LOG_LEVEL.Error, message: (err as Error).message })\n }\n }\n /**\n * 将分布式项目按照manifest.json中的配置打包,思路如下:\n * 1. 获取manifest中aspect的路由配置\n * 2. 对aspects中的所有路由信息进行遍历\n * 3. 按照设备(设备+rule)对aspect分类\n * 4. 按照设备列表分别进行打包\n * @param context\n */\n static async zipDistributedQuickApp(context: IFileLaneContext) {\n const deviceList: IDeviceList[] = [\n {\n device: 'phone',\n aspectList: []\n }\n ]\n const { projectPath, output } = context\n const manifestPath = UxFileUtils.getManifestFilePath(projectPath, 'app')\n if (Fs.existsSync(manifestPath)) {\n //获取manifest.json内容\n const aspectsRule = Fs.readJSONSync(manifestPath)?.router?.aspects\n if (aspectsRule) {\n Object.keys(aspectsRule).forEach((aspectRule) => {\n // 分别处理每个aspectRule数组\n for (let item of aspectsRule[aspectRule]) {\n const { devices, rule, path } = item\n // 如果存在设备列表\n if (devices && Array.isArray(devices) && devices.length > 0) {\n for (let device of devices) {\n // 设备名与rule组合为一个设备\n if (rule) {\n device = `${device}.${rule}`\n }\n // 查找设备是否已存在于设备列表中\n const index =\n device === 'phone' ? 0 : deviceList.findIndex((item) => item.device === device)\n if (index === -1) {\n // 新设备\n deviceList.push({\n device,\n aspectList: [path]\n })\n } else {\n // 已存在的设备信息时,仅需添加aspect路由\n deviceList[index].aspectList.push(path)\n }\n }\n } else {\n // 设备值默认值为phone\n deviceList[0].aspectList.push(path)\n }\n }\n })\n }\n const zipPath = Path.join(projectPath, 'dist')\n\n Fs.ensureDirSync(zipPath)\n Fs.emptyDirSync(zipPath)\n // 根据deviceList进行打包\n for (const item of deviceList) {\n // 所有zip包都需要app信息\n item.aspectList.push('app')\n // 将路由转为真实路径\n const buildPaths = item.aspectList.map((name) => Path.join(projectPath, output, name))\n const filePath = XtsFollowWorks.getFilePath(projectPath, 'dist', item.device)\n try {\n await FileLaneUtil.zipProject(buildPaths, filePath)\n } catch (error) {}\n }\n } else {\n ColorConsole.log({\n level: LOG_LEVEL.Error,\n message: 'zip DistributedQuickApp not find manifest.json'\n })\n }\n }\n /**\n * 根据项目路径,打包文件夹名和传入的压缩包名,生成压缩文件zip路径\n * @param projectPath\n * @param outputDir\n * @param zipName\n * @returns\n */\n static getFilePath(\n projectPath: string,\n outputDir: string = 'dist',\n zipName?: string,\n ext = 'zip'\n ) {\n zipName = zipName ? `${zipName}.${ext}` : `${Path.basename(projectPath)}.${ext}`\n const zipPath = Path.join(projectPath, outputDir)\n return Path.join(zipPath, zipName)\n }\n}\nexport default XtsFollowWorks\n"],"sourceRoot":"../../../src"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aiot-toolkit/aiotpack",
|
|
3
|
-
"version": "2.0.1-alpha.
|
|
3
|
+
"version": "2.0.1-alpha.5",
|
|
4
4
|
"description": "The process tool for packaging aiot projects.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"aiotpack"
|
|
@@ -24,13 +24,13 @@
|
|
|
24
24
|
"test": "node ./__tests__/aiotpack.test.js"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aiot-toolkit/generator": "2.0.1-alpha.
|
|
28
|
-
"@aiot-toolkit/parser": "2.0.1-alpha.
|
|
27
|
+
"@aiot-toolkit/generator": "2.0.1-alpha.5",
|
|
28
|
+
"@aiot-toolkit/parser": "2.0.1-alpha.5",
|
|
29
29
|
"@hap-toolkit/aaptjs": "^2.0.0",
|
|
30
30
|
"babel-loader": "^9.1.3",
|
|
31
31
|
"del": "^4.1.0",
|
|
32
32
|
"fast-glob": "^3.3.2",
|
|
33
|
-
"file-lane": "2.0.1-alpha.
|
|
33
|
+
"file-lane": "2.0.1-alpha.5",
|
|
34
34
|
"file-loader": "^6.2.0",
|
|
35
35
|
"fs-extra": "^11.2.0",
|
|
36
36
|
"jsrsasign": "^7.2.2",
|
|
@@ -43,5 +43,5 @@
|
|
|
43
43
|
"@types/jsrsasign": "^10.5.12",
|
|
44
44
|
"@types/webpack-sources": "^3.2.3"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "d3273faeee08de84d6554bb2a74874dc44d30090"
|
|
47
47
|
}
|