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

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 (111) hide show
  1. package/.github/workflows/pr_checker.yml +9 -8
  2. package/CHANGELOG.md +47 -0
  3. package/CLAUDE.md +136 -0
  4. package/build/analyze/engine/astEngine.js +34 -6
  5. package/build/analyze/engine/astEngine.js.map +1 -1
  6. package/build/analyze/engine/index.js +2 -2
  7. package/build/analyze/engine/index.js.map +1 -1
  8. package/build/analyze/helpers/engineHelpers/taintFlow.js +218 -0
  9. package/build/analyze/helpers/engineHelpers/taintFlow.js.map +1 -0
  10. package/build/analyze/helpers/schemas.js +3 -1
  11. package/build/analyze/helpers/schemas.js.map +1 -1
  12. package/build/analyze/helpers/validate.js +49 -9
  13. package/build/analyze/helpers/validate.js.map +1 -1
  14. package/build/analyze/index.js +3 -2
  15. package/build/analyze/index.js.map +1 -1
  16. package/build/globalConfig.js +1 -1
  17. package/build/index.js +21 -1
  18. package/build/index.js.map +1 -1
  19. package/build/lazyLoad/downloadFilesUtil.js +3 -3
  20. package/build/lazyLoad/downloadFilesUtil.js.map +1 -1
  21. package/build/lazyLoad/downloadQueue.js +190 -0
  22. package/build/lazyLoad/downloadQueue.js.map +1 -0
  23. package/build/lazyLoad/index.js +57 -55
  24. package/build/lazyLoad/index.js.map +1 -1
  25. package/build/lazyLoad/next_js/NextJsCrawler.js +34 -11
  26. package/build/lazyLoad/next_js/NextJsCrawler.js.map +1 -1
  27. package/build/lazyLoad/next_js/next_GetJSScript.js +24 -3
  28. package/build/lazyLoad/next_js/next_GetJSScript.js.map +1 -1
  29. package/build/lazyLoad/next_js/next_SubsequentRequests.js +20 -2
  30. package/build/lazyLoad/next_js/next_SubsequentRequests.js.map +1 -1
  31. package/build/lazyLoad/next_js/next_scriptTagsSubsequentRequests.js +10 -1
  32. package/build/lazyLoad/next_js/next_scriptTagsSubsequentRequests.js.map +1 -1
  33. package/build/lazyLoad/techDetect/checkReact.js +13 -2
  34. package/build/lazyLoad/techDetect/checkReact.js.map +1 -1
  35. package/build/lazyLoad/techDetect/index.js +37 -24
  36. package/build/lazyLoad/techDetect/index.js.map +1 -1
  37. package/build/lazyLoad/vue/vue_discoverJsFiles.js +25 -11
  38. package/build/lazyLoad/vue/vue_discoverJsFiles.js.map +1 -1
  39. package/build/lazyLoad/vue/vue_getClientSidePaths.js +31 -4
  40. package/build/lazyLoad/vue/vue_getClientSidePaths.js.map +1 -1
  41. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js +3 -3
  42. package/build/lazyLoad/vue/vue_recursiveClientSidePathDownload.js.map +1 -1
  43. package/build/lazyLoad/vue/vue_stringJsFiles.js +142 -0
  44. package/build/lazyLoad/vue/vue_stringJsFiles.js.map +1 -0
  45. package/build/load/index.js +316 -0
  46. package/build/load/index.js.map +1 -0
  47. package/build/map/index.js +42 -5
  48. package/build/map/index.js.map +1 -1
  49. package/build/map/next_js/getExports.js +11 -5
  50. package/build/map/next_js/getExports.js.map +1 -1
  51. package/build/map/next_js/getFetchInstances.js +11 -5
  52. package/build/map/next_js/getFetchInstances.js.map +1 -1
  53. package/build/map/next_js/interactive.js +30 -0
  54. package/build/map/next_js/interactive.js.map +1 -1
  55. package/build/map/next_js/interactive_helpers/commandHandler.js +22 -0
  56. package/build/map/next_js/interactive_helpers/commandHandler.js.map +1 -1
  57. package/build/map/next_js/interactive_helpers/esqueryGen.js +370 -0
  58. package/build/map/next_js/interactive_helpers/esqueryGen.js.map +1 -0
  59. package/build/map/next_js/interactive_helpers/helpMenu.js +1 -0
  60. package/build/map/next_js/interactive_helpers/helpMenu.js.map +1 -1
  61. package/build/map/next_js/interactive_helpers/inputPatch.js +207 -0
  62. package/build/map/next_js/interactive_helpers/inputPatch.js.map +1 -0
  63. package/build/map/next_js/interactive_helpers/ui.js +0 -1
  64. package/build/map/next_js/interactive_helpers/ui.js.map +1 -1
  65. package/build/map/next_js/resolveAxios.js +24 -5
  66. package/build/map/next_js/resolveAxios.js.map +1 -1
  67. package/build/map/next_js/resolveAxiosHelpers/astNodeToJsonString.js +2 -2
  68. package/build/map/next_js/resolveAxiosHelpers/astNodeToJsonString.js.map +1 -1
  69. package/build/map/next_js/resolveAxiosHelpers/findCrossChunkParams.js +11 -5
  70. package/build/map/next_js/resolveAxiosHelpers/findCrossChunkParams.js.map +1 -1
  71. package/build/map/next_js/resolveAxiosHelpers/interceptorHeaders.js +206 -0
  72. package/build/map/next_js/resolveAxiosHelpers/interceptorHeaders.js.map +1 -0
  73. package/build/map/next_js/resolveAxiosHelpers/processAxiosCall.js +25 -8
  74. package/build/map/next_js/resolveAxiosHelpers/processAxiosCall.js.map +1 -1
  75. package/build/map/next_js/resolveAxiosHelpers/processDirectAxiosCall.js +14 -6
  76. package/build/map/next_js/resolveAxiosHelpers/processDirectAxiosCall.js.map +1 -1
  77. package/build/map/next_js/resolveAxiosHelpers/traceAxiosInstanceExports.js +22 -10
  78. package/build/map/next_js/resolveAxiosHelpers/traceAxiosInstanceExports.js.map +1 -1
  79. package/build/map/next_js/resolveAxiosHelpers/traceBody.js +913 -0
  80. package/build/map/next_js/resolveAxiosHelpers/traceBody.js.map +1 -0
  81. package/build/map/next_js/resolveFetch.js +115 -3
  82. package/build/map/next_js/resolveFetch.js.map +1 -1
  83. package/build/map/next_js/resolveNewRequest.js +749 -0
  84. package/build/map/next_js/resolveNewRequest.js.map +1 -0
  85. package/build/map/next_js/utils.js +397 -49
  86. package/build/map/next_js/utils.js.map +1 -1
  87. package/build/map/vue_js/getViteConnections.js +27 -3
  88. package/build/map/vue_js/getViteConnections.js.map +1 -1
  89. package/build/map/vue_js/interactive.js +28 -0
  90. package/build/map/vue_js/interactive.js.map +1 -1
  91. package/build/map/vue_js/interactive_helpers/commandHandler.js +22 -0
  92. package/build/map/vue_js/interactive_helpers/commandHandler.js.map +1 -1
  93. package/build/map/vue_js/interactive_helpers/helpMenu.js +1 -0
  94. package/build/map/vue_js/interactive_helpers/helpMenu.js.map +1 -1
  95. package/build/map/vue_js/vue_resolveFetch.js +722 -0
  96. package/build/map/vue_js/vue_resolveFetch.js.map +1 -0
  97. package/build/report/utility/populateDb/populateAnalysisFindings.js +1 -1
  98. package/build/report/utility/populateDb/populateAnalysisFindings.js.map +1 -1
  99. package/build/run/index.js +27 -5
  100. package/build/run/index.js.map +1 -1
  101. package/build/strings/index.js +5 -1
  102. package/build/strings/index.js.map +1 -1
  103. package/build/utility/globals.js +9 -0
  104. package/build/utility/globals.js.map +1 -1
  105. package/build/utility/makeReq.js +90 -11
  106. package/build/utility/makeReq.js.map +1 -1
  107. package/build/utility/openapiGenerator.js +60 -4
  108. package/build/utility/openapiGenerator.js.map +1 -1
  109. package/build/utility/postmanGenerator.js +167 -0
  110. package/build/utility/postmanGenerator.js.map +1 -0
  111. package/package.json +2 -2
@@ -0,0 +1,316 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
11
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
12
+ var m = o[Symbol.asyncIterator], i;
13
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
14
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
15
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
16
+ };
17
+ var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
18
+ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
19
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
20
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
21
+ return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
22
+ function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
23
+ function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
24
+ function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
25
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
26
+ function fulfill(value) { resume("next", value); }
27
+ function reject(value) { resume("throw", value); }
28
+ function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
29
+ };
30
+ import fs from "fs";
31
+ import chalk from "chalk";
32
+ import { URL } from "url";
33
+ import zlib from "zlib";
34
+ import * as globals from "../utility/globals.js";
35
+ const DEFAULT_PORTS = { "http:": 80, "https:": 443 };
36
+ function streamCaidoEntries(filePath, rawFilter) {
37
+ return __asyncGenerator(this, arguments, function* streamCaidoEntries_1() {
38
+ var _a, e_1, _b, _c;
39
+ const stream = fs.createReadStream(filePath, { encoding: "utf8", highWaterMark: 1024 * 1024 });
40
+ let depth = 0;
41
+ let inString = false;
42
+ let escape = false;
43
+ let started = false;
44
+ let inObject = false;
45
+ let pending = [];
46
+ let startIdx = -1;
47
+ try {
48
+ for (var _d = true, stream_1 = __asyncValues(stream), stream_1_1; stream_1_1 = yield __await(stream_1.next()), _a = stream_1_1.done, !_a; _d = true) {
49
+ _c = stream_1_1.value;
50
+ _d = false;
51
+ const chunk = _c;
52
+ const buf = chunk;
53
+ for (let i = 0; i < buf.length; i++) {
54
+ const c = buf[i];
55
+ if (!started) {
56
+ if (c === "[")
57
+ started = true;
58
+ continue;
59
+ }
60
+ if (!inObject) {
61
+ if (c === "{") {
62
+ inObject = true;
63
+ depth = 1;
64
+ startIdx = i;
65
+ }
66
+ continue;
67
+ }
68
+ if (inString) {
69
+ if (escape)
70
+ escape = false;
71
+ else if (c === "\\")
72
+ escape = true;
73
+ else if (c === '"')
74
+ inString = false;
75
+ continue;
76
+ }
77
+ if (c === '"') {
78
+ inString = true;
79
+ }
80
+ else if (c === "{") {
81
+ depth++;
82
+ }
83
+ else if (c === "}") {
84
+ depth--;
85
+ if (depth === 0) {
86
+ pending.push(buf.slice(startIdx, i + 1));
87
+ const objStr = pending.length === 1 ? pending[0] : pending.join("");
88
+ pending = [];
89
+ inObject = false;
90
+ startIdx = -1;
91
+ if (rawFilter(objStr)) {
92
+ try {
93
+ yield yield __await(JSON.parse(objStr));
94
+ }
95
+ catch (_e) {
96
+ // skip malformed object
97
+ }
98
+ }
99
+ }
100
+ }
101
+ }
102
+ if (inObject && startIdx !== -1) {
103
+ pending.push(buf.slice(startIdx));
104
+ startIdx = 0;
105
+ }
106
+ }
107
+ }
108
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
109
+ finally {
110
+ try {
111
+ if (!_d && !_a && (_b = stream_1.return)) yield __await(_b.call(stream_1));
112
+ }
113
+ finally { if (e_1) throw e_1.error; }
114
+ }
115
+ });
116
+ }
117
+ function splitHttpMessage(raw) {
118
+ const sep = Buffer.from("\r\n\r\n");
119
+ const idx = raw.indexOf(sep);
120
+ if (idx === -1) {
121
+ const lfSep = Buffer.from("\n\n");
122
+ const idx2 = raw.indexOf(lfSep);
123
+ if (idx2 === -1)
124
+ return null;
125
+ return { headerText: raw.slice(0, idx2).toString("utf8"), body: raw.slice(idx2 + 2) };
126
+ }
127
+ return { headerText: raw.slice(0, idx).toString("utf8"), body: raw.slice(idx + 4) };
128
+ }
129
+ function parseHeaders(headerText) {
130
+ const lines = headerText.split(/\r?\n/);
131
+ const firstLine = lines.shift() || "";
132
+ const headers = {};
133
+ for (const line of lines) {
134
+ if (!line)
135
+ continue;
136
+ const colon = line.indexOf(":");
137
+ if (colon === -1)
138
+ continue;
139
+ const key = line.slice(0, colon).trim();
140
+ const value = line.slice(colon + 1).trim();
141
+ if (!key)
142
+ continue;
143
+ headers[key] = value;
144
+ }
145
+ return { firstLine, headers };
146
+ }
147
+ function decodeBody(body, headers) {
148
+ var _a, _b;
149
+ const enc = (_b = (_a = Object.entries(headers)
150
+ .find(([k]) => k.toLowerCase() === "content-encoding")) === null || _a === void 0 ? void 0 : _a[1]) === null || _b === void 0 ? void 0 : _b.toLowerCase();
151
+ if (!enc)
152
+ return body;
153
+ try {
154
+ if (enc.includes("gzip"))
155
+ return zlib.gunzipSync(body);
156
+ if (enc.includes("br"))
157
+ return zlib.brotliDecompressSync(body);
158
+ if (enc.includes("deflate")) {
159
+ try {
160
+ return zlib.inflateSync(body);
161
+ }
162
+ catch (_c) {
163
+ return zlib.inflateRawSync(body);
164
+ }
165
+ }
166
+ if (enc.includes("zstd") && zlib.zstdDecompressSync) {
167
+ return zlib.zstdDecompressSync(body);
168
+ }
169
+ }
170
+ catch (_d) {
171
+ // fall through and return raw body
172
+ }
173
+ return body;
174
+ }
175
+ function buildUrlVariants(entry) {
176
+ const scheme = entry.is_tls ? "https:" : "http:";
177
+ const defaultPort = DEFAULT_PORTS[scheme];
178
+ const hasNonDefaultPort = entry.port && entry.port !== defaultPort;
179
+ const hostWithPort = hasNonDefaultPort ? `${entry.host}:${entry.port}` : entry.host;
180
+ const hostNoPort = entry.host;
181
+ const path = entry.path || "/";
182
+ const query = entry.query ? `?${entry.query}` : "";
183
+ const variants = new Set();
184
+ variants.add(`${scheme}//${hostWithPort}${path}${query}`);
185
+ if (hasNonDefaultPort) {
186
+ variants.add(`${scheme}//${hostNoPort}${path}${query}`);
187
+ }
188
+ else {
189
+ variants.add(`${scheme}//${entry.host}:${entry.port}${path}${query}`);
190
+ }
191
+ if (path === "/" && !query) {
192
+ variants.add(`${scheme}//${hostWithPort}`);
193
+ if (hasNonDefaultPort)
194
+ variants.add(`${scheme}//${hostNoPort}`);
195
+ }
196
+ return Array.from(variants);
197
+ }
198
+ const load = (caidoFile, targetUrl) => __awaiter(void 0, void 0, void 0, function* () {
199
+ var _a, e_2, _b, _c;
200
+ console.log(chalk.cyan("[i] Loading 'Load' module"));
201
+ if (!fs.existsSync(caidoFile)) {
202
+ console.log(chalk.red(`[!] Caido file not found: ${caidoFile}`));
203
+ process.exit(1);
204
+ }
205
+ let targetHost;
206
+ let targetPort;
207
+ let targetScheme;
208
+ try {
209
+ const u = new URL(targetUrl);
210
+ targetHost = u.hostname;
211
+ targetScheme = u.protocol;
212
+ targetPort = u.port ? parseInt(u.port, 10) : DEFAULT_PORTS[u.protocol];
213
+ }
214
+ catch (_d) {
215
+ console.log(chalk.red(`[!] Invalid target URL: ${targetUrl}`));
216
+ process.exit(1);
217
+ }
218
+ const cacheFile = globals.getRespCacheFile();
219
+ let cache = {};
220
+ if (fs.existsSync(cacheFile)) {
221
+ try {
222
+ cache = JSON.parse(fs.readFileSync(cacheFile, "utf-8"));
223
+ }
224
+ catch (_e) {
225
+ cache = {};
226
+ }
227
+ }
228
+ console.log(chalk.cyan(`[i] Filtering Caido entries for ${targetScheme}//${targetHost}:${targetPort} → ${cacheFile}`));
229
+ let scanned = 0;
230
+ let matched = 0;
231
+ let stored = 0;
232
+ const hostNeedle = `"host":"${targetHost}"`;
233
+ const rawFilter = (raw) => raw.includes(hostNeedle);
234
+ try {
235
+ for (var _f = true, _g = __asyncValues(streamCaidoEntries(caidoFile, rawFilter)), _h; _h = yield _g.next(), _a = _h.done, !_a; _f = true) {
236
+ _c = _h.value;
237
+ _f = false;
238
+ const entry = _c;
239
+ scanned++;
240
+ if (scanned % 5000 === 0) {
241
+ process.stdout.write(chalk.dim(`\r[i] Scanned ${scanned} entries (matched ${matched})`));
242
+ }
243
+ if (!entry || !entry.host)
244
+ continue;
245
+ if (entry.host !== targetHost)
246
+ continue;
247
+ if (entry.port !== targetPort)
248
+ continue;
249
+ const entryScheme = entry.is_tls ? "https:" : "http:";
250
+ if (entryScheme !== targetScheme)
251
+ continue;
252
+ if (!entry.response)
253
+ continue;
254
+ matched++;
255
+ let respRaw;
256
+ let reqRaw;
257
+ try {
258
+ respRaw = Buffer.from(entry.response.raw, "base64");
259
+ reqRaw = Buffer.from(entry.raw, "base64");
260
+ }
261
+ catch (_j) {
262
+ continue;
263
+ }
264
+ const respParts = splitHttpMessage(respRaw);
265
+ if (!respParts)
266
+ continue;
267
+ const reqParts = splitHttpMessage(reqRaw);
268
+ const respParsed = parseHeaders(respParts.headerText);
269
+ const reqHeaders = reqParts ? parseHeaders(reqParts.headerText).headers : {};
270
+ const decodedBody = decodeBody(respParts.body, respParsed.headers);
271
+ const bodyB64 = decodedBody.toString("base64");
272
+ const respHeaders = {};
273
+ for (const [k, v] of Object.entries(respParsed.headers)) {
274
+ const lk = k.toLowerCase();
275
+ if (lk === "content-length" || lk === "content-encoding" || lk === "transfer-encoding")
276
+ continue;
277
+ respHeaders[k] = v;
278
+ }
279
+ const status = entry.response.status_code || parseInt(respParsed.firstLine.split(/\s+/)[1] || "200", 10);
280
+ const isRsc = Object.keys(reqHeaders).some((h) => h.toUpperCase() === "RSC");
281
+ const entryKey = isRsc ? "rsc" : "normal";
282
+ for (const url of buildUrlVariants(entry)) {
283
+ if (!cache[url])
284
+ cache[url] = {};
285
+ cache[url][entryKey] = {
286
+ req_headers: reqHeaders,
287
+ status,
288
+ body_b64: bodyB64,
289
+ resp_headers: respHeaders,
290
+ };
291
+ stored++;
292
+ }
293
+ }
294
+ }
295
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
296
+ finally {
297
+ try {
298
+ if (!_f && !_a && (_b = _g.return)) yield _b.call(_g);
299
+ }
300
+ finally { if (e_2) throw e_2.error; }
301
+ }
302
+ process.stdout.write("\r");
303
+ try {
304
+ fs.writeFileSync(cacheFile, JSON.stringify(cache));
305
+ }
306
+ catch (err) {
307
+ if (err instanceof RangeError) {
308
+ console.log(chalk.red(`[!] Cache too large to serialize as one JSON string.`));
309
+ process.exit(1);
310
+ }
311
+ throw err;
312
+ }
313
+ console.log(chalk.green(`[✓] Load complete — scanned ${scanned}, matched ${matched}, wrote ${stored} cache entries to ${cacheFile}`));
314
+ });
315
+ export default load;
316
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/load/index.ts"],"names":[],"mappings":"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"}
@@ -14,16 +14,19 @@ import getWebpackConnections from "./next_js/getWebpackConnections.js";
14
14
  import getTurbopackConnections from "./next_js/getTurbopackConnections.js";
15
15
  import getFetchInstances from "./next_js/getFetchInstances.js";
16
16
  import resolveFetch from "./next_js/resolveFetch.js";
17
- import interactive from "./next_js/interactive.js";
17
+ import resolveNewRequest from "./next_js/resolveNewRequest.js";
18
+ import interactive, { runCommands as nextRunCommands } from "./next_js/interactive.js";
18
19
  import { existsSync, readFileSync } from "fs";
19
20
  import getAxiosInstances from "./next_js/getAxiosInstances.js";
20
21
  import resolveAxios from "./next_js/resolveAxios.js";
21
22
  import { getOpenapi, getOpenapiOutput, getOpenapiOutputFile } from "../utility/globals.js";
22
23
  import { generateOpenapiV3Spec } from "../utility/openapiGenerator.js";
24
+ import { generatePostmanCollection } from "../utility/postmanGenerator.js";
23
25
  import getExports from "./next_js/getExports.js";
24
26
  // Vue.JS
25
27
  import getViteConnections from "./vue_js/getViteConnections.js";
26
- import vueInteractive from "./vue_js/interactive.js";
28
+ import vueInteractive, { runCommands as vueRunCommands } from "./vue_js/interactive.js";
29
+ import vue_resolveFetch from "./vue_js/vue_resolveFetch.js";
27
30
  const availableTech = {
28
31
  next: "Next.JS",
29
32
  vue: "Vue.JS",
@@ -49,7 +52,7 @@ const availableFormats = {
49
52
  * @param interactive_mode - Whether to launch interactive mode after analysis
50
53
  * @returns Promise that resolves when mapping analysis is complete
51
54
  */
52
- const map = (directory, output, formats, tech, list, interactive_mode) => __awaiter(void 0, void 0, void 0, function* () {
55
+ const map = (directory_1, output_1, formats_1, tech_1, list_1, interactive_mode_1, ...args_1) => __awaiter(void 0, [directory_1, output_1, formats_1, tech_1, list_1, interactive_mode_1, ...args_1], void 0, function* (directory, output, formats, tech, list, interactive_mode, commands = []) {
53
56
  console.log(chalk.cyan("[i] Running 'map' module"));
54
57
  if (list) {
55
58
  console.log(chalk.cyan("Available technologies:"));
@@ -101,7 +104,12 @@ const map = (directory, output, formats, tech, list, interactive_mode) => __awai
101
104
  yield resolveFetch(chunks, directory);
102
105
  // also, the axios instances
103
106
  yield resolveAxios(chunks, directory);
104
- if (interactive_mode) {
107
+ // wrapper-class HTTP requests: new X({url, method, ...})
108
+ yield resolveNewRequest(chunks, directory);
109
+ if (commands.length > 0) {
110
+ yield nextRunCommands(chunks, `${output}.json`, commands);
111
+ }
112
+ else if (interactive_mode) {
105
113
  yield interactive(chunks, `${output}.json`);
106
114
  }
107
115
  // check if the openapi output is enabled. if so, then write to file
@@ -113,6 +121,16 @@ const map = (directory, output, formats, tech, list, interactive_mode) => __awai
113
121
  // write to file
114
122
  fs.writeFileSync(getOpenapiOutputFile(), openapiJson);
115
123
  console.log(chalk.green(`[✓] Generated OpenAPI spec at ${getOpenapiOutputFile()}`));
124
+ // Also emit a Postman Collection v2.1 — Bruno/Insomnia/Postman use its
125
+ // nested `item` arrays to render real folder hierarchies on import,
126
+ // which a flat OpenAPI tag list can't represent.
127
+ const postmanCollection = generatePostmanCollection(getOpenapiOutput());
128
+ const openapiOutputFile = getOpenapiOutputFile();
129
+ const postmanOutputFile = openapiOutputFile.endsWith(".json")
130
+ ? openapiOutputFile.replace(/\.json$/, ".postman_collection.json")
131
+ : `${openapiOutputFile}.postman_collection.json`;
132
+ fs.writeFileSync(postmanOutputFile, JSON.stringify(postmanCollection, null, 2));
133
+ console.log(chalk.green(`[✓] Generated Postman Collection at ${postmanOutputFile}`));
116
134
  }
117
135
  }
118
136
  else if (tech === "vue") {
@@ -123,9 +141,28 @@ const map = (directory, output, formats, tech, list, interactive_mode) => __awai
123
141
  else {
124
142
  chunks = JSON.parse(readFileSync(`${output}.json`, { encoding: "utf8" }));
125
143
  }
126
- if (interactive_mode) {
144
+ // Resolve fetch instances across all Vue.JS files
145
+ yield vue_resolveFetch(directory);
146
+ if (commands.length > 0) {
147
+ yield vueRunCommands(chunks, `${output}.json`, commands);
148
+ }
149
+ else if (interactive_mode) {
127
150
  yield vueInteractive(chunks, `${output}.json`);
128
151
  }
152
+ // Generate OpenAPI spec and Postman collection if enabled
153
+ if (getOpenapi() === true) {
154
+ const openapiSpec = generateOpenapiV3Spec(getOpenapiOutput(), chunks);
155
+ const openapiJson = JSON.stringify(openapiSpec, null, 2);
156
+ fs.writeFileSync(getOpenapiOutputFile(), openapiJson);
157
+ console.log(chalk.green(`[✓] Generated OpenAPI spec at ${getOpenapiOutputFile()}`));
158
+ const postmanCollection = generatePostmanCollection(getOpenapiOutput());
159
+ const openapiOutputFile = getOpenapiOutputFile();
160
+ const postmanOutputFile = openapiOutputFile.endsWith(".json")
161
+ ? openapiOutputFile.replace(/\.json$/, ".postman_collection.json")
162
+ : `${openapiOutputFile}.postman_collection.json`;
163
+ fs.writeFileSync(postmanOutputFile, JSON.stringify(postmanCollection, null, 2));
164
+ console.log(chalk.green(`[✓] Generated Postman Collection at ${postmanOutputFile}`));
165
+ }
129
166
  }
130
167
  });
131
168
  export default 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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"}
@@ -24,11 +24,17 @@ const getExports = (chunks) => __awaiter(void 0, void 0, void 0, function* () {
24
24
  // get the chunk code
25
25
  const chunkCode = chunk.code;
26
26
  // parse it with ast
27
- const ast = parser.parse(chunkCode, {
28
- sourceType: "unambiguous",
29
- plugins: ["jsx", "typescript"],
30
- errorRecovery: true,
31
- });
27
+ let ast;
28
+ try {
29
+ ast = parser.parse(chunkCode, {
30
+ sourceType: "unambiguous",
31
+ plugins: ["jsx", "typescript"],
32
+ errorRecovery: true,
33
+ });
34
+ }
35
+ catch (_a) {
36
+ continue;
37
+ }
32
38
  // declare the exportname var
33
39
  let chunkSecondArg;
34
40
  let chunkThirdArg;
@@ -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":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,eAAe,CAAC;AACnC,OAAO,SAAS,MAAM,iBAAiB,CAAC;AAExC,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC;AAEnC;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAO,MAAc,EAAmB,EAAE;IACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAE/C,IAAI,SAAS,GAAG,MAAM,CAAC;IAEvB,6BAA6B;IAC7B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACxC,qBAAqB;QACrB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;QAE7B,oBAAoB;QACpB,IAAI,GAAG,CAAC;QACR,IAAI,CAAC;YACD,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE;gBAC1B,UAAU,EAAE,aAAa;gBACzB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;gBAC9B,aAAa,EAAE,IAAI;aACtB,CAAC,CAAC;QACP,CAAC;QAAC,WAAM,CAAC;YACL,SAAS;QACb,CAAC;QAED,6BAA6B;QAC7B,IAAI,cAAsB,CAAC;QAC3B,IAAI,aAAqB,CAAC;QAE1B,wDAAwD;QACxD,QAAQ,CAAC,GAAG,EAAE;YACV,KAAK,CAAC,IAAI;gBACN,IAAI,QAAQ,GAAyD,IAAI,CAAC;gBAC1E,IAAI,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;oBAC/B,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;gBACzB,CAAC;qBAAM,IAAI,IAAI,CAAC,sBAAsB,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,yBAAyB,EAAE,CAAC;oBAC7F,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC/B,CAAC;gBAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;oBAC1C,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACvC,IAAI,WAAW,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBACpC,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC;oBACtC,CAAC;gBACL,CAAC;gBAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;oBAC1C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACtC,IAAI,UAAU,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBACnC,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC;oBACpC,CAAC;gBACL,CAAC;gBAED,IAAI,cAAc,IAAI,aAAa,EAAE,CAAC;oBAClC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAChB,CAAC;YACL,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,SAAS;QACb,CAAC;QAED,IAAI,YAAY,GAAa,EAAE,CAAC;QAEhC,oDAAoD;QACpD,kEAAkE;QAClE,uDAAuD;QACvD,QAAQ,CAAC,GAAG,EAAE;YACV,cAAc,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;gBACtB,IACI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB;oBACvC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY;oBACxC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa;oBACzC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC;oBAC1B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY;oBACvC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc;oBACzC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,kBAAkB,EAC/C,CAAC;oBACC,kCAAkC;oBAClC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;wBAC9C,IAAI,QAAQ,CAAC,IAAI,KAAK,eAAe,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;4BAC1E,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACzC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;SACJ,CAAC,CAAC;QAEH,sDAAsD;QACtD,oDAAoD;QAEpD,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,YAAY,CAAC;IAC/C,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC,CAAA,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -53,11 +53,17 @@ const getFetchInstances = (chunks, output, formats) => __awaiter(void 0, void 0,
53
53
  let chunk_copy = Object.assign({}, chunks);
54
54
  // iterate through the chunks, and check fetch instances
55
55
  for (let chunk of Object.values(chunks)) {
56
- const chunkAst = parser.parse(chunk.code, {
57
- sourceType: "module",
58
- plugins: ["jsx", "typescript"],
59
- errorRecovery: true,
60
- });
56
+ let chunkAst;
57
+ try {
58
+ chunkAst = parser.parse(chunk.code, {
59
+ sourceType: "module",
60
+ plugins: ["jsx", "typescript"],
61
+ errorRecovery: true,
62
+ });
63
+ }
64
+ catch (_a) {
65
+ continue;
66
+ }
61
67
  const fetchAliases = new Set();
62
68
  const fetchCalls = new Set();
63
69
  traverse(chunkAst, {
@@ -1 +1 @@
1
- {"version":3,"file":"getFetchInstances.js","sourceRoot":"","sources":["../../../src/map/next_js/getFetchInstances.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,SAAS,MAAM,iBAAiB,CAAC;AACxC,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC;AACnC,OAAO,MAAM,MAAM,eAAe,CAAC;AAGnC;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,CAAC,IAAS,EAAW,EAAE;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;AAC/D,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,eAAe,GAAG,CAAC,IAAS,EAAW,EAAE;IAC3C,0CAA0C;IAC1C,OAAO,CACH,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB,IAAI,IAAI,CAAC,KAAK,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClF,CAAC,IAAI,CAAC,IAAI,KAAK,uBAAuB,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAC/E,CAAC;AACN,CAAC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,iBAAiB,GAAG,CAAO,MAAc,EAAE,MAAc,EAAE,OAAiB,EAAmB,EAAE;IACnG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;IAClE,IAAI,UAAU,qBAAgB,MAAM,CAAE,CAAC;IAEvC,0DAA0D;IAC1D,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;YACtC,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;YAC9B,aAAa,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QAC7B,QAAQ,CAAC,QAAQ,EAAE;YACf,8CAA8C;YAC9C,wBAAwB;YACxB,qCAAqC;YACrC,mCAAmC;YACnC,kBAAkB,CAAC,IAAI;gBACnB,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC/B,IAAI,EAAE,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,IAAI;oBAAE,OAAO;gBAE9C,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC;gBAC1B,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnD,mEAAmE;oBACnE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;oBACjD,IAAI,OAAO,EAAE,CAAC;wBACV,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC9B,CAAC;gBACL,CAAC;YACL,CAAC;YACD,oBAAoB,CAAC,IAAI;gBACrB,sCAAsC;gBACtC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;gBAClC,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY;oBAAE,OAAO;gBAEvC,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjD,IAAI,OAAO,EAAE,CAAC;wBACV,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC9B,CAAC;gBACL,CAAC;YACL,CAAC;YACD,cAAc,CAAC,IAAI;gBACf,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;oBACpD,UAAU,CAAC,GAAG,CAAC;wBACX,IAAI;wBACJ,MAAM;qBACT,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;SACJ,CAAC,CAAC;QAEH,6DAA6D;QAC7D,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACjC,aAAa;YACb,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACnC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC1B,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;oBACjE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;oBAC5C,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,OAAO,CACT,sBAAsB,KAAK,CAAC,EAAE,oBAAoB,GAAG,CAAC,IAAI,CAAC,IAAI,eAAe,IAAI,IAAI,MAAM,EAAE,CACjG,CACJ,CAAC;gBACN,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAED,4DAA4D;QAC5D,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,OAAO;YACT,aAAa;YACb,sBAAsB,KAAK,CAAC,EAAE,uBAAuB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAClF,CACJ,CAAC;QACN,CAAC;QAED,2FAA2F;QAC3F,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC/C,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;QAC9C,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACpD,EAAE,CAAC,aAAa,CAAC,GAAG,MAAM,OAAO,EAAE,WAAW,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,6CAA6C,MAAM,OAAO,CAAC,CAAC,CAAC;IACzF,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC,CAAA,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"getFetchInstances.js","sourceRoot":"","sources":["../../../src/map/next_js/getFetchInstances.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  import { createUI } from "./interactive_helpers/ui.js";
11
11
  import { handleCommand } from "./interactive_helpers/commandHandler.js";
12
12
  import { setupKeybindings } from "./interactive_helpers/keybindings.js";
13
+ import { enableCursorInput } from "./interactive_helpers/inputPatch.js";
13
14
  /**
14
15
  * Starts the interactive mode.
15
16
  * @param {Chunks} chunks - A dictionary of chunk names to chunk objects.
@@ -32,8 +33,37 @@ const interactive = (chunks, map_file) => __awaiter(void 0, void 0, void 0, func
32
33
  yield handleCommand(text, state, ui);
33
34
  }));
34
35
  setupKeybindings(ui.screen, ui.inputBox, ui.outputBox, state);
36
+ enableCursorInput(ui.inputBox);
35
37
  ui.inputBox.focus();
36
38
  ui.screen.render();
37
39
  });
40
+ /**
41
+ * Run a list of interactive-mode commands non-interactively. The blessed UI is
42
+ * replaced by a thin shim that pipes `outputBox.log` to stdout, so a caller
43
+ * (e.g. `map -c ...` or `run -c ...`) can drive the same command surface
44
+ * without a TTY.
45
+ */
46
+ const runCommands = (chunks, map_file, commands) => __awaiter(void 0, void 0, void 0, function* () {
47
+ const state = {
48
+ chunks,
49
+ lastCommandStatus: true,
50
+ functionNavHistory: [],
51
+ functionNavHistoryIndex: -1,
52
+ funcWriteFile: undefined,
53
+ commandHistory: [],
54
+ commandHistoryIndex: -1,
55
+ writeimports: false,
56
+ mapFile: map_file,
57
+ };
58
+ const headlessUi = {
59
+ screen: { render: () => { } },
60
+ outputBox: { log: (s) => console.log(s), setText: () => { } },
61
+ inputBox: { clearValue: () => { }, focus: () => { } },
62
+ };
63
+ for (const command of commands) {
64
+ yield handleCommand(command, state, headlessUi);
65
+ }
66
+ });
67
+ export { runCommands };
38
68
  export default interactive;
39
69
  //# sourceMappingURL=interactive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../../src/map/next_js/interactive.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAexE;;;;GAIG;AACH,MAAM,WAAW,GAAG,CAAO,MAAc,EAAE,QAAgB,EAAE,EAAE;IAC3D,MAAM,KAAK,GAAG;QACV,MAAM;QACN,iBAAiB,EAAE,IAAI;QACvB,kBAAkB,EAAE,EAAE;QACtB,uBAAuB,EAAE,CAAC,CAAC;QAC3B,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE;QAClB,mBAAmB,EAAE,CAAC,CAAC;QACvB,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,QAAQ;KACpB,CAAC;IAEF,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEtB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAO,IAAY,EAAE,EAAE;QAC5C,MAAM,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IACzC,CAAC,CAAA,CAAC,CAAC;IAEH,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAE9D,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACpB,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,CAAA,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../../src/map/next_js/interactive.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAexE;;;;GAIG;AACH,MAAM,WAAW,GAAG,CAAO,MAAc,EAAE,QAAgB,EAAE,EAAE;IAC3D,MAAM,KAAK,GAAG;QACV,MAAM;QACN,iBAAiB,EAAE,IAAI;QACvB,kBAAkB,EAAE,EAAE;QACtB,uBAAuB,EAAE,CAAC,CAAC;QAC3B,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE;QAClB,mBAAmB,EAAE,CAAC,CAAC;QACvB,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,QAAQ;KACpB,CAAC;IAEF,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEtB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAO,IAAY,EAAE,EAAE;QAC5C,MAAM,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IACzC,CAAC,CAAA,CAAC,CAAC;IAEH,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9D,iBAAiB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE/B,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACpB,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,CAAA,CAAC;AAEF;;;;;GAKG;AACH,MAAM,WAAW,GAAG,CAAO,MAAc,EAAE,QAAgB,EAAE,QAAkB,EAAiB,EAAE;IAC9F,MAAM,KAAK,GAAU;QACjB,MAAM;QACN,iBAAiB,EAAE,IAAI;QACvB,kBAAkB,EAAE,EAAE;QACtB,uBAAuB,EAAE,CAAC,CAAC;QAC3B,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE;QAClB,mBAAmB,EAAE,CAAC,CAAC;QACvB,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,QAAQ;KACpB,CAAC;IAEF,MAAM,UAAU,GAAQ;QACpB,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE;QAC5B,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE;QACpE,QAAQ,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE;KACtD,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IACpD,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,eAAe,WAAW,CAAC"}
@@ -12,6 +12,7 @@ import path from "path";
12
12
  import commandHelpers from "./commandHelpers.js";
13
13
  import { helpMenu } from "./helpMenu.js";
14
14
  import { printFunction } from "./printer.js";
15
+ import { runEsqueryCommand } from "./esqueryGen.js";
15
16
  import fs from "fs";
16
17
  /**
17
18
  * Handle user input commands.
@@ -252,6 +253,27 @@ function handleCommand(text, state, ui) {
252
253
  }
253
254
  }
254
255
  }
256
+ else if (text.startsWith("esquery")) {
257
+ const usage = helpMenu.esquery;
258
+ const parts = text.split(" ");
259
+ if (parts.length < 3) {
260
+ outputBox.log(chalk.magenta(usage));
261
+ state.lastCommandStatus = false;
262
+ }
263
+ else {
264
+ const chunkId = parts[1];
265
+ const search = parts.slice(2).join(" ");
266
+ try {
267
+ const result = runEsqueryCommand(state.chunks, chunkId, search);
268
+ outputBox.log(result);
269
+ state.lastCommandStatus = true;
270
+ }
271
+ catch (err) {
272
+ outputBox.log(chalk.red(err instanceof Error ? err.message : String(err)));
273
+ state.lastCommandStatus = false;
274
+ }
275
+ }
276
+ }
255
277
  else if (text.startsWith("trace")) {
256
278
  const usage = helpMenu.trace;
257
279
  if (text.split(" ").length < 2) {