@aiot-toolkit/aiotpack 2.0.3-beta.7 → 2.0.3-beta.9

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.
Files changed (56) hide show
  1. package/lib/afterCompile/ux/UxAfterCompile.js +303 -266
  2. package/lib/afterCompile/xts/entryTemplate.js +111 -113
  3. package/lib/afterCompile/xts/generateRpk.js +25 -54
  4. package/lib/afterCompile/xts/ts2wasm.js +62 -63
  5. package/lib/afterWorks/ux/UxAfterWorks.js +12 -19
  6. package/lib/beforeCompile/ux/UxBeforeCompile.js +26 -25
  7. package/lib/beforeCompile/xts/preInstall.js +50 -55
  8. package/lib/beforeWorks/ux/UxBeforeWorks.js +12 -19
  9. package/lib/compiler/enum/CompileMode.js +16 -23
  10. package/lib/compiler/interface/ICompileParam.js +1 -2
  11. package/lib/compiler/interface/ICompiler.js +1 -2
  12. package/lib/compiler/interface/ISignConfig.js +1 -2
  13. package/lib/compiler/javascript/JavascriptCompiler.js +147 -154
  14. package/lib/compiler/javascript/JavascriptDefaultCompileOption.js +20 -16
  15. package/lib/compiler/javascript/android/AndroidWebpackConfigurator.js +13 -11
  16. package/lib/compiler/javascript/android/plugin/WrapPlugin.js +52 -48
  17. package/lib/compiler/javascript/interface/IJavascriptCompileOption.js +1 -2
  18. package/lib/compiler/javascript/interface/IWebpackConfigurator.js +4 -1
  19. package/lib/compiler/javascript/vela/VelaWebpackConfigurator.js +78 -75
  20. package/lib/compiler/javascript/vela/enum/BuildNameFormatType.js +30 -41
  21. package/lib/compiler/javascript/vela/enum/EntryType.js +15 -29
  22. package/lib/compiler/javascript/vela/interface/IChunk.js +4 -1
  23. package/lib/compiler/javascript/vela/interface/IManifest.js +1 -2
  24. package/lib/compiler/javascript/vela/interface/IQuickAppConfig.js +1 -2
  25. package/lib/compiler/javascript/vela/model/Package.js +80 -51
  26. package/lib/compiler/javascript/vela/plugin/WrapPlugin.js +30 -26
  27. package/lib/compiler/javascript/vela/utils/Jsc.js +30 -33
  28. package/lib/compiler/javascript/vela/utils/UxCompileUtil.js +152 -130
  29. package/lib/compiler/javascript/vela/utils/ZipUtil.js +282 -276
  30. package/lib/compiler/javascript/vela/utils/signature/Base64.js +65 -67
  31. package/lib/compiler/javascript/vela/utils/signature/CRC32.js +37 -35
  32. package/lib/compiler/javascript/vela/utils/signature/SignUtil.js +755 -731
  33. package/lib/compiler/javascript/vela/utils/signature/Signer.js +24 -22
  34. package/lib/compiler/javascript/vela/utils/webpackLoader/addColSourceMap.js +47 -52
  35. package/lib/compiler/javascript/vela/utils/webpackLoader/extractMapData.js +21 -17
  36. package/lib/config/UxConfig.js +145 -173
  37. package/lib/config/XtsConfig.js +30 -40
  38. package/lib/index.js +88 -41
  39. package/lib/interface/ICompileOptions.js +5 -2
  40. package/lib/interface/IDeviceList.js +1 -2
  41. package/lib/loader/ux/JsLoader.js +32 -30
  42. package/lib/loader/ux/PngLoader.js +47 -53
  43. package/lib/loader/ux/android/UxLoader.js +30 -31
  44. package/lib/loader/ux/vela/AppUxLoader.js +23 -24
  45. package/lib/loader/ux/vela/HmlLoader.js +59 -55
  46. package/lib/loader/ux/vela/UxLoader.js +29 -35
  47. package/lib/loader/xts/XtsLoader.js +55 -41
  48. package/lib/utils/BeforeCompileUtils.js +100 -92
  49. package/lib/utils/PngUtils.js +42 -36
  50. package/lib/utils/ux/ManifestSchema.js +198 -194
  51. package/lib/utils/ux/UxFileUtils.js +130 -116
  52. package/lib/utils/ux/UxLoaderUtils.js +292 -307
  53. package/lib/utils/ux/android/AndroidUx.js +88 -90
  54. package/lib/utils/xts/XtsFileLaneUtils.js +58 -65
  55. package/lib/utils/xts/XtsFollowWorks.js +122 -129
  56. package/package.json +6 -6
@@ -1,28 +1,30 @@
1
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
- const crypto_1 = __importDefault(require("crypto"));
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _crypto = _interopRequireDefault(require("crypto"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
9
  /**
8
10
  * Signer
9
11
  */
10
12
  class Signer {
11
- static setRemoteCryptoSignFunction(fn) {
12
- Signer._cryptoSignFunction = fn;
13
- }
14
- static getRemoteCryptoSignFunction() {
15
- return Signer._cryptoSignFunction;
16
- }
17
- /**
18
- * 使用RSA-SHA256
19
- * @param buffer
20
- * @param prikey
21
- */
22
- static defaultCryptoSignFunction(buffer, prikey) {
23
- const signer = crypto_1.default.createSign('RSA-SHA256');
24
- signer.update(buffer);
25
- return signer.sign(prikey);
26
- }
13
+ static setRemoteCryptoSignFunction(fn) {
14
+ Signer._cryptoSignFunction = fn;
15
+ }
16
+ static getRemoteCryptoSignFunction() {
17
+ return Signer._cryptoSignFunction;
18
+ }
19
+ /**
20
+ * 使用RSA-SHA256
21
+ * @param buffer
22
+ * @param prikey
23
+ */
24
+ static defaultCryptoSignFunction(buffer, prikey) {
25
+ const signer = _crypto.default.createSign('RSA-SHA256');
26
+ signer.update(buffer);
27
+ return signer.sign(prikey);
28
+ }
27
29
  }
28
- exports.default = Signer;
30
+ var _default = exports.default = Signer;
@@ -1,56 +1,51 @@
1
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
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const parser_1 = require("@aiot-toolkit/parser");
13
- function addColSourceMap(source, map) {
14
- return __awaiter(this, void 0, void 0, function* () {
15
- const callback = this.async();
16
- if (!map) {
17
- callback(null, source, map);
18
- }
19
- let { consumer, tempGenerator } = yield parser_1.SourceMapUtil.createConsumerAndGenerator(JSON.stringify(map));
20
- let recordLine = -1;
21
- consumer.eachMapping((mapping) => {
22
- if (mapping.source === consumer.sources[consumer.sources.length - 1]) {
23
- if (recordLine < mapping.generatedLine &&
24
- (mapping.generatedColumn !== 0 || mapping.originalColumn !== 0)) {
25
- tempGenerator.addMapping({
26
- generated: {
27
- line: mapping.generatedLine,
28
- column: 0
29
- },
30
- original: {
31
- line: mapping.originalLine,
32
- column: 0
33
- },
34
- source: mapping.source,
35
- name: ''
36
- });
37
- }
38
- recordLine = mapping.generatedLine;
39
- }
40
- tempGenerator.addMapping({
41
- generated: {
42
- line: mapping.generatedLine,
43
- column: mapping.generatedColumn
44
- },
45
- original: {
46
- line: mapping.originalLine,
47
- column: mapping.originalColumn
48
- },
49
- source: mapping.source,
50
- name: mapping.name
51
- });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _parser = require("@aiot-toolkit/parser");
8
+ async function addColSourceMap(source, map) {
9
+ const callback = this.async();
10
+ if (!map) {
11
+ callback(null, source, map);
12
+ }
13
+ let {
14
+ consumer,
15
+ tempGenerator
16
+ } = await _parser.SourceMapUtil.createConsumerAndGenerator(JSON.stringify(map));
17
+ let recordLine = -1;
18
+ consumer.eachMapping(mapping => {
19
+ if (mapping.source === consumer.sources[consumer.sources.length - 1]) {
20
+ if (recordLine < mapping.generatedLine && (mapping.generatedColumn !== 0 || mapping.originalColumn !== 0)) {
21
+ tempGenerator.addMapping({
22
+ generated: {
23
+ line: mapping.generatedLine,
24
+ column: 0
25
+ },
26
+ original: {
27
+ line: mapping.originalLine,
28
+ column: 0
29
+ },
30
+ source: mapping.source,
31
+ name: ''
52
32
  });
53
- callback(null, source, JSON.parse(tempGenerator.toString()));
33
+ }
34
+ recordLine = mapping.generatedLine;
35
+ }
36
+ tempGenerator.addMapping({
37
+ generated: {
38
+ line: mapping.generatedLine,
39
+ column: mapping.generatedColumn
40
+ },
41
+ original: {
42
+ line: mapping.originalLine,
43
+ column: mapping.originalColumn
44
+ },
45
+ source: mapping.source,
46
+ name: mapping.name
54
47
  });
48
+ });
49
+ callback(null, source, JSON.parse(tempGenerator.toString()));
55
50
  }
56
- exports.default = addColSourceMap;
51
+ var _default = exports.default = addColSourceMap;
@@ -1,20 +1,24 @@
1
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
- const fs_1 = __importDefault(require("fs"));
7
- const path_1 = __importDefault(require("path"));
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _fs = _interopRequireDefault(require("fs"));
8
+ var _path = _interopRequireDefault(require("path"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
10
  function extractMapData(source, map) {
9
- const enterFilePath = this.resourcePath;
10
- // 获取当前文件夹和文件名
11
- const dirName = path_1.default.dirname(enterFilePath);
12
- const fileName = path_1.default.basename(enterFilePath);
13
- // 取到对应的map文件内容
14
- const mapFilePath = path_1.default.join(dirName, fileName + '.map');
15
- if (fs_1.default.existsSync(mapFilePath)) {
16
- map = fs_1.default.readFileSync(mapFilePath, { encoding: 'utf-8' });
17
- }
18
- this.callback(null, source, map && JSON.parse(map));
11
+ const enterFilePath = this.resourcePath;
12
+ // 获取当前文件夹和文件名
13
+ const dirName = _path.default.dirname(enterFilePath);
14
+ const fileName = _path.default.basename(enterFilePath);
15
+ // 取到对应的map文件内容
16
+ const mapFilePath = _path.default.join(dirName, fileName + '.map');
17
+ if (_fs.default.existsSync(mapFilePath)) {
18
+ map = _fs.default.readFileSync(mapFilePath, {
19
+ encoding: 'utf-8'
20
+ });
21
+ }
22
+ this.callback(null, source, map && JSON.parse(map));
19
23
  }
20
- exports.default = extractMapData;
24
+ var _default = exports.default = extractMapData;
@@ -1,179 +1,151 @@
1
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
- const parser_1 = require("@aiot-toolkit/parser");
7
- const shared_utils_1 = require("@aiot-toolkit/shared-utils");
8
- const fs_1 = __importDefault(require("fs"));
9
- const path_1 = __importDefault(require("path"));
10
- const JsLoader_1 = __importDefault(require("../loader/ux/JsLoader"));
11
- const PngLoader_1 = __importDefault(require("../loader/ux/PngLoader"));
12
- const AppUxLoader_1 = __importDefault(require("../loader/ux/vela/AppUxLoader"));
13
- const HmlLoader_1 = __importDefault(require("../loader/ux/vela/HmlLoader"));
14
- const UxLoader_1 = __importDefault(require("../loader/ux/vela/UxLoader"));
15
- const UxLoader_2 = __importDefault(require("../loader/ux/android/UxLoader"));
16
- const UxBeforeWorks_1 = __importDefault(require("../beforeWorks/ux/UxBeforeWorks"));
17
- const UxAfterWorks_1 = __importDefault(require("../afterWorks/ux/UxAfterWorks"));
18
- const UxAfterCompile_1 = __importDefault(require("../afterCompile/ux/UxAfterCompile"));
19
- const UxBeforeCompile_1 = __importDefault(require("../beforeCompile/ux/UxBeforeCompile"));
20
- const BeforeCompileUtils_1 = __importDefault(require("../utils/BeforeCompileUtils"));
21
- const IChangedFile_1 = require("file-lane/lib/interface/IChangedFile");
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _parser = require("@aiot-toolkit/parser");
8
+ var _sharedUtils = require("@aiot-toolkit/shared-utils");
9
+ var _fs = _interopRequireDefault(require("fs"));
10
+ var _path = _interopRequireDefault(require("path"));
11
+ var _JsLoader = _interopRequireDefault(require("../loader/ux/JsLoader"));
12
+ var _PngLoader = _interopRequireDefault(require("../loader/ux/PngLoader"));
13
+ var _AppUxLoader = _interopRequireDefault(require("../loader/ux/vela/AppUxLoader"));
14
+ var _HmlLoader = _interopRequireDefault(require("../loader/ux/vela/HmlLoader"));
15
+ var _UxLoader = _interopRequireDefault(require("../loader/ux/vela/UxLoader"));
16
+ var _UxLoader2 = _interopRequireDefault(require("../loader/ux/android/UxLoader"));
17
+ var _UxBeforeWorks = _interopRequireDefault(require("../beforeWorks/ux/UxBeforeWorks"));
18
+ var _UxAfterWorks = _interopRequireDefault(require("../afterWorks/ux/UxAfterWorks"));
19
+ var _UxAfterCompile = _interopRequireDefault(require("../afterCompile/ux/UxAfterCompile"));
20
+ var _UxBeforeCompile = _interopRequireDefault(require("../beforeCompile/ux/UxBeforeCompile"));
21
+ var _BeforeCompileUtils = _interopRequireDefault(require("../utils/BeforeCompileUtils"));
22
+ var _IChangedFile = require("file-lane/lib/interface/IChangedFile");
23
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
24
  class UxConfig {
23
- constructor(projectPath) {
24
- this.projectPath = projectPath;
25
- /**
26
- * 1. 取项目中所有的真实文件
27
- * 1.1 无entryFileList时
28
- * 1.2 entryFileList且文件列表中有 与其他文件相关 的文件时
29
- * 1.3 有entryFileList且文件列表中有文件为 删除 操作时
30
- * 2. 返回符合条件的文件列表
31
- * 2.1 有entryFileList且文件列表中 只有 不影响其他文件 的文件时
32
- * @param entryFileList
33
- * @returns
34
- */
35
- this.collectFile = (entryFileList) => {
36
- // 取项目中所有的真实文件
37
- const getProjectFiles = () => {
38
- const projectPath = this.projectPath;
39
- let files = shared_utils_1.FileUtil.readAlldirSync(projectPath, undefined, this.exclude);
40
- return files;
41
- };
42
- // 2.
43
- if (entryFileList) {
44
- let isGetAll = entryFileList.every((item) => item.type === IChangedFile_1.HandlerType.UNLINK || !/\.(ux|json|js)$/.test(item.path));
45
- if (!isGetAll) {
46
- return entryFileList
47
- .filter((filePath) => shared_utils_1.FileUtil.include(filePath.path, undefined, this.exclude))
48
- .map((item) => item.path);
49
- }
50
- }
51
- // 1.
52
- return getProjectFiles();
53
- };
54
- this.exclude = [
55
- '**/node_modules{,/**}',
56
- '**/dist{,/**}',
57
- '**/build{,/**}',
58
- '**/.git{,/**}',
59
- (filePath) => {
60
- // 如果 是 script, style文件,且同路径下存在同名 hml,则忽略
61
- const { ext, name } = path_1.default.parse(filePath);
62
- if (![...parser_1.ExtensionConfig.SCRIPTS, ...parser_1.ExtensionConfig.STYLES].includes(ext)) {
63
- return false;
64
- }
65
- const hmlPath = shared_utils_1.FileUtil.updateFileName(filePath, `${name}${parser_1.ExtensionConfig.HML}`);
66
- if (fs_1.default.existsSync(hmlPath)) {
67
- return true;
68
- }
69
- return false;
70
- }
71
- ];
72
- this.beforeWorks = [UxBeforeWorks_1.default.cleanOutput];
73
- this.beforeCompile = [
74
- UxBeforeCompile_1.default.validateManifest,
75
- UxBeforeCompile_1.default.validateSitemap,
76
- BeforeCompileUtils_1.default.clean,
77
- BeforeCompileUtils_1.default.getEntries,
78
- BeforeCompileUtils_1.default.getGlobalVar
79
- ];
80
- this.afterCompile = [
81
- {
82
- worker: UxAfterCompile_1.default.symlinkNodeModule,
83
- workerDescribe: 'Create a soft link to the node_modules folder'
84
- },
85
- {
86
- worker: UxAfterCompile_1.default.webpack,
87
- workerDescribe: 'Compile the project using webpack'
88
- },
89
- {
90
- worker: UxAfterCompile_1.default.copyResource,
91
- workerDescribe: 'Copy resource files'
92
- },
93
- {
94
- worker: UxAfterCompile_1.default.jsc,
95
- workerDescribe: 'Generate jsc bytecode'
96
- },
97
- {
98
- worker: UxAfterCompile_1.default.protobuf,
99
- workerDescribe: 'Generate protobuf json'
100
- },
101
- {
102
- worker: UxAfterCompile_1.default.toRpk,
103
- workerDescribe: 'Package the project into an RPK file'
104
- },
105
- {
106
- worker: UxAfterCompile_1.default.generateDiff,
107
- workerDescribe: 'Generate diff json'
108
- },
109
- {
110
- worker: UxAfterCompile_1.default.moveBackResult,
111
- workerDescribe: 'Migrate temporary project'
112
- }
113
- ];
114
- this.afterWorks = [UxAfterWorks_1.default.cleanOutput];
115
- this.watchIgnores = [/node_modules/, /build/, /dist/];
25
+ constructor(projectPath) {
26
+ this.projectPath = projectPath;
27
+ }
28
+ /**
29
+ * 1. 取项目中所有的真实文件
30
+ * 1.1 entryFileList
31
+ * 1.2 有entryFileList且文件列表中有 与其他文件相关 的文件时
32
+ * 1.3 有entryFileList且文件列表中有文件为 删除 操作时
33
+ * 2. 返回符合条件的文件列表
34
+ * 2.1 有entryFileList且文件列表中 只有 不影响其他文件 的文件时
35
+ * @param entryFileList
36
+ * @returns
37
+ */
38
+ collectFile = entryFileList => {
39
+ // 取项目中所有的真实文件
40
+ const getProjectFiles = () => {
41
+ const projectPath = this.projectPath;
42
+ let files = _sharedUtils.FileUtil.readAlldirSync(projectPath, undefined, this.exclude);
43
+ return files;
44
+ };
45
+ // 2.
46
+ if (entryFileList) {
47
+ let isGetAll = entryFileList.every(item => item.type === _IChangedFile.HandlerType.UNLINK || !/\.(ux|json|js)$/.test(item.path));
48
+ if (!isGetAll) {
49
+ return entryFileList.filter(filePath => _sharedUtils.FileUtil.include(filePath.path, undefined, this.exclude)).map(item => item.path);
50
+ }
116
51
  }
117
- get output() {
118
- const name = path_1.default.basename(this.projectPath);
119
- const result = `../.temp_${name}`;
120
- return result;
52
+ // 1.
53
+ return getProjectFiles();
54
+ };
55
+ exclude = ['**/node_modules{,/**}', '**/dist{,/**}', '**/build{,/**}', '**/.git{,/**}', filePath => {
56
+ // 如果 是 script, style文件,且同路径下存在同名 hml,则忽略
57
+ const {
58
+ ext,
59
+ name
60
+ } = _path.default.parse(filePath);
61
+ if (![..._parser.ExtensionConfig.SCRIPTS, ..._parser.ExtensionConfig.STYLES].includes(ext)) {
62
+ return false;
121
63
  }
122
- /**
123
- * 通过项目类型,返回模块配置
124
- */
125
- get module() {
126
- const isVela = this.getProjectType() === shared_utils_1.ProjectType.VELA_UX;
127
- return isVela
128
- ? {
129
- rules: [
130
- {
131
- test: ['app.ux'],
132
- loader: [AppUxLoader_1.default]
133
- },
134
- {
135
- test: [/.+\.ux$/],
136
- exclude: [/app\.ux/],
137
- loader: [UxLoader_1.default]
138
- },
139
- {
140
- test: [/.+\.hml$/],
141
- loader: [HmlLoader_1.default, UxLoader_1.default]
142
- },
143
- {
144
- test: [/.+\.js$/],
145
- loader: [JsLoader_1.default]
146
- },
147
- {
148
- test: [/.+\.9.png/],
149
- loader: [PngLoader_1.default]
150
- }
151
- ]
152
- }
153
- : {
154
- rules: [
155
- {
156
- test: [/.+\.ux$/],
157
- loader: [UxLoader_2.default]
158
- },
159
- {
160
- test: [/.+\.js$/],
161
- loader: [JsLoader_1.default]
162
- },
163
- {
164
- test: [/.+\.9.png/],
165
- loader: [PngLoader_1.default]
166
- }
167
- ]
168
- };
169
- }
170
- /**
171
- * 判断项目类型
172
- *
173
- * 目前的办法是通过 manifest.json 的 deviceTypeList 是否有 watch 判断
174
- */
175
- getProjectType() {
176
- return shared_utils_1.ProjectType.getProjectType(this.projectPath);
64
+ const hmlPath = _sharedUtils.FileUtil.updateFileName(filePath, `${name}${_parser.ExtensionConfig.HML}`);
65
+ if (_fs.default.existsSync(hmlPath)) {
66
+ return true;
177
67
  }
68
+ return false;
69
+ }];
70
+ get output() {
71
+ const name = _path.default.basename(this.projectPath);
72
+ const result = `../.temp_${name}`;
73
+ return result;
74
+ }
75
+ beforeWorks = (() => [_UxBeforeWorks.default.cleanOutput])();
76
+ beforeCompile = (() => [_UxBeforeCompile.default.validateManifest, _UxBeforeCompile.default.validateSitemap, _BeforeCompileUtils.default.clean, _BeforeCompileUtils.default.getEntries, _BeforeCompileUtils.default.getGlobalVar])();
77
+ afterCompile = (() => [{
78
+ worker: _UxAfterCompile.default.symlinkNodeModule,
79
+ workerDescribe: 'Create a soft link to the node_modules folder'
80
+ }, {
81
+ worker: _UxAfterCompile.default.webpack,
82
+ workerDescribe: 'Compile the project using webpack'
83
+ }, {
84
+ worker: _UxAfterCompile.default.copyResource,
85
+ workerDescribe: 'Copy resource files'
86
+ }, {
87
+ worker: _UxAfterCompile.default.jsc,
88
+ workerDescribe: 'Generate jsc bytecode'
89
+ }, {
90
+ worker: _UxAfterCompile.default.protobuf,
91
+ workerDescribe: 'Generate protobuf json'
92
+ }, {
93
+ worker: _UxAfterCompile.default.toRpk,
94
+ workerDescribe: 'Package the project into an RPK file'
95
+ }, {
96
+ worker: _UxAfterCompile.default.generateDiff,
97
+ workerDescribe: 'Generate diff json'
98
+ }, {
99
+ worker: _UxAfterCompile.default.moveBackResult,
100
+ workerDescribe: 'Migrate temporary project'
101
+ }])();
102
+ afterWorks = (() => [_UxAfterWorks.default.cleanOutput])();
103
+ watchIgnores = [/node_modules/, /build/, /dist/];
104
+
105
+ /**
106
+ * 通过项目类型,返回模块配置
107
+ */
108
+ get module() {
109
+ const isVela = this.getProjectType() === _sharedUtils.ProjectType.VELA_UX;
110
+ return isVela ? {
111
+ rules: [{
112
+ test: ['app.ux'],
113
+ loader: [_AppUxLoader.default]
114
+ }, {
115
+ test: [/.+\.ux$/],
116
+ exclude: [/app\.ux/],
117
+ loader: [_UxLoader.default]
118
+ }, {
119
+ test: [/.+\.hml$/],
120
+ loader: [_HmlLoader.default, _UxLoader.default]
121
+ }, {
122
+ test: [/.+\.js$/],
123
+ loader: [_JsLoader.default]
124
+ }, {
125
+ test: [/.+\.9.png/],
126
+ loader: [_PngLoader.default]
127
+ }]
128
+ } : {
129
+ rules: [{
130
+ test: [/.+\.ux$/],
131
+ loader: [_UxLoader2.default]
132
+ }, {
133
+ test: [/.+\.js$/],
134
+ loader: [_JsLoader.default]
135
+ }, {
136
+ test: [/.+\.9.png/],
137
+ loader: [_PngLoader.default]
138
+ }]
139
+ };
140
+ }
141
+
142
+ /**
143
+ * 判断项目类型
144
+ *
145
+ * 目前的办法是通过 manifest.json 的 deviceTypeList 是否有 watch 判断
146
+ */
147
+ getProjectType() {
148
+ return _sharedUtils.ProjectType.getProjectType(this.projectPath);
149
+ }
178
150
  }
179
- exports.default = UxConfig;
151
+ var _default = exports.default = UxConfig;
@@ -1,46 +1,36 @@
1
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
- const entryTemplate_1 = require("../afterCompile/xts/entryTemplate");
7
- const generateRpk_1 = require("../afterCompile/xts/generateRpk");
8
- const ts2wasm_1 = require("../afterCompile/xts/ts2wasm");
9
- const XtsLoader_1 = __importDefault(require("../loader/xts/XtsLoader"));
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _entryTemplate = require("../afterCompile/xts/entryTemplate");
8
+ var _generateRpk = require("../afterCompile/xts/generateRpk");
9
+ var _ts2wasm = require("../afterCompile/xts/ts2wasm");
10
+ var _XtsLoader = _interopRequireDefault(require("../loader/xts/XtsLoader"));
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
12
  /**
11
13
  * XtsConfig
12
14
  */
13
15
  class XtsConfig {
14
- constructor(projectPath) {
15
- this.projectPath = projectPath;
16
- this.exclude = [
17
- '**/node_modules{,/**}',
18
- '**/dist{,/**}',
19
- '**/build{,/**}',
20
- '**/.git{,/**}',
21
- '**/.wasmUnpacked{,/**}'
22
- ];
23
- this.output = 'build';
24
- this.module = {
25
- rules: [
26
- {
27
- test: [/\.xts$/],
28
- loader: [XtsLoader_1.default]
29
- }
30
- ]
31
- };
32
- this.beforeCompile = [];
33
- this.afterCompile = [
34
- {
35
- worker: entryTemplate_1.generateEntryFile
36
- },
37
- {
38
- worker: ts2wasm_1.ts2wasm
39
- },
40
- {
41
- worker: generateRpk_1.generateRpk
42
- }
43
- ];
44
- }
16
+ constructor(projectPath) {
17
+ this.projectPath = projectPath;
18
+ }
19
+ exclude = ['**/node_modules{,/**}', '**/dist{,/**}', '**/build{,/**}', '**/.git{,/**}', '**/.wasmUnpacked{,/**}'];
20
+ output = 'build';
21
+ module = (() => ({
22
+ rules: [{
23
+ test: [/\.xts$/],
24
+ loader: [_XtsLoader.default]
25
+ }]
26
+ }))();
27
+ beforeCompile = [];
28
+ afterCompile = (() => [{
29
+ worker: _entryTemplate.generateEntryFile
30
+ }, {
31
+ worker: _ts2wasm.ts2wasm
32
+ }, {
33
+ worker: _generateRpk.generateRpk
34
+ }])();
45
35
  }
46
- exports.default = XtsConfig;
36
+ var _default = exports.default = XtsConfig;