xhs-mp-compiler-cli 2.0.0-beta.3 → 2.0.0

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 (94) hide show
  1. package/dist/bin/xhs-mp-cli-build.js +48 -34
  2. package/dist/bin/xhs-mp-cli-dev.js +44 -44
  3. package/dist/bin/xhs-mp-cli.js +22 -12
  4. package/dist/compiler.d.ts +21 -28
  5. package/dist/compiler.js +327 -327
  6. package/dist/compilerImpl.d.ts +19 -0
  7. package/dist/compilerImpl.js +173 -0
  8. package/dist/config/constant.config.d.ts +24 -0
  9. package/dist/config/constant.config.js +82 -30
  10. package/dist/config/dir.config.js +23 -13
  11. package/dist/index.d.ts +9 -9
  12. package/dist/index.js +454 -408
  13. package/dist/packs/index.d.ts +4 -4
  14. package/dist/packs/index.js +38 -30
  15. package/dist/packs/mp-pack/index.js +38 -30
  16. package/dist/packs/webpack/dev-server/index.js +61 -50
  17. package/dist/packs/webpack/dev-server/lib/ensurePort.js +33 -23
  18. package/dist/packs/webpack/dev-server/lib/openBrowser.js +28 -18
  19. package/dist/packs/webpack/index.d.ts +1 -1
  20. package/dist/packs/webpack/index.js +99 -90
  21. package/dist/packs/webpack/webpack.d.ts +2 -1
  22. package/dist/packs/webpack/webpack.js +81 -63
  23. package/dist/presets/babel.d.ts +0 -1
  24. package/dist/presets/babel.js +64 -58
  25. package/dist/presets/common.js +42 -45
  26. package/dist/presets/configs/minigame/assets/assetsEntryPlugin.js +50 -40
  27. package/dist/presets/configs/minigame/assets/index.js +62 -52
  28. package/dist/presets/configs/minigame/service/index.js +49 -30
  29. package/dist/presets/configs/minigame/service/resolveLimitPlugin.js +33 -23
  30. package/dist/presets/configs/minigame/service/serviceChunkPlugin.d.ts +2 -2
  31. package/dist/presets/configs/minigame/service/serviceChunkPlugin.js +69 -60
  32. package/dist/presets/configs/minigame/service/serviceEntryPlugin.d.ts +3 -3
  33. package/dist/presets/configs/minigame/service/serviceEntryPlugin.js +39 -29
  34. package/dist/presets/configs/miniprogram/assets/assetsEntryPlugin.js +120 -113
  35. package/dist/presets/configs/miniprogram/assets/index.js +45 -43
  36. package/dist/presets/configs/miniprogram/render/component.js +51 -41
  37. package/dist/presets/configs/miniprogram/render/index.d.ts +2 -3
  38. package/dist/presets/configs/miniprogram/render/index.js +85 -68
  39. package/dist/presets/configs/miniprogram/render/render.js +53 -43
  40. package/dist/presets/configs/miniprogram/render/renderChunkPlugin.js +84 -49
  41. package/dist/presets/configs/miniprogram/render/sjsEntryPlugin.d.ts +15 -0
  42. package/dist/presets/configs/miniprogram/render/sjsEntryPlugin.js +164 -126
  43. package/dist/presets/configs/miniprogram/service/index.js +82 -65
  44. package/dist/presets/configs/miniprogram/service/resolveLimitPlugin.js +60 -50
  45. package/dist/presets/configs/miniprogram/service/serviceChunkPlugin.js +93 -55
  46. package/dist/presets/index.js +100 -90
  47. package/dist/presets/loaders/mg-entry-loader.js +32 -22
  48. package/dist/presets/loaders/mini-style-loader.js +79 -55
  49. package/dist/presets/loaders/mp-entry-loader.js +149 -140
  50. package/dist/presets/loaders/wxss-loader.js +73 -63
  51. package/dist/presets/plugins/InjectorPlugin.js +23 -13
  52. package/dist/presets/plugins/SourceMapDevToolPlugin.d.ts +1 -0
  53. package/dist/presets/plugins/SourceMapDevToolPlugin.js +23 -0
  54. package/dist/presets/prod.js +88 -78
  55. package/dist/sharedFs.d.ts +2 -0
  56. package/dist/sharedFs.js +24 -0
  57. package/dist/types/index.d.ts +11 -37
  58. package/dist/types/index.js +23 -13
  59. package/dist/utils/{apm/index.d.ts → apm.d.ts} +5 -3
  60. package/dist/utils/apm.js +245 -0
  61. package/dist/utils/cache.d.ts +28 -0
  62. package/dist/utils/cache.js +49 -0
  63. package/dist/utils/common.js +42 -32
  64. package/dist/utils/css.d.ts +1 -1
  65. package/dist/utils/css.js +43 -35
  66. package/dist/utils/depenedHelper.js +95 -85
  67. package/dist/utils/file.js +39 -29
  68. package/dist/utils/loader-utils.js +63 -53
  69. package/dist/utils/postcssRpx2Vw.js +43 -33
  70. package/dist/utils/project.d.ts +3 -2
  71. package/dist/utils/project.js +129 -119
  72. package/dist/utils/projectConfig.js +24 -15
  73. package/dist/utils/utils.js +51 -42
  74. package/dist/utils/workerPool.d.ts +29 -0
  75. package/dist/utils/workerPool.js +125 -0
  76. package/dist/utils/zip.js +239 -229
  77. package/package.json +33 -14
  78. package/dist/compilerCP.d.ts +0 -1
  79. package/dist/compilerCP.js +0 -175
  80. package/dist/presets/loaders/sjs-loader/index.d.ts +0 -12
  81. package/dist/presets/loaders/sjs-loader/index.js +0 -605
  82. package/dist/presets/loaders/sjs-loader/scope.d.ts +0 -36
  83. package/dist/presets/loaders/sjs-loader/scope.js +0 -122
  84. package/dist/presets/loaders/sjs-loader/tranform.d.ts +0 -2
  85. package/dist/presets/loaders/sjs-loader/tranform.js +0 -31
  86. package/dist/utils/apm/index.js +0 -198
  87. package/dist/utils/asyncWebpack.d.ts +0 -3
  88. package/dist/utils/asyncWebpack.js +0 -38
  89. package/dist/utils/const.d.ts +0 -27
  90. package/dist/utils/const.js +0 -47
  91. package/dist/utils/getSuffixName.d.ts +0 -3
  92. package/dist/utils/getSuffixName.js +0 -18
  93. package/dist/utils/tagTransformMap.d.ts +0 -36
  94. package/dist/utils/tagTransformMap.js +0 -39
@@ -1,36 +1,46 @@
1
- "use strict";
2
1
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
2
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
3
  };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DEFAULT_ENTRY = exports.md5 = exports.getShortPath = exports.unixResolve = exports.unixJoin = exports.toUnixPath = exports.isString = exports.getTsConfigPath = void 0;
7
- const fs_extra_1 = __importDefault(require("fs-extra"));
8
- const path_1 = __importDefault(require("path"));
9
- const crypto_1 = __importDefault(require("crypto"));
10
- const getSuffixName_1 = require("./getSuffixName");
11
- const getTsConfigPath = (projectPath) => {
12
- if (fs_extra_1.default.existsSync(`${projectPath}/tsconfig.json`)) {
13
- return `${projectPath}/tsconfig.json`;
4
+ (function (factory) {
5
+ if (typeof module === "object" && typeof module.exports === "object") {
6
+ var v = factory(require, exports);
7
+ if (v !== undefined) module.exports = v;
14
8
  }
15
- return undefined;
16
- };
17
- exports.getTsConfigPath = getTsConfigPath;
18
- const isString = (val) => typeof val === 'string';
19
- exports.isString = isString;
20
- const toUnixPath = (pathStr = '') => pathStr.split(path_1.default.sep).join(path_1.default.posix.sep);
21
- exports.toUnixPath = toUnixPath;
22
- const unixJoin = (...paths) => (0, exports.toUnixPath)(path_1.default.join(...paths));
23
- exports.unixJoin = unixJoin;
24
- const unixResolve = (...paths) => (0, exports.toUnixPath)(path_1.default.resolve(...paths));
25
- exports.unixResolve = unixResolve;
26
- const getShortPath = (miniprogramDir, rootContext) => {
27
- const suffix = (0, getSuffixName_1.getMlSuffixName)();
28
- miniprogramDir = (0, exports.toUnixPath)(miniprogramDir);
29
- miniprogramDir = miniprogramDir.endsWith('/') ? miniprogramDir : `${miniprogramDir}/`;
30
- const reg = new RegExp(`.${suffix}$`, 'g');
31
- return (0, exports.toUnixPath)(rootContext).replace(reg, '').replace(miniprogramDir, '');
32
- };
33
- exports.getShortPath = getShortPath;
34
- const md5 = (str) => crypto_1.default.createHash('md5').update(str).digest('hex');
35
- exports.md5 = md5;
36
- exports.DEFAULT_ENTRY = "game";
9
+ else if (typeof define === "function" && define.amd) {
10
+ define(["require", "exports", "fs-extra", "path", "crypto", "xhs-mp-compiler-utils"], factory);
11
+ }
12
+ })(function (require, exports) {
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DEFAULT_ENTRY = exports.md5 = exports.getShortPath = exports.unixResolve = exports.unixJoin = exports.toUnixPath = exports.isString = exports.getTsConfigPath = void 0;
16
+ const fs_extra_1 = __importDefault(require("fs-extra"));
17
+ const path_1 = __importDefault(require("path"));
18
+ const crypto_1 = __importDefault(require("crypto"));
19
+ const xhs_mp_compiler_utils_1 = require("xhs-mp-compiler-utils");
20
+ const getTsConfigPath = (projectPath) => {
21
+ if (fs_extra_1.default.existsSync(`${projectPath}/tsconfig.json`)) {
22
+ return `${projectPath}/tsconfig.json`;
23
+ }
24
+ return undefined;
25
+ };
26
+ exports.getTsConfigPath = getTsConfigPath;
27
+ const isString = (val) => typeof val === 'string';
28
+ exports.isString = isString;
29
+ const toUnixPath = (pathStr = '') => pathStr.split(path_1.default.sep).join(path_1.default.posix.sep);
30
+ exports.toUnixPath = toUnixPath;
31
+ const unixJoin = (...paths) => (0, exports.toUnixPath)(path_1.default.join(...paths));
32
+ exports.unixJoin = unixJoin;
33
+ const unixResolve = (...paths) => (0, exports.toUnixPath)(path_1.default.resolve(...paths));
34
+ exports.unixResolve = unixResolve;
35
+ const getShortPath = (miniprogramDir, rootContext) => {
36
+ const suffix = (0, xhs_mp_compiler_utils_1.getMlSuffixName)();
37
+ miniprogramDir = (0, exports.toUnixPath)(miniprogramDir);
38
+ miniprogramDir = miniprogramDir.endsWith('/') ? miniprogramDir : `${miniprogramDir}/`;
39
+ const reg = new RegExp(`.${suffix}$`, 'g');
40
+ return (0, exports.toUnixPath)(rootContext).replace(reg, '').replace(miniprogramDir, '');
41
+ };
42
+ exports.getShortPath = getShortPath;
43
+ const md5 = (str) => crypto_1.default.createHash('md5').update(str).digest('hex');
44
+ exports.md5 = md5;
45
+ exports.DEFAULT_ENTRY = "game";
46
+ });
@@ -1,2 +1,2 @@
1
- declare const getCssConfig: (options: any, presets: any) => any;
1
+ declare const getCssConfig: (packSetting: any, options: any, presets: any, independentFile?: boolean) => any;
2
2
  export default getCssConfig;
package/dist/utils/css.js CHANGED
@@ -1,41 +1,49 @@
1
- "use strict";
2
1
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
2
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
3
  };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- // @ts-nocheck
7
- const postcss_preset_env_1 = __importDefault(require("postcss-preset-env"));
8
- const postcssRpx2Vw_1 = __importDefault(require("./postcssRpx2Vw"));
9
- const const_1 = __importDefault(require("./const"));
10
- const types_1 = require("../types");
11
- const { DEV_BROWSERSLIST, PROD_BROWSERSLIST } = const_1.default;
12
- const getCssConfig = (options, presets) => {
13
- const isDev = options.env === types_1.ENV.development;
14
- const browsers = isDev ? DEV_BROWSERSLIST : PROD_BROWSERSLIST;
15
- const loaders = {
16
- 'mini-style-loader': {
17
- loader: require.resolve('../presets/loaders/mini-style-loader'),
18
- options: Object.assign(Object.assign({}, options), { independent: true })
19
- },
20
- 'postcss-loader': {
21
- loader: require.resolve('postcss-loader'),
22
- options: {
23
- sourceMap: options.env !== types_1.ENV.production,
24
- postcssOptions: {
25
- config: false,
26
- plugins: [(0, postcssRpx2Vw_1.default)({ baseWidth: 750 }), (0, postcss_preset_env_1.default)({ browsers })],
4
+ (function (factory) {
5
+ if (typeof module === "object" && typeof module.exports === "object") {
6
+ var v = factory(require, exports);
7
+ if (v !== undefined) module.exports = v;
8
+ }
9
+ else if (typeof define === "function" && define.amd) {
10
+ define(["require", "exports", "postcss-preset-env", "./postcssRpx2Vw", "../types", "../config/constant.config"], factory);
11
+ }
12
+ })(function (require, exports) {
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const postcss_preset_env_1 = __importDefault(require("postcss-preset-env"));
16
+ const postcssRpx2Vw_1 = __importDefault(require("./postcssRpx2Vw"));
17
+ const types_1 = require("../types");
18
+ const constant_config_1 = require("../config/constant.config");
19
+ const getCssConfig = (packSetting, options, presets, independentFile = false) => {
20
+ const isDev = packSetting.env === types_1.ENV.development;
21
+ const browsers = isDev ? constant_config_1.DEV_BROWSERSLIST : constant_config_1.PROD_BROWSERSLIST;
22
+ const loaders = {
23
+ 'mini-style-loader': {
24
+ loader: require.resolve('../presets/loaders/mini-style-loader'),
25
+ options: Object.assign(Object.assign({}, options), { independentFile }),
26
+ },
27
+ 'postcss-loader': {
28
+ loader: require.resolve('postcss-loader'),
29
+ options: {
30
+ sourceMap: packSetting.env !== types_1.ENV.production,
31
+ postcssOptions: {
32
+ config: false,
33
+ plugins: [(0, postcssRpx2Vw_1.default)({ baseWidth: 750 }), (0, postcss_preset_env_1.default)({ browsers })],
34
+ },
27
35
  },
28
36
  },
29
- },
30
- 'wxss-loader': {
31
- loader: require.resolve('../presets/loaders/wxss-loader'),
32
- },
37
+ 'wxss-loader': {
38
+ loader: require.resolve('../presets/loaders/wxss-loader'),
39
+ },
40
+ };
41
+ return presets.flat().reduce((acc, cur) => {
42
+ if (typeof cur === "string" && loaders[cur]) {
43
+ Reflect.set(acc, cur, loaders[cur]);
44
+ }
45
+ return acc;
46
+ }, {});
33
47
  };
34
- return presets.flat().reduce((acc, cur) => {
35
- if (typeof cur === "string" && loaders[cur]) {
36
- Reflect.set(acc, cur, loaders[cur]);
37
- }
38
- return acc;
39
- }, {});
40
- };
41
- exports.default = getCssConfig;
48
+ exports.default = getCssConfig;
49
+ });
@@ -1,89 +1,99 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPageDependComponentPaths = exports.getIndependComponents = exports.shouldEnableSubPackage = exports.getGlobalComponents = exports.getSubPageComponents = exports.getPageDependComponents = void 0;
4
- const common_1 = require("./common");
5
- /**
6
- * get _mp_app_json page depend components map
7
- * @param pageUri
8
- * @returns {usingComponents} object
9
- */
10
- const getPageDependComponents = (appJson, pageUri) => {
11
- const matchPage = appJson.pages.find(page => page.path === pageUri) || {};
12
- return (matchPage === null || matchPage === void 0 ? void 0 : matchPage.usingComponents) ? matchPage.usingComponents : {};
13
- };
14
- exports.getPageDependComponents = getPageDependComponents;
15
- /**
16
- * get _mp_app_json subPackage page components map
17
- * @param pageUri
18
- * @returns {usingComponents} object
19
- */
20
- const getSubPageComponents = (appJson, pageUri) => {
21
- let subPackagesPages = [];
22
- ((appJson === null || appJson === void 0 ? void 0 : appJson.subPackages) || []).forEach(subPackage => {
23
- subPackagesPages = subPackagesPages.concat(subPackage.pages);
24
- });
25
- const matchPage = subPackagesPages.find(page => page.path === pageUri) || {};
26
- return (matchPage === null || matchPage === void 0 ? void 0 : matchPage.usingComponents) || {};
27
- };
28
- exports.getSubPageComponents = getSubPageComponents;
29
- const getGlobalComponents = (appJson) => (appJson === null || appJson === void 0 ? void 0 : appJson.usingComponents) || {};
30
- exports.getGlobalComponents = getGlobalComponents;
31
- /**
32
- * 老版本基础库上传的包可能包含 subPackages 字段,但下载的构建产物确是按照整包处理
33
- * 通过下面的逻辑来决定是否走分包的逻辑(与 native 侧一致)
34
- *
35
- * @returns { boolean } 是否走分包
36
- */
37
- function shouldEnableSubPackage(appJson) {
38
- var _a, _b;
39
- if (!(appJson === null || appJson === void 0 ? void 0 : appJson.subPackages) || !(appJson === null || appJson === void 0 ? void 0 : appJson.subPackages.length))
40
- return false;
41
- let enableFlag = false;
42
- try {
43
- enableFlag = !(0, common_1.isString)((_b = (_a = appJson === null || appJson === void 0 ? void 0 : appJson.subPackages) === null || _a === void 0 ? void 0 : _a[0].pages) === null || _b === void 0 ? void 0 : _b[0]);
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
44
5
  }
45
- catch (_) { /** eslint-disabled */ }
46
- return enableFlag;
47
- }
48
- exports.shouldEnableSubPackage = shouldEnableSubPackage;
49
- const getIndependComponents = (appJson, componentPath) => {
50
- var _a;
51
- const componentsMap = appJson.componentsMap || {};
52
- return ((_a = componentsMap === null || componentsMap === void 0 ? void 0 : componentsMap[componentPath]) === null || _a === void 0 ? void 0 : _a.usingComponents) || {};
53
- };
54
- exports.getIndependComponents = getIndependComponents;
55
- const getPageDependComponentPaths = (pageUri, appJson, isIndependent = false, enableSubPackage = true) => {
56
- try {
57
- const loadPathList = new Set();
58
- let pageUsingComponents = {};
59
- if (enableSubPackage) {
60
- pageUsingComponents = Object.assign(Object.assign(Object.assign({}, (isIndependent ? {} : (0, exports.getGlobalComponents)(appJson))), (0, exports.getPageDependComponents)(appJson, pageUri)), (0, exports.getSubPageComponents)(appJson, pageUri));
61
- }
62
- else {
63
- pageUsingComponents = Object.assign(Object.assign({}, (0, exports.getGlobalComponents)(appJson)), (0, exports.getPageDependComponents)(appJson, pageUri));
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./common"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.getPageDependComponentPaths = exports.getIndependComponents = exports.getGlobalComponents = exports.getSubPageComponents = exports.getPageDependComponents = void 0;
13
+ exports.shouldEnableSubPackage = shouldEnableSubPackage;
14
+ const common_1 = require("./common");
15
+ /**
16
+ * get _mp_app_json page depend components map
17
+ * @param pageUri
18
+ * @returns {usingComponents} object
19
+ */
20
+ const getPageDependComponents = (appJson, pageUri) => {
21
+ const matchPage = appJson.pages.find(page => page.path === pageUri) || {};
22
+ return (matchPage === null || matchPage === void 0 ? void 0 : matchPage.usingComponents) ? matchPage.usingComponents : {};
23
+ };
24
+ exports.getPageDependComponents = getPageDependComponents;
25
+ /**
26
+ * get _mp_app_json subPackage page components map
27
+ * @param pageUri
28
+ * @returns {usingComponents} object
29
+ */
30
+ const getSubPageComponents = (appJson, pageUri) => {
31
+ let subPackagesPages = [];
32
+ ((appJson === null || appJson === void 0 ? void 0 : appJson.subPackages) || []).forEach(subPackage => {
33
+ subPackagesPages = subPackagesPages.concat(subPackage.pages);
34
+ });
35
+ const matchPage = subPackagesPages.find(page => page.path === pageUri) || {};
36
+ return (matchPage === null || matchPage === void 0 ? void 0 : matchPage.usingComponents) || {};
37
+ };
38
+ exports.getSubPageComponents = getSubPageComponents;
39
+ const getGlobalComponents = (appJson) => (appJson === null || appJson === void 0 ? void 0 : appJson.usingComponents) || {};
40
+ exports.getGlobalComponents = getGlobalComponents;
41
+ /**
42
+ * 老版本基础库上传的包可能包含 subPackages 字段,但下载的构建产物确是按照整包处理
43
+ * 通过下面的逻辑来决定是否走分包的逻辑(与 native 侧一致)
44
+ *
45
+ * @returns { boolean } 是否走分包
46
+ */
47
+ function shouldEnableSubPackage(appJson) {
48
+ var _a, _b;
49
+ if (!(appJson === null || appJson === void 0 ? void 0 : appJson.subPackages) || !(appJson === null || appJson === void 0 ? void 0 : appJson.subPackages.length))
50
+ return false;
51
+ let enableFlag = false;
52
+ try {
53
+ enableFlag = !(0, common_1.isString)((_b = (_a = appJson === null || appJson === void 0 ? void 0 : appJson.subPackages) === null || _a === void 0 ? void 0 : _a[0].pages) === null || _b === void 0 ? void 0 : _b[0]);
64
54
  }
65
- const loadComponent = (components) => {
66
- for (const componentName in components) {
67
- if (components[componentName]) {
68
- const componentPath = components[componentName];
69
- if (loadPathList.has(componentPath)) {
70
- // eslint-disable-next-line no-continue
71
- continue;
72
- }
73
- loadPathList.add(componentPath);
74
- const inDependComponents = (0, exports.getIndependComponents)(appJson, componentPath);
75
- if (inDependComponents && Object.keys(inDependComponents).length) {
76
- loadComponent(inDependComponents);
55
+ catch (_) { /** eslint-disabled */ }
56
+ return enableFlag;
57
+ }
58
+ const getIndependComponents = (appJson, componentPath) => {
59
+ var _a;
60
+ const componentsMap = appJson.componentsMap || {};
61
+ return ((_a = componentsMap === null || componentsMap === void 0 ? void 0 : componentsMap[componentPath]) === null || _a === void 0 ? void 0 : _a.usingComponents) || {};
62
+ };
63
+ exports.getIndependComponents = getIndependComponents;
64
+ const getPageDependComponentPaths = (pageUri, appJson, isIndependent = false, enableSubPackage = true) => {
65
+ try {
66
+ const loadPathList = new Set();
67
+ let pageUsingComponents = {};
68
+ if (enableSubPackage) {
69
+ pageUsingComponents = Object.assign(Object.assign(Object.assign({}, (isIndependent ? {} : (0, exports.getGlobalComponents)(appJson))), (0, exports.getPageDependComponents)(appJson, pageUri)), (0, exports.getSubPageComponents)(appJson, pageUri));
70
+ }
71
+ else {
72
+ pageUsingComponents = Object.assign(Object.assign({}, (0, exports.getGlobalComponents)(appJson)), (0, exports.getPageDependComponents)(appJson, pageUri));
73
+ }
74
+ const loadComponent = (components) => {
75
+ for (const componentName in components) {
76
+ if (components[componentName]) {
77
+ const componentPath = components[componentName];
78
+ if (loadPathList.has(componentPath)) {
79
+ // eslint-disable-next-line no-continue
80
+ continue;
81
+ }
82
+ loadPathList.add(componentPath);
83
+ const inDependComponents = (0, exports.getIndependComponents)(appJson, componentPath);
84
+ if (inDependComponents && Object.keys(inDependComponents).length) {
85
+ loadComponent(inDependComponents);
86
+ }
77
87
  }
78
88
  }
79
- }
80
- };
81
- loadComponent(pageUsingComponents);
82
- return Array.from(loadPathList);
83
- }
84
- catch (e) {
85
- console.error(`parse page depend components has error happen`);
86
- return [];
87
- }
88
- };
89
- exports.getPageDependComponentPaths = getPageDependComponentPaths;
89
+ };
90
+ loadComponent(pageUsingComponents);
91
+ return Array.from(loadPathList);
92
+ }
93
+ catch (e) {
94
+ console.error(`parse page depend components has error happen`);
95
+ return [];
96
+ }
97
+ };
98
+ exports.getPageDependComponentPaths = getPageDependComponentPaths;
99
+ });
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
2
  if (k2 === undefined) k2 = k;
4
3
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -34,34 +33,45 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
34
33
  var __importDefault = (this && this.__importDefault) || function (mod) {
35
34
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
35
  };
37
- Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.getFolderSize = exports.fileSize = void 0;
39
- const fs = __importStar(require("fs"));
40
- const globby_1 = __importDefault(require("globby"));
41
- const fileSize = (size) => {
42
- if (!size)
43
- return '';
44
- const base = 1024;
45
- if (size < base) {
46
- return `${size}B`;
36
+ (function (factory) {
37
+ if (typeof module === "object" && typeof module.exports === "object") {
38
+ var v = factory(require, exports);
39
+ if (v !== undefined) module.exports = v;
47
40
  }
48
- if (size < Math.pow(base, 2)) {
49
- return `${(size / base).toFixed(2)}KB`;
41
+ else if (typeof define === "function" && define.amd) {
42
+ define(["require", "exports", "fs", "globby"], factory);
50
43
  }
51
- if (size < Math.pow(base, 3)) {
52
- return `${(size / Math.pow(base, 2)).toFixed(2)}MB`;
53
- }
54
- if (size < Math.pow(base, 4)) {
55
- return `${(size / Math.pow(base, 3)).toFixed(2)}GB`;
56
- }
57
- return `${(size / Math.pow(base, 4)).toFixed(2)}T`;
58
- };
59
- exports.fileSize = fileSize;
60
- const getFolderSize = (folder) => __awaiter(void 0, void 0, void 0, function* () {
61
- const _folder = folder.map(f => f.replace(/\\/g, '/')); // 修复windows的路径
62
- const folders = yield (0, globby_1.default)(_folder);
63
- // eslint-disable-next-line no-return-assign
64
- const totalSize = folders.reduce((pre, cur) => (pre += fs.statSync(cur).size), 0);
65
- return totalSize;
44
+ })(function (require, exports) {
45
+ "use strict";
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ exports.getFolderSize = exports.fileSize = void 0;
48
+ const fs = __importStar(require("fs"));
49
+ const globby_1 = __importDefault(require("globby"));
50
+ const fileSize = (size) => {
51
+ if (!size)
52
+ return '';
53
+ const base = 1024;
54
+ if (size < base) {
55
+ return `${size}B`;
56
+ }
57
+ if (size < Math.pow(base, 2)) {
58
+ return `${(size / base).toFixed(2)}KB`;
59
+ }
60
+ if (size < Math.pow(base, 3)) {
61
+ return `${(size / Math.pow(base, 2)).toFixed(2)}MB`;
62
+ }
63
+ if (size < Math.pow(base, 4)) {
64
+ return `${(size / Math.pow(base, 3)).toFixed(2)}GB`;
65
+ }
66
+ return `${(size / Math.pow(base, 4)).toFixed(2)}T`;
67
+ };
68
+ exports.fileSize = fileSize;
69
+ const getFolderSize = (folder) => __awaiter(void 0, void 0, void 0, function* () {
70
+ const _folder = folder.map(f => f.replace(/\\/g, '/')); // 修复windows的路径
71
+ const folders = yield (0, globby_1.default)(_folder);
72
+ // eslint-disable-next-line no-return-assign
73
+ const totalSize = folders.reduce((pre, cur) => (pre += fs.statSync(cur).size), 0);
74
+ return totalSize;
75
+ });
76
+ exports.getFolderSize = getFolderSize;
66
77
  });
67
- exports.getFolderSize = getFolderSize;
@@ -1,59 +1,69 @@
1
- "use strict";
2
1
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
2
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
3
  };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createRequire = exports.getResourceUris = exports.getShortPath = exports.formatPath = void 0;
7
- const path_1 = __importDefault(require("path"));
8
- const common_1 = require("./common");
9
- const getSuffixName_1 = require("./getSuffixName");
10
- const formatPath = (pathStr = '') => pathStr.split(path_1.default.sep).join(path_1.default.posix.sep);
11
- exports.formatPath = formatPath;
12
- const getShortPath = (projectMiniprogramPath, rootContext) => {
13
- const suffix = (0, getSuffixName_1.getMlSuffixName)();
14
- const reg = new RegExp(`.${suffix}$`, 'g');
15
- projectMiniprogramPath = (0, common_1.toUnixPath)(projectMiniprogramPath);
16
- projectMiniprogramPath = projectMiniprogramPath.endsWith('/')
17
- ? projectMiniprogramPath
18
- : `${projectMiniprogramPath}/`;
19
- return (0, common_1.toUnixPath)(rootContext).replace(reg, '').replace(projectMiniprogramPath, '');
20
- };
21
- exports.getShortPath = getShortPath;
22
- /**
23
- * 根据是否分包获取资源路径
24
- */
25
- const getResourceUris = (options) => {
26
- const resourceList = [];
27
- const { appCssExist, enableLazyCodeLoading, subPackage } = options;
28
- // sjs 无法识别是否引用 所以一律push
29
- // 加载顺序 app.css 主包sjs 分包sjs 主包components.js 分包components.js
30
- if (!subPackage) {
31
- // 主包
32
- appCssExist && resourceList.push(`app.css`);
33
- resourceList.push('sjs.js');
34
- !enableLazyCodeLoading && resourceList.push(`components.js`);
4
+ (function (factory) {
5
+ if (typeof module === "object" && typeof module.exports === "object") {
6
+ var v = factory(require, exports);
7
+ if (v !== undefined) module.exports = v;
35
8
  }
36
- else if (subPackage === null || subPackage === void 0 ? void 0 : subPackage.independent) {
37
- // 独立分包, 自己的components.js
38
- resourceList.push(`${subPackage === null || subPackage === void 0 ? void 0 : subPackage.root}/sjs.js`);
39
- !enableLazyCodeLoading && resourceList.push(`${subPackage === null || subPackage === void 0 ? void 0 : subPackage.root}/components.js`);
9
+ else if (typeof define === "function" && define.amd) {
10
+ define(["require", "exports", "path", "./common", "xhs-mp-compiler-utils"], factory);
40
11
  }
41
- else if (subPackage) {
42
- // 普通分包, 自己的components.js,主包components.js app.css
43
- appCssExist && resourceList.push(`app.css`);
44
- resourceList.push('sjs.js');
45
- resourceList.push(`${subPackage === null || subPackage === void 0 ? void 0 : subPackage.root}/sjs.js`);
46
- !enableLazyCodeLoading && resourceList.push(`components.js`);
47
- !enableLazyCodeLoading && resourceList.push(`${subPackage === null || subPackage === void 0 ? void 0 : subPackage.root}/components.js`);
12
+ })(function (require, exports) {
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.getResourceUris = exports.getShortPath = exports.formatPath = void 0;
16
+ exports.createRequire = createRequire;
17
+ const path_1 = __importDefault(require("path"));
18
+ const common_1 = require("./common");
19
+ const xhs_mp_compiler_utils_1 = require("xhs-mp-compiler-utils");
20
+ const formatPath = (pathStr = '') => pathStr.split(path_1.default.sep).join(path_1.default.posix.sep);
21
+ exports.formatPath = formatPath;
22
+ const getShortPath = (projectMiniprogramPath, rootContext) => {
23
+ const suffix = (0, xhs_mp_compiler_utils_1.getMlSuffixName)();
24
+ const reg = new RegExp(`.${suffix}$`, 'g');
25
+ projectMiniprogramPath = (0, common_1.toUnixPath)(projectMiniprogramPath);
26
+ projectMiniprogramPath = projectMiniprogramPath.endsWith('/')
27
+ ? projectMiniprogramPath
28
+ : `${projectMiniprogramPath}/`;
29
+ return (0, common_1.toUnixPath)(rootContext).replace(reg, '').replace(projectMiniprogramPath, '');
30
+ };
31
+ exports.getShortPath = getShortPath;
32
+ /**
33
+ * 根据是否分包获取资源路径
34
+ */
35
+ const getResourceUris = (options) => {
36
+ const resourceList = [];
37
+ const { appCssExist, enableLazyCodeLoading, subPackage } = options;
38
+ // sjs 无法识别是否引用 所以一律push
39
+ // 加载顺序 app.css 主包sjs 分包sjs 主包components.js 分包components.js
40
+ if (!subPackage) {
41
+ // 主包
42
+ appCssExist && resourceList.push(`app.css`);
43
+ resourceList.push('sjs.js');
44
+ !enableLazyCodeLoading && resourceList.push(`components.js`);
45
+ }
46
+ else if (subPackage === null || subPackage === void 0 ? void 0 : subPackage.independent) {
47
+ // 独立分包, 自己的components.js
48
+ resourceList.push(`${subPackage === null || subPackage === void 0 ? void 0 : subPackage.root}/sjs.js`);
49
+ !enableLazyCodeLoading && resourceList.push(`${subPackage === null || subPackage === void 0 ? void 0 : subPackage.root}/components.js`);
50
+ }
51
+ else if (subPackage) {
52
+ // 普通分包, 自己的components.js,主包components.js app.css
53
+ appCssExist && resourceList.push(`app.css`);
54
+ resourceList.push('sjs.js');
55
+ resourceList.push(`${subPackage === null || subPackage === void 0 ? void 0 : subPackage.root}/sjs.js`);
56
+ !enableLazyCodeLoading && resourceList.push(`components.js`);
57
+ !enableLazyCodeLoading && resourceList.push(`${subPackage === null || subPackage === void 0 ? void 0 : subPackage.root}/components.js`);
58
+ }
59
+ return resourceList;
60
+ };
61
+ exports.getResourceUris = getResourceUris;
62
+ /**
63
+ * @NOTE
64
+ * Create a request and handle the conversion of esModule modules
65
+ * */
66
+ function createRequire(modulePath) {
67
+ return `function() { var obj = require('${modulePath}'); return obj && obj.__esModule ? obj.default : obj; }`;
48
68
  }
49
- return resourceList;
50
- };
51
- exports.getResourceUris = getResourceUris;
52
- /**
53
- * @NOTE
54
- * Create a request and handle the conversion of esModule modules
55
- * */
56
- function createRequire(modulePath) {
57
- return `function() { var obj = require('${modulePath}'); return obj && obj.__esModule ? obj.default : obj; }`;
58
- }
59
- exports.createRequire = createRequire;
69
+ });