@js-recon/js-recon 1.3.1-beta.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 (361) hide show
  1. package/.gitattributes +2 -0
  2. package/.github/ISSUE_TEMPLATE/bug_report.md +29 -0
  3. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  4. package/.github/ISSUE_TEMPLATE/new_tech_support_request.md +26 -0
  5. package/.github/workflows/build-and-prettify.yaml +121 -0
  6. package/.github/workflows/pr_checker.yml +22 -0
  7. package/.github/workflows/publish-js-recon.yml +169 -0
  8. package/.prettierignore +2 -0
  9. package/.prettierrc +6 -0
  10. package/CHANGELOG.md +692 -0
  11. package/CLAUDE.md +290 -0
  12. package/Dockerfile +34 -0
  13. package/LICENSE +21 -0
  14. package/README.md +101 -0
  15. package/SECURITY.md +37 -0
  16. package/build/analyze/engine/astEngine.js +224 -0
  17. package/build/analyze/engine/astEngine.js.map +1 -0
  18. package/build/analyze/engine/index.js +59 -0
  19. package/build/analyze/engine/index.js.map +1 -0
  20. package/build/analyze/engine/requestEngine.js +100 -0
  21. package/build/analyze/engine/requestEngine.js.map +1 -0
  22. package/build/analyze/helpers/engineHelpers/findDirectAssignment.js +37 -0
  23. package/build/analyze/helpers/engineHelpers/findDirectAssignment.js.map +1 -0
  24. package/build/analyze/helpers/engineHelpers/findMemberExpressionAssignment.js +29 -0
  25. package/build/analyze/helpers/engineHelpers/findMemberExpressionAssignment.js.map +1 -0
  26. package/build/analyze/helpers/engineHelpers/resolveFunctionIdentifier.js +38 -0
  27. package/build/analyze/helpers/engineHelpers/resolveFunctionIdentifier.js.map +1 -0
  28. package/build/analyze/helpers/engineHelpers/taintFlow.js +250 -0
  29. package/build/analyze/helpers/engineHelpers/taintFlow.js.map +1 -0
  30. package/build/analyze/helpers/initRules.js +111 -0
  31. package/build/analyze/helpers/initRules.js.map +1 -0
  32. package/build/analyze/helpers/outputHelper.js +14 -0
  33. package/build/analyze/helpers/outputHelper.js.map +1 -0
  34. package/build/analyze/helpers/schemas.js +57 -0
  35. package/build/analyze/helpers/schemas.js.map +1 -0
  36. package/build/analyze/helpers/validate.js +89 -0
  37. package/build/analyze/helpers/validate.js.map +1 -0
  38. package/build/analyze/index.js +150 -0
  39. package/build/analyze/index.js.map +1 -0
  40. package/build/analyze/types/index.js +2 -0
  41. package/build/analyze/types/index.js.map +1 -0
  42. package/build/api_gateway/checkFeasibility.js +41 -0
  43. package/build/api_gateway/checkFeasibility.js.map +1 -0
  44. package/build/api_gateway/checkFireWallBlocking.js +33 -0
  45. package/build/api_gateway/checkFireWallBlocking.js.map +1 -0
  46. package/build/api_gateway/genReq.js +205 -0
  47. package/build/api_gateway/genReq.js.map +1 -0
  48. package/build/api_gateway/index.js +291 -0
  49. package/build/api_gateway/index.js.map +1 -0
  50. package/build/endpoints/gen_report/gen_json.js +30 -0
  51. package/build/endpoints/gen_report/gen_json.js.map +1 -0
  52. package/build/endpoints/gen_report/utility/iterate_n_store.js +64 -0
  53. package/build/endpoints/gen_report/utility/iterate_n_store.js.map +1 -0
  54. package/build/endpoints/index.js +101 -0
  55. package/build/endpoints/index.js.map +1 -0
  56. package/build/endpoints/next_js/client_jsFilesHref.js +100 -0
  57. package/build/endpoints/next_js/client_jsFilesHref.js.map +1 -0
  58. package/build/endpoints/next_js/client_jsonParse.js +89 -0
  59. package/build/endpoints/next_js/client_jsonParse.js.map +1 -0
  60. package/build/endpoints/next_js/client_mappedJsonFile.js +103 -0
  61. package/build/endpoints/next_js/client_mappedJsonFile.js.map +1 -0
  62. package/build/endpoints/next_js/client_subsequentRequests.js +211 -0
  63. package/build/endpoints/next_js/client_subsequentRequests.js.map +1 -0
  64. package/build/fingerprint/index.js +123 -0
  65. package/build/fingerprint/index.js.map +1 -0
  66. package/build/globalConfig.js +16 -0
  67. package/build/globalConfig.js.map +1 -0
  68. package/build/index.js +332 -0
  69. package/build/index.js.map +1 -0
  70. package/build/lazyLoad/angular/angular_getFromMainJs.js +55 -0
  71. package/build/lazyLoad/angular/angular_getFromMainJs.js.map +1 -0
  72. package/build/lazyLoad/angular/angular_getFromPageSource.js +43 -0
  73. package/build/lazyLoad/angular/angular_getFromPageSource.js.map +1 -0
  74. package/build/lazyLoad/downloadFilesUtil.js +127 -0
  75. package/build/lazyLoad/downloadFilesUtil.js.map +1 -0
  76. package/build/lazyLoad/downloadLoadedJsUtil.js +44 -0
  77. package/build/lazyLoad/downloadLoadedJsUtil.js.map +1 -0
  78. package/build/lazyLoad/downloadQueue.js +191 -0
  79. package/build/lazyLoad/downloadQueue.js.map +1 -0
  80. package/build/lazyLoad/globals.js +107 -0
  81. package/build/lazyLoad/globals.js.map +1 -0
  82. package/build/lazyLoad/index.js +377 -0
  83. package/build/lazyLoad/index.js.map +1 -0
  84. package/build/lazyLoad/next_js/NextJsCrawler.js +332 -0
  85. package/build/lazyLoad/next_js/NextJsCrawler.js.map +1 -0
  86. package/build/lazyLoad/next_js/next_GetJSScript.js +126 -0
  87. package/build/lazyLoad/next_js/next_GetJSScript.js.map +1 -0
  88. package/build/lazyLoad/next_js/next_GetLazyResourcesBuildManifestJs.js +83 -0
  89. package/build/lazyLoad/next_js/next_GetLazyResourcesBuildManifestJs.js.map +1 -0
  90. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js +222 -0
  91. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js.map +1 -0
  92. package/build/lazyLoad/next_js/next_SubsequentRequests.js +208 -0
  93. package/build/lazyLoad/next_js/next_SubsequentRequests.js.map +1 -0
  94. package/build/lazyLoad/next_js/next_bruteForceJsFiles.js +37 -0
  95. package/build/lazyLoad/next_js/next_bruteForceJsFiles.js.map +1 -0
  96. package/build/lazyLoad/next_js/next_buildId.js +55 -0
  97. package/build/lazyLoad/next_js/next_buildId.js.map +1 -0
  98. package/build/lazyLoad/next_js/next_getClientSidePaths.js +83 -0
  99. package/build/lazyLoad/next_js/next_getClientSidePaths.js.map +1 -0
  100. package/build/lazyLoad/next_js/next_globals.js +8 -0
  101. package/build/lazyLoad/next_js/next_globals.js.map +1 -0
  102. package/build/lazyLoad/next_js/next_parseLayoutJs.js +116 -0
  103. package/build/lazyLoad/next_js/next_parseLayoutJs.js.map +1 -0
  104. package/build/lazyLoad/next_js/next_promiseResolve.js +85 -0
  105. package/build/lazyLoad/next_js/next_promiseResolve.js.map +1 -0
  106. package/build/lazyLoad/next_js/next_scriptTagsSubsequentRequests.js +51 -0
  107. package/build/lazyLoad/next_js/next_scriptTagsSubsequentRequests.js.map +1 -0
  108. package/build/lazyLoad/nuxt_js/nuxt_astParse.js +202 -0
  109. package/build/lazyLoad/nuxt_js/nuxt_astParse.js.map +1 -0
  110. package/build/lazyLoad/nuxt_js/nuxt_getFromPageSource.js +82 -0
  111. package/build/lazyLoad/nuxt_js/nuxt_getFromPageSource.js.map +1 -0
  112. package/build/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.js +108 -0
  113. package/build/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.js.map +1 -0
  114. package/build/lazyLoad/react/react_followImports.js +105 -0
  115. package/build/lazyLoad/react/react_followImports.js.map +1 -0
  116. package/build/lazyLoad/react/react_getScriptTags.js +52 -0
  117. package/build/lazyLoad/react/react_getScriptTags.js.map +1 -0
  118. package/build/lazyLoad/react/react_sourcemapUrls.js +44 -0
  119. package/build/lazyLoad/react/react_sourcemapUrls.js.map +1 -0
  120. package/build/lazyLoad/react/react_webpackChunkPaths.js +188 -0
  121. package/build/lazyLoad/react/react_webpackChunkPaths.js.map +1 -0
  122. package/build/lazyLoad/sourcemap.js +188 -0
  123. package/build/lazyLoad/sourcemap.js.map +1 -0
  124. package/build/lazyLoad/svelte/svelte_discoverPagesFromJs.js +162 -0
  125. package/build/lazyLoad/svelte/svelte_discoverPagesFromJs.js.map +1 -0
  126. package/build/lazyLoad/svelte/svelte_getFromPageSource.js +91 -0
  127. package/build/lazyLoad/svelte/svelte_getFromPageSource.js.map +1 -0
  128. package/build/lazyLoad/svelte/svelte_recursivePageCrawl.js +180 -0
  129. package/build/lazyLoad/svelte/svelte_recursivePageCrawl.js.map +1 -0
  130. package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js +123 -0
  131. package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js.map +1 -0
  132. package/build/lazyLoad/techDetect/checkAngularJS.js +70 -0
  133. package/build/lazyLoad/techDetect/checkAngularJS.js.map +1 -0
  134. package/build/lazyLoad/techDetect/checkNextJS.js +45 -0
  135. package/build/lazyLoad/techDetect/checkNextJS.js.map +1 -0
  136. package/build/lazyLoad/techDetect/checkNuxtJS.js +39 -0
  137. package/build/lazyLoad/techDetect/checkNuxtJS.js.map +1 -0
  138. package/build/lazyLoad/techDetect/checkReact.js +86 -0
  139. package/build/lazyLoad/techDetect/checkReact.js.map +1 -0
  140. package/build/lazyLoad/techDetect/checkSvelte.js +69 -0
  141. package/build/lazyLoad/techDetect/checkSvelte.js.map +1 -0
  142. package/build/lazyLoad/techDetect/checkVueJS.js +118 -0
  143. package/build/lazyLoad/techDetect/checkVueJS.js.map +1 -0
  144. package/build/lazyLoad/techDetect/index.js +161 -0
  145. package/build/lazyLoad/techDetect/index.js.map +1 -0
  146. package/build/lazyLoad/vue/vue_RuntimeJs.js +169 -0
  147. package/build/lazyLoad/vue/vue_RuntimeJs.js.map +1 -0
  148. package/build/lazyLoad/vue/vue_SingleJsFileOnHome.js +102 -0
  149. package/build/lazyLoad/vue/vue_SingleJsFileOnHome.js.map +1 -0
  150. package/build/lazyLoad/vue/vue_discoverJsFiles.js +82 -0
  151. package/build/lazyLoad/vue/vue_discoverJsFiles.js.map +1 -0
  152. package/build/lazyLoad/vue/vue_getClientSidePaths.js +155 -0
  153. package/build/lazyLoad/vue/vue_getClientSidePaths.js.map +1 -0
  154. package/build/lazyLoad/vue/vue_jsImports.js +76 -0
  155. package/build/lazyLoad/vue/vue_jsImports.js.map +1 -0
  156. package/build/lazyLoad/vue/vue_pageSrc.js +60 -0
  157. package/build/lazyLoad/vue/vue_pageSrc.js.map +1 -0
  158. package/build/lazyLoad/vue/vue_reconstructSourceMaps.js +64 -0
  159. package/build/lazyLoad/vue/vue_reconstructSourceMaps.js.map +1 -0
  160. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js +142 -0
  161. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js.map +1 -0
  162. package/build/lazyLoad/vue/vue_severalJsFilesHome.js +57 -0
  163. package/build/lazyLoad/vue/vue_severalJsFilesHome.js.map +1 -0
  164. package/build/lazyLoad/vue/vue_sourcemapExtract.js +166 -0
  165. package/build/lazyLoad/vue/vue_sourcemapExtract.js.map +1 -0
  166. package/build/lazyLoad/vue/vue_stringJsFiles.js +148 -0
  167. package/build/lazyLoad/vue/vue_stringJsFiles.js.map +1 -0
  168. package/build/lazyLoad/vue/vue_viteMapDeps.js +89 -0
  169. package/build/lazyLoad/vue/vue_viteMapDeps.js.map +1 -0
  170. package/build/load/index.js +316 -0
  171. package/build/load/index.js.map +1 -0
  172. package/build/map/graphql/resolveGraphql.js +296 -0
  173. package/build/map/graphql/resolveGraphql.js.map +1 -0
  174. package/build/map/index.js +261 -0
  175. package/build/map/index.js.map +1 -0
  176. package/build/map/next_js/getAxiosInstances.js +64 -0
  177. package/build/map/next_js/getAxiosInstances.js.map +1 -0
  178. package/build/map/next_js/getExports.js +101 -0
  179. package/build/map/next_js/getExports.js.map +1 -0
  180. package/build/map/next_js/getFetchInstances.js +139 -0
  181. package/build/map/next_js/getFetchInstances.js.map +1 -0
  182. package/build/map/next_js/getTurbopackConnections.js +255 -0
  183. package/build/map/next_js/getTurbopackConnections.js.map +1 -0
  184. package/build/map/next_js/getWebpackConnections.js +235 -0
  185. package/build/map/next_js/getWebpackConnections.js.map +1 -0
  186. package/build/map/next_js/interactive.js +69 -0
  187. package/build/map/next_js/interactive.js.map +1 -0
  188. package/build/map/next_js/interactive_helpers/commandHandler.js +310 -0
  189. package/build/map/next_js/interactive_helpers/commandHandler.js.map +1 -0
  190. package/build/map/next_js/interactive_helpers/commandHelpers.js +245 -0
  191. package/build/map/next_js/interactive_helpers/commandHelpers.js.map +1 -0
  192. package/build/map/next_js/interactive_helpers/esqueryGen.js +370 -0
  193. package/build/map/next_js/interactive_helpers/esqueryGen.js.map +1 -0
  194. package/build/map/next_js/interactive_helpers/helpMenu.js +12 -0
  195. package/build/map/next_js/interactive_helpers/helpMenu.js.map +1 -0
  196. package/build/map/next_js/interactive_helpers/inputPatch.js +207 -0
  197. package/build/map/next_js/interactive_helpers/inputPatch.js.map +1 -0
  198. package/build/map/next_js/interactive_helpers/keybindings.js +90 -0
  199. package/build/map/next_js/interactive_helpers/keybindings.js.map +1 -0
  200. package/build/map/next_js/interactive_helpers/printer.js +23 -0
  201. package/build/map/next_js/interactive_helpers/printer.js.map +1 -0
  202. package/build/map/next_js/interactive_helpers/ui.js +88 -0
  203. package/build/map/next_js/interactive_helpers/ui.js.map +1 -0
  204. package/build/map/next_js/resolveAxios.js +152 -0
  205. package/build/map/next_js/resolveAxios.js.map +1 -0
  206. package/build/map/next_js/resolveAxiosHelpers/astNodeToJsonString.js +64 -0
  207. package/build/map/next_js/resolveAxiosHelpers/astNodeToJsonString.js.map +1 -0
  208. package/build/map/next_js/resolveAxiosHelpers/directCallsWithoutAssignment.js +48 -0
  209. package/build/map/next_js/resolveAxiosHelpers/directCallsWithoutAssignment.js.map +1 -0
  210. package/build/map/next_js/resolveAxiosHelpers/findAxiosClients.js +34 -0
  211. package/build/map/next_js/resolveAxiosHelpers/findAxiosClients.js.map +1 -0
  212. package/build/map/next_js/resolveAxiosHelpers/findAxiosInstance.js +39 -0
  213. package/build/map/next_js/resolveAxiosHelpers/findAxiosInstance.js.map +1 -0
  214. package/build/map/next_js/resolveAxiosHelpers/findCrossChunkParams.js +312 -0
  215. package/build/map/next_js/resolveAxiosHelpers/findCrossChunkParams.js.map +1 -0
  216. package/build/map/next_js/resolveAxiosHelpers/handleAxiosCreate.js +173 -0
  217. package/build/map/next_js/resolveAxiosHelpers/handleAxiosCreate.js.map +1 -0
  218. package/build/map/next_js/resolveAxiosHelpers/handleZDotCreate.js +261 -0
  219. package/build/map/next_js/resolveAxiosHelpers/handleZDotCreate.js.map +1 -0
  220. package/build/map/next_js/resolveAxiosHelpers/interceptorHeaders.js +206 -0
  221. package/build/map/next_js/resolveAxiosHelpers/interceptorHeaders.js.map +1 -0
  222. package/build/map/next_js/resolveAxiosHelpers/processAxiosCall.js +168 -0
  223. package/build/map/next_js/resolveAxiosHelpers/processAxiosCall.js.map +1 -0
  224. package/build/map/next_js/resolveAxiosHelpers/processDirectAxiosCall.js +121 -0
  225. package/build/map/next_js/resolveAxiosHelpers/processDirectAxiosCall.js.map +1 -0
  226. package/build/map/next_js/resolveAxiosHelpers/processExportedEndpoints.js +274 -0
  227. package/build/map/next_js/resolveAxiosHelpers/processExportedEndpoints.js.map +1 -0
  228. package/build/map/next_js/resolveAxiosHelpers/traceAxiosInstanceExports.js +518 -0
  229. package/build/map/next_js/resolveAxiosHelpers/traceAxiosInstanceExports.js.map +1 -0
  230. package/build/map/next_js/resolveAxiosHelpers/traceBody.js +913 -0
  231. package/build/map/next_js/resolveAxiosHelpers/traceBody.js.map +1 -0
  232. package/build/map/next_js/resolveFetch.js +533 -0
  233. package/build/map/next_js/resolveFetch.js.map +1 -0
  234. package/build/map/next_js/resolveNewRequest.js +749 -0
  235. package/build/map/next_js/resolveNewRequest.js.map +1 -0
  236. package/build/map/next_js/resolveServerActions.js +449 -0
  237. package/build/map/next_js/resolveServerActions.js.map +1 -0
  238. package/build/map/next_js/utils.js +1600 -0
  239. package/build/map/next_js/utils.js.map +1 -0
  240. package/build/map/react_js/getReactConnections.js +303 -0
  241. package/build/map/react_js/getReactConnections.js.map +1 -0
  242. package/build/map/react_js/interactive.js +4 -0
  243. package/build/map/react_js/interactive.js.map +1 -0
  244. package/build/map/react_js/react_resolveFetch.js +6 -0
  245. package/build/map/react_js/react_resolveFetch.js.map +1 -0
  246. package/build/map/svelte_js/interactive.js +58 -0
  247. package/build/map/svelte_js/interactive.js.map +1 -0
  248. package/build/map/svelte_js/interactive_helpers/commandHandler.js +4 -0
  249. package/build/map/svelte_js/interactive_helpers/commandHandler.js.map +1 -0
  250. package/build/map/vue_js/bodyResolver.js +477 -0
  251. package/build/map/vue_js/bodyResolver.js.map +1 -0
  252. package/build/map/vue_js/crossFileResolver.js +438 -0
  253. package/build/map/vue_js/crossFileResolver.js.map +1 -0
  254. package/build/map/vue_js/getViteConnections.js +343 -0
  255. package/build/map/vue_js/getViteConnections.js.map +1 -0
  256. package/build/map/vue_js/interactive.js +67 -0
  257. package/build/map/vue_js/interactive.js.map +1 -0
  258. package/build/map/vue_js/interactive_helpers/commandHandler.js +307 -0
  259. package/build/map/vue_js/interactive_helpers/commandHandler.js.map +1 -0
  260. package/build/map/vue_js/interactive_helpers/commandHelpers.js +39 -0
  261. package/build/map/vue_js/interactive_helpers/commandHelpers.js.map +1 -0
  262. package/build/map/vue_js/interactive_helpers/helpMenu.js +12 -0
  263. package/build/map/vue_js/interactive_helpers/helpMenu.js.map +1 -0
  264. package/build/map/vue_js/taint_utils.js +621 -0
  265. package/build/map/vue_js/taint_utils.js.map +1 -0
  266. package/build/map/vue_js/vue_resolveFetch.js +416 -0
  267. package/build/map/vue_js/vue_resolveFetch.js.map +1 -0
  268. package/build/map/vue_js/vue_resolveHttpClient.js +738 -0
  269. package/build/map/vue_js/vue_resolveHttpClient.js.map +1 -0
  270. package/build/map/vue_js/vue_resolveXhr.js +282 -0
  271. package/build/map/vue_js/vue_resolveXhr.js.map +1 -0
  272. package/build/mcp/chatOneShot.js +101 -0
  273. package/build/mcp/chatOneShot.js.map +1 -0
  274. package/build/mcp/claudeCodeCreds.js +150 -0
  275. package/build/mcp/claudeCodeCreds.js.map +1 -0
  276. package/build/mcp/cli.js +372 -0
  277. package/build/mcp/cli.js.map +1 -0
  278. package/build/mcp/commands.js +227 -0
  279. package/build/mcp/commands.js.map +1 -0
  280. package/build/mcp/config.js +68 -0
  281. package/build/mcp/config.js.map +1 -0
  282. package/build/mcp/index.js +50 -0
  283. package/build/mcp/index.js.map +1 -0
  284. package/build/mcp/intent.js +204 -0
  285. package/build/mcp/intent.js.map +1 -0
  286. package/build/mcp/jobs.js +199 -0
  287. package/build/mcp/jobs.js.map +1 -0
  288. package/build/mcp/mcpServer.js +241 -0
  289. package/build/mcp/mcpServer.js.map +1 -0
  290. package/build/mcp/providers.js +170 -0
  291. package/build/mcp/providers.js.map +1 -0
  292. package/build/mcp/skills.js +115 -0
  293. package/build/mcp/skills.js.map +1 -0
  294. package/build/mcp/tools.js +185 -0
  295. package/build/mcp/tools.js.map +1 -0
  296. package/build/refactor/index.js +85 -0
  297. package/build/refactor/index.js.map +1 -0
  298. package/build/refactor/next/index.js +109 -0
  299. package/build/refactor/next/index.js.map +1 -0
  300. package/build/refactor/react/index.js +636 -0
  301. package/build/refactor/react/index.js.map +1 -0
  302. package/build/report/index.js +68 -0
  303. package/build/report/index.js.map +1 -0
  304. package/build/report/utility/dataTables/genDataTablesPage.js +158 -0
  305. package/build/report/utility/dataTables/genDataTablesPage.js.map +1 -0
  306. package/build/report/utility/genHtml.js +516 -0
  307. package/build/report/utility/genHtml.js.map +1 -0
  308. package/build/report/utility/initReportDb.js +96 -0
  309. package/build/report/utility/initReportDb.js.map +1 -0
  310. package/build/report/utility/markdownGen/addAnalyze.js +53 -0
  311. package/build/report/utility/markdownGen/addAnalyze.js.map +1 -0
  312. package/build/report/utility/markdownGen/addMappedJson.js +33 -0
  313. package/build/report/utility/markdownGen/addMappedJson.js.map +1 -0
  314. package/build/report/utility/populateDb/populateAnalysisFindings.js +31 -0
  315. package/build/report/utility/populateDb/populateAnalysisFindings.js.map +1 -0
  316. package/build/report/utility/populateDb/populateEndpoints.js +50 -0
  317. package/build/report/utility/populateDb/populateEndpoints.js.map +1 -0
  318. package/build/report/utility/populateDb/populateMappedJson.js +31 -0
  319. package/build/report/utility/populateDb/populateMappedJson.js.map +1 -0
  320. package/build/report/utility/populateDb/populateMappedOpenapi.js +49 -0
  321. package/build/report/utility/populateDb/populateMappedOpenapi.js.map +1 -0
  322. package/build/run/index.js +446 -0
  323. package/build/run/index.js.map +1 -0
  324. package/build/run/interruptHandler.js +93 -0
  325. package/build/run/interruptHandler.js.map +1 -0
  326. package/build/strings/index.js +239 -0
  327. package/build/strings/index.js.map +1 -0
  328. package/build/strings/openapi.js +63 -0
  329. package/build/strings/openapi.js.map +1 -0
  330. package/build/strings/permutate.js +62 -0
  331. package/build/strings/permutate.js.map +1 -0
  332. package/build/strings/secrets.js +102 -0
  333. package/build/strings/secrets.js.map +1 -0
  334. package/build/utility/ai.js +97 -0
  335. package/build/utility/ai.js.map +1 -0
  336. package/build/utility/configureSandbox.js +14 -0
  337. package/build/utility/configureSandbox.js.map +1 -0
  338. package/build/utility/globals.js +322 -0
  339. package/build/utility/globals.js.map +1 -0
  340. package/build/utility/interfaces.js +2 -0
  341. package/build/utility/interfaces.js.map +1 -0
  342. package/build/utility/makeReq.js +448 -0
  343. package/build/utility/makeReq.js.map +1 -0
  344. package/build/utility/openapiGenerator.js +254 -0
  345. package/build/utility/openapiGenerator.js.map +1 -0
  346. package/build/utility/postmanGenerator.js +216 -0
  347. package/build/utility/postmanGenerator.js.map +1 -0
  348. package/build/utility/progressLog.js +50 -0
  349. package/build/utility/progressLog.js.map +1 -0
  350. package/build/utility/puppeteerInstance.js +5 -0
  351. package/build/utility/puppeteerInstance.js.map +1 -0
  352. package/build/utility/replaceUrlPlaceholders.js +48 -0
  353. package/build/utility/replaceUrlPlaceholders.js.map +1 -0
  354. package/build/utility/resolvePath.js +44 -0
  355. package/build/utility/resolvePath.js.map +1 -0
  356. package/build/utility/runSandboxed.js +42 -0
  357. package/build/utility/runSandboxed.js.map +1 -0
  358. package/build/utility/urlUtils.js +21 -0
  359. package/build/utility/urlUtils.js.map +1 -0
  360. package/contributing/nextjs.md +410 -0
  361. package/package.json +75 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traceBody.js","sourceRoot":"","sources":["../../../../src/map/next_js/resolveAxiosHelpers/traceBody.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,533 @@
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 { resolveNodeValue, substituteVariablesInString } from "./utils.js";
12
+ import parser from "@babel/parser";
13
+ import _traverse from "@babel/traverse";
14
+ import fs from "fs";
15
+ import path from "path";
16
+ import { getThirdArg } from "./resolveAxios.js";
17
+ const traverse = _traverse.default;
18
+ import * as globals from "../../utility/globals.js";
19
+ /**
20
+ * Finds the function name that wraps a fetch call.
21
+ */
22
+ const getFunctionNameForFetchCall = (fetchCallPath) => {
23
+ var _a;
24
+ let currentPath = fetchCallPath;
25
+ // Traverse up the AST to find the containing function
26
+ while (currentPath) {
27
+ if (currentPath.isFunctionDeclaration()) {
28
+ return ((_a = currentPath.node.id) === null || _a === void 0 ? void 0 : _a.name) || null;
29
+ }
30
+ if (currentPath.isVariableDeclarator()) {
31
+ const init = currentPath.node.init;
32
+ if (init && (init.type === "FunctionExpression" || init.type === "ArrowFunctionExpression")) {
33
+ return currentPath.node.id.type === "Identifier" ? currentPath.node.id.name : null;
34
+ }
35
+ }
36
+ if (currentPath.isFunctionExpression() || currentPath.isArrowFunctionExpression()) {
37
+ // Check if parent is a variable declarator
38
+ const parent = currentPath.parent;
39
+ if (parent.type === "VariableDeclarator" && parent.id.type === "Identifier") {
40
+ return parent.id.name;
41
+ }
42
+ }
43
+ currentPath = currentPath.parentPath;
44
+ }
45
+ return null;
46
+ };
47
+ /**
48
+ * Finds which export in a chunk returns a given function name.
49
+ */
50
+ const findExportForFunction = (chunkCode, functionName, exportNames) => {
51
+ if (!exportNames || exportNames.length === 0)
52
+ return null;
53
+ try {
54
+ const ast = parser.parse(chunkCode, {
55
+ sourceType: "module",
56
+ plugins: ["jsx", "typescript"],
57
+ errorRecovery: true,
58
+ });
59
+ let foundExport = null;
60
+ traverse(ast, {
61
+ // Pattern 1: t.d(r, { $C: () => i, ... })
62
+ CallExpression(path) {
63
+ const callee = path.node.callee;
64
+ if (callee.type === "MemberExpression" &&
65
+ callee.property.type === "Identifier" &&
66
+ callee.property.name === "d" &&
67
+ path.node.arguments.length >= 2) {
68
+ const secondArg = path.node.arguments[1];
69
+ if (secondArg.type === "ObjectExpression") {
70
+ for (const prop of secondArg.properties) {
71
+ if (prop.type === "ObjectProperty" &&
72
+ prop.key.type === "Identifier" &&
73
+ exportNames.includes(prop.key.name)) {
74
+ const value = prop.value;
75
+ // Pattern: exportName: () => functionName
76
+ if (value.type === "ArrowFunctionExpression" &&
77
+ value.body.type === "Identifier" &&
78
+ value.body.name === functionName) {
79
+ foundExport = prop.key.name;
80
+ path.stop();
81
+ return;
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
87
+ },
88
+ // Pattern 2: { exportName: () => functionName } (direct object)
89
+ ObjectProperty(path) {
90
+ var _a;
91
+ if (path.node.key.type === "Identifier" && exportNames.includes(path.node.key.name)) {
92
+ const value = path.node.value;
93
+ // Pattern: exportName: () => functionName
94
+ if (value.type === "ArrowFunctionExpression" &&
95
+ value.body.type === "Identifier" &&
96
+ value.body.name === functionName) {
97
+ foundExport = path.node.key.name;
98
+ path.stop();
99
+ }
100
+ // Pattern: exportName: function() { return functionName }
101
+ else if (value.type === "FunctionExpression" && value.body.type === "BlockStatement") {
102
+ const returnStmt = value.body.body.find((stmt) => stmt.type === "ReturnStatement");
103
+ if (((_a = returnStmt === null || returnStmt === void 0 ? void 0 : returnStmt.argument) === null || _a === void 0 ? void 0 : _a.type) === "Identifier" &&
104
+ returnStmt.argument.name === functionName) {
105
+ foundExport = path.node.key.name;
106
+ path.stop();
107
+ }
108
+ }
109
+ }
110
+ },
111
+ });
112
+ return foundExport;
113
+ }
114
+ catch (e) {
115
+ return null;
116
+ }
117
+ };
118
+ /**
119
+ * Traces fetch function calls across chunks to resolve body parameters.
120
+ */
121
+ const traceFetchFunctionCalls = (fetchChunkId, exportName, functionName, chunks, directory) => {
122
+ // Find chunks that import the fetch chunk
123
+ for (const [callerChunkId, callerChunk] of Object.entries(chunks)) {
124
+ if (!callerChunk.imports || !callerChunk.file)
125
+ continue;
126
+ // Check if this chunk imports our fetch chunk
127
+ if (!callerChunk.imports.includes(fetchChunkId))
128
+ continue;
129
+ console.log(chalk.cyan(` [\u2192] Chunk ${callerChunkId} imports fetch chunk ${fetchChunkId}, tracing calls...`));
130
+ // Load the caller chunk code
131
+ const callerFilePath = path.join(directory, callerChunk.file);
132
+ let callerCode;
133
+ try {
134
+ callerCode = fs.readFileSync(callerFilePath, "utf-8");
135
+ }
136
+ catch (e) {
137
+ continue;
138
+ }
139
+ // Parse caller chunk
140
+ let callerAst;
141
+ try {
142
+ callerAst = parser.parse(callerCode, {
143
+ sourceType: "module",
144
+ plugins: ["jsx", "typescript"],
145
+ errorRecovery: true,
146
+ });
147
+ }
148
+ catch (e) {
149
+ continue;
150
+ }
151
+ // Get the third arg (webpack require function name)
152
+ const thirdArgName = getThirdArg(callerAst);
153
+ if (!thirdArgName)
154
+ continue;
155
+ // Find calls to the exported function
156
+ const callArguments = [];
157
+ traverse(callerAst, {
158
+ CallExpression(path) {
159
+ const callee = path.node.callee;
160
+ // Pattern 1: (0, varName.exportName)(...)
161
+ if (callee.type === "SequenceExpression" && callee.expressions.length === 2) {
162
+ const secondExpr = callee.expressions[1];
163
+ if (secondExpr.type === "MemberExpression" &&
164
+ secondExpr.property.type === "Identifier" &&
165
+ secondExpr.property.name === exportName) {
166
+ callArguments.push(...path.node.arguments);
167
+ }
168
+ }
169
+ // Pattern 2: varName.exportName(...)
170
+ else if (callee.type === "MemberExpression" &&
171
+ callee.property.type === "Identifier" &&
172
+ callee.property.name === exportName) {
173
+ callArguments.push(...path.node.arguments);
174
+ }
175
+ // Pattern 3: Direct call after import resolution
176
+ else if (callee.type === "Identifier") {
177
+ // Check if this identifier is bound to our exported function
178
+ const binding = path.scope.getBinding(callee.name);
179
+ if (binding && binding.path.isVariableDeclarator()) {
180
+ const init = binding.path.node.init;
181
+ if (init &&
182
+ init.type === "MemberExpression" &&
183
+ init.property.type === "Identifier" &&
184
+ init.property.name === exportName) {
185
+ callArguments.push(...path.node.arguments);
186
+ }
187
+ }
188
+ }
189
+ },
190
+ });
191
+ if (callArguments.length > 0) {
192
+ console.log(chalk.green(` [\u2713] Found ${callArguments.length} call(s) to ${exportName} in chunk ${callerChunkId}`));
193
+ // Return the first argument (usually the body object)
194
+ return callArguments[0];
195
+ }
196
+ }
197
+ return null;
198
+ };
199
+ /**
200
+ * Resolves fetch instances in the given chunks.
201
+ * @param {Chunks} chunks - A dictionary of chunk names to chunk objects.
202
+ * @param {string} directory - The directory of the chunk file.
203
+ */
204
+ /**
205
+ * Finds all call-site first-arguments for a given function name within a
206
+ * single module's code. Used to resolve URL placeholders when the fetch
207
+ * wrapper is a non-exported (module-internal) function.
208
+ */
209
+ const traceInternalFunctionCalls = (functionName, moduleCode) => {
210
+ try {
211
+ const ast = parser.parse(moduleCode, {
212
+ sourceType: "module",
213
+ plugins: ["jsx", "typescript"],
214
+ errorRecovery: true,
215
+ });
216
+ const firstArgs = [];
217
+ traverse(ast, {
218
+ CallExpression(path) {
219
+ const callee = path.node.callee;
220
+ if (callee.type === "Identifier" && callee.name === functionName && path.node.arguments.length > 0) {
221
+ firstArgs.push(path.node.arguments[0]);
222
+ }
223
+ },
224
+ });
225
+ return firstArgs;
226
+ }
227
+ catch (_a) {
228
+ return [];
229
+ }
230
+ };
231
+ /**
232
+ * Returns true when the chunk's code looks like a Next.js framework-internal
233
+ * module (RSC router, Server Actions reducer, etc.) that should not be
234
+ * reported as user-defined API endpoints.
235
+ */
236
+ const isNextJsFrameworkChunk = (code) => {
237
+ // RSC navigation / router internals
238
+ if (code.includes("NEXT_RSC_UNION_QUERY") || code.includes("setCacheBustingSearchParam")) {
239
+ return true;
240
+ }
241
+ // Server Actions reducer exported by the Next.js runtime
242
+ if (code.includes('"serverActionReducer"') || code.includes("serverActionReducer:")) {
243
+ return true;
244
+ }
245
+ // CSS stylesheet lazy-loader — fetch(r) is a stylesheet URL, not an API endpoint
246
+ if (code.includes("markAssetError") || code.includes("fetchStyleSheet")) {
247
+ return true;
248
+ }
249
+ // Next.js data fetcher internals — x-nextjs-data header is injected by the framework
250
+ if (code.includes('"x-nextjs-data"') || code.includes("'x-nextjs-data'")) {
251
+ return true;
252
+ }
253
+ return false;
254
+ };
255
+ const resolveFetch = (chunks, directory) => __awaiter(void 0, void 0, void 0, function* () {
256
+ console.log(chalk.cyan("[i] Resolving fetch instances"));
257
+ for (const chunk of Object.values(chunks)) {
258
+ if (!chunk.containsFetch || !chunk.file) {
259
+ continue;
260
+ }
261
+ // Skip Next.js framework-internal chunks to avoid noise
262
+ if (isNextJsFrameworkChunk(chunk.code || "")) {
263
+ console.log(chalk.gray(` [i] Skipping Next.js framework chunk ${chunk.id}`));
264
+ continue;
265
+ }
266
+ // get the path of the file in which chunk is there
267
+ const filePath = path.join(directory, chunk.file);
268
+ let fileContent;
269
+ // try to read the file
270
+ try {
271
+ fileContent = fs.readFileSync(filePath, "utf-8");
272
+ }
273
+ catch (error) {
274
+ console.error(chalk.red(`[!] Could not read file: ${filePath}`));
275
+ continue;
276
+ }
277
+ // try to parse the file
278
+ let fileAst;
279
+ try {
280
+ fileAst = parser.parse(fileContent, {
281
+ sourceType: "module",
282
+ plugins: ["jsx", "typescript"],
283
+ errorRecovery: true,
284
+ });
285
+ }
286
+ catch (err) {
287
+ console.error(chalk.red(`[!] Failed to parse file: ${filePath}. Error: ${err.message}`));
288
+ continue;
289
+ }
290
+ const fetchAliases = new Set();
291
+ // Pass 1: Find fetch aliases on the full file AST
292
+ traverse(fileAst, {
293
+ VariableDeclarator(path) {
294
+ if (path.node.id.type === "Identifier" && path.node.init) {
295
+ if (path.node.init.type === "Identifier" && path.node.init.name === "fetch") {
296
+ const binding = path.scope.getBinding(path.node.id.name);
297
+ if (binding)
298
+ fetchAliases.add(binding);
299
+ }
300
+ }
301
+ },
302
+ });
303
+ // Get the third arg (webpack require function name) for this chunk
304
+ const thirdArgName = getThirdArg(fileAst);
305
+ // define some arguments to be finally printed
306
+ let callUrl;
307
+ let callMethod;
308
+ let callHeaders;
309
+ let callBody;
310
+ let chunkId;
311
+ let functionFileLine;
312
+ // Pass 2: Find and resolve fetch calls on the full file AST
313
+ traverse(fileAst, {
314
+ CallExpression(path) {
315
+ let isFetchCall = false;
316
+ const calleeName = path.node.callee.name;
317
+ if (calleeName === "fetch") {
318
+ isFetchCall = true;
319
+ }
320
+ else {
321
+ const binding = path.scope.getBinding(calleeName);
322
+ if (binding && fetchAliases.has(binding)) {
323
+ isFetchCall = true;
324
+ }
325
+ }
326
+ if (isFetchCall) {
327
+ console.log(chalk.blue(`[+] Found fetch call in chunk ${chunk.id} ("${filePath}":${path.node.loc.start.line})`));
328
+ functionFileLine = path.node.loc.start.line;
329
+ const args = path.node.arguments;
330
+ if (args.length > 0) {
331
+ // extract the whole code from the main file just in case the resolution fails
332
+ const argText = fileContent.slice(args[0].start, args[0].end).replace(/\n\s*/g, "");
333
+ let url = resolveNodeValue(args[0], path.scope, argText, "fetch", fileContent, chunks, thirdArgName);
334
+ // Substitute any [var X] or [MemberExpression -> X] placeholders with actual values from the chunk.
335
+ // Use chunk.code (module-scoped) rather than the entire fileContent to prevent
336
+ // cross-module variable name collisions from polluting the resolved value.
337
+ if (typeof url === "string" && (url.includes("[var ") || url.includes("[MemberExpression"))) {
338
+ const substitutedUrl = substituteVariablesInString(url, chunk.code, chunks, thirdArgName);
339
+ if (substitutedUrl !== url) {
340
+ console.log(chalk.cyan(` [i] Resolved variables in URL: ${url} -> ${substitutedUrl}`));
341
+ url = substitutedUrl;
342
+ }
343
+ }
344
+ // If the URL still has unresolved [var X] placeholders, try to
345
+ // resolve them by tracing internal (non-exported) callers within
346
+ // the same module. This handles patterns like:
347
+ // function J(e, t) { fetch("".concat(t.basePath, "/").concat(e)) }
348
+ // J("session", Y) → resolved e = "session"
349
+ if (typeof url === "string" && url.includes("[var ")) {
350
+ const wrapperName = getFunctionNameForFetchCall(path);
351
+ if (wrapperName) {
352
+ const internalCallArgs = traceInternalFunctionCalls(wrapperName, chunk.code);
353
+ if (internalCallArgs.length > 0) {
354
+ // Use the first resolved arg as a representative URL component
355
+ const firstArgResolved = resolveNodeValue(internalCallArgs[0], path.scope, "", "fetch", fileContent, chunks, thirdArgName);
356
+ if (firstArgResolved &&
357
+ typeof firstArgResolved === "string" &&
358
+ !firstArgResolved.startsWith("[")) {
359
+ // Replace [var X] with the resolved caller argument
360
+ const varMatch = url.match(/\[var ([^\]]+)\]/);
361
+ if (varMatch) {
362
+ url = url.replace(varMatch[0], firstArgResolved);
363
+ console.log(chalk.cyan(` [i] Resolved URL from internal caller: ${url}`));
364
+ }
365
+ }
366
+ }
367
+ }
368
+ }
369
+ // Resolve [param:X] in the URL by tracing callers of the wrapping function.
370
+ // This handles patterns like: function wrapFetch(r) { fetch(r, opts) }
371
+ // where the entire URL is passed in as a parameter from the callsite.
372
+ if (typeof url === "string" && url.includes("[param:")) {
373
+ const wrapperName = getFunctionNameForFetchCall(path);
374
+ if (wrapperName) {
375
+ // Try callers within the same module first (no export needed)
376
+ const internalCallArgs = traceInternalFunctionCalls(wrapperName, chunk.code);
377
+ if (internalCallArgs.length > 0) {
378
+ const firstArgResolved = resolveNodeValue(internalCallArgs[0], path.scope, "", "fetch", fileContent, chunks, thirdArgName);
379
+ if (firstArgResolved &&
380
+ typeof firstArgResolved === "string" &&
381
+ !firstArgResolved.startsWith("[")) {
382
+ url = url.replace(/\[param:[^\]]+\]/g, firstArgResolved);
383
+ console.log(chalk.cyan(` [i] Resolved [param] URL from internal caller: ${url}`));
384
+ }
385
+ }
386
+ // Fall back to cross-chunk exported callers
387
+ if (url.includes("[param:") && chunk.exports && chunk.exports.length > 0) {
388
+ const exportName = findExportForFunction(fileContent, wrapperName, chunk.exports);
389
+ if (exportName) {
390
+ const actualCallArg = traceFetchFunctionCalls(chunk.id, exportName, wrapperName, chunks, directory);
391
+ if (actualCallArg) {
392
+ const callerUrl = resolveNodeValue(actualCallArg, path.scope, "", "fetch", fileContent, chunks, thirdArgName);
393
+ if (callerUrl &&
394
+ typeof callerUrl === "string" &&
395
+ !callerUrl.startsWith("[unresolved") &&
396
+ !callerUrl.startsWith("[error") &&
397
+ (callerUrl.includes("/") || callerUrl.includes("://"))) {
398
+ console.log(chalk.cyan(` [i] Resolved [param] URL from exported caller: ${callerUrl}`));
399
+ url = callerUrl;
400
+ }
401
+ }
402
+ }
403
+ }
404
+ }
405
+ }
406
+ callUrl = url;
407
+ console.log(chalk.green(` URL: ${url}`));
408
+ if (args.length > 1) {
409
+ let options = resolveNodeValue(args[1], path.scope, "", "fetch", fileContent, chunks, thirdArgName);
410
+ // Try to trace fetch function exports for better body resolution
411
+ const functionName = getFunctionNameForFetchCall(path);
412
+ if (functionName && chunk.exports && chunk.exports.length > 0) {
413
+ console.log(chalk.cyan(` [i] Fetch is wrapped in function '${functionName}', checking for exports...`));
414
+ const exportName = findExportForFunction(fileContent, functionName, chunk.exports);
415
+ if (exportName) {
416
+ console.log(chalk.cyan(` [i] Function '${functionName}' exported as '${exportName}', tracing calls...`));
417
+ const actualCallArg = traceFetchFunctionCalls(chunk.id, exportName, functionName, chunks, directory);
418
+ if (actualCallArg) {
419
+ // Resolve the actual call argument to get the real body
420
+ const resolvedArg = resolveNodeValue(actualCallArg, path.scope, "", "fetch");
421
+ if (resolvedArg && typeof resolvedArg === "object") {
422
+ console.log(chalk.green(` [✓] Resolved actual body from caller: ${JSON.stringify(resolvedArg)}`));
423
+ // Update options.body with the resolved value
424
+ if (typeof options === "object" && options !== null) {
425
+ options = Object.assign(Object.assign({}, options), { body: resolvedArg });
426
+ }
427
+ }
428
+ }
429
+ }
430
+ }
431
+ if (typeof options === "object" && options !== null) {
432
+ // Substitute variables in headers
433
+ if (options.headers && typeof options.headers === "object") {
434
+ const resolvedHeaders = {};
435
+ for (const [key, value] of Object.entries(options.headers)) {
436
+ const resolvedKey = typeof key === "string"
437
+ ? substituteVariablesInString(key, fileContent, chunks, thirdArgName)
438
+ : String(key);
439
+ const resolvedValue = typeof value === "string"
440
+ ? substituteVariablesInString(value, fileContent, chunks, thirdArgName)
441
+ : String(value);
442
+ resolvedHeaders[resolvedKey] = resolvedValue;
443
+ }
444
+ options.headers = resolvedHeaders;
445
+ }
446
+ // Substitute variables in body if it's an object with string values
447
+ if (options.body && typeof options.body === "object") {
448
+ const resolvedBody = {};
449
+ for (const [key, value] of Object.entries(options.body)) {
450
+ const resolvedValue = typeof value === "string"
451
+ ? substituteVariablesInString(value, fileContent, chunks, thirdArgName)
452
+ : value;
453
+ resolvedBody[key] = resolvedValue;
454
+ }
455
+ options.body = resolvedBody;
456
+ }
457
+ console.log(chalk.green(` Method: ${options.method || "UNKNOWN"}`));
458
+ callMethod = options.method || "UNKNOWN";
459
+ if (options.headers)
460
+ console.log(chalk.green(` Headers: ${JSON.stringify(options.headers)}`));
461
+ if (options.body)
462
+ console.log(chalk.green(` Body: ${JSON.stringify(options.body)}`));
463
+ callHeaders =
464
+ typeof options.headers === "object" && options.headers !== null
465
+ ? options.headers
466
+ : {};
467
+ callBody =
468
+ typeof options.body === "object"
469
+ ? JSON.stringify(options.body)
470
+ : options.body || "";
471
+ }
472
+ else {
473
+ console.log(chalk.green(` Options: ${options}`));
474
+ }
475
+ globals.addOpenapiOutput({
476
+ url: callUrl || "",
477
+ method: callMethod || "",
478
+ path: callUrl || "",
479
+ headers: callHeaders || {},
480
+ body: callBody || "",
481
+ chunkId: chunk.id,
482
+ functionFile: filePath,
483
+ functionFileLine: functionFileLine,
484
+ });
485
+ }
486
+ else {
487
+ // Single-argument fetch(url) — implicit GET request.
488
+ // Try to resolve the URL from callers when the direct resolution
489
+ // left an unresolved function-parameter placeholder.
490
+ let resolvedUrl = callUrl || "";
491
+ if (resolvedUrl.startsWith("[unresolved:") ||
492
+ resolvedUrl === "" ||
493
+ resolvedUrl.includes("[param:")) {
494
+ const functionName = getFunctionNameForFetchCall(path);
495
+ if (functionName && chunk.exports && chunk.exports.length > 0) {
496
+ const exportName = findExportForFunction(fileContent, functionName, chunk.exports);
497
+ if (exportName) {
498
+ console.log(chalk.cyan(` [i] Fetch is wrapped in function '${functionName}', checking for exports...`));
499
+ const actualCallArg = traceFetchFunctionCalls(chunk.id, exportName, functionName, chunks, directory);
500
+ if (actualCallArg) {
501
+ const callerUrl = resolveNodeValue(actualCallArg, path.scope, "", "fetch", fileContent, chunks, thirdArgName);
502
+ if (callerUrl &&
503
+ typeof callerUrl === "string" &&
504
+ !callerUrl.startsWith("[unresolved") &&
505
+ !callerUrl.startsWith("[error") &&
506
+ (callerUrl.includes("/") || callerUrl.includes("://"))) {
507
+ console.log(chalk.cyan(` [i] Resolved URL from caller: ${callerUrl}`));
508
+ resolvedUrl = callerUrl;
509
+ }
510
+ }
511
+ }
512
+ }
513
+ }
514
+ console.log(chalk.green(` Method: GET`));
515
+ globals.addOpenapiOutput({
516
+ url: resolvedUrl,
517
+ method: "GET",
518
+ path: resolvedUrl,
519
+ headers: {},
520
+ body: "",
521
+ chunkId: chunk.id,
522
+ functionFile: filePath,
523
+ functionFileLine: functionFileLine,
524
+ });
525
+ }
526
+ }
527
+ }
528
+ },
529
+ });
530
+ }
531
+ });
532
+ export default resolveFetch;
533
+ //# sourceMappingURL=resolveFetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveFetch.js","sourceRoot":"","sources":["../../../src/map/next_js/resolveFetch.ts"],"names":[],"mappings":"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"}