@tarojs/webpack5-runner 4.2.1 → 4.2.2-alpha.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 (51) hide show
  1. package/dist/index.mini.js +15 -4
  2. package/dist/index.mini.js.map +1 -1
  3. package/dist/plugins/AsyncSubPackagePlugin.js +489 -0
  4. package/dist/plugins/AsyncSubPackagePlugin.js.map +1 -0
  5. package/dist/plugins/BuildNativePlugin.js +22 -11
  6. package/dist/plugins/BuildNativePlugin.js.map +1 -1
  7. package/dist/plugins/HarmonyPlugin.js +1 -1
  8. package/dist/plugins/HarmonyPlugin.js.map +1 -1
  9. package/dist/plugins/MiniCompileModePlugin.js +49 -4
  10. package/dist/plugins/MiniCompileModePlugin.js.map +1 -1
  11. package/dist/plugins/MiniPlugin.js +282 -58
  12. package/dist/plugins/MiniPlugin.js.map +1 -1
  13. package/dist/plugins/SubPackageIndiePlugin.js +1060 -0
  14. package/dist/plugins/SubPackageIndiePlugin.js.map +1 -0
  15. package/dist/plugins/TaroInjectSyncCorePlugin.js +39 -0
  16. package/dist/plugins/TaroInjectSyncCorePlugin.js.map +1 -0
  17. package/dist/plugins/TaroNormalModule.js +16 -0
  18. package/dist/plugins/TaroNormalModule.js.map +1 -1
  19. package/dist/plugins/TaroNormalModulesPlugin.js +127 -6
  20. package/dist/plugins/TaroNormalModulesPlugin.js.map +1 -1
  21. package/dist/plugins/TaroSingleEntryPlugin.js +1 -1
  22. package/dist/plugins/TaroSingleEntryPlugin.js.map +1 -1
  23. package/dist/shared-runtime/app-shim.js +305 -0
  24. package/dist/shared-runtime/async-provider.js +144 -0
  25. package/dist/shared-runtime/build-shared-runtime.js +377 -0
  26. package/dist/shared-runtime/build-shared-runtime.js.map +1 -0
  27. package/dist/shared-runtime/constants.js +50 -0
  28. package/dist/shared-runtime/constants.js.map +1 -0
  29. package/dist/shared-runtime/entry.sync.js +102 -0
  30. package/dist/shared-runtime/externals.js +96 -0
  31. package/dist/shared-runtime/externals.js.map +1 -0
  32. package/dist/shared-runtime/scan-imperative-api.js +267 -0
  33. package/dist/shared-runtime/scan-imperative-api.js.map +1 -0
  34. package/dist/template/comp.js +2 -1
  35. package/dist/utils/asyncSubPackage.js +106 -0
  36. package/dist/utils/asyncSubPackage.js.map +1 -0
  37. package/dist/utils/component.js +2 -1
  38. package/dist/utils/component.js.map +1 -1
  39. package/dist/utils/forceCustomWrapper.js +17 -0
  40. package/dist/utils/forceCustomWrapper.js.map +1 -0
  41. package/dist/utils/webpack.js +40 -1
  42. package/dist/utils/webpack.js.map +1 -1
  43. package/dist/webpack/HarmonyWebpackPlugin.js +3 -1
  44. package/dist/webpack/HarmonyWebpackPlugin.js.map +1 -1
  45. package/dist/webpack/MiniBaseConfig.js +2 -0
  46. package/dist/webpack/MiniBaseConfig.js.map +1 -1
  47. package/dist/webpack/MiniCombination.js +51 -26
  48. package/dist/webpack/MiniCombination.js.map +1 -1
  49. package/dist/webpack/MiniWebpackPlugin.js +17 -1
  50. package/dist/webpack/MiniWebpackPlugin.js.map +1 -1
  51. package/package.json +14 -13
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.computeMissingRuntimes = exports.shouldShareExternal = exports.ALL_REACT_MEMBERS = exports.ASYNC_REACT_MEMBERS = exports.SYNC_REACT_MEMBERS = exports.REG_SHARED_REACT = void 0;
4
+ const helper_1 = require("@tarojs/helper");
5
+ const constants_1 = require("./constants");
6
+ /**
7
+ * 共享运行时(split 模式)需 external 到共享全局的 React 全家桶。
8
+ * 这四个包 React 单例敏感、版本错配会真出错,必须共享同一实例:
9
+ * react 本体/jsx-runtime 在同步核,react-dom/react-reconciler/scheduler 在异步核,
10
+ * 但对业务包而言都 external 到同一个全局对象,由运行时核在加载时注册齐全。
11
+ */
12
+ exports.REG_SHARED_REACT = /^(react|react-dom|react-reconciler|scheduler)(\/|$)/;
13
+ /**
14
+ * React 全家桶各成员在共享运行时中的分工——单一真理源,所有 runner 侧引用都从这里取。
15
+ *
16
+ * SYNC_REACT_MEMBERS:随同步核打包并 share() 到全局。
17
+ * 业务 app.js 顶层 `class App extends React.Component` 需 react 本体同步就位;
18
+ * dev 构建启用自动 JSX runtime 时需 react/jsx-dev-runtime 同步就位。
19
+ *
20
+ * ASYNC_REACT_MEMBERS:随异步核 provider 打包并 share() 到全局。
21
+ * 业务包 external 了这两个,真身在异步核内,须显式挂全局,否则 require 拿到 undefined。
22
+ *
23
+ * 注:entry.sync.js 是手写 .js 模板由 webpack 打包,`require(...)` 的 arg 必须是字面量
24
+ * 才能被静态分析——无法用宏展开成动态数组遍历。故 entry.sync.js 里 react/jsx-runtime/
25
+ * jsx-dev-runtime 的 require 仍是字面量;改动本清单时必须同步 entry.sync.js。
26
+ */
27
+ exports.SYNC_REACT_MEMBERS = ['react', 'react/jsx-runtime', 'react/jsx-dev-runtime'];
28
+ exports.ASYNC_REACT_MEMBERS = ['react-reconciler', 'scheduler'];
29
+ /** React 全家桶所有需注册到共享全局的 key(同步 + 异步),用于 provider 的 reverseExternals 构造 */
30
+ exports.ALL_REACT_MEMBERS = [...exports.SYNC_REACT_MEMBERS, ...exports.ASYNC_REACT_MEMBERS, 'react-dom'];
31
+ /**
32
+ * 判断一个模块请求是否应被 external 到共享运行时全局(共享运行时(split 模式))。
33
+ * @param request 裸模块请求名,如 'react'、'@tarojs/runtime'
34
+ * @param extraPackages 接入方声明的额外共享包(config.mini.sharedRuntimeExtraPackages)
35
+ */
36
+ function shouldShareExternal(request, extraPackages = []) {
37
+ if (!request)
38
+ return false;
39
+ // 只处理裸模块请求:排除内联 loader(!)、query(?)、相对/绝对路径
40
+ if (/[!?]/.test(request) || request.startsWith('.') || request.startsWith('/'))
41
+ return false;
42
+ // @tarojs/taro-loader 是编译期 loader,不能 external
43
+ if (request.startsWith('@tarojs/taro-loader'))
44
+ return false;
45
+ // @tarojs/components 不能 external:Taro 的 base.wxml 模板收集依赖组件在编译模块图中可见,
46
+ // external 后模板生成器扫不到组件使用会漏生成模板(如 Button 的 tmpl_0_14)。
47
+ // 且组件本身是 'view'/'button' 字符串常量,体积极小,各业务包自带无成本。
48
+ if (request === helper_1.taroJsComponents || request.startsWith(`${helper_1.taroJsComponents}/`))
49
+ return false;
50
+ // 接入方声明的额外共享包(CLI 不认识具体包名,由 config.mini.sharedRuntimeExtraPackages 传入)
51
+ if (extraPackages.some((p) => request === p || request.startsWith(`${p}/`)))
52
+ return true;
53
+ return helper_1.REG_TARO_SCOPED_PACKAGE.test(request) || exports.REG_SHARED_REACT.test(request);
54
+ }
55
+ exports.shouldShareExternal = shouldShareExternal;
56
+ /**
57
+ * 计算「被主构建 external 到共享全局、却没有任何运行时核注册」的漏网 runtime。
58
+ *
59
+ * 背景:平台插件(@tarojs/plugin-html / plugin-inject / plugin-http / *-devtools 等)通过
60
+ * `platform.runtimePath.push(...)` 往 runtimePath 追加自己的 side-effect runtime(如 plugin-html
61
+ * 的 `hooks.tap('modifyHydrateData')` 把 <i> 等 HTML 标签 nodeName 映射成 view/text)。taro-loader
62
+ * 把 runtimePath 每项生成 `import '<path>'` 注入业务 app.js。共享运行时下这些 @tarojs/* 被
63
+ * shouldShareExternal 无差别 external 成读全局,但同步核/异步核只注册了固定清单(见
64
+ * SYNC_CORE_REGISTERED_RUNTIMES + async-provider),漏掉这些插件 runtime → 业务包读到 undefined
65
+ * → hook 从未注册 → 出现 `Template tmpl_0_i not found` 等运行时症状。
66
+ *
67
+ * 本函数挑出这批漏网模块,交给 build-shared-runtime 作为同步核的额外入口一并打包执行,使其
68
+ * hooks.tap 在同步核内(与模板消费方同一 @tarojs/shared 单例)就位。不硬编码任何插件名。
69
+ *
70
+ * @param runtimePath combination.config.runtimePath(插件追加后的完整值,string | string[])
71
+ * @param extraPackages config.mini.sharedRuntimeExtraPackages(已被异步核显式接管,需排除)
72
+ * @param syncExtraPackages config.mini.sharedRuntimeSyncExtraPackages(已被同步核显式接管,需排除)
73
+ */
74
+ function computeMissingRuntimes(runtimePath, extraPackages = [], syncExtraPackages = []) {
75
+ const list = (Array.isArray(runtimePath) ? runtimePath : [runtimePath])
76
+ .filter((p) => typeof p === 'string' && p.length > 0)
77
+ // 剥离 taro-loader 的 post: 前缀(其语义是业务 app.js import 排序,与同步核内执行序无关)
78
+ .map((p) => p.replace(constants_1.REG_POST, ''));
79
+ const registered = new Set(constants_1.SYNC_CORE_REGISTERED_RUNTIMES);
80
+ const claimed = new Set([...extraPackages, ...syncExtraPackages]);
81
+ const seen = new Set();
82
+ const result = [];
83
+ for (const p of list) {
84
+ if (seen.has(p))
85
+ continue;
86
+ seen.add(p);
87
+ // 只挑「会被主构建 external 的 @tarojs/*」(=运行时核需负责提供的),排除平台 runtime(已注册)
88
+ // 与已被 extra/syncExtra 显式接管的,剩下的即漏网。
89
+ if (shouldShareExternal(p, [...extraPackages, ...syncExtraPackages]) && !registered.has(p) && !claimed.has(p)) {
90
+ result.push(p);
91
+ }
92
+ }
93
+ return result;
94
+ }
95
+ exports.computeMissingRuntimes = computeMissingRuntimes;
96
+ //# sourceMappingURL=externals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"externals.js","sourceRoot":"","sources":["../../src/shared-runtime/externals.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,267 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.warnTopLevelImperativeApi = exports.scanCode = exports.findTaroBindings = void 0;
27
+ const path = __importStar(require("node:path"));
28
+ const helper_1 = require("@tarojs/helper");
29
+ /**
30
+ * 共享运行时(split 模式) 编译期告警:扫描业务源码中【模块顶层作用域】的 Taro 命令式 API 同步调用。
31
+ *
32
+ * 背景:split 模式下 @tarojs/taro 命令式 API 在异步核,模块顶层(早于异步核到位)同步调用会拿到
33
+ * 占位 Proxy(告警 + 空操作)而非真身。运行时 Proxy 只在代码被执行到时告警,藏在少走分支里的顶层
34
+ * 调用可能线上才暴露。此扫描把风险提前到编译期,仅告警、不阻断。
35
+ *
36
+ * 判定(粗筛,宁可漏报不误报):逐行剥离字符串/注释后,只看【顶层缩进(花括号深度为 0)】的行。
37
+ * 覆盖两类导入形态(修正早期只认默认导入的漏报):
38
+ * - 命名空间/默认导入:`import Taro from '@tarojs/taro'` / `const Taro = require('@tarojs/taro')`
39
+ * → 顶层出现 `Taro.method(` 且 method 非 hooks(use 开头)时告警。
40
+ * - 具名导入(含别名):`import { showToast, getSystemInfoSync as g } from '@tarojs/taro'`
41
+ * / `const { showToast } = require('@tarojs/taro')`
42
+ * → 顶层出现 `showToast(` / `g(` 这类裸调用且非 hooks 时告警。
43
+ * 函数体/组件体内(深度>0)不报。
44
+ */
45
+ const HOOK_PREFIX = /^use[A-Z]/;
46
+ // 匹配 `标识符.方法(`(含可选链 ?.),捕获 [对象名, 方法名]
47
+ const MEMBER_CALL_RE = /\b([A-Za-z_$][\w$]*)\s*\??\.\s*([A-Za-z_$][\w$]*)\s*\??\.?\s*\(/g;
48
+ // 匹配裸函数调用 `标识符(`(用于具名导入的直接调用),捕获 [函数名]
49
+ const BARE_CALL_RE = /(?:^|[^.\w$])([A-Za-z_$][\w$]*)\s*\??\.?\s*\(/g;
50
+ /**
51
+ * 判定同行 match 位置之前是否处于"延迟执行"上下文。
52
+ * 覆盖顶层但**不在导入时立即执行**的常见写法(避免噪声告警侵蚀信任):
53
+ * const f = () => Taro.showToast() // 箭头函数体
54
+ * const f = () => { showToast() } // 单行箭头体
55
+ * const f = function() { Taro.x() } // 函数表达式体
56
+ * Taro.x(() => Taro.y()) // 外层立即、内层延迟(逐 match 判定)
57
+ * 只要 match 之前同行出现 `=>` 或 `function` 关键字,即认为在延迟上下文,跳过。
58
+ */
59
+ function isDeferredContext(prefix) {
60
+ if (prefix.includes('=>'))
61
+ return true;
62
+ if (/\bfunction\b/.test(prefix))
63
+ return true;
64
+ return false;
65
+ }
66
+ /**
67
+ * 解析文件里对 @tarojs/taro 的各种导入形态,收集命名空间名与具名本地名。
68
+ * 覆盖:ESM 默认/命名空间/具名(含 as 别名)、CJS require 默认/解构(含 : 重命名)。
69
+ */
70
+ function findTaroBindings(code) {
71
+ const namespaces = new Set();
72
+ const named = new Set();
73
+ // import ... from '@tarojs/taro'
74
+ const reImport = /import\s+([^'"]+?)\s+from\s*['"]@tarojs\/taro['"]/g;
75
+ let m;
76
+ while ((m = reImport.exec(code))) {
77
+ parseImportClause(m[1], namespaces, named);
78
+ }
79
+ // const/let/var X = require('@tarojs/taro') | const { a, b: c } = require('@tarojs/taro')
80
+ const reRequire = /(?:const|let|var)\s+(\{[^}]*\}|[A-Za-z_$][\w$]*)\s*=\s*require\(\s*['"]@tarojs\/taro['"]\s*\)/g;
81
+ while ((m = reRequire.exec(code))) {
82
+ const binding = m[1].trim();
83
+ if (binding.startsWith('{')) {
84
+ parseNamedList(binding.slice(1, -1), named);
85
+ }
86
+ else {
87
+ namespaces.add(binding);
88
+ }
89
+ }
90
+ return { namespaces, named };
91
+ }
92
+ exports.findTaroBindings = findTaroBindings;
93
+ /** 解析 import 子句:`Taro` / `Taro, { a, b as c }` / `{ a, b as c }` / `* as Taro` */
94
+ function parseImportClause(clause, namespaces, named) {
95
+ clause = clause.trim();
96
+ // 具名部分 { ... }
97
+ const braceMatch = clause.match(/\{([^}]*)\}/);
98
+ if (braceMatch) {
99
+ parseNamedList(braceMatch[1], named);
100
+ }
101
+ // 去掉具名部分后的剩余:默认名 / * as name
102
+ const rest = clause.replace(/\{[^}]*\}/, '').replace(/,/g, ' ').trim();
103
+ const nsAs = rest.match(/\*\s+as\s+([A-Za-z_$][\w$]*)/);
104
+ if (nsAs) {
105
+ namespaces.add(nsAs[1]);
106
+ }
107
+ else if (rest) {
108
+ const def = rest.match(/^([A-Za-z_$][\w$]*)/);
109
+ if (def)
110
+ namespaces.add(def[1]);
111
+ }
112
+ }
113
+ /** 解析具名列表 `a, b as c, d: e`,取本地名(as/: 后的名字,否则原名) */
114
+ function parseNamedList(list, named) {
115
+ list.split(',').forEach((item) => {
116
+ const seg = item.trim();
117
+ if (!seg)
118
+ return;
119
+ const asMatch = seg.match(/(?:\bas\b|:)\s*([A-Za-z_$][\w$]*)/);
120
+ if (asMatch) {
121
+ named.add(asMatch[1]);
122
+ }
123
+ else {
124
+ const name = seg.match(/^([A-Za-z_$][\w$]*)/);
125
+ if (name)
126
+ named.add(name[1]);
127
+ }
128
+ });
129
+ }
130
+ /** 极简剥离:块注释外的行注释、字符串字面量替换为空白,降低误报。不追求完备。 */
131
+ function stripNoise(line) {
132
+ let s = line.replace(/\/\/.*$/, '');
133
+ s = s.replace(/(['"`])(?:\\.|(?!\1).)*\1/g, '""');
134
+ return s;
135
+ }
136
+ function scanCode(code, filePath = '<inline>') {
137
+ const hits = [];
138
+ if (!/@tarojs\/taro/.test(code))
139
+ return hits;
140
+ const { namespaces, named } = findTaroBindings(code);
141
+ if (!namespaces.size && !named.size)
142
+ return hits;
143
+ const lines = code.split('\n');
144
+ let depth = 0; // 花括号深度;0 = 模块顶层
145
+ let inBlockComment = false;
146
+ for (let i = 0; i < lines.length; i++) {
147
+ let raw = lines[i];
148
+ if (inBlockComment) {
149
+ const end = raw.indexOf('*/');
150
+ if (end === -1)
151
+ continue;
152
+ raw = raw.slice(end + 2);
153
+ inBlockComment = false;
154
+ }
155
+ const bcStart = raw.indexOf('/*');
156
+ if (bcStart !== -1 && raw.indexOf('*/', bcStart) === -1) {
157
+ raw = raw.slice(0, bcStart);
158
+ inBlockComment = true;
159
+ }
160
+ const line = stripNoise(raw);
161
+ if (depth === 0) {
162
+ // 成员调用:namespaces 名下的 .method()
163
+ MEMBER_CALL_RE.lastIndex = 0;
164
+ let cm;
165
+ while ((cm = MEMBER_CALL_RE.exec(line))) {
166
+ const obj = cm[1];
167
+ const method = cm[2];
168
+ if (namespaces.has(obj) && !HOOK_PREFIX.test(method)) {
169
+ // 跳过延迟上下文(顶层箭头/函数体内):`const f = () => Taro.showToast()` 不该报
170
+ if (isDeferredContext(line.slice(0, cm.index)))
171
+ continue;
172
+ hits.push({ file: filePath, line: i + 1, code: raw.trim(), api: `${obj}.${method}` });
173
+ }
174
+ }
175
+ // 裸调用:具名导入的本地名直接调用
176
+ if (named.size) {
177
+ BARE_CALL_RE.lastIndex = 0;
178
+ let bm;
179
+ while ((bm = BARE_CALL_RE.exec(line))) {
180
+ const fn = bm[1];
181
+ if (named.has(fn) && !HOOK_PREFIX.test(fn)) {
182
+ if (isDeferredContext(line.slice(0, bm.index)))
183
+ continue;
184
+ hits.push({ file: filePath, line: i + 1, code: raw.trim(), api: fn });
185
+ }
186
+ }
187
+ }
188
+ }
189
+ for (let c = 0; c < line.length; c++) {
190
+ if (line[c] === '{')
191
+ depth++;
192
+ else if (line[c] === '}')
193
+ depth = Math.max(0, depth - 1);
194
+ }
195
+ }
196
+ return hits;
197
+ }
198
+ exports.scanCode = scanCode;
199
+ function scanFile(filePath) {
200
+ let code;
201
+ try {
202
+ code = helper_1.fs.readFileSync(filePath, 'utf-8');
203
+ }
204
+ catch (_a) {
205
+ return [];
206
+ }
207
+ return scanCode(code, filePath);
208
+ }
209
+ function walk(dir, exts, acc, depth = 0) {
210
+ // 深度上限:防符号链接环路导致栈溢出
211
+ if (depth > 32)
212
+ return;
213
+ let entries;
214
+ try {
215
+ entries = helper_1.fs.readdirSync(dir);
216
+ }
217
+ catch (_a) {
218
+ return;
219
+ }
220
+ for (const name of entries) {
221
+ if (name === 'node_modules' || name.startsWith('.'))
222
+ continue;
223
+ const full = path.join(dir, name);
224
+ let stat;
225
+ try {
226
+ stat = helper_1.fs.statSync(full);
227
+ }
228
+ catch (_b) {
229
+ continue;
230
+ }
231
+ if (stat.isDirectory())
232
+ walk(full, exts, acc, depth + 1);
233
+ else if (exts.some((e) => name.endsWith(e)))
234
+ acc.push(full);
235
+ }
236
+ }
237
+ /**
238
+ * 扫描 sourceDir 并打印告警。仅在 sharedRuntime split 模式下由 index.mini 调用。
239
+ * 顶层 try/catch 兜底:扫描仅告警不阻断,任何异常都吞掉,不影响主构建。
240
+ * @returns 命中数
241
+ */
242
+ function warnTopLevelImperativeApi(sourceDir) {
243
+ try {
244
+ if (!sourceDir || !helper_1.fs.existsSync(sourceDir))
245
+ return 0;
246
+ const files = [];
247
+ walk(sourceDir, ['.js', '.jsx', '.ts', '.tsx'], files);
248
+ const allHits = [];
249
+ for (const f of files)
250
+ allHits.push(...scanFile(f));
251
+ if (!allHits.length)
252
+ return 0;
253
+ const lines = allHits.map((h) => {
254
+ const rel = path.relative(sourceDir, h.file);
255
+ return ` ${rel}:${h.line} ${h.api} → ${h.code}`;
256
+ });
257
+ console.warn('\n[taro-shared][shared-runtime] 检测到【模块顶层】同步调用 Taro 命令式 API,' +
258
+ '运行时核加载完成前调用会告警/静默失效。请挪到组件函数体内 / useReady / useEffect / 事件回调,' +
259
+ '或改用异步版 API:\n' + lines.join('\n') + '\n');
260
+ return allHits.length;
261
+ }
262
+ catch (_a) {
263
+ return 0;
264
+ }
265
+ }
266
+ exports.warnTopLevelImperativeApi = warnTopLevelImperativeApi;
267
+ //# sourceMappingURL=scan-imperative-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan-imperative-api.js","sourceRoot":"","sources":["../../src/shared-runtime/scan-imperative-api.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  /* eslint-disable no-undef */
2
2
  import { createRecursiveComponentConfig } from '@tarojs/runtime'
3
+
3
4
  // @ts-ignore
4
- Component(createRecursiveComponentConfig())
5
+ Component(createRecursiveComponentConfig(undefined, TARO_FORCE_CUSTOM_WRAPPER))
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createAsyncCommonChunkName = exports.getSingleAsyncRootForModules = exports.getAsyncRootForModule = exports.getSourceRootForResource = exports.normalizePathForAsyncSubPackage = exports.getAsyncRootAssetNames = void 0;
4
+ function getAsyncRootAssetNames(assets, asyncRoot) {
5
+ return Object.keys(assets).filter(name => name.startsWith(`${asyncRoot}/`) && name.endsWith('.js'));
6
+ }
7
+ exports.getAsyncRootAssetNames = getAsyncRootAssetNames;
8
+ function normalizePathForAsyncSubPackage(value) {
9
+ return value.replace(/\\/g, '/');
10
+ }
11
+ exports.normalizePathForAsyncSubPackage = normalizePathForAsyncSubPackage;
12
+ function getSourceRootForResource(resource, sourceDir, asyncRootMap) {
13
+ if (!resource)
14
+ return null;
15
+ const normalizedResource = normalizePathForAsyncSubPackage(resource);
16
+ const normalizedSourceDir = normalizePathForAsyncSubPackage(sourceDir).replace(/\/$/, '');
17
+ let relativeResource = normalizedResource;
18
+ if (normalizedResource.startsWith(`${normalizedSourceDir}/`)) {
19
+ relativeResource = normalizedResource.slice(normalizedSourceDir.length + 1);
20
+ }
21
+ const sourceRoots = Array.from(asyncRootMap.keys()).sort((a, b) => b.length - a.length);
22
+ for (const sourceRoot of sourceRoots) {
23
+ const normalizedSourceRoot = normalizePathForAsyncSubPackage(sourceRoot);
24
+ if (relativeResource === normalizedSourceRoot || relativeResource.startsWith(`${normalizedSourceRoot}/`) || relativeResource.startsWith(`${normalizedSourceRoot}.`)) {
25
+ return sourceRoot;
26
+ }
27
+ }
28
+ return null;
29
+ }
30
+ exports.getSourceRootForResource = getSourceRootForResource;
31
+ function getAsyncRootForModule(module, sourceDir, asyncRootMap, moduleGraph, visited = new Set(), cache) {
32
+ var _a, _b, _c;
33
+ if (!module || visited.has(module))
34
+ return undefined;
35
+ if (cache === null || cache === void 0 ? void 0 : cache.has(module))
36
+ return cache.get(module);
37
+ visited.add(module);
38
+ const resource = module.resource || ((_a = module.nameForCondition) === null || _a === void 0 ? void 0 : _a.call(module));
39
+ const normalizedSourceDir = normalizePathForAsyncSubPackage(sourceDir).replace(/\/$/, '');
40
+ const normalizedResource = resource ? normalizePathForAsyncSubPackage(resource) : '';
41
+ const isProjectSource = normalizedResource.startsWith(`${normalizedSourceDir}/`);
42
+ const sourceRoot = getSourceRootForResource(resource, sourceDir, asyncRootMap);
43
+ if (sourceRoot) {
44
+ const asyncRoot = asyncRootMap.get(sourceRoot);
45
+ cache === null || cache === void 0 ? void 0 : cache.set(module, asyncRoot);
46
+ return asyncRoot;
47
+ }
48
+ const asyncRoots = new Set();
49
+ let hasBlockingProjectIssuer = false;
50
+ const issuerModules = new Set();
51
+ const incomingConnections = (_b = moduleGraph === null || moduleGraph === void 0 ? void 0 : moduleGraph.getIncomingConnections) === null || _b === void 0 ? void 0 : _b.call(moduleGraph, module);
52
+ if (incomingConnections) {
53
+ for (const connection of incomingConnections) {
54
+ if (connection === null || connection === void 0 ? void 0 : connection.originModule)
55
+ issuerModules.add(connection.originModule);
56
+ }
57
+ }
58
+ const issuer = (_c = moduleGraph === null || moduleGraph === void 0 ? void 0 : moduleGraph.getIssuer) === null || _c === void 0 ? void 0 : _c.call(moduleGraph, module);
59
+ if (issuer)
60
+ issuerModules.add(issuer);
61
+ for (const issuerModule of issuerModules) {
62
+ const asyncRoot = getAsyncRootForModule(issuerModule, sourceDir, asyncRootMap, moduleGraph, new Set(visited), cache);
63
+ if (asyncRoot === null) {
64
+ hasBlockingProjectIssuer = true;
65
+ }
66
+ else if (asyncRoot) {
67
+ asyncRoots.add(asyncRoot);
68
+ }
69
+ }
70
+ let result;
71
+ if (hasBlockingProjectIssuer || asyncRoots.size > 1) {
72
+ result = null;
73
+ }
74
+ else if (asyncRoots.size === 1) {
75
+ result = Array.from(asyncRoots)[0];
76
+ }
77
+ else {
78
+ result = isProjectSource ? null : undefined;
79
+ }
80
+ cache === null || cache === void 0 ? void 0 : cache.set(module, result);
81
+ return result;
82
+ }
83
+ exports.getAsyncRootForModule = getAsyncRootForModule;
84
+ function getSingleAsyncRootForModules(modules, sourceDir, asyncRootMap, moduleGraph, cache) {
85
+ const asyncRoots = new Set();
86
+ for (const module of modules) {
87
+ const asyncRoot = getAsyncRootForModule(module, sourceDir, asyncRootMap, moduleGraph, undefined, cache);
88
+ if (asyncRoot === null)
89
+ return null;
90
+ if (asyncRoot) {
91
+ asyncRoots.add(asyncRoot);
92
+ if (asyncRoots.size > 1)
93
+ return null;
94
+ }
95
+ }
96
+ if (asyncRoots.size !== 1)
97
+ return null;
98
+ return Array.from(asyncRoots)[0];
99
+ }
100
+ exports.getSingleAsyncRootForModules = getSingleAsyncRootForModules;
101
+ function createAsyncCommonChunkName(asyncRoot, chunkName) {
102
+ const safeChunkName = (chunkName || 'common').replace(/[^a-zA-Z0-9_/-]/g, '_').replace(/\//g, '_');
103
+ return `${asyncRoot}/async-${safeChunkName}`;
104
+ }
105
+ exports.createAsyncCommonChunkName = createAsyncCommonChunkName;
106
+ //# sourceMappingURL=asyncSubPackage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asyncSubPackage.js","sourceRoot":"","sources":["../../src/utils/asyncSubPackage.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,8 @@ exports.componentConfig = {
5
5
  includes: new Set(['view', 'catch-view', 'static-view', 'pure-view', 'click-view', 'scroll-view', 'image', 'static-image', 'text', 'static-text']),
6
6
  exclude: new Set(),
7
7
  thirdPartyComponents: new Map(),
8
- includeAll: false
8
+ includeAll: false,
9
+ scopedIncludes: new Map()
9
10
  };
10
11
  // 用户 cache 功能开启时,记录 parser 过程中的组件信息
11
12
  exports.elementNameSet = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/utils/component.ts"],"names":[],"mappings":";;;AAEa,QAAA,eAAe,GAAqB;IAC/C,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IAClJ,OAAO,EAAE,IAAI,GAAG,EAAE;IAClB,oBAAoB,EAAE,IAAI,GAAG,EAAE;IAC/B,UAAU,EAAE,KAAK;CAClB,CAAA;AAED,oCAAoC;AACvB,QAAA,cAAc,GAAG,IAAI,GAAG,EAAE,CAAA;AAC1B,QAAA,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAA"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/utils/component.ts"],"names":[],"mappings":";;;AAEa,QAAA,eAAe,GAAqB;IAC/C,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IAClJ,OAAO,EAAE,IAAI,GAAG,EAAE;IAClB,oBAAoB,EAAE,IAAI,GAAG,EAAE;IAC/B,UAAU,EAAE,KAAK;IACjB,cAAc,EAAE,IAAI,GAAG,EAAE;CAC1B,CAAA;AAED,oCAAoC;AACvB,QAAA,cAAc,GAAG,IAAI,GAAG,EAAE,CAAA;AAC1B,QAAA,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.computeForceCustomWrapperForIndependentPackage = void 0;
4
+ function computeForceCustomWrapperForIndependentPackage(pagePaths, pages, filesConfig, getConfigFilePath) {
5
+ var _a;
6
+ const inPkg = new Set(pagePaths);
7
+ for (const page of pages) {
8
+ if (!inPkg.has(page.path) || page.isNative)
9
+ continue;
10
+ const content = (_a = filesConfig[getConfigFilePath(page.name)]) === null || _a === void 0 ? void 0 : _a.content;
11
+ if (content === null || content === void 0 ? void 0 : content.forceCustomWrapper)
12
+ return true;
13
+ }
14
+ return false;
15
+ }
16
+ exports.computeForceCustomWrapperForIndependentPackage = computeForceCustomWrapperForIndependentPackage;
17
+ //# sourceMappingURL=forceCustomWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forceCustomWrapper.js","sourceRoot":"","sources":["../../src/utils/forceCustomWrapper.ts"],"names":[],"mappings":";;;AAEA,SAAgB,8CAA8C,CAC5D,SAAmB,EACnB,KAAmE,EACnE,WAA6B,EAC7B,iBAA+C;;IAE/C,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAA;IAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;YAAE,SAAQ;QACpD,MAAM,OAAO,GAAG,MAAA,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,0CAAE,OAAuD,CAAA;QAClH,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,kBAAkB;YAAE,OAAO,IAAI,CAAA;IAC9C,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAbD,wGAaC"}
@@ -3,10 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getAssetsMaxSize = exports.errorHandling = exports.chunkHasJs = exports.getChunkIdOrName = exports.getChunkEntryModule = exports.addRequireToSource = void 0;
6
+ exports.getAssetsMaxSize = exports.errorHandling = exports.chunkHasJs = exports.getChunkIdOrName = exports.getChunkEntryModule = exports.buildRootStyleImport = exports.rewriteRootRequirePath = exports.addRequireToSource = void 0;
7
7
  const node_path_1 = __importDefault(require("node:path"));
8
8
  const helper_1 = require("@tarojs/helper");
9
9
  const shared_1 = require("@tarojs/shared");
10
+ const loader_utils_1 = require("loader-utils");
10
11
  const webpack_1 = require("webpack");
11
12
  const { ConcatSource } = webpack_1.sources;
12
13
  /**
@@ -29,6 +30,44 @@ if (typeof tt !== 'undefined') {
29
30
  return source;
30
31
  }
31
32
  exports.addRequireToSource = addRequireToSource;
33
+ /**
34
+ * 重写源码里对某个 outputDir 根产物的 require 相对路径,使其相对于 fromId(而非根目录)。
35
+ *
36
+ * 场景:某段已渲染的源码在生成时按"落在根目录"算好了 require("./<target>")(fromId 深度 0),
37
+ * 之后被搬到更深的目录(如 subPackageIndie 的 mainPackageRoot=pages/order/index),原相对路径失效。
38
+ * 用与注入端 addRequireToSource 相同的 promoteRelativePath(path.relative(...)) 算法重算,保证一致。
39
+ *
40
+ * 用精确字符串替换(全量 split/join,非正则),只命中确定性的 require("./<target>") 原始形态,
41
+ * 避免误伤源码里其它含 target 名的内容;源码不含目标 require 时原样返回。
42
+ *
43
+ * @param source 源码字符串
44
+ * @param fromId 搬迁后的目录 id(如 'pages/order/index'),相对路径以它为基准
45
+ * @param targetName 根目录产物名(不含扩展名,如 'taro-shared-sync')
46
+ */
47
+ function rewriteRootRequirePath(source, fromId, targetName) {
48
+ const originalRequire = `require(${JSON.stringify(`./${targetName}`)})`;
49
+ if (!source.includes(originalRequire))
50
+ return source;
51
+ const rewrittenPath = (0, helper_1.promoteRelativePath)(node_path_1.default.relative(fromId, targetName));
52
+ const rewrittenRequire = `require(${JSON.stringify(rewrittenPath)})`;
53
+ return source.split(originalRequire).join(rewrittenRequire);
54
+ }
55
+ exports.rewriteRootRequirePath = rewriteRootRequirePath;
56
+ /**
57
+ * 生成页面 wxss 的 `@import` app 样式语句:按页面 wxss 目录到 app 样式产物路径重算相对路径。
58
+ *
59
+ * 场景:subPackageIndie 下 app 样式落在归一化后的 mainPackageRoot,页面 wxss 落在
60
+ * `${pageName}${styleExt}`,两者深度可能不同,故相对路径需按实际目录重算。
61
+ * 算法同 MiniPlugin 默认样式注入(`path.posix.relative`),仅 app 样式 target 改为归一化 root 下的完整路径。
62
+ *
63
+ * @param pageStyle 页面 wxss 产物路径(如 'pages/order/index/index.wxss')
64
+ * @param appStylePath app 样式产物路径(如 'pages/order/app.wxss')
65
+ */
66
+ function buildRootStyleImport(pageStyle, appStylePath) {
67
+ const rel = node_path_1.default.posix.relative(node_path_1.default.posix.dirname(pageStyle), appStylePath);
68
+ return `@import ${JSON.stringify((0, loader_utils_1.urlToRequest)(rel))};\n`;
69
+ }
70
+ exports.buildRootStyleImport = buildRootStyleImport;
32
71
  function getChunkEntryModule(compilation, chunk) {
33
72
  const chunkGraph = compilation.chunkGraph;
34
73
  const entryModules = Array.from(chunkGraph.getChunkEntryModulesIterable(chunk));
@@ -1 +1 @@
1
- {"version":3,"file":"webpack.js","sourceRoot":"","sources":["../../src/utils/webpack.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,2CAAoD;AACpD,2CAA0C;AAE1C,qCAAiC;AAIjC,MAAM,EAAE,YAAY,EAAE,GAAG,iBAAO,CAAA;AAEhC;;GAEG;AACH,SAAgB,kBAAkB,CAAE,EAAU,EAAE,OAAuB,EAAE,YAA0C,EAAE,SAAqB;IACxI,MAAM,MAAM,GAAG,IAAI,YAAY,EAAE,CAAA;IACjC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,IAAI,SAAS,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC;;2BAEY,SAAS,CAAC,WAAW;IAC5C,CAAC,CAAA;IACH,CAAC;IACD,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC/B,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,IAAA,4BAAmB,EAAC,mBAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,IAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IACtG,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAChB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACnB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACf,OAAO,MAAM,CAAA;AACf,CAAC;AAfD,gDAeC;AAED,SAAgB,mBAAmB,CAAE,WAAwB,EAAE,KAAY;IACzE,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,CAAA;IACzC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/E,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC,CAAC,CAAC,CAAA;IACxB,CAAC;AACH,CAAC;AAND,kDAMC;AAED,SAAgB,gBAAgB,CAAE,KAAY;IAC5C,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC,EAAE,CAAA;IACjB,CAAC;IACD,OAAO,KAAK,CAAC,IAAK,CAAA;AACpB,CAAC;AALD,4CAKC;AAED,SAAgB,UAAU,CAAE,KAAY,EAAE,UAAsB;IAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IAC7C,IAAI,UAAU,CAAC,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAE9D,OAAO,OAAO,CAAC,UAAU,CAAC,mCAAmC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;AACrF,CAAC;AALD,gCAKC;AAED,SAAgB,aAAa,CAAE,UAAmB,EAAE,KAAa;IAC/D,IAAI,UAAU,KAAK,CAAC,KAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,EAAE,CAAA,EAAE,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAJD,sCAIC;AAED,SAAgB,gBAAgB,CAAE,OAAO,EAAE,YAAY;IACrD,yCAAyC;IACzC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;IACzB,IAAI,OAAe,CAAA;IACnB,IAAI,IAAA,kBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAA;IAC/C,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,KAAK,IAAI,YAAY,CAAA;IACjC,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAVD,4CAUC"}
1
+ {"version":3,"file":"webpack.js","sourceRoot":"","sources":["../../src/utils/webpack.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,2CAAoD;AACpD,2CAA0C;AAE1C,+CAA2C;AAC3C,qCAAiC;AAIjC,MAAM,EAAE,YAAY,EAAE,GAAG,iBAAO,CAAA;AAEhC;;GAEG;AACH,SAAgB,kBAAkB,CAAE,EAAU,EAAE,OAAuB,EAAE,YAA0C,EAAE,SAAqB;IACxI,MAAM,MAAM,GAAG,IAAI,YAAY,EAAE,CAAA;IACjC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,IAAI,SAAS,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC;;2BAEY,SAAS,CAAC,WAAW;IAC5C,CAAC,CAAA;IACH,CAAC;IACD,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC/B,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,IAAA,4BAAmB,EAAC,mBAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,IAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IACtG,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAChB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACnB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACf,OAAO,MAAM,CAAA;AACf,CAAC;AAfD,gDAeC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAgB,sBAAsB,CAAE,MAAc,EAAE,MAAc,EAAE,UAAkB;IACxF,MAAM,eAAe,GAAG,WAAW,IAAI,CAAC,SAAS,CAAC,KAAK,UAAU,EAAE,CAAC,GAAG,CAAA;IACvE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;QAAE,OAAO,MAAM,CAAA;IACpD,MAAM,aAAa,GAAG,IAAA,4BAAmB,EAAC,mBAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;IAC5E,MAAM,gBAAgB,GAAG,WAAW,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAA;IACpE,OAAO,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;AAC7D,CAAC;AAND,wDAMC;AAED;;;;;;;;;GASG;AACH,SAAgB,oBAAoB,CAAE,SAAiB,EAAE,YAAoB;IAC3E,MAAM,GAAG,GAAG,mBAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,CAAA;IAC5E,OAAO,WAAW,IAAI,CAAC,SAAS,CAAC,IAAA,2BAAY,EAAC,GAAG,CAAC,CAAC,KAAK,CAAA;AAC1D,CAAC;AAHD,oDAGC;AAED,SAAgB,mBAAmB,CAAE,WAAwB,EAAE,KAAY;IACzE,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,CAAA;IACzC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/E,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC,CAAC,CAAC,CAAA;IACxB,CAAC;AACH,CAAC;AAND,kDAMC;AAED,SAAgB,gBAAgB,CAAE,KAAY;IAC5C,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC,EAAE,CAAA;IACjB,CAAC;IACD,OAAO,KAAK,CAAC,IAAK,CAAA;AACpB,CAAC;AALD,4CAKC;AAED,SAAgB,UAAU,CAAE,KAAY,EAAE,UAAsB;IAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IAC7C,IAAI,UAAU,CAAC,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAE9D,OAAO,OAAO,CAAC,UAAU,CAAC,mCAAmC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;AACrF,CAAC;AALD,gCAKC;AAED,SAAgB,aAAa,CAAE,UAAmB,EAAE,KAAa;IAC/D,IAAI,UAAU,KAAK,CAAC,KAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,EAAE,CAAA,EAAE,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAJD,sCAIC;AAED,SAAgB,gBAAgB,CAAE,OAAO,EAAE,YAAY;IACrD,yCAAyC;IACzC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;IACzB,IAAI,OAAe,CAAA;IACnB,IAAI,IAAA,kBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAA;IAC/C,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,KAAK,IAAI,YAAY,CAAA;IACjC,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAVD,4CAUC"}
@@ -49,7 +49,9 @@ class HarmonyWebpackPlugin {
49
49
  target[`process.env.${key}`] = env[key];
50
50
  return target;
51
51
  }, {});
52
- return WebpackPlugin_1.default.getDefinePlugin([envConstants, defineConstants]);
52
+ return WebpackPlugin_1.default.getDefinePlugin([envConstants, defineConstants, {
53
+ TARO_FORCE_CUSTOM_WRAPPER: JSON.stringify(false)
54
+ }]);
53
55
  }
54
56
  getCopyWebpackPlugin() {
55
57
  var _a;