@shriyanss/js-recon 1.2.2-alpha.8 → 1.3.1-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/build/analyze/engine/astEngine.js +32 -26
  3. package/build/analyze/engine/astEngine.js.map +1 -1
  4. package/build/analyze/helpers/engineHelpers/findMemberExpressionAssignment.js.map +1 -1
  5. package/build/analyze/helpers/schemas.js +1 -0
  6. package/build/analyze/helpers/schemas.js.map +1 -1
  7. package/build/endpoints/next_js/client_jsFilesHref.js +4 -2
  8. package/build/endpoints/next_js/client_jsFilesHref.js.map +1 -1
  9. package/build/endpoints/next_js/client_mappedJsonFile.js.map +1 -1
  10. package/build/endpoints/next_js/client_subsequentRequests.js +12 -4
  11. package/build/endpoints/next_js/client_subsequentRequests.js.map +1 -1
  12. package/build/globalConfig.js +1 -1
  13. package/build/index.js +22 -2
  14. package/build/index.js.map +1 -1
  15. package/build/lazyLoad/downloadFilesUtil.js +74 -80
  16. package/build/lazyLoad/downloadFilesUtil.js.map +1 -1
  17. package/build/lazyLoad/downloadLoadedJsUtil.js +1 -1
  18. package/build/lazyLoad/downloadLoadedJsUtil.js.map +1 -1
  19. package/build/lazyLoad/globals.js +32 -1
  20. package/build/lazyLoad/globals.js.map +1 -1
  21. package/build/lazyLoad/index.js +53 -128
  22. package/build/lazyLoad/index.js.map +1 -1
  23. package/build/lazyLoad/next_js/NextJsCrawler.js +248 -0
  24. package/build/lazyLoad/next_js/NextJsCrawler.js.map +1 -0
  25. package/build/lazyLoad/next_js/next_GetJSScript.js +9 -8
  26. package/build/lazyLoad/next_js/next_GetJSScript.js.map +1 -1
  27. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js +1 -1
  28. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js.map +1 -1
  29. package/build/lazyLoad/next_js/next_SubsequentRequests.js +4 -2
  30. package/build/lazyLoad/next_js/next_SubsequentRequests.js.map +1 -1
  31. package/build/lazyLoad/next_js/next_bruteForceJsFiles.js +8 -3
  32. package/build/lazyLoad/next_js/next_bruteForceJsFiles.js.map +1 -1
  33. package/build/lazyLoad/next_js/next_getClientSidePaths.js +83 -0
  34. package/build/lazyLoad/next_js/next_getClientSidePaths.js.map +1 -0
  35. package/build/lazyLoad/next_js/next_promiseResolve.js +54 -45
  36. package/build/lazyLoad/next_js/next_promiseResolve.js.map +1 -1
  37. package/build/lazyLoad/nuxt_js/nuxt_astParse.js.map +1 -1
  38. package/build/lazyLoad/react/react_getScriptTags.js +29 -0
  39. package/build/lazyLoad/react/react_getScriptTags.js.map +1 -0
  40. package/build/lazyLoad/react/react_sourcemapUrls.js +44 -0
  41. package/build/lazyLoad/react/react_sourcemapUrls.js.map +1 -0
  42. package/build/lazyLoad/react/react_webpackChunkPaths.js +188 -0
  43. package/build/lazyLoad/react/react_webpackChunkPaths.js.map +1 -0
  44. package/build/lazyLoad/techDetect/checkAngularJS.js +70 -0
  45. package/build/lazyLoad/techDetect/checkAngularJS.js.map +1 -0
  46. package/build/lazyLoad/techDetect/checkNextJS.js +45 -0
  47. package/build/lazyLoad/techDetect/checkNextJS.js.map +1 -0
  48. package/build/lazyLoad/techDetect/checkNuxtJS.js +39 -0
  49. package/build/lazyLoad/techDetect/checkNuxtJS.js.map +1 -0
  50. package/build/lazyLoad/techDetect/checkReact.js +44 -0
  51. package/build/lazyLoad/techDetect/checkReact.js.map +1 -0
  52. package/build/lazyLoad/techDetect/checkSvelte.js +69 -0
  53. package/build/lazyLoad/techDetect/checkSvelte.js.map +1 -0
  54. package/build/lazyLoad/techDetect/checkVueJS.js +118 -0
  55. package/build/lazyLoad/techDetect/checkVueJS.js.map +1 -0
  56. package/build/lazyLoad/techDetect/index.js +14 -254
  57. package/build/lazyLoad/techDetect/index.js.map +1 -1
  58. package/build/lazyLoad/vue/vue_RuntimeJs.js +122 -54
  59. package/build/lazyLoad/vue/vue_RuntimeJs.js.map +1 -1
  60. package/build/lazyLoad/vue/vue_SingleJsFileOnHome.js +6 -0
  61. package/build/lazyLoad/vue/vue_SingleJsFileOnHome.js.map +1 -1
  62. package/build/lazyLoad/vue/vue_discoverJsFiles.js +68 -0
  63. package/build/lazyLoad/vue/vue_discoverJsFiles.js.map +1 -0
  64. package/build/lazyLoad/vue/vue_getClientSidePaths.js +122 -0
  65. package/build/lazyLoad/vue/vue_getClientSidePaths.js.map +1 -0
  66. package/build/lazyLoad/vue/vue_jsImports.js +40 -29
  67. package/build/lazyLoad/vue/vue_jsImports.js.map +1 -1
  68. package/build/lazyLoad/vue/vue_pageSrc.js +60 -0
  69. package/build/lazyLoad/vue/vue_pageSrc.js.map +1 -0
  70. package/build/lazyLoad/vue/vue_reconstructSourceMaps.js +8 -0
  71. package/build/lazyLoad/vue/vue_reconstructSourceMaps.js.map +1 -1
  72. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js +136 -0
  73. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js.map +1 -0
  74. package/build/lazyLoad/vue/vue_severalJsFilesHome.js +57 -0
  75. package/build/lazyLoad/vue/vue_severalJsFilesHome.js.map +1 -0
  76. package/build/lazyLoad/vue/vue_viteMapDeps.js +89 -0
  77. package/build/lazyLoad/vue/vue_viteMapDeps.js.map +1 -0
  78. package/build/map/index.js +19 -0
  79. package/build/map/index.js.map +1 -1
  80. package/build/map/next_js/getExports.js +3 -1
  81. package/build/map/next_js/getExports.js.map +1 -1
  82. package/build/map/next_js/getTurbopackConnections.js +255 -0
  83. package/build/map/next_js/getTurbopackConnections.js.map +1 -0
  84. package/build/map/next_js/getWebpackConnections.js +3 -4
  85. package/build/map/next_js/getWebpackConnections.js.map +1 -1
  86. package/build/map/next_js/resolveAxiosHelpers/findCrossChunkParams.js +14 -10
  87. package/build/map/next_js/resolveAxiosHelpers/findCrossChunkParams.js.map +1 -1
  88. package/build/map/next_js/resolveAxiosHelpers/handleAxiosCreate.js.map +1 -1
  89. package/build/map/next_js/resolveFetch.js +2 -1
  90. package/build/map/next_js/resolveFetch.js.map +1 -1
  91. package/build/map/next_js/utils.js.map +1 -1
  92. package/build/map/vue_js/getViteConnections.js +293 -0
  93. package/build/map/vue_js/getViteConnections.js.map +1 -0
  94. package/build/map/vue_js/interactive.js +39 -0
  95. package/build/map/vue_js/interactive.js.map +1 -0
  96. package/build/map/vue_js/interactive_helpers/commandHandler.js +285 -0
  97. package/build/map/vue_js/interactive_helpers/commandHandler.js.map +1 -0
  98. package/build/map/vue_js/interactive_helpers/commandHelpers.js +39 -0
  99. package/build/map/vue_js/interactive_helpers/commandHelpers.js.map +1 -0
  100. package/build/map/vue_js/interactive_helpers/helpMenu.js +11 -0
  101. package/build/map/vue_js/interactive_helpers/helpMenu.js.map +1 -0
  102. package/build/mcp/cli.js +381 -0
  103. package/build/mcp/cli.js.map +1 -0
  104. package/build/mcp/commands.js +147 -0
  105. package/build/mcp/commands.js.map +1 -0
  106. package/build/mcp/config.js +68 -0
  107. package/build/mcp/config.js.map +1 -0
  108. package/build/mcp/index.js +29 -0
  109. package/build/mcp/index.js.map +1 -0
  110. package/build/mcp/providers.js +153 -0
  111. package/build/mcp/providers.js.map +1 -0
  112. package/build/mcp/tools.js +185 -0
  113. package/build/mcp/tools.js.map +1 -0
  114. package/build/run/index.js +35 -16
  115. package/build/run/index.js.map +1 -1
  116. package/build/utility/makeReq.js +25 -55
  117. package/build/utility/makeReq.js.map +1 -1
  118. package/build/utility/puppeteerInstance.js +5 -0
  119. package/build/utility/puppeteerInstance.js.map +1 -0
  120. package/contributing/nextjs.md +410 -0
  121. package/package.json +11 -4
@@ -0,0 +1,60 @@
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
+ import makeRequest from "../../utility/makeReq.js";
11
+ import chalk from "chalk";
12
+ import * as cheerio from "cheerio";
13
+ const vue_pageSrc = (url) => __awaiter(void 0, void 0, void 0, function* () {
14
+ let toReturn = [];
15
+ // first, get the contents of the homepage
16
+ const req = yield makeRequest(url);
17
+ if (req == null) {
18
+ console.log(chalk.red(`Failed to fetch ${url}`));
19
+ return toReturn;
20
+ }
21
+ const homepageContent = yield req.text();
22
+ // get all the script srcs
23
+ const $script = cheerio.load(homepageContent);
24
+ $script("script").each((_, el) => {
25
+ const src = $script(el).attr("src");
26
+ if (src) {
27
+ // construct the full URL if it's a relative path
28
+ if (src.startsWith("http") || src.startsWith("//")) {
29
+ toReturn.push(src);
30
+ }
31
+ else {
32
+ const fullUrl = new URL(src, url).href;
33
+ toReturn.push(fullUrl);
34
+ }
35
+ }
36
+ });
37
+ // get all the link srcs
38
+ const $link = cheerio.load(homepageContent);
39
+ $link("link").each((_, el) => {
40
+ const src = $link(el).attr("href");
41
+ if (src) {
42
+ // check the rel attribute
43
+ const rel = $link(el).attr("rel");
44
+ const asAttr = $link(el).attr("as");
45
+ if (rel && (rel == "modulepreload" || (rel == "preload" && asAttr == "script"))) {
46
+ // construct the full URL if it's a relative path
47
+ if (src.startsWith("http") || src.startsWith("//")) {
48
+ toReturn.push(src);
49
+ }
50
+ else {
51
+ const fullUrl = new URL(src, url).href;
52
+ toReturn.push(fullUrl);
53
+ }
54
+ }
55
+ }
56
+ });
57
+ return toReturn;
58
+ });
59
+ export default vue_pageSrc;
60
+ //# sourceMappingURL=vue_pageSrc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue_pageSrc.js","sourceRoot":"","sources":["../../../src/lazyLoad/vue/vue_pageSrc.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAEnC,MAAM,WAAW,GAAG,CAAO,GAAW,EAAE,EAAE;IACtC,IAAI,QAAQ,GAAa,EAAE,CAAC;IAE5B,0CAA0C;IAC1C,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAEzC,0BAA0B;IAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9C,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;QAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,GAAG,EAAE,CAAC;YACN,iDAAiD;YACjD,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACJ,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC;gBACvC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;QACL,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,wBAAwB;IACxB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5C,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;QACzB,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,GAAG,EAAE,CAAC;YACN,0BAA0B;YAC1B,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,eAAe,IAAI,CAAC,GAAG,IAAI,SAAS,IAAI,MAAM,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC;gBAC9E,iDAAiD;gBACjD,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACJ,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC;oBACvC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3B,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAA,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -17,6 +17,10 @@ const vue_reconstructSourceMaps = (url, jsFilesToDownload) => __awaiter(void 0,
17
17
  return sourceMapUrls;
18
18
  }
19
19
  const req = yield makeRequest(jsFilesToDownload[0]);
20
+ if (req == null) {
21
+ console.log(chalk.red(`Failed to fetch ${jsFilesToDownload[0]}`));
22
+ return sourceMapUrls;
23
+ }
20
24
  const content = yield req.text();
21
25
  // check if it has the sourceMappingURL
22
26
  if (!(content.includes("sourceMappingURL=") || content.includes("sourceMappingURL ="))) {
@@ -26,6 +30,10 @@ const vue_reconstructSourceMaps = (url, jsFilesToDownload) => __awaiter(void 0,
26
30
  // now that one file has this, iterate through all the files, and reconstruct the source maps
27
31
  for (const jsFile of jsFilesToDownload) {
28
32
  const req = yield makeRequest(jsFile);
33
+ if (req == null) {
34
+ console.log(chalk.red(`Failed to fetch ${jsFile}`));
35
+ continue;
36
+ }
29
37
  const content = yield req.text();
30
38
  // get the sourceMappingURL
31
39
  let sourceMappingURL_reg = content.match(/sourceMappingURL=([^"]+)/);
@@ -1 +1 @@
1
- {"version":3,"file":"vue_reconstructSourceMaps.js","sourceRoot":"","sources":["../../../src/lazyLoad/vue/vue_reconstructSourceMaps.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,yBAAyB,GAAG,CAAO,GAAW,EAAE,iBAA2B,EAAE,EAAE;IACjF,2EAA2E;IAE3E,IAAI,aAAa,GAAa,EAAE,CAAC;IACjC,4BAA4B;IAC5B,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAEjC,uCAAuC;IACvC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC;QACrF,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;IAEvD,6FAA6F;IAC7F,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAEjC,2BAA2B;QAC3B,IAAI,oBAAoB,GAAG,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACrE,IAAI,oBAAoB,EAAE,CAAC;YACvB,6CAA6C;YAC7C,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAEpE,sBAAsB;YACtB,IAAI,gBAAgB,GAAW,EAAE,CAAC;YAClC,IAAI,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnC,gBAAgB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,gBAAgB,CAAC;YACjE,CAAC;iBAAM,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,gBAAgB,GAAG,IAAI,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC;YAC9D,CAAC;iBAAM,IAAI,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7C,gBAAgB,GAAG,gBAAgB,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACJ,gBAAgB,GAAG,IAAI,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC;YAC9D,CAAC;YAED,gEAAgE;YAChE,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;IACL,CAAC;IAED,OAAO,aAAa,CAAC;AACzB,CAAC,CAAA,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"vue_reconstructSourceMaps.js","sourceRoot":"","sources":["../../../src/lazyLoad/vue/vue_reconstructSourceMaps.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,yBAAyB,GAAG,CAAO,GAAW,EAAE,iBAA2B,EAAE,EAAE;IACjF,2EAA2E;IAE3E,IAAI,aAAa,GAAa,EAAE,CAAC;IACjC,4BAA4B;IAC5B,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAClE,OAAO,aAAa,CAAC;IACzB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAEjC,uCAAuC;IACvC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC;QACrF,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;IAEvD,6FAA6F;IAC7F,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC,CAAC;YACpD,SAAS;QACb,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAEjC,2BAA2B;QAC3B,IAAI,oBAAoB,GAAG,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACrE,IAAI,oBAAoB,EAAE,CAAC;YACvB,6CAA6C;YAC7C,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAEpE,sBAAsB;YACtB,IAAI,gBAAgB,GAAW,EAAE,CAAC;YAClC,IAAI,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnC,gBAAgB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,gBAAgB,CAAC;YACjE,CAAC;iBAAM,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,gBAAgB,GAAG,IAAI,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC;YAC9D,CAAC;iBAAM,IAAI,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7C,gBAAgB,GAAG,gBAAgB,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACJ,gBAAgB,GAAG,IAAI,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC;YAC9D,CAAC;YAED,gEAAgE;YAChE,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;IACL,CAAC;IAED,OAAO,aAAa,CAAC;AACzB,CAAC,CAAA,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,136 @@
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
+ import chalk from "chalk";
11
+ import cliProgress from "cli-progress";
12
+ import vue_discoverJsFiles from "./vue_discoverJsFiles.js";
13
+ /**
14
+ * Recursively walks newly discovered Vue.js client-side paths.
15
+ *
16
+ * For each path, runs the same discovery pipeline used on the entry URL
17
+ * (via {@link vue_discoverJsFiles}), collects every JS file it finds and
18
+ * queues any new client-side paths surfaced from those files. Paths are
19
+ * tracked in a visited set so each URL is only processed once.
20
+ *
21
+ * Termination conditions:
22
+ * - the pending queue is exhausted, or
23
+ * - {@link STAGNATION_LIMIT} consecutive rounds yield no new JS files.
24
+ */
25
+ const STAGNATION_LIMIT = 3;
26
+ const vue_recursiveClientSidePathDownload = (clientSidePaths_1, ...args_1) => __awaiter(void 0, [clientSidePaths_1, ...args_1], void 0, function* (clientSidePaths, threads = 1, maxJsSizeMb = 2) {
27
+ const allJsFiles = new Set();
28
+ const visitedPaths = new Set();
29
+ const knownPaths = new Set();
30
+ let pending = [];
31
+ for (const p of clientSidePaths) {
32
+ if (!knownPaths.has(p)) {
33
+ knownPaths.add(p);
34
+ pending.push(p);
35
+ }
36
+ }
37
+ let stagnantRounds = 0;
38
+ let round = 0;
39
+ if (pending.length === 0) {
40
+ return [];
41
+ }
42
+ const bar = new cliProgress.SingleBar({
43
+ format: chalk.cyan("[i] Recursing client-side paths ") +
44
+ "[{bar}] {percentage}% | {value}/{total} paths | round {round} | {jsFiles} JS files | {stagnant} stagnant",
45
+ barCompleteChar: "█",
46
+ barIncompleteChar: "░",
47
+ hideCursor: true,
48
+ clearOnComplete: false,
49
+ stopOnComplete: false,
50
+ etaBuffer: 50,
51
+ }, cliProgress.Presets.shades_classic);
52
+ bar.start(knownPaths.size, 0, {
53
+ round: 0,
54
+ jsFiles: 0,
55
+ stagnant: `0/${STAGNATION_LIMIT}`,
56
+ });
57
+ const refreshBar = () => {
58
+ bar.setTotal(knownPaths.size);
59
+ bar.update(visitedPaths.size, {
60
+ round,
61
+ jsFiles: allJsFiles.size,
62
+ stagnant: `${stagnantRounds}/${STAGNATION_LIMIT}`,
63
+ });
64
+ };
65
+ try {
66
+ while (pending.length > 0) {
67
+ const batch = pending.filter((p) => !visitedPaths.has(p));
68
+ pending = [];
69
+ if (batch.length === 0)
70
+ break;
71
+ round++;
72
+ const sizeBeforeRound = allJsFiles.size;
73
+ const errors = [];
74
+ let cursor = 0;
75
+ const workerCount = Math.max(1, Math.min(threads, batch.length));
76
+ const worker = () => __awaiter(void 0, void 0, void 0, function* () {
77
+ while (cursor < batch.length) {
78
+ const path = batch[cursor++];
79
+ try {
80
+ const { jsFiles, clientSidePaths: newPaths } = yield vue_discoverJsFiles(path, maxJsSizeMb);
81
+ for (const file of jsFiles) {
82
+ allJsFiles.add(file);
83
+ }
84
+ for (const newPath of newPaths) {
85
+ if (!knownPaths.has(newPath)) {
86
+ knownPaths.add(newPath);
87
+ pending.push(newPath);
88
+ }
89
+ }
90
+ }
91
+ catch (err) {
92
+ errors.push(`[!] Failed to recurse into ${path}: ${err instanceof Error ? err.message : String(err)}`);
93
+ }
94
+ finally {
95
+ visitedPaths.add(path);
96
+ refreshBar();
97
+ }
98
+ }
99
+ });
100
+ yield Promise.all(Array.from({ length: workerCount }, () => worker()));
101
+ if (errors.length > 0) {
102
+ bar.stop();
103
+ for (const msg of errors) {
104
+ console.log(chalk.red(msg));
105
+ }
106
+ bar.start(knownPaths.size, visitedPaths.size, {
107
+ round,
108
+ jsFiles: allJsFiles.size,
109
+ stagnant: `${stagnantRounds}/${STAGNATION_LIMIT}`,
110
+ });
111
+ }
112
+ const newFilesThisRound = allJsFiles.size - sizeBeforeRound;
113
+ if (newFilesThisRound === 0) {
114
+ stagnantRounds++;
115
+ refreshBar();
116
+ if (stagnantRounds >= STAGNATION_LIMIT) {
117
+ bar.stop();
118
+ console.log(chalk.yellow(`[!] Stopping recursion: ${STAGNATION_LIMIT} consecutive rounds without new JS files`));
119
+ break;
120
+ }
121
+ }
122
+ else {
123
+ stagnantRounds = 0;
124
+ }
125
+ }
126
+ }
127
+ finally {
128
+ bar.stop();
129
+ }
130
+ if (allJsFiles.size > 0) {
131
+ console.log(chalk.green(`[✓] Recursive client-side discovery yielded ${allJsFiles.size} JS file(s) across ${visitedPaths.size} path(s)`));
132
+ }
133
+ return [...allJsFiles];
134
+ });
135
+ export default vue_recursiveClientSidePathDownload;
136
+ //# sourceMappingURL=vue_recursiveClientSidePathDownload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue_recursiveClientSidePathDownload.js","sourceRoot":"","sources":["../../../src/lazyLoad/vue/vue_recursiveClientSidePathDownload.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
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
+ import chalk from "chalk";
11
+ import makeRequest from "../../utility/makeReq.js";
12
+ import * as cheerio from "cheerio";
13
+ const vue_severalJsFilesHome = (url) => __awaiter(void 0, void 0, void 0, function* () {
14
+ let jsFilesToReturn = [];
15
+ // get the contents of the homepage
16
+ const homepageReq = yield makeRequest(url);
17
+ if (homepageReq == null) {
18
+ console.log(chalk.red(`Failed to fetch ${url}`));
19
+ return jsFilesToReturn;
20
+ }
21
+ const homepageContent = yield homepageReq.text();
22
+ // parse it with cheerio
23
+ const $ = cheerio.load(homepageContent);
24
+ // find all the script tag urls
25
+ const scriptTags = $("script");
26
+ // iterate through those, and find the ones that aren't CDN URLs, like the relative or absolute paths
27
+ let jsPaths = [];
28
+ for (const tag of scriptTags) {
29
+ const src = $(tag).attr("src");
30
+ if (src && !src.startsWith("http")) {
31
+ jsPaths.push(src);
32
+ }
33
+ }
34
+ // if length is 1, return
35
+ if (jsPaths.length === 1) {
36
+ return jsFilesToReturn;
37
+ }
38
+ // apart from script tags, also go through the <link> tags, check if the `href` attr of those end with `.js`, and if so, push it to the list of the JS paths
39
+ const linkTags = $("link");
40
+ for (const tag of linkTags) {
41
+ const src = $(tag).attr("href");
42
+ if (src && !src.startsWith("http") && src.endsWith(".js")) {
43
+ jsPaths.push(src);
44
+ }
45
+ }
46
+ // now that there are files, go through those and get the full path of those
47
+ let fullJsUrls = [];
48
+ for (const path of jsPaths) {
49
+ const fullUrl = new URL(path, url).href;
50
+ fullJsUrls.push(fullUrl);
51
+ }
52
+ // push these to the list of the JS files to return
53
+ jsFilesToReturn.push(...fullJsUrls);
54
+ return jsFilesToReturn;
55
+ });
56
+ export default vue_severalJsFilesHome;
57
+ //# sourceMappingURL=vue_severalJsFilesHome.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue_severalJsFilesHome.js","sourceRoot":"","sources":["../../../src/lazyLoad/vue/vue_severalJsFilesHome.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,MAAM,sBAAsB,GAAG,CAAO,GAAW,EAAqB,EAAE;IACpE,IAAI,eAAe,GAAa,EAAE,CAAC;IAEnC,mCAAmC;IACnC,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,eAAe,CAAC;IAC3B,CAAC;IACD,MAAM,eAAe,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;IAEjD,wBAAwB;IACxB,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAExC,+BAA+B;IAC/B,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE/B,qGAAqG;IACrG,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC;IACL,CAAC;IAED,yBAAyB;IACzB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED,4JAA4J;IAC5J,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,IAAI,UAAU,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC;QACxC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,mDAAmD;IACnD,eAAe,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;IAEpC,OAAO,eAAe,CAAC;AAC3B,CAAC,CAAA,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
@@ -0,0 +1,89 @@
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
+ import makeRequest from "../../utility/makeReq.js";
11
+ import parser from "@babel/parser";
12
+ import _traverse from "@babel/traverse";
13
+ import chalk from "chalk";
14
+ import t from "@babel/types";
15
+ const traverse = _traverse.default;
16
+ /**
17
+ * Scans fetched JS files for Vite's __vite__mapDeps chunk manifest and returns
18
+ * all the discovered chunk URLs resolved against the JS file they were found in.
19
+ *
20
+ * Vite emits code like:
21
+ * const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./common.X.chunk.js",...])))=>i.map(i=>d[i]);
22
+ * where the array literal holds relative paths to every lazy-loaded chunk.
23
+ * The outer variable names (m, d, f) vary per build; only __vite__mapDeps is stable.
24
+ */
25
+ const vue_viteMapDeps = (jsFiles_1, ...args_1) => __awaiter(void 0, [jsFiles_1, ...args_1], void 0, function* (jsFiles, maxJsSizeMb = 2) {
26
+ const MAX_JS_SIZE_BYTES = maxJsSizeMb * 1024 * 1024;
27
+ const discovered = new Set();
28
+ const jsUrls = jsFiles.filter((f) => f.endsWith(".js"));
29
+ for (const jsUrl of jsUrls) {
30
+ const req = yield makeRequest(jsUrl);
31
+ if (!req)
32
+ continue;
33
+ const content = yield req.text();
34
+ if (content.length > MAX_JS_SIZE_BYTES)
35
+ continue;
36
+ let ast;
37
+ try {
38
+ ast = parser.parse(content, {
39
+ sourceType: "unambiguous",
40
+ plugins: ["jsx", "typescript"],
41
+ errorRecovery: true,
42
+ });
43
+ }
44
+ catch (_a) {
45
+ continue;
46
+ }
47
+ traverse(ast, {
48
+ VariableDeclarator(nodePath) {
49
+ if (!t.isIdentifier(nodePath.node.id, { name: "__vite__mapDeps" }))
50
+ return;
51
+ const init = nodePath.node.init;
52
+ if (!init || !t.isArrowFunctionExpression(init))
53
+ return;
54
+ // params: (i, m = __vite__mapDeps, d = (m.f || (m.f = [...])))
55
+ // Find any AssignmentPattern param whose right side is:
56
+ // LogicalExpression(||) where right = AssignmentExpression whose right = ArrayExpression
57
+ for (const param of init.params) {
58
+ if (!t.isAssignmentPattern(param))
59
+ continue;
60
+ const right = param.right;
61
+ if (!t.isLogicalExpression(right) || right.operator !== "||")
62
+ continue;
63
+ const rhsOfOr = right.right;
64
+ if (!t.isAssignmentExpression(rhsOfOr))
65
+ continue;
66
+ if (!t.isArrayExpression(rhsOfOr.right))
67
+ continue;
68
+ const foundInThisFile = [];
69
+ for (const element of rhsOfOr.right.elements) {
70
+ if (!element || !t.isStringLiteral(element))
71
+ continue;
72
+ const val = element.value;
73
+ if (!val.endsWith(".js"))
74
+ continue;
75
+ foundInThisFile.push(new URL(val, jsUrl).href);
76
+ }
77
+ if (foundInThisFile.length > 0) {
78
+ console.log(chalk.green(`[✓] Found ${foundInThisFile.length} chunks from __vite__mapDeps in ${jsUrl}`));
79
+ for (const u of foundInThisFile)
80
+ discovered.add(u);
81
+ }
82
+ }
83
+ },
84
+ });
85
+ }
86
+ return [...discovered];
87
+ });
88
+ export default vue_viteMapDeps;
89
+ //# sourceMappingURL=vue_viteMapDeps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue_viteMapDeps.js","sourceRoot":"","sources":["../../../src/lazyLoad/vue/vue_viteMapDeps.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ import chalk from "chalk";
11
11
  import fs from "fs";
12
12
  // Next.JS
13
13
  import getWebpackConnections from "./next_js/getWebpackConnections.js";
14
+ import getTurbopackConnections from "./next_js/getTurbopackConnections.js";
14
15
  import getFetchInstances from "./next_js/getFetchInstances.js";
15
16
  import resolveFetch from "./next_js/resolveFetch.js";
16
17
  import interactive from "./next_js/interactive.js";
@@ -20,8 +21,12 @@ import resolveAxios from "./next_js/resolveAxios.js";
20
21
  import { getOpenapi, getOpenapiOutput, getOpenapiOutputFile } from "../utility/globals.js";
21
22
  import { generateOpenapiV3Spec } from "../utility/openapiGenerator.js";
22
23
  import getExports from "./next_js/getExports.js";
24
+ // Vue.JS
25
+ import getViteConnections from "./vue_js/getViteConnections.js";
26
+ import vueInteractive from "./vue_js/interactive.js";
23
27
  const availableTech = {
24
28
  next: "Next.JS",
29
+ vue: "Vue.JS",
25
30
  };
26
31
  const availableFormats = {
27
32
  json: "JSON",
@@ -79,6 +84,8 @@ const map = (directory, output, formats, tech, list, interactive_mode) => __awai
79
84
  if (!allOutputFilesAvailable) {
80
85
  // skip regeneration if output file already exists
81
86
  chunks = yield getWebpackConnections(directory, output, formats);
87
+ // also collect Turbopack chunks (Next.JS apps may be built with either bundler)
88
+ chunks = yield getTurbopackConnections(directory, output, formats, chunks);
82
89
  // get the exports
83
90
  chunks = yield getExports(chunks);
84
91
  // now, iterate through them, and check fetch instances
@@ -108,6 +115,18 @@ const map = (directory, output, formats, tech, list, interactive_mode) => __awai
108
115
  console.log(chalk.green(`[✓] Generated OpenAPI spec at ${getOpenapiOutputFile()}`));
109
116
  }
110
117
  }
118
+ else if (tech === "vue") {
119
+ let chunks;
120
+ if (!existsSync(`${output}.json`)) {
121
+ chunks = yield getViteConnections(directory, output, formats);
122
+ }
123
+ else {
124
+ chunks = JSON.parse(readFileSync(`${output}.json`, { encoding: "utf8" }));
125
+ }
126
+ if (interactive_mode) {
127
+ yield vueInteractive(chunks, `${output}.json`);
128
+ }
129
+ }
111
130
  });
112
131
  export default map;
113
132
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/map/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/map/index.ts"],"names":[],"mappings":"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"}
@@ -78,7 +78,9 @@ const getExports = (chunks) => __awaiter(void 0, void 0, void 0, function* () {
78
78
  node.arguments[1].type === "ObjectExpression") {
79
79
  // get the names of the properties
80
80
  node.arguments[1].properties.forEach((property) => {
81
- chunkExports.push(property.key.name);
81
+ if (property.type !== "SpreadElement" && property.key.type === "Identifier") {
82
+ chunkExports.push(property.key.name);
83
+ }
82
84
  });
83
85
  }
84
86
  },
@@ -1 +1 @@
1
- {"version":3,"file":"getExports.js","sourceRoot":"","sources":["../../../src/map/next_js/getExports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getExports.js","sourceRoot":"","sources":["../../../src/map/next_js/getExports.ts"],"names":[],"mappings":"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"}