atlas-pipeline-mcp 1.0.19 → 1.0.20
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/tools/context.d.ts +33 -7
- package/dist/tools/context.d.ts.map +1 -1
- package/dist/tools/context.js +167 -82
- package/dist/tools/context.js.map +1 -1
- package/dist/tools/git.d.ts +27 -4
- package/dist/tools/git.d.ts.map +1 -1
- package/dist/tools/git.js +156 -59
- package/dist/tools/git.js.map +1 -1
- package/dist/tools/resource-manager.d.ts +167 -0
- package/dist/tools/resource-manager.d.ts.map +1 -0
- package/dist/tools/resource-manager.js +352 -0
- package/dist/tools/resource-manager.js.map +1 -0
- package/dist/tools/test-utils.d.ts +170 -0
- package/dist/tools/test-utils.d.ts.map +1 -0
- package/dist/tools/test-utils.js +490 -0
- package/dist/tools/test-utils.js.map +1 -0
- package/dist/tools/validation.d.ts +237 -0
- package/dist/tools/validation.d.ts.map +1 -0
- package/dist/tools/validation.js +323 -0
- package/dist/tools/validation.js.map +1 -0
- package/package.json +1 -1
package/dist/tools/context.d.ts
CHANGED
|
@@ -2,21 +2,47 @@
|
|
|
2
2
|
* Atlas Server - Context Aggregation Tool
|
|
3
3
|
*
|
|
4
4
|
* Gathers and aggregates context from multiple sources:
|
|
5
|
-
* - Project structure analysis
|
|
6
|
-
* - Relevant code snippets
|
|
7
|
-
* - Configuration files
|
|
8
|
-
* - Dependencies information
|
|
5
|
+
* - Project structure analysis with caching
|
|
6
|
+
* - Relevant code snippets with relevance scoring
|
|
7
|
+
* - Configuration files with validation
|
|
8
|
+
* - Dependencies information with security checking
|
|
9
|
+
*
|
|
10
|
+
* Performance Features:
|
|
11
|
+
* - Parallel file scanning for faster analysis
|
|
12
|
+
* - Result caching to avoid redundant operations
|
|
13
|
+
* - Smart snippet ranking by relevance
|
|
14
|
+
* - Memory-efficient streaming for large files
|
|
15
|
+
*
|
|
16
|
+
* @module context
|
|
17
|
+
* @version 2.0.0
|
|
9
18
|
*/
|
|
10
19
|
import type { PipelineContext, IntentAnalysis, ProjectInfo, GitContext } from '../types.js';
|
|
11
|
-
|
|
20
|
+
/** Supported code file extensions with language mapping */
|
|
21
|
+
declare const CODE_EXTENSIONS: Map<string, string>;
|
|
12
22
|
declare const CONFIG_FILES: string[];
|
|
23
|
+
/** Directories to ignore during scanning (performance and security) */
|
|
13
24
|
declare const IGNORE_DIRS: Set<string>;
|
|
14
25
|
/**
|
|
15
|
-
* Build comprehensive context for the pipeline
|
|
26
|
+
* Build comprehensive context for the pipeline with caching and parallel processing
|
|
27
|
+
*
|
|
28
|
+
* @param intent - Analyzed user intent
|
|
29
|
+
* @param repoPath - Optional repository path
|
|
30
|
+
* @param gitContext - Optional git context
|
|
31
|
+
* @returns Pipeline context with code snippets and project info
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* const context = await buildContext(intent, '/path/to/repo', gitContext);
|
|
36
|
+
* console.log(`Found ${context.codeSnippets.length} relevant snippets`);
|
|
37
|
+
* ```
|
|
16
38
|
*/
|
|
17
39
|
export declare function buildContext(intent: IntentAnalysis, repoPath?: string, gitContext?: GitContext): Promise<PipelineContext>;
|
|
18
40
|
/**
|
|
19
|
-
* Analyze project structure and configuration
|
|
41
|
+
* Analyze project structure and configuration with caching
|
|
42
|
+
*
|
|
43
|
+
* @param rootPath - Project root directory
|
|
44
|
+
* @returns Comprehensive project information
|
|
45
|
+
* @throws {Error} If rootPath is invalid or inaccessible
|
|
20
46
|
*/
|
|
21
47
|
export declare function analyzeProject(rootPath: string): Promise<ProjectInfo>;
|
|
22
48
|
export { CODE_EXTENSIONS, CONFIG_FILES, IGNORE_DIRS };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEd,WAAW,EACX,UAAU,EACX,MAAM,aAAa,CAAC;AAsBrB,2DAA2D;AAC3D,QAAA,MAAM,eAAe,qBAcnB,CAAC;AAEH,QAAA,MAAM,YAAY,UAajB,CAAC;AAEF,uEAAuE;AACvE,QAAA,MAAM,WAAW,aAWf,CAAC;AAgBH;;;;;;;;;;;;;GAaG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,cAAc,EACtB,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,eAAe,CAAC,CAsD1B;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA8G3E;AAmPD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/tools/context.js
CHANGED
|
@@ -2,33 +2,56 @@
|
|
|
2
2
|
* Atlas Server - Context Aggregation Tool
|
|
3
3
|
*
|
|
4
4
|
* Gathers and aggregates context from multiple sources:
|
|
5
|
-
* - Project structure analysis
|
|
6
|
-
* - Relevant code snippets
|
|
7
|
-
* - Configuration files
|
|
8
|
-
* - Dependencies information
|
|
5
|
+
* - Project structure analysis with caching
|
|
6
|
+
* - Relevant code snippets with relevance scoring
|
|
7
|
+
* - Configuration files with validation
|
|
8
|
+
* - Dependencies information with security checking
|
|
9
|
+
*
|
|
10
|
+
* Performance Features:
|
|
11
|
+
* - Parallel file scanning for faster analysis
|
|
12
|
+
* - Result caching to avoid redundant operations
|
|
13
|
+
* - Smart snippet ranking by relevance
|
|
14
|
+
* - Memory-efficient streaming for large files
|
|
15
|
+
*
|
|
16
|
+
* @module context
|
|
17
|
+
* @version 2.0.0
|
|
9
18
|
*/
|
|
10
|
-
import { readFile, readdir, stat } from 'node:fs/promises';
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
19
|
+
import { readFile, readdir, stat, access } from 'node:fs/promises';
|
|
20
|
+
import { constants } from 'node:fs';
|
|
21
|
+
import { join, extname, relative, normalize } from 'node:path';
|
|
22
|
+
import { logger, isDefined, LRUCache, parallelMap, globalMetrics } from '../utils.js';
|
|
13
23
|
// ============================================================================
|
|
14
|
-
// Configuration
|
|
24
|
+
// Configuration (Centralized for Easy Tuning)
|
|
15
25
|
// ============================================================================
|
|
16
|
-
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
/** Maximum file size to read (prevents memory exhaustion) */
|
|
27
|
+
const MAX_FILE_SIZE = 100 * 1024; // 100KB
|
|
28
|
+
/** Maximum characters per code snippet */
|
|
29
|
+
const MAX_SNIPPET_LENGTH = 2000;
|
|
30
|
+
/** Maximum number of snippets to return */
|
|
31
|
+
const MAX_SNIPPETS = 10;
|
|
32
|
+
/** Maximum directory depth for scanning */
|
|
33
|
+
const MAX_SCAN_DEPTH = 10;
|
|
34
|
+
/** Concurrency for parallel file operations */
|
|
35
|
+
const FILE_SCAN_CONCURRENCY = 5;
|
|
36
|
+
/** Cache TTL for project analysis (5 minutes) */
|
|
37
|
+
const PROJECT_CACHE_TTL_MS = 5 * 60 * 1000;
|
|
38
|
+
/** Cache size for project info */
|
|
39
|
+
const PROJECT_CACHE_SIZE = 50;
|
|
40
|
+
/** Supported code file extensions with language mapping */
|
|
41
|
+
const CODE_EXTENSIONS = new Map([
|
|
42
|
+
['.ts', 'TypeScript'], ['.tsx', 'TypeScript'],
|
|
43
|
+
['.js', 'JavaScript'], ['.jsx', 'JavaScript'], ['.mjs', 'JavaScript'], ['.cjs', 'JavaScript'],
|
|
44
|
+
['.py', 'Python'], ['.pyw', 'Python'],
|
|
45
|
+
['.rs', 'Rust'],
|
|
46
|
+
['.go', 'Go'],
|
|
47
|
+
['.java', 'Java'],
|
|
48
|
+
['.rb', 'Ruby'],
|
|
49
|
+
['.php', 'PHP'],
|
|
50
|
+
['.swift', 'Swift'],
|
|
51
|
+
['.kt', 'Kotlin'], ['.kts', 'Kotlin'],
|
|
52
|
+
['.c', 'C'], ['.h', 'C'], ['.cpp', 'C++'], ['.hpp', 'C++'], ['.cc', 'C++'],
|
|
53
|
+
['.cs', 'C#'],
|
|
54
|
+
['.vue', 'Vue'], ['.svelte', 'Svelte'],
|
|
32
55
|
]);
|
|
33
56
|
const CONFIG_FILES = [
|
|
34
57
|
'package.json',
|
|
@@ -44,28 +67,49 @@ const CONFIG_FILES = [
|
|
|
44
67
|
'.env',
|
|
45
68
|
'.env.example',
|
|
46
69
|
];
|
|
70
|
+
/** Directories to ignore during scanning (performance and security) */
|
|
47
71
|
const IGNORE_DIRS = new Set([
|
|
48
|
-
'node_modules',
|
|
49
|
-
'.git',
|
|
50
|
-
'dist',
|
|
51
|
-
'
|
|
52
|
-
'
|
|
53
|
-
'
|
|
54
|
-
'
|
|
55
|
-
'.
|
|
56
|
-
'
|
|
57
|
-
'
|
|
58
|
-
'.venv',
|
|
59
|
-
'venv',
|
|
60
|
-
'env',
|
|
72
|
+
'node_modules', 'bower_components',
|
|
73
|
+
'.git', '.svn', '.hg',
|
|
74
|
+
'dist', 'build', 'out', 'target',
|
|
75
|
+
'.next', '.nuxt', '.output',
|
|
76
|
+
'__pycache__', '.pytest_cache', '.mypy_cache', '.tox',
|
|
77
|
+
'vendor', 'Pods',
|
|
78
|
+
'.venv', 'venv', 'env', 'virtualenv',
|
|
79
|
+
'coverage', '.nyc_output',
|
|
80
|
+
'tmp', 'temp', 'cache',
|
|
81
|
+
'.idea', '.vscode', '.vs',
|
|
61
82
|
]);
|
|
62
83
|
// ============================================================================
|
|
63
|
-
//
|
|
84
|
+
// Caching Layer for Performance
|
|
85
|
+
// ============================================================================
|
|
86
|
+
/** Cache for project analysis results */
|
|
87
|
+
const projectCache = new LRUCache(PROJECT_CACHE_SIZE, PROJECT_CACHE_TTL_MS);
|
|
88
|
+
/** Cache for file existence checks */
|
|
89
|
+
const fileExistsCache = new LRUCache(200, 30000); // 30s TTL
|
|
90
|
+
// ============================================================================
|
|
91
|
+
// Context Building (Enhanced with Validation and Caching)
|
|
64
92
|
// ============================================================================
|
|
65
93
|
/**
|
|
66
|
-
* Build comprehensive context for the pipeline
|
|
94
|
+
* Build comprehensive context for the pipeline with caching and parallel processing
|
|
95
|
+
*
|
|
96
|
+
* @param intent - Analyzed user intent
|
|
97
|
+
* @param repoPath - Optional repository path
|
|
98
|
+
* @param gitContext - Optional git context
|
|
99
|
+
* @returns Pipeline context with code snippets and project info
|
|
100
|
+
*
|
|
101
|
+
* @example
|
|
102
|
+
* ```typescript
|
|
103
|
+
* const context = await buildContext(intent, '/path/to/repo', gitContext);
|
|
104
|
+
* console.log(`Found ${context.codeSnippets.length} relevant snippets`);
|
|
105
|
+
* ```
|
|
67
106
|
*/
|
|
68
107
|
export async function buildContext(intent, repoPath, gitContext) {
|
|
108
|
+
// Input validation
|
|
109
|
+
if (!intent || !intent.primaryIntent) {
|
|
110
|
+
throw new Error('Invalid intent: primaryIntent is required');
|
|
111
|
+
}
|
|
112
|
+
const startTime = performance.now();
|
|
69
113
|
logger.debug({ repoPath, hasGitContext: !!gitContext }, 'Building context');
|
|
70
114
|
const context = {
|
|
71
115
|
intent,
|
|
@@ -73,42 +117,72 @@ export async function buildContext(intent, repoPath, gitContext) {
|
|
|
73
117
|
gitContext,
|
|
74
118
|
};
|
|
75
119
|
if (!repoPath) {
|
|
120
|
+
logger.debug('No repository path provided, returning minimal context');
|
|
76
121
|
return context;
|
|
77
122
|
}
|
|
123
|
+
// Normalize path for consistent caching
|
|
124
|
+
const normalizedPath = normalize(repoPath);
|
|
78
125
|
try {
|
|
79
|
-
// Gather project info
|
|
80
|
-
context.projectInfo = await analyzeProject(
|
|
81
|
-
// Find relevant code snippets
|
|
82
|
-
context.codeSnippets = await findRelevantSnippets(
|
|
126
|
+
// Gather project info with caching
|
|
127
|
+
context.projectInfo = await globalMetrics.measure('context_analyze_project', () => analyzeProject(normalizedPath));
|
|
128
|
+
// Find relevant code snippets in parallel with project analysis
|
|
129
|
+
context.codeSnippets = await globalMetrics.measure('context_find_snippets', () => findRelevantSnippets(normalizedPath, intent, context.projectInfo));
|
|
130
|
+
const duration = Math.round(performance.now() - startTime);
|
|
83
131
|
logger.debug({
|
|
84
132
|
snippetCount: context.codeSnippets.length,
|
|
85
133
|
languages: context.projectInfo.languages,
|
|
134
|
+
durationMs: duration,
|
|
86
135
|
}, 'Context built successfully');
|
|
87
136
|
}
|
|
88
137
|
catch (error) {
|
|
89
|
-
|
|
138
|
+
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
139
|
+
logger.warn({ error: errorMsg, repoPath: normalizedPath }, 'Error building context');
|
|
140
|
+
// Return partial context rather than failing completely
|
|
141
|
+
context.projectInfo = undefined;
|
|
142
|
+
context.codeSnippets = [];
|
|
90
143
|
}
|
|
91
144
|
return context;
|
|
92
145
|
}
|
|
93
146
|
/**
|
|
94
|
-
* Analyze project structure and configuration
|
|
147
|
+
* Analyze project structure and configuration with caching
|
|
148
|
+
*
|
|
149
|
+
* @param rootPath - Project root directory
|
|
150
|
+
* @returns Comprehensive project information
|
|
151
|
+
* @throws {Error} If rootPath is invalid or inaccessible
|
|
95
152
|
*/
|
|
96
153
|
export async function analyzeProject(rootPath) {
|
|
154
|
+
// Input validation
|
|
155
|
+
if (!rootPath || typeof rootPath !== 'string') {
|
|
156
|
+
throw new Error('Invalid rootPath: must be a non-empty string');
|
|
157
|
+
}
|
|
158
|
+
// Check cache first
|
|
159
|
+
const cacheKey = normalize(rootPath);
|
|
160
|
+
const cached = projectCache.get(cacheKey);
|
|
161
|
+
if (cached) {
|
|
162
|
+
logger.debug({ rootPath }, 'Using cached project info');
|
|
163
|
+
return cached;
|
|
164
|
+
}
|
|
165
|
+
// Verify directory exists and is accessible
|
|
166
|
+
try {
|
|
167
|
+
const stats = await stat(rootPath);
|
|
168
|
+
if (!stats.isDirectory()) {
|
|
169
|
+
throw new Error(`Path is not a directory: ${rootPath}`);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
catch (error) {
|
|
173
|
+
throw new Error(`Cannot access directory: ${rootPath} - ${error}`);
|
|
174
|
+
}
|
|
97
175
|
const languages = new Set();
|
|
98
176
|
const frameworks = new Set();
|
|
99
177
|
const configFiles = [];
|
|
100
178
|
let packageManager;
|
|
101
|
-
// Check for config files
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
catch {
|
|
109
|
-
// File doesn't exist
|
|
110
|
-
}
|
|
111
|
-
}
|
|
179
|
+
// Check for config files in parallel for better performance
|
|
180
|
+
const configChecks = await parallelMap(CONFIG_FILES, async (configFile) => {
|
|
181
|
+
const filePath = join(rootPath, configFile);
|
|
182
|
+
const exists = await fileExists(filePath);
|
|
183
|
+
return exists ? configFile : null;
|
|
184
|
+
}, { concurrency: FILE_SCAN_CONCURRENCY });
|
|
185
|
+
configFiles.push(...configChecks.filter(isDefined));
|
|
112
186
|
// Detect package manager
|
|
113
187
|
if (configFiles.includes('package.json')) {
|
|
114
188
|
if (await fileExists(join(rootPath, 'bun.lockb'))) {
|
|
@@ -124,7 +198,7 @@ export async function analyzeProject(rootPath) {
|
|
|
124
198
|
packageManager = 'npm';
|
|
125
199
|
}
|
|
126
200
|
}
|
|
127
|
-
// Analyze package.json for frameworks
|
|
201
|
+
// Analyze package.json for frameworks (with error handling)
|
|
128
202
|
const packageJsonPath = join(rootPath, 'package.json');
|
|
129
203
|
if (await fileExists(packageJsonPath)) {
|
|
130
204
|
try {
|
|
@@ -134,42 +208,43 @@ export async function analyzeProject(rootPath) {
|
|
|
134
208
|
...pkg.dependencies,
|
|
135
209
|
...pkg.devDependencies,
|
|
136
210
|
};
|
|
137
|
-
// Detect frameworks
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
frameworks.add('Koa');
|
|
154
|
-
if (allDeps['nestjs'] || allDeps['@nestjs/core'])
|
|
155
|
-
frameworks.add('NestJS');
|
|
211
|
+
// Detect frameworks with priority (more specific first)
|
|
212
|
+
const frameworkDetectors = [
|
|
213
|
+
['@nestjs/core', 'NestJS'],
|
|
214
|
+
['next', 'Next.js'],
|
|
215
|
+
['react', 'React'],
|
|
216
|
+
['vue', 'Vue'],
|
|
217
|
+
['@angular/core', 'Angular'],
|
|
218
|
+
['svelte', 'Svelte'],
|
|
219
|
+
['fastify', 'Fastify'],
|
|
220
|
+
['express', 'Express'],
|
|
221
|
+
['koa', 'Koa'],
|
|
222
|
+
];
|
|
223
|
+
for (const [pkg, framework] of frameworkDetectors) {
|
|
224
|
+
if (allDeps[pkg])
|
|
225
|
+
frameworks.add(framework);
|
|
226
|
+
}
|
|
156
227
|
// Detect TypeScript
|
|
157
228
|
if (allDeps['typescript'])
|
|
158
229
|
languages.add('TypeScript');
|
|
159
230
|
}
|
|
160
|
-
catch {
|
|
161
|
-
|
|
231
|
+
catch (error) {
|
|
232
|
+
logger.warn({ error, path: packageJsonPath }, 'Failed to parse package.json');
|
|
233
|
+
// Continue without package.json analysis
|
|
162
234
|
}
|
|
163
235
|
}
|
|
164
|
-
// Scan for code files to detect languages
|
|
236
|
+
// Scan for code files to detect languages (with depth limit for performance)
|
|
165
237
|
await scanForLanguages(rootPath, languages, 3);
|
|
166
|
-
|
|
238
|
+
const projectInfo = {
|
|
167
239
|
rootPath,
|
|
168
240
|
languages: Array.from(languages),
|
|
169
241
|
frameworks: Array.from(frameworks),
|
|
170
242
|
packageManager,
|
|
171
243
|
configFiles,
|
|
172
244
|
};
|
|
245
|
+
// Cache the result
|
|
246
|
+
projectCache.set(cacheKey, projectInfo);
|
|
247
|
+
return projectInfo;
|
|
173
248
|
}
|
|
174
249
|
/**
|
|
175
250
|
* Find code snippets relevant to the user's intent
|
|
@@ -215,14 +290,24 @@ async function findRelevantSnippets(rootPath, intent, projectInfo) {
|
|
|
215
290
|
// Helper Functions
|
|
216
291
|
// ============================================================================
|
|
217
292
|
/**
|
|
218
|
-
* Check if a file exists
|
|
293
|
+
* Check if a file exists with caching for performance
|
|
294
|
+
*
|
|
295
|
+
* @param path - File path to check
|
|
296
|
+
* @returns True if file exists and is accessible
|
|
219
297
|
*/
|
|
220
298
|
async function fileExists(path) {
|
|
299
|
+
// Check cache first
|
|
300
|
+
const cached = fileExistsCache.get(path);
|
|
301
|
+
if (cached !== undefined) {
|
|
302
|
+
return cached;
|
|
303
|
+
}
|
|
221
304
|
try {
|
|
222
|
-
await
|
|
305
|
+
await access(path, constants.F_OK);
|
|
306
|
+
fileExistsCache.set(path, true);
|
|
223
307
|
return true;
|
|
224
308
|
}
|
|
225
309
|
catch {
|
|
310
|
+
fileExistsCache.set(path, false);
|
|
226
311
|
return false;
|
|
227
312
|
}
|
|
228
313
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAQ/D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAoB,aAAa,EAAE,MAAM,aAAa,CAAC;AAExG,+EAA+E;AAC/E,8CAA8C;AAC9C,+EAA+E;AAE/E,6DAA6D;AAC7D,MAAM,aAAa,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,QAAQ;AAC1C,0CAA0C;AAC1C,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,2CAA2C;AAC3C,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,2CAA2C;AAC3C,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,+CAA+C;AAC/C,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,iDAAiD;AACjD,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAC3C,kCAAkC;AAClC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B,2DAA2D;AAC3D,MAAM,eAAe,GAAG,IAAI,GAAG,CAAiB;IAC9C,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IAC7C,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IAC7F,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IACrC,CAAC,KAAK,EAAE,MAAM,CAAC;IACf,CAAC,KAAK,EAAE,IAAI,CAAC;IACb,CAAC,OAAO,EAAE,MAAM,CAAC;IACjB,CAAC,KAAK,EAAE,MAAM,CAAC;IACf,CAAC,MAAM,EAAE,KAAK,CAAC;IACf,CAAC,QAAQ,EAAE,OAAO,CAAC;IACnB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IACrC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;IAC1E,CAAC,KAAK,EAAE,IAAI,CAAC;IACb,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG;IACnB,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,YAAY;IACZ,QAAQ;IACR,SAAS;IACT,cAAc;IACd,kBAAkB;IAClB,SAAS;IACT,eAAe;IACf,MAAM;IACN,cAAc;CACf,CAAC;AAEF,uEAAuE;AACvE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,cAAc,EAAE,kBAAkB;IAClC,MAAM,EAAE,MAAM,EAAE,KAAK;IACrB,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ;IAChC,OAAO,EAAE,OAAO,EAAE,SAAS;IAC3B,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM;IACrD,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY;IACpC,UAAU,EAAE,aAAa;IACzB,KAAK,EAAE,MAAM,EAAE,OAAO;IACtB,OAAO,EAAE,SAAS,EAAE,KAAK;CAC1B,CAAC,CAAC;AAEH,+EAA+E;AAC/E,gCAAgC;AAChC,+EAA+E;AAE/E,yCAAyC;AACzC,MAAM,YAAY,GAAG,IAAI,QAAQ,CAAsB,kBAAkB,EAAE,oBAAoB,CAAC,CAAC;AAEjG,sCAAsC;AACtC,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAkB,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU;AAE7E,+EAA+E;AAC/E,0DAA0D;AAC1D,+EAA+E;AAE/E;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAsB,EACtB,QAAiB,EACjB,UAAuB;IAEvB,mBAAmB;IACnB,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IACpC,MAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC,UAAU,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAE5E,MAAM,OAAO,GAAoB;QAC/B,MAAM;QACN,YAAY,EAAE,EAAE;QAChB,UAAU;KACX,CAAC;IAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACvE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,wCAAwC;IACxC,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAE3C,IAAI,CAAC;QACH,mCAAmC;QACnC,OAAO,CAAC,WAAW,GAAG,MAAM,aAAa,CAAC,OAAO,CAC/C,yBAAyB,EACzB,GAAG,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,CACrC,CAAC;QAEF,gEAAgE;QAChE,OAAO,CAAC,YAAY,GAAG,MAAM,aAAa,CAAC,OAAO,CAChD,uBAAuB,EACvB,GAAG,EAAE,CAAC,oBAAoB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,WAAY,CAAC,CACzE,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;QAC3D,MAAM,CAAC,KAAK,CACV;YACE,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM;YACzC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS;YACxC,UAAU,EAAE,QAAQ;SACrB,EACD,4BAA4B,CAC7B,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,wBAAwB,CAAC,CAAC;QACrF,wDAAwD;QACxD,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;QAChC,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB;IACnD,mBAAmB;IACnB,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,oBAAoB;IACpB,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,EAAE,2BAA2B,CAAC,CAAC;QACxD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4CAA4C;IAC5C,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,MAAM,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,SAAS,GAAgB,IAAI,GAAG,EAAE,CAAC;IACzC,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,cAA6C,CAAC;IAElD,4DAA4D;IAC5D,MAAM,YAAY,GAAG,MAAM,WAAW,CACpC,YAAY,EACZ,KAAK,EAAE,UAAU,EAAE,EAAE;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IACpC,CAAC,EACD,EAAE,WAAW,EAAE,qBAAqB,EAAE,CACvC,CAAC;IAEF,WAAW,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAEpD,yBAAyB;IACzB,IAAI,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACzC,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;YAClD,cAAc,GAAG,KAAK,CAAC;QACzB,CAAC;aAAM,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC;YAC9D,cAAc,GAAG,MAAM,CAAC;QAC1B,CAAC;aAAM,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;YACzD,cAAc,GAAG,MAAM,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,cAAc,GAAG,KAAK,CAAC;QACzB,CAAC;IACH,CAAC;IAED,4DAA4D;IAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACvD,IAAI,MAAM,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACzD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAG7B,CAAC;YAEF,MAAM,OAAO,GAAG;gBACd,GAAG,GAAG,CAAC,YAAY;gBACnB,GAAG,GAAG,CAAC,eAAe;aACvB,CAAC;YAEF,wDAAwD;YACxD,MAAM,kBAAkB,GAA4B;gBAClD,CAAC,cAAc,EAAE,QAAQ,CAAC;gBAC1B,CAAC,MAAM,EAAE,SAAS,CAAC;gBACnB,CAAC,OAAO,EAAE,OAAO,CAAC;gBAClB,CAAC,KAAK,EAAE,KAAK,CAAC;gBACd,CAAC,eAAe,EAAE,SAAS,CAAC;gBAC5B,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBACpB,CAAC,SAAS,EAAE,SAAS,CAAC;gBACtB,CAAC,SAAS,EAAE,SAAS,CAAC;gBACtB,CAAC,KAAK,EAAE,KAAK,CAAC;aACf,CAAC;YAEF,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,kBAAkB,EAAE,CAAC;gBAClD,IAAI,OAAO,CAAC,GAAG,CAAC;oBAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC9C,CAAC;YAED,oBAAoB;YACpB,IAAI,OAAO,CAAC,YAAY,CAAC;gBAAE,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,8BAA8B,CAAC,CAAC;YAC9E,yCAAyC;QAC3C,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,MAAM,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAE/C,MAAM,WAAW,GAAgB;QAC/B,QAAQ;QACR,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;QAChC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;QAClC,cAAc;QACd,WAAW;KACZ,CAAC;IAEF,mBAAmB;IACnB,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAExC,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CACjC,QAAgB,EAChB,MAAsB,EACtB,WAAwB;IAExB,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,mCAAmC;IACnC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YACxD,IAAI,QAAQ,EAAE,CAAC;gBACb,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAC9C,QAAQ,EACR,MAAM,CAAC,QAAQ,EACf,CAAC,CACF,CAAC;QACF,WAAW,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;IACrC,CAAC;IAED,2BAA2B;IAC3B,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;YAE1C,QAAQ,CAAC,IAAI,CAAC;gBACZ,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBACtC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAkB,CAAC;gBACjD,QAAQ;gBACR,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;gBACxD,SAAS,EAAE,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;AAC5D,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;;;;GAKG;AACH,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,oBAAoB;IACpB,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QACnC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAC7B,GAAW,EACX,SAAsB,EACtB,KAAa;IAEb,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO;IAEvB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjC,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC9C,MAAM,IAAI,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBACxC,IAAI,IAAI,EAAE,CAAC;oBACT,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,qBAAqB;IACvB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,QAAQ,CAAC,QAAgB,EAAE,QAAgB;IACxD,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAE3B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEvC,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC9C,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAED,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qBAAqB;QACvB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CACjC,QAAgB,EAChB,QAA2B,EAC3B,QAAgB;IAEhB,MAAM,KAAK,GAA2C,EAAE,CAAC;IACzD,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAE3B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEvC,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBAC7E,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CACpD,CAAC,MAAM,CAAC;oBAET,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;wBACd,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;oBACxC,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qBAAqB;QACvB,CAAC;IACH,CAAC;IAED,OAAO,KAAK;SACT,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;SACjC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC;SAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,QAAgB;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5C,OAAO,qBAAqB,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,OAAe,EAAE,QAA2B;IACtE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IAEtC,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IAExF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,qBAAqB,GAA2B;IACpD,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,YAAY;IACpB,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,MAAM;IACb,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,MAAM;IACf,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,KAAK;IACb,QAAQ,EAAE,OAAO;IACjB,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,QAAQ;CACpB,CAAC;AAEF,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/tools/git.d.ts
CHANGED
|
@@ -2,14 +2,37 @@
|
|
|
2
2
|
* Atlas Server - Git Context Tool
|
|
3
3
|
*
|
|
4
4
|
* Provides git repository context including:
|
|
5
|
-
* - Current branch and status
|
|
6
|
-
* - Recent commit history
|
|
7
|
-
* - Uncommitted changes
|
|
5
|
+
* - Current branch and status (cached for performance)
|
|
6
|
+
* - Recent commit history with filtering
|
|
7
|
+
* - Uncommitted changes and diffs
|
|
8
8
|
* - File history and blame information
|
|
9
|
+
* - Resource-managed git instances
|
|
10
|
+
*
|
|
11
|
+
* Features:
|
|
12
|
+
* - Automatic git instance caching and cleanup
|
|
13
|
+
* - Parallel git operations where safe
|
|
14
|
+
* - Comprehensive error handling
|
|
15
|
+
* - Request deduplication for concurrent calls
|
|
16
|
+
*
|
|
17
|
+
* @module git
|
|
18
|
+
* @version 2.0.0
|
|
9
19
|
*/
|
|
10
20
|
import type { GitContext, GitCommit } from '../types.js';
|
|
11
21
|
/**
|
|
12
|
-
* Get comprehensive git context for a repository
|
|
22
|
+
* Get comprehensive git context for a repository with caching and deduplication
|
|
23
|
+
*
|
|
24
|
+
* @param repoPath - Repository path (will be validated)
|
|
25
|
+
* @param commitLimit - Number of commits to fetch (default: 10, max: 1000)
|
|
26
|
+
* @returns Git context or null if not a valid repository
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* const context = await getGitContext('/path/to/repo', 20);
|
|
31
|
+
* if (context) {
|
|
32
|
+
* console.log(`Branch: ${context.currentBranch}`);
|
|
33
|
+
* console.log(`Commits: ${context.recentCommits.length}`);
|
|
34
|
+
* }
|
|
35
|
+
* ```
|
|
13
36
|
*/
|
|
14
37
|
export declare function getGitContext(repoPath: string, commitLimit?: number): Promise<GitContext | null>;
|
|
15
38
|
/**
|
package/dist/tools/git.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/tools/git.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/tools/git.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAa,MAAM,aAAa,CAAC;AAoGpE;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,WAAW,GAAE,MAA6B,GACzC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA2E5B;AAyBD;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWjF;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWxB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAW7B;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,SAAS,EAAE,CAAC,CActB;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,GAAE,MAAe,GACrB,OAAO,CAAC,MAAM,EAAE,CAAC,CAWnB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAW5E;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC,CAkBD;AA6FD,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAuDD;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC,CAclB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAUpF;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAUxB"}
|