Filter stale campaign bonds

This commit is contained in:
2026-07-05 09:55:07 +09:00
parent 6fa502432e
commit fa78f82ce2
2 changed files with 31 additions and 1 deletions

View File

@@ -813,6 +813,9 @@ function normalizeCampaignState(state: Partial<CampaignState>): CampaignState {
normalized.inventory = normalizeInventory(normalized.inventory);
const rosterUnitIds = normalizedRosterUnitIds(normalized.roster);
const sortieUnitFilter = rosterUnitIds.size > 0 ? rosterUnitIds : undefined;
if (sortieUnitFilter) {
normalized.bonds = normalized.bonds.filter((bond) => bond.unitIds.every((unitId) => sortieUnitFilter.has(unitId)));
}
normalized.selectedSortieUnitIds = uniqueStrings(normalized.selectedSortieUnitIds)
.filter((unitId) => !sortieUnitFilter || sortieUnitFilter.has(unitId));
normalized.sortieFormationAssignments = normalizeSortieFormationAssignments(recordOrEmpty(normalized.sortieFormationAssignments), sortieUnitFilter);