dotenv-diff 2.5.0 → 2.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/CHANGELOG.md +341 -536
  2. package/dist/bin/dotenv-diff.js +0 -0
  3. package/package.json +5 -1
  4. package/dist/cli.d.ts +0 -9
  5. package/dist/cli.js +0 -294
  6. package/dist/diffEnv.d.ts +0 -5
  7. package/dist/diffEnv.js +0 -7
  8. package/dist/index.d.ts +0 -2
  9. package/dist/index.js +0 -2
  10. package/dist/lib/checkGitignore.d.ts +0 -23
  11. package/dist/lib/checkGitignore.js +0 -73
  12. package/dist/lib/diffEnv.d.ts +0 -18
  13. package/dist/lib/diffEnv.js +0 -29
  14. package/dist/lib/parseEnv.d.ts +0 -10
  15. package/dist/lib/parseEnv.js +0 -25
  16. package/dist/parseEnv.d.ts +0 -1
  17. package/dist/parseEnv.js +0 -16
  18. package/dist/src/core/compareScan.d.ts +0 -10
  19. package/dist/src/core/compareScan.d.ts.map +0 -1
  20. package/dist/src/core/compareScan.js +0 -19
  21. package/dist/src/core/compareScan.js.map +0 -1
  22. package/dist/src/core/computeHealthScore.d.ts +0 -8
  23. package/dist/src/core/computeHealthScore.d.ts.map +0 -1
  24. package/dist/src/core/computeHealthScore.js +0 -35
  25. package/dist/src/core/computeHealthScore.js.map +0 -1
  26. package/dist/src/core/cspDetector.d.ts +0 -7
  27. package/dist/src/core/cspDetector.d.ts.map +0 -1
  28. package/dist/src/core/cspDetector.js +0 -38
  29. package/dist/src/core/cspDetector.js.map +0 -1
  30. package/dist/src/core/defaultExcludeKeys.d.ts +0 -7
  31. package/dist/src/core/defaultExcludeKeys.d.ts.map +0 -1
  32. package/dist/src/core/detectClientExposure.d.ts +0 -12
  33. package/dist/src/core/detectClientExposure.d.ts.map +0 -1
  34. package/dist/src/core/detectClientExposure.js +0 -62
  35. package/dist/src/core/detectClientExposure.js.map +0 -1
  36. package/dist/src/core/detectExpirations.d.ts +0 -14
  37. package/dist/src/core/detectExpirations.d.ts.map +0 -1
  38. package/dist/src/core/detectExpirations.js +0 -44
  39. package/dist/src/core/detectExpirations.js.map +0 -1
  40. package/dist/src/core/detectUppercaseKeys.d.ts +0 -9
  41. package/dist/src/core/detectUppercaseKeys.d.ts.map +0 -1
  42. package/dist/src/core/detectUppercaseKeys.js +0 -28
  43. package/dist/src/core/detectUppercaseKeys.js.map +0 -1
  44. package/dist/src/core/determineComparisonFile.d.ts +0 -13
  45. package/dist/src/core/determineComparisonFile.d.ts.map +0 -1
  46. package/dist/src/core/determineComparisonFile.js +0 -33
  47. package/dist/src/core/determineComparisonFile.js.map +0 -1
  48. package/dist/src/core/entropy.d.ts +0 -8
  49. package/dist/src/core/entropy.d.ts.map +0 -1
  50. package/dist/src/core/entropy.js +0 -23
  51. package/dist/src/core/entropy.js.map +0 -1
  52. package/dist/src/core/envDiscovery.d.ts +0 -19
  53. package/dist/src/core/envDiscovery.d.ts.map +0 -1
  54. package/dist/src/core/envDiscovery.js +0 -81
  55. package/dist/src/core/envDiscovery.js.map +0 -1
  56. package/dist/src/core/envPairing.d.ts +0 -8
  57. package/dist/src/core/envPairing.d.ts.map +0 -1
  58. package/dist/src/core/envPairing.js +0 -36
  59. package/dist/src/core/envPairing.js.map +0 -1
  60. package/dist/src/core/envValidator.d.ts +0 -9
  61. package/dist/src/core/envValidator.d.ts.map +0 -1
  62. package/dist/src/core/envValidator.js +0 -103
  63. package/dist/src/core/envValidator.js.map +0 -1
  64. package/dist/src/core/exampleSecretDetector.d.ts +0 -13
  65. package/dist/src/core/exampleSecretDetector.d.ts.map +0 -1
  66. package/dist/src/core/exampleSecretDetector.js +0 -61
  67. package/dist/src/core/exampleSecretDetector.js.map +0 -1
  68. package/dist/src/core/frameworkDetector.d.ts +0 -14
  69. package/dist/src/core/frameworkDetector.d.ts.map +0 -1
  70. package/dist/src/core/frameworkDetector.js +0 -40
  71. package/dist/src/core/frameworkDetector.js.map +0 -1
  72. package/dist/src/core/frameworkValidator.d.ts +0 -10
  73. package/dist/src/core/frameworkValidator.d.ts.map +0 -1
  74. package/dist/src/core/frameworkValidator.js +0 -21
  75. package/dist/src/core/frameworkValidator.js.map +0 -1
  76. package/dist/src/core/frameworks/angularRules.d.ts +0 -4
  77. package/dist/src/core/frameworks/angularRules.d.ts.map +0 -1
  78. package/dist/src/core/helpers/isAllOk.d.ts +0 -9
  79. package/dist/src/core/helpers/isAllOk.d.ts.map +0 -1
  80. package/dist/src/core/helpers/isAllOk.js +0 -16
  81. package/dist/src/core/helpers/isAllOk.js.map +0 -1
  82. package/dist/src/core/helpers/updateTotals.d.ts +0 -19
  83. package/dist/src/core/helpers/updateTotals.d.ts.map +0 -1
  84. package/dist/src/core/helpers/updateTotals.js +0 -37
  85. package/dist/src/core/helpers/updateTotals.js.map +0 -1
  86. package/dist/src/core/parseAndFilterEnv.d.ts +0 -20
  87. package/dist/src/core/parseAndFilterEnv.d.ts.map +0 -1
  88. package/dist/src/core/parseAndFilterEnv.js +0 -22
  89. package/dist/src/core/parseAndFilterEnv.js.map +0 -1
  90. package/dist/src/core/processComparisonFile.d.ts +0 -43
  91. package/dist/src/core/processComparisonFile.d.ts.map +0 -1
  92. package/dist/src/core/processComparisonFile.js +0 -170
  93. package/dist/src/core/processComparisonFile.js.map +0 -1
  94. package/dist/src/core/scan/scanJsonOutput.d.ts +0 -85
  95. package/dist/src/core/scan/scanJsonOutput.d.ts.map +0 -1
  96. package/dist/src/core/scan/scanJsonOutput.js +0 -97
  97. package/dist/src/core/scan/scanJsonOutput.js.map +0 -1
  98. package/dist/src/core/scan/secretDetectors.d.ts +0 -28
  99. package/dist/src/core/scan/secretDetectors.d.ts.map +0 -1
  100. package/dist/src/core/scan/secretDetectors.js +0 -272
  101. package/dist/src/core/scan/secretDetectors.js.map +0 -1
  102. package/dist/src/core/scanFile.d.ts +0 -10
  103. package/dist/src/core/scanFile.d.ts.map +0 -1
  104. package/dist/src/core/scanFile.js +0 -65
  105. package/dist/src/core/scanFile.js.map +0 -1
  106. package/dist/src/core/scanJsonOutput.d.ts +0 -85
  107. package/dist/src/core/scanJsonOutput.d.ts.map +0 -1
  108. package/dist/src/core/scanJsonOutput.js +0 -97
  109. package/dist/src/core/scanJsonOutput.js.map +0 -1
  110. package/dist/src/core/secretDetectors.d.ts +0 -28
  111. package/dist/src/core/secretDetectors.d.ts.map +0 -1
  112. package/dist/src/core/secretDetectors.js +0 -272
  113. package/dist/src/core/secretDetectors.js.map +0 -1
  114. package/dist/src/core/t3env/detectT3Env.d.ts +0 -12
  115. package/dist/src/core/t3env/detectT3Env.d.ts.map +0 -1
  116. package/dist/src/core/t3env/detectT3Env.js +0 -113
  117. package/dist/src/core/t3env/detectT3Env.js.map +0 -1
  118. package/dist/src/core/t3env/t3EnvRules.d.ts +0 -10
  119. package/dist/src/core/t3env/t3EnvRules.d.ts.map +0 -1
  120. package/dist/src/core/t3env/t3EnvRules.js +0 -61
  121. package/dist/src/core/t3env/t3EnvRules.js.map +0 -1
  122. package/dist/src/core/t3env/t3EnvValidator.d.ts +0 -9
  123. package/dist/src/core/t3env/t3EnvValidator.d.ts.map +0 -1
  124. package/dist/src/core/t3env/t3EnvValidator.js +0 -32
  125. package/dist/src/core/t3env/t3EnvValidator.js.map +0 -1
  126. package/dist/src/lib/diffEnv.d.ts +0 -19
  127. package/dist/src/lib/diffEnv.d.ts.map +0 -1
  128. package/dist/src/lib/diffEnv.js +0 -31
  129. package/dist/src/lib/diffEnv.js.map +0 -1
  130. package/dist/src/lib/parseEnv.d.ts +0 -11
  131. package/dist/src/lib/parseEnv.d.ts.map +0 -1
  132. package/dist/src/lib/parseEnv.js +0 -26
  133. package/dist/src/lib/parseEnv.js.map +0 -1
  134. package/dist/src/services/codeBaseScanner.d.ts +0 -8
  135. package/dist/src/services/codeBaseScanner.d.ts.map +0 -1
  136. package/dist/src/services/codeBaseScanner.js +0 -110
  137. package/dist/src/services/codeBaseScanner.js.map +0 -1
  138. package/dist/src/services/duplicates.d.ts +0 -12
  139. package/dist/src/services/duplicates.d.ts.map +0 -1
  140. package/dist/src/services/duplicates.js +0 -36
  141. package/dist/src/services/duplicates.js.map +0 -1
  142. package/dist/src/services/ensureFilesOrPrompt.d.ts +0 -22
  143. package/dist/src/services/ensureFilesOrPrompt.d.ts.map +0 -1
  144. package/dist/src/services/ensureFilesOrPrompt.js +0 -76
  145. package/dist/src/services/ensureFilesOrPrompt.js.map +0 -1
  146. package/dist/src/services/scanOutputToConsole.d.ts +0 -17
  147. package/dist/src/services/scanOutputToConsole.d.ts.map +0 -1
  148. package/dist/src/services/scanOutputToConsole.js +0 -127
  149. package/dist/src/services/scanOutputToConsole.js.map +0 -1
  150. package/dist/src/ui/compare/printAutoFix.d.ts +0 -16
  151. package/dist/src/ui/compare/printAutoFix.d.ts.map +0 -1
  152. package/dist/src/ui/compare/printAutoFix.js +0 -34
  153. package/dist/src/ui/compare/printAutoFix.js.map +0 -1
  154. package/dist/src/ui/compare/printAutoFixApplied.d.ts +0 -7
  155. package/dist/src/ui/compare/printAutoFixApplied.d.ts.map +0 -1
  156. package/dist/src/ui/compare/printAutoFixApplied.js +0 -22
  157. package/dist/src/ui/compare/printAutoFixApplied.js.map +0 -1
  158. package/dist/src/ui/compare/printDuplicates.d.ts +0 -17
  159. package/dist/src/ui/compare/printDuplicates.d.ts.map +0 -1
  160. package/dist/src/ui/compare/printDuplicates.js +0 -25
  161. package/dist/src/ui/compare/printDuplicates.js.map +0 -1
  162. package/dist/src/ui/compare/printFixTips.d.ts +0 -11
  163. package/dist/src/ui/compare/printFixTips.d.ts.map +0 -1
  164. package/dist/src/ui/compare/printFixTips.js +0 -46
  165. package/dist/src/ui/compare/printFixTips.js.map +0 -1
  166. package/dist/src/ui/compare/printSuccess.d.ts +0 -11
  167. package/dist/src/ui/compare/printSuccess.d.ts.map +0 -1
  168. package/dist/src/ui/compare/printSuccess.js +0 -27
  169. package/dist/src/ui/compare/printSuccess.js.map +0 -1
  170. package/dist/src/ui/scan/printCspWarning.d.ts +0 -9
  171. package/dist/src/ui/scan/printCspWarning.d.ts.map +0 -1
  172. package/dist/src/ui/scan/printCspWarning.js +0 -20
  173. package/dist/src/ui/scan/printCspWarning.js.map +0 -1
  174. package/dist/src/ui/scan/printEnvWarnings.d.ts +0 -8
  175. package/dist/src/ui/scan/printEnvWarnings.d.ts.map +0 -1
  176. package/dist/src/ui/scan/printEnvWarnings.js +0 -20
  177. package/dist/src/ui/scan/printEnvWarnings.js.map +0 -1
  178. package/dist/src/ui/scan/printExposedVars.d.ts +0 -8
  179. package/dist/src/ui/scan/printExposedVars.d.ts.map +0 -1
  180. package/dist/src/ui/scan/printExposedVars.js +0 -24
  181. package/dist/src/ui/scan/printExposedVars.js.map +0 -1
  182. package/dist/src/ui/scan/printT3EnvWarnings.d.ts +0 -8
  183. package/dist/src/ui/scan/printT3EnvWarnings.d.ts.map +0 -1
  184. package/dist/src/ui/scan/printT3EnvWarnings.js +0 -20
  185. package/dist/src/ui/scan/printT3EnvWarnings.js.map +0 -1
  186. package/dist/src/ui/scan/printUniqueVariables.d.ts +0 -7
  187. package/dist/src/ui/scan/printUniqueVariables.d.ts.map +0 -1
  188. package/dist/src/ui/scan/printUniqueVariables.js +0 -14
  189. package/dist/src/ui/scan/printUniqueVariables.js.map +0 -1
  190. package/dist/src/ui/scan/printVariables.d.ts +0 -10
  191. package/dist/src/ui/scan/printVariables.d.ts.map +0 -1
  192. package/dist/src/ui/scan/printVariables.js +0 -37
  193. package/dist/src/ui/scan/printVariables.js.map +0 -1
  194. package/dist/src/ui/shared/printProgress.d.ts +0 -24
  195. package/dist/src/ui/shared/printProgress.d.ts.map +0 -1
  196. package/dist/src/ui/shared/printProgress.js +0 -43
  197. package/dist/src/ui/shared/printProgress.js.map +0 -1
  198. package/dist/types/scanUsage.d.ts +0 -43
  199. package/dist/types/scanUsage.d.ts.map +0 -1
@@ -1,170 +0,0 @@
1
- import fs from 'fs';
2
- import { parseEnvFile } from './parseEnv.js';
3
- import { filterIgnoredKeys } from './filterIgnoredKeys.js';
4
- import { compareWithEnvFiles } from './compareScan.js';
5
- import { findDuplicateKeys } from './duplicates.js';
6
- import { applyFixes } from './fixEnv.js';
7
- import { toUpperSnakeCase } from './helpers/toUpperSnakeCase.js';
8
- import { resolveFromCwd } from './helpers/resolveFromCwd.js';
9
- import { detectExpirations } from './detectExpirations.js';
10
- import { detectInconsistentNaming } from './detectInconsistentNaming.js';
11
- /**
12
- * Process comparison file: parse env, check duplicates, check missing keys, apply fixes
13
- * @param scanResult - Current scan result
14
- * @param compareFile - File to compare against
15
- * @param opts - Scan options
16
- * @returns Processed comparison result
17
- */
18
- export function processComparisonFile(scanResult, compareFile, opts) {
19
- let envVariables = {};
20
- let comparedAgainst = '';
21
- let duplicatesFound = false;
22
- let dupsEnv = [];
23
- let dupsEx = [];
24
- let fixApplied = false;
25
- let removedDuplicates = [];
26
- let addedEnv = [];
27
- let addedExample = [];
28
- let gitignoreUpdated = false;
29
- let exampleFull = undefined;
30
- let uppercaseWarnings = [];
31
- let expireWarnings = [];
32
- let inconsistentNamingWarnings = [];
33
- try {
34
- // Load .env.example (if exists)
35
- if (opts.examplePath) {
36
- const examplePath = resolveFromCwd(opts.cwd, opts.examplePath);
37
- if (fs.existsSync(examplePath)) {
38
- exampleFull = parseEnvFile(examplePath);
39
- }
40
- }
41
- // Parse and filter env file
42
- const envFull = parseEnvFile(compareFile.path);
43
- const envKeys = filterIgnoredKeys(Object.keys(envFull), opts.ignore, opts.ignoreRegex);
44
- envVariables = Object.fromEntries(envKeys.map((k) => [k, envFull[k]]));
45
- scanResult = compareWithEnvFiles(scanResult, envVariables);
46
- comparedAgainst = compareFile.name;
47
- // Detect uppercase keys
48
- if (opts.uppercaseKeys) {
49
- for (const key of envKeys) {
50
- if (!/^[A-Z0-9_]+$/.test(key)) {
51
- uppercaseWarnings.push({ key, suggestion: toUpperSnakeCase(key) });
52
- }
53
- }
54
- }
55
- // Find duplicates
56
- if (!opts.allowDuplicates) {
57
- const duplicateResults = checkDuplicates(compareFile, opts);
58
- dupsEnv = duplicateResults.dupsEnv;
59
- dupsEx = duplicateResults.dupsEx;
60
- duplicatesFound = dupsEnv.length > 0 || dupsEx.length > 0;
61
- }
62
- if (opts.expireWarnings) {
63
- expireWarnings = detectExpirations(compareFile.path);
64
- }
65
- // Check for inconsistent naming across env + example keys
66
- if (opts.inconsistentNamingWarnings) {
67
- const envKeysList = Object.keys(envFull);
68
- const exampleKeysList = exampleFull ? Object.keys(exampleFull) : [];
69
- // Combine all keys for naming analysis
70
- const allKeys = [...envKeysList, ...exampleKeysList];
71
- inconsistentNamingWarnings = detectInconsistentNaming(allKeys);
72
- }
73
- // Apply fixes (both duplicates + missing keys + gitignore)
74
- if (opts.fix &&
75
- (duplicatesFound || scanResult.missing.length > 0 || true)) {
76
- const { changed, result } = applyFixes({
77
- envPath: compareFile.path,
78
- examplePath: opts.examplePath
79
- ? resolveFromCwd(opts.cwd, opts.examplePath)
80
- : '',
81
- missingKeys: scanResult.missing,
82
- duplicateKeys: dupsEnv.map((d) => d.key),
83
- ensureGitignore: true,
84
- });
85
- if (changed) {
86
- fixApplied = true;
87
- removedDuplicates = result.removedDuplicates;
88
- addedEnv = result.addedEnv;
89
- addedExample = result.addedExample;
90
- gitignoreUpdated = result.gitignoreUpdated;
91
- scanResult.missing = [];
92
- dupsEnv = [];
93
- dupsEx = [];
94
- duplicatesFound = false;
95
- }
96
- }
97
- // Keep duplicates for output if not fixed
98
- if (duplicatesFound && (!opts.fix || !fixApplied)) {
99
- if (!scanResult.duplicates)
100
- scanResult.duplicates = {};
101
- if (dupsEnv.length > 0)
102
- scanResult.duplicates.env = dupsEnv;
103
- if (dupsEx.length > 0)
104
- scanResult.duplicates.example = dupsEx;
105
- }
106
- }
107
- catch (error) {
108
- const errorMessage = `Could not read ${compareFile.name}: ${compareFile.path} - ${error}`;
109
- return {
110
- scanResult,
111
- envVariables,
112
- comparedAgainst,
113
- duplicatesFound,
114
- dupsEnv,
115
- dupsEx,
116
- fixApplied,
117
- removedDuplicates,
118
- addedEnv,
119
- addedExample,
120
- gitignoreUpdated,
121
- exampleFull,
122
- uppercaseWarnings,
123
- expireWarnings,
124
- inconsistentNamingWarnings,
125
- error: {
126
- message: errorMessage,
127
- shouldExit: opts.isCiMode ?? false,
128
- },
129
- };
130
- }
131
- return {
132
- scanResult,
133
- envVariables,
134
- comparedAgainst,
135
- duplicatesFound,
136
- dupsEnv,
137
- dupsEx,
138
- fixApplied,
139
- removedDuplicates,
140
- addedEnv,
141
- addedExample,
142
- gitignoreUpdated,
143
- exampleFull,
144
- uppercaseWarnings,
145
- expireWarnings,
146
- inconsistentNamingWarnings,
147
- };
148
- }
149
- /**
150
- * Check for duplicate keys in env and example files
151
- * @param compareFile - The file to compare against
152
- * @param opts - Scan options
153
- * @returns Object containing duplicate keys in env and example files
154
- */
155
- function checkDuplicates(compareFile, opts) {
156
- const isIgnored = (key) => !opts.ignore.includes(key) && !opts.ignoreRegex.some((rx) => rx.test(key));
157
- // Duplicates in main env file
158
- const dupsEnv = findDuplicateKeys(compareFile.path).filter(({ key }) => isIgnored(key));
159
- // Duplicates in example file
160
- let dupsEx = [];
161
- if (opts.examplePath) {
162
- const examplePath = resolveFromCwd(opts.cwd, opts.examplePath);
163
- const exampleIsDifferentFile = fs.existsSync(examplePath) && examplePath !== compareFile.path;
164
- if (exampleIsDifferentFile) {
165
- dupsEx = findDuplicateKeys(examplePath).filter(({ key }) => isIgnored(key));
166
- }
167
- }
168
- return { dupsEnv, dupsEx };
169
- }
170
- //# sourceMappingURL=processComparisonFile.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"processComparisonFile.js","sourceRoot":"","sources":["../../../src/core/processComparisonFile.ts"],"names":[],"mappings":"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"}
@@ -1,85 +0,0 @@
1
- import type { ScanResult, Duplicate, SupportedFramework } from '../../config/types.js';
2
- /**
3
- * JSON structure for scan results output
4
- */
5
- interface ScanJsonOutput {
6
- stats?: {
7
- filesScanned: number;
8
- totalUsages: number;
9
- uniqueVariables: number;
10
- warningsCount: number;
11
- duration: number;
12
- };
13
- missing?: Array<{
14
- variable: string;
15
- usages: Array<{
16
- file: string;
17
- line: number;
18
- pattern: string;
19
- context: string;
20
- }>;
21
- }>;
22
- unused?: string[];
23
- allUsages?: Array<{
24
- variable: string;
25
- file: string;
26
- line: number;
27
- pattern: string;
28
- context: string;
29
- }>;
30
- comparedAgainst?: string;
31
- totalEnvVariables?: number;
32
- secrets?: Array<{
33
- file: string;
34
- line: number;
35
- message: string;
36
- snippet: string;
37
- }>;
38
- duplicates?: {
39
- env?: Duplicate[];
40
- example?: Duplicate[];
41
- };
42
- logged?: Array<{
43
- variable: string;
44
- file: string;
45
- line: number;
46
- context: string;
47
- }>;
48
- expireWarnings?: Array<{
49
- key: string;
50
- date: string;
51
- daysLeft: number;
52
- }>;
53
- uppercaseWarnings?: Array<{
54
- key: string;
55
- suggestion: string;
56
- }>;
57
- inconsistentNamingWarnings?: Array<{
58
- key1: string;
59
- key2: string;
60
- suggestion: string;
61
- }>;
62
- frameworkWarnings?: Array<{
63
- variable: string;
64
- reason: string;
65
- file: string;
66
- line: number;
67
- framework: SupportedFramework;
68
- }>;
69
- exampleWarnings?: Array<{
70
- key: string;
71
- value: string;
72
- reason: string;
73
- severity: string;
74
- }>;
75
- healthScore?: number;
76
- }
77
- /**
78
- * Creates a JSON output for the scan results.
79
- * @param scanResult - The result of the scan.
80
- * @param comparedAgainst - The file being compared against.
81
- * @returns The JSON output.
82
- */
83
- export declare function createJsonOutput(scanResult: ScanResult, comparedAgainst: string): ScanJsonOutput;
84
- export {};
85
- //# sourceMappingURL=scanJsonOutput.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scanJsonOutput.d.ts","sourceRoot":"","sources":["../../../../src/core/scan/scanJsonOutput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAEV,SAAS,EACT,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAI/B;;GAEG;AACH,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,KAAK,CAAC;YACZ,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC,CAAC;KACJ,CAAC,CAAC;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,UAAU,CAAC,EAAE;QACX,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC;QAClB,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;KACvB,CAAC;IACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,cAAc,CAAC,EAAE,KAAK,CAAC;QACrB,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC;QACxB,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH,0BAA0B,CAAC,EAAE,KAAK,CAAC;QACjC,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,kBAAkB,CAAC;KAC/B,CAAC,CAAC;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;QACtB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,MAAM,GACtB,cAAc,CAwGhB"}
@@ -1,97 +0,0 @@
1
- import { computeHealthScore } from '../computeHealthScore.js';
2
- import { normalizePath } from '../helpers/normalizePath.js';
3
- /**
4
- * Creates a JSON output for the scan results.
5
- * @param scanResult - The result of the scan.
6
- * @param comparedAgainst - The file being compared against.
7
- * @returns The JSON output.
8
- */
9
- export function createJsonOutput(scanResult, comparedAgainst) {
10
- const output = {};
11
- // Add comparison info if we compared against a file
12
- if (comparedAgainst) {
13
- output.comparedAgainst = comparedAgainst;
14
- }
15
- output.stats = scanResult.stats;
16
- if (scanResult.secrets?.length) {
17
- output.secrets = scanResult.secrets.map((s) => ({
18
- file: normalizePath(s.file),
19
- line: s.line,
20
- message: s.message,
21
- snippet: s.snippet,
22
- }));
23
- }
24
- if (scanResult.missing?.length) {
25
- const missingSet = new Set(scanResult.missing);
26
- const usagesByVariable = new Map();
27
- for (const usage of scanResult.used) {
28
- if (missingSet.has(usage.variable)) {
29
- const existing = usagesByVariable.get(usage.variable) ?? [];
30
- existing.push(usage);
31
- usagesByVariable.set(usage.variable, existing);
32
- }
33
- }
34
- output.missing = scanResult.missing.map((variable) => ({
35
- variable,
36
- usages: (usagesByVariable.get(variable) ?? []).map((u) => ({
37
- file: normalizePath(u.file),
38
- line: u.line,
39
- pattern: u.pattern,
40
- context: u.context,
41
- })),
42
- }));
43
- }
44
- if (scanResult.unused?.length) {
45
- output.unused = scanResult.unused;
46
- }
47
- if (scanResult.uppercaseWarnings?.length) {
48
- output.uppercaseWarnings = scanResult.uppercaseWarnings.map((w) => ({
49
- key: w.key,
50
- suggestion: w.suggestion,
51
- }));
52
- }
53
- if (scanResult.inconsistentNamingWarnings?.length) {
54
- output.inconsistentNamingWarnings =
55
- scanResult.inconsistentNamingWarnings.map((w) => ({
56
- key1: w.key1,
57
- key2: w.key2,
58
- suggestion: w.suggestion,
59
- }));
60
- }
61
- if (scanResult.frameworkWarnings?.length) {
62
- output.frameworkWarnings = scanResult.frameworkWarnings.map((w) => ({
63
- variable: w.variable,
64
- reason: w.reason,
65
- file: normalizePath(w.file),
66
- line: w.line,
67
- framework: w.framework,
68
- }));
69
- }
70
- const hasDuplicates = (scanResult.duplicates.env?.length ?? 0) > 0 ||
71
- (scanResult.duplicates.example?.length ?? 0) > 0;
72
- if (hasDuplicates) {
73
- output.duplicates = scanResult.duplicates;
74
- }
75
- // Add logged variables if any
76
- if (scanResult.logged?.length) {
77
- output.logged = scanResult.logged.map((l) => ({
78
- variable: l.variable,
79
- file: normalizePath(l.file),
80
- line: l.line,
81
- context: l.context,
82
- }));
83
- }
84
- // Example warnings
85
- if (scanResult.exampleWarnings?.length) {
86
- output.exampleWarnings = scanResult.exampleWarnings.map((w) => ({
87
- key: w.key,
88
- value: w.value,
89
- reason: w.reason,
90
- severity: w.severity,
91
- }));
92
- }
93
- const healthScore = computeHealthScore(scanResult);
94
- output.healthScore = healthScore;
95
- return output;
96
- }
97
- //# sourceMappingURL=scanJsonOutput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scanJsonOutput.js","sourceRoot":"","sources":["../../../../src/core/scan/scanJsonOutput.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- export type SecretSeverity = 'high' | 'medium' | 'low';
2
- export type SecretFinding = {
3
- file: string;
4
- line: number;
5
- kind: 'pattern' | 'entropy';
6
- message: string;
7
- snippet: string;
8
- severity: SecretSeverity;
9
- };
10
- export declare const SUSPICIOUS_KEYS: RegExp;
11
- export declare const PROVIDER_PATTERNS: RegExp[];
12
- /**
13
- * Checks if a line has an ignore comment
14
- * fx: // dotenv-diff-ignore or /* dotenv-diff-ignore *\/ or <!-- dotenv-diff-ignore -->
15
- * @param line - The line to check
16
- * @returns True if the line should be ignored
17
- */
18
- export declare function hasIgnoreComment(line: string): boolean;
19
- /**
20
- * Detects secrets in the source code of a file.
21
- * @param file - The file path to check.
22
- * @param source - The source code to scan for secrets.
23
- * @returns An array of secret findings.
24
- */
25
- export declare function detectSecretsInSource(file: string, source: string, opts?: {
26
- ignoreUrls?: string[];
27
- }): SecretFinding[];
28
- //# sourceMappingURL=secretDetectors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"secretDetectors.d.ts","sourceRoot":"","sources":["../../../../src/core/scan/secretDetectors.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAGvD,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,cAAc,CAAC;CAC1B,CAAC;AAGF,eAAO,MAAM,eAAe,QAC6E,CAAC;AAG1G,eAAO,MAAM,iBAAiB,EAAE,MAAM,EAYrC,CAAC;AAiEF;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAUtD;AAmGD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GAC/B,aAAa,EAAE,CA4HjB"}