1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-10-27 11:02:16 +01:00

fix: show draft badges for milestone progression changes (#10851)

This commit is contained in:
Fredrik Strand Oseberg 2025-10-23 13:19:48 +02:00 committed by GitHub
parent c5ac1ef81f
commit 32a950763b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 21 additions and 14 deletions

View File

@ -51,9 +51,14 @@ const MilestoneListRendererCore = ({
const hasPendingDelete = milestonesWithDeletedAutomation.has(
milestone.id,
);
const hasPendingModification = milestonesWithAutomation.has(
milestone.id,
);
const badge = hasPendingDelete ? (
<Badge color='error'>Deleted in draft</Badge>
) : hasPendingModification ? (
<Badge color='warning'>Modified in draft</Badge>
) : undefined;
const automationSection =

View File

@ -17,6 +17,10 @@ import { useChangeRequestsEnabled } from 'hooks/useChangeRequestsEnabled';
import { useChangeRequestApi } from 'hooks/api/actions/useChangeRequestApi/useChangeRequestApi';
import { usePendingChangeRequests } from 'hooks/api/getters/usePendingChangeRequests/usePendingChangeRequests';
import { ReleasePlanChangeRequestDialog } from './ChangeRequest/ReleasePlanChangeRequestDialog.tsx';
import type {
IChangeRequestChangeMilestoneProgression,
IChangeRequestDeleteMilestoneProgression,
} from 'component/changeRequest/changeRequest.types';
import { usePlausibleTracker } from 'hooks/usePlausibleTracker';
import { Truncator } from 'component/common/Truncator/Truncator';
import { useUiFlag } from 'hooks/useUiFlag';
@ -134,19 +138,17 @@ export const ReleasePlan = ({
);
if (!featureInChangeRequest) continue;
// Look for update or delete progression changes
// Look for change or delete progression changes
const progressionChange = featureInChangeRequest.changes.find(
(change: any) =>
(change.action === 'updateMilestoneProgression' &&
(change.payload.sourceMilestoneId ===
sourceMilestoneId ||
change.payload.sourceMilestone ===
sourceMilestoneId)) ||
(
change,
): change is
| IChangeRequestChangeMilestoneProgression
| IChangeRequestDeleteMilestoneProgression =>
(change.action === 'changeMilestoneProgression' &&
change.payload.sourceMilestone === sourceMilestoneId) ||
(change.action === 'deleteMilestoneProgression' &&
(change.payload.sourceMilestoneId ===
sourceMilestoneId ||
change.payload.sourceMilestone ===
sourceMilestoneId)),
change.payload.sourceMilestone === sourceMilestoneId),
);
if (progressionChange) {

View File

@ -84,14 +84,14 @@ export const MilestoneAutomation = ({
const hasPendingCreate =
pendingProgressionChange?.action === 'createMilestoneProgression';
const hasPendingUpdate =
pendingProgressionChange?.action === 'updateMilestoneProgression';
const hasPendingChange =
pendingProgressionChange?.action === 'changeMilestoneProgression';
const hasPendingDelete =
pendingProgressionChange?.action === 'deleteMilestoneProgression';
const badge = hasPendingDelete ? (
<Badge color='error'>Deleted in draft</Badge>
) : hasPendingUpdate ? (
) : hasPendingChange ? (
<Badge color='warning'>Modified in draft</Badge>
) : undefined;