cmp-standards 3.3.0 → 3.4.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.
Files changed (57) hide show
  1. package/dist/cli/index.js +85 -2
  2. package/dist/cli/index.js.map +1 -1
  3. package/dist/db/migrations.d.ts +1 -1
  4. package/dist/db/migrations.d.ts.map +1 -1
  5. package/dist/db/migrations.js +80 -0
  6. package/dist/db/migrations.js.map +1 -1
  7. package/dist/hooks/cloud-post-tool-use.d.ts +2 -1
  8. package/dist/hooks/cloud-post-tool-use.d.ts.map +1 -1
  9. package/dist/hooks/cloud-post-tool-use.js +15 -1
  10. package/dist/hooks/cloud-post-tool-use.js.map +1 -1
  11. package/dist/hooks/cloud-session-start.d.ts.map +1 -1
  12. package/dist/hooks/cloud-session-start.js +5 -1
  13. package/dist/hooks/cloud-session-start.js.map +1 -1
  14. package/dist/hooks/expert-review.d.ts +2 -1
  15. package/dist/hooks/expert-review.d.ts.map +1 -1
  16. package/dist/hooks/expert-review.js +61 -4
  17. package/dist/hooks/expert-review.js.map +1 -1
  18. package/dist/index.d.ts +6 -0
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +9 -0
  21. package/dist/index.js.map +1 -1
  22. package/dist/patterns/feedback-loop.d.ts +4 -4
  23. package/dist/patterns/registry.d.ts +3 -3
  24. package/dist/schema/codewiki-types.d.ts +73 -73
  25. package/dist/schema/codewiki-types.d.ts.map +1 -1
  26. package/dist/schema/codewiki-types.js +5 -5
  27. package/dist/schema/codewiki-types.js.map +1 -1
  28. package/dist/schema/docs-types.d.ts +1253 -0
  29. package/dist/schema/docs-types.d.ts.map +1 -0
  30. package/dist/schema/docs-types.js +461 -0
  31. package/dist/schema/docs-types.js.map +1 -0
  32. package/dist/schema/expert-types.d.ts +2 -2
  33. package/dist/schema/opportunity-types.d.ts +67 -23
  34. package/dist/schema/opportunity-types.d.ts.map +1 -1
  35. package/dist/schema/opportunity-types.js +16 -0
  36. package/dist/schema/opportunity-types.js.map +1 -1
  37. package/dist/services/CodeWikiIndexer.d.ts +25 -3
  38. package/dist/services/CodeWikiIndexer.d.ts.map +1 -1
  39. package/dist/services/CodeWikiIndexer.js +186 -22
  40. package/dist/services/CodeWikiIndexer.js.map +1 -1
  41. package/dist/services/DocsGenerator.d.ts +78 -0
  42. package/dist/services/DocsGenerator.d.ts.map +1 -0
  43. package/dist/services/DocsGenerator.js +551 -0
  44. package/dist/services/DocsGenerator.js.map +1 -0
  45. package/dist/services/OpportunityDiscovery.d.ts +1 -0
  46. package/dist/services/OpportunityDiscovery.d.ts.map +1 -1
  47. package/dist/services/OpportunityDiscovery.js +35 -6
  48. package/dist/services/OpportunityDiscovery.js.map +1 -1
  49. package/dist/services/WikiSyncService.d.ts +110 -0
  50. package/dist/services/WikiSyncService.d.ts.map +1 -0
  51. package/dist/services/WikiSyncService.js +278 -0
  52. package/dist/services/WikiSyncService.js.map +1 -0
  53. package/dist/types/index.d.ts +1 -0
  54. package/dist/types/index.d.ts.map +1 -1
  55. package/dist/types/index.js +1 -0
  56. package/dist/types/index.js.map +1 -1
  57. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @file CodeWiki Indexer Service - cmp-standards v3.3
2
+ * @file CodeWiki Indexer Service - cmp-standards v3.3.2
3
3
  * @description Automated code indexing service for knowledge graph generation
4
4
  *
5
5
  * Features:
@@ -8,12 +8,18 @@
8
8
  * - Detects dependencies and relationships
9
9
  * - Stores indexed data in Turso database
10
10
  * - Supports incremental indexing (only changed files)
11
+ *
12
+ * Performance Optimizations (v3.3.2):
13
+ * - Parallel file processing (5 concurrent files)
14
+ * - Batch database inserts (transaction batching)
15
+ * - Reduced N+1 queries via collected writes
11
16
  */
12
17
  import { createHash } from 'crypto';
13
18
  import { existsSync, statSync, readFileSync } from 'fs';
14
19
  import { relative, basename, extname, resolve, dirname } from 'path';
15
20
  import { glob } from 'glob';
16
- import { turso } from '../db/turso-client.js';
21
+ import { ulid } from 'ulid';
22
+ import { turso, transaction } from '../db/turso-client.js';
17
23
  import { getLogger } from '../utils/logger.js';
18
24
  import { createFileMetadata, createCodeStructure, createCodeDependency, createIndexRun, detectLanguage, isTestFile, isTypeDefinitionFile, } from '../schema/codewiki-types.js';
19
25
  const logger = getLogger();
@@ -45,6 +51,16 @@ const FILE_LIMITS = {
45
51
  standard: 200,
46
52
  thorough: 500,
47
53
  };
54
+ /**
55
+ * Concurrency for parallel file processing
56
+ * Balanced to avoid overwhelming I/O while utilizing CPU
57
+ */
58
+ const PARALLEL_CONCURRENCY = 5;
59
+ /**
60
+ * Maximum batch size for database inserts
61
+ * Turso can handle ~100-500 statements per batch efficiently
62
+ */
63
+ const DB_BATCH_SIZE = 100;
48
64
  // =============================================================================
49
65
  // CodeWiki Indexer Service
50
66
  // =============================================================================
@@ -61,13 +77,12 @@ export class CodeWikiIndexer {
61
77
  */
62
78
  async index(options) {
63
79
  const startTime = Date.now();
64
- const runId = `run_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`;
65
80
  const depth = options.depth ?? 'standard';
66
81
  const paths = options.paths ?? ['.'];
67
82
  const rootDir = options.rootDir ?? this.rootDir;
68
- // Create index run record
83
+ // Create index run record and get actual database ID
69
84
  const indexRun = createIndexRun(options.projectId, paths, depth);
70
- await this.saveIndexRun(runId, indexRun);
85
+ const indexRunId = await this.createIndexRun(indexRun);
71
86
  const errors = [];
72
87
  try {
73
88
  // Load existing file metadata cache
@@ -84,11 +99,33 @@ export class CodeWikiIndexer {
84
99
  projectId: options.projectId,
85
100
  files: files.length,
86
101
  depth,
102
+ concurrency: PARALLEL_CONCURRENCY,
87
103
  });
88
- // Process each file
89
- for (const file of files) {
90
- try {
91
- const result = await this.processFile(file, runId, options.force ?? false);
104
+ // Collect all data for batch insertion
105
+ const collected = {
106
+ metadata: [],
107
+ structures: [],
108
+ dependencies: [],
109
+ };
110
+ // Process files in parallel chunks
111
+ const chunks = this.chunkArray(files, PARALLEL_CONCURRENCY);
112
+ for (const chunk of chunks) {
113
+ const chunkResults = await Promise.all(chunk.map(async (file) => {
114
+ try {
115
+ return await this.processFileCollect(file, options.force ?? false);
116
+ }
117
+ catch (err) {
118
+ const error = err instanceof Error ? err.message : String(err);
119
+ errors.push({ file: file.relativePath, error });
120
+ indexRun.stats.errorsEncountered++;
121
+ logger.warn('Failed to index file', { file: file.relativePath, error });
122
+ return null;
123
+ }
124
+ }));
125
+ // Aggregate results from chunk
126
+ for (const result of chunkResults) {
127
+ if (!result)
128
+ continue;
92
129
  if (result.indexed) {
93
130
  indexRun.stats.filesIndexed++;
94
131
  if (result.changed) {
@@ -96,24 +133,40 @@ export class CodeWikiIndexer {
96
133
  }
97
134
  indexRun.stats.symbolsExtracted += result.symbolCount;
98
135
  indexRun.stats.dependenciesFound += result.dependencyCount;
136
+ // Collect data for batch insert
137
+ if (result.metadata) {
138
+ collected.metadata.push(result.metadata);
139
+ }
140
+ if (result.structure) {
141
+ collected.structures.push(result.structure);
142
+ }
143
+ collected.dependencies.push(...result.dependencies);
99
144
  }
100
145
  else {
101
146
  indexRun.stats.filesSkipped++;
102
147
  }
103
148
  }
104
- catch (err) {
105
- const error = err instanceof Error ? err.message : String(err);
106
- errors.push({ file: file.relativePath, error });
107
- indexRun.stats.errorsEncountered++;
108
- logger.warn('Failed to index file', { file: file.relativePath, error });
109
- }
149
+ }
150
+ // Batch insert all collected data
151
+ logger.info('Batch inserting indexed data', {
152
+ metadata: collected.metadata.length,
153
+ structures: collected.structures.length,
154
+ dependencies: collected.dependencies.length,
155
+ });
156
+ await this.batchInsertCollected(collected);
157
+ // Update cache with new IDs
158
+ for (const item of collected.metadata) {
159
+ this.fileMetadataCache.set(item.content.relativePath, {
160
+ id: item.id,
161
+ hash: item.content.hash,
162
+ });
110
163
  }
111
164
  // Update run status
112
165
  indexRun.status = 'completed';
113
166
  indexRun.completedAt = new Date().toISOString();
114
167
  indexRun.durationMs = Date.now() - startTime;
115
168
  indexRun.errors = errors;
116
- await this.saveIndexRun(runId, indexRun);
169
+ await this.updateIndexRun(indexRunId, indexRun);
117
170
  logger.info('CodeWiki indexing completed', {
118
171
  projectId: options.projectId,
119
172
  filesIndexed: indexRun.stats.filesIndexed,
@@ -121,7 +174,7 @@ export class CodeWikiIndexer {
121
174
  durationMs: indexRun.durationMs,
122
175
  });
123
176
  return {
124
- runId,
177
+ runId: indexRunId,
125
178
  status: indexRun.status,
126
179
  stats: indexRun.stats,
127
180
  durationMs: indexRun.durationMs ?? 0,
@@ -129,11 +182,11 @@ export class CodeWikiIndexer {
129
182
  };
130
183
  }
131
184
  catch (err) {
132
- indexRun.status = 'failed';
185
+ indexRun.status = 'blocked';
133
186
  indexRun.completedAt = new Date().toISOString();
134
187
  indexRun.durationMs = Date.now() - startTime;
135
188
  indexRun.errors = errors;
136
- await this.saveIndexRun(runId, indexRun);
189
+ await this.updateIndexRun(indexRunId, indexRun);
137
190
  throw err;
138
191
  }
139
192
  }
@@ -577,9 +630,114 @@ export class CodeWikiIndexer {
577
630
  hashContent(content) {
578
631
  return createHash('sha256').update(content).digest('hex').slice(0, 16);
579
632
  }
633
+ /**
634
+ * Split array into chunks for parallel processing
635
+ */
636
+ chunkArray(array, size) {
637
+ const chunks = [];
638
+ for (let i = 0; i < array.length; i += size) {
639
+ chunks.push(array.slice(i, i + size));
640
+ }
641
+ return chunks;
642
+ }
643
+ // ===========================================================================
644
+ // Optimized Processing (v3.3.2)
645
+ // ===========================================================================
646
+ /**
647
+ * Process a single file and return collected data (no DB writes)
648
+ * Used for parallel processing with batch inserts
649
+ */
650
+ async processFileCollect(file, force) {
651
+ // Read file content
652
+ const content = readFileSync(file.absolutePath, 'utf-8');
653
+ const hash = this.hashContent(content);
654
+ // Check if file has changed
655
+ const cached = this.fileMetadataCache.get(file.relativePath);
656
+ if (!force && cached && cached.hash === hash) {
657
+ return { indexed: false, changed: false, symbolCount: 0, dependencyCount: 0, dependencies: [] };
658
+ }
659
+ const changed = cached !== undefined;
660
+ const language = detectLanguage(file.extension);
661
+ // Create file metadata with pre-generated ID
662
+ const metadataId = ulid();
663
+ const metadata = this.createMetadata(file, content, hash, language);
664
+ let structure;
665
+ let symbolCount = 0;
666
+ let dependencyCount = 0;
667
+ const dependencies = [];
668
+ // Parse code structure for supported languages
669
+ if (this.isParseableLanguage(language)) {
670
+ const structureContent = await this.parseCodeStructure(file, content, metadataId, language);
671
+ symbolCount = structureContent.symbols.length;
672
+ structure = {
673
+ id: ulid(),
674
+ content: structureContent,
675
+ };
676
+ // Extract dependencies with pre-generated IDs
677
+ const deps = await this.extractDependencies(file, structureContent, metadataId);
678
+ for (const dep of deps) {
679
+ dependencies.push({
680
+ id: ulid(),
681
+ content: dep,
682
+ });
683
+ }
684
+ dependencyCount = dependencies.length;
685
+ }
686
+ return {
687
+ indexed: true,
688
+ changed,
689
+ symbolCount,
690
+ dependencyCount,
691
+ metadata: { id: metadataId, content: metadata },
692
+ structure,
693
+ dependencies,
694
+ };
695
+ }
580
696
  // ===========================================================================
581
697
  // Database Operations
582
698
  // ===========================================================================
699
+ /**
700
+ * Batch insert collected data using transaction
701
+ */
702
+ async batchInsertCollected(collected) {
703
+ const now = new Date().toISOString();
704
+ const statements = [];
705
+ // Build insert statements for metadata
706
+ for (const item of collected.metadata) {
707
+ statements.push({
708
+ sql: `INSERT INTO items (id, type, status, system, content, created_at, updated_at)
709
+ VALUES (?, ?, ?, ?, ?, ?, ?)`,
710
+ args: [item.id, 'file_metadata', 'active', this.system, JSON.stringify(item.content), now, now],
711
+ });
712
+ }
713
+ // Build insert statements for structures
714
+ for (const item of collected.structures) {
715
+ statements.push({
716
+ sql: `INSERT INTO items (id, type, status, system, content, created_at, updated_at)
717
+ VALUES (?, ?, ?, ?, ?, ?, ?)`,
718
+ args: [item.id, 'code_structure', 'active', this.system, JSON.stringify(item.content), now, now],
719
+ });
720
+ }
721
+ // Build insert statements for dependencies
722
+ for (const item of collected.dependencies) {
723
+ statements.push({
724
+ sql: `INSERT INTO items (id, type, status, system, content, created_at, updated_at)
725
+ VALUES (?, ?, ?, ?, ?, ?, ?)`,
726
+ args: [item.id, 'code_dependency', 'active', this.system, JSON.stringify(item.content), now, now],
727
+ });
728
+ }
729
+ if (statements.length === 0) {
730
+ logger.debug('No data to insert');
731
+ return;
732
+ }
733
+ // Execute in batches to avoid hitting SQLite limits
734
+ const batches = this.chunkArray(statements, DB_BATCH_SIZE);
735
+ logger.debug(`Executing ${batches.length} batch(es) with ${statements.length} total statements`);
736
+ for (let i = 0; i < batches.length; i++) {
737
+ await transaction(batches[i]);
738
+ logger.debug(`Completed batch ${i + 1}/${batches.length}`, { statements: batches[i].length });
739
+ }
740
+ }
583
741
  /**
584
742
  * Load existing file metadata cache
585
743
  */
@@ -629,10 +787,16 @@ export class CodeWikiIndexer {
629
787
  await turso.create('code_dependency', this.system, dependency, 'active');
630
788
  }
631
789
  /**
632
- * Save index run to database
790
+ * Create index run in database and return the ID
791
+ */
792
+ async createIndexRun(run) {
793
+ return await turso.create('index_run', this.system, run, run.status);
794
+ }
795
+ /**
796
+ * Update existing index run in database
633
797
  */
634
- async saveIndexRun(_runId, run) {
635
- await turso.create('index_run', this.system, run, run.status);
798
+ async updateIndexRun(id, run) {
799
+ await turso.update(id, { status: run.status, content: run });
636
800
  }
637
801
  }
638
802
  // =============================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"CodeWikiIndexer.js","sourceRoot":"","sources":["../../src/services/CodeWikiIndexer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodeWikiIndexer.js","sourceRoot":"","sources":["../../src/services/CodeWikiIndexer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,KAAK,EAAE,WAAW,EAA6B,MAAM,uBAAuB,CAAA;AACrF,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EASL,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,UAAU,EACV,oBAAoB,GACrB,MAAM,6BAA6B,CAAA;AAEpC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;AA+C1B,gFAAgF;AAChF,YAAY;AACZ,gFAAgF;AAEhF,MAAM,eAAe,GAAG;IACtB,SAAS;IACT,UAAU;IACV,SAAS;IACT,UAAU;IACV,UAAU;IACV,UAAU;CACX,CAAA;AAED,MAAM,eAAe,GAAG;IACtB,oBAAoB;IACpB,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,gBAAgB;IAChB,aAAa;IACb,UAAU;IACV,sBAAsB;IACtB,cAAc;IACd,mBAAmB;CACpB,CAAA;AAED,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;CACd,CAAA;AAED;;;GAGG;AACH,MAAM,oBAAoB,GAAG,CAAC,CAAA;AAE9B;;;GAGG;AACH,MAAM,aAAa,GAAG,GAAG,CAAA;AAWzB,gFAAgF;AAChF,2BAA2B;AAC3B,gFAAgF;AAEhF,MAAM,OAAO,eAAe;IAClB,MAAM,CAAQ;IACd,OAAO,CAAQ;IACf,iBAAiB,GAA8C,IAAI,GAAG,EAAE,CAAA;IAEhF,YAAY,MAAc,EAAE,OAAgB;QAC1C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IACzC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,OAAqB;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAE5B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAA;QACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAA;QAE/C,qDAAqD;QACrD,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAChE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;QAEtD,MAAM,MAAM,GAA2C,EAAE,CAAA;QAEzD,IAAI,CAAC;YACH,oCAAoC;YACpC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;YAE9B,yBAAyB;YACzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;gBAC7C,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,eAAe;gBAC3C,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,eAAe;gBAC3C,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;gBACzB,KAAK;aACN,CAAC,CAAA;YAEF,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAA;YAC1C,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;gBACvC,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,KAAK;gBACL,WAAW,EAAE,oBAAoB;aAClC,CAAC,CAAA;YAEF,uCAAuC;YACvC,MAAM,SAAS,GAAkB;gBAC/B,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;gBACd,YAAY,EAAE,EAAE;aACjB,CAAA;YAED,mCAAmC;YACnC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAA;YAC3D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBACvB,IAAI,CAAC;wBACH,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,CAAA;oBACpE,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;wBAC9D,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,CAAA;wBAC/C,QAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAA;wBAClC,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,CAAA;wBACvE,OAAO,IAAI,CAAA;oBACb,CAAC;gBACH,CAAC,CAAC,CACH,CAAA;gBAED,+BAA+B;gBAC/B,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;oBAClC,IAAI,CAAC,MAAM;wBAAE,SAAQ;oBAErB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAA;wBAC7B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;4BACnB,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAA;wBAC/B,CAAC;wBACD,QAAQ,CAAC,KAAK,CAAC,gBAAgB,IAAI,MAAM,CAAC,WAAW,CAAA;wBACrD,QAAQ,CAAC,KAAK,CAAC,iBAAiB,IAAI,MAAM,CAAC,eAAe,CAAA;wBAE1D,gCAAgC;wBAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;4BACpB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;wBAC1C,CAAC;wBACD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;4BACrB,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;wBAC7C,CAAC;wBACD,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;oBACrD,CAAC;yBAAM,CAAC;wBACN,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAA;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,kCAAkC;YAClC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;gBAC1C,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM;gBACnC,UAAU,EAAE,SAAS,CAAC,UAAU,CAAC,MAAM;gBACvC,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC,MAAM;aAC5C,CAAC,CAAA;YAEF,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;YAE1C,4BAA4B;YAC5B,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACtC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;oBACpD,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;iBACxB,CAAC,CAAA;YACJ,CAAC;YAED,oBAAoB;YACpB,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAA;YAC7B,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;YAC/C,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;YAC5C,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAA;YAExB,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;YAE/C,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE;gBACzC,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY;gBACzC,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAC,gBAAgB;gBACjD,UAAU,EAAE,QAAQ,CAAC,UAAU;aAChC,CAAC,CAAA;YAEF,OAAO;gBACL,KAAK,EAAE,UAAU;gBACjB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,CAAC;gBACpC,MAAM;aACP,CAAA;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAA;YAC3B,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;YAC/C,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;YAC5C,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAA;YAExB,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;YAE/C,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY,CACxB,OAAe,EACf,OAKC;QAED,MAAM,KAAK,GAAe,EAAE,CAAA;QAE5B,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YAE5C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;gBACvD,SAAQ;YACV,CAAC;YAED,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE;oBAClC,GAAG,EAAE,SAAS;oBACd,MAAM,EAAE,OAAO,CAAC,OAAO;oBACvB,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,IAAI;iBACf,CAAC,CAAA;gBAEF,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK;wBAAE,MAAK;oBAExC,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;wBAC5B,KAAK,CAAC,IAAI,CAAC;4BACT,YAAY,EAAE,KAAK;4BACnB,YAAY,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;4BACtC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC;4BACzB,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;4BAClC,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,KAAK,EAAE,IAAI,CAAC,KAAK;yBAClB,CAAC,CAAA;oBACJ,CAAC;oBAAC,MAAM,CAAC;wBACP,kCAAkC;oBACpC,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK;oBAAE,MAAK;YAC1C,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CACvB,IAAc,EACd,KAAa,EACb,KAAc;QAOd,oBAAoB;QACpB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAEtC,4BAA4B;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC5D,IAAI,CAAC,KAAK,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,CAAA;QAC/E,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,KAAK,SAAS,CAAA;QACpC,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAE/C,uBAAuB;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;QACnE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QAE/D,eAAe;QACf,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QAEvE,+CAA+C;QAC/C,IAAI,WAAW,GAAG,CAAC,CAAA;QACnB,IAAI,eAAe,GAAG,CAAC,CAAA;QAEvB,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;YACpF,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAA;YACtC,eAAe,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAA;YAE1C,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;YAE1D,uBAAuB;YACvB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;YAChF,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;gBAC/B,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YAC3C,CAAC;YACD,eAAe,GAAG,YAAY,CAAC,MAAM,CAAA;QACvC,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAA;IACjE,CAAC;IAED;;OAEG;IACK,cAAc,CACpB,IAAc,EACd,OAAe,EACf,IAAY,EACZ,QAAkB;QAElB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAA;QACnE,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAE9D,OAAO,kBAAkB,CAAC,IAAI,CAAC,YAAY,EAAE;YAC3C,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ;YACR,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,EAAE,KAAK,CAAC,MAAM;YACjB,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,YAAY;YACzB,IAAI;YACJ,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YACtC,SAAS,EAAE,IAAI,CAAC,MAAM;SACvB,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAC9B,IAAc,EACd,OAAe,EACf,UAAkB,EAClB,QAAkB;QAElB,MAAM,OAAO,GAAiB,EAAE,CAAA;QAChC,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,MAAM,OAAO,GAAa,EAAE,CAAA;QAE5B,uCAAuC;QACvC,yEAAyE;QAEzE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,OAAO,GAAG,CAAC,CAAA;QAEf,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,OAAO,EAAE,CAAA;YACT,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YAE3B,gBAAgB;YAChB,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;YACzE,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;gBACjC,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;gBAC7B,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;gBAErE,OAAO,CAAC,IAAI,CAAC;oBACX,MAAM,EAAE,MAAM,IAAI,EAAE;oBACpB,UAAU;oBACV,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;oBAC7C,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK;oBAClD,SAAS,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC;oBACxE,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,UAAU,IAAI,EAAE,CAAC;oBAC9C,IAAI,EAAE,OAAO;iBACd,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YAED,gBAAgB;YAChB,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClC,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;gBACpD,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;gBAChD,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAE7C,IAAI,IAAI,GAAG,SAAS,CAAA;gBACpB,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAA;oBACxG,IAAI,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,SAAS,CAAA;gBACpC,CAAC;gBAED,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI;oBACJ,SAAS;oBACT,MAAM;oBACN,UAAU;oBACV,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;oBAC1E,IAAI,EAAE,OAAO;iBACd,CAAC,CAAA;YACJ,CAAC;YAED,iCAAiC;YACjC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QACrD,CAAC;QAED,OAAO,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE;YACxD,OAAO;YACP,OAAO;YACP,OAAO;YACP,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;YACrC,gBAAgB,EAAE,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC;YACzD,WAAW,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;YAC/C,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;SACzC,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,IAAY;QACnC,MAAM,KAAK,GAA4C,EAAE,CAAA;QAEzD,iBAAiB;QACjB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACpD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;YAC9C,IAAI,WAAW,EAAE,CAAC;gBAChB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;YACnC,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAC7C,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAC9C,CAAC;QAED,gBAAgB;QAChB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;QAC5C,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;YAClD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;gBAC1D,IAAI,UAAU,EAAE,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;gBACjE,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;oBACxB,IAAI,IAAI,EAAE,CAAC;wBACT,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;oBACtB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,IAAY,EAAE,OAAe,EAAE,OAAqB;QAC9E,wBAAwB;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAA;QAC5E,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE;gBACxB,IAAI,EAAE,UAAU;gBAChB,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,OAAO,EAAE,4BAA4B;gBAC9C,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACrC,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAChC,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,6DAA6D;QAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAA;QAC9G,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;gBACzB,IAAI,EAAE,gBAAgB;gBACtB,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACrC,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC/B,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,qBAAqB;QACrB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAA;QAC7E,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;gBACzB,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACrC,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;gBACxD,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;aACf,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,yBAAyB;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAA;QACjE,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;gBACzB,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACrC,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,eAAe;QACf,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAC3D,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE;gBACxB,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACrC,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,oBAAoB;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAA;QACxE,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE;gBACxB,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACrC,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,2CAA2C;QAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACpE,IAAI,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;gBACzB,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACrC,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAC/B,IAAc,EACd,SAA+B,EAC/B,UAAkB;QAElB,MAAM,YAAY,GAA4B,EAAE,CAAA;QAEhD,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACpC,IAAI,UAAU,GAAG,GAAG,CAAC,MAAM,CAAA;YAC3B,IAAI,YAAgC,CAAA;YAEpC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;gBACpB,0BAA0B;gBAC1B,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;gBAE9D,sCAAsC;gBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;gBAC7E,YAAY,GAAG,MAAM,EAAE,EAAE,CAAA;YAC3B,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE;gBACpE,YAAY,EAAE,UAAU;gBACxB,YAAY;gBACZ,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;gBACzE,cAAc,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;gBACvD,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC;gBAC9C,IAAI,EAAE,GAAG,CAAC,IAAI;aACf,CAAC,CAAC,CAAA;QACL,CAAC;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,QAAgB,EAAE,UAAkB;QACxD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC7B,IAAI,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;QAEvC,yCAAyC;QACzC,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;QACzF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,QAAQ,GAAG,GAAG,CAAA;YAC9B,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxB,OAAO,OAAO,CAAA;YAChB,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,MAAc;QACnC,0CAA0C;QAC1C,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC/B,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QAClC,CAAC;QACD,uDAAuD;QACvD,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAA;IACvC,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,OAAe;QAC1C,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC1B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;YAChC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CACjC,CAAA;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,OAAe;QACrC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACtE,OAAO,MAAM,CAAA;QACf,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACxE,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC5E,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC5E,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,OAAe,EAAE,QAAkB;QAC3D,IAAI,CAAC,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnE,OAAO,CAAC,CAAA;QACV,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,IAAI,cAAc,GAAG,KAAK,CAAA;QAE1B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YAE3B,IAAI,cAAc,EAAE,CAAC;gBACnB,KAAK,EAAE,CAAA;gBACP,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC3B,cAAc,GAAG,KAAK,CAAA;gBACxB,CAAC;gBACD,SAAQ;YACV,CAAC;YAED,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,KAAK,EAAE,CAAA;gBACP,SAAQ;YACV,CAAC;YAED,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,KAAK,EAAE,CAAA;gBACP,cAAc,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACxC,SAAQ;YACV,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,QAAkB;QAC5C,OAAO,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACtE,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,OAAe;QACjC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACxE,CAAC;IAED;;OAEG;IACK,UAAU,CAAI,KAAU,EAAE,IAAY;QAC5C,MAAM,MAAM,GAAU,EAAE,CAAA;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;YAC5C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;QACvC,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,8EAA8E;IAC9E,gCAAgC;IAChC,8EAA8E;IAE9E;;;OAGG;IACK,KAAK,CAAC,kBAAkB,CAC9B,IAAc,EACd,KAAc;QAUd,oBAAoB;QACpB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAEtC,4BAA4B;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC5D,IAAI,CAAC,KAAK,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAA;QACjG,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,KAAK,SAAS,CAAA;QACpC,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAE/C,6CAA6C;QAC7C,MAAM,UAAU,GAAG,IAAI,EAAE,CAAA;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;QAEnE,IAAI,SAAoE,CAAA;QACxE,IAAI,WAAW,GAAG,CAAC,CAAA;QACnB,IAAI,eAAe,GAAG,CAAC,CAAA;QACvB,MAAM,YAAY,GAA0D,EAAE,CAAA;QAE9E,+CAA+C;QAC/C,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;YAC3F,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAA;YAE7C,SAAS,GAAG;gBACV,EAAE,EAAE,IAAI,EAAE;gBACV,OAAO,EAAE,gBAAgB;aAC1B,CAAA;YAED,8CAA8C;YAC9C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAA;YAC/E,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,YAAY,CAAC,IAAI,CAAC;oBAChB,EAAE,EAAE,IAAI,EAAE;oBACV,OAAO,EAAE,GAAG;iBACb,CAAC,CAAA;YACJ,CAAC;YACD,eAAe,GAAG,YAAY,CAAC,MAAM,CAAA;QACvC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO;YACP,WAAW;YACX,eAAe;YACf,QAAQ,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE;YAC/C,SAAS;YACT,YAAY;SACb,CAAA;IACH,CAAC;IAED,8EAA8E;IAC9E,sBAAsB;IACtB,8EAA8E;IAE9E;;OAEG;IACK,KAAK,CAAC,oBAAoB,CAAC,SAAwB;QACzD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QACpC,MAAM,UAAU,GAA2B,EAAE,CAAA;QAE7C,uCAAuC;QACvC,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACtC,UAAU,CAAC,IAAI,CAAC;gBACd,GAAG,EAAE;2CAC8B;gBACnC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;aAChG,CAAC,CAAA;QACJ,CAAC;QAED,yCAAyC;QACzC,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YACxC,UAAU,CAAC,IAAI,CAAC;gBACd,GAAG,EAAE;2CAC8B;gBACnC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;aACjG,CAAC,CAAA;QACJ,CAAC;QAED,2CAA2C;QAC3C,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;YAC1C,UAAU,CAAC,IAAI,CAAC;gBACd,GAAG,EAAE;2CAC8B;gBACnC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;aAClG,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YACjC,OAAM;QACR,CAAC;QAED,oDAAoD;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;QAC1D,MAAM,CAAC,KAAK,CAAC,aAAa,OAAO,CAAC,MAAM,mBAAmB,UAAU,CAAC,MAAM,mBAAmB,CAAC,CAAA;QAEhG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7B,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;QAC/F,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAsB;gBACnD,IAAI,EAAE,eAAe;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,GAAG;aACX,CAAC,CAAA;YAEF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;oBAC5B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE;wBAC/C,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,OAAO,CAAC,IAAI;qBACnB,CAAC,CAAA;gBACJ,CAAC;gBAAC,MAAM,CAAC;oBACP,uBAAuB;gBACzB,CAAC;YACH,CAAC;YAED,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAA;QACpF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACtE,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB,CAAC,QAA6B,EAAE,MAAc;QAC1E,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC/E,OAAO,EAAE,CAAA;IACX,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAC7B,SAA+B,EAC/B,WAAmB,EACnB,MAAc;QAEd,MAAM,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;IACxE,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAAC,UAAiC,EAAE,MAAc;QAChF,MAAM,KAAK,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;IAC1E,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,GAAoB;QAC/C,OAAO,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACtE,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,EAAU,EAAE,GAAoB;QAC3D,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAA;IAC9D,CAAC;CACF;AAED,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,IAAI,eAAe,GAA2B,IAAI,CAAA;AAElD;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,OAAgB;IACjE,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,QAAQ,CAAC,KAAK,MAAM,EAAE,CAAC;QAC7D,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACxD,CAAC;IACD,OAAO,eAAe,CAAA;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAc,EAAE,OAAgB;IACpE,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,eAAe,GAAG,IAAI,CAAA;AACxB,CAAC;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * @file DocsGenerator Service - cmp-standards v3.4
3
+ * @description Automated project documentation generator from CodeWiki data
4
+ *
5
+ * Features:
6
+ * - Aggregates stats from indexed files (file_metadata, code_structure)
7
+ * - Auto-detects features from code patterns
8
+ * - Generates architecture diagrams (Mermaid)
9
+ * - Creates simple explanations for beginners
10
+ * - Stores documentation as project_doc items in Turso
11
+ *
12
+ * Integration:
13
+ * - Consumes data from CodeWikiIndexer
14
+ * - Can be triggered by WikiSyncService after indexing
15
+ * - Provides data for web UI pages
16
+ */
17
+ import type { DevSystem } from '../types/index.js';
18
+ import { type ProjectDocContent, type FeaturePattern } from '../schema/docs-types.js';
19
+ export interface DocsGeneratorOptions {
20
+ /** Project system ID */
21
+ system: DevSystem;
22
+ /** Custom feature patterns to use */
23
+ featurePatterns?: FeaturePattern[];
24
+ /** Generate simple explanation */
25
+ generateSimpleExplanation?: boolean;
26
+ }
27
+ export interface GenerateResult {
28
+ /** Generated documentation */
29
+ doc: ProjectDocContent;
30
+ /** Whether doc was stored in database */
31
+ stored: boolean;
32
+ /** Errors encountered */
33
+ errors: string[];
34
+ }
35
+ export declare class DocsGenerator {
36
+ private system;
37
+ private featurePatterns;
38
+ private generateSimpleExplanation;
39
+ constructor(options: DocsGeneratorOptions);
40
+ /**
41
+ * Generate full project documentation
42
+ */
43
+ generate(): Promise<GenerateResult>;
44
+ /**
45
+ * Get stored project documentation
46
+ */
47
+ getStoredDoc(): Promise<ProjectDocContent | null>;
48
+ /**
49
+ * Check if docs need regeneration
50
+ */
51
+ needsRegeneration(): Promise<boolean>;
52
+ /**
53
+ * Regenerate docs if needed
54
+ */
55
+ regenerateIfNeeded(): Promise<GenerateResult | null>;
56
+ private getFileMetadata;
57
+ private getCodeStructures;
58
+ private getCodeDependencies;
59
+ private getPackageInfo;
60
+ private aggregateStats;
61
+ private detectFeatures;
62
+ private matchesGlobPattern;
63
+ private detectArchitecture;
64
+ private generateMermaidDiagram;
65
+ private generateSimpleDiagram;
66
+ private getLayerIcon;
67
+ private storeDoc;
68
+ }
69
+ /**
70
+ * Get DocsGenerator instance for a system
71
+ */
72
+ export declare function getDocsGenerator(system: DevSystem): DocsGenerator;
73
+ /**
74
+ * Create new DocsGenerator
75
+ */
76
+ export declare function createDocsGenerator(options: DocsGeneratorOptions): DocsGenerator;
77
+ export default DocsGenerator;
78
+ //# sourceMappingURL=DocsGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsGenerator.d.ts","sourceRoot":"","sources":["../../src/services/DocsGenerator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAMlD,OAAO,EACL,KAAK,iBAAiB,EAKtB,KAAK,cAAc,EAMpB,MAAM,yBAAyB,CAAA;AAQhC,MAAM,WAAW,oBAAoB;IACnC,wBAAwB;IACxB,MAAM,EAAE,SAAS,CAAA;IACjB,qCAAqC;IACrC,eAAe,CAAC,EAAE,cAAc,EAAE,CAAA;IAClC,kCAAkC;IAClC,yBAAyB,CAAC,EAAE,OAAO,CAAA;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,8BAA8B;IAC9B,GAAG,EAAE,iBAAiB,CAAA;IACtB,yCAAyC;IACzC,MAAM,EAAE,OAAO,CAAA;IACf,yBAAyB;IACzB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAMD,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,yBAAyB,CAAS;gBAE9B,OAAO,EAAE,oBAAoB;IAMzC;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IA4EzC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IA0BvD;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IA0B3C;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;YAa5C,eAAe;YAmBf,iBAAiB;YAmBjB,mBAAmB;YAmBnB,cAAc;IA8B5B,OAAO,CAAC,cAAc;IAqDtB,OAAO,CAAC,cAAc;IAsEtB,OAAO,CAAC,kBAAkB;IAuB1B,OAAO,CAAC,kBAAkB;IA8E1B,OAAO,CAAC,sBAAsB;IA2C9B,OAAO,CAAC,qBAAqB;IAmB7B,OAAO,CAAC,YAAY;YAoBN,QAAQ;CA2BvB;AAQD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,aAAa,CAKjE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAEhF;AAED,eAAe,aAAa,CAAA"}