@cocos/ccbuild 2.2.0 → 2.2.2

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 (32) hide show
  1. package/modules/build-engine/lib/engine-js/index.d.ts.map +1 -1
  2. package/modules/build-engine/lib/engine-js/index.js +303 -331
  3. package/modules/build-engine/lib/engine-js/index.js.map +1 -1
  4. package/modules/build-engine/lib/engine-js/rollup-plugins/external-wasm-loader.d.ts +5 -0
  5. package/modules/build-engine/lib/engine-js/rollup-plugins/external-wasm-loader.d.ts.map +1 -1
  6. package/modules/build-engine/lib/engine-js/rollup-plugins/external-wasm-loader.js +111 -128
  7. package/modules/build-engine/lib/engine-js/rollup-plugins/external-wasm-loader.js.map +1 -1
  8. package/modules/build-engine/lib/engine-js/rollup-plugins/module-query-plugin.js +2 -31
  9. package/modules/build-engine/lib/engine-js/rollup-plugins/module-query-plugin.js.map +1 -1
  10. package/modules/build-engine/lib/engine-ts/engine-builder.js +416 -461
  11. package/modules/build-engine/lib/engine-ts/engine-builder.js.map +1 -1
  12. package/modules/build-engine/lib/engine-ts/index.js +19 -48
  13. package/modules/build-engine/lib/engine-ts/index.js.map +1 -1
  14. package/modules/build-engine/lib/engine-ts/plugins/external-wasm-loader.js +31 -64
  15. package/modules/build-engine/lib/engine-ts/plugins/external-wasm-loader.js.map +1 -1
  16. package/modules/build-engine/lib/engine-ts/plugins/module-query-plugin.js +5 -34
  17. package/modules/build-engine/lib/engine-ts/plugins/module-query-plugin.js.map +1 -1
  18. package/modules/build-engine/lib/engine-ts/plugins/node-module-loader.js +28 -59
  19. package/modules/build-engine/lib/engine-ts/plugins/node-module-loader.js.map +1 -1
  20. package/modules/build-engine/lib/index.d.ts +6 -1
  21. package/modules/build-engine/lib/index.d.ts.map +1 -1
  22. package/modules/build-engine/lib/index.js +47 -80
  23. package/modules/build-engine/lib/index.js.map +1 -1
  24. package/modules/dts-bundler/lib/index.js +236 -265
  25. package/modules/dts-bundler/lib/index.js.map +1 -1
  26. package/modules/modularize/lib/module-query.js +153 -198
  27. package/modules/modularize/lib/module-query.js.map +1 -1
  28. package/modules/stats-query/lib/index.js +47 -80
  29. package/modules/stats-query/lib/index.js.map +1 -1
  30. package/modules/utils/lib/path.js +8 -37
  31. package/modules/utils/lib/path.js.map +1 -1
  32. package/package.json +1 -1
@@ -31,33 +31,6 @@ var __importStar = this && this.__importStar || function (mod) {
31
31
  __setModuleDefault(result, mod);
32
32
  return result;
33
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
34
  var __importDefault = this && this.__importDefault || function (mod) {
62
35
  return mod && mod.__esModule ? mod : {
63
36
  "default": mod
@@ -78,267 +51,265 @@ const DEBUG = false;
78
51
  const REMOVE_OLD = !DEBUG;
79
52
  const RECOMPILE = !DEBUG;
80
53
  const REMOVE_UNBUNDLED_CACHE = !DEBUG;
81
- function build(options) {
54
+ async function build(options) {
82
55
  var _a;
83
- return __awaiter(this, void 0, void 0, function* () {
84
- console.log(`Typescript version: ${ts.version}`);
85
- const {
86
- engine,
87
- outDir
88
- } = options;
89
- yield fs_extra_1.default.ensureDir(outDir);
90
- // TODO: should this be a build options ?
91
- const withIndex = true;
92
- const withExports = false;
93
- const withEditorExports = true;
94
- console.debug(`With index: ${withIndex}`);
95
- console.debug(`With exports: ${withExports}`);
96
- console.debug(`With editor exports: ${withEditorExports}`);
97
- const statsQuery = yield stats_query_1.StatsQuery.create(engine);
98
- const moduleQuery = new modularize_1.ModuleQuery({
99
- engine,
100
- platform: 'WEB_EDITOR',
101
- customExportConditions: ['types']
102
- });
103
- const moduleExportMap = yield moduleQuery.getExportMap();
104
- // NOTE: to record the imported modules, we only bundle the imported modules, not all engine modules.
105
- const importedModules = [];
106
- const tsConfigPath = statsQuery.tsConfigPath;
107
- const unbundledOutDir = utils_1.ps.join(outDir, '__before_bundle');
108
- const parsedCommandLine = ts.getParsedCommandLineOfConfigFile(tsConfigPath, {
109
- declaration: true,
110
- noEmit: false,
111
- emitDeclarationOnly: true,
112
- outFile: undefined,
113
- outDir: unbundledOutDir
114
- }, {
115
- onUnRecoverableConfigFileDiagnostic: () => {},
116
- useCaseSensitiveFileNames: ts.sys.useCaseSensitiveFileNames,
117
- readDirectory: ts.sys.readDirectory,
118
- getCurrentDirectory: ts.sys.getCurrentDirectory,
119
- fileExists: ts.sys.fileExists,
120
- readFile: ts.sys.readFile
121
- });
122
- if (!parsedCommandLine) {
123
- throw new Error(`Can not get 'parsedCommandLine'.`);
124
- }
125
- const unbundledOutDirNormalized = utils_1.ps.resolve(engine, parsedCommandLine.options.outDir);
126
- console.debug(`Unbundled will write to: ${unbundledOutDirNormalized}`);
127
- yield fs_extra_1.default.ensureDir(unbundledOutDirNormalized);
128
- if (REMOVE_OLD) {
129
- yield fs_extra_1.default.emptyDir(unbundledOutDirNormalized);
56
+ console.log(`Typescript version: ${ts.version}`);
57
+ const {
58
+ engine,
59
+ outDir
60
+ } = options;
61
+ await fs_extra_1.default.ensureDir(outDir);
62
+ // TODO: should this be a build options ?
63
+ const withIndex = true;
64
+ const withExports = false;
65
+ const withEditorExports = true;
66
+ console.debug(`With index: ${withIndex}`);
67
+ console.debug(`With exports: ${withExports}`);
68
+ console.debug(`With editor exports: ${withEditorExports}`);
69
+ const statsQuery = await stats_query_1.StatsQuery.create(engine);
70
+ const moduleQuery = new modularize_1.ModuleQuery({
71
+ engine,
72
+ platform: 'WEB_EDITOR',
73
+ customExportConditions: ['types']
74
+ });
75
+ const moduleExportMap = await moduleQuery.getExportMap();
76
+ // NOTE: to record the imported modules, we only bundle the imported modules, not all engine modules.
77
+ const importedModules = [];
78
+ const tsConfigPath = statsQuery.tsConfigPath;
79
+ const unbundledOutDir = utils_1.ps.join(outDir, '__before_bundle');
80
+ const parsedCommandLine = ts.getParsedCommandLineOfConfigFile(tsConfigPath, {
81
+ declaration: true,
82
+ noEmit: false,
83
+ emitDeclarationOnly: true,
84
+ outFile: undefined,
85
+ outDir: unbundledOutDir
86
+ }, {
87
+ onUnRecoverableConfigFileDiagnostic: () => {},
88
+ useCaseSensitiveFileNames: ts.sys.useCaseSensitiveFileNames,
89
+ readDirectory: ts.sys.readDirectory,
90
+ getCurrentDirectory: ts.sys.getCurrentDirectory,
91
+ fileExists: ts.sys.fileExists,
92
+ readFile: ts.sys.readFile
93
+ });
94
+ if (!parsedCommandLine) {
95
+ throw new Error(`Can not get 'parsedCommandLine'.`);
96
+ }
97
+ const unbundledOutDirNormalized = utils_1.ps.resolve(engine, parsedCommandLine.options.outDir);
98
+ console.debug(`Unbundled will write to: ${unbundledOutDirNormalized}`);
99
+ await fs_extra_1.default.ensureDir(unbundledOutDirNormalized);
100
+ if (REMOVE_OLD) {
101
+ await fs_extra_1.default.emptyDir(unbundledOutDirNormalized);
102
+ }
103
+ console.log(`Generating...`);
104
+ const featureUnits = statsQuery.getFeatureUnits().filter(m => m !== 'wait-for-ammo-instantiation');
105
+ const editorExportModules = statsQuery.getEditorPublicModules();
106
+ if (RECOMPILE) {
107
+ let fileNames = parsedCommandLine.fileNames;
108
+ if (withEditorExports) {
109
+ fileNames = fileNames.concat(editorExportModules.map(e => statsQuery.getEditorPublicModuleFile(e)));
130
110
  }
131
- console.log(`Generating...`);
132
- const featureUnits = statsQuery.getFeatureUnits().filter(m => m !== 'wait-for-ammo-instantiation');
133
- const editorExportModules = statsQuery.getEditorPublicModules();
134
- if (RECOMPILE) {
135
- let fileNames = parsedCommandLine.fileNames;
136
- if (withEditorExports) {
137
- fileNames = fileNames.concat(editorExportModules.map(e => statsQuery.getEditorPublicModuleFile(e)));
138
- }
139
- const host = ts.createCompilerHost(parsedCommandLine.options);
140
- host.resolveModuleNames = (moduleNames, importer) => {
141
- const resolvedModules = [];
142
- for (const moduleName of moduleNames) {
143
- const exportPath = moduleExportMap[moduleName];
144
- if (exportPath) {
145
- if (!importedModules.includes(moduleName)) {
146
- importedModules.push(moduleName);
147
- }
111
+ const host = ts.createCompilerHost(parsedCommandLine.options);
112
+ host.resolveModuleNames = (moduleNames, importer) => {
113
+ const resolvedModules = [];
114
+ for (const moduleName of moduleNames) {
115
+ const exportPath = moduleExportMap[moduleName];
116
+ if (exportPath) {
117
+ if (!importedModules.includes(moduleName)) {
118
+ importedModules.push(moduleName);
119
+ }
120
+ resolvedModules.push({
121
+ resolvedFileName: exportPath
122
+ });
123
+ } else {
124
+ const resolvedRes = ts.resolveModuleName(moduleName, importer, parsedCommandLine.options, host);
125
+ if (resolvedRes.resolvedModule) {
148
126
  resolvedModules.push({
149
- resolvedFileName: exportPath
127
+ resolvedFileName: resolvedRes.resolvedModule.resolvedFileName
150
128
  });
151
129
  } else {
152
- const resolvedRes = ts.resolveModuleName(moduleName, importer, parsedCommandLine.options, host);
153
- if (resolvedRes.resolvedModule) {
154
- resolvedModules.push({
155
- resolvedFileName: resolvedRes.resolvedModule.resolvedFileName
156
- });
157
- } else {
158
- // Cannot resolve module, treat it as external.
159
- resolvedModules.push(undefined);
160
- }
130
+ // Cannot resolve module, treat it as external.
131
+ resolvedModules.push(undefined);
161
132
  }
162
133
  }
163
- return resolvedModules;
164
- };
165
- const program = ts.createProgram(fileNames, parsedCommandLine.options, host);
166
- const emitResult = program.emit(undefined,
167
- // targetSourceFile
168
- undefined,
169
- // writeFile
170
- undefined,
171
- // cancellationToken,
172
- true,
173
- // emitOnlyDtsFiles
174
- undefined);
175
- const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
176
- for (const diagnostic of allDiagnostics) {
177
- let printer;
178
- switch (diagnostic.category) {
179
- case ts.DiagnosticCategory.Error:
180
- printer = console.error;
181
- break;
182
- case ts.DiagnosticCategory.Warning:
183
- printer = console.warn;
184
- break;
185
- case ts.DiagnosticCategory.Message:
186
- case ts.DiagnosticCategory.Suggestion:
187
- default:
188
- printer = console.log;
189
- break;
190
- }
191
- if (!printer) {
192
- continue;
193
- }
194
- if (diagnostic.file && diagnostic.start !== undefined) {
195
- const {
196
- line,
197
- character
198
- } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);
199
- const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, ts.sys.newLine);
200
- printer(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
201
- } else {
202
- printer(`${ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n')}`);
203
- }
134
+ }
135
+ return resolvedModules;
136
+ };
137
+ const program = ts.createProgram(fileNames, parsedCommandLine.options, host);
138
+ const emitResult = program.emit(undefined,
139
+ // targetSourceFile
140
+ undefined,
141
+ // writeFile
142
+ undefined,
143
+ // cancellationToken,
144
+ true,
145
+ // emitOnlyDtsFiles
146
+ undefined);
147
+ const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
148
+ for (const diagnostic of allDiagnostics) {
149
+ let printer;
150
+ switch (diagnostic.category) {
151
+ case ts.DiagnosticCategory.Error:
152
+ printer = console.error;
153
+ break;
154
+ case ts.DiagnosticCategory.Warning:
155
+ printer = console.warn;
156
+ break;
157
+ case ts.DiagnosticCategory.Message:
158
+ case ts.DiagnosticCategory.Suggestion:
159
+ default:
160
+ printer = console.log;
161
+ break;
162
+ }
163
+ if (!printer) {
164
+ continue;
165
+ }
166
+ if (diagnostic.file && diagnostic.start !== undefined) {
167
+ const {
168
+ line,
169
+ character
170
+ } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);
171
+ const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, ts.sys.newLine);
172
+ printer(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
173
+ } else {
174
+ printer(`${ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n')}`);
204
175
  }
205
176
  }
206
- const patchSpineCoreDtsSource = utils_1.ps.join(engine, 'cocos', 'spine', 'lib', 'spine-core.d.ts');
207
- const patchSpineCoreDtsTarget = utils_1.ps.join(unbundledOutDirNormalized, 'cocos', 'spine', 'lib', 'spine-core.d.ts');
208
- if (!(yield fs_extra_1.default.pathExists(patchSpineCoreDtsSource))) {
209
- console.debug(`Does 'cocos/spine/lib/spine-core.d.ts' no longer existed? I have a patch for it.`);
210
- } else {
211
- console.debug(`It's ${new Date().toLocaleString()}, we're still doing the hack for spine-core.d.ts`);
212
- yield fs_extra_1.default.ensureDir(utils_1.ps.dirname(patchSpineCoreDtsTarget));
213
- yield fs_extra_1.default.copyFile(patchSpineCoreDtsSource, patchSpineCoreDtsTarget);
177
+ }
178
+ const patchSpineCoreDtsSource = utils_1.ps.join(engine, 'cocos', 'spine', 'lib', 'spine-core.d.ts');
179
+ const patchSpineCoreDtsTarget = utils_1.ps.join(unbundledOutDirNormalized, 'cocos', 'spine', 'lib', 'spine-core.d.ts');
180
+ if (!(await fs_extra_1.default.pathExists(patchSpineCoreDtsSource))) {
181
+ console.debug(`Does 'cocos/spine/lib/spine-core.d.ts' no longer existed? I have a patch for it.`);
182
+ } else {
183
+ console.debug(`It's ${new Date().toLocaleString()}, we're still doing the hack for spine-core.d.ts`);
184
+ await fs_extra_1.default.ensureDir(utils_1.ps.dirname(patchSpineCoreDtsTarget));
185
+ await fs_extra_1.default.copyFile(patchSpineCoreDtsSource, patchSpineCoreDtsTarget);
186
+ }
187
+ const rebasedModuleExportMap = {};
188
+ for (const [moduleName, modulePath] of Object.entries(moduleExportMap)) {
189
+ let rebasedPath = utils_1.ps.rebasePath(modulePath, engine, unbundledOutDirNormalized);
190
+ if (!rebasedPath.endsWith('.d.ts')) {
191
+ rebasedPath = utils_1.ps.replaceExtname(rebasedPath, '.ts', '.d.ts');
214
192
  }
215
- const rebasedModuleExportMap = {};
216
- for (const [moduleName, modulePath] of Object.entries(moduleExportMap)) {
217
- let rebasedPath = utils_1.ps.rebasePath(modulePath, engine, unbundledOutDirNormalized);
218
- if (!rebasedPath.endsWith('.d.ts')) {
219
- rebasedPath = utils_1.ps.replaceExtname(rebasedPath, '.ts', '.d.ts');
193
+ rebasedModuleExportMap[moduleName] = rebasedPath;
194
+ }
195
+ const giftInputs = [];
196
+ const types = (_a = parsedCommandLine.options.types) === null || _a === void 0 ? void 0 : _a.map(typeFile => `${typeFile}.d.ts`);
197
+ if (types) {
198
+ for (let file of types) {
199
+ const isBareSpecifier = !file.includes('/');
200
+ if (isBareSpecifier) {
201
+ file = require.resolve(`@types/${file.slice(0, -'.d.ts'.length)}`, {
202
+ paths: [engine]
203
+ });
220
204
  }
221
- rebasedModuleExportMap[moduleName] = rebasedPath;
222
- }
223
- const giftInputs = [];
224
- const types = (_a = parsedCommandLine.options.types) === null || _a === void 0 ? void 0 : _a.map(typeFile => `${typeFile}.d.ts`);
225
- if (types) {
226
- for (let file of types) {
227
- const isBareSpecifier = !file.includes('/');
228
- if (isBareSpecifier) {
229
- file = require.resolve(`@types/${file.slice(0, -'.d.ts'.length)}`, {
230
- paths: [engine]
231
- });
232
- }
233
- if (!utils_1.ps.isAbsolute(file)) {
234
- file = utils_1.ps.join(utils_1.ps.dirname(tsConfigPath), file);
235
- }
236
- giftInputs.push(file);
205
+ if (!utils_1.ps.isAbsolute(file)) {
206
+ file = utils_1.ps.join(utils_1.ps.dirname(tsConfigPath), file);
237
207
  }
208
+ giftInputs.push(file);
238
209
  }
239
- const listGiftInputs = dir => __awaiter(this, void 0, void 0, function* () {
240
- for (const file of yield fs_extra_1.default.readdir(dir)) {
241
- const path = utils_1.ps.join(dir, file);
210
+ }
211
+ const listGiftInputs = async dir => {
212
+ for (const file of await fs_extra_1.default.readdir(dir)) {
213
+ const path = utils_1.ps.join(dir, file);
214
+ // eslint-disable-next-line no-await-in-loop
215
+ const stats = await fs_extra_1.default.stat(path);
216
+ if (stats.isFile()) {
217
+ giftInputs.push(path);
218
+ } else if (stats.isDirectory()) {
242
219
  // eslint-disable-next-line no-await-in-loop
243
- const stats = yield fs_extra_1.default.stat(path);
244
- if (stats.isFile()) {
245
- giftInputs.push(path);
246
- } else if (stats.isDirectory()) {
247
- // eslint-disable-next-line no-await-in-loop
248
- yield listGiftInputs(path);
249
- }
250
- }
251
- });
252
- yield listGiftInputs(unbundledOutDirNormalized);
253
- const giftEntries = {};
254
- for (const [moduleName, modulePath] of Object.entries(rebasedModuleExportMap)) {
255
- if (importedModules.includes(moduleName)) {
256
- giftInputs.push(modulePath);
220
+ await listGiftInputs(path);
257
221
  }
258
222
  }
259
- const getModuleNameInTsOutFile = moduleFile => {
260
- const path = utils_1.ps.relative(statsQuery.path, moduleFile);
261
- const pathDts = path.replace(/\.ts$/, '.d.ts');
262
- return utils_1.ps.join(unbundledOutDirNormalized, pathDts);
263
- };
264
- if (withExports) {
265
- for (const exportEntry of featureUnits) {
266
- giftEntries[exportEntry] = getModuleNameInTsOutFile(statsQuery.getFeatureUnitFile(exportEntry));
267
- }
223
+ };
224
+ await listGiftInputs(unbundledOutDirNormalized);
225
+ const giftEntries = {};
226
+ for (const [moduleName, modulePath] of Object.entries(rebasedModuleExportMap)) {
227
+ if (importedModules.includes(moduleName)) {
228
+ giftInputs.push(modulePath);
268
229
  }
269
- if (withEditorExports) {
270
- for (const editorExportModule of editorExportModules) {
271
- giftEntries[editorExportModule] = getModuleNameInTsOutFile(statsQuery.getEditorPublicModuleFile(editorExportModule));
272
- }
273
- for (const [moduleName, modulePath] of Object.entries(rebasedModuleExportMap)) {
274
- if (moduleName.endsWith('/editor') && importedModules.includes(moduleName)) {
275
- const editorModuleName = transformToEditorModuleName(moduleName);
276
- giftEntries[editorModuleName] = modulePath;
277
- }
230
+ }
231
+ const getModuleNameInTsOutFile = moduleFile => {
232
+ const path = utils_1.ps.relative(statsQuery.path, moduleFile);
233
+ const pathDts = path.replace(/\.ts$/, '.d.ts');
234
+ return utils_1.ps.join(unbundledOutDirNormalized, pathDts);
235
+ };
236
+ if (withExports) {
237
+ for (const exportEntry of featureUnits) {
238
+ giftEntries[exportEntry] = getModuleNameInTsOutFile(statsQuery.getFeatureUnitFile(exportEntry));
239
+ }
240
+ }
241
+ if (withEditorExports) {
242
+ for (const editorExportModule of editorExportModules) {
243
+ giftEntries[editorExportModule] = getModuleNameInTsOutFile(statsQuery.getEditorPublicModuleFile(editorExportModule));
244
+ }
245
+ for (const [moduleName, modulePath] of Object.entries(rebasedModuleExportMap)) {
246
+ if (moduleName.endsWith('/editor') && importedModules.includes(moduleName)) {
247
+ const editorModuleName = transformToEditorModuleName(moduleName);
248
+ giftEntries[editorModuleName] = modulePath;
278
249
  }
279
250
  }
280
- let ccDtsFile;
281
- if (withIndex && !withExports) {
282
- ccDtsFile = utils_1.ps.join(unbundledOutDirNormalized, 'virtual-cc.d.ts');
283
- giftEntries.cc = ccDtsFile;
284
- giftInputs.push(ccDtsFile);
285
- const code = `// Auto-generated\n${statsQuery.evaluateIndexModuleSource(featureUnits, featureUnit => getModuleNameInTsOutFile(statsQuery.getFeatureUnitFile(featureUnit)).replace(/\\/g, '/').replace(/\.d.ts$/, ''))}\n`;
286
- yield fs_extra_1.default.writeFile(ccDtsFile, code, {
251
+ }
252
+ let ccDtsFile;
253
+ if (withIndex && !withExports) {
254
+ ccDtsFile = utils_1.ps.join(unbundledOutDirNormalized, 'virtual-cc.d.ts');
255
+ giftEntries.cc = ccDtsFile;
256
+ giftInputs.push(ccDtsFile);
257
+ const code = `// Auto-generated\n${statsQuery.evaluateIndexModuleSource(featureUnits, featureUnit => getModuleNameInTsOutFile(statsQuery.getFeatureUnitFile(featureUnit)).replace(/\\/g, '/').replace(/\.d.ts$/, ''))}\n`;
258
+ await fs_extra_1.default.writeFile(ccDtsFile, code, {
259
+ encoding: 'utf8'
260
+ });
261
+ }
262
+ console.log(`Bundling...`);
263
+ try {
264
+ const indexOutputPath = utils_1.ps.join(outDir, 'cc.d.ts');
265
+ const giftResult = gift.bundle({
266
+ input: giftInputs,
267
+ rootDir: unbundledOutDirNormalized,
268
+ name: 'cc',
269
+ rootModule: 'index',
270
+ entries: giftEntries,
271
+ priority: [...(ccDtsFile ? [ccDtsFile] : []) // Things should be exported to 'cc' as far as possible.
272
+ ],
273
+
274
+ privateJsDocTag: 'engineInternal',
275
+ groups: [{
276
+ test: /^cc\/editor.*$/,
277
+ path: utils_1.ps.join(outDir, 'cc.editor.d.ts')
278
+ }, {
279
+ test: /^cc\/.*$/,
280
+ path: utils_1.ps.join(outDir, 'index.d.ts')
281
+ }, {
282
+ test: /^cc.*$/,
283
+ path: indexOutputPath
284
+ }],
285
+ nonExportedSymbolDistribution: [{
286
+ sourceModule: /cocos\/animation\/marionette/,
287
+ targetModule: 'cc/editor/new-gen-anim'
288
+ }, {
289
+ sourceModule: /.*/,
290
+ targetModule: 'cc'
291
+ }],
292
+ moduleMap: rebasedModuleExportMap
293
+ });
294
+ await Promise.all(giftResult.groups.map(async group => {
295
+ await fs_extra_1.default.outputFile(group.path, group.code, {
287
296
  encoding: 'utf8'
288
297
  });
289
- }
290
- console.log(`Bundling...`);
291
- try {
292
- const indexOutputPath = utils_1.ps.join(outDir, 'cc.d.ts');
293
- const giftResult = gift.bundle({
294
- input: giftInputs,
295
- rootDir: unbundledOutDirNormalized,
296
- name: 'cc',
297
- rootModule: 'index',
298
- entries: giftEntries,
299
- priority: [...(ccDtsFile ? [ccDtsFile] : []) // Things should be exported to 'cc' as far as possible.
300
- ],
301
-
302
- privateJsDocTag: 'engineInternal',
303
- groups: [{
304
- test: /^cc\/editor.*$/,
305
- path: utils_1.ps.join(outDir, 'cc.editor.d.ts')
306
- }, {
307
- test: /^cc\/.*$/,
308
- path: utils_1.ps.join(outDir, 'index.d.ts')
309
- }, {
310
- test: /^cc.*$/,
311
- path: indexOutputPath
312
- }],
313
- nonExportedSymbolDistribution: [{
314
- sourceModule: /cocos\/animation\/marionette/,
315
- targetModule: 'cc/editor/new-gen-anim'
316
- }, {
317
- sourceModule: /.*/,
318
- targetModule: 'cc'
319
- }],
320
- moduleMap: rebasedModuleExportMap
298
+ }));
299
+ if (withIndex && withExports) {
300
+ await fs_extra_1.default.outputFile(indexOutputPath, buildIndexModule(featureUnits, statsQuery), {
301
+ encoding: 'utf8'
321
302
  });
322
- yield Promise.all(giftResult.groups.map(group => __awaiter(this, void 0, void 0, function* () {
323
- yield fs_extra_1.default.outputFile(group.path, group.code, {
324
- encoding: 'utf8'
325
- });
326
- })));
327
- if (withIndex && withExports) {
328
- yield fs_extra_1.default.outputFile(indexOutputPath, buildIndexModule(featureUnits, statsQuery), {
329
- encoding: 'utf8'
330
- });
331
- }
332
- } catch (error) {
333
- console.error(error);
334
- return false;
335
- } finally {
336
- if (REMOVE_UNBUNDLED_CACHE) {
337
- yield fs_extra_1.default.remove(unbundledOutDirNormalized);
338
- }
339
303
  }
340
- return true;
341
- });
304
+ } catch (error) {
305
+ console.error(error);
306
+ return false;
307
+ } finally {
308
+ if (REMOVE_UNBUNDLED_CACHE) {
309
+ await fs_extra_1.default.remove(unbundledOutDirNormalized);
310
+ }
311
+ }
312
+ return true;
342
313
  }
343
314
  exports.build = build;
344
315
  function buildIndexModule(featureUnits, statsQuery) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}