dotenv-diff 2.2.6 → 2.2.8
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/README.md +11 -0
- package/dist/src/cli/run.d.ts.map +1 -1
- package/dist/src/cli/run.js +133 -102
- package/dist/src/cli/run.js.map +1 -1
- package/dist/src/commands/compare.d.ts +2 -20
- package/dist/src/commands/compare.d.ts.map +1 -1
- package/dist/src/commands/compare.js +107 -173
- package/dist/src/commands/compare.js.map +1 -1
- package/dist/src/commands/scanUsage.d.ts.map +1 -1
- package/dist/src/commands/scanUsage.js +61 -182
- package/dist/src/commands/scanUsage.js.map +1 -1
- package/dist/src/config/loadConfig.d.ts +2 -0
- package/dist/src/config/loadConfig.d.ts.map +1 -0
- package/dist/src/config/options.d.ts.map +1 -1
- package/dist/src/config/options.js +42 -32
- package/dist/src/config/options.js.map +1 -1
- package/dist/src/config/types.d.ts +58 -0
- package/dist/src/config/types.d.ts.map +1 -1
- package/dist/src/core/fixEnv.d.ts +23 -15
- package/dist/src/core/fixEnv.d.ts.map +1 -1
- package/dist/src/core/fixEnv.js +70 -11
- package/dist/src/core/fixEnv.js.map +1 -1
- package/dist/src/core/helpers/isAllOk.d.ts +8 -0
- package/dist/src/core/helpers/isAllOk.d.ts.map +1 -0
- package/dist/src/core/helpers/isAllOk.js +15 -0
- package/dist/src/core/helpers/isAllOk.js.map +1 -0
- package/dist/src/core/helpers/updateTotals.d.ts +20 -0
- package/dist/src/core/helpers/updateTotals.d.ts.map +1 -0
- package/dist/src/core/helpers/updateTotals.js +37 -0
- package/dist/src/core/helpers/updateTotals.js.map +1 -0
- package/dist/src/core/processComparisonFile.d.ts +36 -0
- package/dist/src/core/processComparisonFile.d.ts.map +1 -0
- package/dist/src/core/processComparisonFile.js +124 -0
- package/dist/src/core/processComparisonFile.js.map +1 -0
- package/dist/src/core/secretDetectors.d.ts.map +1 -1
- package/dist/src/core/secretDetectors.js +13 -0
- package/dist/src/core/secretDetectors.js.map +1 -1
- package/dist/src/services/ensureFilesOrPrompt.d.ts +19 -0
- package/dist/src/services/ensureFilesOrPrompt.d.ts.map +1 -0
- package/dist/src/services/ensureFilesOrPrompt.js +73 -0
- package/dist/src/services/ensureFilesOrPrompt.js.map +1 -0
- package/dist/src/services/git.d.ts +9 -0
- package/dist/src/services/git.d.ts.map +1 -1
- package/dist/src/services/git.js +46 -3
- package/dist/src/services/git.js.map +1 -1
- package/dist/src/services/scanOutputToConsole.d.ts +6 -1
- package/dist/src/services/scanOutputToConsole.d.ts.map +1 -1
- package/dist/src/services/scanOutputToConsole.js +71 -112
- package/dist/src/services/scanOutputToConsole.js.map +1 -1
- package/dist/src/ui/compare/printAutoFix.d.ts +16 -0
- package/dist/src/ui/compare/printAutoFix.d.ts.map +1 -0
- package/dist/src/ui/compare/printAutoFix.js +34 -0
- package/dist/src/ui/compare/printAutoFix.js.map +1 -0
- package/dist/src/ui/compare/printAutoFixApplied.d.ts +7 -0
- package/dist/src/ui/compare/printAutoFixApplied.d.ts.map +1 -0
- package/dist/src/ui/compare/printAutoFixApplied.js +22 -0
- package/dist/src/ui/compare/printAutoFixApplied.js.map +1 -0
- package/dist/src/ui/compare/printDuplicates.d.ts +17 -0
- package/dist/src/ui/compare/printDuplicates.d.ts.map +1 -0
- package/dist/src/ui/compare/printDuplicates.js +25 -0
- package/dist/src/ui/compare/printDuplicates.js.map +1 -0
- package/dist/src/ui/compare/printErrorNotFound.d.ts +9 -0
- package/dist/src/ui/compare/printErrorNotFound.d.ts.map +1 -0
- package/dist/src/ui/compare/printErrorNotFound.js +18 -0
- package/dist/src/ui/compare/printErrorNotFound.js.map +1 -0
- package/dist/src/ui/compare/printFixTips.d.ts +11 -0
- package/dist/src/ui/compare/printFixTips.d.ts.map +1 -0
- package/dist/src/ui/compare/printFixTips.js +46 -0
- package/dist/src/ui/compare/printFixTips.js.map +1 -0
- package/dist/src/ui/compare/printHeader.d.ts +10 -0
- package/dist/src/ui/compare/printHeader.d.ts.map +1 -0
- package/dist/src/ui/compare/printHeader.js +20 -0
- package/dist/src/ui/compare/printHeader.js.map +1 -0
- package/dist/src/ui/compare/printIssues.d.ts +9 -0
- package/dist/src/ui/compare/printIssues.d.ts.map +1 -0
- package/dist/src/ui/compare/printIssues.js +34 -0
- package/dist/src/ui/compare/printIssues.js.map +1 -0
- package/dist/src/ui/compare/printPrompt.d.ts +11 -0
- package/dist/src/ui/compare/printPrompt.d.ts.map +1 -0
- package/dist/src/ui/compare/printPrompt.js +24 -0
- package/dist/src/ui/compare/printPrompt.js.map +1 -0
- package/dist/src/ui/compare/printStats.d.ts +19 -0
- package/dist/src/ui/compare/printStats.d.ts.map +1 -0
- package/dist/src/ui/compare/printStats.js +30 -0
- package/dist/src/ui/compare/printStats.js.map +1 -0
- package/dist/src/ui/compare/printSuccess.d.ts +11 -0
- package/dist/src/ui/compare/printSuccess.d.ts.map +1 -0
- package/dist/src/ui/compare/printSuccess.js +27 -0
- package/dist/src/ui/compare/printSuccess.js.map +1 -0
- package/dist/src/ui/scan/printComparisonError.d.ts +11 -0
- package/dist/src/ui/scan/printComparisonError.d.ts.map +1 -0
- package/dist/src/ui/scan/printComparisonError.js +20 -0
- package/dist/src/ui/scan/printComparisonError.js.map +1 -0
- package/dist/src/ui/scan/printHeader.d.ts +7 -0
- package/dist/src/ui/scan/printHeader.d.ts.map +1 -0
- package/dist/src/ui/scan/printHeader.js +16 -0
- package/dist/src/ui/scan/printHeader.js.map +1 -0
- package/dist/src/ui/scan/printMissing.d.ts +13 -0
- package/dist/src/ui/scan/printMissing.d.ts.map +1 -0
- package/dist/src/ui/scan/printMissing.js +43 -0
- package/dist/src/ui/scan/printMissing.js.map +1 -0
- package/dist/src/ui/scan/printMissingExample.d.ts +9 -0
- package/dist/src/ui/scan/printMissingExample.d.ts.map +1 -0
- package/dist/src/ui/scan/printMissingExample.js +27 -0
- package/dist/src/ui/scan/printMissingExample.js.map +1 -0
- package/dist/src/ui/scan/printSecrets.d.ts +14 -0
- package/dist/src/ui/scan/printSecrets.d.ts.map +1 -0
- package/dist/src/ui/scan/printSecrets.js +29 -0
- package/dist/src/ui/scan/printSecrets.js.map +1 -0
- package/dist/src/ui/scan/printStats.d.ts +13 -0
- package/dist/src/ui/scan/printStats.d.ts.map +1 -0
- package/dist/src/ui/scan/printStats.js +17 -0
- package/dist/src/ui/scan/printStats.js.map +1 -0
- package/dist/src/ui/scan/printUniqueVariables.d.ts +7 -0
- package/dist/src/ui/scan/printUniqueVariables.d.ts.map +1 -0
- package/dist/src/ui/scan/printUniqueVariables.js +14 -0
- package/dist/src/ui/scan/printUniqueVariables.js.map +1 -0
- package/dist/src/ui/scan/printUnused.d.ts +10 -0
- package/dist/src/ui/scan/printUnused.d.ts.map +1 -0
- package/dist/src/ui/scan/printUnused.js +22 -0
- package/dist/src/ui/scan/printUnused.js.map +1 -0
- package/dist/src/ui/scan/printVariables.d.ts +10 -0
- package/dist/src/ui/scan/printVariables.d.ts.map +1 -0
- package/dist/src/ui/scan/printVariables.js +37 -0
- package/dist/src/ui/scan/printVariables.js.map +1 -0
- package/dist/src/ui/shared/printAutoFix.d.ts +16 -0
- package/dist/src/ui/shared/printAutoFix.d.ts.map +1 -0
- package/dist/src/ui/shared/printAutoFix.js +34 -0
- package/dist/src/ui/shared/printAutoFix.js.map +1 -0
- package/dist/src/ui/shared/printDuplicates.d.ts +17 -0
- package/dist/src/ui/shared/printDuplicates.d.ts.map +1 -0
- package/dist/src/ui/shared/printDuplicates.js +25 -0
- package/dist/src/ui/shared/printDuplicates.js.map +1 -0
- package/dist/src/ui/shared/printFixTips.d.ts +11 -0
- package/dist/src/ui/shared/printFixTips.d.ts.map +1 -0
- package/dist/src/ui/shared/printFixTips.js +46 -0
- package/dist/src/ui/shared/printFixTips.js.map +1 -0
- package/dist/src/ui/shared/printGitignore.d.ts +13 -0
- package/dist/src/ui/shared/printGitignore.d.ts.map +1 -0
- package/dist/src/ui/shared/printGitignore.js +22 -0
- package/dist/src/ui/shared/printGitignore.js.map +1 -0
- package/dist/src/ui/shared/printOptionErrors.d.ts +17 -0
- package/dist/src/ui/shared/printOptionErrors.d.ts.map +1 -0
- package/dist/src/ui/shared/printOptionErrors.js +27 -0
- package/dist/src/ui/shared/printOptionErrors.js.map +1 -0
- package/dist/src/ui/shared/printStrictModeError.d.ts +16 -0
- package/dist/src/ui/shared/printStrictModeError.d.ts.map +1 -0
- package/dist/src/ui/shared/printStrictModeError.js +29 -0
- package/dist/src/ui/shared/printStrictModeError.js.map +1 -0
- package/dist/src/ui/shared/printSuccess.d.ts +11 -0
- package/dist/src/ui/shared/printSuccess.d.ts.map +1 -0
- package/dist/src/ui/shared/printSuccess.js +27 -0
- package/dist/src/ui/shared/printSuccess.js.map +1 -0
- package/dist/src/ui/shared/setupGlobalConfig.d.ts +7 -0
- package/dist/src/ui/shared/setupGlobalConfig.d.ts.map +1 -0
- package/dist/src/ui/shared/setupGlobalConfig.js +12 -0
- package/dist/src/ui/shared/setupGlobalConfig.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printHeader.d.ts","sourceRoot":"","sources":["../../../../src/ui/compare/printHeader.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,OAAO,QASlB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Prints the header for the comparison output.
|
|
4
|
+
* @param envName The name of the environment file.
|
|
5
|
+
* @param exampleName The name of the example file.
|
|
6
|
+
* @param json Whether to output in JSON format.
|
|
7
|
+
* @param skipping Whether the comparison is being skipped.
|
|
8
|
+
* @returns void
|
|
9
|
+
*/
|
|
10
|
+
export function printHeader(envName, exampleName, json, skipping) {
|
|
11
|
+
if (json)
|
|
12
|
+
return;
|
|
13
|
+
console.log();
|
|
14
|
+
console.log(chalk.blue(`🔍 Comparing ${envName} ↔ ${exampleName}...`));
|
|
15
|
+
if (skipping) {
|
|
16
|
+
console.log(chalk.yellow('⚠️ Skipping: missing matching example file.'));
|
|
17
|
+
}
|
|
18
|
+
console.log();
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=printHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printHeader.js","sourceRoot":"","sources":["../../../../src/ui/compare/printHeader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,OAAe,EACf,WAAmB,EACnB,IAAa,EACb,QAAiB;IAEjB,IAAI,IAAI;QAAE,OAAO;IACjB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,MAAM,WAAW,KAAK,CAAC,CAAC,CAAC;IACvE,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,8CAA8C,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type Filtered } from '../../config/types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Prints the issues found during the comparison.
|
|
4
|
+
* @param filtered The filtered comparison results.
|
|
5
|
+
* @param json Whether to output in JSON format.
|
|
6
|
+
* @returns void
|
|
7
|
+
*/
|
|
8
|
+
export declare function printIssues(filtered: Filtered, json: boolean): void;
|
|
9
|
+
//# sourceMappingURL=printIssues.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printIssues.d.ts","sourceRoot":"","sources":["../../../../src/ui/compare/printIssues.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,QA2B5D"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import {} from '../../config/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Prints the issues found during the comparison.
|
|
5
|
+
* @param filtered The filtered comparison results.
|
|
6
|
+
* @param json Whether to output in JSON format.
|
|
7
|
+
* @returns void
|
|
8
|
+
*/
|
|
9
|
+
export function printIssues(filtered, json) {
|
|
10
|
+
if (json)
|
|
11
|
+
return;
|
|
12
|
+
if (filtered.missing.length) {
|
|
13
|
+
const header = chalk.red('❌ Missing keys:');
|
|
14
|
+
console.log(header);
|
|
15
|
+
filtered.missing.forEach((key) => console.log(chalk.red(` - ${key}`)));
|
|
16
|
+
console.log();
|
|
17
|
+
}
|
|
18
|
+
if (filtered.extra?.length) {
|
|
19
|
+
console.log(chalk.yellow('⚠️ Extra keys (not in example):'));
|
|
20
|
+
filtered.extra.forEach((key) => console.log(chalk.yellow(` - ${key}`)));
|
|
21
|
+
console.log();
|
|
22
|
+
}
|
|
23
|
+
if (filtered.empty?.length) {
|
|
24
|
+
console.log(chalk.yellow('⚠️ Empty values:'));
|
|
25
|
+
filtered.empty.forEach((key) => console.log(chalk.yellow(` - ${key}`)));
|
|
26
|
+
console.log();
|
|
27
|
+
}
|
|
28
|
+
if (filtered.mismatches?.length) {
|
|
29
|
+
console.log(chalk.yellow('⚠️ Value mismatches:'));
|
|
30
|
+
filtered.mismatches.forEach(({ key, expected, actual }) => console.log(chalk.yellow(` - ${key}: expected '${expected}', but got '${actual}'`)));
|
|
31
|
+
console.log();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=printIssues.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printIssues.js","sourceRoot":"","sources":["../../../../src/ui/compare/printIssues.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAiB,MAAM,uBAAuB,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,QAAkB,EAAE,IAAa;IAC3D,IAAI,IAAI;QAAE,OAAO;IACjB,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC9D,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC/C,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IACD,IAAI,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACnD,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CACxD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,eAAe,QAAQ,eAAe,MAAM,GAAG,CAAC,CACxE,CACF,CAAC;QACF,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prompt messages for user interactions.
|
|
3
|
+
*/
|
|
4
|
+
export declare const printPrompt: {
|
|
5
|
+
noEnvFound(): void;
|
|
6
|
+
missingEnv(envPath: string): void;
|
|
7
|
+
skipCreation(fileType: string): void;
|
|
8
|
+
envCreated(envPath: string, examplePath: string): void;
|
|
9
|
+
exampleCreated(examplePath: string, envPath: string): void;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=printPrompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printPrompt.d.ts","sourceRoot":"","sources":["../../../../src/ui/compare/printPrompt.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,WAAW;;wBASF,MAAM;2BAKH,MAAM;wBAIT,MAAM,eAAe,MAAM;gCAQnB,MAAM,WAAW,MAAM;CAOpD,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
/**
|
|
4
|
+
* Prompt messages for user interactions.
|
|
5
|
+
*/
|
|
6
|
+
export const printPrompt = {
|
|
7
|
+
noEnvFound() {
|
|
8
|
+
console.log(chalk.yellow('⚠️ No .env* or .env.example file found. Skipping comparison.'));
|
|
9
|
+
},
|
|
10
|
+
missingEnv(envPath) {
|
|
11
|
+
console.log();
|
|
12
|
+
console.log(chalk.yellow(`📄 ${path.basename(envPath)} file not found.`));
|
|
13
|
+
},
|
|
14
|
+
skipCreation(fileType) {
|
|
15
|
+
console.log(chalk.gray(`🚫 Skipping ${fileType} creation.`));
|
|
16
|
+
},
|
|
17
|
+
envCreated(envPath, examplePath) {
|
|
18
|
+
console.log(chalk.green(`✅ ${path.basename(envPath)} file created successfully from ${path.basename(examplePath)}.`));
|
|
19
|
+
},
|
|
20
|
+
exampleCreated(examplePath, envPath) {
|
|
21
|
+
console.log(chalk.green(`✅ ${path.basename(examplePath)} file created successfully from ${path.basename(envPath)}.`));
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=printPrompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printPrompt.js","sourceRoot":"","sources":["../../../../src/ui/compare/printPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,UAAU;QACR,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,+DAA+D,CAChE,CACF,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,OAAe;QACxB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED,YAAY,CAAC,QAAgB;QAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,YAAY,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,UAAU,CAAC,OAAe,EAAE,WAAmB;QAC7C,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,KAAK,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,mCAAmC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAC5F,CACF,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,WAAmB,EAAE,OAAe;QACjD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,KAAK,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,mCAAmC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAC5F,CACF,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type Filtered } from '../../config/types.js';
|
|
2
|
+
export interface CompareStats {
|
|
3
|
+
envCount: number;
|
|
4
|
+
exampleCount: number;
|
|
5
|
+
sharedCount: number;
|
|
6
|
+
duplicateCount: number;
|
|
7
|
+
valueMismatchCount: number;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Print comparison statistics between two environment files.
|
|
11
|
+
* @param envName The name of the environment file.
|
|
12
|
+
* @param exampleName The name of the example file.
|
|
13
|
+
* @param s The comparison statistics.
|
|
14
|
+
* @param filtered The filtered keys.
|
|
15
|
+
* @param json Whether to output in JSON format.
|
|
16
|
+
* @param showStats Whether to show statistics.
|
|
17
|
+
*/
|
|
18
|
+
export declare function printStats(envName: string, exampleName: string, s: CompareStats, filtered: Pick<Filtered, 'missing' | 'extra' | 'empty'>, json: boolean, showStats: boolean): void;
|
|
19
|
+
//# sourceMappingURL=printStats.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printStats.d.ts","sourceRoot":"","sources":["../../../../src/ui/compare/printStats.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,CAAC,EAAE,YAAY,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC,EACvD,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,OAAO,QA2BnB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import {} from '../../config/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Print comparison statistics between two environment files.
|
|
5
|
+
* @param envName The name of the environment file.
|
|
6
|
+
* @param exampleName The name of the example file.
|
|
7
|
+
* @param s The comparison statistics.
|
|
8
|
+
* @param filtered The filtered keys.
|
|
9
|
+
* @param json Whether to output in JSON format.
|
|
10
|
+
* @param showStats Whether to show statistics.
|
|
11
|
+
*/
|
|
12
|
+
export function printStats(envName, exampleName, s, filtered, json, showStats) {
|
|
13
|
+
if (json || !showStats)
|
|
14
|
+
return;
|
|
15
|
+
console.log(chalk.magenta('📊 Compare Statistics:'));
|
|
16
|
+
console.log(chalk.magenta.dim(` Keys in ${envName}: ${s.envCount}`));
|
|
17
|
+
console.log(chalk.magenta.dim(` Keys in ${exampleName}: ${s.exampleCount}`));
|
|
18
|
+
console.log(chalk.magenta.dim(` Shared keys: ${s.sharedCount}`));
|
|
19
|
+
console.log(chalk.magenta.dim(` Missing (in ${envName}): ${filtered.missing.length}`));
|
|
20
|
+
if (filtered.extra?.length) {
|
|
21
|
+
console.log(chalk.magenta.dim(` Extra (not in ${exampleName}): ${filtered.extra.length}`));
|
|
22
|
+
}
|
|
23
|
+
if (filtered.empty?.length) {
|
|
24
|
+
console.log(chalk.magenta.dim(` Empty values: ${filtered.empty.length}`));
|
|
25
|
+
}
|
|
26
|
+
console.log(chalk.magenta.dim(` Duplicate keys: ${s.duplicateCount}`));
|
|
27
|
+
console.log(chalk.magenta.dim(` Value mismatches: ${s.valueMismatchCount}`));
|
|
28
|
+
console.log();
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=printStats.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printStats.js","sourceRoot":"","sources":["../../../../src/ui/compare/printStats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAiB,MAAM,uBAAuB,CAAC;AAUtD;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CACxB,OAAe,EACf,WAAmB,EACnB,CAAe,EACf,QAAuD,EACvD,IAAa,EACb,SAAkB;IAElB,IAAI,IAAI,IAAI,CAAC,SAAS;QAAE,OAAO;IAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,WAAW,KAAK,CAAC,CAAC,YAAY,EAAE,CAAC,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAC5E,CAAC;IACF,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,OAAO,CAAC,GAAG,CACf,oBAAoB,WAAW,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAC7D,CACF,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACzE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prints success messages when everything is OK.
|
|
3
|
+
*
|
|
4
|
+
* @param json - Whether to output in JSON format.
|
|
5
|
+
* @param mode - "compare" or "scan" mode.
|
|
6
|
+
* @param comparedAgainst - Name of env/example file (optional).
|
|
7
|
+
* @param unused - List of unused variables (optional, only for scan).
|
|
8
|
+
* @param showUnused - Whether to print unused success info.
|
|
9
|
+
*/
|
|
10
|
+
export declare function printSuccess(json: boolean, mode?: 'compare' | 'scan', comparedAgainst?: string, unused?: string[], showUnused?: boolean): void;
|
|
11
|
+
//# sourceMappingURL=printSuccess.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printSuccess.d.ts","sourceRoot":"","sources":["../../../../src/ui/compare/printSuccess.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,IAAI,GAAE,SAAS,GAAG,MAAkB,EACpC,eAAe,CAAC,EAAE,MAAM,EACxB,MAAM,GAAE,MAAM,EAAO,EACrB,UAAU,UAAQ,GACjB,IAAI,CAqBN"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Prints success messages when everything is OK.
|
|
4
|
+
*
|
|
5
|
+
* @param json - Whether to output in JSON format.
|
|
6
|
+
* @param mode - "compare" or "scan" mode.
|
|
7
|
+
* @param comparedAgainst - Name of env/example file (optional).
|
|
8
|
+
* @param unused - List of unused variables (optional, only for scan).
|
|
9
|
+
* @param showUnused - Whether to print unused success info.
|
|
10
|
+
*/
|
|
11
|
+
export function printSuccess(json, mode = 'compare', comparedAgainst, unused = [], showUnused = false) {
|
|
12
|
+
if (json)
|
|
13
|
+
return;
|
|
14
|
+
if (mode === 'compare') {
|
|
15
|
+
console.log(chalk.green('✅ All keys match.'));
|
|
16
|
+
console.log();
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
if (mode === 'scan' && comparedAgainst) {
|
|
20
|
+
console.log(chalk.green(`✅ All used environment variables are defined in ${comparedAgainst}`));
|
|
21
|
+
if (showUnused && unused.length === 0) {
|
|
22
|
+
console.log(chalk.green('✅ No unused environment variables found'));
|
|
23
|
+
}
|
|
24
|
+
console.log();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=printSuccess.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printSuccess.js","sourceRoot":"","sources":["../../../../src/ui/compare/printSuccess.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAa,EACb,OAA2B,SAAS,EACpC,eAAwB,EACxB,SAAmB,EAAE,EACrB,UAAU,GAAG,KAAK;IAElB,IAAI,IAAI;QAAE,OAAO;IAEjB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,IAAI,eAAe,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,mDAAmD,eAAe,EAAE,CACrE,CACF,CAAC;QAEF,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prints a comparison error message.
|
|
3
|
+
* @param message The error message to print
|
|
4
|
+
* @param shouldExit Whether the process should exit
|
|
5
|
+
* @param json Whether to format the output as JSON
|
|
6
|
+
* @returns An object indicating whether the process should exit
|
|
7
|
+
*/
|
|
8
|
+
export declare function printComparisonError(message: string, shouldExit: boolean, json: boolean): {
|
|
9
|
+
exit: boolean;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=printComparisonError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printComparisonError.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printComparisonError.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,OAAO,GACZ;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAanB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Prints a comparison error message.
|
|
4
|
+
* @param message The error message to print
|
|
5
|
+
* @param shouldExit Whether the process should exit
|
|
6
|
+
* @param json Whether to format the output as JSON
|
|
7
|
+
* @returns An object indicating whether the process should exit
|
|
8
|
+
*/
|
|
9
|
+
export function printComparisonError(message, shouldExit, json) {
|
|
10
|
+
const errorMessage = `⚠️ ${message}`;
|
|
11
|
+
if (shouldExit) {
|
|
12
|
+
console.log(chalk.red(errorMessage.replace('⚠️', '❌')));
|
|
13
|
+
return { exit: true };
|
|
14
|
+
}
|
|
15
|
+
if (!json) {
|
|
16
|
+
console.log(chalk.yellow(errorMessage));
|
|
17
|
+
}
|
|
18
|
+
return { exit: false };
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=printComparisonError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printComparisonError.js","sourceRoot":"","sources":["../../../../src/ui/scan/printComparisonError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAe,EACf,UAAmB,EACnB,IAAa;IAEb,MAAM,YAAY,GAAG,OAAO,OAAO,EAAE,CAAC;IAEtC,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACxD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACzB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prints the header for the scanning output.
|
|
3
|
+
* @param comparedAgainst Optional string indicating what the codebase is being compared against.
|
|
4
|
+
* @returns void
|
|
5
|
+
*/
|
|
6
|
+
export declare function printHeader(comparedAgainst?: string): void;
|
|
7
|
+
//# sourceMappingURL=printHeader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printHeader.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printHeader.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAY1D"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Prints the header for the scanning output.
|
|
4
|
+
* @param comparedAgainst Optional string indicating what the codebase is being compared against.
|
|
5
|
+
* @returns void
|
|
6
|
+
*/
|
|
7
|
+
export function printHeader(comparedAgainst) {
|
|
8
|
+
console.log();
|
|
9
|
+
console.log(chalk.blue('🔍 Scanning codebase for environment variable usage...'));
|
|
10
|
+
if (comparedAgainst) {
|
|
11
|
+
console.log();
|
|
12
|
+
console.log(chalk.magenta(`📋 Comparing codebase usage against: ${comparedAgainst}`));
|
|
13
|
+
}
|
|
14
|
+
console.log();
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=printHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printHeader.js","sourceRoot":"","sources":["../../../../src/ui/scan/printHeader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,eAAwB;IAClD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CACrE,CAAC;IACF,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,OAAO,CAAC,wCAAwC,eAAe,EAAE,CAAC,CACzE,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { EnvUsage } from '../../config/types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Print missing environment variables (used in code but not in env file).
|
|
4
|
+
*
|
|
5
|
+
* @param missing - List of missing variables
|
|
6
|
+
* @param used - All usages found in the codebase
|
|
7
|
+
* @param comparedAgainst - Name of the env file or example file
|
|
8
|
+
* @param isCiMode - Whether we are in CI mode (extra error message)
|
|
9
|
+
* @param json - Whether to output in JSON format
|
|
10
|
+
* @returns true if any missing variables were printed
|
|
11
|
+
*/
|
|
12
|
+
export declare function printMissing(missing: string[], used: EnvUsage[], comparedAgainst: string, isCiMode: boolean, json: boolean): boolean;
|
|
13
|
+
//# sourceMappingURL=printMissing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printMissing.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printMissing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,uBAAuB,CAAC;AAEtE;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,QAAQ,EAAE,EAChB,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,OAAO,EACjB,IAAI,EAAE,OAAO,GACZ,OAAO,CA6CT"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Print missing environment variables (used in code but not in env file).
|
|
4
|
+
*
|
|
5
|
+
* @param missing - List of missing variables
|
|
6
|
+
* @param used - All usages found in the codebase
|
|
7
|
+
* @param comparedAgainst - Name of the env file or example file
|
|
8
|
+
* @param isCiMode - Whether we are in CI mode (extra error message)
|
|
9
|
+
* @param json - Whether to output in JSON format
|
|
10
|
+
* @returns true if any missing variables were printed
|
|
11
|
+
*/
|
|
12
|
+
export function printMissing(missing, used, comparedAgainst, isCiMode, json) {
|
|
13
|
+
if (json)
|
|
14
|
+
return false;
|
|
15
|
+
if (missing.length === 0)
|
|
16
|
+
return false;
|
|
17
|
+
const fileType = comparedAgainst || 'environment file';
|
|
18
|
+
console.log(chalk.red(`❌ Missing in ${fileType}:`));
|
|
19
|
+
// Group by variable → find their usages
|
|
20
|
+
const grouped = missing.reduce((acc, variable) => {
|
|
21
|
+
const usages = used.filter((u) => u.variable === variable);
|
|
22
|
+
acc[variable] = usages;
|
|
23
|
+
return acc;
|
|
24
|
+
}, {});
|
|
25
|
+
for (const [variable, usages] of Object.entries(grouped)) {
|
|
26
|
+
console.log(chalk.red(` - ${variable}`));
|
|
27
|
+
const maxShow = 3;
|
|
28
|
+
usages.slice(0, maxShow).forEach((usage) => {
|
|
29
|
+
console.log(chalk.red.dim(` Used in: ${usage.file}:${usage.line} (${usage.pattern})`));
|
|
30
|
+
});
|
|
31
|
+
if (usages.length > maxShow) {
|
|
32
|
+
console.log(chalk.gray(` ... and ${usages.length - maxShow} more locations`));
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
console.log();
|
|
36
|
+
if (isCiMode) {
|
|
37
|
+
console.log(chalk.red(`💥 Found ${missing.length} missing environment variable(s).`));
|
|
38
|
+
console.log(chalk.red(` Add these variables to ${fileType} to fix this error.`));
|
|
39
|
+
console.log();
|
|
40
|
+
}
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=printMissing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printMissing.js","sourceRoot":"","sources":["../../../../src/ui/scan/printMissing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAiB,EACjB,IAAgB,EAChB,eAAuB,EACvB,QAAiB,EACjB,IAAa;IAEb,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IACvB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEvC,MAAM,QAAQ,GAAG,eAAe,IAAI,kBAAkB,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,QAAQ,GAAG,CAAC,CAAC,CAAC;IAEpD,wCAAwC;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,QAAgB,EAAE,EAAE;QACvE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QACrE,GAAG,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QACvB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE3C,MAAM,OAAO,GAAG,CAAC,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAe,EAAE,EAAE;YACnD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,GAAG,CACX,iBAAiB,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,GAAG,CAC/D,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,MAAM,GAAG,OAAO,iBAAiB,CAAC,CACrE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,MAAM,mCAAmC,CAAC,CACzE,CAAC;QACF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,6BAA6B,QAAQ,qBAAqB,CAAC,CACtE,CAAC;QACF,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ScanUsageOptions } from '../../config/types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Print message if the specified example file is missing.
|
|
4
|
+
* Handles CI vs interactive mode output.
|
|
5
|
+
* @param opts Scan options
|
|
6
|
+
* @returns true if missing and in CI mode (should exit), false otherwise
|
|
7
|
+
*/
|
|
8
|
+
export declare function printMissingExample(opts: ScanUsageOptions): boolean;
|
|
9
|
+
//# sourceMappingURL=printMissingExample.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printMissingExample.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printMissingExample.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAiBnE"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import fs from 'fs';
|
|
3
|
+
import { resolveFromCwd } from '../../core/helpers/resolveFromCwd.js';
|
|
4
|
+
/**
|
|
5
|
+
* Print message if the specified example file is missing.
|
|
6
|
+
* Handles CI vs interactive mode output.
|
|
7
|
+
* @param opts Scan options
|
|
8
|
+
* @returns true if missing and in CI mode (should exit), false otherwise
|
|
9
|
+
*/
|
|
10
|
+
export function printMissingExample(opts) {
|
|
11
|
+
if (!opts.examplePath)
|
|
12
|
+
return false;
|
|
13
|
+
const exampleAbs = resolveFromCwd(opts.cwd, opts.examplePath);
|
|
14
|
+
const missing = !fs.existsSync(exampleAbs);
|
|
15
|
+
if (missing) {
|
|
16
|
+
const msgText = `Missing specified example file: ${opts.examplePath}`;
|
|
17
|
+
if (opts.isCiMode) {
|
|
18
|
+
console.log(chalk.red('❌ ' + msgText));
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
else if (!opts.json) {
|
|
22
|
+
console.log(chalk.yellow('⚠️ ' + msgText));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=printMissingExample.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printMissingExample.js","sourceRoot":"","sources":["../../../../src/ui/scan/printMissingExample.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAGtE;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAsB;IACxD,IAAI,CAAC,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAEpC,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAE3C,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,mCAAmC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC;YACvC,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface SecretFinding {
|
|
2
|
+
file: string;
|
|
3
|
+
line: number;
|
|
4
|
+
message: string;
|
|
5
|
+
snippet: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Print potential secrets detected in the codebase.
|
|
9
|
+
*
|
|
10
|
+
* @param secrets - Array of secret findings
|
|
11
|
+
* @param json - Whether to output in JSON format
|
|
12
|
+
*/
|
|
13
|
+
export declare function printSecrets(secrets: SecretFinding[], json: boolean): void;
|
|
14
|
+
//# sourceMappingURL=printSecrets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printSecrets.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printSecrets.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAyB1E"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Print potential secrets detected in the codebase.
|
|
4
|
+
*
|
|
5
|
+
* @param secrets - Array of secret findings
|
|
6
|
+
* @param json - Whether to output in JSON format
|
|
7
|
+
*/
|
|
8
|
+
export function printSecrets(secrets, json) {
|
|
9
|
+
if (json)
|
|
10
|
+
return;
|
|
11
|
+
if (!secrets || secrets.length === 0)
|
|
12
|
+
return;
|
|
13
|
+
console.log(chalk.yellow('🔒 Potential secrets detected in codebase:'));
|
|
14
|
+
// Group by file
|
|
15
|
+
const byFile = new Map();
|
|
16
|
+
for (const f of secrets) {
|
|
17
|
+
if (!byFile.has(f.file))
|
|
18
|
+
byFile.set(f.file, []);
|
|
19
|
+
byFile.get(f.file).push(f);
|
|
20
|
+
}
|
|
21
|
+
for (const [file, findings] of byFile) {
|
|
22
|
+
console.log(chalk.bold(` ${file}`));
|
|
23
|
+
for (const f of findings) {
|
|
24
|
+
console.log(chalk.yellow(` - Line ${f.line}: ${f.message}\n ${chalk.dim(f.snippet)}`));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
console.log();
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=printSecrets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printSecrets.js","sourceRoot":"","sources":["../../../../src/ui/scan/printSecrets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,OAAwB,EAAE,IAAa;IAClE,IAAI,IAAI;QAAE,OAAO;IACjB,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC,CAAC;IAExE,gBAAgB;IAChB,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;IAClD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;QACrC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,aAAa,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,UAAU,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAClE,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface ScanStats {
|
|
2
|
+
filesScanned: number;
|
|
3
|
+
totalUsages: number;
|
|
4
|
+
uniqueVariables: number;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Print scan statistics for codebase scanning.
|
|
8
|
+
* @param stats The scan statistics
|
|
9
|
+
* @param json Whether to output in JSON format
|
|
10
|
+
* @param showStats Whether to show statistics
|
|
11
|
+
*/
|
|
12
|
+
export declare function printStats(stats: ScanStats, json: boolean, showStats: boolean): void;
|
|
13
|
+
//# sourceMappingURL=printStats.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printStats.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printStats.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,OAAO,QAUnB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Print scan statistics for codebase scanning.
|
|
4
|
+
* @param stats The scan statistics
|
|
5
|
+
* @param json Whether to output in JSON format
|
|
6
|
+
* @param showStats Whether to show statistics
|
|
7
|
+
*/
|
|
8
|
+
export function printStats(stats, json, showStats) {
|
|
9
|
+
if (json || !showStats)
|
|
10
|
+
return;
|
|
11
|
+
console.log(chalk.magenta('📊 Scan Statistics:'));
|
|
12
|
+
console.log(chalk.magenta.dim(` Files scanned: ${stats.filesScanned}`));
|
|
13
|
+
console.log(chalk.magenta.dim(` Total usages found: ${stats.totalUsages}`));
|
|
14
|
+
console.log(chalk.magenta.dim(` Unique variables: ${stats.uniqueVariables}`));
|
|
15
|
+
console.log();
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=printStats.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printStats.js","sourceRoot":"","sources":["../../../../src/ui/scan/printStats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CACxB,KAAgB,EAChB,IAAa,EACb,SAAkB;IAElB,IAAI,IAAI,IAAI,CAAC,SAAS;QAAE,OAAO;IAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC9E,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,CAAC,eAAe,EAAE,CAAC,CACnE,CAAC;IACF,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prints the unique environment variables found in the codebase.
|
|
3
|
+
* @param variables Array of unique environment variable names
|
|
4
|
+
* @returns void
|
|
5
|
+
*/
|
|
6
|
+
export declare function printUniqueVariables(variables: number): void;
|
|
7
|
+
//# sourceMappingURL=printUniqueVariables.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printUniqueVariables.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printUniqueVariables.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAS5D"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Prints the unique environment variables found in the codebase.
|
|
4
|
+
* @param variables Array of unique environment variable names
|
|
5
|
+
* @returns void
|
|
6
|
+
*/
|
|
7
|
+
export function printUniqueVariables(variables) {
|
|
8
|
+
if (variables === 0) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
console.log(chalk.blue(`🌐 Found ${variables} unique environment variables in use`));
|
|
12
|
+
console.log();
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=printUniqueVariables.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printUniqueVariables.js","sourceRoot":"","sources":["../../../../src/ui/scan/printUniqueVariables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAiB;IACpD,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,YAAY,SAAS,sCAAsC,CAAC,CACxE,CAAC;IACF,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Print unused environment variables (defined in env but not used in code).
|
|
3
|
+
*
|
|
4
|
+
* @param unused - Array of unused variable names
|
|
5
|
+
* @param comparedAgainst - File name (.env eller andet)
|
|
6
|
+
* @param showUnused - Whether unused should be shown at all
|
|
7
|
+
* @param json - Whether to output in JSON format
|
|
8
|
+
*/
|
|
9
|
+
export declare function printUnused(unused: string[], comparedAgainst: string, showUnused: boolean, json: boolean): void;
|
|
10
|
+
//# sourceMappingURL=printUnused.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printUnused.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printUnused.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EAAE,EAChB,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,OAAO,GACZ,IAAI,CAYN"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
/**
|
|
3
|
+
* Print unused environment variables (defined in env but not used in code).
|
|
4
|
+
*
|
|
5
|
+
* @param unused - Array of unused variable names
|
|
6
|
+
* @param comparedAgainst - File name (.env eller andet)
|
|
7
|
+
* @param showUnused - Whether unused should be shown at all
|
|
8
|
+
* @param json - Whether to output in JSON format
|
|
9
|
+
*/
|
|
10
|
+
export function printUnused(unused, comparedAgainst, showUnused, json) {
|
|
11
|
+
if (json || !showUnused)
|
|
12
|
+
return;
|
|
13
|
+
if (unused.length === 0)
|
|
14
|
+
return;
|
|
15
|
+
const fileType = comparedAgainst || 'environment file';
|
|
16
|
+
console.log(chalk.yellow(`⚠️ Unused in codebase (defined in ${fileType}):`));
|
|
17
|
+
unused.forEach((variable) => {
|
|
18
|
+
console.log(chalk.yellow(` - ${variable}`));
|
|
19
|
+
});
|
|
20
|
+
console.log();
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=printUnused.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printUnused.js","sourceRoot":"","sources":["../../../../src/ui/scan/printUnused.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,MAAgB,EAChB,eAAuB,EACvB,UAAmB,EACnB,IAAa;IAEb,IAAI,IAAI,IAAI,CAAC,UAAU;QAAE,OAAO;IAChC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEhC,MAAM,QAAQ,GAAG,eAAe,IAAI,kBAAkB,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sCAAsC,QAAQ,IAAI,CAAC,CAAC,CAAC;IAE9E,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { EnvUsage } from '../../config/types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Print all unique variables and their usage locations.
|
|
4
|
+
*
|
|
5
|
+
* @param usages - Array of environment variable usages
|
|
6
|
+
* @param showStats - Whether to show usage details (files/lines)
|
|
7
|
+
* @param json - Whether to output in JSON format
|
|
8
|
+
*/
|
|
9
|
+
export declare function printVariables(usages: EnvUsage[], showStats: boolean, json: boolean): void;
|
|
10
|
+
//# sourceMappingURL=printVariables.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printVariables.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printVariables.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,uBAAuB,CAAC;AAEtE;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,QAAQ,EAAE,EAClB,SAAS,EAAE,OAAO,EAClB,IAAI,EAAE,OAAO,GACZ,IAAI,CAyCN"}
|