@shriyanss/js-recon 1.4.1-alpha.2 → 1.4.1-alpha.3
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/CHANGELOG.md +41 -0
- package/CLAUDE.md +39 -2
- package/README.md +2 -0
- package/build/analyze/engine/index.js.map +1 -1
- package/build/analyze/helpers/schemas.js +1 -1
- package/build/analyze/helpers/schemas.js.map +1 -1
- package/build/analyze/index.js +1 -0
- package/build/analyze/index.js.map +1 -1
- package/build/globalConfig.js +2 -2
- package/build/globalConfig.js.map +1 -1
- package/build/index.js +73 -3
- package/build/index.js.map +1 -1
- package/build/lazyLoad/downloadQueue.js +1 -1
- package/build/lazyLoad/downloadQueue.js.map +1 -1
- package/build/lazyLoad/index.js +25 -0
- package/build/lazyLoad/index.js.map +1 -1
- package/build/lazyLoad/methodFilter.js +1 -0
- package/build/lazyLoad/methodFilter.js.map +1 -1
- package/build/lazyLoad/nuxt_js/nuxt_getBuildsManifest.js +64 -0
- package/build/lazyLoad/nuxt_js/nuxt_getBuildsManifest.js.map +1 -0
- package/build/lazyLoad/react/react_followImports.js +8 -2
- package/build/lazyLoad/react/react_followImports.js.map +1 -1
- package/build/lazyLoad/svelte/svelte_getFromPageSource.js +16 -0
- package/build/lazyLoad/svelte/svelte_getFromPageSource.js.map +1 -1
- package/build/lazyLoad/svelte/svelte_getVersionJson.js +40 -0
- package/build/lazyLoad/svelte/svelte_getVersionJson.js.map +1 -0
- package/build/map/angular_js/getAngularConnections.js +88 -0
- package/build/map/angular_js/getAngularConnections.js.map +1 -0
- package/build/map/angular_js/interactive.js +4 -0
- package/build/map/angular_js/interactive.js.map +1 -0
- package/build/map/index.js +38 -0
- package/build/map/index.js.map +1 -1
- package/build/refactor/index.js +478 -12
- package/build/refactor/index.js.map +1 -1
- package/build/refactor/react/helpers.js +13 -0
- package/build/refactor/react/helpers.js.map +1 -1
- package/build/refactor/react/index.js +149 -41
- package/build/refactor/react/index.js.map +1 -1
- package/build/refactor/react/library-classify.js +232 -1
- package/build/refactor/react/library-classify.js.map +1 -1
- package/build/refactor/react/transform.js +1046 -34
- package/build/refactor/react/transform.js.map +1 -1
- package/build/refactor/react-vite/index.js +618 -0
- package/build/refactor/react-vite/index.js.map +1 -0
- package/build/refactor/react-vite/vendor-analyze.js +336 -0
- package/build/refactor/react-vite/vendor-analyze.js.map +1 -0
- package/build/refactor/remote/cache.js +211 -0
- package/build/refactor/remote/cache.js.map +1 -0
- package/build/refactor/remote/config.js +47 -0
- package/build/refactor/remote/config.js.map +1 -0
- package/build/refactor/remote/hf-client.js +137 -0
- package/build/refactor/remote/hf-client.js.map +1 -0
- package/build/run/index.js +116 -11
- package/build/run/index.js.map +1 -1
- package/build/utility/banner.js +68 -0
- package/build/utility/banner.js.map +1 -0
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/refactor/react/helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/refactor/react/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ import * as t from "@babel/types";
|
|
|
18
18
|
import { cs_mast_init } from "@shriyanss/cs-mast";
|
|
19
19
|
import { isInModuleMap } from "./helpers.js";
|
|
20
20
|
import { validateAndFix } from "./validator.js";
|
|
21
|
-
import { transformModule, transformIndexStatements } from "./transform.js";
|
|
21
|
+
import { transformModule, transformIndexStatements, applyModuleCleanupPasses, applyLibraryImportRewriting, renameRouteComponents, } from "./transform.js";
|
|
22
22
|
import { classifyLibraryModule, resolveReexportChains } from "./library-classify.js";
|
|
23
23
|
const traverse = _traverse.default;
|
|
24
24
|
const generate = (_a = _generator.default) !== null && _a !== void 0 ? _a : _generator;
|
|
@@ -41,6 +41,17 @@ const findIifeBody = (program) => {
|
|
|
41
41
|
}
|
|
42
42
|
return null;
|
|
43
43
|
};
|
|
44
|
+
// Returns true when stmt is the webpack lazy-chunk push call:
|
|
45
|
+
// (self.webpackChunk...||[]).push([[chunkId,...], {moduleId: fn, ...}])
|
|
46
|
+
const isLazyChunkPushStmt = (stmt) => {
|
|
47
|
+
if (!t.isExpressionStatement(stmt))
|
|
48
|
+
return false;
|
|
49
|
+
const expr = stmt.expression;
|
|
50
|
+
if (!t.isCallExpression(expr))
|
|
51
|
+
return false;
|
|
52
|
+
const callee = expr.callee;
|
|
53
|
+
return t.isMemberExpression(callee) && t.isIdentifier(callee.property, { name: "push" });
|
|
54
|
+
};
|
|
44
55
|
// Returns true when a VariableDeclarator's init is the webpack numeric module map
|
|
45
56
|
// object (every property has a NumericLiteral key and a function value).
|
|
46
57
|
const isModuleMapDeclarator = (d) => {
|
|
@@ -79,10 +90,18 @@ const isModuleMapDeclarator = (d) => {
|
|
|
79
90
|
* the ReactDOM.render call, etc.).
|
|
80
91
|
*/
|
|
81
92
|
const isLibrarySig = (sig, libSigs) => !!(sig && libSigs && libSigs.has(sig));
|
|
93
|
+
// Minimum fraction of a module's sub-tree signatures that must match the library
|
|
94
|
+
// baseline before the module is classified as library code. A value of 1.0 means
|
|
95
|
+
// every signature must match (too strict — misses partial-lib modules). A value
|
|
96
|
+
// of 0.0 means any single match suffices (too loose — false-positives on app modules
|
|
97
|
+
// that happen to share a helper with library code). 0.5 is a reasonable default:
|
|
98
|
+
// pure library modules score close to 1.0 while app modules with inline CSS helpers
|
|
99
|
+
// or a stray shared utility typically score well below 0.5.
|
|
100
|
+
const LIB_CLASSIFICATION_THRESHOLD = 0.51;
|
|
82
101
|
// Hash a single module's function body using cs_mast_init and look the signature
|
|
83
|
-
// up against the count=18 baseline set. Returns true when the
|
|
84
|
-
//
|
|
85
|
-
const moduleIsLibrary = (mod, libSigs) => {
|
|
102
|
+
// up against the count=18 baseline set. Returns true when the fraction of the
|
|
103
|
+
// module's sub-tree signatures that match the baseline exceeds LIB_CLASSIFICATION_THRESHOLD.
|
|
104
|
+
const moduleIsLibrary = (mod, libSigs, scatOverride) => {
|
|
86
105
|
if (!libSigs || libSigs.size === 0)
|
|
87
106
|
return false;
|
|
88
107
|
const fnNode = mod.fnPath.node;
|
|
@@ -93,23 +112,68 @@ const moduleIsLibrary = (mod, libSigs) => {
|
|
|
93
112
|
const code = generate(body).code;
|
|
94
113
|
const tree = cs_mast_init(code, {
|
|
95
114
|
hash: "sha256",
|
|
96
|
-
scat: LIB_SIG_SCAT,
|
|
115
|
+
scat: scatOverride !== null && scatOverride !== void 0 ? scatOverride : LIB_SIG_SCAT,
|
|
97
116
|
sinc: [],
|
|
98
117
|
lang: "js",
|
|
99
118
|
prsr: "@babel/parser",
|
|
100
119
|
});
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
120
|
+
const sigs = [...tree._signatureMap.keys()];
|
|
121
|
+
if (sigs.length === 0)
|
|
122
|
+
return false;
|
|
123
|
+
const matchCount = sigs.filter((sig) => isLibrarySig(sig, libSigs)).length;
|
|
124
|
+
const fraction = matchCount / sigs.length;
|
|
125
|
+
return fraction >= LIB_CLASSIFICATION_THRESHOLD;
|
|
105
126
|
}
|
|
106
127
|
catch (_a) {
|
|
107
128
|
// unparseable / unhashable — fall through and treat as non-library
|
|
108
129
|
}
|
|
109
130
|
return false;
|
|
110
131
|
};
|
|
111
|
-
|
|
112
|
-
|
|
132
|
+
// Returns true when a 1-param module looks like a style-loader runtime helper.
|
|
133
|
+
// Matches the addStyles module (contains domAPI + update) and the
|
|
134
|
+
// styleTagTransform module (sets cssText or calls createTextNode).
|
|
135
|
+
const isStyleLoaderModule = (mod) => {
|
|
136
|
+
if (mod.paramCount !== 1)
|
|
137
|
+
return false;
|
|
138
|
+
const fnNode = mod.fnPath.node;
|
|
139
|
+
if (!t.isBlockStatement(fnNode.body))
|
|
140
|
+
return false;
|
|
141
|
+
const body = fnNode.body;
|
|
142
|
+
try {
|
|
143
|
+
const code = generate(body).code;
|
|
144
|
+
if (code.includes("domAPI") && code.includes("update"))
|
|
145
|
+
return true;
|
|
146
|
+
if (code.includes("styleSheet") && code.includes("cssText"))
|
|
147
|
+
return true;
|
|
148
|
+
if (code.includes("styleTagTransform") || code.includes("insertStyleElement"))
|
|
149
|
+
return true;
|
|
150
|
+
}
|
|
151
|
+
catch (_a) {
|
|
152
|
+
// unparseable
|
|
153
|
+
}
|
|
154
|
+
return false;
|
|
155
|
+
};
|
|
156
|
+
// Returns true when a 3-param module is a CSS content module (pushes a CSS array
|
|
157
|
+
// with an id + CSS string via requireParam.d).
|
|
158
|
+
const isCssModuleEntry = (mod) => {
|
|
159
|
+
if (mod.paramCount !== 3)
|
|
160
|
+
return false;
|
|
161
|
+
const fnNode = mod.fnPath.node;
|
|
162
|
+
if (!t.isBlockStatement(fnNode.body))
|
|
163
|
+
return false;
|
|
164
|
+
const body = fnNode.body;
|
|
165
|
+
try {
|
|
166
|
+
const code = generate(body).code;
|
|
167
|
+
// CSS content modules push an array of [moduleId, cssString, ""] and register via .d
|
|
168
|
+
if (code.includes(".push(") && code.includes(".id,") && code.includes(".d("))
|
|
169
|
+
return true;
|
|
170
|
+
}
|
|
171
|
+
catch (_a) {
|
|
172
|
+
// unparseable
|
|
173
|
+
}
|
|
174
|
+
return false;
|
|
175
|
+
};
|
|
176
|
+
const refactorReact = (chunk, libSigs, externalLibModuleMap, classifyAllAsLibrary, scatOverride) => __awaiter(void 0, void 0, void 0, function* () {
|
|
113
177
|
console.log(chalk.cyan(`[i] Processing React bundle: ${chunk.id}`));
|
|
114
178
|
const ast = parser.parse(chunk.code, {
|
|
115
179
|
sourceType: "unambiguous",
|
|
@@ -181,53 +245,97 @@ const refactorReact = (chunk, libSigs) => __awaiter(void 0, void 0, void 0, func
|
|
|
181
245
|
ObjectMethod: captureMethod,
|
|
182
246
|
});
|
|
183
247
|
console.log(chalk.cyan(`[i] Found ${modules.length} modules`));
|
|
184
|
-
|
|
185
|
-
//
|
|
248
|
+
// Detect lazy chunk bundles: no IIFE wrapper, program body is entirely push() calls.
|
|
249
|
+
// Modules in lazy chunks are always application code — skip library classification for them.
|
|
250
|
+
// Also don't generate index.js from the push statement (it contains no bootstrap logic).
|
|
251
|
+
const iifeBody = findIifeBody(ast.program);
|
|
252
|
+
const isLazyBundle = iifeBody === null && ast.program.body.length > 0 && ast.program.body.every(isLazyChunkPushStmt);
|
|
253
|
+
if (isLazyBundle) {
|
|
254
|
+
console.log(chalk.cyan(`[i] Detected lazy chunk format — skipping library classification`));
|
|
255
|
+
}
|
|
256
|
+
const files = {};
|
|
257
|
+
// moduleId → LibraryModuleInfo for modules that are library-classified (in this chunk)
|
|
186
258
|
const libModuleMap = new Map();
|
|
187
259
|
let libraryCount = 0;
|
|
260
|
+
// Collect non-library module statements before applying Pass D, so we can use the
|
|
261
|
+
// fully-resolved libModuleMap (including re-export chains) when rewriting imports.
|
|
262
|
+
const pendingModules = [];
|
|
188
263
|
for (const mod of modules) {
|
|
189
|
-
|
|
264
|
+
// classifyAllAsLibrary: used for vendor chunks outside mapped.json where we want
|
|
265
|
+
// to extract library export maps without generating any output files.
|
|
266
|
+
const isLib = classifyAllAsLibrary || (!isLazyBundle && moduleIsLibrary(mod, libSigs, scatOverride));
|
|
267
|
+
// Detect style-loader and CSS content modules regardless of baseline signatures.
|
|
268
|
+
if (!classifyAllAsLibrary && !isLib && !isLazyBundle) {
|
|
269
|
+
const styleLoaderType = isStyleLoaderModule(mod)
|
|
270
|
+
? "style-loader"
|
|
271
|
+
: isCssModuleEntry(mod)
|
|
272
|
+
? "css-module"
|
|
273
|
+
: null;
|
|
274
|
+
if (styleLoaderType !== null) {
|
|
275
|
+
console.log(chalk.gray(`[-] Module ${mod.id} detected as ${styleLoaderType} — skipping`));
|
|
276
|
+
libModuleMap.set(mod.id, { type: styleLoaderType, exportMap: new Map() });
|
|
277
|
+
libraryCount++;
|
|
278
|
+
continue;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
if (isLib) {
|
|
190
282
|
console.log(chalk.gray(`[-] Module ${mod.id} matches library baseline — skipping`));
|
|
191
283
|
libraryCount++;
|
|
192
|
-
// Classify the library module so
|
|
284
|
+
// Classify the library module so import rewriting can use proper named imports
|
|
193
285
|
const info = classifyLibraryModule(mod);
|
|
194
286
|
libModuleMap.set(mod.id, info);
|
|
195
287
|
continue;
|
|
196
288
|
}
|
|
197
|
-
const statements = transformModule(mod);
|
|
198
|
-
|
|
289
|
+
const statements = applyModuleCleanupPasses(transformModule(mod));
|
|
290
|
+
pendingModules.push({ id: mod.id, statements });
|
|
291
|
+
}
|
|
292
|
+
// Resolve re-export chains (e.g. 338 → 247/react-dom-client, 540 → 287/React) so shim modules
|
|
293
|
+
// get the right library type. Always run for vendor pre-scans (classifyAllAsLibrary), and for
|
|
294
|
+
// normal non-lazy chunks when a library baseline is provided.
|
|
295
|
+
if (classifyAllAsLibrary || (!isLazyBundle && libSigs && libSigs.size > 0)) {
|
|
296
|
+
if (!isLazyBundle && libSigs && libSigs.size > 0) {
|
|
297
|
+
console.log(chalk.cyan(`[i] Library modules skipped: ${libraryCount}/${modules.length}`));
|
|
298
|
+
}
|
|
299
|
+
resolveReexportChains(libModuleMap, modules);
|
|
300
|
+
}
|
|
301
|
+
// Merged map: prefer locally-classified entries over external ones (local classification
|
|
302
|
+
// is more precise for this specific bundle version).
|
|
303
|
+
const mergedLibMap = new Map([...(externalLibModuleMap !== null && externalLibModuleMap !== void 0 ? externalLibModuleMap : []), ...libModuleMap]);
|
|
304
|
+
// Apply Pass D (library-aware import rewriting) using the merged map, then validate.
|
|
305
|
+
for (const { id, statements } of pendingModules) {
|
|
306
|
+
const afterD = mergedLibMap.size > 0 ? applyLibraryImportRewriting(statements, mergedLibMap) : statements;
|
|
307
|
+
const afterRename = renameRouteComponents(afterD);
|
|
308
|
+
const code = validateAndFix(afterRename, id);
|
|
199
309
|
if (code === null) {
|
|
200
|
-
console.log(chalk.yellow(`[~] Module ${
|
|
310
|
+
console.log(chalk.yellow(`[~] Module ${id} skipped due to unresolvable syntax errors`));
|
|
201
311
|
continue;
|
|
202
312
|
}
|
|
203
|
-
|
|
204
|
-
}
|
|
205
|
-
if (libSigs && libSigs.size > 0) {
|
|
206
|
-
console.log(chalk.cyan(`[i] Library modules skipped: ${libraryCount}/${modules.length}`));
|
|
207
|
-
// Resolve re-export chains so shim modules (e.g. 540 → 287/React) get the right identity
|
|
208
|
-
resolveReexportChains(libModuleMap, modules);
|
|
313
|
+
files[id] = code;
|
|
209
314
|
}
|
|
210
315
|
// Collect everything in the IIFE body that is NOT the module-map variable into index.js.
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
if (
|
|
217
|
-
|
|
316
|
+
// Skip this step for lazy chunks — their push statement contains no bootstrap logic.
|
|
317
|
+
if (!isLazyBundle) {
|
|
318
|
+
const topLevel = iifeBody !== null && iifeBody !== void 0 ? iifeBody : ast.program.body;
|
|
319
|
+
const indexStatements = [];
|
|
320
|
+
for (const stmt of topLevel) {
|
|
321
|
+
if (t.isVariableDeclaration(stmt)) {
|
|
322
|
+
const remaining = stmt.declarations.filter((d) => !isModuleMapDeclarator(d));
|
|
323
|
+
if (remaining.length > 0)
|
|
324
|
+
indexStatements.push(t.variableDeclaration(stmt.kind, remaining));
|
|
325
|
+
}
|
|
326
|
+
else {
|
|
327
|
+
indexStatements.push(stmt);
|
|
328
|
+
}
|
|
218
329
|
}
|
|
219
|
-
|
|
220
|
-
indexStatements.
|
|
330
|
+
if (indexStatements.length > 0) {
|
|
331
|
+
console.log(chalk.cyan(`[i] Writing ${indexStatements.length} non-module statements to index.js`));
|
|
332
|
+
const transformed = transformIndexStatements(indexStatements, mergedLibMap.size > 0 ? mergedLibMap : undefined);
|
|
333
|
+
const indexCode = validateAndFix(transformed, "index");
|
|
334
|
+
if (indexCode !== null)
|
|
335
|
+
files["index"] = indexCode;
|
|
221
336
|
}
|
|
222
337
|
}
|
|
223
|
-
|
|
224
|
-
console.log(chalk.cyan(`[i] Writing ${indexStatements.length} non-module statements to index.js`));
|
|
225
|
-
const transformed = transformIndexStatements(indexStatements, libModuleMap.size > 0 ? libModuleMap : undefined);
|
|
226
|
-
const indexCode = validateAndFix(transformed, "index");
|
|
227
|
-
if (indexCode !== null)
|
|
228
|
-
results["index"] = indexCode;
|
|
229
|
-
}
|
|
230
|
-
return results;
|
|
338
|
+
return { files, libModuleMap };
|
|
231
339
|
});
|
|
232
340
|
export default refactorReact;
|
|
233
341
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/refactor/react/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/refactor/react/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
var _a;
|
|
1
2
|
import * as t from "@babel/types";
|
|
3
|
+
import _generator from "@babel/generator";
|
|
4
|
+
const generate = (_a = _generator.default) !== null && _a !== void 0 ? _a : _generator;
|
|
2
5
|
export const REACT_CANONICAL = new Set([
|
|
3
6
|
"useState",
|
|
4
7
|
"useEffect",
|
|
@@ -42,10 +45,47 @@ export const REACT_CANONICAL = new Set([
|
|
|
42
45
|
// this package. For rewriting purposes, Fragment is handled in resolveLibraryProp.
|
|
43
46
|
export const JSX_RUNTIME_CANONICAL = new Set(["jsx", "jsxs", "jsxDEV"]);
|
|
44
47
|
export const REACT_DOM_CLIENT_CANONICAL = new Set(["createRoot", "hydrateRoot"]);
|
|
48
|
+
// Ordered: hooks first (most specific detection via string patterns), then child
|
|
49
|
+
// components (Route before Routes to avoid ambiguity in error messages), then
|
|
50
|
+
// wrapper/parent components.
|
|
51
|
+
export const REACT_ROUTER_DOM_CANONICAL = new Set([
|
|
52
|
+
// Hooks — detected by backtick-quoted name or call pattern in error strings
|
|
53
|
+
"useNavigate",
|
|
54
|
+
"useLocation",
|
|
55
|
+
"useSearchParams",
|
|
56
|
+
"useParams",
|
|
57
|
+
"useMatch",
|
|
58
|
+
"useMatches",
|
|
59
|
+
"useRoutes",
|
|
60
|
+
"useOutlet",
|
|
61
|
+
"useOutletContext",
|
|
62
|
+
"useNavigationType",
|
|
63
|
+
"useResolvedPath",
|
|
64
|
+
"useHref",
|
|
65
|
+
"useLinkClickHandler",
|
|
66
|
+
"useInRouterContext",
|
|
67
|
+
"useBlocker",
|
|
68
|
+
"useBeforeUnload",
|
|
69
|
+
// Child/inner components — Route before Routes to match <Route> first in error messages
|
|
70
|
+
"Route",
|
|
71
|
+
"Link",
|
|
72
|
+
"NavLink",
|
|
73
|
+
"Navigate",
|
|
74
|
+
"Outlet",
|
|
75
|
+
// Wrapper/parent components
|
|
76
|
+
"Routes",
|
|
77
|
+
"BrowserRouter",
|
|
78
|
+
"HashRouter",
|
|
79
|
+
"MemoryRouter",
|
|
80
|
+
"RouterProvider",
|
|
81
|
+
]);
|
|
45
82
|
const LIBRARY_SOURCE = {
|
|
46
83
|
react: "react",
|
|
47
84
|
"react-dom-client": "react-dom/client",
|
|
48
85
|
"react-jsx-runtime": "react/jsx-runtime",
|
|
86
|
+
"react-router-dom": "react-router-dom",
|
|
87
|
+
"style-loader": "",
|
|
88
|
+
"css-module": "",
|
|
49
89
|
unknown: "",
|
|
50
90
|
};
|
|
51
91
|
export const librarySource = (type) => LIBRARY_SOURCE[type];
|
|
@@ -88,6 +128,182 @@ function scanExportMap(mod) {
|
|
|
88
128
|
}
|
|
89
129
|
return map;
|
|
90
130
|
}
|
|
131
|
+
/** Reads `requireParam.d(exportsParam, {key: () => localVar})` webpack ESM registration patterns. */
|
|
132
|
+
function scanNdExportKeys(mod) {
|
|
133
|
+
const map = new Map(); // exportedKey → localVarName
|
|
134
|
+
const { exportsParam, requireParam } = mod;
|
|
135
|
+
if (!exportsParam || !requireParam)
|
|
136
|
+
return map;
|
|
137
|
+
const body = mod.fnPath.node.body;
|
|
138
|
+
if (!body || !t.isBlockStatement(body))
|
|
139
|
+
return map;
|
|
140
|
+
for (const stmt of body.body) {
|
|
141
|
+
if (!t.isExpressionStatement(stmt))
|
|
142
|
+
continue;
|
|
143
|
+
const exprs = t.isSequenceExpression(stmt.expression)
|
|
144
|
+
? stmt.expression.expressions
|
|
145
|
+
: [stmt.expression];
|
|
146
|
+
for (const expr of exprs) {
|
|
147
|
+
if (!t.isCallExpression(expr))
|
|
148
|
+
continue;
|
|
149
|
+
const callee = expr.callee;
|
|
150
|
+
if (!t.isMemberExpression(callee) || callee.computed)
|
|
151
|
+
continue;
|
|
152
|
+
if (!t.isIdentifier(callee.object, { name: requireParam }))
|
|
153
|
+
continue;
|
|
154
|
+
if (!t.isIdentifier(callee.property, { name: "d" }))
|
|
155
|
+
continue;
|
|
156
|
+
if (expr.arguments.length < 2)
|
|
157
|
+
continue;
|
|
158
|
+
if (!t.isIdentifier(expr.arguments[0], { name: exportsParam }))
|
|
159
|
+
continue;
|
|
160
|
+
const objArg = expr.arguments[1];
|
|
161
|
+
if (!t.isObjectExpression(objArg))
|
|
162
|
+
continue;
|
|
163
|
+
for (const prop of objArg.properties) {
|
|
164
|
+
if (!t.isObjectProperty(prop) || prop.computed)
|
|
165
|
+
continue;
|
|
166
|
+
const key = t.isIdentifier(prop.key)
|
|
167
|
+
? prop.key.name
|
|
168
|
+
: t.isStringLiteral(prop.key)
|
|
169
|
+
? prop.key.value
|
|
170
|
+
: null;
|
|
171
|
+
if (!key)
|
|
172
|
+
continue;
|
|
173
|
+
const val = prop.value;
|
|
174
|
+
// Arrow: () => localVar
|
|
175
|
+
if (t.isArrowFunctionExpression(val) && t.isIdentifier(val.body)) {
|
|
176
|
+
map.set(key, val.body.name);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
return map;
|
|
182
|
+
}
|
|
183
|
+
/** Reads `localVar.displayName = "CanonicalName"` patterns in the module body. */
|
|
184
|
+
function scanDisplayNames(mod) {
|
|
185
|
+
const map = new Map(); // localVarName → displayName
|
|
186
|
+
const body = mod.fnPath.node.body;
|
|
187
|
+
if (!body || !t.isBlockStatement(body))
|
|
188
|
+
return map;
|
|
189
|
+
for (const stmt of body.body) {
|
|
190
|
+
if (!t.isExpressionStatement(stmt))
|
|
191
|
+
continue;
|
|
192
|
+
const exprs = t.isSequenceExpression(stmt.expression)
|
|
193
|
+
? stmt.expression.expressions
|
|
194
|
+
: [stmt.expression];
|
|
195
|
+
for (const expr of exprs) {
|
|
196
|
+
if (!t.isAssignmentExpression(expr) || expr.operator !== "=")
|
|
197
|
+
continue;
|
|
198
|
+
const lhs = expr.left;
|
|
199
|
+
if (!t.isMemberExpression(lhs) || lhs.computed)
|
|
200
|
+
continue;
|
|
201
|
+
if (!t.isIdentifier(lhs.property, { name: "displayName" }))
|
|
202
|
+
continue;
|
|
203
|
+
if (!t.isIdentifier(lhs.object))
|
|
204
|
+
continue;
|
|
205
|
+
const rhs = expr.right;
|
|
206
|
+
if (!t.isStringLiteral(rhs))
|
|
207
|
+
continue;
|
|
208
|
+
map.set(lhs.object.name, rhs.value);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
return map;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Extracts the most specific canonical name hint from generated body code.
|
|
215
|
+
*
|
|
216
|
+
* Priority order (descending confidence):
|
|
217
|
+
* 1. Backtick-quoted: `canonical` in string literal (e.g. "cannot use `useSearchParams`")
|
|
218
|
+
* 2. Call-site mention: canonical( in code (e.g. "useLocation() may be used")
|
|
219
|
+
* 3. JSX element mention: <canonical> in string (e.g. "A <Route> is only ever")
|
|
220
|
+
* 4. Outlet — .outlet property access is unique to the Outlet component
|
|
221
|
+
* 5. useParams — ?.params return from route matches is unique to useParams
|
|
222
|
+
* 6. BrowserRouter — basename: as destructuring prop key is unique to BrowserRouter
|
|
223
|
+
*/
|
|
224
|
+
function extractCanonicalFromCode(bodyCode, canonicalSet) {
|
|
225
|
+
// Priority 1: backtick-quoted form inside error strings
|
|
226
|
+
for (const canonical of canonicalSet) {
|
|
227
|
+
if (bodyCode.includes("`" + canonical + "`"))
|
|
228
|
+
return canonical;
|
|
229
|
+
}
|
|
230
|
+
// Priority 2: call-site mention (e.g. "useLocation() may be used only in...")
|
|
231
|
+
for (const canonical of canonicalSet) {
|
|
232
|
+
if (bodyCode.includes(canonical + "("))
|
|
233
|
+
return canonical;
|
|
234
|
+
}
|
|
235
|
+
// Priority 3: JSX element mention (e.g. "A <Route> is only ever to be used as child of <Routes>")
|
|
236
|
+
// Route is in the set before Routes so <Route> matches first, avoiding ambiguity.
|
|
237
|
+
for (const canonical of canonicalSet) {
|
|
238
|
+
if (bodyCode.includes("<" + canonical + ">"))
|
|
239
|
+
return canonical;
|
|
240
|
+
}
|
|
241
|
+
// Priority 4: Outlet — the .outlet property of the router context is unique
|
|
242
|
+
if (canonicalSet.has("Outlet") && bodyCode.includes(".outlet"))
|
|
243
|
+
return "Outlet";
|
|
244
|
+
// Priority 5: useParams — returns ?.params from the deepest route match
|
|
245
|
+
if (canonicalSet.has("useParams") && bodyCode.includes("?.params"))
|
|
246
|
+
return "useParams";
|
|
247
|
+
// Priority 6: BrowserRouter — basename as a destructuring prop key
|
|
248
|
+
if (canonicalSet.has("BrowserRouter") && bodyCode.includes("basename:"))
|
|
249
|
+
return "BrowserRouter";
|
|
250
|
+
// Priority 7: Routes — the only react-router-dom component whose props destructure
|
|
251
|
+
// both `children` and `location`. Destructuring keys survive minification.
|
|
252
|
+
if (canonicalSet.has("Routes") && bodyCode.includes("children:") && bodyCode.includes("location:"))
|
|
253
|
+
return "Routes";
|
|
254
|
+
return null;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Builds an {exportedKey → canonicalName} map for modules that use the webpack ESM
|
|
258
|
+
* registration format `requireParam.d(exportsParam, {key: ()=>localVar})`.
|
|
259
|
+
* Combines displayName assignments and body-code scanning to recover canonical names.
|
|
260
|
+
*/
|
|
261
|
+
function buildNdCanonicalMap(mod, canonicalSet) {
|
|
262
|
+
const result = new Map();
|
|
263
|
+
const keyToLocal = scanNdExportKeys(mod);
|
|
264
|
+
if (keyToLocal.size === 0)
|
|
265
|
+
return result;
|
|
266
|
+
const displayNames = scanDisplayNames(mod);
|
|
267
|
+
// Build localVar → declaration node map from the module body
|
|
268
|
+
const body = mod.fnPath.node.body;
|
|
269
|
+
if (!body || !t.isBlockStatement(body))
|
|
270
|
+
return result;
|
|
271
|
+
const localToNode = new Map();
|
|
272
|
+
for (const stmt of body.body) {
|
|
273
|
+
if (t.isFunctionDeclaration(stmt) && stmt.id) {
|
|
274
|
+
localToNode.set(stmt.id.name, stmt);
|
|
275
|
+
}
|
|
276
|
+
if (t.isVariableDeclaration(stmt)) {
|
|
277
|
+
for (const decl of stmt.declarations) {
|
|
278
|
+
if (t.isIdentifier(decl.id) && decl.init) {
|
|
279
|
+
localToNode.set(decl.id.name, decl.init);
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
for (const [exportKey, localVar] of keyToLocal) {
|
|
285
|
+
// displayName is the highest-confidence signal (e.g. Link.displayName = "Link")
|
|
286
|
+
const fromDisplay = displayNames.get(localVar);
|
|
287
|
+
if (fromDisplay && canonicalSet.has(fromDisplay)) {
|
|
288
|
+
result.set(exportKey, fromDisplay);
|
|
289
|
+
continue;
|
|
290
|
+
}
|
|
291
|
+
// Scan the function/variable body code for canonical name hints
|
|
292
|
+
const node = localToNode.get(localVar);
|
|
293
|
+
if (node) {
|
|
294
|
+
try {
|
|
295
|
+
const code = generate(node).code;
|
|
296
|
+
const canonical = extractCanonicalFromCode(code, canonicalSet);
|
|
297
|
+
if (canonical)
|
|
298
|
+
result.set(exportKey, canonical);
|
|
299
|
+
}
|
|
300
|
+
catch (_a) {
|
|
301
|
+
// generation failed — skip
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
return result;
|
|
306
|
+
}
|
|
91
307
|
export function classifyLibraryModule(mod) {
|
|
92
308
|
const exportMap = scanExportMap(mod);
|
|
93
309
|
// Check both keys (prop names as exported, e.g. "jsx") AND values (canonical from RHS, e.g. "createRoot").
|
|
@@ -101,6 +317,16 @@ export function classifyLibraryModule(mod) {
|
|
|
101
317
|
return { type: "react-jsx-runtime", exportMap };
|
|
102
318
|
if (keys.some((k) => REACT_CANONICAL.has(k)) || vals.some((v) => REACT_CANONICAL.has(v)))
|
|
103
319
|
return { type: "react", exportMap };
|
|
320
|
+
// Try the webpack ESM registration format (n.d) with canonical name recovery.
|
|
321
|
+
// Used by vendor chunks like react-router-dom that register exports via
|
|
322
|
+
// requireParam.d(exportsParam, {key: () => localVar}) instead of exportsParam.key = val.
|
|
323
|
+
const ndMap = buildNdCanonicalMap(mod, REACT_ROUTER_DOM_CANONICAL);
|
|
324
|
+
if (ndMap.size > 0) {
|
|
325
|
+
const ndVals = [...ndMap.values()];
|
|
326
|
+
if (ndVals.some((v) => REACT_ROUTER_DOM_CANONICAL.has(v))) {
|
|
327
|
+
return { type: "react-router-dom", exportMap: ndMap };
|
|
328
|
+
}
|
|
329
|
+
}
|
|
104
330
|
return { type: "unknown", exportMap };
|
|
105
331
|
}
|
|
106
332
|
/**
|
|
@@ -117,7 +343,12 @@ export function getReexportTarget(mod) {
|
|
|
117
343
|
const stmt = stmts[0];
|
|
118
344
|
if (!t.isExpressionStatement(stmt))
|
|
119
345
|
return null;
|
|
120
|
-
|
|
346
|
+
let expr = stmt.expression;
|
|
347
|
+
// Handle SequenceExpression wrapping: `(DCE_check, e.exports = t(N))` — take last element.
|
|
348
|
+
if (t.isSequenceExpression(expr)) {
|
|
349
|
+
const exprs = expr.expressions;
|
|
350
|
+
expr = exprs[exprs.length - 1];
|
|
351
|
+
}
|
|
121
352
|
if (!t.isAssignmentExpression(expr) || expr.operator !== "=")
|
|
122
353
|
return null;
|
|
123
354
|
const lhs = expr.left;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"library-classify.js","sourceRoot":"","sources":["../../../src/refactor/react/library-classify.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"library-classify.js","sourceRoot":"","sources":["../../../src/refactor/react/library-classify.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAClC,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAG1C,MAAM,QAAQ,GAAG,MAAC,UAAwD,CAAC,OAAO,mCAAI,UAAU,CAAC;AAiBjG,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IACnC,UAAU;IACV,WAAW;IACX,QAAQ;IACR,SAAS;IACT,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,iBAAiB;IACjB,eAAe;IACf,OAAO;IACP,eAAe;IACf,kBAAkB;IAClB,oBAAoB;IACpB,qBAAqB;IACrB,sBAAsB;IACtB,eAAe;IACf,UAAU;IACV,WAAW;IACX,eAAe;IACf,eAAe;IACf,YAAY;IACZ,MAAM;IACN,UAAU;IACV,UAAU;IACV,YAAY;IACZ,WAAW;IACX,gBAAgB;IAChB,UAAU;IACV,cAAc;IACd,iBAAiB;IACjB,MAAM;IACN,SAAS;IACT,cAAc;IACd,WAAW;IACX,KAAK;IACL,OAAO;CACV,CAAC,CAAC;AAEH,sFAAsF;AACtF,wFAAwF;AACxF,mFAAmF;AACnF,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;AAEjF,iFAAiF;AACjF,8EAA8E;AAC9E,6BAA6B;AAC7B,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IAC9C,4EAA4E;IAC5E,aAAa;IACb,aAAa;IACb,iBAAiB;IACjB,WAAW;IACX,UAAU;IACV,YAAY;IACZ,WAAW;IACX,WAAW;IACX,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IACjB,SAAS;IACT,qBAAqB;IACrB,oBAAoB;IACpB,YAAY;IACZ,iBAAiB;IACjB,wFAAwF;IACxF,OAAO;IACP,MAAM;IACN,SAAS;IACT,UAAU;IACV,QAAQ;IACR,4BAA4B;IAC5B,QAAQ;IACR,eAAe;IACf,YAAY;IACZ,cAAc;IACd,gBAAgB;CACnB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAgC;IAChD,KAAK,EAAE,OAAO;IACd,kBAAkB,EAAE,kBAAkB;IACtC,mBAAmB,EAAE,mBAAmB;IACxC,kBAAkB,EAAE,kBAAkB;IACtC,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;IAChB,OAAO,EAAE,EAAE;CACd,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAiB,EAAU,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;AAEjF,SAAS,aAAa,CAAC,GAAgB;IACnC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,MAAM,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;IAC7B,IAAI,CAAC,YAAY;QAAE,OAAO,GAAG,CAAC;IAC9B,MAAM,IAAI,GAAI,GAAG,CAAC,MAAM,CAAC,IAA0B,CAAC,IAAI,CAAC;IACzD,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7C,MAAM,KAAK,GAAG,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxG,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;YACrB,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,KAAK,GAAG;gBAAE,SAAS;YACnE,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ;gBAAE,SAAS;YACzD,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;gBAAE,SAAS;YAClE,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YACxE,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC;YACrB,IAAI,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7E,GAAG,CAAC,GAAG,CAAC,OAAO,EAAG,GAAG,CAAC,QAAyB,CAAC,IAAI,CAAC,CAAC;YAC1D,CAAC;iBAAM,IAAI,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,GAAG,CAAC,GAAG,CAAC,OAAO,EAAG,GAAoB,CAAC,IAAI,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACJ,2EAA2E;gBAC3E,+EAA+E;gBAC/E,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED,qGAAqG;AACrG,SAAS,gBAAgB,CAAC,GAAgB;IACtC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,6BAA6B;IACpE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;IAC3C,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY;QAAE,OAAO,GAAG,CAAC;IAC/C,MAAM,IAAI,GAAI,GAAG,CAAC,MAAM,CAAC,IAA0B,CAAC,IAAI,CAAC;IACzD,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAK,IAAyB,CAAC,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7C,MAAM,KAAK,GAAG,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC;YACjD,CAAC,CAAE,IAAI,CAAC,UAAU,CAAC,WAA8B;YACjD,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBAAE,SAAS;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ;gBAAE,SAAS;YAC/D,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;gBAAE,SAAS;YACrE,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;gBAAE,SAAS;YAC9D,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS;YACxC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;gBAAE,SAAS;YACzE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC5C,KAAK,MAAM,IAAI,IAAK,MAA6B,CAAC,UAAU,EAAE,CAAC;gBAC3D,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;oBAAE,SAAS;gBACzD,MAAM,GAAG,GAAG,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC;oBAChC,CAAC,CAAE,IAAI,CAAC,GAAoB,CAAC,IAAI;oBACjC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC3B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK;wBAChB,CAAC,CAAC,IAAI,CAAC;gBACb,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAqB,CAAC;gBACvC,wBAAwB;gBACxB,IAAI,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC/D,GAAG,CAAC,GAAG,CAAC,GAAG,EAAG,GAAG,CAAC,IAAqB,CAAC,IAAI,CAAC,CAAC;gBAClD,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED,kFAAkF;AAClF,SAAS,gBAAgB,CAAC,GAAgB;IACtC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,6BAA6B;IACpE,MAAM,IAAI,GAAI,GAAG,CAAC,MAAM,CAAC,IAA0B,CAAC,IAAI,CAAC;IACzD,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAK,IAAyB,CAAC,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7C,MAAM,KAAK,GAAG,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC;YACjD,CAAC,CAAE,IAAI,CAAC,UAAU,CAAC,WAA8B;YACjD,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;gBAAE,SAAS;YACvE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ;gBAAE,SAAS;YACzD,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;gBAAE,SAAS;YACrE,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;YACvB,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC;gBAAE,SAAS;YACtC,GAAG,CAAC,GAAG,CAAE,GAAG,CAAC,MAAuB,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,wBAAwB,CAAC,QAAgB,EAAE,YAAyB;IACzE,wDAAwD;IACxD,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE,CAAC;QACnC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,GAAG,SAAS,GAAG,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;IACnE,CAAC;IACD,8EAA8E;IAC9E,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE,CAAC;QACnC,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,GAAG,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;IAC7D,CAAC;IACD,kGAAkG;IAClG,kFAAkF;IAClF,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE,CAAC;QACnC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,GAAG,SAAS,GAAG,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;IACnE,CAAC;IACD,4EAA4E;IAC5E,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,QAAQ,CAAC;IAChF,wEAAwE;IACxE,IAAI,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,WAAW,CAAC;IACvF,mEAAmE;IACnE,IAAI,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,eAAe,CAAC;IAChG,mFAAmF;IACnF,2EAA2E;IAC3E,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,QAAQ,CAAC;IACpH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,GAAgB,EAAE,YAAyB;IACpE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAEzC,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAE3C,6DAA6D;IAC7D,MAAM,IAAI,GAAI,GAAG,CAAC,MAAM,CAAC,IAA0B,CAAC,IAAI,CAAC;IACzD,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC;IAEtD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,KAAK,MAAM,IAAI,IAAK,IAAyB,CAAC,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YAC3C,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACnC,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACvC,WAAW,CAAC,GAAG,CAAE,IAAI,CAAC,EAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC;QAC7C,gFAAgF;QAChF,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,WAAW,IAAI,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YACnC,SAAS;QACb,CAAC;QAED,gEAAgE;QAChE,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,IAAI,EAAE,CAAC;YACP,IAAI,CAAC;gBACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;gBACjC,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;gBAC/D,IAAI,SAAS;oBAAE,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACpD,CAAC;YAAC,WAAM,CAAC;gBACL,2BAA2B;YAC/B,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAgB;IAClD,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACrC,2GAA2G;IAC3G,qFAAqF;IACrF,iFAAiF;IACjF,MAAM,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1G,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC;IACnD,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAChG,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,CAAC;IACpD,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpF,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAExC,8EAA8E;IAC9E,wEAAwE;IACxE,yFAAyF;IACzF,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;IACnE,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACnC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAC1D,CAAC;IACL,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAgB;IAC9C,MAAM,IAAI,GAAI,GAAG,CAAC,MAAM,CAAC,IAA0B,CAAC,IAAI,CAAC;IACzD,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,MAAM,KAAK,GAAI,IAAyB,CAAC,IAAI,CAAC;IAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;IAC3B,2FAA2F;IAC3F,IAAI,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAI,IAA6B,CAAC,WAAW,CAAC;QACzD,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAiB,CAAC;IACnD,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;IACtB,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IACxE,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IACpE,IAAI,CAAC,GAAG,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IACzE,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACrF,OAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAsB,CAAC,KAAK,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,YAA4C,EAAE,OAAsB;IACtG,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;QAClC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;gBAAE,SAAS;YAC/C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,QAAQ,KAAK,IAAI;gBAAE,SAAS;YAChC,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YACtD,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9C,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;gBACrF,OAAO,GAAG,IAAI,CAAC;YACnB,CAAC;QACL,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,MAAM;IACxB,CAAC;AACL,CAAC"}
|