@cocos/ccbuild 1.1.14 → 2.0.0-alpha.1

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 (167) hide show
  1. package/CHANGELOG.md +165 -165
  2. package/lib/src/index.d.ts +5 -0
  3. package/lib/src/index.d.ts.map +1 -0
  4. package/lib/src/index.js +61 -0
  5. package/lib/src/index.js.map +1 -0
  6. package/{lib/build-engine → modules/build-engine/lib}/engine-js/index.d.ts +2 -3
  7. package/modules/build-engine/lib/engine-js/index.d.ts.map +1 -0
  8. package/modules/build-engine/lib/engine-js/index.js +399 -0
  9. package/modules/build-engine/lib/engine-js/index.js.map +1 -0
  10. package/modules/build-engine/lib/engine-js/rollup-plugins/external-wasm-loader.d.ts +58 -0
  11. package/modules/build-engine/lib/engine-js/rollup-plugins/external-wasm-loader.d.ts.map +1 -0
  12. package/modules/build-engine/lib/engine-js/rollup-plugins/external-wasm-loader.js +299 -0
  13. package/modules/build-engine/lib/engine-js/rollup-plugins/external-wasm-loader.js.map +1 -0
  14. package/modules/build-engine/lib/engine-js/rollup-plugins/remove-deprecated-features.d.ts +3 -0
  15. package/modules/build-engine/lib/engine-js/rollup-plugins/remove-deprecated-features.d.ts.map +1 -0
  16. package/modules/build-engine/lib/engine-js/rollup-plugins/remove-deprecated-features.js +42 -0
  17. package/modules/build-engine/lib/engine-js/rollup-plugins/remove-deprecated-features.js.map +1 -0
  18. package/modules/build-engine/lib/engine-js/rollup-plugins/ts-paths.d.ts +7 -0
  19. package/modules/build-engine/lib/engine-js/rollup-plugins/ts-paths.d.ts.map +1 -0
  20. package/modules/build-engine/lib/engine-js/rollup-plugins/ts-paths.js +51 -0
  21. package/modules/build-engine/lib/engine-js/rollup-plugins/ts-paths.js.map +1 -0
  22. package/modules/build-engine/lib/engine-ts/engine-builder.d.ts +57 -0
  23. package/modules/build-engine/lib/engine-ts/engine-builder.d.ts.map +1 -0
  24. package/modules/build-engine/lib/engine-ts/engine-builder.js +650 -0
  25. package/modules/build-engine/lib/engine-ts/engine-builder.js.map +1 -0
  26. package/modules/build-engine/lib/engine-ts/field-decorator-helper.d.ts +11 -0
  27. package/modules/build-engine/lib/engine-ts/field-decorator-helper.d.ts.map +1 -0
  28. package/modules/build-engine/lib/engine-ts/field-decorator-helper.js +65 -0
  29. package/modules/build-engine/lib/engine-ts/field-decorator-helper.js.map +1 -0
  30. package/{lib/build-engine → modules/build-engine/lib}/engine-ts/index.d.ts +2 -3
  31. package/modules/build-engine/lib/engine-ts/index.d.ts.map +1 -0
  32. package/modules/build-engine/lib/engine-ts/index.js +59 -0
  33. package/modules/build-engine/lib/engine-ts/index.js.map +1 -0
  34. package/{lib/build-engine → modules/build-engine/lib}/engine-ts/plugins/external-wasm-loader.d.ts +7 -7
  35. package/modules/build-engine/lib/engine-ts/plugins/external-wasm-loader.d.ts.map +1 -0
  36. package/modules/build-engine/lib/engine-ts/plugins/external-wasm-loader.js +74 -0
  37. package/modules/build-engine/lib/engine-ts/plugins/external-wasm-loader.js.map +1 -0
  38. package/modules/build-engine/lib/engine-ts/plugins/interface.d.ts +20 -0
  39. package/modules/build-engine/lib/engine-ts/plugins/interface.d.ts.map +1 -0
  40. package/modules/build-engine/lib/engine-ts/plugins/interface.js +5 -0
  41. package/modules/build-engine/lib/engine-ts/plugins/interface.js.map +1 -0
  42. package/modules/build-engine/lib/index.d.ts +145 -0
  43. package/modules/build-engine/lib/index.d.ts.map +1 -0
  44. package/modules/build-engine/lib/index.js +180 -0
  45. package/modules/build-engine/lib/index.js.map +1 -0
  46. package/modules/bundler/lib/index.d.ts +2 -0
  47. package/modules/bundler/lib/index.d.ts.map +1 -0
  48. package/modules/bundler/lib/index.js +39 -0
  49. package/{lib → modules/bundler/lib}/index.js.map +1 -1
  50. package/modules/bundler/lib/rollup/index.d.ts +3 -0
  51. package/modules/bundler/lib/rollup/index.d.ts.map +1 -0
  52. package/modules/bundler/lib/rollup/index.js +41 -0
  53. package/modules/bundler/lib/rollup/index.js.map +1 -0
  54. package/modules/bundler/lib/rollup/plugins.d.ts +8 -0
  55. package/modules/bundler/lib/rollup/plugins.d.ts.map +1 -0
  56. package/modules/bundler/lib/rollup/plugins.js +56 -0
  57. package/modules/bundler/lib/rollup/plugins.js.map +1 -0
  58. package/modules/modularize/lib/index.d.ts +20 -0
  59. package/modules/modularize/lib/index.d.ts.map +1 -0
  60. package/modules/modularize/lib/index.js +82 -0
  61. package/modules/modularize/lib/index.js.map +1 -0
  62. package/modules/stats-query/lib/config-interface.d.ts +129 -0
  63. package/modules/stats-query/lib/config-interface.d.ts.map +1 -0
  64. package/modules/stats-query/lib/config-interface.js +6 -0
  65. package/modules/stats-query/lib/config-interface.js.map +1 -0
  66. package/modules/stats-query/lib/index.d.ts +188 -0
  67. package/modules/stats-query/lib/index.d.ts.map +1 -0
  68. package/modules/stats-query/lib/index.js +579 -0
  69. package/modules/stats-query/lib/index.js.map +1 -0
  70. package/modules/transformer/lib/babel/index.d.ts +6 -0
  71. package/modules/transformer/lib/babel/index.d.ts.map +1 -0
  72. package/modules/transformer/lib/babel/index.js +47 -0
  73. package/modules/transformer/lib/babel/index.js.map +1 -0
  74. package/modules/transformer/lib/babel/plugins.d.ts +5 -0
  75. package/modules/transformer/lib/babel/plugins.d.ts.map +1 -0
  76. package/modules/transformer/lib/babel/plugins.js +22 -0
  77. package/modules/transformer/lib/babel/plugins.js.map +1 -0
  78. package/modules/transformer/lib/babel/presets.d.ts +3 -0
  79. package/modules/transformer/lib/babel/presets.d.ts.map +1 -0
  80. package/modules/transformer/lib/babel/presets.js +41 -0
  81. package/modules/transformer/lib/babel/presets.js.map +1 -0
  82. package/modules/transformer/lib/index.d.ts +2 -0
  83. package/modules/transformer/lib/index.d.ts.map +1 -0
  84. package/modules/transformer/lib/index.js +39 -0
  85. package/modules/transformer/lib/index.js.map +1 -0
  86. package/modules/utils/lib/index.d.ts +3 -0
  87. package/modules/utils/lib/index.d.ts.map +1 -0
  88. package/modules/utils/lib/index.js +38 -0
  89. package/modules/utils/lib/index.js.map +1 -0
  90. package/modules/utils/lib/path.d.ts +7 -0
  91. package/modules/utils/lib/path.d.ts.map +1 -0
  92. package/modules/utils/lib/path.js +105 -0
  93. package/modules/utils/lib/path.js.map +1 -0
  94. package/package.json +65 -75
  95. package/static/lib.dom.d.ts +953 -18846
  96. package/lib/api-builder.d.ts +0 -1
  97. package/lib/api-builder.d.ts.map +0 -1
  98. package/lib/api-builder.js +0 -2
  99. package/lib/api-builder.js.map +0 -1
  100. package/lib/build-engine/engine-js/index.d.ts.map +0 -1
  101. package/lib/build-engine/engine-js/index.js +0 -404
  102. package/lib/build-engine/engine-js/index.js.map +0 -1
  103. package/lib/build-engine/engine-js/rollup-plugins/external-wasm-loader.d.ts +0 -58
  104. package/lib/build-engine/engine-js/rollup-plugins/external-wasm-loader.d.ts.map +0 -1
  105. package/lib/build-engine/engine-js/rollup-plugins/external-wasm-loader.js +0 -299
  106. package/lib/build-engine/engine-js/rollup-plugins/external-wasm-loader.js.map +0 -1
  107. package/lib/build-engine/engine-js/rollup-plugins/remove-deprecated-features.d.ts +0 -3
  108. package/lib/build-engine/engine-js/rollup-plugins/remove-deprecated-features.d.ts.map +0 -1
  109. package/lib/build-engine/engine-js/rollup-plugins/remove-deprecated-features.js +0 -38
  110. package/lib/build-engine/engine-js/rollup-plugins/remove-deprecated-features.js.map +0 -1
  111. package/lib/build-engine/engine-js/rollup-plugins/ts-paths.d.ts +0 -5
  112. package/lib/build-engine/engine-js/rollup-plugins/ts-paths.d.ts.map +0 -1
  113. package/lib/build-engine/engine-js/rollup-plugins/ts-paths.js +0 -43
  114. package/lib/build-engine/engine-js/rollup-plugins/ts-paths.js.map +0 -1
  115. package/lib/build-engine/engine-ts/engine-builder.d.ts +0 -58
  116. package/lib/build-engine/engine-ts/engine-builder.d.ts.map +0 -1
  117. package/lib/build-engine/engine-ts/engine-builder.js +0 -632
  118. package/lib/build-engine/engine-ts/engine-builder.js.map +0 -1
  119. package/lib/build-engine/engine-ts/field-decorator-helper.d.ts +0 -10
  120. package/lib/build-engine/engine-ts/field-decorator-helper.d.ts.map +0 -1
  121. package/lib/build-engine/engine-ts/field-decorator-helper.js +0 -55
  122. package/lib/build-engine/engine-ts/field-decorator-helper.js.map +0 -1
  123. package/lib/build-engine/engine-ts/index.d.ts.map +0 -1
  124. package/lib/build-engine/engine-ts/index.js +0 -37
  125. package/lib/build-engine/engine-ts/index.js.map +0 -1
  126. package/lib/build-engine/engine-ts/plugins/external-wasm-loader.d.ts.map +0 -1
  127. package/lib/build-engine/engine-ts/plugins/external-wasm-loader.js +0 -66
  128. package/lib/build-engine/engine-ts/plugins/external-wasm-loader.js.map +0 -1
  129. package/lib/build-engine/engine-ts/plugins/interface.d.ts +0 -21
  130. package/lib/build-engine/engine-ts/plugins/interface.d.ts.map +0 -1
  131. package/lib/build-engine/engine-ts/plugins/interface.js +0 -2
  132. package/lib/build-engine/engine-ts/plugins/interface.js.map +0 -1
  133. package/lib/build-engine/index.d.ts +0 -146
  134. package/lib/build-engine/index.d.ts.map +0 -1
  135. package/lib/build-engine/index.js +0 -155
  136. package/lib/build-engine/index.js.map +0 -1
  137. package/lib/index.d.ts +0 -5
  138. package/lib/index.d.ts.map +0 -1
  139. package/lib/index.js +0 -34
  140. package/lib/module-resolver.d.ts +0 -8
  141. package/lib/module-resolver.d.ts.map +0 -1
  142. package/lib/module-resolver.js +0 -29
  143. package/lib/module-resolver.js.map +0 -1
  144. package/lib/stats-query/config-interface.d.ts +0 -130
  145. package/lib/stats-query/config-interface.d.ts.map +0 -1
  146. package/lib/stats-query/config-interface.js +0 -4
  147. package/lib/stats-query/config-interface.js.map +0 -1
  148. package/lib/stats-query/index.d.ts +0 -184
  149. package/lib/stats-query/index.d.ts.map +0 -1
  150. package/lib/stats-query/index.js +0 -532
  151. package/lib/stats-query/index.js.map +0 -1
  152. package/lib/stats-query/path-utils.d.ts +0 -3
  153. package/lib/stats-query/path-utils.d.ts.map +0 -1
  154. package/lib/stats-query/path-utils.js +0 -36
  155. package/lib/stats-query/path-utils.js.map +0 -1
  156. package/lib/transformer/babel.d.ts +0 -6
  157. package/lib/transformer/babel.d.ts.map +0 -1
  158. package/lib/transformer/babel.js +0 -35
  159. package/lib/transformer/babel.js.map +0 -1
  160. package/lib/transformer/index.d.ts +0 -3
  161. package/lib/transformer/index.d.ts.map +0 -1
  162. package/lib/transformer/index.js +0 -29
  163. package/lib/transformer/index.js.map +0 -1
  164. package/lib/utils.d.ts +0 -5
  165. package/lib/utils.d.ts.map +0 -1
  166. package/lib/utils.js +0 -24
  167. package/lib/utils.js.map +0 -1
@@ -0,0 +1,579 @@
1
+ "use strict";
2
+
3
+ var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {
20
+ Object.defineProperty(o, "default", {
21
+ enumerable: true,
22
+ value: v
23
+ });
24
+ } : function (o, v) {
25
+ o["default"] = v;
26
+ });
27
+ var __importStar = this && this.__importStar || function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {
35
+ function adopt(value) {
36
+ return value instanceof P ? value : new P(function (resolve) {
37
+ resolve(value);
38
+ });
39
+ }
40
+ return new (P || (P = Promise))(function (resolve, reject) {
41
+ function fulfilled(value) {
42
+ try {
43
+ step(generator.next(value));
44
+ } catch (e) {
45
+ reject(e);
46
+ }
47
+ }
48
+ function rejected(value) {
49
+ try {
50
+ step(generator["throw"](value));
51
+ } catch (e) {
52
+ reject(e);
53
+ }
54
+ }
55
+ function step(result) {
56
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
57
+ }
58
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
59
+ });
60
+ };
61
+ var __importDefault = this && this.__importDefault || function (mod) {
62
+ return mod && mod.__esModule ? mod : {
63
+ "default": mod
64
+ };
65
+ };
66
+ Object.defineProperty(exports, "__esModule", {
67
+ value: true
68
+ });
69
+ exports.StatsQuery = exports.ConfigInterface = void 0;
70
+ const path_1 = __importDefault(require("path"));
71
+ const fs_extra_1 = __importDefault(require("fs-extra"));
72
+ const json5_1 = __importDefault(require("json5"));
73
+ const dedent_1 = __importDefault(require("dedent"));
74
+ const ConfigInterface = __importStar(require("./config-interface"));
75
+ exports.ConfigInterface = ConfigInterface;
76
+ /**
77
+ * Query any any stats of the engine.
78
+ */
79
+ class StatsQuery {
80
+ /**
81
+ * @param engine Path to the engine root.
82
+ */
83
+ static create(engine) {
84
+ return __awaiter(this, void 0, void 0, function* () {
85
+ const configFile = path_1.default.join(engine, 'cc.config.json');
86
+ const config = json5_1.default.parse(yield fs_extra_1.default.readFile(configFile, 'utf8'));
87
+ // @ts-ignore
88
+ delete config['$schema'];
89
+ const query = new StatsQuery(engine, config);
90
+ yield query._initialize();
91
+ return query;
92
+ });
93
+ }
94
+ /**
95
+ * Gets the path to the engine root.
96
+ */
97
+ get path() {
98
+ return this._engine;
99
+ }
100
+ /**
101
+ * Gets the path to tsconfig.
102
+ */
103
+ get tsConfigPath() {
104
+ return path_1.default.join(this._engine, 'tsconfig.json');
105
+ }
106
+ /**
107
+ * Gets all optimzie decorators
108
+ */
109
+ getOptimizeDecorators() {
110
+ return this._config.optimizeDecorators;
111
+ }
112
+ /**
113
+ * Gets all features defined.
114
+ */
115
+ getFeatures() {
116
+ return Object.keys(this._features);
117
+ }
118
+ /**
119
+ * Returns if the specified feature is defined.
120
+ * @param feature Feature ID.
121
+ */
122
+ hasFeature(feature) {
123
+ return !!this._features[feature];
124
+ }
125
+ // TODO: it seems we don't need this interface for now.
126
+ // public isNativeOnlyFeature (feature: string) {
127
+ // return !!this._features[feature].isNativeOnly;
128
+ // }
129
+ /**
130
+ * Gets all feature units included in specified features.
131
+ * @param featureIds Feature ID.
132
+ */
133
+ getUnitsOfFeatures(featureIds) {
134
+ var _a;
135
+ const units = new Set();
136
+ for (const featureId of featureIds) {
137
+ (_a = this._features[featureId]) === null || _a === void 0 ? void 0 : _a.modules.forEach(entry => units.add(entry));
138
+ }
139
+ return Array.from(units);
140
+ }
141
+ getIntrinsicFlagsOfFeatures(featureIds) {
142
+ var _a;
143
+ const flags = {};
144
+ for (const featureId of featureIds) {
145
+ const featureFlags = (_a = this._features[featureId]) === null || _a === void 0 ? void 0 : _a.intrinsicFlags;
146
+ if (featureFlags) {
147
+ Object.assign(flags, featureFlags);
148
+ }
149
+ }
150
+ return flags;
151
+ }
152
+ /**
153
+ * Gets all feature units in their names.
154
+ */
155
+ getFeatureUnits() {
156
+ return Object.keys(this._featureUnits);
157
+ }
158
+ /**
159
+ * Gets the path to source file of the feature unit.
160
+ * @param moduleId Name of the feature unit.
161
+ */
162
+ getFeatureUnitFile(featureUnit) {
163
+ return this._featureUnits[featureUnit];
164
+ }
165
+ /**
166
+ * Gets all editor public modules in their names.
167
+ */
168
+ getEditorPublicModules() {
169
+ return Object.keys(this._editorPublicModules);
170
+ }
171
+ /**
172
+ * Gets the path to source file of the editor-public module.
173
+ * @param moduleName Name of the public module.
174
+ */
175
+ getEditorPublicModuleFile(moduleName) {
176
+ return this._editorPublicModules[moduleName];
177
+ }
178
+ /**
179
+ * Gets the source of `'cc'`.
180
+ * @param featureUnits Involved feature units.
181
+ * @param mapper If exists, map the feature unit name into another module request.
182
+ */
183
+ evaluateIndexModuleSource(featureUnits, mapper) {
184
+ return featureUnits.map(featureUnit => {
185
+ var _a, _b;
186
+ const indexInfo = this._index.modules[featureUnit];
187
+ const ns = indexInfo === null || indexInfo === void 0 ? void 0 : indexInfo.ns;
188
+ if (ns) {
189
+ return (0, dedent_1.default)`
190
+ import * as ${ns} from '${(_a = mapper === null || mapper === void 0 ? void 0 : mapper(featureUnit)) !== null && _a !== void 0 ? _a : featureUnit}';
191
+ export { ${ns} };
192
+ `;
193
+ }
194
+ return `export * from '${(_b = mapper === null || mapper === void 0 ? void 0 : mapper(featureUnit)) !== null && _b !== void 0 ? _b : featureUnit}';`;
195
+ }).join('\n');
196
+ }
197
+ /**
198
+ * Evaluates the source of `'internal-constants'`(`'cc/env'`),
199
+ * @param context
200
+ */
201
+ evaluateEnvModuleSourceFromRecord(record) {
202
+ return Object.entries(record).map(([k, v]) => `export const ${k} = ${v};`).join('\n');
203
+ }
204
+ /**
205
+ * Evaluates module overrides under specified context.
206
+ * @param context
207
+ */
208
+ evaluateModuleOverrides(context) {
209
+ var _a;
210
+ const overrides = {};
211
+ const addModuleOverrides = (moduleOverrides, isVirtualModule) => {
212
+ for (let [source, override] of Object.entries(moduleOverrides)) {
213
+ const normalizedSource = isVirtualModule ? source : path_1.default.resolve(this._engine, source);
214
+ override = this._evalPathTemplate(override, context);
215
+ const normalizedOverride = path_1.default.resolve(this._engine, override);
216
+ overrides[normalizedSource] = normalizedOverride;
217
+ }
218
+ };
219
+ (_a = this._config.moduleOverrides) === null || _a === void 0 ? void 0 : _a.forEach(({
220
+ test,
221
+ overrides,
222
+ isVirtualModule
223
+ }) => {
224
+ if (this._evalTest(test, context)) {
225
+ addModuleOverrides(overrides, isVirtualModule);
226
+ }
227
+ });
228
+ return overrides;
229
+ }
230
+ static _readModulesInDir(exportsDir, mapper) {
231
+ return __awaiter(this, void 0, void 0, function* () {
232
+ const result = {};
233
+ for (const entryFileName of yield fs_extra_1.default.readdir(exportsDir)) {
234
+ const entryExtName = path_1.default.extname(entryFileName);
235
+ if (!entryExtName.toLowerCase().endsWith('.ts')) {
236
+ continue;
237
+ }
238
+ const baseName = path_1.default.basename(entryFileName, entryExtName);
239
+ const moduleName = mapper(baseName);
240
+ const entryFile = path_1.default.join(exportsDir, entryFileName);
241
+ result[moduleName] = entryFile;
242
+ }
243
+ return result;
244
+ });
245
+ }
246
+ static _baseNameToFeatureUnitName(baseName) {
247
+ return `${baseName}`;
248
+ }
249
+ static _editorBaseNameToModuleName(baseName) {
250
+ return `cc/editor/${baseName}`;
251
+ }
252
+ constructor(engine, config) {
253
+ this._index = {
254
+ modules: {}
255
+ };
256
+ this._features = {};
257
+ this._featureUnits = {};
258
+ this._editorPublicModules = {};
259
+ this._config = config;
260
+ this._engine = engine;
261
+ this.constantManager = new StatsQuery.ConstantManager(engine);
262
+ }
263
+ _evalTest(test, context) {
264
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval,no-new-func
265
+ const result = new Function('context', `return ${test}`)(context);
266
+ // console.debug(`Eval "${test}" to ${result}`);
267
+ return result;
268
+ }
269
+ _evalPathTemplate(pathTemplate, context) {
270
+ let resultPath = pathTemplate;
271
+ const regExp = /\{\{(.*?)\}\}/g;
272
+ let exeResult;
273
+ while (exeResult = regExp.exec(pathTemplate)) {
274
+ const templateItem = exeResult[0];
275
+ const exp = exeResult[1];
276
+ const evalResult = new Function('context', `return ${exp}`)(context);
277
+ resultPath = pathTemplate.replace(templateItem, evalResult);
278
+ }
279
+ return resultPath;
280
+ }
281
+ _initialize() {
282
+ return __awaiter(this, void 0, void 0, function* () {
283
+ const {
284
+ _config: config,
285
+ _engine: engine
286
+ } = this;
287
+ const featureUnits = this._featureUnits = yield StatsQuery._readModulesInDir(path_1.default.join(engine, 'exports'), StatsQuery._baseNameToFeatureUnitName);
288
+ for (const [featureName, feature] of Object.entries(config.features)) {
289
+ const parsedFeature = this._features[featureName] = {
290
+ modules: []
291
+ };
292
+ for (const moduleFileBaseName of feature.modules) {
293
+ const featureUnitName = StatsQuery._baseNameToFeatureUnitName(moduleFileBaseName);
294
+ if (!featureUnits[featureUnitName]) {
295
+ throw new Error(`Invalid config file: '${moduleFileBaseName}' is not a valid module.`);
296
+ }
297
+ parsedFeature.modules.push(featureUnitName);
298
+ }
299
+ parsedFeature.intrinsicFlags = feature.intrinsicFlags;
300
+ }
301
+ if (config.index) {
302
+ if (config.index.modules) {
303
+ for (const [k, v] of Object.entries(config.index.modules)) {
304
+ this._index.modules[StatsQuery._baseNameToFeatureUnitName(k)] = v;
305
+ }
306
+ }
307
+ this._index = Object.assign(Object.assign({}, config.index), {
308
+ modules: this._index.modules
309
+ });
310
+ }
311
+ this._editorPublicModules = yield StatsQuery._readModulesInDir(path_1.default.join(engine, 'editor', 'exports'), StatsQuery._editorBaseNameToModuleName);
312
+ });
313
+ }
314
+ }
315
+ exports.StatsQuery = StatsQuery;
316
+ (function (StatsQuery) {
317
+ class ConstantManager {
318
+ constructor(engineRoot) {
319
+ this._engineRoot = engineRoot;
320
+ }
321
+ //#region export string
322
+ exportDynamicConstants({
323
+ mode,
324
+ platform,
325
+ flags
326
+ }) {
327
+ const config = this._getConfig();
328
+ // init helper
329
+ let result = '';
330
+ if (this._hasCCGlobal(config)) {
331
+ result += fs_extra_1.default.readFileSync(path_1.default.join(__dirname, '../../../static/helper-global-exporter.txt'), 'utf8') + '\n';
332
+ }
333
+ if (this._hasDynamic(config)) {
334
+ result += fs_extra_1.default.readFileSync(path_1.default.join(__dirname, '../../../static/helper-dynamic-constants.txt'), 'utf8') + '\n';
335
+ }
336
+ // update value
337
+ if (config[mode]) {
338
+ config[mode].value = true;
339
+ } else {
340
+ console.warn(`Unknown mode: ${mode}`);
341
+ }
342
+ if (config[platform]) {
343
+ config[platform].value = true;
344
+ } else {
345
+ console.warn(`Unknown platform: ${platform}`);
346
+ }
347
+ for (const key in flags) {
348
+ const value = flags[key];
349
+ if (config[key]) {
350
+ config[key].value = value;
351
+ } else {
352
+ console.warn(`Unknown flag: ${key}`);
353
+ }
354
+ }
355
+ // eval value
356
+ for (const key in config) {
357
+ const info = config[key];
358
+ if (typeof info.value === 'string') {
359
+ info.value = this._evalExpression(info.value, config);
360
+ }
361
+ }
362
+ // generate export content
363
+ for (const key in config) {
364
+ const info = config[key];
365
+ const value = info.value;
366
+ if (info.dynamic) {
367
+ continue;
368
+ }
369
+ result += `export const ${key} = ${value};\n`;
370
+ if (info.ccGlobal) {
371
+ result += `tryDefineGlobal('CC_${key}', ${value});\n`;
372
+ }
373
+ result += '\n';
374
+ }
375
+ return result;
376
+ }
377
+ genBuildTimeConstants(options) {
378
+ const config = this._getConfig();
379
+ this._applyOptionsToConfig(config, options);
380
+ // generate json object
381
+ const jsonObj = {};
382
+ for (const key in config) {
383
+ const info = config[key];
384
+ jsonObj[key] = info.value;
385
+ }
386
+ return jsonObj;
387
+ }
388
+ genCCEnvConstants(options) {
389
+ const config = this._getConfig();
390
+ this._applyOptionsToConfig(config, options);
391
+ // generate json object
392
+ const jsonObj = {};
393
+ for (const key in config) {
394
+ const info = config[key];
395
+ if (!info.internal) {
396
+ jsonObj[key] = info.value;
397
+ }
398
+ }
399
+ return jsonObj;
400
+ }
401
+ exportStaticConstants({
402
+ mode,
403
+ platform,
404
+ flags
405
+ }) {
406
+ const config = this._getConfig();
407
+ // init helper
408
+ let result = '';
409
+ if (this._hasCCGlobal(config)) {
410
+ result += fs_extra_1.default.readFileSync(path_1.default.join(__dirname, '../../../static/helper-global-exporter.txt'), 'utf8') + '\n';
411
+ }
412
+ // update value
413
+ if (config[mode]) {
414
+ config[mode].value = true;
415
+ } else {
416
+ console.warn(`Unknown mode: ${mode}`);
417
+ }
418
+ if (config[platform]) {
419
+ config[platform].value = true;
420
+ } else {
421
+ console.warn(`Unknown platform: ${platform}`);
422
+ }
423
+ for (const key in flags) {
424
+ const value = flags[key];
425
+ if (config[key]) {
426
+ config[key].value = value;
427
+ } else {
428
+ console.warn(`Unknown flag: ${key}`);
429
+ }
430
+ }
431
+ // eval value
432
+ for (const key in config) {
433
+ const info = config[key];
434
+ if (typeof info.value === 'string') {
435
+ info.value = this._evalExpression(info.value, config);
436
+ }
437
+ }
438
+ // generate export content
439
+ for (const key in config) {
440
+ const info = config[key];
441
+ const value = info.value;
442
+ let declarationKind = 'const';
443
+ if (platform === 'OPEN_HARMONY' && key === 'WASM_SUPPORT_MODE') {
444
+ declarationKind = 'let'; // HACK: on OH platform, we cannot compile successfully when declarationKind is const.
445
+ }
446
+
447
+ result += `export ${declarationKind} ${key} = ${value};\n`;
448
+ if (info.ccGlobal) {
449
+ result += `tryDefineGlobal('CC_${key}', ${value});\n`;
450
+ }
451
+ result += '\n';
452
+ }
453
+ return result;
454
+ }
455
+ //#endregion export string
456
+ //#region declaration
457
+ genInternalConstants() {
458
+ const config = this._getConfig();
459
+ let result = `declare module 'internal:constants'{\n`;
460
+ for (const name in config) {
461
+ const info = config[name];
462
+ result += this._genConstantDeclaration(name, info);
463
+ }
464
+ result += '}\n';
465
+ return result;
466
+ }
467
+ genCCEnv() {
468
+ const config = this._getConfig();
469
+ let result = `declare module 'cc/env'{\n`;
470
+ for (const name in config) {
471
+ const info = config[name];
472
+ if (info.internal) {
473
+ continue;
474
+ }
475
+ result += this._genConstantDeclaration(name, info);
476
+ }
477
+ result += '}\n';
478
+ return result;
479
+ }
480
+ _genConstantDeclaration(name, info) {
481
+ let result = '\t/**\n';
482
+ let comments = info.comment.split('\n');
483
+ for (const comment of comments) {
484
+ result += `\t * ${comment}\n`;
485
+ }
486
+ result += '\t */\n';
487
+ result += `\texport const ${name}: ${info.type};\n\n`;
488
+ return result;
489
+ }
490
+ //#endregion declaration
491
+ //#region utils
492
+ _getConfig() {
493
+ const engineConfig = fs_extra_1.default.readJsonSync(path_1.default.join(this._engineRoot, './cc.config.json').replace(/\\/g, '/'));
494
+ const config = engineConfig.constants;
495
+ // init default value
496
+ for (const key in config) {
497
+ const info = config[key];
498
+ if (typeof info.ccGlobal === 'undefined') {
499
+ info.ccGlobal = false;
500
+ }
501
+ if (typeof info.dynamic === 'undefined') {
502
+ info.dynamic = false;
503
+ }
504
+ }
505
+ return config;
506
+ }
507
+ _hasCCGlobal(config) {
508
+ for (let key in config) {
509
+ const info = config[key];
510
+ if (info.ccGlobal) {
511
+ return true;
512
+ }
513
+ }
514
+ return false;
515
+ }
516
+ _hasDynamic(config) {
517
+ for (let key in config) {
518
+ const info = config[key];
519
+ if (info.dynamic) {
520
+ return true;
521
+ }
522
+ }
523
+ return false;
524
+ }
525
+ _evalExpression(expression, config) {
526
+ // eval sub expression
527
+ const matchResult = expression.match(/(?<=\$)\w+/g);
528
+ if (matchResult) {
529
+ for (let name of matchResult) {
530
+ const value = config[name].value;
531
+ if (typeof value === 'string') {
532
+ config[name].value = this._evalExpression(value, config);
533
+ }
534
+ }
535
+ }
536
+ // $EDITOR to $EDITOR.value
537
+ expression = expression.replace(/(?<=\$)(\w+)/g, '$1.value');
538
+ // $EDITOR to $.EDITOR.value
539
+ expression = expression.replace(/\$/g, '$.');
540
+ // do eval
541
+ const evalFn = new Function('$', `return ${expression}`);
542
+ return evalFn(config);
543
+ }
544
+ _applyOptionsToConfig(config, options) {
545
+ const {
546
+ mode,
547
+ platform,
548
+ flags
549
+ } = options;
550
+ // update value
551
+ if (config[mode]) {
552
+ config[mode].value = true;
553
+ } else {
554
+ console.warn(`Unknown mode: ${mode}`);
555
+ }
556
+ if (config[platform]) {
557
+ config[platform].value = true;
558
+ } else {
559
+ console.warn(`Unknown platform: ${platform}`);
560
+ }
561
+ for (const key in flags) {
562
+ const value = flags[key];
563
+ if (config[key]) {
564
+ config[key].value = value;
565
+ } else {
566
+ console.warn(`Unknown flag: ${key}`);
567
+ }
568
+ }
569
+ // eval value
570
+ for (const key in config) {
571
+ const info = config[key];
572
+ if (typeof info.value === 'string') {
573
+ info.value = this._evalExpression(info.value, config);
574
+ }
575
+ }
576
+ }
577
+ }
578
+ StatsQuery.ConstantManager = ConstantManager;
579
+ })(StatsQuery = exports.StatsQuery || (exports.StatsQuery = {}));
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import * as core from '@babel/core';
2
+ import * as parser from '@babel/parser';
3
+ import * as traverse from '@babel/traverse';
4
+ import * as presets from './presets';
5
+ import * as plugins from './plugins';
6
+ export { core, parser, traverse, presets, plugins };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/babel/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAErC,OAAO,EACH,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,OAAO,EACP,OAAO,GACV,CAAC"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {
20
+ Object.defineProperty(o, "default", {
21
+ enumerable: true,
22
+ value: v
23
+ });
24
+ } : function (o, v) {
25
+ o["default"] = v;
26
+ });
27
+ var __importStar = this && this.__importStar || function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ Object.defineProperty(exports, "__esModule", {
35
+ value: true
36
+ });
37
+ exports.plugins = exports.presets = exports.traverse = exports.parser = exports.core = void 0;
38
+ const core = __importStar(require("@babel/core"));
39
+ exports.core = core;
40
+ const parser = __importStar(require("@babel/parser"));
41
+ exports.parser = parser;
42
+ const traverse = __importStar(require("@babel/traverse"));
43
+ exports.traverse = traverse;
44
+ const presets = __importStar(require("./presets"));
45
+ exports.presets = presets;
46
+ const plugins = __importStar(require("./plugins"));
47
+ exports.plugins = plugins;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/babel/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAoC;AAOhC,oBAAI;AANR,sDAAwC;AAOpC,wBAAM;AANV,0DAA4C;AAOxC,4BAAQ;AANZ,mDAAqC;AAOjC,0BAAO;AANX,mDAAqC;AAOjC,0BAAO"}
@@ -0,0 +1,5 @@
1
+ import syntaxTS from '@babel/plugin-syntax-typescript';
2
+ import syntaxDecorators from '@babel/plugin-syntax-decorators';
3
+ import transformForOf from '@babel/plugin-transform-for-of';
4
+ import cocosDynamicImportVars from '@cocos/babel-plugin-dynamic-import-vars';
5
+ export { syntaxTS, syntaxDecorators, transformForOf, cocosDynamicImportVars };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/babel/plugins.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AAEvD,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAE/D,OAAO,cAAc,MAAM,gCAAgC,CAAC;AAC5D,OAAO,sBAAsB,MAAM,yCAAyC,CAAC;AAE7E,OAAO,EACH,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,sBAAsB,GACzB,CAAA"}