specweave 0.28.17 → 0.28.19

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 (137) hide show
  1. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +94 -0
  2. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +1 -0
  3. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +219 -0
  4. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +1 -0
  5. package/dist/plugins/specweave-github/lib/github-feature-sync.d.ts +6 -11
  6. package/dist/plugins/specweave-github/lib/github-feature-sync.d.ts.map +1 -1
  7. package/dist/plugins/specweave-github/lib/github-feature-sync.js +6 -11
  8. package/dist/plugins/specweave-github/lib/github-feature-sync.js.map +1 -1
  9. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.d.ts +19 -0
  10. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.d.ts.map +1 -0
  11. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.js +380 -0
  12. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.js.map +1 -0
  13. package/dist/plugins/specweave-github/lib/increment-issue-builder.d.ts +92 -0
  14. package/dist/plugins/specweave-github/lib/increment-issue-builder.d.ts.map +1 -0
  15. package/dist/plugins/specweave-github/lib/increment-issue-builder.js +349 -0
  16. package/dist/plugins/specweave-github/lib/increment-issue-builder.js.map +1 -0
  17. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +50 -0
  18. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +1 -0
  19. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +84 -0
  20. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +1 -0
  21. package/dist/src/cli/commands/import-external.d.ts.map +1 -1
  22. package/dist/src/cli/commands/import-external.js +12 -7
  23. package/dist/src/cli/commands/import-external.js.map +1 -1
  24. package/dist/src/cli/helpers/init/external-import.d.ts.map +1 -1
  25. package/dist/src/cli/helpers/init/external-import.js +122 -17
  26. package/dist/src/cli/helpers/init/external-import.js.map +1 -1
  27. package/dist/src/cli/helpers/issue-tracker/ado-area-selection.d.ts +65 -0
  28. package/dist/src/cli/helpers/issue-tracker/ado-area-selection.d.ts.map +1 -0
  29. package/dist/src/cli/helpers/issue-tracker/ado-area-selection.js +278 -0
  30. package/dist/src/cli/helpers/issue-tracker/ado-area-selection.js.map +1 -0
  31. package/dist/src/cli/helpers/issue-tracker/jira-board-selection.d.ts +64 -0
  32. package/dist/src/cli/helpers/issue-tracker/jira-board-selection.d.ts.map +1 -0
  33. package/dist/src/cli/helpers/issue-tracker/jira-board-selection.js +251 -0
  34. package/dist/src/cli/helpers/issue-tracker/jira-board-selection.js.map +1 -0
  35. package/dist/src/core/ac-test-validator-cli.js +4 -1
  36. package/dist/src/core/ac-test-validator-cli.js.map +1 -1
  37. package/dist/src/core/ac-test-validator.d.ts.map +1 -1
  38. package/dist/src/core/ac-test-validator.js +4 -1
  39. package/dist/src/core/ac-test-validator.js.map +1 -1
  40. package/dist/src/core/types/increment-metadata.d.ts +75 -0
  41. package/dist/src/core/types/increment-metadata.d.ts.map +1 -1
  42. package/dist/src/core/types/sync-profile.d.ts +137 -5
  43. package/dist/src/core/types/sync-profile.d.ts.map +1 -1
  44. package/dist/src/core/types/sync-profile.js +63 -0
  45. package/dist/src/core/types/sync-profile.js.map +1 -1
  46. package/dist/src/importers/external-importer.d.ts +25 -0
  47. package/dist/src/importers/external-importer.d.ts.map +1 -1
  48. package/dist/src/importers/github-importer.d.ts.map +1 -1
  49. package/dist/src/importers/github-importer.js +5 -3
  50. package/dist/src/importers/github-importer.js.map +1 -1
  51. package/dist/src/importers/item-converter.d.ts +51 -0
  52. package/dist/src/importers/item-converter.d.ts.map +1 -1
  53. package/dist/src/importers/item-converter.js +39 -12
  54. package/dist/src/importers/item-converter.js.map +1 -1
  55. package/dist/src/init/repo/types.d.ts +1 -1
  56. package/dist/src/living-docs/fs-id-allocator.d.ts +72 -3
  57. package/dist/src/living-docs/fs-id-allocator.d.ts.map +1 -1
  58. package/dist/src/living-docs/fs-id-allocator.js +142 -16
  59. package/dist/src/living-docs/fs-id-allocator.js.map +1 -1
  60. package/dist/src/locales/de/cli.json +14 -0
  61. package/dist/src/locales/es/cli.json +14 -0
  62. package/dist/src/locales/fr/cli.json +14 -0
  63. package/dist/src/locales/ja/cli.json +14 -0
  64. package/dist/src/locales/ko/cli.json +14 -0
  65. package/dist/src/locales/pt/cli.json +14 -0
  66. package/dist/src/locales/ru/cli.json +14 -0
  67. package/dist/src/locales/zh/cli.json +14 -0
  68. package/dist/src/utils/chalk-fallback.d.ts +38 -0
  69. package/dist/src/utils/chalk-fallback.d.ts.map +1 -0
  70. package/dist/src/utils/chalk-fallback.js +118 -0
  71. package/dist/src/utils/chalk-fallback.js.map +1 -0
  72. package/dist/src/utils/project-id-generator.d.ts +127 -0
  73. package/dist/src/utils/project-id-generator.d.ts.map +1 -0
  74. package/dist/src/utils/project-id-generator.js +228 -0
  75. package/dist/src/utils/project-id-generator.js.map +1 -0
  76. package/package.json +1 -1
  77. package/plugins/specweave/agents/pm/AGENT.md +202 -0
  78. package/plugins/specweave/commands/specweave-import-external.md +5 -3
  79. package/plugins/specweave/commands/specweave-sync-docs.md +6 -2
  80. package/plugins/specweave/hooks/pre-task-completion.sh +35 -17
  81. package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.d.ts +16 -0
  82. package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.js +121 -0
  83. package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.js.map +1 -0
  84. package/plugins/specweave/lib/vendor/core/ac-test-validator.d.ts +111 -0
  85. package/plugins/specweave/lib/vendor/core/ac-test-validator.js +295 -0
  86. package/plugins/specweave/lib/vendor/core/ac-test-validator.js.map +1 -0
  87. package/plugins/specweave/lib/vendor/core/types/increment-metadata.d.ts +75 -0
  88. package/plugins/specweave/lib/vendor/utils/chalk-fallback.d.ts +38 -0
  89. package/plugins/specweave/lib/vendor/utils/chalk-fallback.js +118 -0
  90. package/plugins/specweave/lib/vendor/utils/chalk-fallback.js.map +1 -0
  91. package/plugins/specweave/lib/vendor/utils/fs-native.d.ts +179 -0
  92. package/plugins/specweave/lib/vendor/utils/fs-native.js +319 -0
  93. package/plugins/specweave/lib/vendor/utils/fs-native.js.map +1 -0
  94. package/plugins/specweave/skills/code-reviewer/SKILL.md +1 -1
  95. package/plugins/specweave/skills/docs-updater/SKILL.md +61 -0
  96. package/plugins/specweave/skills/increment-planner/SKILL.md +10 -335
  97. package/plugins/specweave/skills/increment-planner/templates/metadata.json +13 -0
  98. package/plugins/specweave/skills/increment-planner/templates/plan.md +50 -0
  99. package/plugins/specweave/skills/increment-planner/templates/spec-multi-project.md +86 -0
  100. package/plugins/specweave/skills/increment-planner/templates/spec-single-project.md +50 -0
  101. package/plugins/specweave/skills/increment-planner/templates/tasks-multi-project.md +86 -0
  102. package/plugins/specweave/skills/increment-planner/templates/tasks-single-project.md +48 -0
  103. package/plugins/specweave-ado/commands/specweave-ado-import-areas.md +358 -0
  104. package/plugins/specweave-alternatives/skills/architecture-alternatives/SKILL.md +1 -0
  105. package/plugins/specweave-alternatives/skills/bmad-method/SKILL.md +1 -0
  106. package/plugins/specweave-core/skills/code-quality/SKILL.md +1 -0
  107. package/plugins/specweave-core/skills/design-patterns/SKILL.md +1 -0
  108. package/plugins/specweave-core/skills/software-architecture/SKILL.md +1 -0
  109. package/plugins/specweave-github/commands/specweave-github-cleanup-duplicates.md +14 -10
  110. package/plugins/specweave-github/commands/specweave-github-sync.md +57 -0
  111. package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +68 -0
  112. package/plugins/specweave-github/lib/github-feature-sync.ts +6 -11
  113. package/plugins/specweave-github/lib/github-increment-sync-cli.js +343 -0
  114. package/plugins/specweave-github/lib/github-increment-sync-cli.ts +484 -0
  115. package/plugins/specweave-github/lib/increment-issue-builder.js +368 -0
  116. package/plugins/specweave-github/lib/increment-issue-builder.ts +471 -0
  117. package/plugins/specweave-github/skills/github-issue-standard/SKILL.md +19 -24
  118. package/plugins/specweave-infrastructure/agents/observability-engineer/AGENT.md +15 -23
  119. package/plugins/specweave-jira/commands/specweave-jira-import-boards.md +331 -0
  120. package/plugins/specweave-ml/agents/data-scientist/AGENT.md +16 -20
  121. package/plugins/specweave-ml/agents/ml-engineer/AGENT.md +18 -19
  122. package/plugins/specweave-ml/skills/{ml-pipeline-workflow → mlops-dag-builder}/SKILL.md +18 -14
  123. package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +102 -0
  124. package/plugins/specweave-ui/skills/browser-automation/SKILL.md +1 -1
  125. package/plugins/specweave-ui/skills/ui-testing/SKILL.md +10 -122
  126. package/dist/plugins/specweave-github/lib/epic-content-builder.d.ts +0 -70
  127. package/dist/plugins/specweave-github/lib/epic-content-builder.d.ts.map +0 -1
  128. package/dist/plugins/specweave-github/lib/epic-content-builder.js +0 -258
  129. package/dist/plugins/specweave-github/lib/epic-content-builder.js.map +0 -1
  130. package/dist/plugins/specweave-github/lib/github-epic-sync.d.ts +0 -83
  131. package/dist/plugins/specweave-github/lib/github-epic-sync.d.ts.map +0 -1
  132. package/dist/plugins/specweave-github/lib/github-epic-sync.js +0 -466
  133. package/dist/plugins/specweave-github/lib/github-epic-sync.js.map +0 -1
  134. package/plugins/specweave-github/lib/epic-content-builder.js +0 -265
  135. package/plugins/specweave-github/lib/epic-content-builder.ts +0 -376
  136. package/plugins/specweave-github/lib/github-epic-sync.js +0 -488
  137. package/plugins/specweave-github/lib/github-epic-sync.ts +0 -715
@@ -534,28 +534,40 @@ async function convertToLivingDocs(targetDir, result, spinner) {
534
534
  let archivedCount = 0;
535
535
  let totalConverted = 0;
536
536
  const allConvertedStories = [];
537
- // Group items by sourceRepo for proper multi-repo folder allocation
538
- const itemsByRepo = groupItemsBySourceRepo(result.allItems);
539
- const repoCount = itemsByRepo.size;
540
- for (const [repoKey, items] of itemsByRepo.entries()) {
541
- // Determine project ID:
542
- // - For multi-repo: use repo name (e.g., "sw-thumbnail-ab-be")
543
- // - For single-repo/no sourceRepo: null (items go directly to specs/)
544
- const projectId = repoKey === '_default' ? null : repoKey;
545
- spinner.text = projectId
546
- ? `Converting items from ${projectId}...`
547
- : 'Converting items to living docs...';
537
+ // Group items by external container (JIRA project/board, ADO project/area, or GitHub repo)
538
+ // This supports:
539
+ // - 2-level structure for JIRA: specs/JIRA-{projectKey}/{boardName}/FS-XXX/
540
+ // - 2-level structure for ADO: specs/ADO-{projectName}/{areaPath}/FS-XXX/
541
+ // - 1-level structure for GitHub: specs/{repoName}/FS-XXX/
542
+ const containerGroups = groupItemsByExternalContainer(result.allItems);
543
+ const groupCount = containerGroups.length;
544
+ // Enable global collision detection when multiple groups exist (umbrella mode)
545
+ const isUmbrellaMode = groupCount > 1;
546
+ // Track which container types we're using for logging
547
+ const containerTypesUsed = new Set(containerGroups.map(g => g.containerType || 'github'));
548
+ for (const group of containerGroups) {
549
+ const { projectId, items, externalContainer, containerType, containerId } = group;
550
+ // Build display label for spinner
551
+ const displayLabel = containerType
552
+ ? `${containerType.toUpperCase()}-${containerId}/${projectId}`
553
+ : projectId;
554
+ spinner.text = `Converting items from ${displayLabel}...`;
548
555
  // Create converter for this project/repo
556
+ // Pass externalContainer for 2-level directory structure (JIRA/ADO)
549
557
  const converter = new ItemConverter({
550
558
  specsDir,
551
559
  projectRoot: targetDir,
552
560
  enableFeatureAllocation: true,
553
- // For multi-repo: use repo name as project folder
554
- // For single-repo: undefined means direct to specs/ (no project subfolder)
555
- projectId: projectId || undefined,
561
+ projectId: projectId,
562
+ // CRITICAL: Enable global collision detection in umbrella mode
563
+ enableGlobalCollisionDetection: isUmbrellaMode,
556
564
  autoArchiveAfterDays: 30,
565
+ // NEW: Pass external container for 2-level directory structure
566
+ externalContainer: externalContainer,
557
567
  onFeatureCreated: (featureId, featurePath) => {
558
- const label = projectId ? `${projectId}/${featureId}` : featureId;
568
+ const label = externalContainer
569
+ ? `${containerType?.toUpperCase()}-${containerId}/${projectId}/${featureId}`
570
+ : `${projectId}/${featureId}`;
559
571
  spinner.text = `Created feature folder: ${label}`;
560
572
  },
561
573
  onItemArchived: (usId, reason) => {
@@ -571,8 +583,25 @@ async function convertToLivingDocs(targetDir, result, spinner) {
571
583
  const uniqueFeatures = new Set(allConvertedStories.map(s => s.featureId).filter(Boolean));
572
584
  spinner.succeed(`Converted ${totalConverted} User Stories to living docs`);
573
585
  console.log(chalk.gray(' → Living docs created with E suffix (US-001E, US-002E, ...)'));
574
- if (repoCount > 1) {
575
- console.log(chalk.gray(` → Organized into ${repoCount} project folders`));
586
+ // Log directory structure info
587
+ if (containerTypesUsed.has('jira') || containerTypesUsed.has('ado')) {
588
+ console.log(chalk.gray(` → Using 2-level directory structure for JIRA/ADO`));
589
+ if (containerTypesUsed.has('jira')) {
590
+ console.log(chalk.gray(` → JIRA: specs/JIRA-{project}/{board}/FS-XXX/`));
591
+ }
592
+ if (containerTypesUsed.has('ado')) {
593
+ console.log(chalk.gray(` → ADO: specs/ADO-{project}/{areaPath}/FS-XXX/`));
594
+ }
595
+ }
596
+ if (containerTypesUsed.has('github') || containerTypesUsed.has(null)) {
597
+ console.log(chalk.gray(` → GitHub: specs/{repo}/FS-XXX/ (1-level)`));
598
+ }
599
+ if (groupCount > 1) {
600
+ console.log(chalk.gray(` → Organized into ${groupCount} project folders`));
601
+ console.log(chalk.gray(` → Global collision detection enabled (umbrella mode)`));
602
+ }
603
+ else {
604
+ console.log(chalk.gray(` → Organized into single project folder`));
576
605
  }
577
606
  if (uniqueFeatures.size > 0) {
578
607
  console.log(chalk.gray(` → Organized into ${uniqueFeatures.size} feature folder(s)`));
@@ -634,6 +663,82 @@ function groupItemsBySourceRepo(items) {
634
663
  }
635
664
  return groups;
636
665
  }
666
+ function groupItemsByExternalContainer(items) {
667
+ const groups = new Map();
668
+ for (const item of items) {
669
+ let groupKey;
670
+ let containerType = null;
671
+ let containerId;
672
+ let projectId;
673
+ let externalContainer;
674
+ // Check for JIRA container context
675
+ if (item.jiraProjectKey) {
676
+ containerType = 'jira';
677
+ containerId = item.jiraProjectKey;
678
+ // Project ID from board name (if available) or default
679
+ projectId = item.jiraBoardName
680
+ ? item.jiraBoardName.toLowerCase().replace(/[^a-z0-9]/g, '-').replace(/^-+|-+$/g, '').slice(0, 50) || 'default'
681
+ : 'default';
682
+ groupKey = `jira:${containerId}:${projectId}`;
683
+ externalContainer = {
684
+ type: 'jira-project',
685
+ containerId: containerId,
686
+ containerName: containerId,
687
+ boardId: item.jiraBoardId,
688
+ boardName: item.jiraBoardName
689
+ };
690
+ }
691
+ // Check for ADO container context
692
+ else if (item.adoProjectName) {
693
+ containerType = 'ado';
694
+ containerId = item.adoProjectName;
695
+ // Project ID from area path (extract last segment) or default
696
+ if (item.adoAreaPath) {
697
+ const areaSegments = item.adoAreaPath.split('\\');
698
+ const lastSegment = areaSegments[areaSegments.length - 1];
699
+ projectId = lastSegment.toLowerCase().replace(/[^a-z0-9]/g, '-').replace(/^-+|-+$/g, '').slice(0, 50) || 'default';
700
+ }
701
+ else {
702
+ projectId = 'default';
703
+ }
704
+ groupKey = `ado:${containerId}:${projectId}`;
705
+ externalContainer = {
706
+ type: 'ado-project',
707
+ containerId: containerId,
708
+ containerName: containerId,
709
+ areaPath: item.adoAreaPath
710
+ };
711
+ }
712
+ // GitHub or default (1-level structure)
713
+ else {
714
+ // Use sourceRepo if available, otherwise '_default'
715
+ if (item.sourceRepo) {
716
+ const parts = item.sourceRepo.split('/');
717
+ const rawRepoName = parts.length > 1 ? parts[1] : item.sourceRepo;
718
+ projectId = rawRepoName
719
+ .replace(/[^a-zA-Z0-9-_]/g, '-')
720
+ .replace(/^-+|-+$/g, '')
721
+ .slice(0, 100) || 'parent';
722
+ }
723
+ else {
724
+ projectId = 'parent';
725
+ }
726
+ groupKey = `gh:${projectId}`;
727
+ // No externalContainer for GitHub (1-level structure)
728
+ }
729
+ if (!groups.has(groupKey)) {
730
+ groups.set(groupKey, {
731
+ containerId: containerId || projectId,
732
+ containerType,
733
+ projectId,
734
+ items: [],
735
+ externalContainer
736
+ });
737
+ }
738
+ groups.get(groupKey).items.push(item);
739
+ }
740
+ return Array.from(groups.values());
741
+ }
637
742
  /**
638
743
  * Create empty result object
639
744
  */
@@ -1 +1 @@
1
- {"version":3,"file":"external-import.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/external-import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"external-import.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/external-import.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * ADO Area Path Selection Helper (v0.29.0+)
3
+ *
4
+ * Provides UI prompts for selecting ADO area paths and mapping them to SpecWeave projects.
5
+ * Used during `specweave init` when user selects area path-based team organization.
6
+ *
7
+ * @module cli/helpers/issue-tracker/ado-area-selection
8
+ */
9
+ import type { AdoAreaPathMappingConfig } from '../../../core/types/sync-profile.js';
10
+ /**
11
+ * ADO organization strategy
12
+ */
13
+ export type AdoOrganizationStrategy = 'single-project' | 'area-path-based' | 'team-based' | 'multi-project';
14
+ /**
15
+ * Area path selection result
16
+ */
17
+ export interface AreaPathSelectionResult {
18
+ /** Selected organization strategy */
19
+ strategy: AdoOrganizationStrategy;
20
+ /** Area path mapping config (only for area-path-based strategy) */
21
+ areaPathMapping?: AdoAreaPathMappingConfig;
22
+ /** Selected project names (for multi-project strategy) */
23
+ projectNames?: string[];
24
+ /** Single project name (for single-project strategy) */
25
+ projectName?: string;
26
+ /** Teams (for team-based strategy, maps to area paths) */
27
+ teams?: string[];
28
+ }
29
+ /**
30
+ * Prompt user to select ADO organization strategy
31
+ *
32
+ * @param hasMultipleAreaPaths Whether the project has multiple area paths
33
+ * @returns Selected strategy
34
+ */
35
+ export declare function promptAdoOrganizationStrategy(hasMultipleAreaPaths: boolean): Promise<AdoOrganizationStrategy>;
36
+ /**
37
+ * Fetch and display area paths for an ADO project
38
+ * Prompts user to select area paths and map them to SpecWeave projects
39
+ *
40
+ * @param organization ADO organization name
41
+ * @param project ADO project name
42
+ * @param pat Personal Access Token
43
+ * @param projectRoot Path to SpecWeave project root (for existing project IDs)
44
+ * @returns Area path mapping configuration
45
+ */
46
+ export declare function promptAreaPathSelection(organization: string, project: string, pat: string, projectRoot: string): Promise<AdoAreaPathMappingConfig | null>;
47
+ /**
48
+ * Complete area path selection flow
49
+ * Orchestrates strategy selection and area path mapping
50
+ *
51
+ * @param credentials ADO credentials (partial)
52
+ * @param projectRoot Path to SpecWeave project root
53
+ * @returns Area path selection result
54
+ */
55
+ export declare function completeAreaPathSelectionFlow(credentials: {
56
+ organization: string;
57
+ project: string;
58
+ pat: string;
59
+ teams?: string[];
60
+ }, projectRoot: string): Promise<AreaPathSelectionResult>;
61
+ /**
62
+ * Display summary of area path mapping
63
+ */
64
+ export declare function displayAreaPathMappingSummary(mapping: AdoAreaPathMappingConfig): void;
65
+ //# sourceMappingURL=ado-area-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ado-area-selection.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/issue-tracker/ado-area-selection.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAsB,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAWxG;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAC/B,gBAAgB,GAChB,iBAAiB,GACjB,YAAY,GACZ,eAAe,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,qCAAqC;IACrC,QAAQ,EAAE,uBAAuB,CAAC;IAElC,mEAAmE;IACnE,eAAe,CAAC,EAAE,wBAAwB,CAAC;IAE3C,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAExB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,oBAAoB,EAAE,OAAO,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CA6BlC;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CA2I1C;AAED;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CACjD,WAAW,EAAE;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,EACD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,uBAAuB,CAAC,CAgGlC;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAgBrF"}
@@ -0,0 +1,278 @@
1
+ /**
2
+ * ADO Area Path Selection Helper (v0.29.0+)
3
+ *
4
+ * Provides UI prompts for selecting ADO area paths and mapping them to SpecWeave projects.
5
+ * Used during `specweave init` when user selects area path-based team organization.
6
+ *
7
+ * @module cli/helpers/issue-tracker/ado-area-selection
8
+ */
9
+ import chalk from 'chalk';
10
+ import { select, checkbox, input, confirm } from '@inquirer/prompts';
11
+ import ora from 'ora';
12
+ import { fetchAreaPathsForProject, } from '../../../../plugins/specweave-ado/lib/ado-board-resolver.js';
13
+ import { generateProjectId, getExistingProjectIds, normalizeToProjectId, } from '../../../utils/project-id-generator.js';
14
+ /**
15
+ * Prompt user to select ADO organization strategy
16
+ *
17
+ * @param hasMultipleAreaPaths Whether the project has multiple area paths
18
+ * @returns Selected strategy
19
+ */
20
+ export async function promptAdoOrganizationStrategy(hasMultipleAreaPaths) {
21
+ console.log(chalk.cyan('\n🔷 Azure DevOps Project Organization\n'));
22
+ const defaultStrategy = hasMultipleAreaPaths ? 'area-path-based' : 'single-project';
23
+ const strategy = await select({
24
+ message: 'How do you want to organize work items?',
25
+ choices: [
26
+ {
27
+ name: 'Single project (all work at root level)',
28
+ value: 'single-project',
29
+ description: 'Best for small teams or single-product companies',
30
+ },
31
+ {
32
+ name: 'Area path-based teams (area paths → SpecWeave projects)',
33
+ value: 'area-path-based',
34
+ description: 'Best for enterprise teams using area paths for organization',
35
+ },
36
+ {
37
+ name: 'Team-based organization (teams → SpecWeave projects)',
38
+ value: 'team-based',
39
+ description: 'Best when teams have dedicated areas in ADO',
40
+ },
41
+ ],
42
+ default: defaultStrategy,
43
+ });
44
+ return strategy;
45
+ }
46
+ /**
47
+ * Fetch and display area paths for an ADO project
48
+ * Prompts user to select area paths and map them to SpecWeave projects
49
+ *
50
+ * @param organization ADO organization name
51
+ * @param project ADO project name
52
+ * @param pat Personal Access Token
53
+ * @param projectRoot Path to SpecWeave project root (for existing project IDs)
54
+ * @returns Area path mapping configuration
55
+ */
56
+ export async function promptAreaPathSelection(organization, project, pat, projectRoot) {
57
+ const spinner = ora(`Fetching area paths from project ${project}...`).start();
58
+ try {
59
+ // Fetch available area paths
60
+ const areaPaths = await fetchAreaPathsForProject(organization, project, pat);
61
+ spinner.succeed(`Found ${areaPaths.length} area path(s) in project ${project}`);
62
+ if (areaPaths.length === 0) {
63
+ console.log(chalk.yellow('\n⚠️ No area paths found in this project.'));
64
+ console.log(chalk.gray(' Using root level organization.\n'));
65
+ return null;
66
+ }
67
+ // Filter to show only top-level area paths (direct children of project root)
68
+ // Exclude the root itself
69
+ const topLevelPaths = areaPaths.filter((ap) => {
70
+ // Path format: "ProjectName" (root) or "ProjectName\\ChildArea"
71
+ const parts = ap.path.split('\\');
72
+ return parts.length === 2; // Direct child of root
73
+ });
74
+ if (topLevelPaths.length === 0) {
75
+ console.log(chalk.yellow('\n⚠️ No child area paths found (only root area exists).'));
76
+ console.log(chalk.gray(' You can create area paths in ADO and run this setup again.\n'));
77
+ return null;
78
+ }
79
+ // Show area paths and let user select
80
+ console.log(chalk.cyan('\n📋 Select area paths to map to SpecWeave projects:\n'));
81
+ // Filter out archive/inactive paths by default (uncheck them)
82
+ const isArchivePath = (areaPath) => areaPath.name.toLowerCase().includes('archive') ||
83
+ areaPath.name.toLowerCase().includes('inactive') ||
84
+ areaPath.name.toLowerCase().includes('deprecated') ||
85
+ areaPath.name.toLowerCase().includes('legacy');
86
+ const selectedPaths = await checkbox({
87
+ message: 'Select area paths (Space to toggle, Enter to confirm):',
88
+ choices: topLevelPaths.map((ap) => ({
89
+ name: `${ap.name}${ap.hasChildren ? ' (has sub-areas)' : ''}`,
90
+ value: ap.path,
91
+ checked: !isArchivePath(ap), // Pre-select non-archive paths
92
+ })),
93
+ });
94
+ if (selectedPaths.length === 0) {
95
+ console.log(chalk.yellow('\n⚠️ No area paths selected. Falling back to single-project mode.\n'));
96
+ return null;
97
+ }
98
+ // Get existing project IDs to prevent collisions
99
+ const existingIds = getExistingProjectIds(projectRoot);
100
+ // Map selected area paths to SpecWeave projects
101
+ console.log(chalk.cyan('\n🏷️ Mapping area paths to SpecWeave projects:\n'));
102
+ const areaPathMappings = [];
103
+ for (const pathStr of selectedPaths) {
104
+ const areaPath = areaPaths.find((ap) => ap.path === pathStr);
105
+ if (!areaPath)
106
+ continue;
107
+ // Suggest a project ID based on area path name
108
+ const suggestedId = generateProjectId({
109
+ externalContainer: project,
110
+ localName: areaPath.name,
111
+ provider: 'ado',
112
+ existingIds: [...existingIds, ...areaPathMappings.map((m) => m.specweaveProject)],
113
+ });
114
+ // Allow user to customize the project ID
115
+ const projectId = await input({
116
+ message: `SpecWeave project ID for "${areaPath.name}":`,
117
+ default: suggestedId.id,
118
+ validate: (val) => {
119
+ if (!val || val.trim() === '') {
120
+ return 'Project ID cannot be empty';
121
+ }
122
+ const normalized = normalizeToProjectId(val);
123
+ if (normalized !== val) {
124
+ return `Invalid format. Suggested: "${normalized}"`;
125
+ }
126
+ if (existingIds.includes(val) || areaPathMappings.some((m) => m.specweaveProject === val)) {
127
+ return `Project ID "${val}" already exists. Choose a different name.`;
128
+ }
129
+ return true;
130
+ },
131
+ });
132
+ // Ask about including child area paths
133
+ let includeChildren = true;
134
+ if (areaPath.hasChildren) {
135
+ includeChildren = await confirm({
136
+ message: `Include child area paths under "${areaPath.name}"?`,
137
+ default: true,
138
+ });
139
+ }
140
+ // Optional: Add keywords for auto-classification
141
+ const addKeywords = await confirm({
142
+ message: `Add keywords for auto-classification of user stories to ${projectId}?`,
143
+ default: false,
144
+ });
145
+ let keywords;
146
+ if (addKeywords) {
147
+ const keywordsInput = await input({
148
+ message: 'Keywords (comma-separated, e.g., "backend, api, database"):',
149
+ default: '',
150
+ });
151
+ keywords = keywordsInput
152
+ .split(',')
153
+ .map((k) => k.trim())
154
+ .filter((k) => k.length > 0);
155
+ }
156
+ areaPathMappings.push({
157
+ areaPath: areaPath.path,
158
+ specweaveProject: projectId,
159
+ includeChildren,
160
+ keywords,
161
+ });
162
+ console.log(chalk.green(` ✓ ${areaPath.path} → ${projectId}`));
163
+ }
164
+ console.log('');
165
+ return {
166
+ project,
167
+ mappings: areaPathMappings,
168
+ };
169
+ }
170
+ catch (error) {
171
+ spinner.fail('Failed to fetch area paths');
172
+ console.error(chalk.red(` Error: ${error.message}\n`));
173
+ return null;
174
+ }
175
+ }
176
+ /**
177
+ * Complete area path selection flow
178
+ * Orchestrates strategy selection and area path mapping
179
+ *
180
+ * @param credentials ADO credentials (partial)
181
+ * @param projectRoot Path to SpecWeave project root
182
+ * @returns Area path selection result
183
+ */
184
+ export async function completeAreaPathSelectionFlow(credentials, projectRoot) {
185
+ // Check if there are area paths in the project
186
+ const spinner = ora('Checking project structure...').start();
187
+ try {
188
+ const areaPaths = await fetchAreaPathsForProject(credentials.organization, credentials.project, credentials.pat);
189
+ const hasMultipleAreaPaths = areaPaths.filter((ap) => {
190
+ const parts = ap.path.split('\\');
191
+ return parts.length === 2; // Direct children
192
+ }).length > 0;
193
+ spinner.stop();
194
+ // Ask about organization strategy
195
+ const strategy = await promptAdoOrganizationStrategy(hasMultipleAreaPaths);
196
+ if (strategy === 'single-project') {
197
+ return {
198
+ strategy: 'single-project',
199
+ projectName: credentials.project,
200
+ };
201
+ }
202
+ if (strategy === 'team-based') {
203
+ // Team-based maps to area paths internally
204
+ // Ask user to enter team names if not already provided
205
+ let teams = credentials.teams || [];
206
+ if (teams.length === 0) {
207
+ const teamsInput = await input({
208
+ message: 'Enter team names (comma-separated):',
209
+ default: '',
210
+ });
211
+ teams = teamsInput
212
+ .split(',')
213
+ .map((t) => t.trim())
214
+ .filter((t) => t.length > 0);
215
+ }
216
+ if (teams.length === 0) {
217
+ console.log(chalk.yellow('\n⚠️ No teams specified. Falling back to single-project mode.\n'));
218
+ return {
219
+ strategy: 'single-project',
220
+ projectName: credentials.project,
221
+ };
222
+ }
223
+ return {
224
+ strategy: 'team-based',
225
+ projectName: credentials.project,
226
+ teams,
227
+ };
228
+ }
229
+ if (strategy === 'area-path-based') {
230
+ const areaPathMapping = await promptAreaPathSelection(credentials.organization, credentials.project, credentials.pat, projectRoot);
231
+ if (areaPathMapping && areaPathMapping.mappings.length > 0) {
232
+ return {
233
+ strategy: 'area-path-based',
234
+ areaPathMapping,
235
+ };
236
+ }
237
+ // Fall back to single-project if no area paths selected
238
+ return {
239
+ strategy: 'single-project',
240
+ projectName: credentials.project,
241
+ };
242
+ }
243
+ // multi-project (rare for ADO)
244
+ return {
245
+ strategy: 'single-project',
246
+ projectName: credentials.project,
247
+ };
248
+ }
249
+ catch (error) {
250
+ spinner.stop();
251
+ console.error(chalk.yellow(`\n⚠️ Could not analyze project structure: ${error.message}`));
252
+ console.log(chalk.gray(' Proceeding with single-project mode.\n'));
253
+ return {
254
+ strategy: 'single-project',
255
+ projectName: credentials.project,
256
+ };
257
+ }
258
+ }
259
+ /**
260
+ * Display summary of area path mapping
261
+ */
262
+ export function displayAreaPathMappingSummary(mapping) {
263
+ console.log(chalk.cyan.bold('\n🔷 ADO Area Path Mapping Summary\n'));
264
+ console.log(chalk.gray(` Project: ${mapping.project}`));
265
+ console.log(chalk.gray(` Area paths mapped: ${mapping.mappings.length}\n`));
266
+ for (const area of mapping.mappings) {
267
+ console.log(chalk.green(` ✓ ${area.areaPath}`));
268
+ console.log(chalk.gray(` → SpecWeave project: ${area.specweaveProject}`));
269
+ if (area.includeChildren) {
270
+ console.log(chalk.gray(` → Includes child areas: yes`));
271
+ }
272
+ if (area.keywords && area.keywords.length > 0) {
273
+ console.log(chalk.gray(` → Keywords: ${area.keywords.join(', ')}`));
274
+ }
275
+ }
276
+ console.log('');
277
+ }
278
+ //# sourceMappingURL=ado-area-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ado-area-selection.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/issue-tracker/ado-area-selection.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EACL,wBAAwB,GAEzB,MAAM,6DAA6D,CAAC;AACrE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,wCAAwC,CAAC;AA+BhD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,oBAA6B;IAE7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC,CAAC;IAEpE,MAAM,eAAe,GACnB,oBAAoB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAE9D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAA0B;QACrD,OAAO,EAAE,yCAAyC;QAClD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,yCAAyC;gBAC/C,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EAAE,kDAAkD;aAChE;YACD;gBACE,IAAI,EAAE,yDAAyD;gBAC/D,KAAK,EAAE,iBAAiB;gBACxB,WAAW,EAAE,6DAA6D;aAC3E;YACD;gBACE,IAAI,EAAE,sDAAsD;gBAC5D,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,6CAA6C;aAC3D;SACF;QACD,OAAO,EAAE,eAAe;KACzB,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,YAAoB,EACpB,OAAe,EACf,GAAW,EACX,WAAmB;IAEnB,MAAM,OAAO,GAAG,GAAG,CAAC,oCAAoC,OAAO,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;IAE9E,IAAI,CAAC;QACH,6BAA6B;QAC7B,MAAM,SAAS,GAAG,MAAM,wBAAwB,CAAC,YAAY,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QAC7E,OAAO,CAAC,OAAO,CAAC,SAAS,SAAS,CAAC,MAAM,4BAA4B,OAAO,EAAE,CAAC,CAAC;QAEhF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC,CAAC;YACxE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,6EAA6E;QAC7E,0BAA0B;QAC1B,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;YAC5C,gEAAgE;YAChE,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,uBAAuB;QACpD,CAAC,CAAC,CAAC;QAEH,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,0DAA0D,CAAC,CAAC,CAAC;YACtF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC,CAAC;YAC3F,OAAO,IAAI,CAAC;QACd,CAAC;QAED,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC,CAAC;QAElF,8DAA8D;QAC9D,MAAM,aAAa,GAAG,CAAC,QAAqB,EAAE,EAAE,CAC9C,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;YAChD,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;YAClD,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEjD,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC;YACnC,OAAO,EAAE,wDAAwD;YACjE,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC7D,KAAK,EAAE,EAAE,CAAC,IAAI;gBACd,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,+BAA+B;aAC7D,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sEAAsE,CAAC,CAAC,CAAC;YAClG,OAAO,IAAI,CAAC;QACd,CAAC;QAED,iDAAiD;QACjD,MAAM,WAAW,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAEvD,gDAAgD;QAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC,CAAC;QAE9E,MAAM,gBAAgB,GAAyB,EAAE,CAAC;QAElD,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAC7D,IAAI,CAAC,QAAQ;gBAAE,SAAS;YAExB,+CAA+C;YAC/C,MAAM,WAAW,GAAG,iBAAiB,CAAC;gBACpC,iBAAiB,EAAE,OAAO;gBAC1B,SAAS,EAAE,QAAQ,CAAC,IAAI;gBACxB,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,CAAC,GAAG,WAAW,EAAE,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;aAClF,CAAC,CAAC;YAEH,yCAAyC;YACzC,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC;gBAC5B,OAAO,EAAE,6BAA6B,QAAQ,CAAC,IAAI,IAAI;gBACvD,OAAO,EAAE,WAAW,CAAC,EAAE;gBACvB,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;oBAChB,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;wBAC9B,OAAO,4BAA4B,CAAC;oBACtC,CAAC;oBACD,MAAM,UAAU,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;oBAC7C,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;wBACvB,OAAO,+BAA+B,UAAU,GAAG,CAAC;oBACtD,CAAC;oBACD,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,KAAK,GAAG,CAAC,EAAE,CAAC;wBAC1F,OAAO,eAAe,GAAG,4CAA4C,CAAC;oBACxE,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;aACF,CAAC,CAAC;YAEH,uCAAuC;YACvC,IAAI,eAAe,GAAG,IAAI,CAAC;YAC3B,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACzB,eAAe,GAAG,MAAM,OAAO,CAAC;oBAC9B,OAAO,EAAE,mCAAmC,QAAQ,CAAC,IAAI,IAAI;oBAC7D,OAAO,EAAE,IAAI;iBACd,CAAC,CAAC;YACL,CAAC;YAED,iDAAiD;YACjD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC;gBAChC,OAAO,EAAE,2DAA2D,SAAS,GAAG;gBAChF,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YAEH,IAAI,QAA8B,CAAC;YACnC,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC;oBAChC,OAAO,EAAE,6DAA6D;oBACtE,OAAO,EAAE,EAAE;iBACZ,CAAC,CAAC;gBACH,QAAQ,GAAG,aAAa;qBACrB,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;qBACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjC,CAAC;YAED,gBAAgB,CAAC,IAAI,CAAC;gBACpB,QAAQ,EAAE,QAAQ,CAAC,IAAI;gBACvB,gBAAgB,EAAE,SAAS;gBAC3B,eAAe;gBACf,QAAQ;aACT,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,QAAQ,CAAC,IAAI,MAAM,SAAS,EAAE,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO;YACL,OAAO;YACP,QAAQ,EAAE,gBAAgB;SAC3B,CAAC;IACJ,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC3C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,WAKC,EACD,WAAmB;IAEnB,+CAA+C;IAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,+BAA+B,CAAC,CAAC,KAAK,EAAE,CAAC;IAE7D,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,wBAAwB,CAC9C,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,OAAO,EACnB,WAAW,CAAC,GAAG,CAChB,CAAC;QAEF,MAAM,oBAAoB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;YACnD,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,kBAAkB;QAC/C,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAEd,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,kCAAkC;QAClC,MAAM,QAAQ,GAAG,MAAM,6BAA6B,CAAC,oBAAoB,CAAC,CAAC;QAE3E,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAClC,OAAO;gBACL,QAAQ,EAAE,gBAAgB;gBAC1B,WAAW,EAAE,WAAW,CAAC,OAAO;aACjC,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC9B,2CAA2C;YAC3C,uDAAuD;YACvD,IAAI,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC;YAEpC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC;oBAC7B,OAAO,EAAE,qCAAqC;oBAC9C,OAAO,EAAE,EAAE;iBACZ,CAAC,CAAC;gBACH,KAAK,GAAG,UAAU;qBACf,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;qBACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjC,CAAC;YAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kEAAkE,CAAC,CAAC,CAAC;gBAC9F,OAAO;oBACL,QAAQ,EAAE,gBAAgB;oBAC1B,WAAW,EAAE,WAAW,CAAC,OAAO;iBACjC,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,WAAW,CAAC,OAAO;gBAChC,KAAK;aACN,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,KAAK,iBAAiB,EAAE,CAAC;YACnC,MAAM,eAAe,GAAG,MAAM,uBAAuB,CACnD,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,OAAO,EACnB,WAAW,CAAC,GAAG,EACf,WAAW,CACZ,CAAC;YAEF,IAAI,eAAe,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3D,OAAO;oBACL,QAAQ,EAAE,iBAAiB;oBAC3B,eAAe;iBAChB,CAAC;YACJ,CAAC;YAED,wDAAwD;YACxD,OAAO;gBACL,QAAQ,EAAE,gBAAgB;gBAC1B,WAAW,EAAE,WAAW,CAAC,OAAO;aACjC,CAAC;QACJ,CAAC;QAED,+BAA+B;QAC/B,OAAO;YACL,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,WAAW,CAAC,OAAO;SACjC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,8CAA8C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,CAAC;QAErE,OAAO;YACL,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,WAAW,CAAC,OAAO;SACjC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAAC,OAAiC;IAC7E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAE9E,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAC9E,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC"}