@cocos/ccbuild 1.0.0-alpha.7 → 1.0.0-alpha.8

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 (101) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +14 -14
  3. package/lib/api-builder.d.ts +1 -0
  4. package/lib/api-builder.d.ts.map +1 -0
  5. package/lib/api-builder.js +1 -1
  6. package/lib/build-engine/engine-js/index.d.ts +3 -0
  7. package/lib/build-engine/engine-js/index.d.ts.map +1 -0
  8. package/lib/build-engine/engine-js/index.js +460 -0
  9. package/lib/build-engine/engine-js/index.js.map +1 -0
  10. package/lib/build-engine/engine-js/rollup-plugins/asset-ref.d.ts +37 -0
  11. package/lib/build-engine/engine-js/rollup-plugins/asset-ref.d.ts.map +1 -0
  12. package/lib/build-engine/engine-js/rollup-plugins/asset-ref.js +88 -0
  13. package/lib/build-engine/engine-js/rollup-plugins/asset-ref.js.map +1 -0
  14. package/lib/build-engine/engine-js/rollup-plugins/asset-url.d.ts +8 -0
  15. package/lib/build-engine/engine-js/rollup-plugins/asset-url.d.ts.map +1 -0
  16. package/lib/build-engine/engine-js/rollup-plugins/asset-url.js +93 -0
  17. package/lib/build-engine/engine-js/rollup-plugins/asset-url.js.map +1 -0
  18. package/lib/build-engine/engine-js/rollup-plugins/code-asset.d.ts +29 -0
  19. package/lib/build-engine/engine-js/rollup-plugins/code-asset.d.ts.map +1 -0
  20. package/lib/build-engine/engine-js/rollup-plugins/code-asset.js +136 -0
  21. package/lib/build-engine/engine-js/rollup-plugins/code-asset.js.map +1 -0
  22. package/lib/build-engine/engine-js/rollup-plugins/remove-deprecated-features.d.ts +3 -0
  23. package/lib/build-engine/engine-js/rollup-plugins/remove-deprecated-features.d.ts.map +1 -0
  24. package/lib/build-engine/engine-js/rollup-plugins/remove-deprecated-features.js +38 -0
  25. package/lib/build-engine/engine-js/rollup-plugins/remove-deprecated-features.js.map +1 -0
  26. package/lib/build-engine/engine-js/rollup-plugins/ts-paths.d.ts +5 -0
  27. package/lib/build-engine/engine-js/rollup-plugins/ts-paths.d.ts.map +1 -0
  28. package/lib/build-engine/engine-js/rollup-plugins/ts-paths.js +43 -0
  29. package/lib/build-engine/engine-js/rollup-plugins/ts-paths.js.map +1 -0
  30. package/lib/build-engine/index.d.ts +119 -0
  31. package/lib/build-engine/index.d.ts.map +1 -0
  32. package/lib/build-engine/index.js +125 -0
  33. package/lib/build-engine/index.js.map +1 -0
  34. package/lib/engine-builder.d.ts +54 -46
  35. package/lib/engine-builder.d.ts.map +1 -0
  36. package/lib/engine-builder.js +549 -545
  37. package/lib/engine-builder.js.map +1 -1
  38. package/lib/index.d.ts +5 -1
  39. package/lib/index.d.ts.map +1 -0
  40. package/lib/index.js +34 -5
  41. package/lib/index.js.map +1 -1
  42. package/lib/module-resolver.d.ts +8 -7
  43. package/lib/module-resolver.d.ts.map +1 -0
  44. package/lib/module-resolver.js +28 -28
  45. package/lib/stats-query/config-interface.d.ts +130 -129
  46. package/lib/stats-query/config-interface.d.ts.map +1 -0
  47. package/lib/stats-query/config-interface.js +3 -3
  48. package/lib/stats-query/constant-manager.d.ts +67 -67
  49. package/lib/stats-query/constant-manager.d.ts.map +1 -0
  50. package/lib/stats-query/constant-manager.js +262 -262
  51. package/lib/stats-query/index.d.ts +162 -91
  52. package/lib/stats-query/index.d.ts.map +1 -0
  53. package/lib/stats-query/index.js +527 -259
  54. package/lib/stats-query/index.js.map +1 -1
  55. package/lib/stats-query/path-utils.d.ts +3 -2
  56. package/lib/stats-query/path-utils.d.ts.map +1 -0
  57. package/lib/stats-query/path-utils.js +35 -31
  58. package/lib/stats-query/path-utils.js.map +1 -1
  59. package/lib/transformer/babel.d.ts +6 -0
  60. package/lib/transformer/babel.d.ts.map +1 -0
  61. package/lib/{config-parser.js → transformer/babel.js} +35 -34
  62. package/lib/transformer/babel.js.map +1 -0
  63. package/lib/transformer/index.d.ts +3 -0
  64. package/lib/transformer/index.d.ts.map +1 -0
  65. package/lib/{config-paerser/config-parser.js → transformer/index.js} +29 -34
  66. package/lib/transformer/index.js.map +1 -0
  67. package/lib/transformer.js +6 -6
  68. package/lib/tsdoc-metadata.json +11 -0
  69. package/lib/utils.d.ts +3 -0
  70. package/lib/utils.d.ts.map +1 -0
  71. package/lib/utils.js +15 -0
  72. package/lib/utils.js.map +1 -0
  73. package/package.json +70 -51
  74. package/static/helper-dynamic-constants.txt +12 -12
  75. package/static/helper-global-exporter.txt +8 -8
  76. package/static/lib.dom.d.ts +20227 -20227
  77. package/lib/babel-plugins/transform-virtual-specifier.js +0 -71
  78. package/lib/babel-plugins/transform-virtual-specifier.js.map +0 -1
  79. package/lib/config-interface.js +0 -3
  80. package/lib/config-interface.js.map +0 -1
  81. package/lib/config-paerser/config-interface.js +0 -3
  82. package/lib/config-paerser/config-interface.js.map +0 -1
  83. package/lib/config-paerser/config-parser.js.map +0 -1
  84. package/lib/config-parser/config-interface.js +0 -4
  85. package/lib/config-parser/config-interface.js.map +0 -1
  86. package/lib/config-parser/config-parser.js +0 -37
  87. package/lib/config-parser/config-parser.js.map +0 -1
  88. package/lib/config-parser/constant-interface.js +0 -3
  89. package/lib/config-parser/constant-interface.js.map +0 -1
  90. package/lib/config-parser/constant-manager.js +0 -263
  91. package/lib/config-parser/constant-manager.js.map +0 -1
  92. package/lib/config-parser/index.js +0 -286
  93. package/lib/config-parser/index.js.map +0 -1
  94. package/lib/config-parser/stats-query.js +0 -248
  95. package/lib/config-parser/stats-query.js.map +0 -1
  96. package/lib/config-parser.js.map +0 -1
  97. package/lib/stats-query/constant-interface.js +0 -3
  98. package/lib/stats-query/constant-interface.js.map +0 -1
  99. package/lib/stats-query/stats-query.js +0 -248
  100. package/lib/stats-query/stats-query.js.map +0 -1
  101. package/lib/transformer.d.ts +0 -2
@@ -0,0 +1,125 @@
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.buildEngine = void 0;
16
+ const engine_js_1 = require("./engine-js");
17
+ const transformer_1 = require("../transformer");
18
+ const fs_extra_1 = __importDefault(require("fs-extra"));
19
+ function verifyCache(options) {
20
+ // TODO
21
+ return false;
22
+ }
23
+ function buildEngine(options) {
24
+ return __awaiter(this, void 0, void 0, function* () {
25
+ if (verifyCache(options)) {
26
+ throw 'TODO';
27
+ }
28
+ if (options.platform === 'OPEN_HARMONY') {
29
+ // we use a custom engine builder for OPEN_HARMONY platform
30
+ throw 'TODO';
31
+ }
32
+ else {
33
+ return (0, engine_js_1.buildJsEngine)(options);
34
+ }
35
+ });
36
+ }
37
+ exports.buildEngine = buildEngine;
38
+ (function (buildEngine) {
39
+ function transform(code, moduleOption, loose) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ const babelFormat = moduleOptionsToBabelEnvModules(moduleOption);
42
+ const babelFileResult = yield transformer_1.babel.core.transformAsync(code, {
43
+ presets: [[transformer_1.babel.presetEnv, { modules: babelFormat, loose: loose !== null && loose !== void 0 ? loose : true }]],
44
+ });
45
+ if (!babelFileResult || !babelFileResult.code) {
46
+ throw new Error(`Failed to transform!`);
47
+ }
48
+ return {
49
+ code: babelFileResult.code,
50
+ };
51
+ });
52
+ }
53
+ buildEngine.transform = transform;
54
+ function moduleOptionsToBabelEnvModules(moduleOptions) {
55
+ switch (moduleOptions) {
56
+ case 'cjs': return 'commonjs';
57
+ case 'system': return 'systemjs';
58
+ case 'iife':
59
+ case 'esm': return false;
60
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
61
+ default: throw new Error(`Unknown module format ${moduleOptions}`);
62
+ }
63
+ }
64
+ function isSourceChanged(incrementalFile) {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ let record;
67
+ try {
68
+ record = yield fs_extra_1.default.readJSON(incrementalFile);
69
+ }
70
+ catch (_a) {
71
+ console.debug(`Failed to read incremental file: ${incrementalFile} - rebuild is needed.`);
72
+ return true;
73
+ }
74
+ for (const file of Object.keys(record)) {
75
+ const mtime = record[file];
76
+ try {
77
+ /* eslint-disable-next-line no-await-in-loop */
78
+ const mtimeNow = (yield fs_extra_1.default.stat(file)).mtimeMs;
79
+ if (mtimeNow !== mtime) {
80
+ console.debug(`Source ${file} in watch files record ${incrementalFile} has a different time stamp - rebuild is needed.`);
81
+ return true;
82
+ }
83
+ }
84
+ catch (_b) {
85
+ console.debug(`Failed to read source ${file} in watch files record ${incrementalFile} - rebuild is needed.`);
86
+ return true;
87
+ }
88
+ }
89
+ return false;
90
+ });
91
+ }
92
+ buildEngine.isSourceChanged = isSourceChanged;
93
+ /**
94
+ * Enumerates all chunk files that used by specified feature units.
95
+ * @param meta Metadata of build result.
96
+ * @param featureUnits Feature units.
97
+ */
98
+ function enumerateDependentChunks(meta, featureUnits) {
99
+ const result = [];
100
+ const visited = new Set();
101
+ const addChunk = (chunkFileName) => {
102
+ if (visited.has(chunkFileName)) {
103
+ return;
104
+ }
105
+ visited.add(chunkFileName);
106
+ result.push(chunkFileName);
107
+ if (meta.dependencyGraph && chunkFileName in meta.dependencyGraph) {
108
+ for (const dependencyChunk of meta.dependencyGraph[chunkFileName]) {
109
+ addChunk(dependencyChunk);
110
+ }
111
+ }
112
+ };
113
+ for (const featureUnit of featureUnits) {
114
+ const chunkFileName = meta.exports[featureUnit];
115
+ if (!chunkFileName) {
116
+ console.error(`Feature unit ${featureUnit} is not in build result!`);
117
+ continue;
118
+ }
119
+ addChunk(chunkFileName);
120
+ }
121
+ return result;
122
+ }
123
+ buildEngine.enumerateDependentChunks = enumerateDependentChunks;
124
+ })(buildEngine = exports.buildEngine || (exports.buildEngine = {}));
125
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/build-engine/index.ts"],"names":[],"mappings":"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"}
@@ -1,46 +1,54 @@
1
- import { IFlagConfig, ModeType, PlatformType } from "./stats-query";
2
- export interface IBuildOptions {
3
- root: string;
4
- features?: string[];
5
- platform: PlatformType;
6
- mode: ModeType;
7
- flagConfig: Partial<IFlagConfig>;
8
- outDir?: string;
9
- }
10
- interface IHandleResult {
11
- code: string;
12
- file: string;
13
- originalId: string;
14
- resolvedId: string;
15
- map: any;
16
- }
17
- export interface IBuildResult {
18
- [outputFile: string]: IHandleResult;
19
- }
20
- export declare class EngineBuilder {
21
- private _options;
22
- private _entries;
23
- private _entriesForPass2;
24
- private _virtual2code;
25
- private _feature2NodeModule;
26
- private _nodeModules;
27
- private _virtualOverrides;
28
- private _buildTimeConstants;
29
- private _moduleOverrides;
30
- private _buildResult;
31
- private _resolveExtension;
32
- private _renameMap;
33
- build(options: IBuildOptions): Promise<IBuildResult>;
34
- private _initOptions;
35
- private _handleId;
36
- private _getOverrideId;
37
- private _resolve;
38
- private _resolveRelative;
39
- private _load;
40
- private _transform;
41
- private _lintImport;
42
- private _buildIndex;
43
- private _copyTypes;
44
- private _addNodeModulesDeps;
45
- }
46
- export {};
1
+ import { StatsQuery } from "./stats-query";
2
+ import ConstantManager = StatsQuery.ConstantManager;
3
+ export declare namespace EngineBuilder {
4
+ interface IBuildOptions {
5
+ root: string;
6
+ features?: string[];
7
+ platform: ConstantManager.PlatformType;
8
+ mode: ConstantManager.ModeType;
9
+ flagConfig: Partial<ConstantManager.IFlagConfig>;
10
+ outDir?: string;
11
+ }
12
+ interface IBuildResult {
13
+ [outputFile: string]: IHandleResult;
14
+ }
15
+ interface IHandleResult {
16
+ code: string;
17
+ file: string;
18
+ originalId: string;
19
+ resolvedId: string;
20
+ map: any;
21
+ }
22
+ interface ITransformResult {
23
+ code: string;
24
+ map?: any;
25
+ depIdList: string[];
26
+ }
27
+ }
28
+ export declare class EngineBuilder {
29
+ private _options;
30
+ private _entries;
31
+ private _entriesForPass2;
32
+ private _virtual2code;
33
+ private _feature2NodeModule;
34
+ private _nodeModules;
35
+ private _virtualOverrides;
36
+ private _buildTimeConstants;
37
+ private _moduleOverrides;
38
+ private _buildResult;
39
+ private _resolveExtension;
40
+ private _renameMap;
41
+ build(options: EngineBuilder.IBuildOptions): Promise<EngineBuilder.IBuildResult>;
42
+ private _initOptions;
43
+ private _handleId;
44
+ private _getOverrideId;
45
+ private _resolve;
46
+ private _resolveRelative;
47
+ private _load;
48
+ private _transform;
49
+ private _lintImport;
50
+ private _buildIndex;
51
+ private _copyTypes;
52
+ private _addNodeModulesDeps;
53
+ }
54
+ //# sourceMappingURL=engine-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-builder.d.ts","sourceRoot":"","sources":["../src/engine-builder.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAS3C,OAAO,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC;AAGpD,yBAAiB,aAAa,CAAC;IAE3B,UAAiB,aAAa;QAC1B,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,QAAQ,EAAE,eAAe,CAAC,YAAY,CAAC;QACvC,IAAI,EAAE,eAAe,CAAC,QAAQ,CAAC;QAC/B,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACjD,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB;IACD,UAAiB,YAAY;QACzB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC;KACvC;IACD,UAAiB,aAAa;QAC1B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,GAAG,CAAC;KACZ;IACD,UAAiB,gBAAgB;QAC7B,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,GAAG,CAAC;QACV,SAAS,EAAE,MAAM,EAAE,CAAC;KACvB;CACJ;AAED,qBAAa,aAAa;IACtB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,mBAAmB,CAMzB;IACF,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,iBAAiB,CAA8B;IACvD,OAAO,CAAC,mBAAmB,CAAsC;IACjE,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,iBAAiB,CAAqC;IAG9D,OAAO,CAAC,UAAU,CAIhB;IAEW,KAAK,CAAE,OAAO,EAAE,aAAa,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC;YAyDhF,YAAY;IA6D1B,OAAO,CAAC,SAAS;IAwCjB,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,QAAQ;IAmBhB,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,KAAK;IAYb,OAAO,CAAC,UAAU;YA8KJ,WAAW;IAyBzB,OAAO,CAAC,WAAW;YA+BL,UAAU;IAoBxB,OAAO,CAAC,mBAAmB;CAsB9B"}