grok-cli-hurry-mode 1.0.4 → 1.0.5

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.
Files changed (80) hide show
  1. package/dist/hooks/use-input-handler.js +588 -0
  2. package/dist/hooks/use-input-handler.js.map +1 -1
  3. package/dist/subagents/subagent-framework.d.ts +66 -0
  4. package/dist/subagents/subagent-framework.js +349 -0
  5. package/dist/subagents/subagent-framework.js.map +1 -0
  6. package/dist/tools/documentation/agent-system-generator.d.ts +30 -0
  7. package/dist/tools/documentation/agent-system-generator.js +816 -0
  8. package/dist/tools/documentation/agent-system-generator.js.map +1 -0
  9. package/dist/tools/documentation/api-docs-generator.d.ts +89 -0
  10. package/dist/tools/documentation/api-docs-generator.js +344 -0
  11. package/dist/tools/documentation/api-docs-generator.js.map +1 -0
  12. package/dist/tools/documentation/auto-update-system.d.ts +47 -0
  13. package/dist/tools/documentation/auto-update-system.js +278 -0
  14. package/dist/tools/documentation/auto-update-system.js.map +1 -0
  15. package/dist/tools/documentation/changelog-generator.d.ts +39 -0
  16. package/dist/tools/documentation/changelog-generator.js +255 -0
  17. package/dist/tools/documentation/changelog-generator.js.map +1 -0
  18. package/dist/tools/documentation/claude-md-parser.d.ts +25 -0
  19. package/dist/tools/documentation/claude-md-parser.js +108 -0
  20. package/dist/tools/documentation/claude-md-parser.js.map +1 -0
  21. package/dist/tools/documentation/comments-generator.d.ts +55 -0
  22. package/dist/tools/documentation/comments-generator.js +238 -0
  23. package/dist/tools/documentation/comments-generator.js.map +1 -0
  24. package/dist/tools/documentation/docs-menu.d.ts +9 -0
  25. package/dist/tools/documentation/docs-menu.js +57 -0
  26. package/dist/tools/documentation/docs-menu.js.map +1 -0
  27. package/dist/tools/documentation/readme-generator.d.ts +31 -0
  28. package/dist/tools/documentation/readme-generator.js +244 -0
  29. package/dist/tools/documentation/readme-generator.js.map +1 -0
  30. package/dist/tools/documentation/self-healing-system.d.ts +66 -0
  31. package/dist/tools/documentation/self-healing-system.js +444 -0
  32. package/dist/tools/documentation/self-healing-system.js.map +1 -0
  33. package/dist/tools/documentation/smart-prd-assistant.d.ts +45 -0
  34. package/dist/tools/documentation/smart-prd-assistant.js +325 -0
  35. package/dist/tools/documentation/smart-prd-assistant.js.map +1 -0
  36. package/dist/tools/documentation/update-agent-docs.d.ts +37 -0
  37. package/dist/tools/documentation/update-agent-docs.js +275 -0
  38. package/dist/tools/documentation/update-agent-docs.js.map +1 -0
  39. package/dist/tools/intelligence/ast-parser.js +22 -4
  40. package/dist/tools/intelligence/ast-parser.js.map +1 -1
  41. package/dist/ui/app.d.ts +2 -1
  42. package/dist/ui/app.js +27 -6
  43. package/dist/ui/app.js.map +1 -1
  44. package/dist/ui/components/api-key-input.d.ts +2 -1
  45. package/dist/ui/components/api-key-input.js +18 -3
  46. package/dist/ui/components/api-key-input.js.map +1 -1
  47. package/dist/ui/components/chat-history.d.ts +2 -1
  48. package/dist/ui/components/chat-history.js +35 -13
  49. package/dist/ui/components/chat-history.js.map +1 -1
  50. package/dist/ui/components/chat-input.d.ts +2 -1
  51. package/dist/ui/components/chat-input.js +36 -15
  52. package/dist/ui/components/chat-input.js.map +1 -1
  53. package/dist/ui/components/chat-interface.d.ts +2 -1
  54. package/dist/ui/components/chat-interface.js +39 -5
  55. package/dist/ui/components/chat-interface.js.map +1 -1
  56. package/dist/ui/components/command-suggestions.d.ts +2 -1
  57. package/dist/ui/components/command-suggestions.js +8 -3
  58. package/dist/ui/components/command-suggestions.js.map +1 -1
  59. package/dist/ui/components/confirmation-dialog.d.ts +2 -1
  60. package/dist/ui/components/confirmation-dialog.js +39 -4
  61. package/dist/ui/components/confirmation-dialog.js.map +1 -1
  62. package/dist/ui/components/diff-renderer.js +66 -57
  63. package/dist/ui/components/diff-renderer.js.map +1 -1
  64. package/dist/ui/components/loading-spinner.d.ts +2 -1
  65. package/dist/ui/components/loading-spinner.js +13 -3
  66. package/dist/ui/components/loading-spinner.js.map +1 -1
  67. package/dist/ui/components/mcp-status.d.ts +2 -1
  68. package/dist/ui/components/mcp-status.js +6 -3
  69. package/dist/ui/components/mcp-status.js.map +1 -1
  70. package/dist/ui/components/model-selection.d.ts +2 -1
  71. package/dist/ui/components/model-selection.js +11 -2
  72. package/dist/ui/components/model-selection.js.map +1 -1
  73. package/dist/ui/shared/max-sized-box.js +2 -2
  74. package/dist/ui/shared/max-sized-box.js.map +1 -1
  75. package/dist/ui/utils/code-colorizer.js +2 -2
  76. package/dist/ui/utils/code-colorizer.js.map +1 -1
  77. package/dist/ui/utils/markdown-renderer.d.ts +2 -1
  78. package/dist/ui/utils/markdown-renderer.js +3 -3
  79. package/dist/ui/utils/markdown-renderer.js.map +1 -1
  80. package/package.json +21 -12
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-system-generator.js","sourceRoot":"","sources":["../../../src/tools/documentation/agent-system-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ export interface ApiDocsConfig {
2
+ rootPath: string;
3
+ outputFormat: 'md' | 'html';
4
+ includePrivate: boolean;
5
+ scanPaths: string[];
6
+ }
7
+ export interface ApiDocumentation {
8
+ modules: ModuleInfo[];
9
+ functions: FunctionInfo[];
10
+ classes: ClassInfo[];
11
+ interfaces: InterfaceInfo[];
12
+ types: TypeInfo[];
13
+ }
14
+ export interface ModuleInfo {
15
+ name: string;
16
+ path: string;
17
+ description?: string;
18
+ exports: string[];
19
+ }
20
+ export interface FunctionInfo {
21
+ name: string;
22
+ module: string;
23
+ signature: string;
24
+ parameters: ParameterInfo[];
25
+ returnType: string;
26
+ description?: string;
27
+ examples?: string[];
28
+ isAsync: boolean;
29
+ isExported: boolean;
30
+ }
31
+ export interface ClassInfo {
32
+ name: string;
33
+ module: string;
34
+ description?: string;
35
+ constructor?: FunctionInfo;
36
+ methods: FunctionInfo[];
37
+ properties: PropertyInfo[];
38
+ extends?: string;
39
+ implements?: string[];
40
+ isExported: boolean;
41
+ }
42
+ export interface InterfaceInfo {
43
+ name: string;
44
+ module: string;
45
+ description?: string;
46
+ properties: PropertyInfo[];
47
+ extends?: string[];
48
+ isExported: boolean;
49
+ }
50
+ export interface TypeInfo {
51
+ name: string;
52
+ module: string;
53
+ definition: string;
54
+ description?: string;
55
+ isExported: boolean;
56
+ }
57
+ export interface ParameterInfo {
58
+ name: string;
59
+ type: string;
60
+ optional: boolean;
61
+ defaultValue?: string;
62
+ description?: string;
63
+ }
64
+ export interface PropertyInfo {
65
+ name: string;
66
+ type: string;
67
+ optional: boolean;
68
+ readonly: boolean;
69
+ description?: string;
70
+ }
71
+ export declare class ApiDocsGenerator {
72
+ private config;
73
+ constructor(config: ApiDocsConfig);
74
+ generateApiDocs(): Promise<{
75
+ success: boolean;
76
+ message: string;
77
+ outputPath?: string;
78
+ }>;
79
+ private scanApiFiles;
80
+ private scanDirectory;
81
+ private isApiFile;
82
+ private parseApiFile;
83
+ private getModuleName;
84
+ private parseParameters;
85
+ private extractPrecedingComment;
86
+ private generateMarkdown;
87
+ private generateHtml;
88
+ private getDocumentationStats;
89
+ }
@@ -0,0 +1,344 @@
1
+ import path from 'path';
2
+ import fs from 'fs/promises';
3
+ import { existsSync } from 'fs';
4
+ export class ApiDocsGenerator {
5
+ constructor(config) {
6
+ this.config = config;
7
+ }
8
+ async generateApiDocs() {
9
+ try {
10
+ // Scan for API files
11
+ const documentation = await this.scanApiFiles();
12
+ if (documentation.functions.length === 0 && documentation.classes.length === 0) {
13
+ return {
14
+ success: false,
15
+ message: 'No API documentation found. Make sure you have TypeScript/JavaScript files with exported functions or classes.'
16
+ };
17
+ }
18
+ // Generate documentation content
19
+ const content = this.config.outputFormat === 'md'
20
+ ? this.generateMarkdown(documentation)
21
+ : this.generateHtml(documentation);
22
+ // Write documentation file
23
+ const outputFileName = `api-docs.${this.config.outputFormat}`;
24
+ const outputPath = path.join(this.config.rootPath, outputFileName);
25
+ await fs.writeFile(outputPath, content);
26
+ const stats = this.getDocumentationStats(documentation);
27
+ return {
28
+ success: true,
29
+ message: `✅ Generated API documentation: ${outputFileName}\n\n📊 **Documentation Stats:**\n${stats}`,
30
+ outputPath
31
+ };
32
+ }
33
+ catch (error) {
34
+ return {
35
+ success: false,
36
+ message: `Failed to generate API docs: ${error.message}`
37
+ };
38
+ }
39
+ }
40
+ async scanApiFiles() {
41
+ const documentation = {
42
+ modules: [],
43
+ functions: [],
44
+ classes: [],
45
+ interfaces: [],
46
+ types: []
47
+ };
48
+ // Default scan paths if not specified
49
+ const scanPaths = this.config.scanPaths.length > 0
50
+ ? this.config.scanPaths
51
+ : ['src/', 'lib/', './'];
52
+ for (const scanPath of scanPaths) {
53
+ const fullPath = path.join(this.config.rootPath, scanPath);
54
+ if (existsSync(fullPath)) {
55
+ await this.scanDirectory(fullPath, documentation);
56
+ }
57
+ }
58
+ return documentation;
59
+ }
60
+ async scanDirectory(dirPath, documentation) {
61
+ try {
62
+ const entries = await fs.readdir(dirPath, { withFileTypes: true });
63
+ for (const entry of entries) {
64
+ const fullPath = path.join(dirPath, entry.name);
65
+ if (entry.isDirectory() && !entry.name.startsWith('.') && entry.name !== 'node_modules') {
66
+ await this.scanDirectory(fullPath, documentation);
67
+ }
68
+ else if (entry.isFile() && this.isApiFile(entry.name)) {
69
+ await this.parseApiFile(fullPath, documentation);
70
+ }
71
+ }
72
+ }
73
+ catch (error) {
74
+ // Skip directories we can't read
75
+ }
76
+ }
77
+ isApiFile(fileName) {
78
+ const apiExtensions = ['.ts', '.js', '.tsx', '.jsx'];
79
+ const ext = path.extname(fileName);
80
+ return apiExtensions.includes(ext) &&
81
+ !fileName.includes('.test.') &&
82
+ !fileName.includes('.spec.') &&
83
+ !fileName.includes('.d.ts');
84
+ }
85
+ async parseApiFile(filePath, documentation) {
86
+ try {
87
+ const content = await fs.readFile(filePath, 'utf-8');
88
+ const relativePath = path.relative(this.config.rootPath, filePath);
89
+ const moduleName = this.getModuleName(relativePath);
90
+ // Simple regex-based parsing (could be enhanced with TypeScript compiler API)
91
+ const lines = content.split('\n');
92
+ const moduleInfo = {
93
+ name: moduleName,
94
+ path: relativePath,
95
+ exports: []
96
+ };
97
+ for (let i = 0; i < lines.length; i++) {
98
+ const line = lines[i].trim();
99
+ // Parse exported functions
100
+ const funcMatch = line.match(/export\s+(?:async\s+)?function\s+(\w+)\s*\(([^)]*)\)(?:\s*:\s*([^{]+))?/);
101
+ if (funcMatch) {
102
+ const [, name, params, returnType] = funcMatch;
103
+ const functionInfo = {
104
+ name,
105
+ module: moduleName,
106
+ signature: line,
107
+ parameters: this.parseParameters(params),
108
+ returnType: returnType?.trim() || 'any',
109
+ isAsync: line.includes('async'),
110
+ isExported: true,
111
+ description: this.extractPrecedingComment(lines, i)
112
+ };
113
+ documentation.functions.push(functionInfo);
114
+ moduleInfo.exports.push(name);
115
+ }
116
+ // Parse exported classes
117
+ const classMatch = line.match(/export\s+class\s+(\w+)(?:\s+extends\s+(\w+))?(?:\s+implements\s+([^{]+))?/);
118
+ if (classMatch) {
119
+ const [, name, extendsClass, implementsInterfaces] = classMatch;
120
+ const classInfo = {
121
+ name,
122
+ module: moduleName,
123
+ description: this.extractPrecedingComment(lines, i),
124
+ methods: [],
125
+ properties: [],
126
+ extends: extendsClass,
127
+ implements: implementsInterfaces?.split(',').map(s => s.trim()),
128
+ isExported: true,
129
+ constructor: undefined
130
+ };
131
+ documentation.classes.push(classInfo);
132
+ moduleInfo.exports.push(name);
133
+ }
134
+ // Parse interfaces
135
+ const interfaceMatch = line.match(/export\s+interface\s+(\w+)(?:\s+extends\s+([^{]+))?/);
136
+ if (interfaceMatch) {
137
+ const [, name, extendsInterfaces] = interfaceMatch;
138
+ const interfaceInfo = {
139
+ name,
140
+ module: moduleName,
141
+ description: this.extractPrecedingComment(lines, i),
142
+ properties: [],
143
+ extends: extendsInterfaces?.split(',').map(s => s.trim()),
144
+ isExported: true
145
+ };
146
+ documentation.interfaces.push(interfaceInfo);
147
+ moduleInfo.exports.push(name);
148
+ }
149
+ // Parse type aliases
150
+ const typeMatch = line.match(/export\s+type\s+(\w+)\s*=\s*([^;]+)/);
151
+ if (typeMatch) {
152
+ const [, name, definition] = typeMatch;
153
+ const typeInfo = {
154
+ name,
155
+ module: moduleName,
156
+ definition: definition.trim(),
157
+ description: this.extractPrecedingComment(lines, i),
158
+ isExported: true
159
+ };
160
+ documentation.types.push(typeInfo);
161
+ moduleInfo.exports.push(name);
162
+ }
163
+ }
164
+ if (moduleInfo.exports.length > 0) {
165
+ documentation.modules.push(moduleInfo);
166
+ }
167
+ }
168
+ catch (error) {
169
+ // Skip files we can't parse
170
+ }
171
+ }
172
+ getModuleName(relativePath) {
173
+ const withoutExt = relativePath.replace(/\.[^/.]+$/, '');
174
+ return withoutExt.replace(/[/\\]/g, '.');
175
+ }
176
+ parseParameters(paramsString) {
177
+ if (!paramsString.trim())
178
+ return [];
179
+ return paramsString.split(',').map(param => {
180
+ const trimmed = param.trim();
181
+ const parts = trimmed.split(':');
182
+ const name = parts[0]?.trim() || '';
183
+ const type = parts[1]?.trim() || 'any';
184
+ return {
185
+ name: name.replace(/[?=].*$/, ''), // Remove optional/default markers
186
+ type,
187
+ optional: name.includes('?') || name.includes('='),
188
+ defaultValue: name.includes('=') ? name.split('=')[1]?.trim() : undefined
189
+ };
190
+ });
191
+ }
192
+ extractPrecedingComment(lines, lineIndex) {
193
+ // Look for JSDoc or single-line comments before the declaration
194
+ let i = lineIndex - 1;
195
+ const commentLines = [];
196
+ while (i >= 0) {
197
+ const line = lines[i].trim();
198
+ if (line.startsWith('/**') || line.startsWith('/*')) {
199
+ // JSDoc comment
200
+ const jsdocLines = [];
201
+ while (i >= 0 && !lines[i].includes('*/')) {
202
+ jsdocLines.unshift(lines[i].trim());
203
+ i--;
204
+ }
205
+ if (i >= 0)
206
+ jsdocLines.unshift(lines[i].trim());
207
+ return jsdocLines.join('\n').replace(/\/\*\*?|\*\/|\s*\*\s?/g, '').trim();
208
+ }
209
+ else if (line.startsWith('//')) {
210
+ commentLines.unshift(line.replace(/^\s*\/\/\s?/, ''));
211
+ i--;
212
+ }
213
+ else if (line === '') {
214
+ i--;
215
+ }
216
+ else {
217
+ break;
218
+ }
219
+ }
220
+ return commentLines.length > 0 ? commentLines.join(' ') : undefined;
221
+ }
222
+ generateMarkdown(documentation) {
223
+ let content = `# API Documentation\n\n`;
224
+ content += `Generated on: ${new Date().toISOString().split('T')[0]}\n\n`;
225
+ // Table of Contents
226
+ content += `## 📋 Table of Contents\n\n`;
227
+ if (documentation.modules.length > 0)
228
+ content += `- [Modules](#modules)\n`;
229
+ if (documentation.functions.length > 0)
230
+ content += `- [Functions](#functions)\n`;
231
+ if (documentation.classes.length > 0)
232
+ content += `- [Classes](#classes)\n`;
233
+ if (documentation.interfaces.length > 0)
234
+ content += `- [Interfaces](#interfaces)\n`;
235
+ if (documentation.types.length > 0)
236
+ content += `- [Types](#types)\n`;
237
+ content += '\n';
238
+ // Modules
239
+ if (documentation.modules.length > 0) {
240
+ content += `## 📦 Modules\n\n`;
241
+ documentation.modules.forEach(module => {
242
+ content += `### ${module.name}\n\n`;
243
+ content += `**Path:** \`${module.path}\`\n\n`;
244
+ if (module.description)
245
+ content += `${module.description}\n\n`;
246
+ content += `**Exports:** ${module.exports.join(', ')}\n\n`;
247
+ });
248
+ }
249
+ // Functions
250
+ if (documentation.functions.length > 0) {
251
+ content += `## 🔧 Functions\n\n`;
252
+ documentation.functions.forEach(func => {
253
+ content += `### ${func.name}\n\n`;
254
+ if (func.description)
255
+ content += `${func.description}\n\n`;
256
+ content += `**Module:** \`${func.module}\`\n\n`;
257
+ content += `**Signature:**\n\`\`\`typescript\n${func.signature}\n\`\`\`\n\n`;
258
+ if (func.parameters.length > 0) {
259
+ content += `**Parameters:**\n`;
260
+ func.parameters.forEach(param => {
261
+ const optional = param.optional ? ' (optional)' : '';
262
+ const defaultVal = param.defaultValue ? ` = ${param.defaultValue}` : '';
263
+ content += `- \`${param.name}\`: \`${param.type}\`${optional}${defaultVal}\n`;
264
+ if (param.description)
265
+ content += ` - ${param.description}\n`;
266
+ });
267
+ content += '\n';
268
+ }
269
+ content += `**Returns:** \`${func.returnType}\`\n\n`;
270
+ if (func.isAsync)
271
+ content += `⚡ **Async function**\n\n`;
272
+ });
273
+ }
274
+ // Classes
275
+ if (documentation.classes.length > 0) {
276
+ content += `## 🏗️ Classes\n\n`;
277
+ documentation.classes.forEach(cls => {
278
+ content += `### ${cls.name}\n\n`;
279
+ if (cls.description)
280
+ content += `${cls.description}\n\n`;
281
+ content += `**Module:** \`${cls.module}\`\n\n`;
282
+ if (cls.extends)
283
+ content += `**Extends:** \`${cls.extends}\`\n\n`;
284
+ if (cls.implements && cls.implements.length > 0) {
285
+ content += `**Implements:** ${cls.implements.map(i => `\`${i}\``).join(', ')}\n\n`;
286
+ }
287
+ });
288
+ }
289
+ // Interfaces
290
+ if (documentation.interfaces.length > 0) {
291
+ content += `## 📋 Interfaces\n\n`;
292
+ documentation.interfaces.forEach(iface => {
293
+ content += `### ${iface.name}\n\n`;
294
+ if (iface.description)
295
+ content += `${iface.description}\n\n`;
296
+ content += `**Module:** \`${iface.module}\`\n\n`;
297
+ if (iface.extends && iface.extends.length > 0) {
298
+ content += `**Extends:** ${iface.extends.map(e => `\`${e}\``).join(', ')}\n\n`;
299
+ }
300
+ });
301
+ }
302
+ // Types
303
+ if (documentation.types.length > 0) {
304
+ content += `## 🎯 Types\n\n`;
305
+ documentation.types.forEach(type => {
306
+ content += `### ${type.name}\n\n`;
307
+ if (type.description)
308
+ content += `${type.description}\n\n`;
309
+ content += `**Module:** \`${type.module}\`\n\n`;
310
+ content += `**Definition:**\n\`\`\`typescript\ntype ${type.name} = ${type.definition}\n\`\`\`\n\n`;
311
+ });
312
+ }
313
+ content += `---\n*Generated by Grok CLI Documentation System*`;
314
+ return content;
315
+ }
316
+ generateHtml(documentation) {
317
+ // Basic HTML template - could be enhanced with CSS
318
+ return `<!DOCTYPE html>
319
+ <html>
320
+ <head>
321
+ <title>API Documentation</title>
322
+ <style>
323
+ body { font-family: Arial, sans-serif; margin: 40px; }
324
+ h1, h2, h3 { color: #333; }
325
+ code { background: #f4f4f4; padding: 2px 4px; border-radius: 3px; }
326
+ pre { background: #f4f4f4; padding: 15px; border-radius: 5px; overflow-x: auto; }
327
+ </style>
328
+ </head>
329
+ <body>
330
+ <h1>API Documentation</h1>
331
+ <p>Generated on: ${new Date().toISOString().split('T')[0]}</p>
332
+ ${this.generateMarkdown(documentation).replace(/```(\w+)?\n([\s\S]*?)```/g, '<pre><code>$2</code></pre>')}
333
+ </body>
334
+ </html>`;
335
+ }
336
+ getDocumentationStats(documentation) {
337
+ return `- **Modules:** ${documentation.modules.length}
338
+ - **Functions:** ${documentation.functions.length}
339
+ - **Classes:** ${documentation.classes.length}
340
+ - **Interfaces:** ${documentation.interfaces.length}
341
+ - **Types:** ${documentation.types.length}`;
342
+ }
343
+ }
344
+ //# sourceMappingURL=api-docs-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-docs-generator.js","sourceRoot":"","sources":["../../../src/tools/documentation/api-docs-generator.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAiFhC,MAAM,OAAO,gBAAgB;IAG3B,YAAY,MAAqB;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC;YACH,qBAAqB;YACrB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAEhD,IAAI,aAAa,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/E,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,gHAAgH;iBAC1H,CAAC;YACJ,CAAC;YAED,iCAAiC;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,KAAK,IAAI;gBAC/C,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC;gBACtC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YAErC,2BAA2B;YAC3B,MAAM,cAAc,GAAG,YAAY,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACnE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAExC,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;YAExD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,kCAAkC,cAAc,oCAAoC,KAAK,EAAE;gBACpG,UAAU;aACX,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,gCAAgC,KAAK,CAAC,OAAO,EAAE;aACzD,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY;QACxB,MAAM,aAAa,GAAqB;YACtC,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,EAAE;YACd,KAAK,EAAE,EAAE;SACV,CAAC;QAEF,sCAAsC;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS;YACvB,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAE3B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC3D,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,aAA+B;QAC1E,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YAEnE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEhD,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;oBACxF,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;gBACpD,CAAC;qBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxD,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iCAAiC;QACnC,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,QAAgB;QAChC,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC3B,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC5B,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC5B,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,aAA+B;QAC1E,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACrD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACnE,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YAEpD,8EAA8E;YAC9E,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,UAAU,GAAe;gBAC7B,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,EAAE;aACZ,CAAC;YAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAE7B,2BAA2B;gBAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;gBACxG,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,GAAG,SAAS,CAAC;oBAC/C,MAAM,YAAY,GAAiB;wBACjC,IAAI;wBACJ,MAAM,EAAE,UAAU;wBAClB,SAAS,EAAE,IAAI;wBACf,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;wBACxC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,KAAK;wBACvC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;wBAC/B,UAAU,EAAE,IAAI;wBAChB,WAAW,EAAE,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC;qBACpD,CAAC;oBACF,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC3C,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChC,CAAC;gBAED,yBAAyB;gBACzB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;gBAC3G,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,oBAAoB,CAAC,GAAG,UAAU,CAAC;oBAChE,MAAM,SAAS,GAAc;wBAC3B,IAAI;wBACJ,MAAM,EAAE,UAAU;wBAClB,WAAW,EAAE,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC;wBACnD,OAAO,EAAE,EAAE;wBACX,UAAU,EAAE,EAAE;wBACd,OAAO,EAAE,YAAY;wBACrB,UAAU,EAAE,oBAAoB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;wBAC/D,UAAU,EAAE,IAAI;wBAChB,WAAW,EAAE,SAAS;qBACvB,CAAC;oBACF,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACtC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChC,CAAC;gBAED,mBAAmB;gBACnB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;gBACzF,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,CAAC,EAAE,IAAI,EAAE,iBAAiB,CAAC,GAAG,cAAc,CAAC;oBACnD,MAAM,aAAa,GAAkB;wBACnC,IAAI;wBACJ,MAAM,EAAE,UAAU;wBAClB,WAAW,EAAE,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC;wBACnD,UAAU,EAAE,EAAE;wBACd,OAAO,EAAE,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;wBACzD,UAAU,EAAE,IAAI;qBACjB,CAAC;oBACF,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC7C,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChC,CAAC;gBAED,qBAAqB;gBACrB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;gBACpE,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,SAAS,CAAC;oBACvC,MAAM,QAAQ,GAAa;wBACzB,IAAI;wBACJ,MAAM,EAAE,UAAU;wBAClB,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE;wBAC7B,WAAW,EAAE,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC;wBACnD,UAAU,EAAE,IAAI;qBACjB,CAAC;oBACF,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACnC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAED,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACzC,CAAC;QAEH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,4BAA4B;QAC9B,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,YAAoB;QACxC,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC3C,CAAC;IAEO,eAAe,CAAC,YAAoB;QAC1C,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QAEpC,OAAO,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACzC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC;YAEvC,OAAO;gBACL,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,kCAAkC;gBACrE,IAAI;gBACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAClD,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;aAC1E,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,KAAe,EAAE,SAAiB;QAChE,gEAAgE;QAChE,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;QACtB,MAAM,YAAY,GAAa,EAAE,CAAC;QAElC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpD,gBAAgB;gBAChB,MAAM,UAAU,GAAG,EAAE,CAAC;gBACtB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1C,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBACpC,CAAC,EAAE,CAAC;gBACN,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC;oBAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAChD,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5E,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC;gBACtD,CAAC,EAAE,CAAC;YACN,CAAC;iBAAM,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;gBACvB,CAAC,EAAE,CAAC;YACN,CAAC;iBAAM,CAAC;gBACN,MAAM;YACR,CAAC;QACH,CAAC;QAED,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,CAAC;IAEO,gBAAgB,CAAC,aAA+B;QACtD,IAAI,OAAO,GAAG,yBAAyB,CAAC;QACxC,OAAO,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAEzE,oBAAoB;QACpB,OAAO,IAAI,6BAA6B,CAAC;QACzC,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,yBAAyB,CAAC;QAC3E,IAAI,aAAa,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,6BAA6B,CAAC;QACjF,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,yBAAyB,CAAC;QAC3E,IAAI,aAAa,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,+BAA+B,CAAC;QACpF,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,qBAAqB,CAAC;QACrE,OAAO,IAAI,IAAI,CAAC;QAEhB,UAAU;QACV,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,mBAAmB,CAAC;YAC/B,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBACrC,OAAO,IAAI,OAAO,MAAM,CAAC,IAAI,MAAM,CAAC;gBACpC,OAAO,IAAI,eAAe,MAAM,CAAC,IAAI,QAAQ,CAAC;gBAC9C,IAAI,MAAM,CAAC,WAAW;oBAAE,OAAO,IAAI,GAAG,MAAM,CAAC,WAAW,MAAM,CAAC;gBAC/D,OAAO,IAAI,gBAAgB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC;QAED,YAAY;QACZ,IAAI,aAAa,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,OAAO,IAAI,qBAAqB,CAAC;YACjC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACrC,OAAO,IAAI,OAAO,IAAI,CAAC,IAAI,MAAM,CAAC;gBAClC,IAAI,IAAI,CAAC,WAAW;oBAAE,OAAO,IAAI,GAAG,IAAI,CAAC,WAAW,MAAM,CAAC;gBAC3D,OAAO,IAAI,iBAAiB,IAAI,CAAC,MAAM,QAAQ,CAAC;gBAChD,OAAO,IAAI,qCAAqC,IAAI,CAAC,SAAS,cAAc,CAAC;gBAE7E,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,OAAO,IAAI,mBAAmB,CAAC;oBAC/B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;wBAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrD,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACxE,OAAO,IAAI,OAAO,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,IAAI,KAAK,QAAQ,GAAG,UAAU,IAAI,CAAC;wBAC9E,IAAI,KAAK,CAAC,WAAW;4BAAE,OAAO,IAAI,OAAO,KAAK,CAAC,WAAW,IAAI,CAAC;oBACjE,CAAC,CAAC,CAAC;oBACH,OAAO,IAAI,IAAI,CAAC;gBAClB,CAAC;gBAED,OAAO,IAAI,kBAAkB,IAAI,CAAC,UAAU,QAAQ,CAAC;gBACrD,IAAI,IAAI,CAAC,OAAO;oBAAE,OAAO,IAAI,0BAA0B,CAAC;YAC1D,CAAC,CAAC,CAAC;QACL,CAAC;QAED,UAAU;QACV,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,oBAAoB,CAAC;YAChC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAClC,OAAO,IAAI,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC;gBACjC,IAAI,GAAG,CAAC,WAAW;oBAAE,OAAO,IAAI,GAAG,GAAG,CAAC,WAAW,MAAM,CAAC;gBACzD,OAAO,IAAI,iBAAiB,GAAG,CAAC,MAAM,QAAQ,CAAC;gBAC/C,IAAI,GAAG,CAAC,OAAO;oBAAE,OAAO,IAAI,kBAAkB,GAAG,CAAC,OAAO,QAAQ,CAAC;gBAClE,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChD,OAAO,IAAI,mBAAmB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;gBACrF,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,aAAa;QACb,IAAI,aAAa,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,OAAO,IAAI,sBAAsB,CAAC;YAClC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACvC,OAAO,IAAI,OAAO,KAAK,CAAC,IAAI,MAAM,CAAC;gBACnC,IAAI,KAAK,CAAC,WAAW;oBAAE,OAAO,IAAI,GAAG,KAAK,CAAC,WAAW,MAAM,CAAC;gBAC7D,OAAO,IAAI,iBAAiB,KAAK,CAAC,MAAM,QAAQ,CAAC;gBACjD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9C,OAAO,IAAI,gBAAgB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;gBACjF,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,QAAQ;QACR,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,iBAAiB,CAAC;YAC7B,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACjC,OAAO,IAAI,OAAO,IAAI,CAAC,IAAI,MAAM,CAAC;gBAClC,IAAI,IAAI,CAAC,WAAW;oBAAE,OAAO,IAAI,GAAG,IAAI,CAAC,WAAW,MAAM,CAAC;gBAC3D,OAAO,IAAI,iBAAiB,IAAI,CAAC,MAAM,QAAQ,CAAC;gBAChD,OAAO,IAAI,2CAA2C,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,UAAU,cAAc,CAAC;YACrG,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,mDAAmD,CAAC;QAC/D,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,YAAY,CAAC,aAA+B;QAClD,mDAAmD;QACnD,OAAO;;;;;;;;;;;;;uBAaY,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;MACvD,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,2BAA2B,EAAE,4BAA4B,CAAC;;QAErG,CAAC;IACP,CAAC;IAEO,qBAAqB,CAAC,aAA+B;QAC3D,OAAO,kBAAkB,aAAa,CAAC,OAAO,CAAC,MAAM;mBACtC,aAAa,CAAC,SAAS,CAAC,MAAM;iBAChC,aAAa,CAAC,OAAO,CAAC,MAAM;oBACzB,aAAa,CAAC,UAAU,CAAC,MAAM;eACpC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAC1C,CAAC;CACF"}
@@ -0,0 +1,47 @@
1
+ export interface AutoUpdateConfig {
2
+ enabled: boolean;
3
+ triggers: {
4
+ keyFiles: boolean;
5
+ tokenThreshold: number;
6
+ sessionEnd: boolean;
7
+ gitCommits: boolean;
8
+ };
9
+ keyFiles: string[];
10
+ reminderStyle: 'gentle' | 'persistent' | 'off';
11
+ autoPrompt: boolean;
12
+ updateFrequency: 'manual' | 'smart' | 'aggressive';
13
+ }
14
+ export interface AutoUpdateTrigger {
15
+ type: 'keyFiles' | 'tokenThreshold' | 'sessionEnd' | 'gitCommits';
16
+ message: string;
17
+ priority: 'low' | 'medium' | 'high';
18
+ actionSuggested: string;
19
+ }
20
+ export declare class AutoUpdateSystem {
21
+ private config;
22
+ private rootPath;
23
+ private tokenCount;
24
+ private lastUpdateTime;
25
+ constructor(rootPath: string, config?: Partial<AutoUpdateConfig>);
26
+ loadConfigFromSettings(): Promise<void>;
27
+ saveConfigToSettings(): Promise<void>;
28
+ updateTokenCount(count: number): void;
29
+ checkTriggers(): Promise<AutoUpdateTrigger[]>;
30
+ private checkKeyFileChanges;
31
+ private expandGlobPattern;
32
+ private findFilesRecursively;
33
+ private findFilesWithWildcard;
34
+ private checkRecentCommits;
35
+ private filterTriggersByFrequency;
36
+ formatTriggerMessage(trigger: AutoUpdateTrigger): string;
37
+ markUpdateCompleted(): Promise<void>;
38
+ setEnabled(enabled: boolean): void;
39
+ setTrigger(trigger: keyof AutoUpdateConfig['triggers'], enabled: boolean | number): void;
40
+ setTokenThreshold(threshold: number): void;
41
+ setReminderStyle(style: AutoUpdateConfig['reminderStyle']): void;
42
+ setUpdateFrequency(frequency: AutoUpdateConfig['updateFrequency']): void;
43
+ addKeyFile(pattern: string): void;
44
+ removeKeyFile(pattern: string): void;
45
+ getConfig(): AutoUpdateConfig;
46
+ getConfigSummary(): string;
47
+ }