@shriyanss/js-recon 1.3.1-alpha.3 → 1.3.1-alpha.4

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 (136) hide show
  1. package/.github/workflows/build-and-prettify.yaml +15 -1
  2. package/.github/workflows/publish-js-recon.yml +13 -1
  3. package/CHANGELOG.md +76 -0
  4. package/CLAUDE.md +100 -11
  5. package/README.md +2 -0
  6. package/build/analyze/engine/astEngine.js +57 -29
  7. package/build/analyze/engine/astEngine.js.map +1 -1
  8. package/build/analyze/engine/index.js.map +1 -1
  9. package/build/analyze/helpers/engineHelpers/taintFlow.js +32 -0
  10. package/build/analyze/helpers/engineHelpers/taintFlow.js.map +1 -1
  11. package/build/analyze/helpers/initRules.js +9 -0
  12. package/build/analyze/helpers/initRules.js.map +1 -1
  13. package/build/analyze/helpers/schemas.js +5 -1
  14. package/build/analyze/helpers/schemas.js.map +1 -1
  15. package/build/analyze/index.js +7 -2
  16. package/build/analyze/index.js.map +1 -1
  17. package/build/endpoints/next_js/client_mappedJsonFile.js +12 -5
  18. package/build/endpoints/next_js/client_mappedJsonFile.js.map +1 -1
  19. package/build/fingerprint/index.js +123 -0
  20. package/build/fingerprint/index.js.map +1 -0
  21. package/build/globalConfig.js +1 -1
  22. package/build/index.js +51 -4
  23. package/build/index.js.map +1 -1
  24. package/build/lazyLoad/downloadQueue.js +9 -8
  25. package/build/lazyLoad/downloadQueue.js.map +1 -1
  26. package/build/lazyLoad/index.js +260 -163
  27. package/build/lazyLoad/index.js.map +1 -1
  28. package/build/lazyLoad/next_js/NextJsCrawler.js +58 -16
  29. package/build/lazyLoad/next_js/NextJsCrawler.js.map +1 -1
  30. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js +149 -139
  31. package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js.map +1 -1
  32. package/build/lazyLoad/next_js/next_SubsequentRequests.js +25 -4
  33. package/build/lazyLoad/next_js/next_SubsequentRequests.js.map +1 -1
  34. package/build/lazyLoad/next_js/next_scriptTagsSubsequentRequests.js +13 -5
  35. package/build/lazyLoad/next_js/next_scriptTagsSubsequentRequests.js.map +1 -1
  36. package/build/lazyLoad/react/react_followImports.js +105 -0
  37. package/build/lazyLoad/react/react_followImports.js.map +1 -0
  38. package/build/lazyLoad/react/react_getScriptTags.js +28 -5
  39. package/build/lazyLoad/react/react_getScriptTags.js.map +1 -1
  40. package/build/lazyLoad/svelte/svelte_discoverPagesFromJs.js +162 -0
  41. package/build/lazyLoad/svelte/svelte_discoverPagesFromJs.js.map +1 -0
  42. package/build/lazyLoad/svelte/svelte_getFromPageSource.js +15 -0
  43. package/build/lazyLoad/svelte/svelte_getFromPageSource.js.map +1 -1
  44. package/build/lazyLoad/svelte/svelte_recursivePageCrawl.js +180 -0
  45. package/build/lazyLoad/svelte/svelte_recursivePageCrawl.js.map +1 -0
  46. package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js +15 -1
  47. package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js.map +1 -1
  48. package/build/lazyLoad/techDetect/checkReact.js +67 -36
  49. package/build/lazyLoad/techDetect/checkReact.js.map +1 -1
  50. package/build/lazyLoad/techDetect/checkSvelte.js +35 -35
  51. package/build/lazyLoad/techDetect/checkSvelte.js.map +1 -1
  52. package/build/lazyLoad/techDetect/index.js +10 -6
  53. package/build/lazyLoad/techDetect/index.js.map +1 -1
  54. package/build/lazyLoad/vue/vue_getClientSidePaths.js +6 -0
  55. package/build/lazyLoad/vue/vue_getClientSidePaths.js.map +1 -1
  56. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js +6 -0
  57. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js.map +1 -1
  58. package/build/lazyLoad/vue/vue_stringJsFiles.js +6 -0
  59. package/build/lazyLoad/vue/vue_stringJsFiles.js.map +1 -1
  60. package/build/map/graphql/resolveGraphql.js +296 -0
  61. package/build/map/graphql/resolveGraphql.js.map +1 -0
  62. package/build/map/index.js +93 -1
  63. package/build/map/index.js.map +1 -1
  64. package/build/map/next_js/interactive_helpers/commandHandler.js +4 -0
  65. package/build/map/next_js/interactive_helpers/commandHandler.js.map +1 -1
  66. package/build/map/next_js/interactive_helpers/commandHelpers.js +28 -0
  67. package/build/map/next_js/interactive_helpers/commandHelpers.js.map +1 -1
  68. package/build/map/next_js/interactive_helpers/helpMenu.js +1 -1
  69. package/build/map/next_js/interactive_helpers/helpMenu.js.map +1 -1
  70. package/build/map/next_js/resolveServerActions.js +449 -0
  71. package/build/map/next_js/resolveServerActions.js.map +1 -0
  72. package/build/map/next_js/utils.js +1 -0
  73. package/build/map/next_js/utils.js.map +1 -1
  74. package/build/map/react_js/getReactConnections.js +298 -0
  75. package/build/map/react_js/getReactConnections.js.map +1 -0
  76. package/build/map/react_js/interactive.js +4 -0
  77. package/build/map/react_js/interactive.js.map +1 -0
  78. package/build/map/react_js/react_resolveFetch.js +6 -0
  79. package/build/map/react_js/react_resolveFetch.js.map +1 -0
  80. package/build/map/svelte_js/interactive.js +58 -0
  81. package/build/map/svelte_js/interactive.js.map +1 -0
  82. package/build/map/svelte_js/interactive_helpers/commandHandler.js +4 -0
  83. package/build/map/svelte_js/interactive_helpers/commandHandler.js.map +1 -0
  84. package/build/map/vue_js/bodyResolver.js +477 -0
  85. package/build/map/vue_js/bodyResolver.js.map +1 -0
  86. package/build/map/vue_js/crossFileResolver.js +438 -0
  87. package/build/map/vue_js/crossFileResolver.js.map +1 -0
  88. package/build/map/vue_js/getViteConnections.js +150 -129
  89. package/build/map/vue_js/getViteConnections.js.map +1 -1
  90. package/build/map/vue_js/taint_utils.js +621 -0
  91. package/build/map/vue_js/taint_utils.js.map +1 -0
  92. package/build/map/vue_js/vue_resolveFetch.js +79 -392
  93. package/build/map/vue_js/vue_resolveFetch.js.map +1 -1
  94. package/build/map/vue_js/vue_resolveHttpClient.js +733 -0
  95. package/build/map/vue_js/vue_resolveHttpClient.js.map +1 -0
  96. package/build/map/vue_js/vue_resolveXhr.js +279 -0
  97. package/build/map/vue_js/vue_resolveXhr.js.map +1 -0
  98. package/build/mcp/chatOneShot.js +101 -0
  99. package/build/mcp/chatOneShot.js.map +1 -0
  100. package/build/mcp/claudeCodeCreds.js +150 -0
  101. package/build/mcp/claudeCodeCreds.js.map +1 -0
  102. package/build/mcp/cli.js +140 -149
  103. package/build/mcp/cli.js.map +1 -1
  104. package/build/mcp/commands.js +80 -0
  105. package/build/mcp/commands.js.map +1 -1
  106. package/build/mcp/index.js +30 -9
  107. package/build/mcp/index.js.map +1 -1
  108. package/build/mcp/intent.js +204 -0
  109. package/build/mcp/intent.js.map +1 -0
  110. package/build/mcp/jobs.js +199 -0
  111. package/build/mcp/jobs.js.map +1 -0
  112. package/build/mcp/mcpServer.js +241 -0
  113. package/build/mcp/mcpServer.js.map +1 -0
  114. package/build/mcp/providers.js +18 -1
  115. package/build/mcp/providers.js.map +1 -1
  116. package/build/mcp/skills.js +115 -0
  117. package/build/mcp/skills.js.map +1 -0
  118. package/build/refactor/index.js +6 -0
  119. package/build/refactor/index.js.map +1 -1
  120. package/build/refactor/react/index.js +636 -0
  121. package/build/refactor/react/index.js.map +1 -0
  122. package/build/run/index.js +260 -60
  123. package/build/run/index.js.map +1 -1
  124. package/build/run/interruptHandler.js +93 -0
  125. package/build/run/interruptHandler.js.map +1 -0
  126. package/build/utility/globals.js +29 -0
  127. package/build/utility/globals.js.map +1 -1
  128. package/build/utility/makeReq.js +14 -2
  129. package/build/utility/makeReq.js.map +1 -1
  130. package/build/utility/openapiGenerator.js +46 -14
  131. package/build/utility/openapiGenerator.js.map +1 -1
  132. package/build/utility/postmanGenerator.js +62 -13
  133. package/build/utility/postmanGenerator.js.map +1 -1
  134. package/build/utility/progressLog.js +50 -0
  135. package/build/utility/progressLog.js.map +1 -0
  136. package/package.json +7 -4
@@ -75,85 +75,7 @@ const getViteConnections = (directory, output, formats) => __awaiter(void 0, voi
75
75
  const suffix = isDistinct ? meta.something.slice(0, 4) : meta.hash.slice(0, 4);
76
76
  return `${funcName}__${suffix}`;
77
77
  };
78
- const chunks = {};
79
- const fileFuncToChunkId = new Map();
80
- // Pass 1: find every root-level 2-char function and create a chunk entry
81
- console.log(chalk.cyan(`[i] Scanning ${files.length} JS files for root functions`));
82
- for (const file of files) {
83
- const meta = fileMeta.get(file);
84
- const filePath = path.join(directory, file);
85
- let code;
86
- try {
87
- code = fs.readFileSync(filePath, "utf8");
88
- }
89
- catch (_d) {
90
- continue;
91
- }
92
- let ast;
93
- try {
94
- ast = parser.parse(code, {
95
- sourceType: "unambiguous",
96
- plugins: ["jsx", "typescript"],
97
- errorRecovery: true,
98
- });
99
- }
100
- catch (_e) {
101
- continue;
102
- }
103
- const fileFuncs = new Map();
104
- fileFuncToChunkId.set(file, fileFuncs);
105
- for (const node of ast.program.body) {
106
- if (node.type !== "FunctionDeclaration")
107
- continue;
108
- if (!node.id || !FUNC_NAME_RE.test(node.id.name))
109
- continue;
110
- if (!meta)
111
- continue;
112
- const funcName = node.id.name;
113
- const key = computeChunkKey(funcName, meta);
114
- if (chunks[key])
115
- continue;
116
- const funcCode = code.slice((_a = node.start) !== null && _a !== void 0 ? _a : 0, (_b = node.end) !== null && _b !== void 0 ? _b : 0);
117
- chunks[key] = {
118
- id: key,
119
- description: "none",
120
- loadedOn: [],
121
- containsFetch: false,
122
- isAxiosLibrary: false,
123
- exports: [],
124
- callStack: [],
125
- code: funcCode,
126
- imports: [],
127
- file: file,
128
- };
129
- fileFuncs.set(funcName, key);
130
- }
131
- // Fallback for Vite dev-mode / non-bundled files: production-style 2-char
132
- // function chunking doesn't apply, so emit the whole file as a single chunk
133
- // so the AST analysis engine still has something to scan.
134
- if (fileFuncs.size === 0) {
135
- const baseId = path.basename(file).replace(/[^a-zA-Z0-9]+/g, "_");
136
- let key = baseId;
137
- let suffix = 0;
138
- while (chunks[key]) {
139
- suffix++;
140
- key = `${baseId}_${suffix}`;
141
- }
142
- chunks[key] = {
143
- id: key,
144
- description: "none",
145
- loadedOn: [],
146
- containsFetch: /\bfetch\s*\(/.test(code),
147
- isAxiosLibrary: false,
148
- exports: [],
149
- callStack: [],
150
- code: code,
151
- imports: [],
152
- file: file,
153
- };
154
- }
155
- }
156
- // Build basename -> file path lookup for import resolution
78
+ // Build basename -> file path lookup for import resolution (cheap, no I/O)
157
79
  const pathByNormalized = new Map();
158
80
  for (const file of files) {
159
81
  pathByNormalized.set(path.normalize(file), file);
@@ -166,21 +88,23 @@ const getViteConnections = (directory, output, formats) => __awaiter(void 0, voi
166
88
  const resolved = path.normalize(path.join(fileDir, source));
167
89
  return (_a = pathByNormalized.get(resolved)) !== null && _a !== void 0 ? _a : null;
168
90
  };
169
- // Pass 2: resolve imports and exports for each chunk
170
- console.log(chalk.cyan("[i] Resolving imports and exports"));
91
+ const chunks = {};
92
+ const fileFuncToChunkId = new Map();
93
+ // Per-chunk import references collected during the single parse pass.
94
+ // Stored as lightweight data so ASTs can be freed immediately after each file.
95
+ const chunkImportRefs = new Map();
96
+ // Single pass: parse each file once, extract functions + imports + exports.
97
+ // This replaces the previous two-pass approach (Pass 1 + Pass 2) that parsed
98
+ // every file twice and kept ASTs alive across both loops.
99
+ console.log(chalk.cyan(`[i] Scanning ${files.length} JS files for root functions`));
171
100
  for (const file of files) {
172
101
  const meta = fileMeta.get(file);
173
- if (!meta)
174
- continue;
175
- const fileFuncs = fileFuncToChunkId.get(file);
176
- if (!fileFuncs || fileFuncs.size === 0)
177
- continue;
178
102
  const filePath = path.join(directory, file);
179
103
  let code;
180
104
  try {
181
105
  code = fs.readFileSync(filePath, "utf8");
182
106
  }
183
- catch (_f) {
107
+ catch (_d) {
184
108
  continue;
185
109
  }
186
110
  let ast;
@@ -191,13 +115,40 @@ const getViteConnections = (directory, output, formats) => __awaiter(void 0, voi
191
115
  errorRecovery: true,
192
116
  });
193
117
  }
194
- catch (_g) {
118
+ catch (_e) {
195
119
  continue;
196
120
  }
121
+ const fileFuncs = new Map();
122
+ fileFuncToChunkId.set(file, fileFuncs);
123
+ // Collect imports/exports from the top-level declaration list.
197
124
  const importMap = new Map();
198
125
  const exportMap = new Map();
199
126
  for (const node of ast.program.body) {
200
- if (node.type === "ImportDeclaration") {
127
+ if (node.type === "FunctionDeclaration") {
128
+ if (!node.id || !FUNC_NAME_RE.test(node.id.name))
129
+ continue;
130
+ if (!meta)
131
+ continue;
132
+ const funcName = node.id.name;
133
+ const key = computeChunkKey(funcName, meta);
134
+ if (chunks[key])
135
+ continue;
136
+ const funcCode = code.slice((_a = node.start) !== null && _a !== void 0 ? _a : 0, (_b = node.end) !== null && _b !== void 0 ? _b : 0);
137
+ chunks[key] = {
138
+ id: key,
139
+ description: "none",
140
+ loadedOn: [],
141
+ containsFetch: false,
142
+ isAxiosLibrary: false,
143
+ exports: [],
144
+ callStack: [],
145
+ code: funcCode,
146
+ imports: [],
147
+ file: file,
148
+ };
149
+ fileFuncs.set(funcName, key);
150
+ }
151
+ else if (node.type === "ImportDeclaration") {
201
152
  const source = node.source.value;
202
153
  for (const spec of node.specifiers) {
203
154
  if (spec.type === "ImportSpecifier") {
@@ -224,49 +175,95 @@ const getViteConnections = (directory, output, formats) => __awaiter(void 0, voi
224
175
  }
225
176
  }
226
177
  }
178
+ // Fallback for Vite dev-mode / non-bundled files: production-style 2-char
179
+ // function chunking doesn't apply, so emit the whole file as a single chunk
180
+ // so the AST analysis engine still has something to scan.
181
+ if (fileFuncs.size === 0) {
182
+ const baseId = path.basename(file).replace(/[^a-zA-Z0-9]+/g, "_");
183
+ let key = baseId;
184
+ let suffix = 0;
185
+ while (chunks[key]) {
186
+ suffix++;
187
+ key = `${baseId}_${suffix}`;
188
+ }
189
+ chunks[key] = {
190
+ id: key,
191
+ description: "none",
192
+ loadedOn: [],
193
+ containsFetch: /\bfetch\s*\(/.test(code),
194
+ isAxiosLibrary: false,
195
+ exports: [],
196
+ callStack: [],
197
+ code: code,
198
+ imports: [],
199
+ file: file,
200
+ };
201
+ }
202
+ // Apply exports now that we have fileFuncs and exportMap.
227
203
  for (const [funcName, chunkId] of fileFuncs.entries()) {
228
204
  const exportNames = exportMap.get(funcName);
229
205
  if (exportNames)
230
206
  chunks[chunkId].exports = exportNames;
231
207
  }
232
- traverse(ast, {
233
- FunctionDeclaration(funcPath) {
234
- var _a;
235
- if (funcPath.parent.type !== "Program")
236
- return;
237
- const name = (_a = funcPath.node.id) === null || _a === void 0 ? void 0 : _a.name;
238
- if (!name || !FUNC_NAME_RE.test(name))
239
- return;
240
- const chunkId = fileFuncs.get(name);
241
- if (!chunkId)
242
- return;
243
- const importsSet = new Set();
244
- funcPath.traverse({
245
- Identifier(idPath) {
246
- const idName = idPath.node.name;
247
- if (!importMap.has(idName))
248
- return;
249
- // skip identifiers that aren't references (property names, etc.)
250
- const parent = idPath.parent;
251
- if (parent.type === "MemberExpression" && parent.property === idPath.node && !parent.computed)
252
- return;
253
- if (parent.type === "ObjectProperty" && parent.key === idPath.node && !parent.computed)
254
- return;
255
- const { source, original } = importMap.get(idName);
256
- const resolvedFile = resolveImportSource(file, source);
257
- if (!resolvedFile)
258
- return;
259
- const targetMap = fileFuncToChunkId.get(resolvedFile);
260
- if (!targetMap)
261
- return;
262
- const targetId = targetMap.get(original);
263
- if (targetId)
264
- importsSet.add(targetId);
265
- },
266
- });
267
- chunks[chunkId].imports = Array.from(importsSet);
268
- },
269
- });
208
+ // Collect per-function import references in a single AST traversal so the
209
+ // AST can be discarded immediately after this loop body. Lightweight ImportRef
210
+ // objects are stored instead of live AST node references.
211
+ if (importMap.size > 0) {
212
+ traverse(ast, {
213
+ FunctionDeclaration(funcPath) {
214
+ var _a;
215
+ if (funcPath.parent.type !== "Program")
216
+ return;
217
+ const name = (_a = funcPath.node.id) === null || _a === void 0 ? void 0 : _a.name;
218
+ if (!name || !FUNC_NAME_RE.test(name))
219
+ return;
220
+ const chunkId = fileFuncs.get(name);
221
+ if (!chunkId)
222
+ return;
223
+ const refs = [];
224
+ funcPath.traverse({
225
+ Identifier(idPath) {
226
+ const idName = idPath.node.name;
227
+ if (!importMap.has(idName))
228
+ return;
229
+ const parent = idPath.parent;
230
+ if (parent.type === "MemberExpression" &&
231
+ parent.property === idPath.node &&
232
+ !parent.computed)
233
+ return;
234
+ if (parent.type === "ObjectProperty" && parent.key === idPath.node && !parent.computed)
235
+ return;
236
+ const imp = importMap.get(idName);
237
+ refs.push({ source: imp.source, original: imp.original });
238
+ },
239
+ });
240
+ if (refs.length > 0)
241
+ chunkImportRefs.set(chunkId, refs);
242
+ },
243
+ });
244
+ }
245
+ // ast and code go out of scope here — the GC can reclaim them.
246
+ }
247
+ // Resolve collected import references to chunk IDs (no re-parsing needed).
248
+ console.log(chalk.cyan("[i] Resolving imports and exports"));
249
+ for (const [chunkId, refs] of chunkImportRefs.entries()) {
250
+ const chunk = chunks[chunkId];
251
+ if (!chunk)
252
+ continue;
253
+ const file = chunk.file;
254
+ const importsSet = new Set();
255
+ for (const { source, original } of refs) {
256
+ const resolvedFile = resolveImportSource(file, source);
257
+ if (!resolvedFile)
258
+ continue;
259
+ const targetMap = fileFuncToChunkId.get(resolvedFile);
260
+ if (!targetMap)
261
+ continue;
262
+ const targetId = targetMap.get(original);
263
+ if (targetId)
264
+ importsSet.add(targetId);
265
+ }
266
+ chunk.imports = Array.from(importsSet);
270
267
  }
271
268
  console.log(chalk.green(`[✓] Found ${Object.keys(chunks).length} Vue.JS functions`));
272
269
  // if AI description is enabled, generate descriptions for each chunk in parallel batches
@@ -307,8 +304,32 @@ const getViteConnections = (directory, output, formats) => __awaiter(void 0, voi
307
304
  });
308
305
  }
309
306
  if (formats.includes("json")) {
310
- const chunksJson = JSON.stringify(chunks, null, 2);
311
- fs.writeFileSync(`${output}.json`, chunksJson);
307
+ // Write the JSON file incrementally to avoid allocating a single string
308
+ // that mirrors the entire chunks object in memory (which can be GBs for
309
+ // large apps).
310
+ const outputPath = `${output}.json`;
311
+ const writeStream = fs.createWriteStream(outputPath);
312
+ writeStream.write("{\n");
313
+ const entries = Object.entries(chunks);
314
+ for (let i = 0; i < entries.length; i++) {
315
+ const [key, value] = entries[i];
316
+ const isLast = i === entries.length - 1;
317
+ // Indent inner lines by 2 extra spaces to match pretty-print style.
318
+ const valueStr = JSON.stringify(value, null, 2)
319
+ .split("\n")
320
+ .map((line, j) => (j === 0 ? line : " " + line))
321
+ .join("\n");
322
+ writeStream.write(` ${JSON.stringify(key)}: ${valueStr}${isLast ? "" : ","}\n`);
323
+ }
324
+ writeStream.write("}");
325
+ yield new Promise((resolve, reject) => {
326
+ writeStream.end((err) => {
327
+ if (err)
328
+ reject(err);
329
+ else
330
+ resolve();
331
+ });
332
+ });
312
333
  console.log(chalk.green(`[✓] Saved Vite connections to ${output}.json`));
313
334
  }
314
335
  return chunks;
@@ -1 +1 @@
1
- {"version":3,"file":"getViteConnections.js","sourceRoot":"","sources":["../../../src/map/vue_js/getViteConnections.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getViteConnections.js","sourceRoot":"","sources":["../../../src/map/vue_js/getViteConnections.ts"],"names":[],"mappings":"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"}