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,204 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Config Validator - Configuration validation against JSON schema
|
|
3
|
+
*
|
|
4
|
+
* Provides comprehensive validation for DriftConfig objects with
|
|
5
|
+
* helpful, actionable error messages for invalid configurations.
|
|
6
|
+
*
|
|
7
|
+
* @requirements 36.6 - Configuration validation SHALL reject invalid values with helpful error messages
|
|
8
|
+
* @requirements 36.7 - Configuration SHALL support JSON schema validation
|
|
9
|
+
*/
|
|
10
|
+
import type { DriftConfig } from './types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Represents a single configuration validation error
|
|
13
|
+
*/
|
|
14
|
+
export interface ConfigValidationError {
|
|
15
|
+
/** Path to the invalid field (e.g., 'ai.provider', 'learning.autoApproveThreshold') */
|
|
16
|
+
path: string;
|
|
17
|
+
/** Human-readable error message */
|
|
18
|
+
message: string;
|
|
19
|
+
/** Expected value or type */
|
|
20
|
+
expected?: string;
|
|
21
|
+
/** Actual value received */
|
|
22
|
+
actual?: unknown;
|
|
23
|
+
/** Suggestion for how to fix the error */
|
|
24
|
+
suggestion?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Result of a configuration validation operation
|
|
28
|
+
*/
|
|
29
|
+
export interface ConfigValidationResult {
|
|
30
|
+
/** Whether validation passed */
|
|
31
|
+
valid: boolean;
|
|
32
|
+
/** Validated and typed data (only present if valid) */
|
|
33
|
+
data?: DriftConfig;
|
|
34
|
+
/** List of validation errors (only present if invalid) */
|
|
35
|
+
errors?: ConfigValidationError[];
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Custom error class for configuration validation failures
|
|
39
|
+
*
|
|
40
|
+
* @requirements 36.6 - Provide helpful error messages
|
|
41
|
+
*/
|
|
42
|
+
export declare class ConfigValidationException extends Error {
|
|
43
|
+
readonly errors: ConfigValidationError[];
|
|
44
|
+
constructor(message: string, errors: ConfigValidationError[]);
|
|
45
|
+
/**
|
|
46
|
+
* Format errors as a human-readable string with suggestions
|
|
47
|
+
*/
|
|
48
|
+
formatErrors(): string;
|
|
49
|
+
/**
|
|
50
|
+
* Get a summary of all errors
|
|
51
|
+
*/
|
|
52
|
+
getSummary(): string;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Validate a DriftConfig object against the JSON schema
|
|
56
|
+
*
|
|
57
|
+
* @requirements 36.6 - Configuration validation SHALL reject invalid values with helpful error messages
|
|
58
|
+
* @requirements 36.7 - Configuration SHALL support JSON schema validation
|
|
59
|
+
*
|
|
60
|
+
* @param data - The data to validate
|
|
61
|
+
* @returns Validation result with typed data or errors
|
|
62
|
+
*/
|
|
63
|
+
export declare function validateConfig(data: unknown): ConfigValidationResult;
|
|
64
|
+
/**
|
|
65
|
+
* Validate a DriftConfig and throw if invalid
|
|
66
|
+
*
|
|
67
|
+
* @requirements 36.6 - Configuration validation SHALL reject invalid values with helpful error messages
|
|
68
|
+
* @requirements 36.7 - Configuration SHALL support JSON schema validation
|
|
69
|
+
*
|
|
70
|
+
* @param data - The data to validate
|
|
71
|
+
* @returns The validated DriftConfig
|
|
72
|
+
* @throws ConfigValidationException if validation fails
|
|
73
|
+
*/
|
|
74
|
+
export declare function assertValidConfig(data: unknown): DriftConfig;
|
|
75
|
+
/**
|
|
76
|
+
* Validate a partial DriftConfig (for merging with defaults)
|
|
77
|
+
*
|
|
78
|
+
* This is more lenient than full validation - it allows missing required fields
|
|
79
|
+
* since they will be filled in from defaults.
|
|
80
|
+
*
|
|
81
|
+
* @requirements 36.6 - Configuration validation SHALL reject invalid values with helpful error messages
|
|
82
|
+
* @requirements 36.7 - Configuration SHALL support JSON schema validation
|
|
83
|
+
*
|
|
84
|
+
* @param data - The partial data to validate
|
|
85
|
+
* @returns Validation result with typed data or errors
|
|
86
|
+
*/
|
|
87
|
+
export declare function validatePartialConfig(data: unknown): ConfigValidationResult;
|
|
88
|
+
/**
|
|
89
|
+
* Format validation errors as a human-readable string
|
|
90
|
+
*
|
|
91
|
+
* @requirements 36.6 - Provide helpful error messages
|
|
92
|
+
*
|
|
93
|
+
* @param errors - Array of validation errors
|
|
94
|
+
* @returns Formatted error string
|
|
95
|
+
*/
|
|
96
|
+
export declare function formatConfigErrors(errors: ConfigValidationError[]): string;
|
|
97
|
+
/**
|
|
98
|
+
* Get a quick summary of validation errors
|
|
99
|
+
*
|
|
100
|
+
* @param errors - Array of validation errors
|
|
101
|
+
* @returns Short summary string
|
|
102
|
+
*/
|
|
103
|
+
export declare function getErrorSummary(errors: ConfigValidationError[]): string;
|
|
104
|
+
/**
|
|
105
|
+
* JSON Schema definition for DriftConfig
|
|
106
|
+
*
|
|
107
|
+
* This can be used by external tools for validation or IDE support.
|
|
108
|
+
*
|
|
109
|
+
* @requirements 36.7 - Configuration SHALL support JSON schema validation
|
|
110
|
+
*/
|
|
111
|
+
export declare const DRIFT_CONFIG_SCHEMA: {
|
|
112
|
+
readonly $schema: "http://json-schema.org/draft-07/schema#";
|
|
113
|
+
readonly title: "DriftConfig";
|
|
114
|
+
readonly description: "Configuration schema for Drift architectural drift detection";
|
|
115
|
+
readonly type: "object";
|
|
116
|
+
readonly properties: {
|
|
117
|
+
readonly severity: {
|
|
118
|
+
readonly type: "object";
|
|
119
|
+
readonly description: "Severity overrides per pattern ID";
|
|
120
|
+
readonly additionalProperties: {
|
|
121
|
+
readonly type: "string";
|
|
122
|
+
readonly enum: readonly ["error", "warning", "info", "hint"];
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
readonly ignore: {
|
|
126
|
+
readonly type: "array";
|
|
127
|
+
readonly description: "File/folder patterns to ignore";
|
|
128
|
+
readonly items: {
|
|
129
|
+
readonly type: "string";
|
|
130
|
+
readonly minLength: 1;
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
readonly ai: {
|
|
134
|
+
readonly type: "object";
|
|
135
|
+
readonly description: "AI provider configuration (BYOK)";
|
|
136
|
+
readonly properties: {
|
|
137
|
+
readonly provider: {
|
|
138
|
+
readonly type: "string";
|
|
139
|
+
readonly enum: readonly ["openai", "anthropic", "ollama"];
|
|
140
|
+
readonly description: "AI provider to use";
|
|
141
|
+
};
|
|
142
|
+
readonly model: {
|
|
143
|
+
readonly type: "string";
|
|
144
|
+
readonly description: "Model name to use";
|
|
145
|
+
};
|
|
146
|
+
};
|
|
147
|
+
readonly required: readonly ["provider"];
|
|
148
|
+
};
|
|
149
|
+
readonly ci: {
|
|
150
|
+
readonly type: "object";
|
|
151
|
+
readonly description: "CI/CD mode settings";
|
|
152
|
+
readonly properties: {
|
|
153
|
+
readonly failOn: {
|
|
154
|
+
readonly type: "string";
|
|
155
|
+
readonly enum: readonly ["error", "warning", "none"];
|
|
156
|
+
readonly description: "Severity level that causes CI failure";
|
|
157
|
+
};
|
|
158
|
+
readonly reportFormat: {
|
|
159
|
+
readonly type: "string";
|
|
160
|
+
readonly enum: readonly ["json", "text", "github", "gitlab"];
|
|
161
|
+
readonly description: "Output format for CI reports";
|
|
162
|
+
};
|
|
163
|
+
};
|
|
164
|
+
};
|
|
165
|
+
readonly learning: {
|
|
166
|
+
readonly type: "object";
|
|
167
|
+
readonly description: "Pattern learning settings";
|
|
168
|
+
readonly properties: {
|
|
169
|
+
readonly autoApproveThreshold: {
|
|
170
|
+
readonly type: "number";
|
|
171
|
+
readonly minimum: 0;
|
|
172
|
+
readonly maximum: 1;
|
|
173
|
+
readonly description: "Confidence threshold for auto-approving patterns";
|
|
174
|
+
};
|
|
175
|
+
readonly minOccurrences: {
|
|
176
|
+
readonly type: "integer";
|
|
177
|
+
readonly minimum: 1;
|
|
178
|
+
readonly description: "Minimum occurrences to detect a pattern";
|
|
179
|
+
};
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
readonly performance: {
|
|
183
|
+
readonly type: "object";
|
|
184
|
+
readonly description: "Performance tuning settings";
|
|
185
|
+
readonly properties: {
|
|
186
|
+
readonly maxWorkers: {
|
|
187
|
+
readonly type: "integer";
|
|
188
|
+
readonly minimum: 1;
|
|
189
|
+
readonly description: "Maximum worker threads for parallel processing";
|
|
190
|
+
};
|
|
191
|
+
readonly cacheEnabled: {
|
|
192
|
+
readonly type: "boolean";
|
|
193
|
+
readonly description: "Enable analysis caching";
|
|
194
|
+
};
|
|
195
|
+
readonly incrementalAnalysis: {
|
|
196
|
+
readonly type: "boolean";
|
|
197
|
+
readonly description: "Enable incremental analysis for changed files";
|
|
198
|
+
};
|
|
199
|
+
};
|
|
200
|
+
};
|
|
201
|
+
};
|
|
202
|
+
readonly additionalProperties: false;
|
|
203
|
+
};
|
|
204
|
+
//# sourceMappingURL=config-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-validator.d.ts","sourceRoot":"","sources":["../../src/config/config-validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,YAAY,CAAC;AAuBpB;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,uFAAuF;IACvF,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,gCAAgC;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,uDAAuD;IACvD,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,qBAAqB,EAAE,CAAC;CAClC;AAED;;;;GAIG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;aAGhC,MAAM,EAAE,qBAAqB,EAAE;gBAD/C,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,qBAAqB,EAAE;IAMjD;;OAEG;IACH,YAAY,IAAI,MAAM;IActB;;OAEG;IACH,UAAU,IAAI,MAAM;CAKrB;AA6YD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,sBAAsB,CA0CpE;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,CAW5D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,sBAAsB,CAI3E;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAe1E;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAOvE;AAMD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4FtB,CAAC"}
|