driftdetect-core 0.9.39 → 0.9.41

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 (37) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +16 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/workspace/backup-manager.d.ts +57 -0
  6. package/dist/workspace/backup-manager.d.ts.map +1 -0
  7. package/dist/workspace/backup-manager.js +417 -0
  8. package/dist/workspace/backup-manager.js.map +1 -0
  9. package/dist/workspace/context-loader.d.ts +75 -0
  10. package/dist/workspace/context-loader.d.ts.map +1 -0
  11. package/dist/workspace/context-loader.js +412 -0
  12. package/dist/workspace/context-loader.js.map +1 -0
  13. package/dist/workspace/index.d.ts +25 -0
  14. package/dist/workspace/index.d.ts.map +1 -0
  15. package/dist/workspace/index.js +23 -0
  16. package/dist/workspace/index.js.map +1 -0
  17. package/dist/workspace/project-switcher.d.ts +133 -0
  18. package/dist/workspace/project-switcher.d.ts.map +1 -0
  19. package/dist/workspace/project-switcher.js +319 -0
  20. package/dist/workspace/project-switcher.js.map +1 -0
  21. package/dist/workspace/schema-migrator.d.ts +94 -0
  22. package/dist/workspace/schema-migrator.d.ts.map +1 -0
  23. package/dist/workspace/schema-migrator.js +324 -0
  24. package/dist/workspace/schema-migrator.js.map +1 -0
  25. package/dist/workspace/source-of-truth.d.ts +2 -0
  26. package/dist/workspace/source-of-truth.d.ts.map +1 -0
  27. package/dist/workspace/source-of-truth.js +2 -0
  28. package/dist/workspace/source-of-truth.js.map +1 -0
  29. package/dist/workspace/types.d.ts +246 -0
  30. package/dist/workspace/types.d.ts.map +1 -0
  31. package/dist/workspace/types.js +21 -0
  32. package/dist/workspace/types.js.map +1 -0
  33. package/dist/workspace/workspace-manager.d.ts +205 -0
  34. package/dist/workspace/workspace-manager.d.ts.map +1 -0
  35. package/dist/workspace/workspace-manager.js +366 -0
  36. package/dist/workspace/workspace-manager.js.map +1 -0
  37. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backup-manager.js","sourceRoot":"","sources":["../../src/workspace/backup-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Context Loader
3
+ *
4
+ * Enterprise-grade context loading system that pre-loads workspace
5
+ * data for fast access by CLI and MCP commands.
6
+ *
7
+ * Features:
8
+ * - Lazy loading with caching
9
+ * - Automatic cache invalidation
10
+ * - Memory-efficient summaries
11
+ * - Fast startup times
12
+ *
13
+ * @module workspace/context-loader
14
+ */
15
+ import type { WorkspaceContext, ProjectContext, LakeContext, AnalysisContext, WorkspaceManagerConfig } from './types.js';
16
+ export declare class ContextLoader {
17
+ private readonly rootDir;
18
+ private readonly driftDir;
19
+ private readonly config;
20
+ private cachedContext;
21
+ private cacheLoadedAt;
22
+ constructor(rootDir: string, config?: Partial<WorkspaceManagerConfig>);
23
+ /**
24
+ * Load workspace context (with caching)
25
+ */
26
+ loadContext(forceRefresh?: boolean): Promise<WorkspaceContext>;
27
+ /**
28
+ * Get project context only (lightweight)
29
+ */
30
+ getProjectContext(): Promise<ProjectContext>;
31
+ /**
32
+ * Get lake context only
33
+ */
34
+ getLakeContext(): Promise<LakeContext>;
35
+ /**
36
+ * Get analysis state
37
+ */
38
+ getAnalysisContext(): Promise<AnalysisContext>;
39
+ /**
40
+ * Invalidate cache (call after modifications)
41
+ */
42
+ invalidateCache(): void;
43
+ /**
44
+ * Check if drift is initialized
45
+ */
46
+ isInitialized(): Promise<boolean>;
47
+ /**
48
+ * Check if Source of Truth exists
49
+ */
50
+ hasSourceOfTruth(): Promise<boolean>;
51
+ /**
52
+ * Get Source of Truth data
53
+ */
54
+ getSourceOfTruth(): Promise<unknown | null>;
55
+ private isCacheValid;
56
+ private isDiskCacheValid;
57
+ private loadDiskCache;
58
+ private saveDiskCache;
59
+ private loadFreshContext;
60
+ private loadProjectContext;
61
+ private loadLakeContext;
62
+ private loadPatternSummary;
63
+ private loadCallGraphSummary;
64
+ private loadBoundarySummary;
65
+ private loadAnalysisContext;
66
+ private checkExists;
67
+ private getLastLakeUpdate;
68
+ private detectLanguages;
69
+ private detectFrameworks;
70
+ }
71
+ /**
72
+ * Create a context loader instance
73
+ */
74
+ export declare function createContextLoader(rootDir: string, config?: Partial<WorkspaceManagerConfig>): ContextLoader;
75
+ //# sourceMappingURL=context-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-loader.d.ts","sourceRoot":"","sources":["../../src/workspace/context-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,eAAe,EAIf,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAepB,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAChD,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,aAAa,CAAa;gBAGhC,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,OAAO,CAAC,sBAAsB,CAAM;IAW9C;;OAEG;IACG,WAAW,CAAC,YAAY,UAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA8BlE;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC;IAKlD;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAK5C;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IAKpD;;OAEG;IACH,eAAe,IAAI,IAAI;IAKvB;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IASvC;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;IAS1C;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAcjD,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,gBAAgB;YAKV,aAAa;YAUb,aAAa;YASb,gBAAgB;YAmBhB,kBAAkB;YAqClB,eAAe;YAcf,kBAAkB;YA2ClB,oBAAoB;YAuBpB,mBAAmB;YAgBnB,mBAAmB;YA2BnB,WAAW;YASX,iBAAiB;YAWjB,eAAe;YAqCf,gBAAgB;CAsB/B;AAMD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACvC,aAAa,CAEf"}
@@ -0,0 +1,412 @@
1
+ /**
2
+ * Context Loader
3
+ *
4
+ * Enterprise-grade context loading system that pre-loads workspace
5
+ * data for fast access by CLI and MCP commands.
6
+ *
7
+ * Features:
8
+ * - Lazy loading with caching
9
+ * - Automatic cache invalidation
10
+ * - Memory-efficient summaries
11
+ * - Fast startup times
12
+ *
13
+ * @module workspace/context-loader
14
+ */
15
+ import * as fs from 'node:fs/promises';
16
+ import * as path from 'node:path';
17
+ import { DEFAULT_WORKSPACE_CONFIG } from './types.js';
18
+ // ============================================================================
19
+ // Constants
20
+ // ============================================================================
21
+ const DRIFT_DIR = '.drift';
22
+ const CONTEXT_CACHE_FILE = '.context-cache.json';
23
+ const SOURCE_OF_TRUTH_FILE = 'source-of-truth.json';
24
+ // ============================================================================
25
+ // Context Loader Class
26
+ // ============================================================================
27
+ export class ContextLoader {
28
+ rootDir;
29
+ driftDir;
30
+ config;
31
+ cachedContext = null;
32
+ cacheLoadedAt = 0;
33
+ constructor(rootDir, config = {}) {
34
+ this.rootDir = rootDir;
35
+ this.driftDir = path.join(rootDir, DRIFT_DIR);
36
+ this.config = { ...DEFAULT_WORKSPACE_CONFIG, ...config };
37
+ }
38
+ // ==========================================================================
39
+ // Public API
40
+ // ==========================================================================
41
+ /**
42
+ * Load workspace context (with caching)
43
+ */
44
+ async loadContext(forceRefresh = false) {
45
+ // Check cache validity
46
+ if (!forceRefresh && this.isCacheValid()) {
47
+ return this.cachedContext;
48
+ }
49
+ // Try to load from disk cache first
50
+ if (!forceRefresh && this.config.enableContextCache) {
51
+ const diskCache = await this.loadDiskCache();
52
+ if (diskCache && this.isDiskCacheValid(diskCache)) {
53
+ this.cachedContext = diskCache;
54
+ this.cacheLoadedAt = Date.now();
55
+ return diskCache;
56
+ }
57
+ }
58
+ // Load fresh context
59
+ const context = await this.loadFreshContext();
60
+ // Update caches
61
+ this.cachedContext = context;
62
+ this.cacheLoadedAt = Date.now();
63
+ if (this.config.enableContextCache) {
64
+ await this.saveDiskCache(context);
65
+ }
66
+ return context;
67
+ }
68
+ /**
69
+ * Get project context only (lightweight)
70
+ */
71
+ async getProjectContext() {
72
+ const context = await this.loadContext();
73
+ return context.project;
74
+ }
75
+ /**
76
+ * Get lake context only
77
+ */
78
+ async getLakeContext() {
79
+ const context = await this.loadContext();
80
+ return context.lake;
81
+ }
82
+ /**
83
+ * Get analysis state
84
+ */
85
+ async getAnalysisContext() {
86
+ const context = await this.loadContext();
87
+ return context.analysis;
88
+ }
89
+ /**
90
+ * Invalidate cache (call after modifications)
91
+ */
92
+ invalidateCache() {
93
+ this.cachedContext = null;
94
+ this.cacheLoadedAt = 0;
95
+ }
96
+ /**
97
+ * Check if drift is initialized
98
+ */
99
+ async isInitialized() {
100
+ try {
101
+ await fs.access(this.driftDir);
102
+ return true;
103
+ }
104
+ catch {
105
+ return false;
106
+ }
107
+ }
108
+ /**
109
+ * Check if Source of Truth exists
110
+ */
111
+ async hasSourceOfTruth() {
112
+ try {
113
+ await fs.access(path.join(this.driftDir, SOURCE_OF_TRUTH_FILE));
114
+ return true;
115
+ }
116
+ catch {
117
+ return false;
118
+ }
119
+ }
120
+ /**
121
+ * Get Source of Truth data
122
+ */
123
+ async getSourceOfTruth() {
124
+ try {
125
+ const sotPath = path.join(this.driftDir, SOURCE_OF_TRUTH_FILE);
126
+ const content = await fs.readFile(sotPath, 'utf-8');
127
+ return JSON.parse(content);
128
+ }
129
+ catch {
130
+ return null;
131
+ }
132
+ }
133
+ // ==========================================================================
134
+ // Private Methods
135
+ // ==========================================================================
136
+ isCacheValid() {
137
+ if (!this.cachedContext)
138
+ return false;
139
+ const age = Date.now() - this.cacheLoadedAt;
140
+ return age < this.config.contextCacheTTL * 1000;
141
+ }
142
+ isDiskCacheValid(cache) {
143
+ const validUntil = new Date(cache.validUntil).getTime();
144
+ return Date.now() < validUntil;
145
+ }
146
+ async loadDiskCache() {
147
+ try {
148
+ const cachePath = path.join(this.driftDir, CONTEXT_CACHE_FILE);
149
+ const content = await fs.readFile(cachePath, 'utf-8');
150
+ return JSON.parse(content);
151
+ }
152
+ catch {
153
+ return null;
154
+ }
155
+ }
156
+ async saveDiskCache(context) {
157
+ try {
158
+ const cachePath = path.join(this.driftDir, CONTEXT_CACHE_FILE);
159
+ await fs.writeFile(cachePath, JSON.stringify(context, null, 2));
160
+ }
161
+ catch {
162
+ // Cache save failure is non-critical
163
+ }
164
+ }
165
+ async loadFreshContext() {
166
+ const now = new Date();
167
+ const validUntil = new Date(now.getTime() + this.config.contextCacheTTL * 1000);
168
+ const [project, lake, analysis] = await Promise.all([
169
+ this.loadProjectContext(),
170
+ this.loadLakeContext(),
171
+ this.loadAnalysisContext(),
172
+ ]);
173
+ return {
174
+ project,
175
+ lake,
176
+ analysis,
177
+ loadedAt: now.toISOString(),
178
+ validUntil: validUntil.toISOString(),
179
+ };
180
+ }
181
+ async loadProjectContext() {
182
+ const configPath = path.join(this.driftDir, 'config.json');
183
+ try {
184
+ const content = await fs.readFile(configPath, 'utf-8');
185
+ const config = JSON.parse(content);
186
+ // Detect languages and frameworks
187
+ const languages = await this.detectLanguages();
188
+ const frameworks = await this.detectFrameworks();
189
+ return {
190
+ id: config.project?.id ?? '',
191
+ name: config.project?.name ?? path.basename(this.rootDir),
192
+ rootPath: this.rootDir,
193
+ driftPath: this.driftDir,
194
+ schemaVersion: config.version ?? '2.0.0',
195
+ driftVersion: config.driftVersion ?? 'unknown',
196
+ lastScanAt: config.lastScanAt,
197
+ healthScore: config.healthScore,
198
+ languages,
199
+ frameworks,
200
+ };
201
+ }
202
+ catch {
203
+ return {
204
+ id: '',
205
+ name: path.basename(this.rootDir),
206
+ rootPath: this.rootDir,
207
+ driftPath: this.driftDir,
208
+ schemaVersion: '2.0.0',
209
+ driftVersion: 'unknown',
210
+ languages: [],
211
+ frameworks: [],
212
+ };
213
+ }
214
+ }
215
+ async loadLakeContext() {
216
+ const patternSummary = await this.loadPatternSummary();
217
+ const callGraphSummary = await this.loadCallGraphSummary();
218
+ const boundarySummary = await this.loadBoundarySummary();
219
+ return {
220
+ available: patternSummary.total > 0,
221
+ patternSummary,
222
+ callGraphSummary,
223
+ boundarySummary,
224
+ lastUpdatedAt: await this.getLastLakeUpdate(),
225
+ };
226
+ }
227
+ async loadPatternSummary() {
228
+ const summary = {
229
+ total: 0,
230
+ byStatus: { discovered: 0, approved: 0, ignored: 0 },
231
+ byCategory: {},
232
+ byConfidence: { high: 0, medium: 0, low: 0, uncertain: 0 },
233
+ };
234
+ // Load from views if available (fast path)
235
+ try {
236
+ const viewPath = path.join(this.driftDir, 'views', 'status.json');
237
+ const content = await fs.readFile(viewPath, 'utf-8');
238
+ const view = JSON.parse(content);
239
+ if (view.patterns) {
240
+ summary.total = view.patterns.total ?? 0;
241
+ summary.byStatus = view.patterns.byStatus ?? summary.byStatus;
242
+ summary.byCategory = view.patterns.byCategory ?? {};
243
+ summary.byConfidence = view.patterns.byConfidence ?? summary.byConfidence;
244
+ return summary;
245
+ }
246
+ }
247
+ catch {
248
+ // Views not available, count from files
249
+ }
250
+ // Count from pattern files (slow path)
251
+ const statuses = ['discovered', 'approved', 'ignored'];
252
+ for (const status of statuses) {
253
+ const dir = path.join(this.driftDir, 'patterns', status);
254
+ try {
255
+ const files = await fs.readdir(dir);
256
+ const count = files.filter(f => f.endsWith('.json')).length;
257
+ summary.byStatus[status] = count;
258
+ summary.total += count;
259
+ }
260
+ catch {
261
+ // Directory doesn't exist
262
+ }
263
+ }
264
+ return summary;
265
+ }
266
+ async loadCallGraphSummary() {
267
+ try {
268
+ // Check for SQLite database (preferred)
269
+ const dbPath = path.join(this.driftDir, 'lake', 'callgraph', 'callgraph.db');
270
+ await fs.access(dbPath);
271
+ // Load summary from index
272
+ const indexPath = path.join(this.driftDir, 'lake', 'callgraph', 'index.json');
273
+ const content = await fs.readFile(indexPath, 'utf-8');
274
+ const index = JSON.parse(content);
275
+ return {
276
+ functions: index.totalFunctions ?? 0,
277
+ callSites: index.totalCallSites ?? 0,
278
+ entryPoints: index.entryPoints ?? 0,
279
+ dataAccessors: index.dataAccessors ?? 0,
280
+ builtAt: index.builtAt,
281
+ };
282
+ }
283
+ catch {
284
+ return undefined;
285
+ }
286
+ }
287
+ async loadBoundarySummary() {
288
+ try {
289
+ const accessMapPath = path.join(this.driftDir, 'boundaries', 'access-map.json');
290
+ const content = await fs.readFile(accessMapPath, 'utf-8');
291
+ const accessMap = JSON.parse(content);
292
+ return {
293
+ tables: Object.keys(accessMap.tables ?? {}).length,
294
+ accessPoints: accessMap.totalAccessPoints ?? 0,
295
+ sensitiveFields: accessMap.sensitiveFields?.length ?? 0,
296
+ };
297
+ }
298
+ catch {
299
+ return undefined;
300
+ }
301
+ }
302
+ async loadAnalysisContext() {
303
+ const [callGraphBuilt, testTopologyBuilt, couplingBuilt, dnaProfileExists, memoryInitialized, constantsExtracted,] = await Promise.all([
304
+ this.checkExists('lake/callgraph/callgraph.db'),
305
+ this.checkExists('test-topology/summary.json'),
306
+ this.checkExists('module-coupling/graph.json'),
307
+ this.checkExists('dna/profile.json'),
308
+ this.checkExists('memory/memories.json'),
309
+ this.checkExists('constants/index.json'),
310
+ ]);
311
+ return {
312
+ callGraphBuilt,
313
+ testTopologyBuilt,
314
+ couplingBuilt,
315
+ dnaProfileExists,
316
+ memoryInitialized,
317
+ constantsExtracted,
318
+ };
319
+ }
320
+ async checkExists(relativePath) {
321
+ try {
322
+ await fs.access(path.join(this.driftDir, relativePath));
323
+ return true;
324
+ }
325
+ catch {
326
+ return false;
327
+ }
328
+ }
329
+ async getLastLakeUpdate() {
330
+ try {
331
+ const manifestPath = path.join(this.driftDir, 'manifest.json');
332
+ const content = await fs.readFile(manifestPath, 'utf-8');
333
+ const manifest = JSON.parse(content);
334
+ return manifest.lastUpdatedAt;
335
+ }
336
+ catch {
337
+ return undefined;
338
+ }
339
+ }
340
+ async detectLanguages() {
341
+ const languages = [];
342
+ // Check for language indicators
343
+ const indicators = {
344
+ typescript: ['tsconfig.json', 'package.json'],
345
+ python: ['requirements.txt', 'pyproject.toml', 'setup.py'],
346
+ java: ['pom.xml', 'build.gradle'],
347
+ csharp: ['*.csproj', '*.sln'],
348
+ php: ['composer.json'],
349
+ go: ['go.mod'],
350
+ rust: ['Cargo.toml'],
351
+ };
352
+ for (const [lang, files] of Object.entries(indicators)) {
353
+ for (const file of files) {
354
+ try {
355
+ if (file.includes('*')) {
356
+ const entries = await fs.readdir(this.rootDir);
357
+ if (entries.some(e => e.endsWith(file.replace('*', '')))) {
358
+ languages.push(lang);
359
+ break;
360
+ }
361
+ }
362
+ else {
363
+ await fs.access(path.join(this.rootDir, file));
364
+ languages.push(lang);
365
+ break;
366
+ }
367
+ }
368
+ catch {
369
+ continue;
370
+ }
371
+ }
372
+ }
373
+ return languages;
374
+ }
375
+ async detectFrameworks() {
376
+ const frameworks = [];
377
+ try {
378
+ const pkgPath = path.join(this.rootDir, 'package.json');
379
+ const content = await fs.readFile(pkgPath, 'utf-8');
380
+ const pkg = JSON.parse(content);
381
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
382
+ if (deps['next'])
383
+ frameworks.push('nextjs');
384
+ else if (deps['react'])
385
+ frameworks.push('react');
386
+ if (deps['vue'])
387
+ frameworks.push('vue');
388
+ if (deps['@angular/core'])
389
+ frameworks.push('angular');
390
+ if (deps['express'])
391
+ frameworks.push('express');
392
+ if (deps['fastify'])
393
+ frameworks.push('fastify');
394
+ if (deps['@nestjs/core'])
395
+ frameworks.push('nestjs');
396
+ }
397
+ catch {
398
+ // No package.json
399
+ }
400
+ return frameworks;
401
+ }
402
+ }
403
+ // ============================================================================
404
+ // Factory Function
405
+ // ============================================================================
406
+ /**
407
+ * Create a context loader instance
408
+ */
409
+ export function createContextLoader(rootDir, config) {
410
+ return new ContextLoader(rootDir, config);
411
+ }
412
+ //# sourceMappingURL=context-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-loader.js","sourceRoot":"","sources":["../../src/workspace/context-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAYlC,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,SAAS,GAAG,QAAQ,CAAC;AAC3B,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;AACjD,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAEpD,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E,MAAM,OAAO,aAAa;IACP,OAAO,CAAS;IAChB,QAAQ,CAAS;IACjB,MAAM,CAAyB;IACxC,aAAa,GAA4B,IAAI,CAAC;IAC9C,aAAa,GAAW,CAAC,CAAC;IAElC,YACE,OAAe,EACf,SAA0C,EAAE;QAE5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,wBAAwB,EAAE,GAAG,MAAM,EAAE,CAAC;IAC3D,CAAC;IAED,6EAA6E;IAC7E,aAAa;IACb,6EAA6E;IAE7E;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,YAAY,GAAG,KAAK;QACpC,uBAAuB;QACvB,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,aAAc,CAAC;QAC7B,CAAC;QAED,oCAAoC;QACpC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACpD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC7C,IAAI,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;gBAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAChC,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAE9C,gBAAgB;QAChB,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEhC,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB;QACrB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc;QAClB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB;QACtB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,QAAQ,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,eAAe;QACb,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC;YAChE,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,kBAAkB;IAClB,6EAA6E;IAErE,YAAY;QAClB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,KAAK,CAAC;QAEtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC5C,OAAO,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC;IAClD,CAAC;IAEO,gBAAgB,CAAC,KAAuB;QAC9C,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;QACxD,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAqB,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAyB;QACnD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;YAC/D,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;QAEhF,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAClD,IAAI,CAAC,kBAAkB,EAAE;YACzB,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,CAAC,mBAAmB,EAAE;SAC3B,CAAC,CAAC;QAEH,OAAO;YACL,OAAO;YACP,IAAI;YACJ,QAAQ;YACR,QAAQ,EAAE,GAAG,CAAC,WAAW,EAAE;YAC3B,UAAU,EAAE,UAAU,CAAC,WAAW,EAAE;SACrC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAE3D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEnC,kCAAkC;YAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAC/C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAEjD,OAAO;gBACL,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE;gBAC5B,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;gBACzD,QAAQ,EAAE,IAAI,CAAC,OAAO;gBACtB,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,aAAa,EAAE,MAAM,CAAC,OAAO,IAAI,OAAO;gBACxC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,SAAS;gBAC9C,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,SAAS;gBACT,UAAU;aACX,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,EAAE,EAAE,EAAE;gBACN,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;gBACjC,QAAQ,EAAE,IAAI,CAAC,OAAO;gBACtB,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,aAAa,EAAE,OAAO;gBACtB,YAAY,EAAE,SAAS;gBACvB,SAAS,EAAE,EAAE;gBACb,UAAU,EAAE,EAAE;aACf,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACvD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC3D,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEzD,OAAO;YACL,SAAS,EAAE,cAAc,CAAC,KAAK,GAAG,CAAC;YACnC,cAAc;YACd,gBAAgB;YAChB,eAAe;YACf,aAAa,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;SAC9C,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,MAAM,OAAO,GAAmB;YAC9B,KAAK,EAAE,CAAC;YACR,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;YACpD,UAAU,EAAE,EAAE;YACd,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;SAC3D,CAAC;QAEF,2CAA2C;QAC3C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;YAClE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEjC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;gBACzC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;gBAC9D,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC;gBACpD,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC;gBAC1E,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wCAAwC;QAC1C,CAAC;QAED,uCAAuC;QACvC,MAAM,QAAQ,GAAG,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;QAEhE,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;YACzD,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACpC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC5D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;gBACjC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,0BAA0B;YAC5B,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAChC,IAAI,CAAC;YACH,wCAAwC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;YAC7E,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAExB,0BAA0B;YAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YAC9E,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAElC,OAAO;gBACL,SAAS,EAAE,KAAK,CAAC,cAAc,IAAI,CAAC;gBACpC,SAAS,EAAE,KAAK,CAAC,cAAc,IAAI,CAAC;gBACpC,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC;gBACnC,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,CAAC;gBACvC,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAC;YAChF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEtC,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM;gBAClD,YAAY,EAAE,SAAS,CAAC,iBAAiB,IAAI,CAAC;gBAC9C,eAAe,EAAE,SAAS,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC;aACxD,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,MAAM,CACJ,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EACnB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpB,IAAI,CAAC,WAAW,CAAC,6BAA6B,CAAC;YAC/C,IAAI,CAAC,WAAW,CAAC,4BAA4B,CAAC;YAC9C,IAAI,CAAC,WAAW,CAAC,4BAA4B,CAAC;YAC9C,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC;YACxC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC;SACzC,CAAC,CAAC;QAEH,OAAO;YACL,cAAc;YACd,iBAAiB;YACjB,aAAa;YACb,gBAAgB;YAChB,iBAAiB;YACjB,kBAAkB;SACnB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,YAAoB;QAC5C,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;YACxD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACrC,OAAO,QAAQ,CAAC,aAAa,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,MAAM,SAAS,GAAa,EAAE,CAAC;QAE/B,gCAAgC;QAChC,MAAM,UAAU,GAA6B;YAC3C,UAAU,EAAE,CAAC,eAAe,EAAE,cAAc,CAAC;YAC7C,MAAM,EAAE,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,UAAU,CAAC;YAC1D,IAAI,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC;YACjC,MAAM,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;YAC7B,GAAG,EAAE,CAAC,eAAe,CAAC;YACtB,EAAE,EAAE,CAAC,QAAQ,CAAC;YACd,IAAI,EAAE,CAAC,YAAY,CAAC;SACrB,CAAC;QAEF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;wBACvB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC/C,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACzD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BACrB,MAAM;wBACR,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;wBAC/C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACrB,MAAM;oBACR,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACxD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACpD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAChC,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,YAAY,EAAE,GAAG,GAAG,CAAC,eAAe,EAAE,CAAC;YAE7D,IAAI,IAAI,CAAC,MAAM,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACvC,IAAI,IAAI,CAAC,OAAO,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,IAAI,CAAC,KAAK,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,IAAI,CAAC,eAAe,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtD,IAAI,IAAI,CAAC,SAAS,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChD,IAAI,IAAI,CAAC,SAAS,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChD,IAAI,IAAI,CAAC,cAAc,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAe,EACf,MAAwC;IAExC,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Workspace Management Module
3
+ *
4
+ * Enterprise-grade workspace management for drift projects.
5
+ *
6
+ * Components:
7
+ * - BackupManager: Backup/restore with checksums and retention
8
+ * - ContextLoader: Pre-load lake data for fast access
9
+ * - ProjectSwitcher: Multi-project management with indicators
10
+ * - SchemaMigrator: Version upgrades with rollback support
11
+ * - WorkspaceManager: Unified orchestrator
12
+ *
13
+ * @module workspace
14
+ */
15
+ export type { BackupMetadata, BackupReason, BackupResult, RestoreResult, SchemaMigration, WorkspaceContext, ProjectContext, LakeContext, AnalysisContext, PatternSummary, CallGraphSummary, BoundarySummary, ActiveProjectIndicator, ProjectSwitchRequest, ProjectSwitchResult, WorkspaceManagerConfig, } from './types.js';
16
+ export { DEFAULT_WORKSPACE_CONFIG } from './types.js';
17
+ export { BackupManager, createBackupManager, } from './backup-manager.js';
18
+ export { ContextLoader, createContextLoader, } from './context-loader.js';
19
+ export type { ProjectRegistryLike, AgentProjectContext, } from './project-switcher.js';
20
+ export { ProjectSwitcher, createProjectSwitcher, } from './project-switcher.js';
21
+ export type { MigrationResult, MigrationHistoryEntry, MigrationHistory, } from './schema-migrator.js';
22
+ export { SchemaMigrator, createSchemaMigrator, } from './schema-migrator.js';
23
+ export type { WorkspaceInitOptions, WorkspaceStatus, DestructiveOperationRequest, } from './workspace-manager.js';
24
+ export { WorkspaceManager, createWorkspaceManager, getWorkspaceManager, resetGlobalWorkspaceManager, } from './workspace-manager.js';
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,YAAY,EAEV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,eAAe,EAGf,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,eAAe,EAGf,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EAGnB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAGtD,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAG7B,YAAY,EACV,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,eAAe,EACf,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EACV,eAAe,EACf,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,cAAc,EACd,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Workspace Management Module
3
+ *
4
+ * Enterprise-grade workspace management for drift projects.
5
+ *
6
+ * Components:
7
+ * - BackupManager: Backup/restore with checksums and retention
8
+ * - ContextLoader: Pre-load lake data for fast access
9
+ * - ProjectSwitcher: Multi-project management with indicators
10
+ * - SchemaMigrator: Version upgrades with rollback support
11
+ * - WorkspaceManager: Unified orchestrator
12
+ *
13
+ * @module workspace
14
+ */
15
+ export { DEFAULT_WORKSPACE_CONFIG } from './types.js';
16
+ // Backup Manager
17
+ export { BackupManager, createBackupManager, } from './backup-manager.js';
18
+ // Context Loader
19
+ export { ContextLoader, createContextLoader, } from './context-loader.js';
20
+ export { ProjectSwitcher, createProjectSwitcher, } from './project-switcher.js';
21
+ export { SchemaMigrator, createSchemaMigrator, } from './schema-migrator.js';
22
+ export { WorkspaceManager, createWorkspaceManager, getWorkspaceManager, resetGlobalWorkspaceManager, } from './workspace-manager.js';
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA6BH,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,iBAAiB;AACjB,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,iBAAiB;AACjB,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAQ7B,OAAO,EACL,eAAe,EACf,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAS/B,OAAO,EACL,cAAc,EACd,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAS9B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC"}