driftdetect 0.4.7 → 0.6.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/bin/drift.js +37 -1
- package/dist/bin/drift.js.map +1 -1
- package/dist/commands/approve.d.ts +20 -0
- package/dist/commands/approve.d.ts.map +1 -1
- package/dist/commands/approve.js +38 -72
- package/dist/commands/approve.js.map +1 -1
- package/dist/commands/check.d.ts +41 -0
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +21 -11
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/constraints.d.ts +17 -0
- package/dist/commands/constraints.d.ts.map +1 -0
- package/dist/commands/constraints.js +686 -0
- package/dist/commands/constraints.js.map +1 -0
- package/dist/commands/coupling.d.ts +17 -0
- package/dist/commands/coupling.d.ts.map +1 -0
- package/dist/commands/coupling.js +726 -0
- package/dist/commands/coupling.js.map +1 -0
- package/dist/commands/decisions.d.ts +19 -0
- package/dist/commands/decisions.d.ts.map +1 -0
- package/dist/commands/decisions.js +771 -0
- package/dist/commands/decisions.js.map +1 -0
- package/dist/commands/error-handling.d.ts +15 -0
- package/dist/commands/error-handling.d.ts.map +1 -0
- package/dist/commands/error-handling.js +608 -0
- package/dist/commands/error-handling.js.map +1 -0
- package/dist/commands/export.d.ts +16 -0
- package/dist/commands/export.d.ts.map +1 -1
- package/dist/commands/export.js +46 -50
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/files.d.ts +15 -0
- package/dist/commands/files.d.ts.map +1 -1
- package/dist/commands/files.js +27 -48
- package/dist/commands/files.js.map +1 -1
- package/dist/commands/go.d.ts +21 -0
- package/dist/commands/go.d.ts.map +1 -0
- package/dist/commands/go.js +530 -0
- package/dist/commands/go.js.map +1 -0
- package/dist/commands/ignore.d.ts +20 -0
- package/dist/commands/ignore.d.ts.map +1 -1
- package/dist/commands/ignore.js +25 -48
- package/dist/commands/ignore.js.map +1 -1
- package/dist/commands/index.d.ts +11 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +15 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/migrate-storage.d.ts +23 -0
- package/dist/commands/migrate-storage.d.ts.map +1 -0
- package/dist/commands/migrate-storage.js +337 -0
- package/dist/commands/migrate-storage.js.map +1 -0
- package/dist/commands/report.d.ts +22 -0
- package/dist/commands/report.d.ts.map +1 -1
- package/dist/commands/report.js +19 -10
- package/dist/commands/report.js.map +1 -1
- package/dist/commands/scan.d.ts +2 -0
- package/dist/commands/scan.d.ts.map +1 -1
- package/dist/commands/scan.js +134 -3
- package/dist/commands/scan.js.map +1 -1
- package/dist/commands/simulate.d.ts +17 -0
- package/dist/commands/simulate.d.ts.map +1 -0
- package/dist/commands/simulate.js +253 -0
- package/dist/commands/simulate.js.map +1 -0
- package/dist/commands/skills.d.ts +16 -0
- package/dist/commands/skills.d.ts.map +1 -0
- package/dist/commands/skills.js +409 -0
- package/dist/commands/skills.js.map +1 -0
- package/dist/commands/status.d.ts +20 -0
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +74 -72
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/test-topology.d.ts +15 -0
- package/dist/commands/test-topology.d.ts.map +1 -0
- package/dist/commands/test-topology.js +589 -0
- package/dist/commands/test-topology.js.map +1 -0
- package/dist/commands/where.d.ts +15 -0
- package/dist/commands/where.d.ts.map +1 -1
- package/dist/commands/where.js +41 -88
- package/dist/commands/where.js.map +1 -1
- package/dist/commands/wpf.d.ts +21 -0
- package/dist/commands/wpf.d.ts.map +1 -0
- package/dist/commands/wpf.js +632 -0
- package/dist/commands/wpf.js.map +1 -0
- package/dist/commands/wrappers.d.ts +16 -0
- package/dist/commands/wrappers.d.ts.map +1 -0
- package/dist/commands/wrappers.js +181 -0
- package/dist/commands/wrappers.js.map +1 -0
- package/dist/services/pattern-service-factory.d.ts +37 -0
- package/dist/services/pattern-service-factory.d.ts.map +1 -0
- package/dist/services/pattern-service-factory.js +41 -0
- package/dist/services/pattern-service-factory.js.map +1 -0
- package/package.json +35 -23
- package/LICENSE +0 -21
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsBpC,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsBpC,eAAO,MAAM,aAAa,SA4LtB,CAAC"}
|
package/dist/commands/export.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Export Command - Export manifest in various formats
|
|
3
3
|
*
|
|
4
4
|
* Exports the pattern manifest for AI consumption or reporting.
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
*
|
|
6
|
+
* MIGRATION: Now uses IPatternService for pattern operations.
|
|
7
7
|
*
|
|
8
8
|
* Usage:
|
|
9
9
|
* drift export # Export as JSON to stdout
|
|
@@ -15,7 +15,8 @@ import { Command } from 'commander';
|
|
|
15
15
|
import * as fs from 'node:fs/promises';
|
|
16
16
|
import * as path from 'node:path';
|
|
17
17
|
import chalk from 'chalk';
|
|
18
|
-
import {
|
|
18
|
+
import { exportManifest, estimateTokens, } from 'driftdetect-core';
|
|
19
|
+
import { createCLIPatternService } from '../services/pattern-service-factory.js';
|
|
19
20
|
const VALID_FORMATS = ['json', 'ai-context', 'summary', 'markdown'];
|
|
20
21
|
const VALID_CATEGORIES = [
|
|
21
22
|
'api', 'auth', 'security', 'errors', 'logging', 'testing',
|
|
@@ -40,46 +41,41 @@ export const exportCommand = new Command('export')
|
|
|
40
41
|
console.error(`Valid formats: ${VALID_FORMATS.join(', ')}`);
|
|
41
42
|
process.exit(1);
|
|
42
43
|
}
|
|
43
|
-
//
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
//
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
44
|
+
// Initialize pattern service
|
|
45
|
+
const service = createCLIPatternService(cwd);
|
|
46
|
+
// Get all patterns (service auto-initializes)
|
|
47
|
+
const allPatternsResult = await service.listPatterns({ limit: 10000 });
|
|
48
|
+
// Fetch full pattern details
|
|
49
|
+
const allPatterns = await Promise.all(allPatternsResult.items.map(async (summary) => {
|
|
50
|
+
const pattern = await service.getPattern(summary.id);
|
|
51
|
+
return pattern;
|
|
52
|
+
}));
|
|
53
|
+
// Filter out nulls
|
|
54
|
+
const validPatterns = allPatterns.filter((p) => p !== null);
|
|
55
|
+
if (validPatterns.length === 0) {
|
|
53
56
|
console.error(chalk.red('No patterns found. Run `drift scan` first.'));
|
|
54
57
|
process.exit(1);
|
|
55
58
|
}
|
|
56
|
-
//
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
// Merge PatternStore patterns into manifest
|
|
76
|
-
// This ensures all 15 categories are available for export
|
|
77
|
-
for (const pattern of allPatterns) {
|
|
59
|
+
// Build manifest from patterns
|
|
60
|
+
const manifest = {
|
|
61
|
+
version: '2.0.0',
|
|
62
|
+
generated: new Date().toISOString(),
|
|
63
|
+
codebaseHash: '',
|
|
64
|
+
projectRoot: cwd,
|
|
65
|
+
summary: {
|
|
66
|
+
totalPatterns: 0,
|
|
67
|
+
patternsByStatus: { discovered: 0, approved: 0, ignored: 0 },
|
|
68
|
+
patternsByCategory: {},
|
|
69
|
+
totalFiles: 0,
|
|
70
|
+
totalLocations: 0,
|
|
71
|
+
totalOutliers: 0,
|
|
72
|
+
},
|
|
73
|
+
patterns: {},
|
|
74
|
+
files: {},
|
|
75
|
+
};
|
|
76
|
+
// Convert patterns to manifest format
|
|
77
|
+
for (const pattern of validPatterns) {
|
|
78
78
|
const manifestKey = `${pattern.category}/${pattern.subcategory}/${pattern.id}`;
|
|
79
|
-
// Skip if already in manifest with same or more data
|
|
80
|
-
if (manifest.patterns[manifestKey]) {
|
|
81
|
-
continue;
|
|
82
|
-
}
|
|
83
79
|
// Convert Pattern to ManifestPattern format
|
|
84
80
|
const manifestPattern = {
|
|
85
81
|
id: manifestKey,
|
|
@@ -87,34 +83,34 @@ export const exportCommand = new Command('export')
|
|
|
87
83
|
category: pattern.category,
|
|
88
84
|
subcategory: pattern.subcategory,
|
|
89
85
|
status: pattern.status,
|
|
90
|
-
confidence: pattern.confidence
|
|
86
|
+
confidence: pattern.confidence,
|
|
91
87
|
locations: pattern.locations.map(loc => ({
|
|
92
88
|
file: loc.file,
|
|
93
89
|
hash: '',
|
|
94
|
-
range: { start: loc.line, end: loc.endLine
|
|
90
|
+
range: { start: loc.line, end: loc.endLine ?? loc.line },
|
|
95
91
|
type: 'block',
|
|
96
92
|
name: `line-${loc.line}`,
|
|
97
|
-
confidence:
|
|
98
|
-
snippet: '',
|
|
93
|
+
confidence: pattern.confidence,
|
|
94
|
+
snippet: loc.snippet ?? '',
|
|
99
95
|
language: getLanguageFromFile(loc.file),
|
|
100
96
|
})),
|
|
101
97
|
outliers: pattern.outliers.map(outlier => ({
|
|
102
98
|
file: outlier.file,
|
|
103
99
|
hash: '',
|
|
104
|
-
range: { start: outlier.line, end: outlier.endLine
|
|
100
|
+
range: { start: outlier.line, end: outlier.endLine ?? outlier.line },
|
|
105
101
|
type: 'block',
|
|
106
|
-
name: outlier.reason
|
|
102
|
+
name: outlier.reason ?? `line-${outlier.line}`,
|
|
107
103
|
confidence: 0.5,
|
|
108
|
-
snippet: '',
|
|
104
|
+
snippet: outlier.snippet ?? '',
|
|
109
105
|
language: getLanguageFromFile(outlier.file),
|
|
110
106
|
})),
|
|
111
107
|
description: pattern.description,
|
|
112
|
-
firstSeen: pattern.
|
|
113
|
-
lastSeen: pattern.
|
|
108
|
+
firstSeen: pattern.firstSeen,
|
|
109
|
+
lastSeen: pattern.lastSeen,
|
|
114
110
|
};
|
|
115
111
|
manifest.patterns[manifestKey] = manifestPattern;
|
|
116
112
|
}
|
|
117
|
-
//
|
|
113
|
+
// Calculate summary
|
|
118
114
|
const patterns = Object.values(manifest.patterns);
|
|
119
115
|
const patternsByStatus = { discovered: 0, approved: 0, ignored: 0 };
|
|
120
116
|
const patternsByCategory = {};
|
|
@@ -130,7 +126,7 @@ export const exportCommand = new Command('export')
|
|
|
130
126
|
totalPatterns: patterns.length,
|
|
131
127
|
patternsByStatus,
|
|
132
128
|
patternsByCategory,
|
|
133
|
-
totalFiles:
|
|
129
|
+
totalFiles: new Set(patterns.flatMap(p => p.locations.map(l => l.file))).size,
|
|
134
130
|
totalLocations,
|
|
135
131
|
totalOutliers,
|
|
136
132
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Files Command - Show patterns in a file
|
|
3
|
+
*
|
|
4
|
+
* Show what patterns are found in a specific file.
|
|
5
|
+
*
|
|
6
|
+
* MIGRATION: Now uses IPatternService for pattern operations.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* drift files src/auth/middleware.py
|
|
10
|
+
* drift files 'src/api/*.ts'
|
|
11
|
+
* drift files --json src/api/
|
|
12
|
+
*/
|
|
13
|
+
import { Command } from 'commander';
|
|
14
|
+
export declare const filesCommand: Command;
|
|
15
|
+
//# sourceMappingURL=files.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/commands/files.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/commands/files.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,eAAO,MAAM,YAAY,SAwJrB,CAAC"}
|
package/dist/commands/files.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Files Command - Show patterns in a file
|
|
3
3
|
*
|
|
4
4
|
* Show what patterns are found in a specific file.
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
*
|
|
6
|
+
* MIGRATION: Now uses IPatternService for pattern operations.
|
|
7
7
|
*
|
|
8
8
|
* Usage:
|
|
9
9
|
* drift files src/auth/middleware.py
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import { Command } from 'commander';
|
|
14
14
|
import chalk from 'chalk';
|
|
15
|
-
import {
|
|
15
|
+
import { createCLIPatternService } from '../services/pattern-service-factory.js';
|
|
16
16
|
export const filesCommand = new Command('files')
|
|
17
17
|
.description('Show patterns in a file')
|
|
18
18
|
.argument('<path>', 'File path (supports glob patterns)')
|
|
@@ -20,33 +20,27 @@ export const filesCommand = new Command('files')
|
|
|
20
20
|
.option('--json', 'Output as JSON')
|
|
21
21
|
.action(async (filePath, options) => {
|
|
22
22
|
const cwd = process.cwd();
|
|
23
|
-
//
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
await
|
|
29
|
-
|
|
30
|
-
|
|
23
|
+
// Initialize pattern service
|
|
24
|
+
const service = createCLIPatternService(cwd);
|
|
25
|
+
// Get all patterns (service auto-initializes)
|
|
26
|
+
const allPatternsResult = await service.listPatterns({ limit: 10000 });
|
|
27
|
+
// Fetch full pattern details
|
|
28
|
+
const allPatterns = await Promise.all(allPatternsResult.items.map(async (summary) => {
|
|
29
|
+
const pattern = await service.getPattern(summary.id);
|
|
30
|
+
return pattern;
|
|
31
|
+
}));
|
|
32
|
+
// Filter out nulls
|
|
33
|
+
const validPatterns = allPatterns.filter((p) => p !== null);
|
|
34
|
+
if (validPatterns.length === 0) {
|
|
31
35
|
console.error(chalk.red('No patterns found. Run `drift scan` first.'));
|
|
32
36
|
process.exit(1);
|
|
33
37
|
}
|
|
34
|
-
//
|
|
35
|
-
const
|
|
36
|
-
path: filePath,
|
|
37
|
-
};
|
|
38
|
-
if (options.category) {
|
|
39
|
-
query.category = options.category;
|
|
40
|
-
}
|
|
41
|
-
// Query file from manifest
|
|
42
|
-
let result = manifest ? manifestStore.queryFile(query) : null;
|
|
43
|
-
// Also search in PatternStore for patterns in this file
|
|
44
|
-
// This ensures all 15 categories are searched
|
|
45
|
-
const patternStoreResults = [];
|
|
38
|
+
// Search for patterns in this file
|
|
39
|
+
const patternResults = [];
|
|
46
40
|
// Match file path (supports glob-like patterns)
|
|
47
41
|
const normalizedPath = filePath.replace(/\\/g, '/');
|
|
48
42
|
const isGlob = normalizedPath.includes('*');
|
|
49
|
-
for (const pattern of
|
|
43
|
+
for (const pattern of validPatterns) {
|
|
50
44
|
// Filter by category if specified
|
|
51
45
|
if (options.category && pattern.category !== options.category) {
|
|
52
46
|
continue;
|
|
@@ -60,38 +54,23 @@ export const filesCommand = new Command('files')
|
|
|
60
54
|
return locPath === normalizedPath || locPath.endsWith(normalizedPath) || locPath.includes(normalizedPath);
|
|
61
55
|
});
|
|
62
56
|
if (matchingLocations.length > 0) {
|
|
63
|
-
|
|
57
|
+
patternResults.push({
|
|
64
58
|
id: pattern.id,
|
|
65
59
|
name: pattern.name,
|
|
66
60
|
category: pattern.category,
|
|
67
61
|
locations: matchingLocations.map(loc => ({
|
|
68
|
-
range: { start: loc.line, end: loc.endLine
|
|
62
|
+
range: { start: loc.line, end: loc.endLine ?? loc.line },
|
|
69
63
|
type: 'block',
|
|
70
64
|
name: `line-${loc.line}`,
|
|
71
65
|
})),
|
|
72
66
|
});
|
|
73
67
|
}
|
|
74
68
|
}
|
|
75
|
-
|
|
76
|
-
const mergedPatterns = new Map();
|
|
77
|
-
// Add manifest results
|
|
78
|
-
if (result) {
|
|
79
|
-
for (const p of result.patterns) {
|
|
80
|
-
mergedPatterns.set(p.id, p);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
// Add PatternStore results (may add new categories)
|
|
84
|
-
for (const p of patternStoreResults) {
|
|
85
|
-
if (!mergedPatterns.has(p.id)) {
|
|
86
|
-
mergedPatterns.set(p.id, p);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
const finalPatterns = Array.from(mergedPatterns.values());
|
|
90
|
-
if (finalPatterns.length === 0) {
|
|
69
|
+
if (patternResults.length === 0) {
|
|
91
70
|
console.log(chalk.yellow(`No patterns found in "${filePath}"`));
|
|
92
|
-
// Show available files from
|
|
71
|
+
// Show available files from patterns
|
|
93
72
|
const allFiles = new Set();
|
|
94
|
-
for (const pattern of
|
|
73
|
+
for (const pattern of validPatterns) {
|
|
95
74
|
for (const loc of pattern.locations) {
|
|
96
75
|
allFiles.add(loc.file);
|
|
97
76
|
}
|
|
@@ -110,11 +89,11 @@ export const filesCommand = new Command('files')
|
|
|
110
89
|
}
|
|
111
90
|
// Build final result
|
|
112
91
|
const finalResult = {
|
|
113
|
-
file:
|
|
114
|
-
patterns:
|
|
115
|
-
metadata:
|
|
92
|
+
file: filePath,
|
|
93
|
+
patterns: patternResults,
|
|
94
|
+
metadata: {
|
|
116
95
|
hash: '',
|
|
117
|
-
patterns:
|
|
96
|
+
patterns: patternResults.map(p => p.id),
|
|
118
97
|
lastScanned: new Date().toISOString(),
|
|
119
98
|
},
|
|
120
99
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/commands/files.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/commands/files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Go Command - drift go
|
|
3
|
+
*
|
|
4
|
+
* Analyze Go projects: routes, error handling, interfaces, data access.
|
|
5
|
+
*
|
|
6
|
+
* @requirements Go Language Support
|
|
7
|
+
*/
|
|
8
|
+
import { Command } from 'commander';
|
|
9
|
+
export interface GoOptions {
|
|
10
|
+
/** Output format */
|
|
11
|
+
format?: 'text' | 'json';
|
|
12
|
+
/** Enable verbose output */
|
|
13
|
+
verbose?: boolean;
|
|
14
|
+
/** Filter by framework */
|
|
15
|
+
framework?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Create the Go command
|
|
19
|
+
*/
|
|
20
|
+
export declare function createGoCommand(): Command;
|
|
21
|
+
//# sourceMappingURL=go.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"go.d.ts","sourceRoot":"","sources":["../../src/commands/go.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,MAAM,WAAW,SAAS;IACxB,oBAAoB;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0BAA0B;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAkEzC"}
|