diff --git a/assets/css/lcd/subway_status.scss b/assets/css/lcd/subway_status.scss index 9d408c6cc..4922b0516 100644 --- a/assets/css/lcd/subway_status.scss +++ b/assets/css/lcd/subway_status.scss @@ -61,10 +61,6 @@ white-space: nowrap; } -.subway-status__pill-container { - min-width: 136px; -} - .subway-status__text-container { display: flex; gap: 16px; diff --git a/assets/src/components/subway_status/subway_status_common.tsx b/assets/src/components/subway_status/subway_status_common.tsx index 4b986554d..4f2a34c30 100644 --- a/assets/src/components/subway_status/subway_status_common.tsx +++ b/assets/src/components/subway_status/subway_status_common.tsx @@ -163,30 +163,18 @@ export const useSubwayStatusTextResizer = (alert: Alert, type: SectionType) => { : [FittingStep.FullSize, FittingStep.Abbrev]; const { ref, step: fittingStep } = useAutoSize(steps, id); - const isStopsSkipped = /Stops? Skipped/.test(alert.status); - const isSuspension = firstWord(alert.status) === "Suspension"; const isDelays = firstWord(alert.status) === "Delays"; - const location = (() => { - if ( - fittingStep === FittingStep.PerAlertEffect && - (isStopsSkipped || isSuspension) - ) { - return "mbta.com/alerts"; - } else if (isAlertLocationMap(alert.location)) { - return fittingStep === FittingStep.Abbrev || - fittingStep === FittingStep.PerAlertEffect - ? alert.location.abbrev - : alert.location.full; + let location = getAlertLocationString(alert.location, fittingStep); + let status = alert.status; + + if (fittingStep === FittingStep.PerAlertEffect) { + if (isDelays) { + status = "Delays"; } else { - return alert.location; + location = "mbta.com/alerts"; } - })(); - - const status = - fittingStep === FittingStep.PerAlertEffect && isDelays - ? "Delays" - : alert.status; + } return { ref, location, status }; }; @@ -201,3 +189,16 @@ export const isAllNormalService = (data: SubwayStatusData): boolean => { route_section.alerts.every((alert) => alert.status === NORMAL_STATUS), ); }; + +const getAlertLocationString = ( + location: AlertLocation, + fittingStep: FittingStep, +) => { + if (isAlertLocationMap(location)) { + return fittingStep === FittingStep.FullSize + ? location.full + : location.abbrev; + } else { + return location; + } +};