@js-recon/js-recon 1.4.1-beta.2 → 1.4.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 (76) hide show
  1. package/.claude-sync/hooks/post-merge +4 -0
  2. package/.claude-sync/merge-agentic.sh +77 -0
  3. package/.github/workflows/promote-js-recon.yml +33 -3
  4. package/CHANGELOG.md +21 -0
  5. package/build/globalConfig.js +1 -1
  6. package/build/globalConfig.js.map +1 -1
  7. package/build/index.js +6 -3
  8. package/build/index.js.map +1 -1
  9. package/build/lazyLoad/angular/angular_getFromMainJs.js +11 -29
  10. package/build/lazyLoad/angular/angular_getFromMainJs.js.map +1 -1
  11. package/build/lazyLoad/angular/angular_recursiveChunkImports.js +104 -0
  12. package/build/lazyLoad/angular/angular_recursiveChunkImports.js.map +1 -0
  13. package/build/lazyLoad/index.js +33 -11
  14. package/build/lazyLoad/index.js.map +1 -1
  15. package/build/lazyLoad/methodFilter.js +1 -1
  16. package/build/lazyLoad/methodFilter.js.map +1 -1
  17. package/build/lazyLoad/next_js/NextJsCrawler.js +5 -5
  18. package/build/lazyLoad/next_js/NextJsCrawler.js.map +1 -1
  19. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js +9 -8
  20. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js.map +1 -1
  21. package/build/lazyLoad/next_js/next_bruteForceJsFiles.js +4 -3
  22. package/build/lazyLoad/next_js/next_bruteForceJsFiles.js.map +1 -1
  23. package/build/lazyLoad/next_js/next_parseLayoutJs.js +31 -31
  24. package/build/lazyLoad/next_js/next_parseLayoutJs.js.map +1 -1
  25. package/build/lazyLoad/next_js/next_promiseResolve.js +4 -3
  26. package/build/lazyLoad/next_js/next_promiseResolve.js.map +1 -1
  27. package/build/lazyLoad/next_js/next_scriptTagsSubsequentRequests.js +7 -8
  28. package/build/lazyLoad/next_js/next_scriptTagsSubsequentRequests.js.map +1 -1
  29. package/build/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.js +6 -7
  30. package/build/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.js.map +1 -1
  31. package/build/lazyLoad/react/react_followImports.js +9 -8
  32. package/build/lazyLoad/react/react_followImports.js.map +1 -1
  33. package/build/lazyLoad/react/react_sourcemapUrls.js +5 -11
  34. package/build/lazyLoad/react/react_sourcemapUrls.js.map +1 -1
  35. package/build/lazyLoad/react/react_webpackChunkPaths.js +7 -6
  36. package/build/lazyLoad/react/react_webpackChunkPaths.js.map +1 -1
  37. package/build/lazyLoad/svelte/svelte_discoverPagesFromJs.js +13 -12
  38. package/build/lazyLoad/svelte/svelte_discoverPagesFromJs.js.map +1 -1
  39. package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js +6 -7
  40. package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js.map +1 -1
  41. package/build/lazyLoad/techDetect/checkReact.js +13 -0
  42. package/build/lazyLoad/techDetect/checkReact.js.map +1 -1
  43. package/build/lazyLoad/techDetect/checkVueJS.js +7 -0
  44. package/build/lazyLoad/techDetect/checkVueJS.js.map +1 -1
  45. package/build/lazyLoad/vue/vue_discoverJsFiles.js +6 -6
  46. package/build/lazyLoad/vue/vue_discoverJsFiles.js.map +1 -1
  47. package/build/lazyLoad/vue/vue_getClientSidePaths.js +8 -7
  48. package/build/lazyLoad/vue/vue_getClientSidePaths.js.map +1 -1
  49. package/build/lazyLoad/vue/vue_jsImports.js +16 -16
  50. package/build/lazyLoad/vue/vue_jsImports.js.map +1 -1
  51. package/build/lazyLoad/vue/vue_reconstructSourceMaps.js +5 -4
  52. package/build/lazyLoad/vue/vue_reconstructSourceMaps.js.map +1 -1
  53. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js +8 -1
  54. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js.map +1 -1
  55. package/build/lazyLoad/vue/vue_stringJsFiles.js +15 -8
  56. package/build/lazyLoad/vue/vue_stringJsFiles.js.map +1 -1
  57. package/build/lazyLoad/vue/vue_viteMapDeps.js +6 -5
  58. package/build/lazyLoad/vue/vue_viteMapDeps.js.map +1 -1
  59. package/build/proxy/checkFeasibility.js +69 -17
  60. package/build/proxy/checkFeasibility.js.map +1 -1
  61. package/build/proxy/genReq.js +0 -7
  62. package/build/proxy/genReq.js.map +1 -1
  63. package/build/proxy/index.js +26 -2
  64. package/build/proxy/index.js.map +1 -1
  65. package/build/proxy/proxyFeasibilityRequest.js +30 -0
  66. package/build/proxy/proxyFeasibilityRequest.js.map +1 -0
  67. package/build/refactor/index.js +23 -28
  68. package/build/refactor/index.js.map +1 -1
  69. package/build/run/index.js +54 -5
  70. package/build/run/index.js.map +1 -1
  71. package/build/utility/concurrency.js +35 -0
  72. package/build/utility/concurrency.js.map +1 -0
  73. package/build/utility/makeReq.js +6 -0
  74. package/build/utility/makeReq.js.map +1 -1
  75. package/package.json +6 -3
  76. package/patches/puppeteer-extra-plugin-user-data-dir+2.4.1.patch +31 -0
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env bash
2
+ # git post-merge hook: merges the corresponding js-recon-agentic-files branch
3
+ # whenever a merge/pull brings another branch's history in here.
4
+ exec "$(git rev-parse --show-toplevel)/.claude-sync/merge-agentic.sh" "$@"
@@ -0,0 +1,77 @@
1
+ #!/usr/bin/env bash
2
+ # Mirrors a js-recon branch merge/pull onto the corresponding branches in the
3
+ # sibling js-recon-agentic-files repo, since CLAUDE.md files are gitignored
4
+ # symlinks here and never participate in this repo's own merges.
5
+ set -euo pipefail
6
+
7
+ JS_RECON_ROOT="$(git rev-parse --show-toplevel)"
8
+ AGENTIC_REPO_PATH="${JSR_AGENTIC_FILES_PATH:-$JS_RECON_ROOT/../js-recon-agentic-files}"
9
+
10
+ TARGET_BRANCH="$(git -C "$JS_RECON_ROOT" symbolic-ref --short HEAD 2>/dev/null || echo "")"
11
+
12
+ if [ -z "$TARGET_BRANCH" ]; then
13
+ echo "[claude-sync] detached HEAD, skipping agentic-files merge"
14
+ exit 0
15
+ fi
16
+
17
+ if [ ! -d "$AGENTIC_REPO_PATH/.git" ]; then
18
+ echo "[claude-sync] agentic-files repo not found at $AGENTIC_REPO_PATH — see js-recon-agentic-files/README.md for setup"
19
+ exit 0
20
+ fi
21
+
22
+ # git gives post-merge no argument naming the branch that was merged in, and
23
+ # this fires for both fast-forward and real merges (plus `git pull`). The
24
+ # reflog message git writes for the merge is the one place that reliably
25
+ # names the source branch in both cases:
26
+ # "merge <branch>: Fast-forward"
27
+ # "merge <branch>: Merge made by the 'ort' strategy."
28
+ # "pull <remote> <branch>: Fast-forward" (or similar, from `git pull`)
29
+ REFLOG_MSG="$(git -C "$JS_RECON_ROOT" reflog -1 --format=%gs HEAD 2>/dev/null || echo "")"
30
+
31
+ SOURCE_BRANCH=""
32
+ if [[ "$REFLOG_MSG" =~ ^merge\ ([^:]+): ]]; then
33
+ SOURCE_BRANCH="${BASH_REMATCH[1]}"
34
+ elif [[ "$REFLOG_MSG" =~ ^pull\ [^\ ]+\ ([^:]+): ]]; then
35
+ SOURCE_BRANCH="${BASH_REMATCH[1]}"
36
+ fi
37
+
38
+ # Strip a remote prefix (e.g. "origin/dev" -> "dev") to match agentic-files'
39
+ # bare branch naming.
40
+ SOURCE_BRANCH="${SOURCE_BRANCH#origin/}"
41
+
42
+ if [ -z "$SOURCE_BRANCH" ]; then
43
+ echo "[claude-sync] could not determine merged-in branch from reflog ('$REFLOG_MSG') — skipping agentic-files merge"
44
+ exit 0
45
+ fi
46
+
47
+ if [ "$SOURCE_BRANCH" = "$TARGET_BRANCH" ]; then
48
+ exit 0
49
+ fi
50
+
51
+ (
52
+ cd "$AGENTIC_REPO_PATH"
53
+ git fetch origin --quiet
54
+
55
+ if git show-ref --verify --quiet "refs/remotes/origin/$TARGET_BRANCH"; then
56
+ git checkout -B "$TARGET_BRANCH" "origin/$TARGET_BRANCH" --quiet
57
+ else
58
+ echo "[claude-sync] WARNING: no 'origin/$TARGET_BRANCH' branch in agentic-files repo — skipping merge"
59
+ exit 0
60
+ fi
61
+
62
+ if ! git show-ref --verify --quiet "refs/remotes/origin/$SOURCE_BRANCH"; then
63
+ echo "[claude-sync] WARNING: no 'origin/$SOURCE_BRANCH' branch in agentic-files repo — nothing to merge"
64
+ exit 0
65
+ fi
66
+
67
+ if git merge --no-edit "origin/$SOURCE_BRANCH" --quiet; then
68
+ git push --quiet origin "$TARGET_BRANCH"
69
+ echo "[claude-sync] merged agentic-files '$SOURCE_BRANCH' into '$TARGET_BRANCH' and pushed"
70
+ else
71
+ git merge --abort
72
+ echo "[claude-sync] WARNING: merging agentic-files '$SOURCE_BRANCH' into '$TARGET_BRANCH' conflicted — aborted automatically."
73
+ echo "[claude-sync] resolve manually: cd $AGENTIC_REPO_PATH && git checkout $TARGET_BRANCH && git merge origin/$SOURCE_BRANCH"
74
+ fi
75
+ )
76
+
77
+ "$JS_RECON_ROOT/.claude-sync/sync.sh"
@@ -65,8 +65,14 @@ jobs:
65
65
  git config user.name "github-actions[bot]"
66
66
  git config user.email "github-actions[bot]@users.noreply.github.com"
67
67
  git add "${FORMULA}"
68
- git commit -m "chore: update ${FORMULA} to ${VERSION}"
69
- git push
68
+ # Idempotent: re-promoting an already-promoted version leaves the formula
69
+ # unchanged, so skip the commit/push instead of failing on "nothing to commit".
70
+ if git diff --cached --quiet; then
71
+ echo "${FORMULA} already at ${VERSION}; nothing to commit."
72
+ else
73
+ git commit -m "chore: update ${FORMULA} to ${VERSION}"
74
+ git push
75
+ fi
70
76
  env:
71
77
  VERSION: ${{ inputs.version }}
72
78
  FORMULA: ${{ steps.formula.outputs.formula }}
@@ -327,6 +333,13 @@ jobs:
327
333
  path: js-recon-labs
328
334
  persist-credentials: false
329
335
 
336
+ - name: Checkout js-recon-rules
337
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
338
+ with:
339
+ repository: js-recon/js-recon-rules
340
+ path: js-recon-rules
341
+ persist-credentials: false
342
+
330
343
  - name: Tap and install
331
344
  run: |
332
345
  brew tap js-recon/tap
@@ -390,10 +403,27 @@ jobs:
390
403
  sleep 2
391
404
  done
392
405
 
406
+ - name: Ensure a Chrome is available for Puppeteer
407
+ run: |
408
+ # The Homebrew keg ships js-recon but not a Chromium — Puppeteer needs a
409
+ # browser to run lazyload. Prefer the runner's pre-installed Google Chrome
410
+ # (present on GitHub macOS images); fall back to a Chrome-for-Testing build.
411
+ CHROME="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
412
+ if [[ ! -x "$CHROME" ]]; then
413
+ echo "Pre-installed Chrome not found; downloading a Chrome-for-Testing build..."
414
+ CHROME="$(npx --yes @puppeteer/browsers install chrome@stable --format "{{path}}")"
415
+ fi
416
+ if [[ ! -x "$CHROME" ]]; then
417
+ echo "Resolved Chrome path is not executable: $CHROME"
418
+ exit 1
419
+ fi
420
+ echo "Using Chrome at: $CHROME"
421
+ echo "PUPPETEER_EXECUTABLE_PATH=$CHROME" >> "$GITHUB_ENV"
422
+
393
423
  - name: Run installed js-recon against the lab app
394
424
  run: |
395
425
  echo "http://localhost:3001" > /tmp/brew-smoke-urls.txt
396
- "$BIN" run -u /tmp/brew-smoke-urls.txt -y -k
426
+ "$BIN" run -u /tmp/brew-smoke-urls.txt -r js-recon-rules -y -k
397
427
  env:
398
428
  BIN: ${{ steps.bin.outputs.bin }}
399
429
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # Change Log
2
2
 
3
+ ## 1.4.2 - 2026-07-29
4
+
5
+ ### Fixed
6
+
7
+ - Front-end framework detection (`lazyload`/`run`'s first step) could stall for a very long time on sites with many third-party script tags (analytics, tag managers, ad SDKs, etc.). `checkVueJS` and `checkReact` (`techDetect/`) fetched every `<script src>`/`<link rel="modulepreload">` URL referenced on the page — including third-party and `data:` URI ones — with no same-origin restriction, and each of those fetches could retry up to 10 times against an unreachable/slow host. Both checks now only fetch same-origin assets during detection, matching the intent already documented for this kind of check. (`lazyload`, `run`)
8
+
9
+ ### Added
10
+
11
+ - `lazyload`/`run`: added a `--detection-timeout <seconds>` flag (default `30`, `0` disables) that bounds the front-end framework detection step. If it fires, detection falls back to the same "framework not detected" path used for a genuine no-match. (`lazyload`, `run`)
12
+ - `run`: added a `--proxy-waf-fallback` flag. When a proxy is configured (`--proxy-config`), it runs the same feasibility check as `proxy --feasibility` against each target before processing it, and automatically decides whether to use the proxy: skips it if no firewall/WAF is detected without a proxy, keeps using it if it bypasses a detected firewall, or skips the target (new exit code 29 in single-URL mode) if the proxy can't bypass it. (`run`, `proxy`)
13
+
14
+ ## 1.4.1 - 2026-07-27
15
+
16
+ ### Fixed
17
+
18
+ - `-t/--threads` was ignored by most of the per-file discovery loops in `lazyLoad` (sourcemap URL discovery, import-following, webpack chunk-path brute forcing, string-reference scanning, layout.js parsing, and several Next.js/Vue/Svelte helpers), which fetched one file at a time regardless of the configured thread count. These loops now use a shared bounded-concurrency helper (`utility/concurrency.ts`) and respect `-t`. (`lazyload`, `run`)
19
+ - Angular: the `lazyload` crawler only followed the import graph one hop deep from `main.js`, so chunk-to-chunk imports (a downloaded chunk importing further chunks, and so on) were never resolved and those files never reached `map`/`analyze`. A new recursive chunk-import follower (`angular_recursiveChunkImports`) re-scans each newly-discovered chunk for further dynamic and static imports until no new chunks are found. (`lazyload`)
20
+ - Resolved npm-audit advisories: a path-traversal advisory in `postcss`, and a DoS advisory in `brace-expansion` (pulled in transitively via `puppeteer-extra-plugin-stealth`'s `rimraf`/`glob`/`minimatch` chain) by overriding `rimraf` to `^6.0.1`. (`deps`)
21
+ - The `rimraf` override above broke `puppeteer-extra-plugin-user-data-dir` (a transitive dependency of `puppeteer-extra-plugin-stealth`), which still calls the old `rimraf(path, opts, callback)` API; `rimraf@6` no longer exports a default callable function, causing `TypeError: rimraf is not a function` whenever a Puppeteer session disconnected during `run`. Patched via `patch-package` to use `fs.rm` instead of `rimraf` in that plugin. (`run`, `deps`)
22
+ - `run` (batch mode, `-u <file>`): the per-URL loop had no `catch` around `processUrl()`, so an unhandled exception for one target propagated into the outer `finally`'s unconditional `process.exit(process.exitCode ?? 0)` — terminating the process with a false "success" exit code before Node's default uncaught-exception reporting could print anything, and silently abandoning every subsequent target in the batch. Each target's `processUrl()` call is now wrapped in its own `try/catch`: a failure is logged, `process.exitCode` is set to `1`, and the loop continues to the next URL. (`run`)
23
+
3
24
  ## 1.4.1-beta.2 - 2026-07-22
4
25
 
5
26
  ### Added
@@ -1,6 +1,6 @@
1
1
  const githubURL = "https://github.com/js-recon/js-recon";
2
2
  const modulesDocs = "https://js-recon.io/docs/category/modules";
3
- const version = "1.4.1-beta.2";
3
+ const version = "1.4.2";
4
4
  const toolDesc = "JavaScript Enumeration and SAST";
5
5
  const axiosNonHttpMethods = ["isAxiosError"]; // methods available in axios, which are not for making HTTP requests
6
6
  let CONFIG = {
@@ -1 +1 @@
1
- {"version":3,"file":"globalConfig.js","sourceRoot":"","sources":["../src/globalConfig.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,sCAAsC,CAAC;AACzD,MAAM,WAAW,GAAG,2CAA2C,CAAC;AAChE,MAAM,OAAO,GAAG,cAAc,CAAC;AAC/B,MAAM,QAAQ,GAAG,iCAAiC,CAAC;AACnD,MAAM,mBAAmB,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,qEAAqE;AAEnH,IAAI,MAAM,GAAG;IACT,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,WAAW;IACxB,eAAe,EAAE,qFAAqF,SAAS,kCAAkC;IACjJ,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,QAAQ;IAClB,mBAAmB,EAAE,mBAAmB;IACxC,QAAQ,EAAE,GAAG,SAAS,oBAAoB;CAC7C,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"globalConfig.js","sourceRoot":"","sources":["../src/globalConfig.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,sCAAsC,CAAC;AACzD,MAAM,WAAW,GAAG,2CAA2C,CAAC;AAChE,MAAM,OAAO,GAAG,OAAO,CAAC;AACxB,MAAM,QAAQ,GAAG,iCAAiC,CAAC;AACnD,MAAM,mBAAmB,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,qEAAqE;AAEnH,IAAI,MAAM,GAAG;IACT,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,WAAW;IACxB,eAAe,EAAE,qFAAqF,SAAS,kCAAkC;IACjJ,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,QAAQ;IAClB,mBAAmB,EAAE,mBAAmB;IACxC,QAAQ,EAAE,GAAG,SAAS,oBAAoB;CAC7C,CAAC;AAEF,eAAe,MAAM,CAAC"}
package/build/index.js CHANGED
@@ -116,6 +116,7 @@ program
116
116
  .option("--max-iterations <iterations>", "Maximum number of recursive crawl iterations", "10")
117
117
  .option("--max-js-size <mb>", "Maximum JS file size in MB to parse (Vue only)", "2")
118
118
  .option("--lazyload-timeout <minutes>", "Hard timeout for the lazyload module in minutes (0 = no timeout)", "30")
119
+ .option("--detection-timeout <seconds>", "Timeout for front-end framework detection in seconds (0 = no timeout)", "30")
119
120
  .option("--max-pages <pages>", "Maximum HTML pages to visit during Next.js crawl (0 = unlimited)", "200")
120
121
  .option("--include-methods <methods>", "Comma-separated method names to run (whitelist). Use --list-methods to see valid names.")
121
122
  .option("--exclude-methods <methods>", "Comma-separated method names to skip (blacklist). Use --list-methods to see valid names.")
@@ -169,7 +170,7 @@ program
169
170
  globalsUtil.setYes(cmd.yes);
170
171
  validateAndSetTimeout(cmd.timeout);
171
172
  configureSandbox(cmd);
172
- yield lazyLoad(cmd.url, cmd.output, cmd.strictScope, cmd.scope.split(","), Number(cmd.threads), cmd.subsequentRequests, cmd.urlsFile, cmd.insecure, cmd.buildId, cmd.sourcemapDir, cmd.research, cmd.researchOutput, Number(cmd.maxIterations), Number(cmd.maxJsSize), Number(cmd.lazyloadTimeout) * 60 * 1000, Number(cmd.maxPages), includeMethods, excludeMethods);
173
+ yield lazyLoad(cmd.url, cmd.output, cmd.strictScope, cmd.scope.split(","), Number(cmd.threads), cmd.subsequentRequests, cmd.urlsFile, cmd.insecure, cmd.buildId, cmd.sourcemapDir, cmd.research, cmd.researchOutput, Number(cmd.maxIterations), Number(cmd.maxJsSize), Number(cmd.lazyloadTimeout) * 60 * 1000, Number(cmd.maxPages), includeMethods, excludeMethods, Number(cmd.detectionTimeout) * 1000);
173
174
  }));
174
175
  program
175
176
  .command("endpoints")
@@ -209,8 +210,8 @@ program
209
210
  .option("--aws-secret-key <key>", "AWS secret key (if not provided, AWS_SECRET_ACCESS_KEY environment variable will be used) [aws method]")
210
211
  .option("-c, --config <config>", "Name of the config file", ".proxy_config.json")
211
212
  .option("-l, --list", "List all the API created by this tool [aws method]", false)
212
- .option("--feasibility", "Check feasibility of API Gateway [aws method]", false)
213
- .option("--feasibility-url <url>", "URL to check feasibility of [aws method]")
213
+ .option("--feasibility", "Check whether a firewall/WAF blocks the target directly and, if so, whether the proxy method (--proxy-method, or the one already configured via -i/--init) bypasses it", false)
214
+ .option("--feasibility-url <url>", "URL to check feasibility of")
214
215
  .option("--proxy-method <method>", "Proxy method to configure with -i/--init: aws, socks, http, or oxylabs (omit for an interactive prompt)")
215
216
  .option("--proxy <url>", "SOCKS5/HTTP proxy URL for -i/--init (socks5://[user:pass@]host:port or http://[user:pass@]host:port)")
216
217
  .option("--oxylabs-username <username>", "Oxylabs datacenter proxy username for -i/--init")
@@ -384,6 +385,7 @@ program
384
385
  .option("-t, --threads <threads>", "Number of threads to use", "1")
385
386
  .option("--proxy-config <file>", "Proxy config file (generated via the `proxy` module)", ".proxy_config.json")
386
387
  .option("--ignore-proxy-env", "Skip JS_RECON_* proxy environment variables during resolution", false)
388
+ .option("--proxy-waf-fallback", "Before each target, check whether the configured proxy is needed and can bypass a WAF/firewall (reuses the `proxy --feasibility` logic); skip the target if the proxy can't bypass it", false)
387
389
  .option("--cache-file <file>", "File to store response cache", ".resp_cache.json")
388
390
  .option("--disable-cache", "Disable response caching", false)
389
391
  .option("--cache-only", "Only use the response cache; never make network requests", false)
@@ -408,6 +410,7 @@ program
408
410
  .option("--max-iterations <iterations>", "Maximum number of recursive crawl iterations", "10")
409
411
  .option("--max-js-size <mb>", "Maximum JS file size in MB to parse (Vue only)", "2")
410
412
  .option("--lazyload-timeout <minutes>", "Hard timeout for each lazyload step in minutes (0 = no timeout)", "30")
413
+ .option("--detection-timeout <seconds>", "Timeout for front-end framework detection in seconds (0 = no timeout)", "30")
411
414
  .option("--max-heap <mb>", "V8 heap size cap in MB (0 = all available RAM)")
412
415
  .option("--max-pages <pages>", "Maximum HTML pages to visit during Next.js crawl (0 = unlimited)", "200")
413
416
  .option("--include-methods <methods>", "Comma-separated lazyload method names to run (whitelist). Use --list-methods to see valid names.")
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- var _a;
11
10
  import makeRequest from "../../utility/makeReq.js";
12
- import _traverse from "@babel/traverse";
13
- import * as parser from "@babel/parser";
14
11
  import chalk from "chalk";
15
12
  import resolvePath from "../../utility/resolvePath.js";
16
- const traverse = ((_a = _traverse.default) !== null && _a !== void 0 ? _a : _traverse);
13
+ import { extractImportPaths } from "./angular_recursiveChunkImports.js";
17
14
  /**
18
15
  * Parses the main.js file of an Angular application to extract lazy-loaded module paths.
19
16
  * It traverses the AST to find dynamic import() expressions and extracts the chunk paths.
@@ -23,34 +20,19 @@ const traverse = ((_a = _traverse.default) !== null && _a !== void 0 ? _a : _tra
23
20
  */
24
21
  const angular_getFromMainJs = (mainJsUrl) => __awaiter(void 0, void 0, void 0, function* () {
25
22
  console.log(chalk.cyan("[i] Analyzing main.js from", mainJsUrl));
26
- let foundUrls = [];
27
23
  const mainJsRes = yield makeRequest(mainJsUrl, {});
28
24
  const mainJsBody = yield mainJsRes.text();
29
- // Parse the main.js file content into an AST
30
- const ast = parser.parse(mainJsBody, {
31
- sourceType: "unambiguous",
32
- plugins: ["jsx", "typescript"],
33
- errorRecovery: true,
34
- });
35
- let importDeclarationPaths = [];
36
- // Traverse the AST to find dynamic import expressions
37
- traverse(ast, {
38
- CallExpression(path) {
39
- // Check if the callee is an import()
40
- if (path.node.callee.type === "Import") {
41
- const importArg = path.node.arguments[0];
42
- // Ensure the first argument is a string literal and extract its value
43
- if (importArg && importArg.type === "StringLiteral") {
44
- importDeclarationPaths.push(importArg.value);
45
- }
46
- }
47
- },
48
- });
49
- // now, resolve the paths
50
- for (const importDeclarationPath of importDeclarationPaths) {
51
- foundUrls.push(resolvePath(mainJsUrl, importDeclarationPath));
25
+ const importPaths = extractImportPaths(mainJsBody);
26
+ const resolvedPaths = [];
27
+ for (const importPath of importPaths) {
28
+ try {
29
+ resolvedPaths.push(resolvePath(mainJsUrl, importPath));
30
+ }
31
+ catch (_a) {
32
+ continue;
33
+ }
52
34
  }
53
- return foundUrls;
35
+ return resolvedPaths;
54
36
  });
55
37
  export default angular_getFromMainJs;
56
38
  //# sourceMappingURL=angular_getFromMainJs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"angular_getFromMainJs.js","sourceRoot":"","sources":["../../../src/lazyLoad/angular/angular_getFromMainJs.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,SAAS,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,8BAA8B,CAAC;AAEvD,MAAM,QAAQ,GAAG,CAAC,MAAA,SAAS,CAAC,OAAO,mCAAI,SAAS,CAA6B,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,qBAAqB,GAAG,CAAO,SAAiB,EAAqB,EAAE;IACzE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,EAAE,SAAS,CAAC,CAAC,CAAC;IAEjE,IAAI,SAAS,GAAa,EAAE,CAAC;IAE7B,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;IAE1C,6CAA6C;IAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE;QACjC,UAAU,EAAE,aAAa;QACzB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;QAC9B,aAAa,EAAE,IAAI;KACtB,CAAC,CAAC;IAEH,IAAI,sBAAsB,GAAa,EAAE,CAAC;IAE1C,sDAAsD;IACtD,QAAQ,CAAC,GAAG,EAAE;QACV,cAAc,CAAC,IAAI;YACf,qCAAqC;YACrC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACzC,sEAAsE;gBACtE,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;oBAClD,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACjD,CAAC;YACL,CAAC;QACL,CAAC;KACJ,CAAC,CAAC;IAEH,yBAAyB;IACzB,KAAK,MAAM,qBAAqB,IAAI,sBAAsB,EAAE,CAAC;QACzD,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC,CAAA,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"angular_getFromMainJs.js","sourceRoot":"","sources":["../../../src/lazyLoad/angular/angular_getFromMainJs.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE;;;;;;GAMG;AACH,MAAM,qBAAqB,GAAG,CAAO,SAAiB,EAAqB,EAAE;IACzE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,EAAE,SAAS,CAAC,CAAC,CAAC;IAEjE,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;IAE1C,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAEnD,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC;YACD,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;QAC3D,CAAC;QAAC,WAAM,CAAC;YACL,SAAS;QACb,CAAC;IACL,CAAC;IACD,OAAO,aAAa,CAAC;AACzB,CAAC,CAAA,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,104 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var _a;
11
+ import makeRequest from "../../utility/makeReq.js";
12
+ import _traverse from "@babel/traverse";
13
+ import * as parser from "@babel/parser";
14
+ import chalk from "chalk";
15
+ import resolvePath from "../../utility/resolvePath.js";
16
+ import { runWithConcurrency } from "../../utility/concurrency.js";
17
+ const traverse = ((_a = _traverse.default) !== null && _a !== void 0 ? _a : _traverse);
18
+ /**
19
+ * Parses JS source and extracts every chunk import path it references, both
20
+ * dynamic (`import("./chunk-HASH.js")`) and static (`import { a as X } from "./chunk-HASH.js"`).
21
+ * Angular's router table uses the former; chunk-to-chunk references commonly use the latter.
22
+ *
23
+ * @param code The JS source to parse.
24
+ * @returns Raw (unresolved) import path strings found in the source.
25
+ */
26
+ export const extractImportPaths = (code) => {
27
+ let ast;
28
+ try {
29
+ ast = parser.parse(code, {
30
+ sourceType: "unambiguous",
31
+ plugins: ["jsx", "typescript"],
32
+ errorRecovery: true,
33
+ });
34
+ }
35
+ catch (_a) {
36
+ return [];
37
+ }
38
+ const importPaths = [];
39
+ traverse(ast, {
40
+ CallExpression(path) {
41
+ if (path.node.callee.type === "Import") {
42
+ const importArg = path.node.arguments[0];
43
+ if (importArg && importArg.type === "StringLiteral") {
44
+ importPaths.push(importArg.value);
45
+ }
46
+ }
47
+ },
48
+ ImportDeclaration(path) {
49
+ importPaths.push(path.node.source.value);
50
+ },
51
+ });
52
+ return importPaths;
53
+ };
54
+ /**
55
+ * Given a set of already-discovered Angular chunk URLs, recursively follows their
56
+ * import graph (both dynamic `import()` and static `import ... from`) until no new
57
+ * chunks are discovered, guarding against cycles/duplicates via a visited set.
58
+ *
59
+ * @param seedUrls Chunk URLs already discovered (e.g. from angular_getFromMainJs).
60
+ * @param threads Concurrency for each round of fetches.
61
+ * @returns The full set of transitively-discovered chunk URLs (seed URLs excluded).
62
+ */
63
+ const angular_recursiveChunkImports = (seedUrls_1, ...args_1) => __awaiter(void 0, [seedUrls_1, ...args_1], void 0, function* (seedUrls, threads = 1) {
64
+ const visited = new Set(seedUrls);
65
+ const discovered = new Set();
66
+ let toCrawl = [...seedUrls];
67
+ while (toCrawl.length > 0) {
68
+ const roundDiscovered = new Set();
69
+ yield runWithConcurrency(toCrawl, threads, (url) => __awaiter(void 0, void 0, void 0, function* () {
70
+ let res;
71
+ try {
72
+ res = yield makeRequest(url, {});
73
+ }
74
+ catch (_a) {
75
+ console.error(chalk.red(`[!] Failed to fetch chunk for import resolution: ${url}`));
76
+ return;
77
+ }
78
+ if (!res)
79
+ return;
80
+ const body = yield res.text();
81
+ const importPaths = extractImportPaths(body);
82
+ for (const importPath of importPaths) {
83
+ let resolvedUrl;
84
+ try {
85
+ resolvedUrl = resolvePath(url, importPath);
86
+ }
87
+ catch (_b) {
88
+ continue;
89
+ }
90
+ if (!visited.has(resolvedUrl)) {
91
+ roundDiscovered.add(resolvedUrl);
92
+ }
93
+ }
94
+ }));
95
+ toCrawl = [...roundDiscovered];
96
+ for (const url of toCrawl) {
97
+ visited.add(url);
98
+ discovered.add(url);
99
+ }
100
+ }
101
+ return [...discovered];
102
+ });
103
+ export default angular_recursiveChunkImports;
104
+ //# sourceMappingURL=angular_recursiveChunkImports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular_recursiveChunkImports.js","sourceRoot":"","sources":["../../../src/lazyLoad/angular/angular_recursiveChunkImports.ts"],"names":[],"mappings":"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"}