@colbymchenry/codegraph 0.2.9 → 0.5.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/LICENSE +21 -21
- package/README.md +647 -641
- package/dist/bin/codegraph.d.ts +7 -2
- package/dist/bin/codegraph.d.ts.map +1 -1
- package/dist/bin/codegraph.js +360 -140
- package/dist/bin/codegraph.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +43 -10
- package/dist/config.js.map +1 -1
- package/dist/context/index.d.ts +17 -4
- package/dist/context/index.d.ts.map +1 -1
- package/dist/context/index.js +182 -15
- package/dist/context/index.js.map +1 -1
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +21 -0
- package/dist/db/index.js.map +1 -1
- package/dist/db/migrations.d.ts +1 -1
- package/dist/db/migrations.d.ts.map +1 -1
- package/dist/db/migrations.js +19 -12
- package/dist/db/migrations.js.map +1 -1
- package/dist/db/queries.d.ts +32 -1
- package/dist/db/queries.d.ts.map +1 -1
- package/dist/db/queries.js +271 -118
- package/dist/db/queries.js.map +1 -1
- package/dist/db/schema.sql +163 -149
- package/dist/directory.d.ts +13 -1
- package/dist/directory.d.ts.map +1 -1
- package/dist/directory.js +85 -19
- package/dist/directory.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +7 -1
- package/dist/errors.js.map +1 -1
- package/dist/extraction/grammars.d.ts +9 -4
- package/dist/extraction/grammars.d.ts.map +1 -1
- package/dist/extraction/grammars.js +133 -65
- package/dist/extraction/grammars.js.map +1 -1
- package/dist/extraction/index.d.ts +6 -0
- package/dist/extraction/index.d.ts.map +1 -1
- package/dist/extraction/index.js +209 -44
- package/dist/extraction/index.js.map +1 -1
- package/dist/extraction/tree-sitter.d.ts +67 -0
- package/dist/extraction/tree-sitter.d.ts.map +1 -1
- package/dist/extraction/tree-sitter.js +980 -38
- package/dist/extraction/tree-sitter.js.map +1 -1
- package/dist/graph/traversal.d.ts.map +1 -1
- package/dist/graph/traversal.js +6 -2
- package/dist/graph/traversal.js.map +1 -1
- package/dist/index.d.ts +6 -38
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +91 -74
- package/dist/index.js.map +1 -1
- package/dist/installer/banner.js +7 -7
- package/dist/installer/claude-md-template.js +32 -32
- package/dist/installer/config-writer.d.ts +9 -0
- package/dist/installer/config-writer.d.ts.map +1 -1
- package/dist/installer/config-writer.js +126 -17
- package/dist/installer/config-writer.js.map +1 -1
- package/dist/installer/index.d.ts.map +1 -1
- package/dist/installer/index.js +28 -16
- package/dist/installer/index.js.map +1 -1
- package/dist/mcp/index.d.ts +14 -3
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +109 -29
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/tools.d.ts +66 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +442 -49
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/transport.d.ts.map +1 -1
- package/dist/mcp/transport.js +2 -0
- package/dist/mcp/transport.js.map +1 -1
- package/dist/resolution/frameworks/index.d.ts +1 -0
- package/dist/resolution/frameworks/index.d.ts.map +1 -1
- package/dist/resolution/frameworks/index.js +5 -1
- package/dist/resolution/frameworks/index.js.map +1 -1
- package/dist/resolution/frameworks/svelte.d.ts +9 -0
- package/dist/resolution/frameworks/svelte.d.ts.map +1 -0
- package/dist/resolution/frameworks/svelte.js +268 -0
- package/dist/resolution/frameworks/svelte.js.map +1 -0
- package/dist/resolution/index.d.ts +11 -2
- package/dist/resolution/index.d.ts.map +1 -1
- package/dist/resolution/index.js +94 -13
- package/dist/resolution/index.js.map +1 -1
- package/dist/search/query-utils.d.ts +25 -0
- package/dist/search/query-utils.d.ts.map +1 -0
- package/dist/search/query-utils.js +124 -0
- package/dist/search/query-utils.js.map +1 -0
- package/dist/sentry.d.ts +22 -0
- package/dist/sentry.d.ts.map +1 -0
- package/dist/sentry.js +159 -0
- package/dist/sentry.js.map +1 -0
- package/dist/sync/index.d.ts +4 -2
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +3 -5
- package/dist/sync/index.js.map +1 -1
- package/dist/types.d.ts +7 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +13 -0
- package/dist/types.js.map +1 -1
- package/dist/utils.d.ts +89 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +252 -3
- package/dist/utils.js.map +1 -1
- package/dist/vectors/embedder.d.ts +1 -1
- package/dist/vectors/embedder.d.ts.map +1 -1
- package/dist/vectors/embedder.js +5 -2
- package/dist/vectors/embedder.js.map +1 -1
- package/dist/vectors/search.d.ts.map +1 -1
- package/dist/vectors/search.js +33 -32
- package/dist/vectors/search.js.map +1 -1
- package/package.json +74 -65
- package/scripts/patch-tree-sitter-dart.js +112 -0
- package/scripts/postinstall.js +71 -0
- package/dist/sync/git-hooks.d.ts +0 -66
- package/dist/sync/git-hooks.d.ts.map +0 -1
- package/dist/sync/git-hooks.js +0 -281
- package/dist/sync/git-hooks.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grammars.d.ts","sourceRoot":"","sources":["../../src/extraction/grammars.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"grammars.d.ts","sourceRoot":"","sources":["../../src/extraction/grammars.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AA8EpC;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CA6BlD,CAAC;AAwCF;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAc3D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAGzD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAK/D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,QAAQ,EAAE,CAIlD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAIvC;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAM/E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAuBjE"}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Grammar Loading and Caching
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Uses lazy per-language loading so one missing native grammar does not
|
|
6
|
+
* break extraction for all other languages.
|
|
6
7
|
*/
|
|
7
8
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
9
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -14,59 +15,80 @@ exports.detectLanguage = detectLanguage;
|
|
|
14
15
|
exports.isLanguageSupported = isLanguageSupported;
|
|
15
16
|
exports.getSupportedLanguages = getSupportedLanguages;
|
|
16
17
|
exports.clearParserCache = clearParserCache;
|
|
18
|
+
exports.getUnavailableGrammarErrors = getUnavailableGrammarErrors;
|
|
17
19
|
exports.getLanguageDisplayName = getLanguageDisplayName;
|
|
18
20
|
const tree_sitter_1 = __importDefault(require("tree-sitter"));
|
|
19
|
-
// Grammar module imports
|
|
20
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
21
|
-
const TypeScript = require('tree-sitter-typescript').typescript;
|
|
22
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
23
|
-
const TSX = require('tree-sitter-typescript').tsx;
|
|
24
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
25
|
-
const JavaScript = require('tree-sitter-javascript');
|
|
26
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
27
|
-
const Python = require('tree-sitter-python');
|
|
28
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
29
|
-
const Go = require('tree-sitter-go');
|
|
30
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
31
|
-
const Rust = require('tree-sitter-rust');
|
|
32
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
33
|
-
const Java = require('tree-sitter-java');
|
|
34
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
35
|
-
const C = require('tree-sitter-c');
|
|
36
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
37
|
-
const Cpp = require('tree-sitter-cpp');
|
|
38
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
39
|
-
const CSharp = require('tree-sitter-c-sharp');
|
|
40
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
41
|
-
const PHP = require('tree-sitter-php').php;
|
|
42
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
43
|
-
const Ruby = require('tree-sitter-ruby');
|
|
44
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
45
|
-
const Swift = require('tree-sitter-swift');
|
|
46
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
47
|
-
const Kotlin = require('tree-sitter-kotlin');
|
|
48
|
-
// Note: tree-sitter-liquid has ABI compatibility issues with tree-sitter 0.22+
|
|
49
|
-
// Liquid extraction is handled separately via regex in tree-sitter.ts
|
|
50
21
|
/**
|
|
51
|
-
*
|
|
22
|
+
* Lazy grammar loaders — each language's native binding is only loaded
|
|
23
|
+
* on first use, so a failure in one grammar doesn't affect others.
|
|
52
24
|
*/
|
|
53
|
-
const
|
|
54
|
-
typescript:
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
25
|
+
const grammarLoaders = {
|
|
26
|
+
typescript: () => {
|
|
27
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
28
|
+
return require('tree-sitter-typescript').typescript;
|
|
29
|
+
},
|
|
30
|
+
tsx: () => {
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
32
|
+
return require('tree-sitter-typescript').tsx;
|
|
33
|
+
},
|
|
34
|
+
javascript: () => {
|
|
35
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
36
|
+
return require('tree-sitter-javascript');
|
|
37
|
+
},
|
|
38
|
+
jsx: () => {
|
|
39
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
40
|
+
return require('tree-sitter-javascript');
|
|
41
|
+
},
|
|
42
|
+
python: () => {
|
|
43
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
44
|
+
return require('tree-sitter-python');
|
|
45
|
+
},
|
|
46
|
+
go: () => {
|
|
47
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
48
|
+
return require('tree-sitter-go');
|
|
49
|
+
},
|
|
50
|
+
rust: () => {
|
|
51
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
52
|
+
return require('tree-sitter-rust');
|
|
53
|
+
},
|
|
54
|
+
java: () => {
|
|
55
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
56
|
+
return require('tree-sitter-java');
|
|
57
|
+
},
|
|
58
|
+
c: () => {
|
|
59
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
60
|
+
return require('tree-sitter-c');
|
|
61
|
+
},
|
|
62
|
+
cpp: () => {
|
|
63
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
64
|
+
return require('tree-sitter-cpp');
|
|
65
|
+
},
|
|
66
|
+
csharp: () => {
|
|
67
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
68
|
+
return require('tree-sitter-c-sharp');
|
|
69
|
+
},
|
|
70
|
+
php: () => {
|
|
71
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
72
|
+
return require('tree-sitter-php').php;
|
|
73
|
+
},
|
|
74
|
+
ruby: () => {
|
|
75
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
76
|
+
return require('tree-sitter-ruby');
|
|
77
|
+
},
|
|
78
|
+
swift: () => {
|
|
79
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
80
|
+
return require('tree-sitter-swift');
|
|
81
|
+
},
|
|
82
|
+
kotlin: () => {
|
|
83
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
84
|
+
return require('tree-sitter-kotlin');
|
|
85
|
+
},
|
|
86
|
+
dart: () => {
|
|
87
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
88
|
+
return require('@sengac/tree-sitter-dart');
|
|
89
|
+
},
|
|
90
|
+
// Note: tree-sitter-liquid has ABI compatibility issues with tree-sitter 0.22+
|
|
91
|
+
// Liquid extraction is handled separately via regex in tree-sitter.ts
|
|
70
92
|
};
|
|
71
93
|
/**
|
|
72
94
|
* File extension to Language mapping
|
|
@@ -97,26 +119,56 @@ exports.EXTENSION_MAP = {
|
|
|
97
119
|
'.swift': 'swift',
|
|
98
120
|
'.kt': 'kotlin',
|
|
99
121
|
'.kts': 'kotlin',
|
|
122
|
+
'.dart': 'dart',
|
|
100
123
|
'.liquid': 'liquid',
|
|
124
|
+
'.svelte': 'svelte',
|
|
101
125
|
};
|
|
102
126
|
/**
|
|
103
|
-
*
|
|
127
|
+
* Caches for loaded grammars and parsers
|
|
104
128
|
*/
|
|
105
129
|
const parserCache = new Map();
|
|
130
|
+
const grammarCache = new Map();
|
|
131
|
+
const unavailableGrammarErrors = new Map();
|
|
132
|
+
/**
|
|
133
|
+
* Load a grammar on demand, caching the result.
|
|
134
|
+
* Returns null if the grammar is not available on this platform.
|
|
135
|
+
*/
|
|
136
|
+
function loadGrammar(language) {
|
|
137
|
+
if (grammarCache.has(language)) {
|
|
138
|
+
return grammarCache.get(language) ?? null;
|
|
139
|
+
}
|
|
140
|
+
const loader = grammarLoaders[language];
|
|
141
|
+
if (!loader) {
|
|
142
|
+
grammarCache.set(language, null);
|
|
143
|
+
return null;
|
|
144
|
+
}
|
|
145
|
+
try {
|
|
146
|
+
const grammar = loader();
|
|
147
|
+
if (!grammar) {
|
|
148
|
+
throw new Error(`Grammar loader returned empty value for ${language}`);
|
|
149
|
+
}
|
|
150
|
+
grammarCache.set(language, grammar);
|
|
151
|
+
return grammar;
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
155
|
+
console.warn(`[CodeGraph] Failed to load ${language} grammar — parsing will be unavailable: ${message}`);
|
|
156
|
+
unavailableGrammarErrors.set(language, message);
|
|
157
|
+
grammarCache.set(language, null);
|
|
158
|
+
return null;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
106
161
|
/**
|
|
107
162
|
* Get a parser for the specified language
|
|
108
163
|
*/
|
|
109
164
|
function getParser(language) {
|
|
110
|
-
// Check cache first
|
|
111
165
|
if (parserCache.has(language)) {
|
|
112
166
|
return parserCache.get(language);
|
|
113
167
|
}
|
|
114
|
-
|
|
115
|
-
const grammar = GRAMMAR_MAP[language];
|
|
168
|
+
const grammar = loadGrammar(language);
|
|
116
169
|
if (!grammar) {
|
|
117
170
|
return null;
|
|
118
171
|
}
|
|
119
|
-
// Create and cache parser
|
|
120
172
|
const parser = new tree_sitter_1.default();
|
|
121
173
|
parser.setLanguage(grammar);
|
|
122
174
|
parserCache.set(language, parser);
|
|
@@ -130,28 +182,42 @@ function detectLanguage(filePath) {
|
|
|
130
182
|
return exports.EXTENSION_MAP[ext] || 'unknown';
|
|
131
183
|
}
|
|
132
184
|
/**
|
|
133
|
-
* Check if a language is supported
|
|
185
|
+
* Check if a language is supported by currently available parsers.
|
|
134
186
|
*/
|
|
135
187
|
function isLanguageSupported(language) {
|
|
136
|
-
|
|
188
|
+
if (language === 'svelte')
|
|
189
|
+
return true; // custom extractor (script block delegation)
|
|
137
190
|
if (language === 'liquid')
|
|
138
|
-
return true;
|
|
139
|
-
|
|
191
|
+
return true; // custom regex extractor
|
|
192
|
+
if (language === 'unknown')
|
|
193
|
+
return false;
|
|
194
|
+
return loadGrammar(language) !== null;
|
|
140
195
|
}
|
|
141
196
|
/**
|
|
142
|
-
* Get all supported languages
|
|
197
|
+
* Get all currently supported languages.
|
|
143
198
|
*/
|
|
144
199
|
function getSupportedLanguages() {
|
|
145
|
-
const
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
return languages;
|
|
200
|
+
const available = Object.keys(grammarLoaders)
|
|
201
|
+
.filter((language) => loadGrammar(language) !== null);
|
|
202
|
+
return [...available, 'svelte', 'liquid'];
|
|
149
203
|
}
|
|
150
204
|
/**
|
|
151
|
-
* Clear
|
|
205
|
+
* Clear parser/grammar caches (useful for testing)
|
|
152
206
|
*/
|
|
153
207
|
function clearParserCache() {
|
|
154
208
|
parserCache.clear();
|
|
209
|
+
grammarCache.clear();
|
|
210
|
+
unavailableGrammarErrors.clear();
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Report grammars that failed to load.
|
|
214
|
+
*/
|
|
215
|
+
function getUnavailableGrammarErrors() {
|
|
216
|
+
const out = {};
|
|
217
|
+
for (const [language, message] of unavailableGrammarErrors.entries()) {
|
|
218
|
+
out[language] = message;
|
|
219
|
+
}
|
|
220
|
+
return out;
|
|
155
221
|
}
|
|
156
222
|
/**
|
|
157
223
|
* Get language display name
|
|
@@ -173,6 +239,8 @@ function getLanguageDisplayName(language) {
|
|
|
173
239
|
ruby: 'Ruby',
|
|
174
240
|
swift: 'Swift',
|
|
175
241
|
kotlin: 'Kotlin',
|
|
242
|
+
dart: 'Dart',
|
|
243
|
+
svelte: 'Svelte',
|
|
176
244
|
liquid: 'Liquid',
|
|
177
245
|
unknown: 'Unknown',
|
|
178
246
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grammars.js","sourceRoot":"","sources":["../../src/extraction/grammars.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"grammars.js","sourceRoot":"","sources":["../../src/extraction/grammars.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Coordinates file scanning, parsing, and database storage.
|
|
5
5
|
*/
|
|
6
|
+
import * as fs from 'fs';
|
|
6
7
|
import { ExtractionResult, ExtractionError, CodeGraphConfig } from '../types';
|
|
7
8
|
import { QueryBuilder } from '../db/queries';
|
|
8
9
|
/**
|
|
@@ -69,6 +70,11 @@ export declare class ExtractionOrchestrator {
|
|
|
69
70
|
* Index a single file
|
|
70
71
|
*/
|
|
71
72
|
indexFile(relativePath: string): Promise<ExtractionResult>;
|
|
73
|
+
/**
|
|
74
|
+
* Index a single file with pre-read content and stats.
|
|
75
|
+
* Used by the parallel batch reader to avoid redundant file I/O.
|
|
76
|
+
*/
|
|
77
|
+
indexFileWithContent(relativePath: string, content: string, stats: fs.Stats): Promise<ExtractionResult>;
|
|
72
78
|
/**
|
|
73
79
|
* Store extraction result in database
|
|
74
80
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/extraction/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/extraction/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAKzB,OAAO,EAGL,gBAAgB,EAChB,eAAe,EACf,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAc7C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnD;AAUD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,eAAe,GACtB,OAAO,CAgBT;AAgCD;;GAEG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,eAAe,EACvB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GACnD,MAAM,EAAE,CA+GV;AAED;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,OAAO,CAAe;gBAElB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY;IAM3E;;OAEG;IACG,QAAQ,CACZ,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,EAC9C,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,WAAW,CAAC;IA2IvB;;OAEG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAmC3D;;OAEG;IACG,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAsChE;;;OAGG;IACG,oBAAoB,CACxB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,EAAE,CAAC,KAAK,GACd,OAAO,CAAC,gBAAgB,CAAC;IAqD5B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsD7B;;OAEG;IACG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IAkF/E;;OAEG;IACH,eAAe,IAAI;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;CAuC9E;AAGD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
|