specweave 0.28.57 → 0.28.61

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 (44) hide show
  1. package/bin/specweave.js +36 -0
  2. package/dist/src/cli/commands/init.d.ts.map +1 -1
  3. package/dist/src/cli/commands/init.js +13 -1
  4. package/dist/src/cli/commands/init.js.map +1 -1
  5. package/dist/src/cli/commands/jobs.d.ts +20 -0
  6. package/dist/src/cli/commands/jobs.d.ts.map +1 -0
  7. package/dist/src/cli/commands/jobs.js +448 -0
  8. package/dist/src/cli/commands/jobs.js.map +1 -0
  9. package/dist/src/cli/helpers/init/ado-repo-cloning.d.ts +32 -0
  10. package/dist/src/cli/helpers/init/ado-repo-cloning.d.ts.map +1 -0
  11. package/dist/src/cli/helpers/init/ado-repo-cloning.js +161 -0
  12. package/dist/src/cli/helpers/init/ado-repo-cloning.js.map +1 -0
  13. package/dist/src/cli/helpers/init/external-import.d.ts +18 -1
  14. package/dist/src/cli/helpers/init/external-import.d.ts.map +1 -1
  15. package/dist/src/cli/helpers/init/external-import.js +61 -21
  16. package/dist/src/cli/helpers/init/external-import.js.map +1 -1
  17. package/dist/src/cli/helpers/selection-strategy.d.ts +28 -0
  18. package/dist/src/cli/helpers/selection-strategy.d.ts.map +1 -1
  19. package/dist/src/cli/helpers/selection-strategy.js +48 -0
  20. package/dist/src/cli/helpers/selection-strategy.js.map +1 -1
  21. package/dist/src/cli/workers/import-worker.d.ts +18 -0
  22. package/dist/src/cli/workers/import-worker.d.ts.map +1 -0
  23. package/dist/src/cli/workers/import-worker.js +268 -0
  24. package/dist/src/cli/workers/import-worker.js.map +1 -0
  25. package/dist/src/core/background/index.d.ts +8 -0
  26. package/dist/src/core/background/index.d.ts.map +1 -1
  27. package/dist/src/core/background/index.js +8 -0
  28. package/dist/src/core/background/index.js.map +1 -1
  29. package/dist/src/core/background/job-launcher.d.ts +54 -0
  30. package/dist/src/core/background/job-launcher.d.ts.map +1 -0
  31. package/dist/src/core/background/job-launcher.js +206 -0
  32. package/dist/src/core/background/job-launcher.js.map +1 -0
  33. package/dist/src/core/repo-structure/providers/azure-devops-provider.d.ts +15 -0
  34. package/dist/src/core/repo-structure/providers/azure-devops-provider.d.ts.map +1 -1
  35. package/dist/src/core/repo-structure/providers/azure-devops-provider.js +56 -0
  36. package/dist/src/core/repo-structure/providers/azure-devops-provider.js.map +1 -1
  37. package/dist/src/importers/ado-importer.d.ts +7 -1
  38. package/dist/src/importers/ado-importer.d.ts.map +1 -1
  39. package/dist/src/importers/ado-importer.js +108 -61
  40. package/dist/src/importers/ado-importer.js.map +1 -1
  41. package/package.json +1 -1
  42. package/plugins/specweave/commands/specweave-jobs.md +133 -29
  43. package/plugins/specweave-ado/commands/specweave-ado-clone-repos.md +379 -0
  44. package/plugins/specweave-release/commands/specweave-release-npm.md +51 -14
@@ -681,4 +681,52 @@ export function toSelectableItemsFromObjects(items, valueField = 'name') {
681
681
  metadata: item,
682
682
  }));
683
683
  }
684
+ /**
685
+ * Filter repositories by clone pattern
686
+ *
687
+ * Used during init to filter ADO/GitHub repos before cloning.
688
+ *
689
+ * @param repos - Array of repositories with name field
690
+ * @param clonePattern - Clone pattern configuration
691
+ * @returns Filtered repositories
692
+ *
693
+ * @example
694
+ * ```typescript
695
+ * const repos = [{ name: 'sw-fe' }, { name: 'sw-be' }, { name: 'other' }];
696
+ * const pattern = { strategy: 'pattern-glob', pattern: 'sw-*' };
697
+ * const filtered = filterRepositoriesByPattern(repos, pattern);
698
+ * // Result: [{ name: 'sw-fe' }, { name: 'sw-be' }]
699
+ * ```
700
+ */
701
+ export function filterRepositoriesByPattern(repos, clonePattern) {
702
+ switch (clonePattern.strategy) {
703
+ case 'all':
704
+ return repos;
705
+ case 'skip':
706
+ return [];
707
+ case 'pattern-glob': {
708
+ if (!clonePattern.pattern)
709
+ return repos;
710
+ const selectableItems = repos.map(r => ({ name: r.name, value: r.name }));
711
+ const matched = matchByGlob(selectableItems, clonePattern.pattern);
712
+ const matchedNames = new Set(matched.map(m => m.name));
713
+ return repos.filter(r => matchedNames.has(r.name));
714
+ }
715
+ case 'pattern-regex': {
716
+ if (!clonePattern.pattern)
717
+ return repos;
718
+ const selectableItems = repos.map(r => ({ name: r.name, value: r.name }));
719
+ const result = matchByRegex(selectableItems, clonePattern.pattern);
720
+ if (result.error) {
721
+ // Log error but don't crash - return empty array
722
+ console.error(`Invalid regex pattern "${clonePattern.pattern}": ${result.error}`);
723
+ return [];
724
+ }
725
+ const matchedNames = new Set(result.items.map(m => m.name));
726
+ return repos.filter(r => matchedNames.has(r.name));
727
+ }
728
+ default:
729
+ return repos;
730
+ }
731
+ }
684
732
  //# sourceMappingURL=selection-strategy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"selection-strategy.js","sourceRoot":"","sources":["../../../../src/cli/helpers/selection-strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selection-strategy.js","sourceRoot":"","sources":["../../../../src/cli/helpers/selection-strategy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Background Import Worker
4
+ *
5
+ * Standalone script that runs import in a detached process.
6
+ * Survives terminal close - progress tracked via job state file.
7
+ *
8
+ * Usage:
9
+ * node import-worker.js <jobId> <projectPath>
10
+ *
11
+ * The worker reads job configuration from:
12
+ * .specweave/state/jobs/<jobId>/config.json
13
+ *
14
+ * And updates progress to:
15
+ * .specweave/state/background-jobs.json
16
+ */
17
+ export {};
18
+ //# sourceMappingURL=import-worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-worker.d.ts","sourceRoot":"","sources":["../../../../src/cli/workers/import-worker.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;GAcG"}
@@ -0,0 +1,268 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Background Import Worker
4
+ *
5
+ * Standalone script that runs import in a detached process.
6
+ * Survives terminal close - progress tracked via job state file.
7
+ *
8
+ * Usage:
9
+ * node import-worker.js <jobId> <projectPath>
10
+ *
11
+ * The worker reads job configuration from:
12
+ * .specweave/state/jobs/<jobId>/config.json
13
+ *
14
+ * And updates progress to:
15
+ * .specweave/state/background-jobs.json
16
+ */
17
+ import * as fs from 'fs';
18
+ import * as path from 'path';
19
+ import { fileURLToPath } from 'url';
20
+ // Worker-specific imports (loaded dynamically to reduce startup time)
21
+ let ImportCoordinator;
22
+ let getJobManager;
23
+ let ItemConverter;
24
+ const __filename = fileURLToPath(import.meta.url);
25
+ const __dirname = path.dirname(__filename);
26
+ /**
27
+ * Main worker entry point
28
+ */
29
+ async function main() {
30
+ const args = process.argv.slice(2);
31
+ if (args.length < 2) {
32
+ console.error('Usage: import-worker.js <jobId> <projectPath>');
33
+ process.exit(1);
34
+ }
35
+ const jobId = args[0];
36
+ const projectPath = args[1];
37
+ // Write PID file for process management
38
+ const pidFile = path.join(projectPath, '.specweave', 'state', 'jobs', jobId, 'worker.pid');
39
+ fs.mkdirSync(path.dirname(pidFile), { recursive: true });
40
+ fs.writeFileSync(pidFile, process.pid.toString());
41
+ // Setup cleanup on exit
42
+ const cleanup = () => {
43
+ try {
44
+ if (fs.existsSync(pidFile)) {
45
+ fs.unlinkSync(pidFile);
46
+ }
47
+ }
48
+ catch {
49
+ // Ignore cleanup errors
50
+ }
51
+ };
52
+ process.on('exit', cleanup);
53
+ process.on('SIGTERM', () => {
54
+ cleanup();
55
+ process.exit(0);
56
+ });
57
+ process.on('SIGINT', () => {
58
+ cleanup();
59
+ process.exit(0);
60
+ });
61
+ try {
62
+ // Load job configuration
63
+ const configPath = path.join(projectPath, '.specweave', 'state', 'jobs', jobId, 'config.json');
64
+ if (!fs.existsSync(configPath)) {
65
+ throw new Error(`Job config not found: ${configPath}`);
66
+ }
67
+ const jobConfig = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
68
+ // Log to worker-specific log file
69
+ const logPath = path.join(projectPath, '.specweave', 'state', 'jobs', jobId, 'worker.log');
70
+ const log = (msg) => {
71
+ const timestamp = new Date().toISOString();
72
+ fs.appendFileSync(logPath, `[${timestamp}] ${msg}\n`);
73
+ };
74
+ log(`Worker started for job ${jobId}`);
75
+ log(`Project path: ${projectPath}`);
76
+ log(`PID: ${process.pid}`);
77
+ // Dynamically import heavy dependencies
78
+ const importCoordinatorModule = await import('../../importers/import-coordinator.js');
79
+ ImportCoordinator = importCoordinatorModule.ImportCoordinator;
80
+ const jobManagerModule = await import('../../core/background/job-manager.js');
81
+ getJobManager = jobManagerModule.getJobManager;
82
+ const itemConverterModule = await import('../../importers/item-converter.js');
83
+ ItemConverter = itemConverterModule.ItemConverter;
84
+ // Get job manager and mark as running
85
+ const jobManager = getJobManager(projectPath);
86
+ jobManager.startJob(jobId);
87
+ log('Dependencies loaded, starting import...');
88
+ // Setup progress tracking
89
+ const coordinatorConfig = jobConfig.coordinatorConfig;
90
+ let totalEstimate = 0;
91
+ let currentCount = 0;
92
+ coordinatorConfig.onProgressEnhanced = (info) => {
93
+ currentCount = info.current || currentCount;
94
+ if (info.total && info.total > totalEstimate) {
95
+ totalEstimate = info.total;
96
+ }
97
+ // Update job progress
98
+ jobManager.updateProgress(jobId, currentCount, info.sourceRepo || info.platform, undefined, undefined);
99
+ // Update total estimate if we now know more
100
+ const job = jobManager.getJob(jobId);
101
+ if (job && totalEstimate > job.progress.total) {
102
+ job.progress.total = totalEstimate;
103
+ // Force save with new total
104
+ jobManager.updateProgress(jobId, currentCount, info.sourceRepo || info.platform);
105
+ }
106
+ log(`Progress: ${currentCount}/${totalEstimate} - ${info.platform} ${info.sourceRepo || ''}`);
107
+ };
108
+ // Rate limit handling
109
+ coordinatorConfig.onRateLimitPause = (platform, seconds) => {
110
+ log(`Rate limited by ${platform}, pausing for ${seconds}s`);
111
+ jobManager.pauseJob(jobId);
112
+ // Set resume time
113
+ const job = jobManager.getJob(jobId);
114
+ if (job) {
115
+ job.resumeAfter = new Date(Date.now() + seconds * 1000);
116
+ }
117
+ };
118
+ // Execute import
119
+ const coordinator = new ImportCoordinator(coordinatorConfig);
120
+ const result = await coordinator.importAll();
121
+ log(`Import complete: ${result.totalCount} items fetched`);
122
+ // CRITICAL: Convert imported items to living docs
123
+ // Without this, items are fetched but NOT saved to specs folder!
124
+ if (result.totalCount > 0 && result.allItems.length > 0) {
125
+ log('Converting items to living docs...');
126
+ const specsDir = path.join(projectPath, '.specweave', 'docs', 'internal', 'specs');
127
+ // Group items by source for proper folder structure
128
+ const groups = groupItemsByExternalContainer(result.allItems);
129
+ let totalConverted = 0;
130
+ for (const group of groups) {
131
+ const { projectId, items, externalContainer } = group;
132
+ log(`Converting ${items.length} items for project: ${projectId}`);
133
+ const converter = new ItemConverter({
134
+ specsDir,
135
+ projectRoot: projectPath,
136
+ enableFeatureAllocation: true,
137
+ projectId,
138
+ enableGlobalCollisionDetection: false,
139
+ autoArchiveAfterDays: 30,
140
+ externalContainer,
141
+ onFeatureCreated: (featureId, featurePath) => {
142
+ log(`Created feature folder: ${projectId}/${featureId}`);
143
+ },
144
+ onItemArchived: (usId, reason) => {
145
+ log(`Archived ${usId} (${reason})`);
146
+ }
147
+ });
148
+ const convertedStories = await converter.convertItems(items);
149
+ totalConverted += convertedStories.length;
150
+ // Update progress
151
+ jobManager.updateProgress(jobId, totalConverted, `Converting: ${projectId}`);
152
+ }
153
+ log(`Converted ${totalConverted} User Stories to living docs`);
154
+ }
155
+ // Mark job as complete
156
+ jobManager.completeJob(jobId);
157
+ // Write result summary
158
+ const resultPath = path.join(projectPath, '.specweave', 'state', 'jobs', jobId, 'result.json');
159
+ fs.writeFileSync(resultPath, JSON.stringify({
160
+ totalCount: result.totalCount,
161
+ completedAt: new Date().toISOString(),
162
+ platforms: result.platforms || [],
163
+ errors: result.errors || {}
164
+ }, null, 2));
165
+ log('Worker finished successfully');
166
+ process.exit(0);
167
+ }
168
+ catch (error) {
169
+ // Log error
170
+ const logPath = path.join(projectPath, '.specweave', 'state', 'jobs', jobId, 'worker.log');
171
+ fs.appendFileSync(logPath, `[${new Date().toISOString()}] ERROR: ${error.message}\n`);
172
+ fs.appendFileSync(logPath, `${error.stack}\n`);
173
+ // Mark job as failed
174
+ try {
175
+ const jobManagerModule = await import('../../core/background/job-manager.js');
176
+ const jobManager = jobManagerModule.getJobManager(projectPath);
177
+ jobManager.completeJob(jobId, error.message);
178
+ }
179
+ catch {
180
+ // Ignore if can't update job
181
+ }
182
+ console.error(`Worker error: ${error.message}`);
183
+ process.exit(1);
184
+ }
185
+ }
186
+ function groupItemsByExternalContainer(items) {
187
+ const groups = new Map();
188
+ // Import normalizeToProjectId dynamically would be complex, so inline the logic
189
+ const normalize = (name) => {
190
+ return name
191
+ .toLowerCase()
192
+ .replace(/[^a-z0-9]+/g, '-')
193
+ .replace(/-+/g, '-')
194
+ .replace(/^-|-$/g, '');
195
+ };
196
+ for (const item of items) {
197
+ let groupKey;
198
+ let containerType = null;
199
+ let containerId;
200
+ let projectId;
201
+ let externalContainer;
202
+ // Check for JIRA container context
203
+ if (item.jiraProjectKey) {
204
+ containerType = 'jira';
205
+ containerId = item.jiraProjectKey;
206
+ projectId = item.jiraBoardName
207
+ ? normalize(item.jiraBoardName) || 'default'
208
+ : 'default';
209
+ groupKey = `jira:${containerId}:${projectId}`;
210
+ externalContainer = {
211
+ type: 'jira-project',
212
+ containerId,
213
+ containerName: containerId,
214
+ boardId: item.jiraBoardId,
215
+ boardName: item.jiraBoardName
216
+ };
217
+ }
218
+ // Check for ADO container context
219
+ else if (item.adoProjectName) {
220
+ containerType = 'ado';
221
+ containerId = item.adoProjectName;
222
+ if (item.adoAreaPath) {
223
+ const areaSegments = item.adoAreaPath.split('\\');
224
+ const lastSegment = areaSegments[areaSegments.length - 1];
225
+ projectId = normalize(lastSegment) || 'default';
226
+ }
227
+ else {
228
+ projectId = 'default';
229
+ }
230
+ groupKey = `ado:${containerId}:${projectId}`;
231
+ externalContainer = {
232
+ type: 'ado-project',
233
+ containerId,
234
+ containerName: containerId,
235
+ areaPath: item.adoAreaPath
236
+ };
237
+ }
238
+ // GitHub or default
239
+ else {
240
+ if (item.sourceRepo) {
241
+ const parts = item.sourceRepo.split('/');
242
+ const rawRepoName = parts.length > 1 ? parts[1] : item.sourceRepo;
243
+ projectId = normalize(rawRepoName) || '_default';
244
+ }
245
+ else {
246
+ projectId = '_default';
247
+ }
248
+ groupKey = `gh:${projectId}`;
249
+ }
250
+ if (!groups.has(groupKey)) {
251
+ groups.set(groupKey, {
252
+ containerId: containerId || projectId,
253
+ containerType,
254
+ projectId,
255
+ items: [],
256
+ externalContainer
257
+ });
258
+ }
259
+ groups.get(groupKey).items.push(item);
260
+ }
261
+ return Array.from(groups.values());
262
+ }
263
+ // Run worker
264
+ main().catch((error) => {
265
+ console.error('Fatal worker error:', error);
266
+ process.exit(1);
267
+ });
268
+ //# sourceMappingURL=import-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-worker.js","sourceRoot":"","sources":["../../../../src/cli/workers/import-worker.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,15 @@
5
5
  * - Repository cloning (multi-repo setup)
6
6
  * - Issue import (10K+ items from GitHub/JIRA/ADO)
7
7
  * - External sync operations
8
+ *
9
+ * ASYNC ARCHITECTURE (2025-12-01):
10
+ * - Jobs spawn as detached processes that survive terminal close
11
+ * - Progress tracked via filesystem (.specweave/state/jobs/)
12
+ * - Check status: /specweave:jobs
13
+ * - Resume: /specweave:jobs --resume <jobId>
14
+ * - Kill: /specweave:jobs --kill <jobId>
8
15
  */
9
16
  export * from './types.js';
10
17
  export * from './job-manager.js';
18
+ export * from './job-launcher.js';
11
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/background/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/background/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC"}
@@ -5,7 +5,15 @@
5
5
  * - Repository cloning (multi-repo setup)
6
6
  * - Issue import (10K+ items from GitHub/JIRA/ADO)
7
7
  * - External sync operations
8
+ *
9
+ * ASYNC ARCHITECTURE (2025-12-01):
10
+ * - Jobs spawn as detached processes that survive terminal close
11
+ * - Progress tracked via filesystem (.specweave/state/jobs/)
12
+ * - Check status: /specweave:jobs
13
+ * - Resume: /specweave:jobs --resume <jobId>
14
+ * - Kill: /specweave:jobs --kill <jobId>
8
15
  */
9
16
  export * from './types.js';
10
17
  export * from './job-manager.js';
18
+ export * from './job-launcher.js';
11
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/background/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/background/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Background Job Launcher
3
+ *
4
+ * Spawns import workers as detached processes that survive terminal close.
5
+ * Progress tracked via file system - check with /specweave:jobs
6
+ */
7
+ import type { BackgroundJob, JobType } from './types.js';
8
+ export interface LaunchOptions {
9
+ /** Job type */
10
+ type: JobType;
11
+ /** Project path */
12
+ projectPath: string;
13
+ /** Coordinator config for import */
14
+ coordinatorConfig: any;
15
+ /** Estimated total items (can be updated by worker) */
16
+ estimatedTotal?: number;
17
+ /** Run in foreground (blocking) instead of background */
18
+ foreground?: boolean;
19
+ }
20
+ export interface LaunchResult {
21
+ job: BackgroundJob;
22
+ /** PID of background process (undefined if foreground) */
23
+ pid?: number;
24
+ /** Whether running in background */
25
+ isBackground: boolean;
26
+ }
27
+ /**
28
+ * Launch an import job
29
+ *
30
+ * @param options Launch configuration
31
+ * @returns Job info and process details
32
+ */
33
+ export declare function launchImportJob(options: LaunchOptions): Promise<LaunchResult>;
34
+ /**
35
+ * Check if a background job is still running
36
+ */
37
+ export declare function isJobRunning(projectPath: string, jobId: string): boolean;
38
+ /**
39
+ * Kill a background job
40
+ */
41
+ export declare function killJob(projectPath: string, jobId: string): boolean;
42
+ /**
43
+ * Get worker log output
44
+ */
45
+ export declare function getJobLog(projectPath: string, jobId: string, tailLines?: number): string;
46
+ /**
47
+ * Get job result (after completion)
48
+ */
49
+ export declare function getJobResult(projectPath: string, jobId: string): any | null;
50
+ /**
51
+ * Clean up old job directories
52
+ */
53
+ export declare function cleanupOldJobs(projectPath: string, keepDays?: number): void;
54
+ //# sourceMappingURL=job-launcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"job-launcher.d.ts","sourceRoot":"","sources":["../../../../src/core/background/job-launcher.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAmB,MAAM,YAAY,CAAC;AAE1E,MAAM,WAAW,aAAa;IAC5B,eAAe;IACf,IAAI,EAAE,OAAO,CAAC;IACd,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,iBAAiB,EAAE,GAAG,CAAC;IACvB,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yDAAyD;IACzD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,aAAa,CAAC;IACnB,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAiFnF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAiBxE;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAqBnE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAexF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAY3E;AA0BD;;GAEG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,IAAI,CA8B9E"}