driftdetect-core 0.1.0
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/dist/analyzers/ast-analyzer.d.ts +251 -0
- package/dist/analyzers/ast-analyzer.d.ts.map +1 -0
- package/dist/analyzers/ast-analyzer.js +548 -0
- package/dist/analyzers/ast-analyzer.js.map +1 -0
- package/dist/analyzers/flow-analyzer.d.ts +241 -0
- package/dist/analyzers/flow-analyzer.d.ts.map +1 -0
- package/dist/analyzers/flow-analyzer.js +1219 -0
- package/dist/analyzers/flow-analyzer.js.map +1 -0
- package/dist/analyzers/index.d.ts +18 -0
- package/dist/analyzers/index.d.ts.map +1 -0
- package/dist/analyzers/index.js +19 -0
- package/dist/analyzers/index.js.map +1 -0
- package/dist/analyzers/semantic-analyzer.d.ts +252 -0
- package/dist/analyzers/semantic-analyzer.d.ts.map +1 -0
- package/dist/analyzers/semantic-analyzer.js +1182 -0
- package/dist/analyzers/semantic-analyzer.js.map +1 -0
- package/dist/analyzers/type-analyzer.d.ts +289 -0
- package/dist/analyzers/type-analyzer.d.ts.map +1 -0
- package/dist/analyzers/type-analyzer.js +1269 -0
- package/dist/analyzers/type-analyzer.js.map +1 -0
- package/dist/analyzers/types.d.ts +537 -0
- package/dist/analyzers/types.d.ts.map +1 -0
- package/dist/analyzers/types.js +11 -0
- package/dist/analyzers/types.js.map +1 -0
- package/dist/config/config-loader.d.ts +166 -0
- package/dist/config/config-loader.d.ts.map +1 -0
- package/dist/config/config-loader.js +429 -0
- package/dist/config/config-loader.js.map +1 -0
- package/dist/config/config-validator.d.ts +204 -0
- package/dist/config/config-validator.d.ts.map +1 -0
- package/dist/config/config-validator.js +632 -0
- package/dist/config/config-validator.js.map +1 -0
- package/dist/config/defaults.d.ts +8 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +26 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/index.d.ts +10 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +10 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/types.d.ts +47 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +7 -0
- package/dist/config/types.js.map +1 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +39 -0
- package/dist/index.js.map +1 -0
- package/dist/manifest/exporter.d.ts +21 -0
- package/dist/manifest/exporter.d.ts.map +1 -0
- package/dist/manifest/exporter.js +339 -0
- package/dist/manifest/exporter.js.map +1 -0
- package/dist/manifest/index.d.ts +14 -0
- package/dist/manifest/index.d.ts.map +1 -0
- package/dist/manifest/index.js +15 -0
- package/dist/manifest/index.js.map +1 -0
- package/dist/manifest/manifest-store.d.ts +111 -0
- package/dist/manifest/manifest-store.d.ts.map +1 -0
- package/dist/manifest/manifest-store.js +418 -0
- package/dist/manifest/manifest-store.js.map +1 -0
- package/dist/manifest/types.d.ts +238 -0
- package/dist/manifest/types.d.ts.map +1 -0
- package/dist/manifest/types.js +11 -0
- package/dist/manifest/types.js.map +1 -0
- package/dist/matcher/confidence-scorer.d.ts +188 -0
- package/dist/matcher/confidence-scorer.d.ts.map +1 -0
- package/dist/matcher/confidence-scorer.js +302 -0
- package/dist/matcher/confidence-scorer.js.map +1 -0
- package/dist/matcher/index.d.ts +24 -0
- package/dist/matcher/index.d.ts.map +1 -0
- package/dist/matcher/index.js +26 -0
- package/dist/matcher/index.js.map +1 -0
- package/dist/matcher/outlier-detector.d.ts +252 -0
- package/dist/matcher/outlier-detector.d.ts.map +1 -0
- package/dist/matcher/outlier-detector.js +544 -0
- package/dist/matcher/outlier-detector.js.map +1 -0
- package/dist/matcher/pattern-matcher.d.ts +169 -0
- package/dist/matcher/pattern-matcher.d.ts.map +1 -0
- package/dist/matcher/pattern-matcher.js +692 -0
- package/dist/matcher/pattern-matcher.js.map +1 -0
- package/dist/matcher/types.d.ts +476 -0
- package/dist/matcher/types.d.ts.map +1 -0
- package/dist/matcher/types.js +36 -0
- package/dist/matcher/types.js.map +1 -0
- package/dist/parsers/base-parser.d.ts +282 -0
- package/dist/parsers/base-parser.d.ts.map +1 -0
- package/dist/parsers/base-parser.js +421 -0
- package/dist/parsers/base-parser.js.map +1 -0
- package/dist/parsers/css-parser.d.ts +225 -0
- package/dist/parsers/css-parser.d.ts.map +1 -0
- package/dist/parsers/css-parser.js +477 -0
- package/dist/parsers/css-parser.js.map +1 -0
- package/dist/parsers/index.d.ts +15 -0
- package/dist/parsers/index.d.ts.map +1 -0
- package/dist/parsers/index.js +15 -0
- package/dist/parsers/index.js.map +1 -0
- package/dist/parsers/json-parser.d.ts +219 -0
- package/dist/parsers/json-parser.d.ts.map +1 -0
- package/dist/parsers/json-parser.js +602 -0
- package/dist/parsers/json-parser.js.map +1 -0
- package/dist/parsers/markdown-parser.d.ts +276 -0
- package/dist/parsers/markdown-parser.d.ts.map +1 -0
- package/dist/parsers/markdown-parser.js +731 -0
- package/dist/parsers/markdown-parser.js.map +1 -0
- package/dist/parsers/parser-manager.d.ts +294 -0
- package/dist/parsers/parser-manager.d.ts.map +1 -0
- package/dist/parsers/parser-manager.js +738 -0
- package/dist/parsers/parser-manager.js.map +1 -0
- package/dist/parsers/python-parser.d.ts +204 -0
- package/dist/parsers/python-parser.d.ts.map +1 -0
- package/dist/parsers/python-parser.js +517 -0
- package/dist/parsers/python-parser.js.map +1 -0
- package/dist/parsers/types.d.ts +43 -0
- package/dist/parsers/types.d.ts.map +1 -0
- package/dist/parsers/types.js +7 -0
- package/dist/parsers/types.js.map +1 -0
- package/dist/parsers/typescript-parser.d.ts +264 -0
- package/dist/parsers/typescript-parser.d.ts.map +1 -0
- package/dist/parsers/typescript-parser.js +658 -0
- package/dist/parsers/typescript-parser.js.map +1 -0
- package/dist/rules/evaluator.d.ts +305 -0
- package/dist/rules/evaluator.d.ts.map +1 -0
- package/dist/rules/evaluator.js +579 -0
- package/dist/rules/evaluator.js.map +1 -0
- package/dist/rules/index.d.ts +13 -0
- package/dist/rules/index.d.ts.map +1 -0
- package/dist/rules/index.js +13 -0
- package/dist/rules/index.js.map +1 -0
- package/dist/rules/quick-fix-generator.d.ts +334 -0
- package/dist/rules/quick-fix-generator.d.ts.map +1 -0
- package/dist/rules/quick-fix-generator.js +1075 -0
- package/dist/rules/quick-fix-generator.js.map +1 -0
- package/dist/rules/rule-engine.d.ts +241 -0
- package/dist/rules/rule-engine.d.ts.map +1 -0
- package/dist/rules/rule-engine.js +585 -0
- package/dist/rules/rule-engine.js.map +1 -0
- package/dist/rules/severity-manager.d.ts +394 -0
- package/dist/rules/severity-manager.d.ts.map +1 -0
- package/dist/rules/severity-manager.js +619 -0
- package/dist/rules/severity-manager.js.map +1 -0
- package/dist/rules/types.d.ts +370 -0
- package/dist/rules/types.d.ts.map +1 -0
- package/dist/rules/types.js +133 -0
- package/dist/rules/types.js.map +1 -0
- package/dist/rules/variant-manager.d.ts +388 -0
- package/dist/rules/variant-manager.d.ts.map +1 -0
- package/dist/rules/variant-manager.js +777 -0
- package/dist/rules/variant-manager.js.map +1 -0
- package/dist/scanner/change-detector.d.ts +164 -0
- package/dist/scanner/change-detector.d.ts.map +1 -0
- package/dist/scanner/change-detector.js +263 -0
- package/dist/scanner/change-detector.js.map +1 -0
- package/dist/scanner/dependency-graph.d.ts +270 -0
- package/dist/scanner/dependency-graph.d.ts.map +1 -0
- package/dist/scanner/dependency-graph.js +436 -0
- package/dist/scanner/dependency-graph.js.map +1 -0
- package/dist/scanner/file-walker.d.ts +127 -0
- package/dist/scanner/file-walker.d.ts.map +1 -0
- package/dist/scanner/file-walker.js +526 -0
- package/dist/scanner/file-walker.js.map +1 -0
- package/dist/scanner/index.d.ts +12 -0
- package/dist/scanner/index.d.ts.map +1 -0
- package/dist/scanner/index.js +12 -0
- package/dist/scanner/index.js.map +1 -0
- package/dist/scanner/types.d.ts +218 -0
- package/dist/scanner/types.d.ts.map +1 -0
- package/dist/scanner/types.js +10 -0
- package/dist/scanner/types.js.map +1 -0
- package/dist/scanner/worker-pool.d.ts +317 -0
- package/dist/scanner/worker-pool.d.ts.map +1 -0
- package/dist/scanner/worker-pool.js +571 -0
- package/dist/scanner/worker-pool.js.map +1 -0
- package/dist/store/cache-manager.d.ts +179 -0
- package/dist/store/cache-manager.d.ts.map +1 -0
- package/dist/store/cache-manager.js +391 -0
- package/dist/store/cache-manager.js.map +1 -0
- package/dist/store/history-store.d.ts +314 -0
- package/dist/store/history-store.d.ts.map +1 -0
- package/dist/store/history-store.js +707 -0
- package/dist/store/history-store.js.map +1 -0
- package/dist/store/index.d.ts +20 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +26 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/lock-file-manager.d.ts +202 -0
- package/dist/store/lock-file-manager.d.ts.map +1 -0
- package/dist/store/lock-file-manager.js +475 -0
- package/dist/store/lock-file-manager.js.map +1 -0
- package/dist/store/pattern-store.d.ts +289 -0
- package/dist/store/pattern-store.d.ts.map +1 -0
- package/dist/store/pattern-store.js +936 -0
- package/dist/store/pattern-store.js.map +1 -0
- package/dist/store/schema-validator.d.ts +159 -0
- package/dist/store/schema-validator.d.ts.map +1 -0
- package/dist/store/schema-validator.js +1096 -0
- package/dist/store/schema-validator.js.map +1 -0
- package/dist/store/types.d.ts +585 -0
- package/dist/store/types.d.ts.map +1 -0
- package/dist/store/types.js +82 -0
- package/dist/store/types.js.map +1 -0
- package/dist/types/analysis.d.ts +19 -0
- package/dist/types/analysis.d.ts.map +1 -0
- package/dist/types/analysis.js +5 -0
- package/dist/types/analysis.js.map +1 -0
- package/dist/types/common.d.ts +7 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +5 -0
- package/dist/types/common.js.map +1 -0
- package/dist/types/index.d.ts +12 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +10 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/patterns.d.ts +40 -0
- package/dist/types/patterns.d.ts.map +1 -0
- package/dist/types/patterns.js +7 -0
- package/dist/types/patterns.js.map +1 -0
- package/dist/types/violations.d.ts +7 -0
- package/dist/types/violations.d.ts.map +1 -0
- package/dist/types/violations.js +7 -0
- package/dist/types/violations.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* JSON Parser - JSON/YAML/JSONC parsing for AST extraction
|
|
3
|
+
*
|
|
4
|
+
* Extracts schema information, keys, types, nested structures,
|
|
5
|
+
* arrays, and objects from JSON-like files using native parsing.
|
|
6
|
+
*
|
|
7
|
+
* @requirements 3.2
|
|
8
|
+
*/
|
|
9
|
+
import { BaseParser } from './base-parser.js';
|
|
10
|
+
import type { AST, ASTNode, Language, ParseResult, Position } from './types.js';
|
|
11
|
+
/**
|
|
12
|
+
* JSON value types
|
|
13
|
+
*/
|
|
14
|
+
export type JSONValueType = 'object' | 'array' | 'string' | 'number' | 'boolean' | 'null';
|
|
15
|
+
/**
|
|
16
|
+
* Information about a JSON key-value pair
|
|
17
|
+
*/
|
|
18
|
+
export interface JSONKeyInfo {
|
|
19
|
+
/** The key name */
|
|
20
|
+
key: string;
|
|
21
|
+
/** Full path to this key (e.g., "root.nested.key") */
|
|
22
|
+
path: string;
|
|
23
|
+
/** Type of the value */
|
|
24
|
+
valueType: JSONValueType;
|
|
25
|
+
/** The actual value (for primitives) */
|
|
26
|
+
value: unknown;
|
|
27
|
+
/** Depth in the structure (0 = root level) */
|
|
28
|
+
depth: number;
|
|
29
|
+
/** Parent key path */
|
|
30
|
+
parentPath: string | null;
|
|
31
|
+
/** Start position */
|
|
32
|
+
startPosition: Position;
|
|
33
|
+
/** End position */
|
|
34
|
+
endPosition: Position;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Information about a JSON object
|
|
38
|
+
*/
|
|
39
|
+
export interface JSONObjectInfo {
|
|
40
|
+
/** Full path to this object */
|
|
41
|
+
path: string;
|
|
42
|
+
/** Keys in this object */
|
|
43
|
+
keys: string[];
|
|
44
|
+
/** Depth in the structure */
|
|
45
|
+
depth: number;
|
|
46
|
+
/** Start position */
|
|
47
|
+
startPosition: Position;
|
|
48
|
+
/** End position */
|
|
49
|
+
endPosition: Position;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Information about a JSON array
|
|
53
|
+
*/
|
|
54
|
+
export interface JSONArrayInfo {
|
|
55
|
+
/** Full path to this array */
|
|
56
|
+
path: string;
|
|
57
|
+
/** Number of elements */
|
|
58
|
+
length: number;
|
|
59
|
+
/** Types of elements in the array */
|
|
60
|
+
elementTypes: JSONValueType[];
|
|
61
|
+
/** Whether all elements are the same type */
|
|
62
|
+
isHomogeneous: boolean;
|
|
63
|
+
/** Depth in the structure */
|
|
64
|
+
depth: number;
|
|
65
|
+
/** Start position */
|
|
66
|
+
startPosition: Position;
|
|
67
|
+
/** End position */
|
|
68
|
+
endPosition: Position;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Schema information extracted from JSON
|
|
72
|
+
*/
|
|
73
|
+
export interface JSONSchemaInfo {
|
|
74
|
+
/** Root type of the JSON */
|
|
75
|
+
rootType: JSONValueType;
|
|
76
|
+
/** All key paths found */
|
|
77
|
+
keyPaths: string[];
|
|
78
|
+
/** All unique keys */
|
|
79
|
+
uniqueKeys: string[];
|
|
80
|
+
/** Maximum nesting depth */
|
|
81
|
+
maxDepth: number;
|
|
82
|
+
/** Total number of keys */
|
|
83
|
+
totalKeys: number;
|
|
84
|
+
/** Total number of arrays */
|
|
85
|
+
totalArrays: number;
|
|
86
|
+
/** Total number of objects */
|
|
87
|
+
totalObjects: number;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Extended parse result with JSON-specific information
|
|
91
|
+
*/
|
|
92
|
+
export interface JSONParseResult extends ParseResult {
|
|
93
|
+
/** Extracted keys */
|
|
94
|
+
keys: JSONKeyInfo[];
|
|
95
|
+
/** Extracted objects */
|
|
96
|
+
objects: JSONObjectInfo[];
|
|
97
|
+
/** Extracted arrays */
|
|
98
|
+
arrays: JSONArrayInfo[];
|
|
99
|
+
/** Schema information */
|
|
100
|
+
schema: JSONSchemaInfo;
|
|
101
|
+
/** The parsed JSON value */
|
|
102
|
+
parsedValue: unknown;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* JSON/YAML/JSONC parser using native parsing.
|
|
106
|
+
*
|
|
107
|
+
* Provides AST parsing and extraction of schema information,
|
|
108
|
+
* keys, types, and nested structures from JSON-like source files.
|
|
109
|
+
*
|
|
110
|
+
* @requirements 3.2 - Support JSON/YAML parsing
|
|
111
|
+
* @requirements 3.3 - Graceful degradation on parse errors
|
|
112
|
+
*/
|
|
113
|
+
export declare class JSONParser extends BaseParser {
|
|
114
|
+
readonly language: Language;
|
|
115
|
+
readonly extensions: string[];
|
|
116
|
+
/**
|
|
117
|
+
* Parse JSON/YAML source code into an AST.
|
|
118
|
+
*
|
|
119
|
+
* @param source - The source code to parse
|
|
120
|
+
* @param filePath - Optional file path for error reporting
|
|
121
|
+
* @returns JSONParseResult containing the AST and extracted information
|
|
122
|
+
*
|
|
123
|
+
* @requirements 3.2, 3.3
|
|
124
|
+
*/
|
|
125
|
+
parse(source: string, filePath?: string): JSONParseResult;
|
|
126
|
+
/**
|
|
127
|
+
* Query the AST for nodes matching a pattern.
|
|
128
|
+
*
|
|
129
|
+
* Supports querying by node type (e.g., 'Object', 'Array', 'Property', 'String', 'Number').
|
|
130
|
+
* Also supports querying by key path pattern (e.g., '$.config.*', '$.items[*]').
|
|
131
|
+
*
|
|
132
|
+
* @param ast - The AST to query
|
|
133
|
+
* @param pattern - The node type or key path pattern to search for
|
|
134
|
+
* @returns Array of matching AST nodes
|
|
135
|
+
*
|
|
136
|
+
* @requirements 3.5
|
|
137
|
+
*/
|
|
138
|
+
query(ast: AST, pattern: string): ASTNode[];
|
|
139
|
+
/**
|
|
140
|
+
* Check if a file is a YAML file based on extension.
|
|
141
|
+
*/
|
|
142
|
+
private isYamlFile;
|
|
143
|
+
/**
|
|
144
|
+
* Check if a file is a JSONC file based on extension.
|
|
145
|
+
*/
|
|
146
|
+
private isJsoncFile;
|
|
147
|
+
/**
|
|
148
|
+
* Strip comments from JSONC source.
|
|
149
|
+
* Handles both single-line (//) and multi-line (/* *\/) comments.
|
|
150
|
+
*/
|
|
151
|
+
private stripJsonComments;
|
|
152
|
+
/**
|
|
153
|
+
* Convert simple YAML to JSON.
|
|
154
|
+
* This is a basic implementation that handles common YAML patterns.
|
|
155
|
+
*/
|
|
156
|
+
private convertYamlToJson;
|
|
157
|
+
/**
|
|
158
|
+
* Strip inline comments from a YAML value.
|
|
159
|
+
* Handles comments that appear after values (e.g., "value # comment").
|
|
160
|
+
*/
|
|
161
|
+
private stripYamlInlineComment;
|
|
162
|
+
/**
|
|
163
|
+
* Parse a YAML value to its JavaScript equivalent.
|
|
164
|
+
*/
|
|
165
|
+
private parseYamlValue;
|
|
166
|
+
/**
|
|
167
|
+
* Parse a YAML inline array like [1, 2, 3].
|
|
168
|
+
*/
|
|
169
|
+
private parseYamlInlineArray;
|
|
170
|
+
/**
|
|
171
|
+
* Extract structure information from parsed JSON.
|
|
172
|
+
*/
|
|
173
|
+
private extractStructure;
|
|
174
|
+
/**
|
|
175
|
+
* Get the JSON value type.
|
|
176
|
+
*/
|
|
177
|
+
private getValueType;
|
|
178
|
+
/**
|
|
179
|
+
* Check if a value is a primitive type.
|
|
180
|
+
*/
|
|
181
|
+
private isPrimitive;
|
|
182
|
+
/**
|
|
183
|
+
* Build schema information from extracted data.
|
|
184
|
+
*/
|
|
185
|
+
private buildSchema;
|
|
186
|
+
/**
|
|
187
|
+
* Create an empty schema for error cases.
|
|
188
|
+
*/
|
|
189
|
+
private createEmptySchema;
|
|
190
|
+
/**
|
|
191
|
+
* Build an AST node from a JSON value.
|
|
192
|
+
*/
|
|
193
|
+
private buildASTNode;
|
|
194
|
+
/**
|
|
195
|
+
* Find the position of a path in the source.
|
|
196
|
+
*/
|
|
197
|
+
private findPositionForPath;
|
|
198
|
+
/**
|
|
199
|
+
* Find the position of a key in the source.
|
|
200
|
+
*/
|
|
201
|
+
private findPositionForKey;
|
|
202
|
+
/**
|
|
203
|
+
* Escape special regex characters.
|
|
204
|
+
*/
|
|
205
|
+
private escapeRegex;
|
|
206
|
+
/**
|
|
207
|
+
* Extract error position from JSON parse error message.
|
|
208
|
+
*/
|
|
209
|
+
private extractErrorPosition;
|
|
210
|
+
/**
|
|
211
|
+
* Convert a character offset to a position.
|
|
212
|
+
*/
|
|
213
|
+
private offsetToPosition;
|
|
214
|
+
/**
|
|
215
|
+
* Query the AST using a JSONPath-like pattern.
|
|
216
|
+
*/
|
|
217
|
+
private queryByPath;
|
|
218
|
+
}
|
|
219
|
+
//# sourceMappingURL=json-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/json-parser.ts"],"names":[],"mappings":"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"}
|