feat: optimize routing and operations views
This commit is contained in:
@@ -290,14 +290,22 @@ function SignatureQualityDrawer({
|
||||
item: SignatureChannelQualityItem;
|
||||
onClose: () => void;
|
||||
}) {
|
||||
const carriers = item.carrierOverview.map((carrier) => ({
|
||||
...carrier,
|
||||
channelCount: new Set(
|
||||
item.breakdowns
|
||||
.filter((entry) => normalizeCarrier(entry.carrier) === normalizeCarrier(carrier.carrier))
|
||||
.map((entry) => entry.channelId),
|
||||
).size,
|
||||
}));
|
||||
const carriers = item.carrierOverview
|
||||
.map((carrier) => ({
|
||||
...carrier,
|
||||
channelCount: new Set(
|
||||
item.breakdowns
|
||||
.filter((entry) => normalizeCarrier(entry.carrier) === normalizeCarrier(carrier.carrier))
|
||||
.map((entry) => entry.channelId),
|
||||
).size,
|
||||
}))
|
||||
// Database aggregation order is not a display contract; keep the three major carriers stable.
|
||||
.sort((left, right) => {
|
||||
const leftRank = carrierOrder.indexOf(normalizeCarrier(left.carrier));
|
||||
const rightRank = carrierOrder.indexOf(normalizeCarrier(right.carrier));
|
||||
return (leftRank < 0 ? carrierOrder.length : leftRank)
|
||||
- (rightRank < 0 ? carrierOrder.length : rightRank);
|
||||
});
|
||||
const channels = [...new Map(item.breakdowns.map((entry) => [entry.channelId, entry.channelName])).entries()]
|
||||
.map(([channelId, channelName]) => ({ channelId, channelName }));
|
||||
const visibleCarriers = carrierOrder.filter((carrier) => item.breakdowns.some((entry) => normalizeCarrier(entry.carrier) === carrier));
|
||||
|
||||
Reference in New Issue
Block a user