Gestion issue epic dans milestone

This commit is contained in:
2026-05-28 06:11:33 +02:00
parent e20a009882
commit 05bb1b58d9
10 changed files with 1024 additions and 21 deletions
@@ -61,14 +61,29 @@ export class MilestoneDetail {
return this.issues().filter((i) => this.milestone.issueIds.includes(i.id));
}
protected get displayedIssues(): IssueEntity[] {
const epicNamesInMilestone = new Set(
this.linkedIssues.filter((i) => i.type === 'Epic').map((i) => i.name),
);
return this.linkedIssues.filter((i) => !epicNamesInMilestone.has(i.epic));
}
protected get availableIssues(): IssueEntity[] {
const assignedElsewhere = new Set(
this.milestonesStore.milestones()
.filter((m) => m.id !== this.milestone.id)
.flatMap((m) => m.issueIds),
);
const epicNamesInMilestone = new Set(
this.issues()
.filter((i) => i.type === 'Epic' && this.milestone.issueIds.includes(i.id))
.map((i) => i.name),
);
return this.issues().filter(
(i) => !this.milestone.issueIds.includes(i.id) && !assignedElsewhere.has(i.id),
(i) =>
!this.milestone.issueIds.includes(i.id) &&
!assignedElsewhere.has(i.id) &&
!epicNamesInMilestone.has(i.epic),
);
}