@tarojs/webpack5-runner 3.5.0-alpha.1 → 3.5.0-alpha.10
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.
- package/dist/dependencies/TaroSingleEntryDependency.js +5 -2
- package/dist/dependencies/TaroSingleEntryDependency.js.map +1 -1
- package/dist/index.h5.js +32 -28
- package/dist/index.h5.js.map +1 -1
- package/dist/index.mini.js +7 -4
- package/dist/index.mini.js.map +1 -1
- package/dist/loaders/miniTemplateLoader.js +7 -4
- package/dist/loaders/miniTemplateLoader.js.map +1 -1
- package/dist/plugins/BuildNativePlugin.js +17 -14
- package/dist/plugins/BuildNativePlugin.js.map +1 -1
- package/dist/plugins/H5Plugin.js +10 -7
- package/dist/plugins/H5Plugin.js.map +1 -1
- package/dist/plugins/MiniPlugin.js +75 -72
- package/dist/plugins/MiniPlugin.js.map +1 -1
- package/dist/plugins/MiniSplitChunksPlugin.js +28 -25
- package/dist/plugins/MiniSplitChunksPlugin.js.map +1 -1
- package/dist/plugins/TaroLoadChunksPlugin.js +15 -12
- package/dist/plugins/TaroLoadChunksPlugin.js.map +1 -1
- package/dist/plugins/TaroNormalModule.js +6 -3
- package/dist/plugins/TaroNormalModule.js.map +1 -1
- package/dist/plugins/TaroNormalModulesPlugin.js +5 -2
- package/dist/plugins/TaroNormalModulesPlugin.js.map +1 -1
- package/dist/plugins/TaroSingleEntryPlugin.js +4 -1
- package/dist/plugins/TaroSingleEntryPlugin.js.map +1 -1
- package/dist/postcss/postcss.h5.js +23 -8
- package/dist/postcss/postcss.h5.js.map +1 -1
- package/dist/postcss/postcss.mini.js +20 -10
- package/dist/postcss/postcss.mini.js.map +1 -1
- package/dist/prebundle/bundle.js +20 -17
- package/dist/prebundle/bundle.js.map +1 -1
- package/dist/prebundle/index.js +38 -35
- package/dist/prebundle/index.js.map +1 -1
- package/dist/prebundle/scanImports.js +23 -16
- package/dist/prebundle/scanImports.js.map +1 -1
- package/dist/prebundle/utils.js +14 -11
- package/dist/prebundle/utils.js.map +1 -1
- package/dist/prebundle/webpack/TaroContainerEntryModule.js +5 -2
- package/dist/prebundle/webpack/TaroContainerEntryModule.js.map +1 -1
- package/dist/prebundle/webpack/TaroContainerPlugin.js +4 -1
- package/dist/prebundle/webpack/TaroContainerPlugin.js.map +1 -1
- package/dist/prebundle/webpack/TaroContainerReferencePlugin.js +11 -8
- package/dist/prebundle/webpack/TaroContainerReferencePlugin.js.map +1 -1
- package/dist/prerender/prerender.js +16 -13
- package/dist/prerender/prerender.js.map +1 -1
- package/dist/template/custom-wrapper.js +1 -1
- package/dist/template/custom-wrapper.js.map +1 -1
- package/dist/utils/H5AppInstance.js +14 -11
- package/dist/utils/H5AppInstance.js.map +1 -1
- package/dist/utils/index.js +8 -5
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/logHelper.js +11 -8
- package/dist/utils/logHelper.js.map +1 -1
- package/dist/utils/webpack.js.map +1 -1
- package/dist/webpack/BaseConfig.js +14 -11
- package/dist/webpack/BaseConfig.js.map +1 -1
- package/dist/webpack/BuildNativePlugin.js +17 -14
- package/dist/webpack/BuildNativePlugin.js.map +1 -1
- package/dist/webpack/Combination.js +13 -10
- package/dist/webpack/Combination.js.map +1 -1
- package/dist/webpack/H5Combination.js +9 -6
- package/dist/webpack/H5Combination.js.map +1 -1
- package/dist/webpack/H5WebpackModule.js +5 -5
- package/dist/webpack/H5WebpackModule.js.map +1 -1
- package/dist/webpack/H5WebpackPlugin.js +8 -5
- package/dist/webpack/H5WebpackPlugin.js.map +1 -1
- package/dist/webpack/MiniCombination.js.map +1 -1
- package/dist/webpack/MiniWebpackModule.js +11 -8
- package/dist/webpack/MiniWebpackModule.js.map +1 -1
- package/dist/webpack/MiniWebpackPlugin.js +8 -5
- package/dist/webpack/MiniWebpackPlugin.js.map +1 -1
- package/dist/webpack/WebpackModule.js +16 -13
- package/dist/webpack/WebpackModule.js.map +1 -1
- package/dist/webpack/WebpackPlugin.js +8 -5
- package/dist/webpack/WebpackPlugin.js.map +1 -1
- package/package.json +18 -18
package/dist/prebundle/bundle.js
CHANGED
|
@@ -8,11 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
11
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
15
|
exports.bundle = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const esbuild_1 = require("esbuild");
|
|
16
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
17
|
+
const path_1 = __importDefault(require("path"));
|
|
18
|
+
const esbuild_1 = __importDefault(require("esbuild"));
|
|
16
19
|
const es_module_lexer_1 = require("es-module-lexer");
|
|
17
20
|
const utils_1 = require("./utils");
|
|
18
21
|
const constant_1 = require("./constant");
|
|
@@ -31,12 +34,12 @@ function bundle(deps, combination, prebundleOutputDir) {
|
|
|
31
34
|
const flatIdExports = new Map();
|
|
32
35
|
for (const [id, dep] of deps.entries()) {
|
|
33
36
|
// flatten id
|
|
34
|
-
const flatId = utils_1.flattenId(id);
|
|
37
|
+
const flatId = (0, utils_1.flattenId)(id);
|
|
35
38
|
flattenDeps.set(flatId, dep);
|
|
36
39
|
// Use es-module-lexer to check ES exports
|
|
37
40
|
// But "export * from" syntax should be checked alone
|
|
38
|
-
const fileContent =
|
|
39
|
-
const exportsData = es_module_lexer_1.parse(fileContent);
|
|
41
|
+
const fileContent = fs_extra_1.default.readFileSync(dep, 'utf-8');
|
|
42
|
+
const exportsData = (0, es_module_lexer_1.parse)(fileContent);
|
|
40
43
|
for (const { ss, se } of exportsData[0]) {
|
|
41
44
|
const exp = fileContent.slice(ss, se);
|
|
42
45
|
if (/export\s+\*\s+from/.test(exp)) {
|
|
@@ -47,15 +50,15 @@ function bundle(deps, combination, prebundleOutputDir) {
|
|
|
47
50
|
}
|
|
48
51
|
// bundle deps
|
|
49
52
|
const entryPlugin = getEntryPlugin(flattenDeps, flatIdExports);
|
|
50
|
-
|
|
51
|
-
?
|
|
52
|
-
:
|
|
53
|
+
fs_extra_1.default.existsSync(prebundleOutputDir)
|
|
54
|
+
? fs_extra_1.default.emptyDirSync(prebundleOutputDir)
|
|
55
|
+
: fs_extra_1.default.ensureDirSync(prebundleOutputDir);
|
|
53
56
|
const result = yield esbuild_1.default.build({
|
|
54
57
|
absWorkingDir: appPath,
|
|
55
58
|
entryPoints: Array.from(flattenDeps.keys()),
|
|
56
59
|
bundle: true,
|
|
57
60
|
format: 'esm',
|
|
58
|
-
define: Object.assign(Object.assign({}, utils_1.getDefines(combination)), {
|
|
61
|
+
define: Object.assign(Object.assign({}, (0, utils_1.getDefines)(combination)), {
|
|
59
62
|
// AMD 被 esbuild 转 ESM 后,是套着 ESM 外皮的 AMD 语法模块。
|
|
60
63
|
// Webpack HarmonyDetectionParserPlugin 会阻止 AMDDefineDependencyParserPlugin 对这些模块的处理。
|
|
61
64
|
// 导致这些模块报错(如 lodash)。目前的办法是把 define 置为 false,不支持 AMD 导出。
|
|
@@ -84,10 +87,10 @@ function bundle(deps, combination, prebundleOutputDir) {
|
|
|
84
87
|
if ((exportsData === null || exportsData === void 0 ? void 0 : exportsData.needInterop) &&
|
|
85
88
|
output.exports.length === 1 &&
|
|
86
89
|
output.exports[0] === 'default') {
|
|
87
|
-
const srcPath =
|
|
88
|
-
const destPath =
|
|
89
|
-
const p =
|
|
90
|
-
.then(() =>
|
|
90
|
+
const srcPath = path_1.default.join(appPath, outputName);
|
|
91
|
+
const destPath = path_1.default.join(appPath, outputName.replace(/(\.js)$/, '.core$1'));
|
|
92
|
+
const p = fs_extra_1.default.move(srcPath, destPath)
|
|
93
|
+
.then(() => fs_extra_1.default.writeFile(srcPath, `const m = require('./${path_1.default.basename(destPath)}')
|
|
91
94
|
module.exports = m.default
|
|
92
95
|
exports.default = module.exports
|
|
93
96
|
`));
|
|
@@ -102,7 +105,7 @@ exports.default = module.exports
|
|
|
102
105
|
}
|
|
103
106
|
exports.bundle = bundle;
|
|
104
107
|
function getEntryPlugin(flattenDeps, flatIdExports) {
|
|
105
|
-
const resolve = utils_1.getResolve();
|
|
108
|
+
const resolve = (0, utils_1.getResolve)();
|
|
106
109
|
return {
|
|
107
110
|
name: 'entry',
|
|
108
111
|
setup(build) {
|
|
@@ -116,9 +119,9 @@ function getEntryPlugin(flattenDeps, flatIdExports) {
|
|
|
116
119
|
namespace: 'entry'
|
|
117
120
|
};
|
|
118
121
|
}
|
|
119
|
-
const resolvedPath = yield resolve(
|
|
122
|
+
const resolvedPath = yield resolve(path_1.default.dirname(importer), id);
|
|
120
123
|
if (constant_1.assetsRE.test(resolvedPath)) {
|
|
121
|
-
return utils_1.externalModule({ path: id });
|
|
124
|
+
return (0, utils_1.externalModule)({ path: id });
|
|
122
125
|
}
|
|
123
126
|
else {
|
|
124
127
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/prebundle/bundle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/prebundle/bundle.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,wDAAyB;AACzB,gDAAuB;AACvB,sDAA6B;AAC7B,qDAA6C;AAC7C,mCAKgB;AAChB,yCAEmB;AAOnB,6EAA6E;AAC7E,yEAAyE;AACzE,kCAAkC;AAClC,wCAAwC;AACxC,4EAA4E;AAC5E,WAAW;AACX,SAAsB,MAAM,CAAE,IAAmB,EAAE,WAA4B,EAAE,kBAA0B;;;QACzG,MAAM,sBAAI,CAAA;QAEV,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAA;QACnC,MAAM,WAAW,GAAkB,IAAI,GAAG,EAAE,CAAA;QAC5C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAuB,CAAA;QAEpD,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YACtC,aAAa;YACb,MAAM,MAAM,GAAG,IAAA,iBAAS,EAAC,EAAE,CAAC,CAAA;YAC5B,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;YAC5B,0CAA0C;YAC1C,qDAAqD;YACrD,MAAM,WAAW,GAAG,kBAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YACjD,MAAM,WAAW,GAAgB,IAAA,uBAAK,EAAC,WAAW,CAAC,CAAA;YACnD,KAAK,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE;gBACvC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACrC,IAAI,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;oBAClC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAA;iBAChC;aACF;YACD,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;SACvC;QAED,cAAc;QACd,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;QAE9D,kBAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;YAC/B,CAAC,CAAC,kBAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACrC,CAAC,CAAC,kBAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAA;QAExC,MAAM,MAAM,GAAG,MAAM,iBAAO,CAAC,KAAK,CAAC;YACjC,aAAa,EAAE,OAAO;YACtB,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,KAAK;YACb,MAAM,kCACD,IAAA,kBAAU,EAAC,WAAW,CAAC;gBAC1B,8CAA8C;gBAC9C,qFAAqF;gBACrF,yDAAyD;gBACzD,MAAM,EAAE,OAAO,GAChB;YACD,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI;YACd,iBAAiB,EAAE,IAAI;YACvB,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE;gBACP,WAAW;aACZ;SACF,CAAC,CAAA;QAEF,sDAAsD;QACtD,gCAAgC;QAChC,+BAA+B;QAC/B,MAAM,UAAU,GAAoB,EAAE,CAAA;QACtC,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAA;QAE1C,KAAK,MAAM,UAAU,IAAI,UAAU,EAAE;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;YAErC,IAAI,CAAC,CAAA,MAAA,MAAM,CAAC,UAAU,0CAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;gBAAE,SAAQ;YAEtD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YACtD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,SAAQ;YAEvC,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC5C,IACE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,WAAW;gBACxB,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;gBAC3B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,EAC/B;gBACA,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;gBAC9C,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;gBAC7E,MAAM,CAAC,GAAG,kBAAE,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC;qBACjC,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CACtB,OAAO,EACP,wBAAwB,cAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;;;CAGxD,CACQ,CAAC,CAAA;gBAEJ,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;aACnB;SACF;QAED,MAAM,UAAU,CAAA;QAEhB,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAA;;CACF;AA5FD,wBA4FC;AAED,SAAS,cAAc,CAAE,WAA0B,EAAE,aAAuC;IAC1F,MAAM,OAAO,GAAG,IAAA,kBAAU,GAAE,CAAA;IAC5B,OAAO;QACL,IAAI,EAAE,OAAO;QACb,KAAK,CAAE,KAAK;YACV,SAAS;YACT,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,mBAAQ,EAAE,CAAC,EAAE,sBAAc,CAAC,CAAA;YAEvD,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,CAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;gBACzE,QAAQ;gBACR,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;oBACpC,OAAO;wBACL,IAAI,EAAE,EAAE;wBACR,SAAS,EAAE,OAAO;qBACnB,CAAA;iBACF;gBAED,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC9D,IAAI,mBAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;oBAC/B,OAAO,IAAA,sBAAc,EAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;iBACpC;qBAAM;oBACL,OAAO;wBACL,IAAI,EAAE,YAAY;qBACnB,CAAA;iBACF;YACH,CAAC,CAAA,CAAC,CAAA;YAEF,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,CAAO,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE;gBAChF,IAAI,EAAE,GAAG,EAAE,CAAA;gBACX,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACpC,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAE,CAAA;gBAC1C,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,WAAW,CAAA;gBAC9C,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,CAAA;gBAE7C,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;oBAC9C,eAAe;oBACf,WAAW,CAAC,WAAW,GAAG,IAAI,CAAA;oBAC9B,EAAE,GAAG,6BAA6B,QAAQ,IAAI,CAAA;iBAC/C;qBAAM;oBACL,UAAU;oBACV,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;wBACnC,iBAAiB;wBACjB,EAAE,IAAI,kBAAkB,QAAQ,qBAAqB,CAAA;qBACtD;oBACD,IACE,YAAY;wBACZ,WAAW,CAAC,MAAM,GAAG,CAAC;wBACtB,WAAW,CAAC,CAAC,CAAC,KAAK,SAAS,EAC5B;wBACA,qBAAqB;wBACrB,kBAAkB;wBAClB,EAAE,IAAI,kBAAkB,QAAQ,IAAI,CAAA;qBACrC;iBACF;gBAED,6CAA6C;gBAC7C,6CAA6C;gBAC7C,8DAA8D;gBAC9D,kCAAkC;gBAElC,OAAO;oBACL,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,EAAE;oBACZ,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE;iBAC1B,CAAA;YACH,CAAC,CAAA,CAAC,CAAA;QACJ,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/dist/prebundle/index.js
CHANGED
|
@@ -8,6 +8,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
11
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
15
|
exports.preBundle = void 0;
|
|
13
16
|
// Inspired by [vite](https://github.com/vitejs/vite)
|
|
@@ -34,35 +37,35 @@ exports.preBundle = void 0;
|
|
|
34
37
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
35
38
|
* SOFTWARE.
|
|
36
39
|
*/
|
|
37
|
-
const
|
|
38
|
-
const
|
|
40
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
41
|
+
const path_1 = __importDefault(require("path"));
|
|
39
42
|
const perf_hooks_1 = require("perf_hooks");
|
|
40
43
|
const helper_1 = require("@tarojs/helper");
|
|
41
|
-
const
|
|
44
|
+
const webpack_1 = __importDefault(require("webpack"));
|
|
42
45
|
const scanImports_1 = require("./scanImports");
|
|
43
46
|
const bundle_1 = require("./bundle");
|
|
44
|
-
const TaroContainerPlugin_1 = require("./webpack/TaroContainerPlugin");
|
|
47
|
+
const TaroContainerPlugin_1 = __importDefault(require("./webpack/TaroContainerPlugin"));
|
|
45
48
|
const utils_1 = require("./utils");
|
|
46
49
|
function preBundle(combination) {
|
|
47
50
|
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
-
const prebundleOptions = utils_1.getPrebunbleOptions(combination);
|
|
51
|
+
const prebundleOptions = (0, utils_1.getPrebunbleOptions)(combination);
|
|
49
52
|
if (!prebundleOptions.enable)
|
|
50
53
|
return;
|
|
51
54
|
const appPath = combination.appPath;
|
|
52
|
-
const cacheDir = prebundleOptions.cacheDir || utils_1.getCacheDir(appPath);
|
|
53
|
-
const prebundleCacheDir =
|
|
54
|
-
const remoteCacheDir =
|
|
55
|
-
const metadataPath =
|
|
55
|
+
const cacheDir = prebundleOptions.cacheDir || (0, utils_1.getCacheDir)(appPath);
|
|
56
|
+
const prebundleCacheDir = path_1.default.resolve(cacheDir, './prebundle');
|
|
57
|
+
const remoteCacheDir = path_1.default.resolve(cacheDir, './remote');
|
|
58
|
+
const metadataPath = path_1.default.join(cacheDir, 'metadata.json');
|
|
56
59
|
let preMetadata = {};
|
|
57
60
|
try {
|
|
58
|
-
preMetadata = prebundleOptions.force === true ? {} :
|
|
61
|
+
preMetadata = prebundleOptions.force === true ? {} : fs_extra_1.default.readJSONSync(metadataPath);
|
|
59
62
|
}
|
|
60
63
|
catch (e) { }
|
|
61
64
|
const metadata = {};
|
|
62
65
|
let isUseCache = true;
|
|
63
66
|
const resolveOptions = combination.chain.toConfig().resolve;
|
|
64
|
-
utils_1.createResolve(appPath, resolveOptions);
|
|
65
|
-
const measure = utils_1.getMeasure(prebundleOptions.timings);
|
|
67
|
+
(0, utils_1.createResolve)(appPath, resolveOptions);
|
|
68
|
+
const measure = (0, utils_1.getMeasure)(prebundleOptions.timings);
|
|
66
69
|
/**
|
|
67
70
|
* 找出所有 webpack entry
|
|
68
71
|
* TODO:
|
|
@@ -70,11 +73,11 @@ function preBundle(combination) {
|
|
|
70
73
|
*/
|
|
71
74
|
const entries = [];
|
|
72
75
|
const appJsPath = combination.config.entry.app[0];
|
|
73
|
-
const appConfigPath = helper_1.resolveMainFilePath(`${appJsPath.replace(
|
|
74
|
-
const appConfig = helper_1.readConfig(appConfigPath);
|
|
76
|
+
const appConfigPath = (0, helper_1.resolveMainFilePath)(`${appJsPath.replace(path_1.default.extname(appJsPath), '')}.config`);
|
|
77
|
+
const appConfig = (0, helper_1.readConfig)(appConfigPath);
|
|
75
78
|
entries.push(appJsPath);
|
|
76
79
|
appConfig.pages.forEach((page) => {
|
|
77
|
-
const pageJsPath = helper_1.resolveMainFilePath(
|
|
80
|
+
const pageJsPath = (0, helper_1.resolveMainFilePath)(path_1.default.join(appPath, combination.sourceRoot, page));
|
|
78
81
|
entries.push(pageJsPath);
|
|
79
82
|
});
|
|
80
83
|
// console.log('\nPrebundle entries: \n', ...entries.map(entry => `\t${entry}\n`, '\n'))
|
|
@@ -82,22 +85,22 @@ function preBundle(combination) {
|
|
|
82
85
|
* 1. 扫描出所有的 node_modules 依赖
|
|
83
86
|
*/
|
|
84
87
|
const SCAN_START = perf_hooks_1.performance.now();
|
|
85
|
-
const deps = yield scanImports_1.scanImports({
|
|
88
|
+
const deps = yield (0, scanImports_1.scanImports)({
|
|
86
89
|
entries,
|
|
87
90
|
combination,
|
|
88
91
|
include: prebundleOptions.include || [],
|
|
89
92
|
exclude: prebundleOptions.exclude || []
|
|
90
93
|
});
|
|
91
|
-
console.log(helper_1.chalk.cyan('Prebundle dependencies: \n', ...JSON.parse(utils_1.formatDepsString(deps)).map(dep => ` ${dep[0]}\n`)));
|
|
94
|
+
console.log(helper_1.chalk.cyan('Prebundle dependencies: \n', ...JSON.parse((0, utils_1.formatDepsString)(deps)).map(dep => ` ${dep[0]}\n`)));
|
|
92
95
|
measure('Scan imports duration', SCAN_START);
|
|
93
96
|
/**
|
|
94
97
|
* 2. 使用 esbuild 对 node_modules 依赖进行 bundle
|
|
95
98
|
*/
|
|
96
99
|
const PREBUNDLE_START = perf_hooks_1.performance.now();
|
|
97
|
-
metadata.bundleHash = yield utils_1.getBundleHash(deps, combination, cacheDir);
|
|
100
|
+
metadata.bundleHash = yield (0, utils_1.getBundleHash)(deps, combination, cacheDir);
|
|
98
101
|
if (preMetadata.bundleHash !== metadata.bundleHash) {
|
|
99
102
|
isUseCache = false;
|
|
100
|
-
const { metafile } = yield bundle_1.bundle(deps, combination, prebundleCacheDir);
|
|
103
|
+
const { metafile } = yield (0, bundle_1.bundle)(deps, combination, prebundleCacheDir);
|
|
101
104
|
// 找出 @tarojs/runtime 被 split 切分的 chunk,作为后续 ProvidePlugin 的提供者。
|
|
102
105
|
// 原因是 @tarojs/runtime 里使用了一些如 raf、caf 等全局变量,又因为 esbuild 把
|
|
103
106
|
// @tarojs/runtime split 成 entry 和依赖 chunk 两部分。如果我们把 entry 作为
|
|
@@ -112,14 +115,14 @@ function preBundle(combination) {
|
|
|
112
115
|
return depOutput.exports.includes('TaroRootElement');
|
|
113
116
|
});
|
|
114
117
|
if (dep) {
|
|
115
|
-
metadata.taroRuntimeBundlePath =
|
|
118
|
+
metadata.taroRuntimeBundlePath = path_1.default.join(appPath, dep.path);
|
|
116
119
|
}
|
|
117
120
|
return true;
|
|
118
121
|
}
|
|
119
122
|
});
|
|
120
123
|
}
|
|
121
124
|
else {
|
|
122
|
-
metadata.taroRuntimeBundlePath =
|
|
125
|
+
metadata.taroRuntimeBundlePath = path_1.default.join(appPath, preMetadata.taroRuntimeBundlePath);
|
|
123
126
|
}
|
|
124
127
|
measure('Prebundle duration', PREBUNDLE_START);
|
|
125
128
|
/**
|
|
@@ -136,7 +139,7 @@ function preBundle(combination) {
|
|
|
136
139
|
chunkLoadingGlobal: mainBuildOutput.chunkLoadingGlobal,
|
|
137
140
|
globalObject: mainBuildOutput.globalObject
|
|
138
141
|
};
|
|
139
|
-
metadata.mfHash = utils_1.getMfHash({
|
|
142
|
+
metadata.mfHash = (0, utils_1.getMfHash)({
|
|
140
143
|
bundleHash: metadata.bundleHash,
|
|
141
144
|
mode,
|
|
142
145
|
devtool,
|
|
@@ -145,33 +148,33 @@ function preBundle(combination) {
|
|
|
145
148
|
});
|
|
146
149
|
if (preMetadata.mfHash !== metadata.mfHash) {
|
|
147
150
|
isUseCache = false;
|
|
148
|
-
|
|
151
|
+
fs_extra_1.default.existsSync(remoteCacheDir) && fs_extra_1.default.emptyDirSync(remoteCacheDir);
|
|
149
152
|
for (const id of deps.keys()) {
|
|
150
|
-
const flatId = utils_1.flattenId(id);
|
|
151
|
-
exposes[`./${id}`] =
|
|
153
|
+
const flatId = (0, utils_1.flattenId)(id);
|
|
154
|
+
exposes[`./${id}`] = path_1.default.join(prebundleCacheDir, `${flatId}.js`);
|
|
152
155
|
}
|
|
153
156
|
metadata.runtimeRequirements = new Set();
|
|
154
|
-
const compiler =
|
|
155
|
-
entry:
|
|
157
|
+
const compiler = (0, webpack_1.default)({
|
|
158
|
+
entry: path_1.default.resolve(__dirname, './webpack/index.js'),
|
|
156
159
|
mode,
|
|
157
160
|
devtool,
|
|
158
161
|
output,
|
|
159
162
|
cache: {
|
|
160
163
|
type: 'filesystem',
|
|
161
|
-
cacheDirectory:
|
|
164
|
+
cacheDirectory: path_1.default.join(cacheDir, 'webpack-cache'),
|
|
162
165
|
buildDependencies: {
|
|
163
166
|
config: Object.values(exposes)
|
|
164
167
|
}
|
|
165
168
|
},
|
|
166
169
|
plugins: [
|
|
167
|
-
new
|
|
170
|
+
new webpack_1.default.container.ModuleFederationPlugin({
|
|
168
171
|
name: 'lib_app',
|
|
169
172
|
filename: 'remoteEntry.js',
|
|
170
173
|
runtime: 'runtime',
|
|
171
174
|
exposes
|
|
172
175
|
}),
|
|
173
176
|
new TaroContainerPlugin_1.default(metadata.runtimeRequirements),
|
|
174
|
-
new
|
|
177
|
+
new webpack_1.default.ProvidePlugin({
|
|
175
178
|
window: [taroRuntimeBundlePath, 'window$1'],
|
|
176
179
|
document: [taroRuntimeBundlePath, 'document$1'],
|
|
177
180
|
navigator: [taroRuntimeBundlePath, 'navigator'],
|
|
@@ -191,7 +194,7 @@ function preBundle(combination) {
|
|
|
191
194
|
return reject(err || err2);
|
|
192
195
|
const { assets } = stats.toJson();
|
|
193
196
|
const remoteAssets = ((_a = assets === null || assets === void 0 ? void 0 : assets.filter(item => item.name !== 'runtime.js')) === null || _a === void 0 ? void 0 : _a.map(item => ({
|
|
194
|
-
name:
|
|
197
|
+
name: path_1.default.join('prebundle', item.name)
|
|
195
198
|
}))) || [];
|
|
196
199
|
resolve(remoteAssets);
|
|
197
200
|
});
|
|
@@ -202,7 +205,7 @@ function preBundle(combination) {
|
|
|
202
205
|
metadata.runtimeRequirements = new Set(preMetadata.runtimeRequirements);
|
|
203
206
|
metadata.remoteAssets = preMetadata.remoteAssets;
|
|
204
207
|
}
|
|
205
|
-
|
|
208
|
+
fs_extra_1.default.copy(remoteCacheDir, path_1.default.join(mainBuildOutput.path, 'prebundle'));
|
|
206
209
|
measure('Build remote lib-app duration', BUILD_LIB_START);
|
|
207
210
|
/**
|
|
208
211
|
* 4. 项目 Host 配置 Module Federation
|
|
@@ -216,17 +219,17 @@ function preBundle(combination) {
|
|
|
216
219
|
};
|
|
217
220
|
chain
|
|
218
221
|
.plugin('ModuleFederationPlugin')
|
|
219
|
-
.use(
|
|
222
|
+
.use(webpack_1.default.container.ModuleFederationPlugin, [mfOptions]);
|
|
220
223
|
chain
|
|
221
224
|
.plugin('TaroContainerReferencePlugin')
|
|
222
|
-
.use(
|
|
225
|
+
.use(path_1.default.resolve(__dirname, './webpack/TaroContainerReferencePlugin.js'), [
|
|
223
226
|
mfOptions,
|
|
224
227
|
deps,
|
|
225
228
|
metadata.remoteAssets,
|
|
226
229
|
metadata.runtimeRequirements
|
|
227
230
|
]);
|
|
228
231
|
if (!isUseCache) {
|
|
229
|
-
utils_1.commitMeta(appPath, metadataPath, metadata);
|
|
232
|
+
(0, utils_1.commitMeta)(appPath, metadataPath, metadata);
|
|
230
233
|
}
|
|
231
234
|
});
|
|
232
235
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prebundle/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prebundle/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,11 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
11
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
15
|
exports.scanImports = void 0;
|
|
13
|
-
const esbuild_1 = require("esbuild");
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
+
const esbuild_1 = __importDefault(require("esbuild"));
|
|
17
|
+
const path_1 = __importDefault(require("path"));
|
|
18
|
+
const fs_1 = __importDefault(require("fs"));
|
|
16
19
|
const utils_1 = require("./utils");
|
|
17
20
|
const constant_1 = require("./constant");
|
|
18
21
|
function scanImports({ entries, combination, include, exclude }) {
|
|
@@ -45,7 +48,7 @@ function scanImports({ entries, combination, include, exclude }) {
|
|
|
45
48
|
})));
|
|
46
49
|
// 有一些 Webpack loaders 添加的依赖没有办法提前分析出来
|
|
47
50
|
// 可以把它们写进 includes,然后在这里 resolve 后加入到 deps
|
|
48
|
-
const resolve = utils_1.getResolve();
|
|
51
|
+
const resolve = (0, utils_1.getResolve)();
|
|
49
52
|
yield Promise.all(includes.map((item) => __awaiter(this, void 0, void 0, function* () {
|
|
50
53
|
const resolvePath = yield resolve(appPath, item);
|
|
51
54
|
deps.set(item, resolvePath);
|
|
@@ -74,7 +77,7 @@ exports.scanImports = scanImports;
|
|
|
74
77
|
* => src => return
|
|
75
78
|
*/
|
|
76
79
|
function getScanImportsPlugin(deps, includes, excludes) {
|
|
77
|
-
const resolve = utils_1.getResolve();
|
|
80
|
+
const resolve = (0, utils_1.getResolve)();
|
|
78
81
|
// for storing vue <script> contents
|
|
79
82
|
const scripts = new Map();
|
|
80
83
|
return {
|
|
@@ -84,7 +87,7 @@ function getScanImportsPlugin(deps, includes, excludes) {
|
|
|
84
87
|
build.onResolve(({ filter: constant_1.assetsRE }), utils_1.externalModule);
|
|
85
88
|
// .vue
|
|
86
89
|
build.onLoad({ filter: /\.vue$/, namespace: 'vue' }, ({ path }) => {
|
|
87
|
-
let raw =
|
|
90
|
+
let raw = fs_1.default.readFileSync(path, 'utf-8');
|
|
88
91
|
raw = raw.replace(constant_1.commentRE, '<!---->');
|
|
89
92
|
const regex = constant_1.scriptRE;
|
|
90
93
|
regex.lastIndex = 0;
|
|
@@ -113,6 +116,10 @@ function getScanImportsPlugin(deps, includes, excludes) {
|
|
|
113
116
|
js += `export * from ${virtualModulePath}\n`;
|
|
114
117
|
}
|
|
115
118
|
}
|
|
119
|
+
// "export * from" syntax will not re'export "default", so we patch one.
|
|
120
|
+
if (!js.includes('export default')) {
|
|
121
|
+
js += 'export default {}';
|
|
122
|
+
}
|
|
116
123
|
return {
|
|
117
124
|
loader: 'js',
|
|
118
125
|
contents: js
|
|
@@ -129,25 +136,25 @@ function getScanImportsPlugin(deps, includes, excludes) {
|
|
|
129
136
|
});
|
|
130
137
|
// bare imports
|
|
131
138
|
build.onResolve({ filter: /^[\w@][^:]/ }, ({ path: id, importer }) => __awaiter(this, void 0, void 0, function* () {
|
|
132
|
-
if (utils_1.isExclude(id, excludes))
|
|
133
|
-
return utils_1.externalModule({ path: id });
|
|
139
|
+
if ((0, utils_1.isExclude)(id, excludes))
|
|
140
|
+
return (0, utils_1.externalModule)({ path: id });
|
|
134
141
|
if (deps.has(id))
|
|
135
|
-
return utils_1.externalModule({ path: id });
|
|
136
|
-
const resolvedPath = yield resolve(
|
|
142
|
+
return (0, utils_1.externalModule)({ path: id });
|
|
143
|
+
const resolvedPath = yield resolve(path_1.default.dirname(importer), id);
|
|
137
144
|
if (resolvedPath.includes('node_modules') || includes.includes(id)) {
|
|
138
|
-
if (utils_1.canBeOptimized(resolvedPath)) {
|
|
145
|
+
if ((0, utils_1.canBeOptimized)(resolvedPath)) {
|
|
139
146
|
deps.set(id, resolvedPath);
|
|
140
147
|
}
|
|
141
|
-
return utils_1.externalModule({ path: id });
|
|
148
|
+
return (0, utils_1.externalModule)({ path: id });
|
|
142
149
|
}
|
|
143
|
-
else if (utils_1.canBeScaned(resolvedPath)) {
|
|
150
|
+
else if ((0, utils_1.canBeScaned)(resolvedPath)) {
|
|
144
151
|
return {
|
|
145
152
|
path: resolvedPath,
|
|
146
153
|
namespace: 'vue'
|
|
147
154
|
};
|
|
148
155
|
}
|
|
149
156
|
else if (constant_1.assetsRE.test(resolvedPath)) {
|
|
150
|
-
utils_1.externalModule({ path: id });
|
|
157
|
+
(0, utils_1.externalModule)({ path: id });
|
|
151
158
|
}
|
|
152
159
|
else {
|
|
153
160
|
return {
|
|
@@ -157,8 +164,8 @@ function getScanImportsPlugin(deps, includes, excludes) {
|
|
|
157
164
|
}));
|
|
158
165
|
// catch all
|
|
159
166
|
build.onResolve({ filter: /.*/ }, ({ path: id, importer }) => __awaiter(this, void 0, void 0, function* () {
|
|
160
|
-
const resolvedPath = yield resolve(
|
|
161
|
-
const namespace = utils_1.canBeScaned(resolvedPath) ? 'vue' : undefined;
|
|
167
|
+
const resolvedPath = yield resolve(path_1.default.dirname(importer), id);
|
|
168
|
+
const namespace = (0, utils_1.canBeScaned)(resolvedPath) ? 'vue' : undefined;
|
|
162
169
|
return {
|
|
163
170
|
path: resolvedPath,
|
|
164
171
|
namespace
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scanImports.js","sourceRoot":"","sources":["../../src/prebundle/scanImports.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scanImports.js","sourceRoot":"","sources":["../../src/prebundle/scanImports.ts"],"names":[],"mappings":"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"}
|
package/dist/prebundle/utils.js
CHANGED
|
@@ -8,13 +8,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
11
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
15
|
exports.getMeasure = exports.getPrebunbleOptions = exports.commitMeta = exports.getMfHash = exports.formatDepsString = exports.getBundleHash = exports.getHash = exports.isExclude = exports.getDefines = exports.getCacheDir = exports.flattenId = exports.canBeScaned = exports.canBeOptimized = exports.externalModule = exports.getResolve = exports.createResolve = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
16
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
17
|
+
const path_1 = __importDefault(require("path"));
|
|
15
18
|
const crypto_1 = require("crypto");
|
|
16
19
|
const perf_hooks_1 = require("perf_hooks");
|
|
17
|
-
const
|
|
20
|
+
const enhanced_resolve_1 = __importDefault(require("enhanced-resolve"));
|
|
18
21
|
const shared_1 = require("@tarojs/shared");
|
|
19
22
|
const helper_1 = require("@tarojs/helper");
|
|
20
23
|
let resolve;
|
|
@@ -27,7 +30,7 @@ function createResolve(appPath, resolveOptions) {
|
|
|
27
30
|
exportsFields: ['exports'],
|
|
28
31
|
roots: appPath
|
|
29
32
|
};
|
|
30
|
-
const resolver =
|
|
33
|
+
const resolver = enhanced_resolve_1.default.create(Object.assign(Object.assign({}, defaultResolveOptions), resolveOptions));
|
|
31
34
|
resolve = function (importer, request) {
|
|
32
35
|
return new Promise((resolve, reject) => {
|
|
33
36
|
resolver({}, importer, request, {}, (err, resolvedPath) => {
|
|
@@ -63,7 +66,7 @@ function flattenId(id) {
|
|
|
63
66
|
}
|
|
64
67
|
exports.flattenId = flattenId;
|
|
65
68
|
function getCacheDir(appPath) {
|
|
66
|
-
return
|
|
69
|
+
return path_1.default.resolve(appPath, './node_modules/.taro');
|
|
67
70
|
}
|
|
68
71
|
exports.getCacheDir = getCacheDir;
|
|
69
72
|
function getDefines(combination) {
|
|
@@ -92,7 +95,7 @@ function isExclude(id, excludes) {
|
|
|
92
95
|
}
|
|
93
96
|
exports.isExclude = isExclude;
|
|
94
97
|
function getHash(content) {
|
|
95
|
-
return crypto_1.createHash('sha256').update(content).digest('hex').substring(0, 8);
|
|
98
|
+
return (0, crypto_1.createHash)('sha256').update(content).digest('hex').substring(0, 8);
|
|
96
99
|
}
|
|
97
100
|
exports.getHash = getHash;
|
|
98
101
|
function getBundleHash(deps, combination, cacheDir) {
|
|
@@ -102,7 +105,7 @@ function getBundleHash(deps, combination, cacheDir) {
|
|
|
102
105
|
const lockfiles = ['package-lock.json', 'yarn.lock', 'pnpm-lock.yaml'];
|
|
103
106
|
const lockfilesContents = yield Promise.all(lockfiles.map(item => {
|
|
104
107
|
return new Promise(resolve => {
|
|
105
|
-
|
|
108
|
+
fs_extra_1.default.readFile(path_1.default.join(appPath, item))
|
|
106
109
|
.then(content => resolve(content.toString()))
|
|
107
110
|
.catch(() => resolve(''));
|
|
108
111
|
});
|
|
@@ -127,14 +130,14 @@ exports.getMfHash = getMfHash;
|
|
|
127
130
|
function commitMeta(appPath, metadataPath, metadata) {
|
|
128
131
|
return __awaiter(this, void 0, void 0, function* () {
|
|
129
132
|
// Todo: 改为相对路径
|
|
130
|
-
yield
|
|
133
|
+
yield fs_extra_1.default.writeJSON(metadataPath, metadata, {
|
|
131
134
|
spaces: 2,
|
|
132
135
|
replacer(key, value) {
|
|
133
136
|
if (value instanceof Set) {
|
|
134
137
|
return Array.from(value);
|
|
135
138
|
}
|
|
136
139
|
if (key === 'taroRuntimeBundlePath') {
|
|
137
|
-
return
|
|
140
|
+
return path_1.default.relative(appPath, value);
|
|
138
141
|
}
|
|
139
142
|
return value;
|
|
140
143
|
}
|
|
@@ -151,8 +154,8 @@ function getPrebunbleOptions(combination) {
|
|
|
151
154
|
include: [],
|
|
152
155
|
exclude: []
|
|
153
156
|
};
|
|
154
|
-
if (shared_1.isObject(config.compiler)) {
|
|
155
|
-
return helper_1.recursiveMerge({}, defaultOptions, config.compiler.prebundle);
|
|
157
|
+
if ((0, shared_1.isObject)(config.compiler)) {
|
|
158
|
+
return (0, helper_1.recursiveMerge)({}, defaultOptions, config.compiler.prebundle);
|
|
156
159
|
}
|
|
157
160
|
return defaultOptions;
|
|
158
161
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/prebundle/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/prebundle/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
/**
|
|
4
7
|
* Modify from https://github.com/webpack/webpack/blob/main/lib/container/ContainerEntryModule.js
|
|
5
8
|
* MIT License http://www.opensource.org/licenses/mit-license.php
|
|
6
9
|
* Author Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy, Marais Rossouw @maraisr
|
|
7
10
|
*/
|
|
8
|
-
const webpack_1 = require("webpack");
|
|
11
|
+
const webpack_1 = __importDefault(require("webpack"));
|
|
9
12
|
const ContainerEntryModule = require('webpack/lib/container/ContainerEntryModule');
|
|
10
13
|
const RuntimeGlobals = require('webpack/lib/RuntimeGlobals');
|
|
11
14
|
const Template = require('webpack/lib/Template');
|
|
@@ -62,7 +65,7 @@ class TaroContainerEntryModule extends ContainerEntryModule {
|
|
|
62
65
|
}
|
|
63
66
|
}
|
|
64
67
|
exports.default = TaroContainerEntryModule;
|
|
65
|
-
webpack_1.util.serialization.register(TaroContainerEntryModule, '@tarojs/webpack5-runner/dist/prebundle/TaroContainerEntryModule', 'TaroContainerEntryModule', {
|
|
68
|
+
webpack_1.default.util.serialization.register(TaroContainerEntryModule, '@tarojs/webpack5-runner/dist/prebundle/TaroContainerEntryModule', 'TaroContainerEntryModule', {
|
|
66
69
|
serialize(obj, context) {
|
|
67
70
|
obj.serialize(context);
|
|
68
71
|
},
|