@shriyanss/js-recon 1.2.1-beta.2 → 1.2.2-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/build-and-prettify.yaml +3 -0
- package/.github/workflows/pr_checker.yml +1 -0
- package/CHANGELOG.md +22 -0
- package/build/analyze/engine/astEngine.js +11 -0
- package/build/analyze/engine/astEngine.js.map +1 -1
- package/build/analyze/engine/index.js +13 -0
- package/build/analyze/engine/index.js.map +1 -1
- package/build/analyze/engine/requestEngine.js +11 -0
- package/build/analyze/engine/requestEngine.js.map +1 -1
- package/build/analyze/helpers/engineHelpers/findDirectAssignment.js +10 -0
- package/build/analyze/helpers/engineHelpers/findDirectAssignment.js.map +1 -1
- package/build/analyze/helpers/engineHelpers/findMemberExpressionAssignment.js +4 -1
- package/build/analyze/helpers/engineHelpers/findMemberExpressionAssignment.js.map +1 -1
- package/build/analyze/helpers/engineHelpers/resolveFunctionIdentifier.js +9 -4
- package/build/analyze/helpers/engineHelpers/resolveFunctionIdentifier.js.map +1 -1
- package/build/analyze/helpers/initRules.js +33 -8
- package/build/analyze/helpers/initRules.js.map +1 -1
- package/build/analyze/helpers/outputHelper.js +6 -0
- package/build/analyze/helpers/outputHelper.js.map +1 -1
- package/build/analyze/helpers/validate.js +9 -0
- package/build/analyze/helpers/validate.js.map +1 -1
- package/build/analyze/index.js +21 -0
- package/build/analyze/index.js.map +1 -1
- package/build/api_gateway/checkFeasibility.js +9 -0
- package/build/api_gateway/checkFeasibility.js.map +1 -1
- package/build/api_gateway/checkFireWallBlocking.js +9 -0
- package/build/api_gateway/checkFireWallBlocking.js.map +1 -1
- package/build/api_gateway/genReq.js +6 -0
- package/build/api_gateway/genReq.js.map +1 -1
- package/build/api_gateway/index.js +17 -0
- package/build/api_gateway/index.js.map +1 -1
- package/build/endpoints/gen_report/gen_json.js +8 -0
- package/build/endpoints/gen_report/gen_json.js.map +1 -1
- package/build/endpoints/gen_report/utility/iterate_n_store.js +18 -0
- package/build/endpoints/gen_report/utility/iterate_n_store.js.map +1 -1
- package/build/endpoints/index.js +18 -0
- package/build/endpoints/index.js.map +1 -1
- package/build/endpoints/next_js/client_jsFilesHref.js +10 -0
- package/build/endpoints/next_js/client_jsFilesHref.js.map +1 -1
- package/build/endpoints/next_js/client_jsonParse.js +10 -0
- package/build/endpoints/next_js/client_jsonParse.js.map +1 -1
- package/build/endpoints/next_js/client_mappedJsonFile.js +6 -0
- package/build/endpoints/next_js/client_mappedJsonFile.js.map +1 -1
- package/build/endpoints/next_js/client_subsequentRequests.js +7 -0
- package/build/endpoints/next_js/client_subsequentRequests.js.map +1 -1
- package/build/globalConfig.js +1 -1
- package/build/globalConfig.js.map +1 -1
- package/build/index.js +30 -1
- package/build/index.js.map +1 -1
- package/build/lazyLoad/downloadFilesUtil.js +9 -7
- package/build/lazyLoad/downloadFilesUtil.js.map +1 -1
- package/build/lazyLoad/downloadLoadedJsUtil.js +3 -10
- package/build/lazyLoad/downloadLoadedJsUtil.js.map +1 -1
- package/build/lazyLoad/globals.js +49 -1
- package/build/lazyLoad/globals.js.map +1 -1
- package/build/lazyLoad/index.js +25 -17
- package/build/lazyLoad/index.js.map +1 -1
- package/build/lazyLoad/next_js/next_GetJSScript.js +7 -4
- package/build/lazyLoad/next_js/next_GetJSScript.js.map +1 -1
- package/build/lazyLoad/next_js/next_GetLazyResourcesBuildManifestJs.js +11 -0
- package/build/lazyLoad/next_js/next_GetLazyResourcesBuildManifestJs.js.map +1 -1
- package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js +15 -10
- package/build/lazyLoad/next_js/next_GetLazyResourcesWebpackJs.js.map +1 -1
- package/build/lazyLoad/next_js/next_SubsequentRequests.js +3 -7
- package/build/lazyLoad/next_js/next_SubsequentRequests.js.map +1 -1
- package/build/lazyLoad/next_js/next_buildId.js +47 -0
- package/build/lazyLoad/next_js/next_buildId.js.map +1 -0
- package/build/lazyLoad/next_js/next_globals.js +8 -0
- package/build/lazyLoad/next_js/next_globals.js.map +1 -0
- package/build/lazyLoad/nuxt_js/nuxt_astParse.js +12 -0
- package/build/lazyLoad/nuxt_js/nuxt_astParse.js.map +1 -1
- package/build/lazyLoad/nuxt_js/nuxt_getFromPageSource.js +8 -0
- package/build/lazyLoad/nuxt_js/nuxt_getFromPageSource.js.map +1 -1
- package/build/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.js +13 -0
- package/build/lazyLoad/nuxt_js/nuxt_stringAnalysisJSFiles.js.map +1 -1
- package/build/lazyLoad/svelte/svelte_getFromPageSource.js +8 -0
- package/build/lazyLoad/svelte/svelte_getFromPageSource.js.map +1 -1
- package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js +13 -0
- package/build/lazyLoad/svelte/svelte_stringAnalysisJSFiles.js.map +1 -1
- package/build/lazyLoad/techDetect/index.js +27 -12
- package/build/lazyLoad/techDetect/index.js.map +1 -1
- package/build/map/index.js +18 -0
- package/build/map/index.js.map +1 -1
- package/build/map/next_js/getAxiosInstances.js +12 -0
- package/build/map/next_js/getAxiosInstances.js.map +1 -1
- package/build/map/next_js/getExports.js +5 -0
- package/build/map/next_js/getExports.js.map +1 -1
- package/build/map/next_js/getFetchInstances.js +28 -0
- package/build/map/next_js/getFetchInstances.js.map +1 -1
- package/build/map/next_js/getWebpackConnections.js +7 -0
- package/build/map/next_js/getWebpackConnections.js.map +1 -1
- package/build/map/next_js/interactive.js +5 -0
- package/build/map/next_js/interactive.js.map +1 -1
- package/build/map/next_js/interactive_helpers/commandHandler.js +6 -0
- package/build/map/next_js/interactive_helpers/commandHandler.js.map +1 -1
- package/build/map/next_js/interactive_helpers/commandHelpers.js +34 -0
- package/build/map/next_js/interactive_helpers/commandHelpers.js.map +1 -1
- package/build/map/next_js/interactive_helpers/keybindings.js +7 -0
- package/build/map/next_js/interactive_helpers/keybindings.js.map +1 -1
- package/build/map/next_js/interactive_helpers/printer.js +7 -1
- package/build/map/next_js/interactive_helpers/printer.js.map +1 -1
- package/build/map/next_js/interactive_helpers/ui.js +9 -0
- package/build/map/next_js/interactive_helpers/ui.js.map +1 -1
- package/build/map/next_js/resolveAxios.js +10 -0
- package/build/map/next_js/resolveAxios.js.map +1 -1
- package/build/map/next_js/resolveAxiosHelpers/astNodeToJsonString.js +12 -0
- package/build/map/next_js/resolveAxiosHelpers/astNodeToJsonString.js.map +1 -1
- package/build/map/next_js/resolveAxiosHelpers/findAxiosClients.js +8 -0
- package/build/map/next_js/resolveAxiosHelpers/findAxiosClients.js.map +1 -1
- package/build/map/next_js/resolveAxiosHelpers/findAxiosInstance.js +8 -0
- package/build/map/next_js/resolveAxiosHelpers/findAxiosInstance.js.map +1 -1
- package/build/map/next_js/resolveAxiosHelpers/handleAxiosCreate.js +18 -0
- package/build/map/next_js/resolveAxiosHelpers/handleAxiosCreate.js.map +1 -1
- package/build/map/next_js/resolveAxiosHelpers/processAxiosCall.js +15 -0
- package/build/map/next_js/resolveAxiosHelpers/processAxiosCall.js.map +1 -1
- package/build/map/next_js/resolveFetch.js +5 -0
- package/build/map/next_js/resolveFetch.js.map +1 -1
- package/build/map/next_js/utils.js +29 -2
- package/build/map/next_js/utils.js.map +1 -1
- package/build/refactor/index.js +13 -0
- package/build/refactor/index.js.map +1 -1
- package/build/refactor/next/index.js +12 -0
- package/build/refactor/next/index.js.map +1 -1
- package/build/report/index.js +15 -0
- package/build/report/index.js.map +1 -1
- package/build/report/utility/dataTables/genDataTablesPage.js +48 -2
- package/build/report/utility/dataTables/genDataTablesPage.js.map +1 -1
- package/build/report/utility/genHtml.js +29 -2
- package/build/report/utility/genHtml.js.map +1 -1
- package/build/report/utility/initReportDb.js +25 -0
- package/build/report/utility/initReportDb.js.map +1 -1
- package/build/report/utility/markdownGen/addAnalyze.js +8 -0
- package/build/report/utility/markdownGen/addAnalyze.js.map +1 -1
- package/build/report/utility/markdownGen/addMappedJson.js +8 -0
- package/build/report/utility/markdownGen/addMappedJson.js.map +1 -1
- package/build/report/utility/populateDb/populateAnalysisFindings.js +8 -0
- package/build/report/utility/populateDb/populateAnalysisFindings.js.map +1 -1
- package/build/report/utility/populateDb/populateEndpoints.js +8 -0
- package/build/report/utility/populateDb/populateEndpoints.js.map +1 -1
- package/build/report/utility/populateDb/populateMappedJson.js +8 -0
- package/build/report/utility/populateDb/populateMappedJson.js.map +1 -1
- package/build/report/utility/populateDb/populateMappedOpenapi.js +8 -0
- package/build/report/utility/populateDb/populateMappedOpenapi.js.map +1 -1
- package/build/run/index.js +40 -2
- package/build/run/index.js.map +1 -1
- package/build/strings/index.js +5 -6
- package/build/strings/index.js.map +1 -1
- package/build/strings/openapi.js +8 -0
- package/build/strings/openapi.js.map +1 -1
- package/build/strings/permutate.js +7 -0
- package/build/strings/permutate.js.map +1 -1
- package/build/strings/secrets.js +13 -0
- package/build/strings/secrets.js.map +1 -1
- package/build/utility/ai.js +33 -5
- package/build/utility/ai.js.map +1 -1
- package/build/utility/configureSandbox.js +14 -0
- package/build/utility/configureSandbox.js.map +1 -0
- package/build/utility/globals.js +177 -7
- package/build/utility/globals.js.map +1 -1
- package/build/utility/makeReq.js +69 -21
- package/build/utility/makeReq.js.map +1 -1
- package/build/utility/openapiGenerator.js +15 -7
- package/build/utility/openapiGenerator.js.map +1 -1
- package/build/utility/replaceUrlPlaceholders.js +15 -0
- package/build/utility/replaceUrlPlaceholders.js.map +1 -1
- package/build/utility/resolvePath.js +15 -15
- package/build/utility/runSandboxed.js +20 -0
- package/build/utility/runSandboxed.js.map +1 -1
- package/build/utility/urlUtils.js +7 -6
- package/build/utility/urlUtils.js.map +1 -1
- package/package.json +4 -2
|
@@ -16,7 +16,11 @@ import CONFIG from "../../globalConfig.js";
|
|
|
16
16
|
import addMappedJson from "./markdownGen/addMappedJson.js";
|
|
17
17
|
import genDataTablesPage from "./dataTables/genDataTablesPage.js";
|
|
18
18
|
import { createRequire } from "module";
|
|
19
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Attempts to read local DataTables assets from node_modules (for offline/self-contained reports)
|
|
21
|
+
*
|
|
22
|
+
* @returns An object containing the DataTables JavaScript and CSS, or null if not found
|
|
23
|
+
*/
|
|
20
24
|
const getLocalDataTablesAssets = () => {
|
|
21
25
|
try {
|
|
22
26
|
const require = createRequire(import.meta.url);
|
|
@@ -31,7 +35,11 @@ const getLocalDataTablesAssets = () => {
|
|
|
31
35
|
return { js: null, css: null };
|
|
32
36
|
}
|
|
33
37
|
};
|
|
34
|
-
|
|
38
|
+
/**
|
|
39
|
+
* Attempts to read local jQuery asset
|
|
40
|
+
*
|
|
41
|
+
* @returns The jQuery JavaScript, or null if not found
|
|
42
|
+
*/
|
|
35
43
|
const getLocalJqueryAsset = () => {
|
|
36
44
|
try {
|
|
37
45
|
const require = createRequire(import.meta.url);
|
|
@@ -44,6 +52,17 @@ const getLocalJqueryAsset = () => {
|
|
|
44
52
|
return null;
|
|
45
53
|
}
|
|
46
54
|
};
|
|
55
|
+
/**
|
|
56
|
+
* Generates an HTML report based on the provided markdown and assets.
|
|
57
|
+
*
|
|
58
|
+
* @param analyzeMarkdown - The markdown for the analyze section
|
|
59
|
+
* @param mappedJsonMarkdown - The markdown for the mapped JSON section
|
|
60
|
+
* @param dataTablesHtml - The HTML for the data tables section
|
|
61
|
+
* @param dtAssets - The DataTables assets (JavaScript and CSS)
|
|
62
|
+
* @param jqueryJs - The jQuery JavaScript
|
|
63
|
+
*
|
|
64
|
+
* @returns The generated HTML report as a string
|
|
65
|
+
*/
|
|
47
66
|
const html = (analyzeMarkdown, mappedJsonMarkdown, dataTablesHtml, dtAssets, jqueryJs) => __awaiter(void 0, void 0, void 0, function* () {
|
|
48
67
|
return `<!DOCTYPE html>
|
|
49
68
|
<html>
|
|
@@ -460,6 +479,14 @@ const html = (analyzeMarkdown, mappedJsonMarkdown, dataTablesHtml, dtAssets, jqu
|
|
|
460
479
|
</body>
|
|
461
480
|
</html>`;
|
|
462
481
|
});
|
|
482
|
+
/**
|
|
483
|
+
* Generates an HTML report based on the provided database.
|
|
484
|
+
*
|
|
485
|
+
* @param outputReportFile - The path to the output report file
|
|
486
|
+
* @param db - The database containing the findings and mapped data
|
|
487
|
+
*
|
|
488
|
+
* @returns A promise that resolves when the HTML report is generated
|
|
489
|
+
*/
|
|
463
490
|
const genHtml = (outputReportFile, db) => __awaiter(void 0, void 0, void 0, function* () {
|
|
464
491
|
console.log(chalk.cyan("[i] Generating HTML report..."));
|
|
465
492
|
let analyzeMarkdown = `# JS Recon Report generated at ${new Date().toISOString()}\n\n`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"genHtml.js","sourceRoot":"","sources":["../../../src/report/utility/genHtml.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,IAAI,MAAM,cAAc,CAAC;AAEhC,OAAO,UAAU,MAAM,6BAA6B,CAAC;AACrD,OAAO,MAAM,MAAM,uBAAuB,CAAC;AAC3C,OAAO,aAAa,MAAM,gCAAgC,CAAC;AAC3D,OAAO,iBAAiB,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAQvC
|
|
1
|
+
{"version":3,"file":"genHtml.js","sourceRoot":"","sources":["../../../src/report/utility/genHtml.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import Database from "better-sqlite3";
|
|
11
|
+
/**
|
|
12
|
+
* Creates the mapped table in the database.
|
|
13
|
+
*
|
|
14
|
+
* @param db - The database to create the table in
|
|
15
|
+
*/
|
|
11
16
|
const createMappedTable = (db) => {
|
|
12
17
|
db.prepare(`
|
|
13
18
|
CREATE TABLE IF NOT EXISTS mapped (
|
|
@@ -24,6 +29,11 @@ const createMappedTable = (db) => {
|
|
|
24
29
|
)
|
|
25
30
|
`).run();
|
|
26
31
|
};
|
|
32
|
+
/**
|
|
33
|
+
* Creates the mapped OpenAPI table in the database.
|
|
34
|
+
*
|
|
35
|
+
* @param db - The database to create the table in
|
|
36
|
+
*/
|
|
27
37
|
const createMappedOpenapiTable = (db) => {
|
|
28
38
|
db.prepare(`
|
|
29
39
|
CREATE TABLE IF NOT EXISTS mapped_openapi (
|
|
@@ -37,6 +47,11 @@ const createMappedOpenapiTable = (db) => {
|
|
|
37
47
|
)
|
|
38
48
|
`).run();
|
|
39
49
|
};
|
|
50
|
+
/**
|
|
51
|
+
* Creates the endpoints table in the database.
|
|
52
|
+
*
|
|
53
|
+
* @param db - The database to create the table in
|
|
54
|
+
*/
|
|
40
55
|
const createEndpointsTable = (db) => {
|
|
41
56
|
db.prepare(`
|
|
42
57
|
CREATE TABLE IF NOT EXISTS endpoints (
|
|
@@ -44,6 +59,11 @@ const createEndpointsTable = (db) => {
|
|
|
44
59
|
)
|
|
45
60
|
`).run();
|
|
46
61
|
};
|
|
62
|
+
/**
|
|
63
|
+
* Creates the analysis findings table in the database.
|
|
64
|
+
*
|
|
65
|
+
* @param db - The database to create the table in
|
|
66
|
+
*/
|
|
47
67
|
const createAnalysisFindingsTable = (db) => {
|
|
48
68
|
db.prepare(`
|
|
49
69
|
CREATE TABLE IF NOT EXISTS analysis_findings (
|
|
@@ -59,6 +79,11 @@ const createAnalysisFindingsTable = (db) => {
|
|
|
59
79
|
)
|
|
60
80
|
`).run();
|
|
61
81
|
};
|
|
82
|
+
/**
|
|
83
|
+
* Initializes the report database.
|
|
84
|
+
*
|
|
85
|
+
* @param sqliteDbPath - The path to the SQLite database file
|
|
86
|
+
*/
|
|
62
87
|
const initReportDb = (sqliteDbPath) => __awaiter(void 0, void 0, void 0, function* () {
|
|
63
88
|
const db = new Database(sqliteDbPath);
|
|
64
89
|
createMappedTable(db);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initReportDb.js","sourceRoot":"","sources":["../../../src/report/utility/initReportDb.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,MAAM,iBAAiB,GAAG,CAAC,EAAqB,EAAE,EAAE;IAChD,EAAE,CAAC,OAAO,CACN;;;;;;;;;;;;;KAaH,CACA,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,EAAqB,EAAE,EAAE;IACvD,EAAE,CAAC,OAAO,CACN;;;;;;;;;;KAUH,CACA,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,EAAqB,EAAE,EAAE;IACnD,EAAE,CAAC,OAAO,CACN;;;;KAIH,CACA,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,EAAqB,EAAE,EAAE;IAC1D,EAAE,CAAC,OAAO,CACN;;;;;;;;;;;;KAYH,CACA,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAO,YAAoB,EAAE,EAAE;IAChD,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEtC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACtB,wBAAwB,CAAC,EAAE,CAAC,CAAC;IAC7B,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACzB,2BAA2B,CAAC,EAAE,CAAC,CAAC;IAEhC,EAAE,CAAC,KAAK,EAAE,CAAC;AACf,CAAC,CAAA,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"initReportDb.js","sourceRoot":"","sources":["../../../src/report/utility/initReportDb.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,CAAC,EAAqB,EAAE,EAAE;IAChD,EAAE,CAAC,OAAO,CACN;;;;;;;;;;;;;KAaH,CACA,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,wBAAwB,GAAG,CAAC,EAAqB,EAAE,EAAE;IACvD,EAAE,CAAC,OAAO,CACN;;;;;;;;;;KAUH,CACA,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,CAAC,EAAqB,EAAE,EAAE;IACnD,EAAE,CAAC,OAAO,CACN;;;;KAIH,CACA,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,2BAA2B,GAAG,CAAC,EAAqB,EAAE,EAAE;IAC1D,EAAE,CAAC,OAAO,CACN;;;;;;;;;;;;KAYH,CACA,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,YAAY,GAAG,CAAO,YAAoB,EAAE,EAAE;IAChD,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEtC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACtB,wBAAwB,CAAC,EAAE,CAAC,CAAC;IAC7B,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACzB,2BAA2B,CAAC,EAAE,CAAC,CAAC;IAEhC,EAAE,CAAC,KAAK,EAAE,CAAC;AACf,CAAC,CAAA,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -7,6 +7,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
|
+
/**
|
|
11
|
+
* Adds an analyze section to the markdown.
|
|
12
|
+
*
|
|
13
|
+
* @param markdown - The markdown string to add the analyze section to
|
|
14
|
+
* @param db - The database containing the findings
|
|
15
|
+
*
|
|
16
|
+
* @returns A promise that resolves with the markdown string containing the analyze section
|
|
17
|
+
*/
|
|
10
18
|
const addAnalyze = (markdown, db) => __awaiter(void 0, void 0, void 0, function* () {
|
|
11
19
|
let toReturn = markdown;
|
|
12
20
|
toReturn += `\n## Analyze Results\n`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addAnalyze.js","sourceRoot":"","sources":["../../../../src/report/utility/markdownGen/addAnalyze.ts"],"names":[],"mappings":";;;;;;;;;AAcA,MAAM,UAAU,GAAG,CAAO,QAAgB,EAAE,EAAqB,EAAmB,EAAE;IAClF,IAAI,QAAQ,GAAG,QAAQ,CAAC;IACxB,QAAQ,IAAI,wBAAwB,CAAC;IACrC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC,GAAG,EAAuB,CAAC;IAC1F,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,eAAe,GAAyC,EAAE,CAAC;QACjE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;YAC3C,CAAC;YACD,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;YACrC,QAAQ,IAAI,OAAO,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;YAC9C,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9C,QAAQ,IAAI,QAAQ,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,eAAe,IAAI,CAAC;gBACrE,IAAI,oBAAoB,GAAG,EAAE,CAAC;gBAC9B,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE,CAAC;oBACnC,oBAAoB,GAAG,SAAS,GAAG,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACJ,oBAAoB,GAAG,OAAO,GAAG,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC;gBACvE,CAAC;gBACD,QAAQ,IAAI,GAAG,oBAAoB,IAAI,CAAC;gBACxC,QAAQ,IAAI,kBAAkB,OAAO,CAAC,MAAM,IAAI,CAAC;gBACjD,QAAQ,IAAI,mBAAmB,OAAO,CAAC,QAAQ,IAAI,CAAC;gBACpD,QAAQ,IAAI,kBAAkB,OAAO,CAAC,OAAO,IAAI,CAAC;gBAClD,QAAQ,IAAI,iBAAiB,OAAO,CAAC,UAAU,IAAI,CAAC;gBACpD,QAAQ,IAAI,qBAAqB,OAAO,CAAC,QAAQ,MAAM,CAAC;YAC5D,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAA,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"addAnalyze.js","sourceRoot":"","sources":["../../../../src/report/utility/markdownGen/addAnalyze.ts"],"names":[],"mappings":";;;;;;;;;AAcA;;;;;;;GAOG;AACH,MAAM,UAAU,GAAG,CAAO,QAAgB,EAAE,EAAqB,EAAmB,EAAE;IAClF,IAAI,QAAQ,GAAG,QAAQ,CAAC;IACxB,QAAQ,IAAI,wBAAwB,CAAC;IACrC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC,GAAG,EAAuB,CAAC;IAC1F,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,eAAe,GAAyC,EAAE,CAAC;QACjE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;YAC3C,CAAC;YACD,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;YACrC,QAAQ,IAAI,OAAO,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;YAC9C,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9C,QAAQ,IAAI,QAAQ,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,eAAe,IAAI,CAAC;gBACrE,IAAI,oBAAoB,GAAG,EAAE,CAAC;gBAC9B,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE,CAAC;oBACnC,oBAAoB,GAAG,SAAS,GAAG,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACJ,oBAAoB,GAAG,OAAO,GAAG,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC;gBACvE,CAAC;gBACD,QAAQ,IAAI,GAAG,oBAAoB,IAAI,CAAC;gBACxC,QAAQ,IAAI,kBAAkB,OAAO,CAAC,MAAM,IAAI,CAAC;gBACjD,QAAQ,IAAI,mBAAmB,OAAO,CAAC,QAAQ,IAAI,CAAC;gBACpD,QAAQ,IAAI,kBAAkB,OAAO,CAAC,OAAO,IAAI,CAAC;gBAClD,QAAQ,IAAI,iBAAiB,OAAO,CAAC,UAAU,IAAI,CAAC;gBACpD,QAAQ,IAAI,qBAAqB,OAAO,CAAC,QAAQ,MAAM,CAAC;YAC5D,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAA,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -7,6 +7,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
|
+
/**
|
|
11
|
+
* Adds a mapped JSON section to the markdown.
|
|
12
|
+
*
|
|
13
|
+
* @param markdown - The markdown string to add the mapped JSON section to
|
|
14
|
+
* @param db - The database containing the mapped data
|
|
15
|
+
*
|
|
16
|
+
* @returns A promise that resolves with the markdown string containing the mapped JSON section
|
|
17
|
+
*/
|
|
10
18
|
const addMappedJson = (markdown, db) => __awaiter(void 0, void 0, void 0, function* () {
|
|
11
19
|
let toReturn = markdown;
|
|
12
20
|
const mappedData = db.prepare(`SELECT * FROM mapped`).all();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addMappedJson.js","sourceRoot":"","sources":["../../../../src/report/utility/markdownGen/addMappedJson.ts"],"names":[],"mappings":";;;;;;;;;AAYA,MAAM,aAAa,GAAG,CAAO,QAAgB,EAAE,EAAqB,EAAmB,EAAE;IACrF,IAAI,QAAQ,GAAG,QAAQ,CAAC;IAExB,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,GAAG,EAAkB,CAAC;IAE5E,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC5B,QAAQ,IAAI,MAAM,IAAI,CAAC,EAAE,IAAI,CAAC;QAC9B,QAAQ,IAAI,kBAAkB,IAAI,CAAC,WAAW,IAAI,KAAK,IAAI,CAAC;QAC5D,QAAQ,IAAI,qBAAqB,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC;QAC1D,QAAQ,IAAI,sBAAsB,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC;QAC3D,QAAQ,IAAI,cAAc,IAAI,CAAC,OAAO,IAAI,KAAK,IAAI,CAAC;QACpD,QAAQ,IAAI,cAAc,IAAI,CAAC,OAAO,IAAI,KAAK,IAAI,CAAC;QACpD,QAAQ,IAAI,WAAW,IAAI,CAAC,IAAI,MAAM,CAAC;IAC3C,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAA,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"addMappedJson.js","sourceRoot":"","sources":["../../../../src/report/utility/markdownGen/addMappedJson.ts"],"names":[],"mappings":";;;;;;;;;AAYA;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,CAAO,QAAgB,EAAE,EAAqB,EAAmB,EAAE;IACrF,IAAI,QAAQ,GAAG,QAAQ,CAAC;IAExB,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,GAAG,EAAkB,CAAC;IAE5E,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC5B,QAAQ,IAAI,MAAM,IAAI,CAAC,EAAE,IAAI,CAAC;QAC9B,QAAQ,IAAI,kBAAkB,IAAI,CAAC,WAAW,IAAI,KAAK,IAAI,CAAC;QAC5D,QAAQ,IAAI,qBAAqB,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC;QAC1D,QAAQ,IAAI,sBAAsB,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC;QAC3D,QAAQ,IAAI,cAAc,IAAI,CAAC,OAAO,IAAI,KAAK,IAAI,CAAC;QACpD,QAAQ,IAAI,cAAc,IAAI,CAAC,OAAO,IAAI,KAAK,IAAI,CAAC;QACpD,QAAQ,IAAI,WAAW,IAAI,CAAC,IAAI,MAAM,CAAC;IAC3C,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAA,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -8,6 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import chalk from "chalk";
|
|
11
|
+
/**
|
|
12
|
+
* Populates the analysis findings table in the database with the given findings.
|
|
13
|
+
*
|
|
14
|
+
* @param db - The database to populate
|
|
15
|
+
* @param findings - The findings to populate the database with
|
|
16
|
+
*
|
|
17
|
+
* @returns A promise that resolves when the database is populated
|
|
18
|
+
*/
|
|
11
19
|
export const populateAnalysisFindings = (db, findings) => __awaiter(void 0, void 0, void 0, function* () {
|
|
12
20
|
// Clear the table before inserting new data
|
|
13
21
|
db.prepare(`DELETE FROM analysis_findings`).run();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateAnalysisFindings.js","sourceRoot":"","sources":["../../../../src/report/utility/populateDb/populateAnalysisFindings.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAO,EAAqB,EAAE,QAAwB,EAAE,EAAE;IAC9F,4CAA4C;IAC5C,EAAE,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,GAAG,EAAE,CAAC;IAElD,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACrB,0KAA0K,CAC7K,CAAC;IAEF,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,EAAE;QACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,CACN,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,CACvB,CAAC;QACN,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAC;AACrF,CAAC,CAAA,CAAC"}
|
|
1
|
+
{"version":3,"file":"populateAnalysisFindings.js","sourceRoot":"","sources":["../../../../src/report/utility/populateDb/populateAnalysisFindings.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAO,EAAqB,EAAE,QAAwB,EAAE,EAAE;IAC9F,4CAA4C;IAC5C,EAAE,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,GAAG,EAAE,CAAC;IAElD,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACrB,0KAA0K,CAC7K,CAAC;IAEF,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,EAAE;QACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,CACN,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,CACvB,CAAC;QACN,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAC;AACrF,CAAC,CAAA,CAAC"}
|
|
@@ -8,6 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import chalk from "chalk";
|
|
11
|
+
/**
|
|
12
|
+
* Populates the endpoints table in the database with the given endpoints.
|
|
13
|
+
*
|
|
14
|
+
* @param db - The database to populate
|
|
15
|
+
* @param endpoints - The endpoints to populate the database with
|
|
16
|
+
*
|
|
17
|
+
* @returns A promise that resolves when the database is populated
|
|
18
|
+
*/
|
|
11
19
|
const populateEndpoints = (db, endpoints) => __awaiter(void 0, void 0, void 0, function* () {
|
|
12
20
|
const insert = db.prepare("INSERT OR IGNORE INTO endpoints (url) VALUES (?)");
|
|
13
21
|
// clear the endpoints table
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateEndpoints.js","sourceRoot":"","sources":["../../../../src/report/utility/populateDb/populateEndpoints.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,iBAAiB,GAAG,CAAO,EAAqB,EAAE,SAAc,EAAE,EAAE;IACtE,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC;IAE9E,4BAA4B;IAC5B,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,GAAG,EAAE,CAAC;IAE1C,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;QAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,mDAAmD;YACnD,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,8DAA8D;gBAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;oBACtD,OAAO,CAAC,KAAK,CAAC,mBAAmB,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;gBACxD,CAAC;YACL,CAAC;YAED,mCAAmC;YACnC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACnC,CAAC;QACL,CAAC;IACL,CAAC,CAAC;IAEF,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAChB,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAC9B,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAA,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"populateEndpoints.js","sourceRoot":"","sources":["../../../../src/report/utility/populateDb/populateEndpoints.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;;;;;GAOG;AACH,MAAM,iBAAiB,GAAG,CAAO,EAAqB,EAAE,SAAc,EAAE,EAAE;IACtE,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC;IAE9E,4BAA4B;IAC5B,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,GAAG,EAAE,CAAC;IAE1C,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;QAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,mDAAmD;YACnD,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,8DAA8D;gBAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;oBACtD,OAAO,CAAC,KAAK,CAAC,mBAAmB,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;gBACxD,CAAC;YACL,CAAC;YAED,mCAAmC;YACnC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACnC,CAAC;QACL,CAAC;IACL,CAAC,CAAC;IAEF,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAChB,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAC9B,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAA,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -8,6 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import chalk from "chalk";
|
|
11
|
+
/**
|
|
12
|
+
* Populates the mapped JSON table in the database with the given chunks.
|
|
13
|
+
*
|
|
14
|
+
* @param db - The database to populate
|
|
15
|
+
* @param chunks - The chunks to populate the database with
|
|
16
|
+
*
|
|
17
|
+
* @returns A promise that resolves when the database is populated
|
|
18
|
+
*/
|
|
11
19
|
export const populateMappedJson = (db, chunks) => __awaiter(void 0, void 0, void 0, function* () {
|
|
12
20
|
// Clear the table before inserting new data
|
|
13
21
|
db.prepare(`DELETE FROM mapped`).run();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateMappedJson.js","sourceRoot":"","sources":["../../../../src/report/utility/populateDb/populateMappedJson.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAO,EAAqB,EAAE,MAAc,EAAE,EAAE;IAC9E,4CAA4C;IAC5C,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,GAAG,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACrB,6JAA6J,CAChK,CAAC;IAEF,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,EAAE;QACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,CACN,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC7B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC1B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC9B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAC5B,IAAI,CAAC,IAAI,CACZ,CAAC;QACN,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC,CAAC;AAC/E,CAAC,CAAA,CAAC"}
|
|
1
|
+
{"version":3,"file":"populateMappedJson.js","sourceRoot":"","sources":["../../../../src/report/utility/populateDb/populateMappedJson.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAO,EAAqB,EAAE,MAAc,EAAE,EAAE;IAC9E,4CAA4C;IAC5C,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,GAAG,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACrB,6JAA6J,CAChK,CAAC;IAEF,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,EAAE;QACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,CACN,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC7B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC1B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC9B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAC5B,IAAI,CAAC,IAAI,CACZ,CAAC;QACN,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC,CAAC;AAC/E,CAAC,CAAA,CAAC"}
|
|
@@ -8,6 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import chalk from "chalk";
|
|
11
|
+
/**
|
|
12
|
+
* Populates the mapped OpenAPI table in the database with the given OpenAPI data.
|
|
13
|
+
*
|
|
14
|
+
* @param db - The database to populate
|
|
15
|
+
* @param openapi - The OpenAPI data to populate the database with
|
|
16
|
+
*
|
|
17
|
+
* @returns A promise that resolves when the database is populated
|
|
18
|
+
*/
|
|
11
19
|
const populateMappedOpenapi = (db, openapi) => __awaiter(void 0, void 0, void 0, function* () {
|
|
12
20
|
const insert = db.prepare(`INSERT OR REPLACE INTO mapped_openapi (path, method, summary, parameters, requestBody, tags)
|
|
13
21
|
VALUES (@path, @method, @summary, @parameters, @requestBody, @tags)`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateMappedOpenapi.js","sourceRoot":"","sources":["../../../../src/report/utility/populateDb/populateMappedOpenapi.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,qBAAqB,GAAG,CAAO,EAAqB,EAAE,OAAY,EAAE,EAAE;IACxE,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACrB;6EACqE,CACxE,CAAC;IAEF,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAChB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO;QACX,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,CAAC;oBACD,MAAM,CAAC,GAAG,CAAC;wBACP,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI;wBAChC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;wBAC1E,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI;wBAC7E,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;qBAC3D,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,iCAAiC,IAAI,KAAK,MAAM,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC9E,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC,CAAC;AAClF,CAAC,CAAA,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"populateMappedOpenapi.js","sourceRoot":"","sources":["../../../../src/report/utility/populateDb/populateMappedOpenapi.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;;;;;GAOG;AACH,MAAM,qBAAqB,GAAG,CAAO,EAAqB,EAAE,OAAY,EAAE,EAAE;IACxE,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACrB;6EACqE,CACxE,CAAC;IAEF,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAChB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO;QACX,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,CAAC;oBACD,MAAM,CAAC,GAAG,CAAC;wBACP,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI;wBAChC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;wBAC1E,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI;wBAC7E,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;qBAC3D,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,iCAAiC,IAAI,KAAK,MAAM,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC9E,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC,CAAC;AAClF,CAAC,CAAA,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
|
package/build/run/index.js
CHANGED
|
@@ -19,6 +19,16 @@ import analyze from "../analyze/index.js";
|
|
|
19
19
|
import report from "../report/index.js";
|
|
20
20
|
import { clearJsUrls, clearJsonUrls, getJsUrls } from "../lazyLoad/globals.js";
|
|
21
21
|
import path from "path";
|
|
22
|
+
/**
|
|
23
|
+
* Determines the directory for a Content Delivery Network (CDN) if used by the target.
|
|
24
|
+
*
|
|
25
|
+
* Checks if any of the downloaded JavaScript files are from a different host, which
|
|
26
|
+
* indicates a CDN is in use. This is important for modules that rely on code analysis.
|
|
27
|
+
*
|
|
28
|
+
* @param host - The host of the target URL
|
|
29
|
+
* @param outputDir - The base output directory
|
|
30
|
+
* @returns Promise that resolves to the path of the CDN directory or undefined if no CDN is detected
|
|
31
|
+
*/
|
|
22
32
|
const getCdnDir = (host, outputDir) => __awaiter(void 0, void 0, void 0, function* () {
|
|
23
33
|
// get the JS URLs
|
|
24
34
|
let cdnDir;
|
|
@@ -34,6 +44,24 @@ const getCdnDir = (host, outputDir) => __awaiter(void 0, void 0, void 0, functio
|
|
|
34
44
|
}
|
|
35
45
|
return cdnDir;
|
|
36
46
|
});
|
|
47
|
+
/**
|
|
48
|
+
* Processes a single URL through the entire js-recon analysis pipeline.
|
|
49
|
+
*
|
|
50
|
+
* This function orchestrates the execution of all modules in sequence:
|
|
51
|
+
* 1. Lazyload - Downloads JavaScript files
|
|
52
|
+
* 2. Strings - Extracts endpoints and secrets
|
|
53
|
+
* 3. Map - Analyzes functions and generates mappings
|
|
54
|
+
* 4. Endpoints - Extracts client-side endpoints
|
|
55
|
+
* 5. Analyze - Runs security analysis rules
|
|
56
|
+
* 6. Report - Generates final analysis report
|
|
57
|
+
*
|
|
58
|
+
* @param url - The URL to analyze
|
|
59
|
+
* @param outputDir - The directory for downloaded content (e.g., JS files)
|
|
60
|
+
* @param workingDir - The directory for storing analysis results and reports
|
|
61
|
+
* @param cmd - The command-line options object
|
|
62
|
+
* @param isBatch - Whether this is part of a batch process, affecting file path resolution
|
|
63
|
+
* @returns Promise that resolves when the analysis for the URL is complete
|
|
64
|
+
*/
|
|
37
65
|
const processUrl = (url, outputDir, workingDir, cmd, isBatch) => __awaiter(void 0, void 0, void 0, function* () {
|
|
38
66
|
const targetHost = new URL(url).host.replace(":", "_");
|
|
39
67
|
console.log(chalk.bgGreenBright(`[+] Starting analysis for ${url}...`));
|
|
@@ -42,7 +70,7 @@ const processUrl = (url, outputDir, workingDir, cmd, isBatch) => __awaiter(void
|
|
|
42
70
|
clearJsonUrls();
|
|
43
71
|
}
|
|
44
72
|
console.log(chalk.bgCyan("[1/8] Running lazyload to download JavaScript files..."));
|
|
45
|
-
yield lazyLoad(url, outputDir, cmd.strictScope, cmd.scope.split(","), cmd.threads, false, "", cmd.insecure);
|
|
73
|
+
yield lazyLoad(url, outputDir, cmd.strictScope, cmd.scope.split(","), cmd.threads, false, "", cmd.insecure, false);
|
|
46
74
|
console.log(chalk.bgGreen("[+] Lazyload complete."));
|
|
47
75
|
if (globalsUtil.getTech() === "") {
|
|
48
76
|
console.log(chalk.bgRed("[!] Technology not detected. Quitting."));
|
|
@@ -70,7 +98,7 @@ const processUrl = (url, outputDir, workingDir, cmd, isBatch) => __awaiter(void
|
|
|
70
98
|
yield strings(outputDir, stringsFile, true, extractedUrlsFile, false, false, false);
|
|
71
99
|
console.log(chalk.bgGreen("[+] Strings complete."));
|
|
72
100
|
console.log(chalk.bgCyan("[3/8] Running lazyload with subsequent requests to download JavaScript files..."));
|
|
73
|
-
yield lazyLoad(url, outputDir, cmd.strictScope, cmd.scope.split(","), cmd.threads, true, `${extractedUrlsFile}.json`, cmd.insecure);
|
|
101
|
+
yield lazyLoad(url, outputDir, cmd.strictScope, cmd.scope.split(","), cmd.threads, true, `${extractedUrlsFile}.json`, cmd.insecure, true);
|
|
74
102
|
console.log(chalk.bgGreen("[+] Lazyload with subsequent requests complete."));
|
|
75
103
|
console.log(chalk.bgCyan("[4/8] Running strings again to extract endpoints..."));
|
|
76
104
|
yield strings(outputDir, stringsFile, true, extractedUrlsFile, cmd.secrets, true, true);
|
|
@@ -99,6 +127,16 @@ const processUrl = (url, outputDir, workingDir, cmd, isBatch) => __awaiter(void
|
|
|
99
127
|
console.log(chalk.bgGreen("[+] Report complete."));
|
|
100
128
|
console.log(chalk.bgGreenBright(`[+] Analysis complete for ${url}.`));
|
|
101
129
|
});
|
|
130
|
+
/**
|
|
131
|
+
* Main handler for the 'run' command that executes the complete js-recon analysis pipeline.
|
|
132
|
+
*
|
|
133
|
+
* Sets up global configuration and determines whether to process a single URL or
|
|
134
|
+
* a file containing multiple URLs. For batch processing, creates organized directory
|
|
135
|
+
* structure and processes each URL sequentially.
|
|
136
|
+
*
|
|
137
|
+
* @param cmd - The command-line options object from commander.js
|
|
138
|
+
* @returns Promise that resolves when all URL processing is complete
|
|
139
|
+
*/
|
|
102
140
|
export default (cmd) => __awaiter(void 0, void 0, void 0, function* () {
|
|
103
141
|
globalsUtil.setApiGatewayConfigFile(cmd.apiGatewayConfig);
|
|
104
142
|
globalsUtil.setUseApiGateway(cmd.apiGateway);
|
package/build/run/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/run/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAC9C,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,GAAG,MAAM,iBAAiB,CAAC;AAClC,OAAO,KAAK,WAAW,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,SAAS,GAAG,CAAO,IAAY,EAAE,SAAiB,EAA+B,EAAE;IACrF,kBAAkB;IAClB,IAAI,MAA0B,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,EAAE,CAAC;QAC5B,IAAI,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACtC,uCAAuC;YACvC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACnB,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBACvC,MAAM;YACV,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC,CAAA,CAAC;AAEF,MAAM,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/run/index.ts"],"names":[],"mappings":"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"}
|
package/build/strings/index.js
CHANGED
|
@@ -16,12 +16,11 @@ import secrets from "./secrets.js";
|
|
|
16
16
|
import permutate from "./permutate.js";
|
|
17
17
|
import openapi from "./openapi.js";
|
|
18
18
|
/**
|
|
19
|
-
* Recursively extracts
|
|
20
|
-
*
|
|
21
|
-
* @
|
|
22
|
-
* @returns {string[]} - An array of extracted strings.
|
|
19
|
+
* Recursively extracts all string literals from a given AST node.
|
|
20
|
+
* @param {object} node - The AST node to extract strings from
|
|
21
|
+
* @returns {string[]} An array of extracted string literals
|
|
23
22
|
*/
|
|
24
|
-
|
|
23
|
+
const extractStrings = (node) => {
|
|
25
24
|
const strings = new Set();
|
|
26
25
|
const seen = new WeakSet();
|
|
27
26
|
function recurse(currentNode) {
|
|
@@ -62,7 +61,7 @@ function extractStrings(node) {
|
|
|
62
61
|
}
|
|
63
62
|
recurse(node);
|
|
64
63
|
return Array.from(strings);
|
|
65
|
-
}
|
|
64
|
+
};
|
|
66
65
|
/**
|
|
67
66
|
* Extracts all string literals from all .js files in a given directory and its
|
|
68
67
|
* subdirectories and writes them to a JSON file.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/strings/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,eAAe,CAAC;AACnC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/strings/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,eAAe,CAAC;AACnC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,IAAY,EAAY,EAAE;IAC9C,MAAM,OAAO,GAAgB,IAAI,GAAG,EAAE,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;IAE3B,SAAS,OAAO,CAAC,WAAgB;QAC7B,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3E,OAAO;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAEtB,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7C,OAAO;QACX,CAAC;QAED,IAAI,WAAW,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;aAAM,IAAI,WAAW,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YAChD,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC7B,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAChC,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACrC,qEAAqE;YACrE,IACI;gBACI,KAAK;gBACL,OAAO;gBACP,KAAK;gBACL,OAAO;gBACP,KAAK;gBACL,UAAU;gBACV,iBAAiB;gBACjB,kBAAkB;gBAClB,eAAe;aAClB,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAEf,OAAO;YACX,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,OAAO,GAAG,CACZ,SAAiB,EACjB,WAAmB,EACnB,YAAqB,EACrB,kBAA0B,EAC1B,YAAqB,EACrB,gBAAyB,EACzB,cAAuB,EACL,EAAE;IACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;IAExD,gCAAgC;IAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,SAAS,YAAY,CAAC,CAAC,CAAC;IAE/D,qDAAqD;IACrD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE;QACpC,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,MAAM;KACnB,CAAC,CAAC;IAEH,0BAA0B;IAC1B,IAAI,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAE3D,uCAAuC;IACvC,kFAAkF;IAElF,oBAAoB;IACpB,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YACxC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,aAAa,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC;IAEtE,oBAAoB;IACpB,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC1C,wCAAwC;YACxC,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACvB,2EAA2E;gBAC3E,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBAChC,qBAAqB;oBACrB,IAAI,MAAM,CAAC;oBACX,IAAI,CAAC;wBACD,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC9C,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,SAAS;oBACb,CAAC;oBAED,kCAAkC;oBAClC,IAAI,GAAG,CAAC;oBACR,IAAI,CAAC;wBACD,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;4BACvB,UAAU,EAAE,aAAa;4BACzB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;4BAC9B,aAAa,EAAE,IAAI;yBACtB,CAAC,CAAC;oBACP,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,SAAS;oBACb,CAAC;oBAED,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;oBACtC,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;gBAC/B,CAAC;YACL,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAChC,CAAC;aAAM,CAAC;YACJ,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAEnD,qCAAqC;YACrC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE;gBAClC,UAAU,EAAE,aAAa;gBACzB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;gBAC9B,aAAa,EAAE,IAAI;aACtB,CAAC,CAAC;YAEH,WAAW,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;IACL,CAAC;IAED,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC1C,aAAa,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAC9C,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,aAAa,UAAU,CAAC,CAAC,CAAC;IAElE,uBAAuB;IACvB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;QACjE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,IAAI;KACpB,CAAC,CAAC;IACH,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,4BAA4B,WAAW,EAAE,CAAC,CAAC,CAAC;IAEpE,yEAAyE;IACzE,IAAI,CAAC,gBAAgB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC,CAAC;QAC7E,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,mDAAmD;IACnD,IAAI,YAAY,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,CAAC;QAEtE,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,KAAK,GAAG,EAAE,CAAC;QAEf,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1C,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,IAAI,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,EAAE,CAAC;oBACtD,wBAAwB;oBACxB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACtB,CAAC;gBACD,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzB,sBAAsB;oBACtB,2EAA2E;oBAC3E,IAAI,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC9D,kBAAkB;oBACtB,CAAC;yBAAM,CAAC;wBACJ,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACvB,CAAC;gBACL,CAAC;gBACD,IAAI,MAAM,CAAC,KAAK,CAAC,oCAAoC,CAAC,EAAE,CAAC;oBACrD,wBAAwB;oBACxB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;gBACD,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;oBACtD,qDAAqD;oBACrD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;YACL,CAAC;QACL,CAAC;QAED,uBAAuB;QACvB,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1B,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAE5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,MAAM,aAAa,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC;QAEnF,uBAAuB;QACvB,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE;YAC1E,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,EAAE;YACd,WAAW,EAAE,IAAI;SACpB,CAAC,CAAC;QACH,EAAE,CAAC,aAAa,CAAC,GAAG,kBAAkB,OAAO,EAAE,cAAc,CAAC,CAAC;QAE/D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,kBAAkB,OAAO,CAAC,CAAC,CAAC;QAErF,IAAI,gBAAgB,EAAE,CAAC;YACnB,MAAM,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,cAAc,EAAE,CAAC;YACjB,MAAM,OAAO,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAEpD,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;YAChD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;oBACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,WAAW,CAAC,IAAI,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC9C,aAAa,EAAE,CAAC;gBACpB,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,aAAa,UAAU,CAAC,CAAC,CAAC;QACnE,CAAC;IACL,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
package/build/strings/openapi.js
CHANGED
|
@@ -9,6 +9,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import chalk from "chalk";
|
|
11
11
|
import { writeFile } from "fs/promises";
|
|
12
|
+
/**
|
|
13
|
+
* Generates an OpenAPI v3 file based on the provided paths.
|
|
14
|
+
*
|
|
15
|
+
* @param {string[]} paths - Array of paths to include in the OpenAPI file
|
|
16
|
+
* @param {string} output_file - Base name of the output file (without extension)
|
|
17
|
+
*
|
|
18
|
+
* @returns {Promise<void>} - Promise that resolves when the OpenAPI file is saved
|
|
19
|
+
*/
|
|
12
20
|
const openapi = (paths, output_file) => __awaiter(void 0, void 0, void 0, function* () {
|
|
13
21
|
console.log(chalk.cyan("[i] Generating OpenAPI v3 file"));
|
|
14
22
|
const openapiData = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/strings/openapi.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,OAAO,GAAG,CAAO,KAAK,EAAE,WAAW,EAAE,EAAE;IACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAE1D,MAAM,WAAW,GAAG;QAChB,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE;YACF,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,uDAAuD;YACpE,OAAO,EAAE,OAAO;SACnB;QACD,OAAO,EAAE;YACL;gBACI,GAAG,EAAE,aAAa;gBAClB,WAAW,EAAE,sBAAsB;aACtC;SACJ;QACD,KAAK,EAAE,EAAE;KACZ,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACpB,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACpC,CAAC;QACD,6CAA6C;QAC7C,8BAA8B;QAC9B,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,GAAG;YAC7B,OAAO,EAAE,wBAAwB,OAAO,EAAE;YAC1C,WAAW,EAAE,6BAA6B,OAAO,GAAG;YACpD,SAAS,EAAE;gBACP,GAAG,EAAE;oBACD,WAAW,EAAE,qDAAqD;iBACrE;aACJ;SACJ,CAAC;IACN,CAAC;IAED,IAAI,CAAC;QACD,MAAM,SAAS,CAAC,GAAG,WAAW,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,WAAW,eAAe,CAAC,CAAC,CAAC;IAC1F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mCAAmC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/strings/openapi.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;;;;;;GAOG;AACH,MAAM,OAAO,GAAG,CAAO,KAAK,EAAE,WAAW,EAAE,EAAE;IACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAE1D,MAAM,WAAW,GAAG;QAChB,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE;YACF,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,uDAAuD;YACpE,OAAO,EAAE,OAAO;SACnB;QACD,OAAO,EAAE;YACL;gBACI,GAAG,EAAE,aAAa;gBAClB,WAAW,EAAE,sBAAsB;aACtC;SACJ;QACD,KAAK,EAAE,EAAE;KACZ,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACpB,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACpC,CAAC;QACD,6CAA6C;QAC7C,8BAA8B;QAC9B,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,GAAG;YAC7B,OAAO,EAAE,wBAAwB,OAAO,EAAE;YAC1C,WAAW,EAAE,6BAA6B,OAAO,GAAG;YACpD,SAAS,EAAE;gBACP,GAAG,EAAE;oBACD,WAAW,EAAE,qDAAqD;iBACrE;aACJ;SACJ,CAAC;IACN,CAAC;IAED,IAAI,CAAC;QACD,MAAM,SAAS,CAAC,GAAG,WAAW,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,WAAW,eAAe,CAAC,CAAC,CAAC;IAC1F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mCAAmC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -9,6 +9,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import chalk from "chalk";
|
|
11
11
|
import fs from "fs";
|
|
12
|
+
/**
|
|
13
|
+
* Permute URLs and paths, and write the results to a .txt file.
|
|
14
|
+
* @param {string[]} urls - The list of URLs to permute
|
|
15
|
+
* @param {string[]} paths - The list of paths to permute
|
|
16
|
+
* @param {string} output - The output file path
|
|
17
|
+
* @returns {Promise<void>} - A promise that resolves when the permutated URLs and paths are written to the output file
|
|
18
|
+
*/
|
|
12
19
|
const permutate = (urls, paths, output) => __awaiter(void 0, void 0, void 0, function* () {
|
|
13
20
|
console.log(chalk.cyan("[i] Permutating URLs and paths"));
|
|
14
21
|
let permutedUrls = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permutate.js","sourceRoot":"","sources":["../../src/strings/permutate.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,SAAS,GAAG,CAAO,IAAc,EAAE,KAAe,EAAE,MAAc,EAAiB,EAAE;IACvF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAE1D,IAAI,YAAY,GAAG,EAAE,CAAC;IAEtB,wBAAwB;IACxB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,qDAAqD;QACrD,IAAI,CAAC;YACD,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,SAAS;QACb,CAAC;QAED,mDAAmD;QACnD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QAEpC,uBAAuB;QACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,yDAAyD;YACzD,YAAY,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;QACnD,CAAC;IACL,CAAC;IAED,2BAA2B;IAC3B,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAE3B,kDAAkD;IAClD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;QAAC,WAAM,CAAC,CAAA,CAAC;IACd,CAAC;IAED,cAAc;IACd,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;IAE1C,uBAAuB;IACvB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC;QACD,EAAE,CAAC,aAAa,CAAC,GAAG,MAAM,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gCAAgC,MAAM,MAAM,CAAC,CAAC,CAAC;IAC3E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,MAAM,SAAS,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACnF,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"permutate.js","sourceRoot":"","sources":["../../src/strings/permutate.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB;;;;;;GAMG;AACH,MAAM,SAAS,GAAG,CAAO,IAAc,EAAE,KAAe,EAAE,MAAc,EAAiB,EAAE;IACvF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAE1D,IAAI,YAAY,GAAG,EAAE,CAAC;IAEtB,wBAAwB;IACxB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,qDAAqD;QACrD,IAAI,CAAC;YACD,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,SAAS;QACb,CAAC;QAED,mDAAmD;QACnD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QAEpC,uBAAuB;QACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,yDAAyD;YACzD,YAAY,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;QACnD,CAAC;IACL,CAAC;IAED,2BAA2B;IAC3B,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAE3B,kDAAkD;IAClD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;QAAC,WAAM,CAAC,CAAA,CAAC;IACd,CAAC;IAED,cAAc;IACd,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;IAE1C,uBAAuB;IACvB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC;QACD,EAAE,CAAC,aAAa,CAAC,GAAG,MAAM,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gCAAgC,MAAM,MAAM,CAAC,CAAC,CAAC;IAC3E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,MAAM,SAAS,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACnF,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
package/build/strings/secrets.js
CHANGED
|
@@ -71,6 +71,19 @@ const secret_patterns = {
|
|
|
71
71
|
"LinkedIn Secret Key": "(?:[Ll]inked[Ii]n)(?:.{0,20})?['\"][0-9a-zA-Z]{16}['\"]",
|
|
72
72
|
"MD5 Hash": "[a-f0-9]{32}",
|
|
73
73
|
};
|
|
74
|
+
/**
|
|
75
|
+
* Scans source code for potential secrets and sensitive information using regex patterns.
|
|
76
|
+
*
|
|
77
|
+
* This function searches through source code to identify various types of secrets including:
|
|
78
|
+
* - API keys (AWS, Google, Facebook, etc.)
|
|
79
|
+
* - OAuth tokens and access tokens
|
|
80
|
+
* - Private keys and certificates
|
|
81
|
+
* - Database credentials and connection strings
|
|
82
|
+
* - Authentication tokens and passwords
|
|
83
|
+
*
|
|
84
|
+
* @param source - The source code string to scan for secrets
|
|
85
|
+
* @returns Promise that resolves to an array of found secrets with their names and values
|
|
86
|
+
*/
|
|
74
87
|
const secrets = (source) => __awaiter(void 0, void 0, void 0, function* () {
|
|
75
88
|
const foundSecrets = [];
|
|
76
89
|
for (const [secretName, pattern] of Object.entries(secret_patterns)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../src/strings/secrets.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../src/strings/secrets.ts"],"names":[],"mappings":"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"}
|