@tarojs/webpack5-runner 4.2.1-beta.2 → 4.2.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 (32) hide show
  1. package/dist/plugins/BuildNativePlugin.js +11 -15
  2. package/dist/plugins/BuildNativePlugin.js.map +1 -1
  3. package/dist/plugins/HarmonyPlugin.js +1 -1
  4. package/dist/plugins/HarmonyPlugin.js.map +1 -1
  5. package/dist/plugins/MiniCompileModePlugin.js +4 -49
  6. package/dist/plugins/MiniCompileModePlugin.js.map +1 -1
  7. package/dist/plugins/MiniPlugin.js +56 -261
  8. package/dist/plugins/MiniPlugin.js.map +1 -1
  9. package/dist/plugins/TaroNormalModule.js +0 -16
  10. package/dist/plugins/TaroNormalModule.js.map +1 -1
  11. package/dist/plugins/TaroNormalModulesPlugin.js +6 -127
  12. package/dist/plugins/TaroNormalModulesPlugin.js.map +1 -1
  13. package/dist/plugins/TaroSingleEntryPlugin.js +1 -1
  14. package/dist/plugins/TaroSingleEntryPlugin.js.map +1 -1
  15. package/dist/template/comp.js +1 -2
  16. package/dist/utils/component.js +1 -2
  17. package/dist/utils/component.js.map +1 -1
  18. package/dist/webpack/H5WebpackPlugin.js +1 -1
  19. package/dist/webpack/H5WebpackPlugin.js.map +1 -1
  20. package/dist/webpack/HarmonyWebpackPlugin.js +1 -3
  21. package/dist/webpack/HarmonyWebpackPlugin.js.map +1 -1
  22. package/dist/webpack/MiniBaseConfig.js +0 -2
  23. package/dist/webpack/MiniBaseConfig.js.map +1 -1
  24. package/package.json +12 -12
  25. package/dist/plugins/AsyncSubPackagePlugin.js +0 -489
  26. package/dist/plugins/AsyncSubPackagePlugin.js.map +0 -1
  27. package/dist/plugins/SubPackageIndiePlugin.js +0 -1022
  28. package/dist/plugins/SubPackageIndiePlugin.js.map +0 -1
  29. package/dist/utils/asyncSubPackage.js +0 -106
  30. package/dist/utils/asyncSubPackage.js.map +0 -1
  31. package/dist/utils/forceCustomWrapper.js +0 -17
  32. package/dist/utils/forceCustomWrapper.js.map +0 -1
@@ -49,9 +49,7 @@ class HarmonyWebpackPlugin {
49
49
  target[`process.env.${key}`] = env[key];
50
50
  return target;
51
51
  }, {});
52
- return WebpackPlugin_1.default.getDefinePlugin([envConstants, defineConstants, {
53
- TARO_FORCE_CUSTOM_WRAPPER: JSON.stringify(false)
54
- }]);
52
+ return WebpackPlugin_1.default.getDefinePlugin([envConstants, defineConstants]);
55
53
  }
56
54
  getCopyWebpackPlugin() {
57
55
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"HarmonyWebpackPlugin.js","sourceRoot":"","sources":["../../src/webpack/HarmonyWebpackPlugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HarmonyWebpackPlugin.js","sourceRoot":"","sources":["../../src/webpack/HarmonyWebpackPlugin.ts"],"names":[],"mappings":"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"}
@@ -45,8 +45,6 @@ class MiniBaseConfig extends BaseConfig_1.BaseConfig {
45
45
  },
46
46
  };
47
47
  const mainFields = [...helper_1.defaultMainFields];
48
- // Note: mini 端统一优先读取 main:mini 入口
49
- mainFields.unshift('main:mini');
50
48
  const resolveOptions = {
51
49
  basedir: appPath,
52
50
  mainFields,
@@ -1 +1 @@
1
- {"version":3,"file":"MiniBaseConfig.js","sourceRoot":"","sources":["../../src/webpack/MiniBaseConfig.ts"],"names":[],"mappings":";;;AAAA,2CAA+D;AAE/D,6CAAyC;AAIzC,MAAa,cAAe,SAAQ,uBAAU;IAwC5C,YAAY,OAAe,EAAE,MAAiC;QAC5D,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAxCxB,yBAAoB,GAAG;YACrB,KAAK,EAAE;gBACL,IAAI,EAAE,CAAC;aACR;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,CAAC;gBACP,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,KAAK;gBACb,aAAa,EAAE,KAAK;gBACpB,WAAW,EAAE,KAAK;gBAClB,cAAc,EAAE,KAAK;gBACrB,UAAU,EAAE,KAAK;gBACjB,WAAW,EAAE,KAAK;gBAClB,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,KAAK;gBAClB,UAAU,EAAE,KAAK;gBACjB,YAAY,EAAE,KAAK;gBACnB,WAAW,EAAE,KAAK;gBAClB,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,IAAI;gBAClB,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,IAAI;aACf;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC;gBACP,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,IAAI;aACjB;SACF,CAAA;QAIC,MAAM,UAAU,GAAG,CAAC,GAAG,0BAAiB,CAAC,CAAA;QACzC,kCAAkC;QAClC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAC/B,MAAM,cAAc,GAAG;YACrB,OAAO,EAAE,OAAO;YAChB,UAAU;SACX,CAAA;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACf,OAAO,EAAE;gBACP,UAAU;gBACV,KAAK,EAAE;oBACL,iCAAiC;oBACjC,qBAAqB,EAAE,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC;oBAC7D,yFAAyF;oBACzF,iBAAiB,EAAE,IAAA,oBAAW,EAAC,iBAAiB,EAAE,cAAc,CAAC;oBACjE,gBAAgB,EAAE,IAAA,oBAAW,EAAC,gBAAgB,EAAE,cAAc,CAAC;iBAChE;gBACD,sDAAsD;gBACtD,sCAAsC;gBACtC,QAAQ,EAAE;oBACR,EAAE,EAAE,KAAK;oBACT,IAAI,EAAE,KAAK;iBACZ;aACF;YACD,YAAY,EAAE;gBACZ,WAAW,EAAE,IAAI;aAClB;YACD,WAAW,EAAE;gBACX,iBAAiB,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;aACnC;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAA;IACtD,CAAC;CACF;AA5ED,wCA4EC"}
1
+ {"version":3,"file":"MiniBaseConfig.js","sourceRoot":"","sources":["../../src/webpack/MiniBaseConfig.ts"],"names":[],"mappings":";;;AAAA,2CAA+D;AAE/D,6CAAyC;AAIzC,MAAa,cAAe,SAAQ,uBAAU;IAwC5C,YAAY,OAAe,EAAE,MAAiC;QAC5D,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAxCxB,yBAAoB,GAAG;YACrB,KAAK,EAAE;gBACL,IAAI,EAAE,CAAC;aACR;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,CAAC;gBACP,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,KAAK;gBACb,aAAa,EAAE,KAAK;gBACpB,WAAW,EAAE,KAAK;gBAClB,cAAc,EAAE,KAAK;gBACrB,UAAU,EAAE,KAAK;gBACjB,WAAW,EAAE,KAAK;gBAClB,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,KAAK;gBAClB,UAAU,EAAE,KAAK;gBACjB,YAAY,EAAE,KAAK;gBACnB,WAAW,EAAE,KAAK;gBAClB,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,IAAI;gBAClB,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,IAAI;aACf;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC;gBACP,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,IAAI;aACjB;SACF,CAAA;QAIC,MAAM,UAAU,GAAG,CAAC,GAAG,0BAAiB,CAAC,CAAA;QACzC,MAAM,cAAc,GAAG;YACrB,OAAO,EAAE,OAAO;YAChB,UAAU;SACX,CAAA;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACf,OAAO,EAAE;gBACP,UAAU;gBACV,KAAK,EAAE;oBACL,iCAAiC;oBACjC,qBAAqB,EAAE,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC;oBAC7D,yFAAyF;oBACzF,iBAAiB,EAAE,IAAA,oBAAW,EAAC,iBAAiB,EAAE,cAAc,CAAC;oBACjE,gBAAgB,EAAE,IAAA,oBAAW,EAAC,gBAAgB,EAAE,cAAc,CAAC;iBAChE;gBACD,sDAAsD;gBACtD,sCAAsC;gBACtC,QAAQ,EAAE;oBACR,EAAE,EAAE,KAAK;oBACT,IAAI,EAAE,KAAK;iBACZ;aACF;YACD,YAAY,EAAE;gBACZ,WAAW,EAAE,IAAI;aAClB;YACD,WAAW,EAAE;gBACX,iBAAiB,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;aACnC;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAA;IACtD,CAAC;CACF;AA1ED,wCA0EC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tarojs/webpack5-runner",
3
- "version": "4.2.1-beta.2",
3
+ "version": "4.2.1",
4
4
  "description": "Taro app runner",
5
5
  "author": "O2Team",
6
6
  "license": "MIT",
@@ -62,14 +62,14 @@
62
62
  "webpack-format-messages": "^3.0.1",
63
63
  "webpackbar": "^5.0.2",
64
64
  "webpack-virtual-modules": "^0.6.1",
65
- "@tarojs/helper": "4.2.1-beta.2",
66
- "@tarojs/runner-utils": "4.2.1-beta.2",
67
- "@tarojs/shared": "4.2.1-beta.2",
68
- "@tarojs/webpack5-prebundle": "4.2.1-beta.2",
69
- "postcss-html-transform": "4.2.1-beta.2",
70
- "postcss-plugin-constparse": "4.2.1-beta.2",
71
- "postcss-pxtransform": "4.2.1-beta.2",
72
- "@tarojs/taro-loader": "4.2.1-beta.2"
65
+ "@tarojs/helper": "4.2.1",
66
+ "@tarojs/shared": "4.2.1",
67
+ "@tarojs/taro-loader": "4.2.1",
68
+ "@tarojs/runner-utils": "4.2.1",
69
+ "@tarojs/webpack5-prebundle": "4.2.1",
70
+ "postcss-plugin-constparse": "4.2.1",
71
+ "postcss-pxtransform": "4.2.1",
72
+ "postcss-html-transform": "4.2.1"
73
73
  },
74
74
  "devDependencies": {
75
75
  "@babel/core": "^7.24.4",
@@ -80,8 +80,8 @@
80
80
  "stylus": "^0.63.0",
81
81
  "jest-transform-css": "^6.0.1",
82
82
  "webpack": "5.91.0",
83
- "@tarojs/taro": "4.2.1-beta.2",
84
- "@tarojs/runtime": "4.2.1-beta.2"
83
+ "@tarojs/taro": "4.2.1",
84
+ "@tarojs/runtime": "4.2.1"
85
85
  },
86
86
  "peerDependencies": {
87
87
  "@babel/core": "^7.12.0",
@@ -90,7 +90,7 @@
90
90
  "sass": "^1.3.0",
91
91
  "stylus": ">=0.52.4",
92
92
  "webpack": "5.91.0",
93
- "@tarojs/runtime": "4.2.1-beta.2"
93
+ "@tarojs/runtime": "4.2.1"
94
94
  },
95
95
  "peerDependenciesMeta": {
96
96
  "less": {
@@ -1,489 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const node_path_1 = __importDefault(require("node:path"));
7
- const helper_1 = require("@tarojs/helper");
8
- const asyncSubPackage_1 = require("../utils/asyncSubPackage");
9
- const PLUGIN_NAME = 'TaroAsyncSubPackagePlugin';
10
- const ASYNC_SUBPACKAGE_ENTRY = 'index';
11
- const COMMON_CACHE_GROUP_PATCHED = Symbol.for('taroAsyncSubPackageCommonCacheGroupPatched');
12
- function getModuleResource(module) {
13
- var _a;
14
- return ((module === null || module === void 0 ? void 0 : module.resource) || ((_a = module === null || module === void 0 ? void 0 : module.nameForCondition) === null || _a === void 0 ? void 0 : _a.call(module)) || '').replace(/\?.*$/, '');
15
- }
16
- function isJavaScriptModule(module) {
17
- const moduleType = (module === null || module === void 0 ? void 0 : module.type) || '';
18
- const resource = getModuleResource(module);
19
- if (moduleType.startsWith('css') || helper_1.REG_STYLE.test(resource))
20
- return false;
21
- return helper_1.REG_SCRIPTS.test(resource);
22
- }
23
- function getAsyncRootFromChunkName(chunkName, asyncRootMap) {
24
- if (!chunkName)
25
- return false;
26
- const normalizedChunkName = (0, asyncSubPackage_1.normalizePathForAsyncSubPackage)(chunkName);
27
- const sourceRoot = Array.from(asyncRootMap.keys()).find(root => {
28
- const normalizedRoot = (0, asyncSubPackage_1.normalizePathForAsyncSubPackage)(root);
29
- return normalizedChunkName === normalizedRoot || normalizedChunkName.startsWith(`${normalizedRoot}/`);
30
- });
31
- return sourceRoot ? asyncRootMap.get(sourceRoot) || false : false;
32
- }
33
- function getAsyncRootFromChunks(chunks, asyncRootMap) {
34
- const asyncRoots = new Set();
35
- for (const chunk of chunks) {
36
- const asyncRoot = getAsyncRootFromChunkName(chunk === null || chunk === void 0 ? void 0 : chunk.name, asyncRootMap);
37
- if (!asyncRoot)
38
- return false;
39
- asyncRoots.add(asyncRoot);
40
- }
41
- if (asyncRoots.size !== 1)
42
- return false;
43
- return Array.from(asyncRoots)[0];
44
- }
45
- function createAsyncSplitChunkName(asyncRoot, chunks) {
46
- const chunkNames = chunks
47
- .map(chunk => (chunk === null || chunk === void 0 ? void 0 : chunk.name) || String((chunk === null || chunk === void 0 ? void 0 : chunk.id) || 'common'))
48
- .sort()
49
- .join('~');
50
- return (0, asyncSubPackage_1.createAsyncCommonChunkName)(asyncRoot, chunkNames || 'common');
51
- }
52
- function createMiniAppConfigContent(content, subPackages) {
53
- const result = Object.assign(Object.assign({}, content), { subPackages });
54
- // subPackageIndie/subpackages 是 Taro 编译期配置,不能透出到微信小程序 app.json。
55
- delete result.subPackageIndie;
56
- return result;
57
- }
58
- function createRelativeRequestFromRoot(fromRoot, toEntry) {
59
- const fromParts = (0, asyncSubPackage_1.normalizePathForAsyncSubPackage)(fromRoot).split('/').filter(Boolean);
60
- const toParts = (0, asyncSubPackage_1.normalizePathForAsyncSubPackage)(toEntry).split('/').filter(Boolean);
61
- while (fromParts.length && toParts.length && fromParts[0] === toParts[0]) {
62
- fromParts.shift();
63
- toParts.shift();
64
- }
65
- const request = [...fromParts.map(() => '..'), ...toParts].join('/') || '.';
66
- return request.startsWith('.') ? request : `./${request}`;
67
- }
68
- function createNormalizedRuntimeRootEntries(asyncRootEntries) {
69
- return asyncRootEntries.map(({ sourceRoot, asyncRoot }) => {
70
- const normalizedSourceRoot = (0, asyncSubPackage_1.normalizePathForAsyncSubPackage)(sourceRoot);
71
- const normalizedAsyncRoot = (0, asyncSubPackage_1.normalizePathForAsyncSubPackage)(asyncRoot);
72
- return [
73
- normalizedSourceRoot,
74
- normalizedAsyncRoot,
75
- createRelativeRequestFromRoot(normalizedSourceRoot, normalizedAsyncRoot)
76
- ];
77
- });
78
- }
79
- function createChunkFilenameRuntimeSource(Template, getChunkScriptFilename) {
80
- return [
81
- `var asyncSubPackageChunkFilename = ${getChunkScriptFilename};`,
82
- `${getChunkScriptFilename} = function(chunkId) {`,
83
- Template.indent([
84
- 'return asyncSubPackageChunkFilename(chunkId);'
85
- ]),
86
- '};'
87
- ];
88
- }
89
- function createRequestResolverRuntimeSource(Template) {
90
- return [
91
- 'var resolveAsyncSubPackageRequest = function(rawUrl) {',
92
- Template.indent([
93
- 'for (var i = 0; i < asyncSubPackageRootEntries.length; i++) {',
94
- Template.indent([
95
- 'var asyncRoot = asyncSubPackageRootEntries[i][1];',
96
- 'var asyncRootRequest = asyncSubPackageRootEntries[i][2];',
97
- 'if (rawUrl === asyncRoot) return asyncRootRequest;',
98
- 'if (rawUrl.indexOf(asyncRoot + "/") === 0) return asyncRootRequest + rawUrl.slice(asyncRoot.length);'
99
- ]),
100
- '}',
101
- 'return rawUrl;'
102
- ]),
103
- '};'
104
- ];
105
- }
106
- function createRequireAsyncLoaderRuntimeSource(Template, loadScript) {
107
- return [
108
- 'var asyncSubPackageInProgress = {};',
109
- `${loadScript} = function(url, done) {`,
110
- Template.indent([
111
- 'var rawUrl = (url || "").replace(/^\\/+/, "").replace(/\\.js$/, "");',
112
- 'var request = resolveAsyncSubPackageRequest(rawUrl);',
113
- 'if (asyncSubPackageInProgress[request]) { asyncSubPackageInProgress[request].push(done); return; }',
114
- 'asyncSubPackageInProgress[request] = [done];',
115
- 'var finish = function(event) {',
116
- Template.indent([
117
- 'var handlers = asyncSubPackageInProgress[request];',
118
- 'delete asyncSubPackageInProgress[request];',
119
- 'handlers && handlers.forEach(function(handler) { handler(event); });'
120
- ]),
121
- '};',
122
- 'require.async(request).then(function() {',
123
- Template.indent('finish({ type: "load", target: { src: request } });'),
124
- '}, function(error) {',
125
- Template.indent('finish({ type: "error", target: { src: request }, error: error });'),
126
- '});'
127
- ]),
128
- '};'
129
- ];
130
- }
131
- function createMiniCssRuntimeSource(Template, ensureChunkHandlers) {
132
- return [
133
- `${ensureChunkHandlers}.miniCss = function(chunkId, promises) {`,
134
- Template.indent([
135
- '// asyncSubPackage 的样式已在构建产物阶段合并回 sourceRoot 页面样式。',
136
- '// 小程序环境没有 document,不能执行 mini-css-extract-plugin 的浏览器 CSS loader。'
137
- ]),
138
- '};'
139
- ];
140
- }
141
- function createMiniAsyncSubPackageRuntimeSource(Template, runtimeGlobals, asyncRootEntries) {
142
- const { loadScript, ensureChunkHandlers, getChunkScriptFilename, publicPath } = runtimeGlobals;
143
- const asyncRootRuntimeEntries = createNormalizedRuntimeRootEntries(asyncRootEntries);
144
- return Template.asString([
145
- `${publicPath} = "";`,
146
- `var asyncSubPackageRootEntries = ${JSON.stringify(asyncRootRuntimeEntries)};`,
147
- ...createChunkFilenameRuntimeSource(Template, getChunkScriptFilename),
148
- ...createRequestResolverRuntimeSource(Template),
149
- ...createRequireAsyncLoaderRuntimeSource(Template, loadScript),
150
- ...createMiniCssRuntimeSource(Template, ensureChunkHandlers)
151
- ]);
152
- }
153
- function createMiniAsyncSubPackageRuntimeModuleClass(webpack, Template, runtimeGlobals) {
154
- const RuntimeModule = webpack.RuntimeModule;
155
- const stageAttach = RuntimeModule.STAGE_ATTACH || 10;
156
- return class MiniAsyncSubPackageRuntimeModule extends RuntimeModule {
157
- constructor(asyncRootEntries) {
158
- // 在 webpack 原生 runtime module 之后执行,稳定覆盖浏览器 script/css loader。
159
- super('mini async subpackage chunk loader', stageAttach);
160
- this.asyncRootEntries = asyncRootEntries;
161
- }
162
- generate() {
163
- return createMiniAsyncSubPackageRuntimeSource(Template, runtimeGlobals, this.asyncRootEntries);
164
- }
165
- };
166
- }
167
- /**
168
- * 异步分包插件:集中处理 asyncSubPackage 的 chunk 归属、运行时加载补丁、异步分包入口和 app.json 注册。
169
- *
170
- * 当前方案保留 webpack 原生 import(),让 webpack 继续生成异步 chunk;随后在产物阶段把这些 chunk
171
- * 移到配置的 asyncRoot 下,并生成微信可识别的 asyncRoot/index 占位页面作为分包加载入口。
172
- */
173
- class AsyncSubPackagePlugin {
174
- constructor(miniPlugin, asyncRootMap) {
175
- this.asyncRootMap = new Map();
176
- this.asyncRuntimeRoots = [];
177
- this.appliedCompilers = new WeakSet();
178
- this.miniHooksApplied = false;
179
- this.asyncModuleCache = new WeakMap();
180
- this.asyncChunkRootCache = new WeakMap();
181
- this.asyncChunkSourceRoots = new Map();
182
- this.miniPlugin = miniPlugin;
183
- if (asyncRootMap) {
184
- this.updateAsyncRootMap(asyncRootMap);
185
- }
186
- }
187
- updateAsyncRootMap(asyncRootMap) {
188
- this.asyncRootMap = new Map(asyncRootMap);
189
- this.asyncRuntimeRoots = Array.from(asyncRootMap.entries()).map(([sourceRoot, asyncRoot]) => ({ sourceRoot, asyncRoot }));
190
- global.__taroAsyncSubPackageUseWebpackImport = true;
191
- }
192
- updateAsyncRuntimeRoots(asyncRuntimeRoots) {
193
- this.asyncRuntimeRoots = asyncRuntimeRoots.map(item => (Object.assign({}, item)));
194
- }
195
- apply(compiler) {
196
- if (compiler && !this.appliedCompilers.has(compiler)) {
197
- this.appliedCompilers.add(compiler);
198
- compiler.hooks.compilation.tap(PLUGIN_NAME, () => {
199
- this.asyncModuleCache = new WeakMap();
200
- this.asyncChunkRootCache = new WeakMap();
201
- this.asyncChunkSourceRoots = new Map();
202
- });
203
- this.setupAsyncSplitChunks(compiler);
204
- this.setupAsyncChunkOptimization(compiler);
205
- this.setupAsyncChunkRuntime(compiler);
206
- this.setupAsyncChunkAssetExtraction(compiler);
207
- }
208
- if (!this.miniHooksApplied) {
209
- this.miniHooksApplied = true;
210
- this.setupSubPackageRegistration();
211
- }
212
- }
213
- // ==================== Async SplitChunks ====================
214
- setupAsyncSplitChunks(compiler) {
215
- var _a;
216
- const splitChunks = (_a = compiler.options.optimization) === null || _a === void 0 ? void 0 : _a.splitChunks;
217
- if (!splitChunks)
218
- return;
219
- const cacheGroups = splitChunks.cacheGroups || {};
220
- const commonCacheGroup = cacheGroups.common;
221
- if (commonCacheGroup && commonCacheGroup !== false && !commonCacheGroup[COMMON_CACHE_GROUP_PATCHED]) {
222
- const originalCommonTest = commonCacheGroup.test;
223
- commonCacheGroup.test = (module, context) => {
224
- // 只保护纯 asyncSubPackage 模块,避免被默认 common 抽到主包 common.js。
225
- // 被 initial chunk 静态引用的共享模块仍应交给默认 common 处理。
226
- if (this.isPureAsyncSubPackageModule(module, context))
227
- return false;
228
- return typeof originalCommonTest === 'function' ? originalCommonTest(module, context) : originalCommonTest !== false;
229
- };
230
- // 同一插件实例多次 apply、或 webpack-chain 多次构建 options 时,避免对 test 反复套娃。
231
- Object.defineProperty(commonCacheGroup, COMMON_CACHE_GROUP_PATCHED, { value: true, enumerable: false });
232
- }
233
- cacheGroups.asyncSubPackage = {
234
- chunks: 'async',
235
- minChunks: 2,
236
- minSize: 0,
237
- priority: 20,
238
- enforce: true,
239
- name: (_module, chunks) => {
240
- const asyncRoot = getAsyncRootFromChunks(chunks, this.asyncRootMap);
241
- if (!asyncRoot)
242
- return false;
243
- return createAsyncSplitChunkName(asyncRoot, chunks);
244
- },
245
- test: (module, context) => this.isAsyncSubPackageModule(module, context),
246
- };
247
- splitChunks.cacheGroups = cacheGroups;
248
- }
249
- getCachedAsyncRootForModule(module, context) {
250
- if (!module)
251
- return undefined;
252
- if (this.asyncModuleCache.has(module))
253
- return this.asyncModuleCache.get(module);
254
- // getAsyncRootForModule 内部会主动写入 cache(包括递归路径上遇到的所有 module)。
255
- return (0, asyncSubPackage_1.getAsyncRootForModule)(module, this.miniPlugin.options.sourceDir, this.asyncRootMap, context === null || context === void 0 ? void 0 : context.moduleGraph, undefined, this.asyncModuleCache);
256
- }
257
- isAsyncSubPackageModule(module, context) {
258
- if (this.asyncRootMap.size === 0)
259
- return false;
260
- if (!isJavaScriptModule(module))
261
- return false;
262
- const asyncRoot = this.getCachedAsyncRootForModule(module, context);
263
- return Boolean(asyncRoot);
264
- }
265
- isPureAsyncSubPackageModule(module, context) {
266
- var _a, _b;
267
- if (!this.isAsyncSubPackageModule(module, context))
268
- return false;
269
- const chunks = Array.from(((_b = (_a = context === null || context === void 0 ? void 0 : context.chunkGraph) === null || _a === void 0 ? void 0 : _a.getModuleChunksIterable) === null || _b === void 0 ? void 0 : _b.call(_a, module)) || []);
270
- // splitChunks test 没有 chunkGraph 时不要过度排除,交回默认 common cacheGroup。
271
- if (chunks.length === 0)
272
- return false;
273
- return chunks.every((chunk) => { var _a; return !((_a = chunk.canBeInitial) === null || _a === void 0 ? void 0 : _a.call(chunk)); });
274
- }
275
- // ==================== Async Chunk Optimization ====================
276
- getSingleSourceRoot(sourceRoots) {
277
- if (sourceRoots.size !== 1)
278
- return null;
279
- return Array.from(sourceRoots)[0];
280
- }
281
- getAsyncRootFromSourceRoots(sourceRoots) {
282
- const asyncRoots = new Set();
283
- for (const sourceRoot of sourceRoots) {
284
- const asyncRoot = this.asyncRootMap.get(sourceRoot);
285
- if (asyncRoot) {
286
- asyncRoots.add(asyncRoot);
287
- if (asyncRoots.size > 1)
288
- return null;
289
- }
290
- }
291
- return asyncRoots.size === 1 ? Array.from(asyncRoots)[0] : null;
292
- }
293
- getSourceRootsFromChunkGroupOrigins(chunk) {
294
- const sourceRoots = new Set();
295
- const sourceDir = this.miniPlugin.options.sourceDir;
296
- for (const group of chunk.groupsIterable || []) {
297
- for (const origin of group.origins || []) {
298
- const originModules = [origin === null || origin === void 0 ? void 0 : origin.module, origin === null || origin === void 0 ? void 0 : origin.originModule];
299
- for (const originModule of originModules) {
300
- const sourceRoot = (0, asyncSubPackage_1.getSourceRootForResource)(getModuleResource(originModule), sourceDir, this.asyncRootMap);
301
- if (sourceRoot)
302
- sourceRoots.add(sourceRoot);
303
- }
304
- }
305
- }
306
- return sourceRoots;
307
- }
308
- setupAsyncChunkOptimization(compiler) {
309
- compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
310
- compilation.hooks.optimizeChunks.tap(PLUGIN_NAME, chunks => {
311
- var _a, _b;
312
- if (this.asyncRootMap.size === 0)
313
- return;
314
- for (const chunk of chunks) {
315
- // 入口 chunk 名要在 app.json/页面注册中保持稳定,不能被改成 asyncRoot 路径。
316
- if (((_a = chunk.hasRuntime) === null || _a === void 0 ? void 0 : _a.call(chunk)) || ((_b = chunk.canBeInitial) === null || _b === void 0 ? void 0 : _b.call(chunk)))
317
- continue;
318
- const modules = Array.from(compilation.chunkGraph.getChunkModulesIterable(chunk));
319
- const jsModules = modules.filter(module => isJavaScriptModule(module));
320
- if (jsModules.length === 0)
321
- continue;
322
- const sourceRoots = this.getSourceRootsFromChunkGroupOrigins(chunk);
323
- let asyncRoot = this.asyncChunkRootCache.get(chunk);
324
- if (!this.asyncChunkRootCache.has(chunk)) {
325
- asyncRoot = (0, asyncSubPackage_1.getSingleAsyncRootForModules)(jsModules, this.miniPlugin.options.sourceDir, this.asyncRootMap, compilation.moduleGraph, this.asyncModuleCache) || this.getAsyncRootFromSourceRoots(sourceRoots);
326
- this.asyncChunkRootCache.set(chunk, asyncRoot || null);
327
- }
328
- if (!asyncRoot)
329
- continue;
330
- const fallbackName = jsModules
331
- .map(module => node_path_1.default.posix.basename(getModuleResource(module)).replace(/\?.*$/, ''))
332
- .filter(Boolean)
333
- .sort()
334
- .join('~') || 'common';
335
- const asyncChunkName = (0, asyncSubPackage_1.createAsyncCommonChunkName)(asyncRoot, chunk.name || String(chunk.id || chunk.debugId || fallbackName));
336
- chunk.name = asyncChunkName;
337
- if (sourceRoots.size > 0) {
338
- this.asyncChunkSourceRoots.set(asyncChunkName, new Set(sourceRoots));
339
- }
340
- }
341
- });
342
- });
343
- }
344
- // ==================== Async Chunk Runtime ====================
345
- setupAsyncChunkRuntime(compiler) {
346
- const webpack = compiler.webpack;
347
- const { RuntimeGlobals, RuntimeModule, Template } = webpack;
348
- const loadScript = RuntimeGlobals === null || RuntimeGlobals === void 0 ? void 0 : RuntimeGlobals.loadScript;
349
- const ensureChunkHandlers = RuntimeGlobals === null || RuntimeGlobals === void 0 ? void 0 : RuntimeGlobals.ensureChunkHandlers;
350
- const getChunkScriptFilename = RuntimeGlobals === null || RuntimeGlobals === void 0 ? void 0 : RuntimeGlobals.getChunkScriptFilename;
351
- const publicPath = RuntimeGlobals === null || RuntimeGlobals === void 0 ? void 0 : RuntimeGlobals.publicPath;
352
- if (!loadScript || !ensureChunkHandlers || !getChunkScriptFilename || !publicPath || !RuntimeModule)
353
- return;
354
- const MiniAsyncSubPackageRuntimeModule = createMiniAsyncSubPackageRuntimeModuleClass(webpack, Template, { loadScript, ensureChunkHandlers, getChunkScriptFilename, publicPath });
355
- compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
356
- const runtimeAppliedChunks = new WeakSet();
357
- const addMiniAsyncRuntimeModule = (chunk) => {
358
- if (this.asyncRootMap.size === 0 || runtimeAppliedChunks.has(chunk))
359
- return;
360
- runtimeAppliedChunks.add(chunk);
361
- compilation.addRuntimeModule(chunk, new MiniAsyncSubPackageRuntimeModule(this.asyncRuntimeRoots));
362
- return true;
363
- };
364
- // 不依赖 runtime.js 文本格式,也不只依赖某一个 runtime requirement:
365
- // dev/prod 下 webpack 可能通过不同 requirement 触发异步 chunk runtime。
366
- compilation.hooks.runtimeRequirementInTree.for(loadScript).tap(PLUGIN_NAME, addMiniAsyncRuntimeModule);
367
- compilation.hooks.runtimeRequirementInTree.for(ensureChunkHandlers).tap(PLUGIN_NAME, addMiniAsyncRuntimeModule);
368
- compilation.hooks.runtimeRequirementInTree.for(getChunkScriptFilename).tap(PLUGIN_NAME, addMiniAsyncRuntimeModule);
369
- });
370
- }
371
- // ==================== Async Chunk Asset Extraction ====================
372
- setupAsyncChunkAssetExtraction(compiler) {
373
- compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
374
- var _a;
375
- // PROCESS_ASSETS_STAGE_OPTIMIZE_TRANSFER 在 webpack 5 中为 300;fallback 仅保留极旧版本兼容。
376
- const stage = (_a = compilation.constructor.PROCESS_ASSETS_STAGE_OPTIMIZE_TRANSFER) !== null && _a !== void 0 ? _a : 300;
377
- compilation.hooks.processAssets.tap({ name: PLUGIN_NAME, stage }, () => {
378
- if (this.asyncRootMap.size === 0)
379
- return;
380
- const { RawSource } = compilation.compiler.webpack.sources;
381
- this.moveAsyncRootStylesToSourceRoots(compilation, RawSource);
382
- this.moveAsyncRootTemplatesToSourceRoots(compilation);
383
- this.createAsyncRootEntries(compilation, RawSource);
384
- });
385
- });
386
- }
387
- createAsyncRootEntries(compilation, RawSource) {
388
- const templateExt = this.miniPlugin.options.fileType.templ || '.wxml';
389
- const configExt = this.miniPlugin.options.fileType.config || '.json';
390
- // 多个 sourceRoot 可能指向同一个 asyncRoot;同一 asyncRoot 的 index 占位只需要生成一次。
391
- const uniqueAsyncRoots = new Set(this.asyncRootMap.values());
392
- for (const asyncRoot of uniqueAsyncRoots) {
393
- const jsAssets = (0, asyncSubPackage_1.getAsyncRootAssetNames)(compilation.assets, asyncRoot)
394
- .filter(assetName => assetName !== `${asyncRoot}/${ASYNC_SUBPACKAGE_ENTRY}.js`)
395
- .sort();
396
- if (jsAssets.length === 0)
397
- continue;
398
- // 微信 require.async 只能稳定加载 app.json 中注册过的分包页面入口。
399
- // 因此 asyncRoot 只注册 index 页面,index.js 再同步 require 真实 webpack async chunk,
400
- // 让 webpack JSONP runtime 完成 chunk 注册。
401
- const requires = jsAssets
402
- .map(assetName => `require('./${node_path_1.default.posix.basename(assetName)}')`)
403
- .join('\n');
404
- compilation.assets[`${asyncRoot}/${ASYNC_SUBPACKAGE_ENTRY}.js`] = new RawSource(requires);
405
- compilation.assets[`${asyncRoot}/${ASYNC_SUBPACKAGE_ENTRY}${configExt}`] = new RawSource('{}');
406
- compilation.assets[`${asyncRoot}/${ASYNC_SUBPACKAGE_ENTRY}${templateExt}`] = new RawSource('<view />');
407
- }
408
- }
409
- moveAsyncRootTemplatesToSourceRoots(compilation) {
410
- const templateExt = this.miniPlugin.options.fileType.templ || '.wxml';
411
- const asyncRoots = new Set(this.asyncRootMap.values());
412
- for (const asyncRoot of asyncRoots) {
413
- const templateAssets = Object.keys(compilation.assets)
414
- .filter(assetName => assetName.startsWith(`${asyncRoot}/`) && assetName.endsWith(`-templates${templateExt}`));
415
- for (const assetName of templateAssets) {
416
- const templateName = node_path_1.default.posix.basename(assetName);
417
- const chunkName = `${asyncRoot}/${templateName.slice(0, -`-templates${templateExt}`.length)}`;
418
- const sourceRoots = this.asyncChunkSourceRoots.get(chunkName);
419
- const sourceRoot = sourceRoots ? this.getSingleSourceRoot(sourceRoots) : null;
420
- if (!sourceRoot)
421
- continue;
422
- compilation.assets[`${sourceRoot}/${templateName}`] = compilation.assets[assetName];
423
- delete compilation.assets[assetName];
424
- }
425
- }
426
- }
427
- moveAsyncRootStylesToSourceRoots(compilation, RawSource) {
428
- var _a, _b, _c, _d;
429
- const styleExt = this.miniPlugin.options.fileType.style || '.wxss';
430
- const styleAssetReg = new RegExp(`\\${styleExt}$`);
431
- const asyncRoots = new Set(this.asyncRootMap.values());
432
- for (const asyncRoot of asyncRoots) {
433
- const asyncStyleAssets = Object.keys(compilation.assets)
434
- .filter(assetName => assetName.startsWith(`${asyncRoot}/`) && styleAssetReg.test(assetName));
435
- if (asyncStyleAssets.length === 0)
436
- continue;
437
- for (const assetName of asyncStyleAssets) {
438
- const chunkName = assetName.slice(0, -styleExt.length);
439
- const sourceRoots = this.asyncChunkSourceRoots.get(chunkName);
440
- if (!(sourceRoots === null || sourceRoots === void 0 ? void 0 : sourceRoots.size))
441
- continue;
442
- // asyncRoot 下只保留 JS 与 index 占位页面;动态组件样式仍在父包页面上下文生效。
443
- // 单一页面使用的 async style 只并回该 sourceRoot;多个页面共用的 async style 复制到所有使用它的 sourceRoot。
444
- const asyncStyle = ((_b = (_a = compilation.assets[assetName]) === null || _a === void 0 ? void 0 : _a.source) === null || _b === void 0 ? void 0 : _b.call(_a).toString()) || '';
445
- for (const sourceRoot of sourceRoots) {
446
- const targetStyleAsset = `${sourceRoot}/index${styleExt}`;
447
- const origin = ((_d = (_c = compilation.assets[targetStyleAsset]) === null || _c === void 0 ? void 0 : _c.source) === null || _d === void 0 ? void 0 : _d.call(_c).toString()) || '';
448
- compilation.assets[targetStyleAsset] = new RawSource([origin, asyncStyle].filter(Boolean).join('\n'));
449
- }
450
- delete compilation.assets[assetName];
451
- }
452
- }
453
- }
454
- // ==================== app.json Registration ====================
455
- setupSubPackageRegistration() {
456
- this.miniPlugin.hooks.afterGenerateFiles.tap(PLUGIN_NAME, (compilation) => {
457
- var _a, _b, _c;
458
- if (this.asyncRootMap.size === 0)
459
- return;
460
- const { RawSource } = (((_b = (_a = compilation.compiler) === null || _a === void 0 ? void 0 : _a.webpack) === null || _b === void 0 ? void 0 : _b.sources) || require('webpack').sources);
461
- const appConfig = this.miniPlugin.appConfig;
462
- const exist = appConfig.subPackages || appConfig.subpackages || [];
463
- const news = [];
464
- // 多个 sourceRoot 可以指向同一个 asyncRoot,app.json 中只能注册一次。
465
- // pages 固定为 index,避免把每个 webpack chunk 当成小程序页面。
466
- const asyncRoots = new Set(this.asyncRootMap.values());
467
- for (const asyncRoot of asyncRoots) {
468
- news.push({ root: asyncRoot, pages: [ASYNC_SUBPACKAGE_ENTRY], independent: false });
469
- }
470
- const mergedMap = new Map();
471
- for (const item of [...exist, ...news]) {
472
- if (!(item === null || item === void 0 ? void 0 : item.root) || mergedMap.has(item.root))
473
- continue;
474
- mergedMap.set(item.root, item);
475
- }
476
- const merged = Array.from(mergedMap.values());
477
- appConfig.subPackages = merged;
478
- const appCfgPath = this.miniPlugin.getConfigFilePath(this.miniPlugin.appEntry);
479
- const appCfgName = node_path_1.default.basename(appCfgPath).replace(node_path_1.default.extname(appCfgPath), '');
480
- const fc = (_c = this.miniPlugin.filesConfig) === null || _c === void 0 ? void 0 : _c[appCfgName];
481
- if (fc) {
482
- fc.content = createMiniAppConfigContent(fc.content, merged);
483
- compilation.assets[this.miniPlugin.getConfigPath(appCfgName)] = new RawSource(JSON.stringify(fc.content, null, 2));
484
- }
485
- });
486
- }
487
- }
488
- exports.default = AsyncSubPackagePlugin;
489
- //# sourceMappingURL=AsyncSubPackagePlugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AsyncSubPackagePlugin.js","sourceRoot":"","sources":["../../src/plugins/AsyncSubPackagePlugin.ts"],"names":[],"mappings":"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"}