driftdetect-core 0.6.1 → 0.7.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.
Files changed (141) hide show
  1. package/LICENSE +21 -0
  2. package/dist/constants/analysis/categorizer.d.ts +27 -0
  3. package/dist/constants/analysis/categorizer.d.ts.map +1 -0
  4. package/dist/constants/analysis/categorizer.js +364 -0
  5. package/dist/constants/analysis/categorizer.js.map +1 -0
  6. package/dist/constants/analysis/consistency-analyzer.d.ts +77 -0
  7. package/dist/constants/analysis/consistency-analyzer.d.ts.map +1 -0
  8. package/dist/constants/analysis/consistency-analyzer.js +176 -0
  9. package/dist/constants/analysis/consistency-analyzer.js.map +1 -0
  10. package/dist/constants/analysis/dead-constant-detector.d.ts +79 -0
  11. package/dist/constants/analysis/dead-constant-detector.d.ts.map +1 -0
  12. package/dist/constants/analysis/dead-constant-detector.js +242 -0
  13. package/dist/constants/analysis/dead-constant-detector.js.map +1 -0
  14. package/dist/constants/analysis/magic-detector.d.ts +116 -0
  15. package/dist/constants/analysis/magic-detector.d.ts.map +1 -0
  16. package/dist/constants/analysis/magic-detector.js +425 -0
  17. package/dist/constants/analysis/magic-detector.js.map +1 -0
  18. package/dist/constants/analysis/reference-finder.d.ts +87 -0
  19. package/dist/constants/analysis/reference-finder.d.ts.map +1 -0
  20. package/dist/constants/analysis/reference-finder.js +269 -0
  21. package/dist/constants/analysis/reference-finder.js.map +1 -0
  22. package/dist/constants/analysis/security-scanner.d.ts +115 -0
  23. package/dist/constants/analysis/security-scanner.d.ts.map +1 -0
  24. package/dist/constants/analysis/security-scanner.js +429 -0
  25. package/dist/constants/analysis/security-scanner.js.map +1 -0
  26. package/dist/constants/extractors/base-extractor.d.ts +97 -0
  27. package/dist/constants/extractors/base-extractor.d.ts.map +1 -0
  28. package/dist/constants/extractors/base-extractor.js +285 -0
  29. package/dist/constants/extractors/base-extractor.js.map +1 -0
  30. package/dist/constants/extractors/regex/base-regex.d.ts +67 -0
  31. package/dist/constants/extractors/regex/base-regex.d.ts.map +1 -0
  32. package/dist/constants/extractors/regex/base-regex.js +209 -0
  33. package/dist/constants/extractors/regex/base-regex.js.map +1 -0
  34. package/dist/constants/extractors/regex/csharp-regex.d.ts +39 -0
  35. package/dist/constants/extractors/regex/csharp-regex.d.ts.map +1 -0
  36. package/dist/constants/extractors/regex/csharp-regex.js +316 -0
  37. package/dist/constants/extractors/regex/csharp-regex.js.map +1 -0
  38. package/dist/constants/extractors/regex/go-regex.d.ts +40 -0
  39. package/dist/constants/extractors/regex/go-regex.d.ts.map +1 -0
  40. package/dist/constants/extractors/regex/go-regex.js +297 -0
  41. package/dist/constants/extractors/regex/go-regex.js.map +1 -0
  42. package/dist/constants/extractors/regex/java-regex.d.ts +43 -0
  43. package/dist/constants/extractors/regex/java-regex.d.ts.map +1 -0
  44. package/dist/constants/extractors/regex/java-regex.js +276 -0
  45. package/dist/constants/extractors/regex/java-regex.js.map +1 -0
  46. package/dist/constants/extractors/regex/php-regex.d.ts +39 -0
  47. package/dist/constants/extractors/regex/php-regex.d.ts.map +1 -0
  48. package/dist/constants/extractors/regex/php-regex.js +270 -0
  49. package/dist/constants/extractors/regex/php-regex.js.map +1 -0
  50. package/dist/constants/extractors/regex/python-regex.d.ts +39 -0
  51. package/dist/constants/extractors/regex/python-regex.d.ts.map +1 -0
  52. package/dist/constants/extractors/regex/python-regex.js +287 -0
  53. package/dist/constants/extractors/regex/python-regex.js.map +1 -0
  54. package/dist/constants/extractors/regex/typescript-regex.d.ts +35 -0
  55. package/dist/constants/extractors/regex/typescript-regex.d.ts.map +1 -0
  56. package/dist/constants/extractors/regex/typescript-regex.js +313 -0
  57. package/dist/constants/extractors/regex/typescript-regex.js.map +1 -0
  58. package/dist/constants/index.d.ts +26 -0
  59. package/dist/constants/index.d.ts.map +1 -0
  60. package/dist/constants/index.js +36 -0
  61. package/dist/constants/index.js.map +1 -0
  62. package/dist/constants/integration/callgraph-adapter.d.ts +167 -0
  63. package/dist/constants/integration/callgraph-adapter.d.ts.map +1 -0
  64. package/dist/constants/integration/callgraph-adapter.js +287 -0
  65. package/dist/constants/integration/callgraph-adapter.js.map +1 -0
  66. package/dist/constants/integration/index.d.ts +10 -0
  67. package/dist/constants/integration/index.d.ts.map +1 -0
  68. package/dist/constants/integration/index.js +13 -0
  69. package/dist/constants/integration/index.js.map +1 -0
  70. package/dist/constants/integration/pattern-adapter.d.ts +171 -0
  71. package/dist/constants/integration/pattern-adapter.d.ts.map +1 -0
  72. package/dist/constants/integration/pattern-adapter.js +331 -0
  73. package/dist/constants/integration/pattern-adapter.js.map +1 -0
  74. package/dist/constants/integration/scanner-adapter.d.ts +153 -0
  75. package/dist/constants/integration/scanner-adapter.d.ts.map +1 -0
  76. package/dist/constants/integration/scanner-adapter.js +337 -0
  77. package/dist/constants/integration/scanner-adapter.js.map +1 -0
  78. package/dist/constants/store/constant-store.d.ts +117 -0
  79. package/dist/constants/store/constant-store.d.ts.map +1 -0
  80. package/dist/constants/store/constant-store.js +367 -0
  81. package/dist/constants/store/constant-store.js.map +1 -0
  82. package/dist/constants/types.d.ts +423 -0
  83. package/dist/constants/types.d.ts.map +1 -0
  84. package/dist/constants/types.js +43 -0
  85. package/dist/constants/types.js.map +1 -0
  86. package/dist/constraints/store/constraint-store.d.ts.map +1 -1
  87. package/dist/constraints/store/constraint-store.js +37 -2
  88. package/dist/constraints/store/constraint-store.js.map +1 -1
  89. package/dist/environment/env-scanner.d.ts +53 -0
  90. package/dist/environment/env-scanner.d.ts.map +1 -0
  91. package/dist/environment/env-scanner.js +290 -0
  92. package/dist/environment/env-scanner.js.map +1 -0
  93. package/dist/environment/env-store.d.ts +70 -0
  94. package/dist/environment/env-store.d.ts.map +1 -0
  95. package/dist/environment/env-store.js +201 -0
  96. package/dist/environment/env-store.js.map +1 -0
  97. package/dist/environment/extractors/base-env-extractor.d.ts +56 -0
  98. package/dist/environment/extractors/base-env-extractor.d.ts.map +1 -0
  99. package/dist/environment/extractors/base-env-extractor.js +74 -0
  100. package/dist/environment/extractors/base-env-extractor.js.map +1 -0
  101. package/dist/environment/extractors/csharp-env-extractor.d.ts +49 -0
  102. package/dist/environment/extractors/csharp-env-extractor.d.ts.map +1 -0
  103. package/dist/environment/extractors/csharp-env-extractor.js +240 -0
  104. package/dist/environment/extractors/csharp-env-extractor.js.map +1 -0
  105. package/dist/environment/extractors/go-env-extractor.d.ts +53 -0
  106. package/dist/environment/extractors/go-env-extractor.d.ts.map +1 -0
  107. package/dist/environment/extractors/go-env-extractor.js +267 -0
  108. package/dist/environment/extractors/go-env-extractor.js.map +1 -0
  109. package/dist/environment/extractors/index.d.ts +13 -0
  110. package/dist/environment/extractors/index.d.ts.map +1 -0
  111. package/dist/environment/extractors/index.js +13 -0
  112. package/dist/environment/extractors/index.js.map +1 -0
  113. package/dist/environment/extractors/java-env-extractor.d.ts +58 -0
  114. package/dist/environment/extractors/java-env-extractor.d.ts.map +1 -0
  115. package/dist/environment/extractors/java-env-extractor.js +219 -0
  116. package/dist/environment/extractors/java-env-extractor.js.map +1 -0
  117. package/dist/environment/extractors/php-env-extractor.d.ts +58 -0
  118. package/dist/environment/extractors/php-env-extractor.d.ts.map +1 -0
  119. package/dist/environment/extractors/php-env-extractor.js +231 -0
  120. package/dist/environment/extractors/php-env-extractor.js.map +1 -0
  121. package/dist/environment/extractors/python-env-extractor.d.ts +50 -0
  122. package/dist/environment/extractors/python-env-extractor.d.ts.map +1 -0
  123. package/dist/environment/extractors/python-env-extractor.js +219 -0
  124. package/dist/environment/extractors/python-env-extractor.js.map +1 -0
  125. package/dist/environment/extractors/typescript-env-extractor.d.ts +54 -0
  126. package/dist/environment/extractors/typescript-env-extractor.d.ts.map +1 -0
  127. package/dist/environment/extractors/typescript-env-extractor.js +228 -0
  128. package/dist/environment/extractors/typescript-env-extractor.js.map +1 -0
  129. package/dist/environment/index.d.ts +11 -0
  130. package/dist/environment/index.d.ts.map +1 -0
  131. package/dist/environment/index.js +15 -0
  132. package/dist/environment/index.js.map +1 -0
  133. package/dist/environment/types.d.ts +145 -0
  134. package/dist/environment/types.d.ts.map +1 -0
  135. package/dist/environment/types.js +84 -0
  136. package/dist/environment/types.js.map +1 -0
  137. package/dist/index.d.ts +4 -0
  138. package/dist/index.d.ts.map +1 -1
  139. package/dist/index.js +40 -0
  140. package/dist/index.js.map +1 -1
  141. package/package.json +13 -13
@@ -0,0 +1 @@
1
+ {"version":3,"file":"php-regex.js","sourceRoot":"","sources":["../../../../src/constants/extractors/regex/php-regex.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Python Constant Regex Extractor
3
+ *
4
+ * Regex-based extraction for Python constants and enums.
5
+ * Used as fallback when tree-sitter is unavailable.
6
+ */
7
+ import type { ConstantExtraction, EnumExtraction, ConstantKind } from '../../types.js';
8
+ import { BaseConstantRegexExtractor } from './base-regex.js';
9
+ /**
10
+ * Python constant regex extractor
11
+ */
12
+ export declare class PythonConstantRegexExtractor extends BaseConstantRegexExtractor {
13
+ readonly language: "python";
14
+ /**
15
+ * Extract constants from Python source
16
+ */
17
+ protected extractConstants(source: string, filePath: string): ConstantExtraction[];
18
+ /**
19
+ * Extract enums from Python source
20
+ */
21
+ protected extractEnums(source: string, filePath: string): EnumExtraction[];
22
+ /**
23
+ * Parse Python enum members
24
+ */
25
+ private parsePythonEnumMembers;
26
+ /**
27
+ * Extract value from Python literal
28
+ */
29
+ private extractPythonValue;
30
+ /**
31
+ * Override kind inference for Python
32
+ */
33
+ protected inferKind(value: string): ConstantKind;
34
+ /**
35
+ * Find the containing class name for a position
36
+ */
37
+ private findContainingClass;
38
+ }
39
+ //# sourceMappingURL=python-regex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-regex.d.ts","sourceRoot":"","sources":["../../../../src/constants/extractors/regex/python-regex.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EAEd,YAAY,EACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAE7D;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,0BAA0B;IAC1E,QAAQ,CAAC,QAAQ,EAAG,QAAQ,CAAU;IAEtC;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,EAAE;IA+GlF;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE;IA+C1E;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAyD9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiC1B;;OAEG;cACgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY;IA6BzD;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAY5B"}
@@ -0,0 +1,287 @@
1
+ /**
2
+ * Python Constant Regex Extractor
3
+ *
4
+ * Regex-based extraction for Python constants and enums.
5
+ * Used as fallback when tree-sitter is unavailable.
6
+ */
7
+ import { BaseConstantRegexExtractor } from './base-regex.js';
8
+ /**
9
+ * Python constant regex extractor
10
+ */
11
+ export class PythonConstantRegexExtractor extends BaseConstantRegexExtractor {
12
+ language = 'python';
13
+ /**
14
+ * Extract constants from Python source
15
+ */
16
+ extractConstants(source, filePath) {
17
+ const constants = [];
18
+ let match;
19
+ // Pattern 1: Module-level UPPER_CASE assignments
20
+ // MAX_RETRIES = 3
21
+ // API_URL = "https://api.example.com"
22
+ const moduleConstPattern = /^([A-Z][A-Z0-9_]*)\s*(?::\s*([^=]+?))?\s*=\s*(.+?)$/gm;
23
+ while ((match = moduleConstPattern.exec(source)) !== null) {
24
+ const name = match[1];
25
+ if (!name)
26
+ continue;
27
+ const typeHint = match[2]?.trim();
28
+ const rawValue = match[3]?.trim();
29
+ if (!rawValue)
30
+ continue;
31
+ const line = this.getLineNumber(source, match.index);
32
+ const column = this.getColumnNumber(source, match.index);
33
+ // Skip if inside a class or function (check indentation)
34
+ const lineStart = source.lastIndexOf('\n', match.index) + 1;
35
+ const indent = match.index - lineStart;
36
+ if (indent > 0) {
37
+ continue;
38
+ }
39
+ // Skip if it's a type alias or complex expression
40
+ if (rawValue.includes('TypeVar') || rawValue.includes('Generic')) {
41
+ continue;
42
+ }
43
+ const kind = this.inferKind(rawValue);
44
+ const value = this.extractPythonValue(rawValue, kind);
45
+ const docComment = this.extractDocComment(source, line);
46
+ // Check for Final type hint
47
+ const isFinal = typeHint?.includes('Final') ?? false;
48
+ constants.push({
49
+ id: this.generateId(filePath, name, line),
50
+ name,
51
+ qualifiedName: name,
52
+ file: filePath,
53
+ line,
54
+ column,
55
+ endLine: line,
56
+ language: this.language,
57
+ kind,
58
+ category: 'uncategorized',
59
+ value,
60
+ rawValue: this.truncateValue(rawValue),
61
+ isExported: true, // Python module-level is always "exported"
62
+ decorators: [],
63
+ modifiers: isFinal ? ['final'] : [],
64
+ confidence: 0.75,
65
+ ...(typeHint ? { type: typeHint } : {}),
66
+ ...(docComment ? { docComment } : {}),
67
+ });
68
+ }
69
+ // Pattern 2: Class-level constants (inside class body)
70
+ const classConstPattern = /^(\s{4}|\t)([A-Z][A-Z0-9_]*)\s*(?::\s*([^=]+?))?\s*=\s*(.+?)$/gm;
71
+ while ((match = classConstPattern.exec(source)) !== null) {
72
+ const name = match[2];
73
+ if (!name)
74
+ continue;
75
+ const typeHint = match[3]?.trim();
76
+ const rawValue = match[4]?.trim();
77
+ if (!rawValue)
78
+ continue;
79
+ const line = this.getLineNumber(source, match.index);
80
+ const column = this.getColumnNumber(source, match.index);
81
+ // Find containing class
82
+ const className = this.findContainingClass(source, match.index);
83
+ if (!className) {
84
+ continue;
85
+ }
86
+ const kind = this.inferKind(rawValue);
87
+ const value = this.extractPythonValue(rawValue, kind);
88
+ const docComment = this.extractDocComment(source, line);
89
+ constants.push({
90
+ id: this.generateId(filePath, `${className}.${name}`, line),
91
+ name,
92
+ qualifiedName: `${className}.${name}`,
93
+ file: filePath,
94
+ line,
95
+ column,
96
+ endLine: line,
97
+ language: this.language,
98
+ kind: kind === 'primitive' ? 'class_constant' : kind,
99
+ category: 'uncategorized',
100
+ value,
101
+ rawValue: this.truncateValue(rawValue),
102
+ isExported: true,
103
+ parentName: className,
104
+ parentType: 'class',
105
+ decorators: [],
106
+ modifiers: [],
107
+ confidence: 0.7,
108
+ ...(typeHint ? { type: typeHint } : {}),
109
+ ...(docComment ? { docComment } : {}),
110
+ });
111
+ }
112
+ return constants;
113
+ }
114
+ /**
115
+ * Extract enums from Python source
116
+ */
117
+ extractEnums(source, filePath) {
118
+ const enums = [];
119
+ // Pattern: class EnumName(Enum): or class EnumName(IntEnum): etc.
120
+ const enumPattern = /^class\s+(\w+)\s*\(\s*(Enum|IntEnum|StrEnum|Flag|IntFlag)\s*\)\s*:/gm;
121
+ let match;
122
+ while ((match = enumPattern.exec(source)) !== null) {
123
+ const name = match[1];
124
+ if (!name)
125
+ continue;
126
+ const baseType = match[2];
127
+ const line = this.getLineNumber(source, match.index);
128
+ const docComment = this.extractDocComment(source, line);
129
+ // Find the enum body
130
+ const bodyStart = match.index + match[0].length;
131
+ const members = this.parsePythonEnumMembers(source, bodyStart, line);
132
+ const lastMember = members[members.length - 1];
133
+ const endLine = lastMember ? lastMember.line : line;
134
+ const isStringEnum = baseType === 'StrEnum' ||
135
+ members.some(m => typeof m.value === 'string' && m.value.startsWith('"'));
136
+ const isFlags = baseType === 'Flag' || baseType === 'IntFlag';
137
+ enums.push({
138
+ id: this.generateId(filePath, name, line),
139
+ name,
140
+ qualifiedName: name,
141
+ file: filePath,
142
+ line,
143
+ endLine,
144
+ language: this.language,
145
+ isExported: true,
146
+ members,
147
+ isFlags,
148
+ isStringEnum,
149
+ backingType: isStringEnum ? 'str' : 'int',
150
+ decorators: [],
151
+ modifiers: [],
152
+ confidence: 0.8,
153
+ ...(docComment ? { docComment } : {}),
154
+ });
155
+ }
156
+ return enums;
157
+ }
158
+ /**
159
+ * Parse Python enum members
160
+ */
161
+ parsePythonEnumMembers(source, startIndex, startLine) {
162
+ const members = [];
163
+ const lines = source.slice(startIndex).split('\n');
164
+ let currentLine = startLine;
165
+ let autoValue = 0;
166
+ for (const line of lines) {
167
+ currentLine++;
168
+ const trimmed = line.trim();
169
+ // Stop at next class or function definition or unindented line
170
+ if (trimmed.startsWith('class ') || trimmed.startsWith('def ') ||
171
+ (trimmed.length > 0 && !line.startsWith(' ') && !line.startsWith('\t'))) {
172
+ break;
173
+ }
174
+ // Skip empty lines, comments, docstrings
175
+ if (!trimmed || trimmed.startsWith('#') || trimmed.startsWith('"""') || trimmed.startsWith("'''")) {
176
+ continue;
177
+ }
178
+ // Match enum member: NAME = value or NAME = auto()
179
+ const memberMatch = trimmed.match(/^([A-Z][A-Z0-9_]*)\s*=\s*(.+?)(?:\s*#.*)?$/);
180
+ if (memberMatch) {
181
+ const memberName = memberMatch[1];
182
+ if (!memberName)
183
+ continue;
184
+ const rawValue = memberMatch[2]?.trim();
185
+ let value;
186
+ let isAutoValue = false;
187
+ if (rawValue === 'auto()') {
188
+ value = autoValue;
189
+ autoValue++;
190
+ isAutoValue = true;
191
+ }
192
+ else if (rawValue?.startsWith('"') || rawValue?.startsWith("'")) {
193
+ value = rawValue;
194
+ }
195
+ else if (rawValue && /^-?\d+$/.test(rawValue)) {
196
+ value = parseInt(rawValue, 10);
197
+ autoValue = value + 1;
198
+ }
199
+ else {
200
+ value = rawValue;
201
+ }
202
+ members.push({
203
+ name: memberName,
204
+ ...(value !== undefined ? { value } : {}),
205
+ line: currentLine,
206
+ isAutoValue,
207
+ });
208
+ }
209
+ }
210
+ return members;
211
+ }
212
+ /**
213
+ * Extract value from Python literal
214
+ */
215
+ extractPythonValue(rawValue, kind) {
216
+ if (kind === 'object' || kind === 'array' || kind === 'computed') {
217
+ return null;
218
+ }
219
+ // String literals
220
+ if (rawValue.startsWith('"""') || rawValue.startsWith("'''")) {
221
+ return rawValue.slice(3, -3);
222
+ }
223
+ if (rawValue.startsWith('"') || rawValue.startsWith("'")) {
224
+ return this.extractStringValue(rawValue);
225
+ }
226
+ if (rawValue.startsWith('f"') || rawValue.startsWith("f'")) {
227
+ return rawValue.slice(2, -1); // f-string
228
+ }
229
+ // Numbers
230
+ const num = this.extractNumericValue(rawValue);
231
+ if (num !== null) {
232
+ return num;
233
+ }
234
+ // Booleans
235
+ if (rawValue === 'True')
236
+ return true;
237
+ if (rawValue === 'False')
238
+ return false;
239
+ if (rawValue === 'None')
240
+ return null;
241
+ return null;
242
+ }
243
+ /**
244
+ * Override kind inference for Python
245
+ */
246
+ inferKind(value) {
247
+ const trimmed = value.trim();
248
+ // Dict literal
249
+ if (trimmed.startsWith('{') && !trimmed.startsWith('{%')) {
250
+ return 'object';
251
+ }
252
+ // List or tuple
253
+ if (trimmed.startsWith('[') || trimmed.startsWith('(')) {
254
+ return 'array';
255
+ }
256
+ // String
257
+ if (trimmed.startsWith('"') || trimmed.startsWith("'") ||
258
+ trimmed.startsWith('"""') || trimmed.startsWith("'''") ||
259
+ trimmed.startsWith('f"') || trimmed.startsWith("f'")) {
260
+ return 'primitive';
261
+ }
262
+ // Number
263
+ if (/^-?\d+(\.\d+)?$/.test(trimmed)) {
264
+ return 'primitive';
265
+ }
266
+ // Boolean/None
267
+ if (trimmed === 'True' || trimmed === 'False' || trimmed === 'None') {
268
+ return 'primitive';
269
+ }
270
+ // Function call or complex expression
271
+ return 'computed';
272
+ }
273
+ /**
274
+ * Find the containing class name for a position
275
+ */
276
+ findContainingClass(source, position) {
277
+ const beforePosition = source.slice(0, position);
278
+ const classMatches = [...beforePosition.matchAll(/^class\s+(\w+)/gm)];
279
+ if (classMatches.length === 0) {
280
+ return null;
281
+ }
282
+ // Get the last class definition before this position
283
+ const lastMatch = classMatches[classMatches.length - 1];
284
+ return lastMatch?.[1] ?? null;
285
+ }
286
+ }
287
+ //# sourceMappingURL=python-regex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-regex.js","sourceRoot":"","sources":["../../../../src/constants/extractors/regex/python-regex.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * TypeScript/JavaScript Constant Regex Extractor
3
+ *
4
+ * Regex-based extraction for TypeScript and JavaScript constants.
5
+ * Used as fallback when tree-sitter is unavailable.
6
+ */
7
+ import type { ConstantExtraction, EnumExtraction } from '../../types.js';
8
+ import { BaseConstantRegexExtractor } from './base-regex.js';
9
+ /**
10
+ * TypeScript/JavaScript constant regex extractor
11
+ */
12
+ export declare class TypeScriptConstantRegexExtractor extends BaseConstantRegexExtractor {
13
+ readonly language: "typescript";
14
+ /**
15
+ * Extract constants from TypeScript/JavaScript source
16
+ */
17
+ protected extractConstants(source: string, filePath: string): ConstantExtraction[];
18
+ /**
19
+ * Extract enums from TypeScript source
20
+ */
21
+ protected extractEnums(source: string, filePath: string): EnumExtraction[];
22
+ /**
23
+ * Parse enum members from body
24
+ */
25
+ private parseEnumMembers;
26
+ /**
27
+ * Extract value based on kind
28
+ */
29
+ private extractValue;
30
+ /**
31
+ * Find the containing class name for a position
32
+ */
33
+ private findContainingClass;
34
+ }
35
+ //# sourceMappingURL=typescript-regex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typescript-regex.d.ts","sourceRoot":"","sources":["../../../../src/constants/extractors/regex/typescript-regex.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EAGf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAE7D;;GAEG;AACH,qBAAa,gCAAiC,SAAQ,0BAA0B;IAC9E,QAAQ,CAAC,QAAQ,EAAG,YAAY,CAAU;IAE1C;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,EAAE;IA4LlF;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE;IA4C1E;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAkDxB;;OAEG;IACH,OAAO,CAAC,YAAY;IAyBpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAU5B"}