utils.tsx 533 B

12345678910111213141516171819
  1. import {type MonitorEnvironment, MonitorStatus} from 'sentry/views/monitors/types';
  2. const MONITOR_STATUS_PRECEDENT = [
  3. MonitorStatus.ERROR,
  4. MonitorStatus.OK,
  5. MonitorStatus.ACTIVE,
  6. MonitorStatus.DISABLED,
  7. ];
  8. /**
  9. * Get the aggregate MonitorStatus of a set of monitor environments.
  10. */
  11. export function getAggregateEnvStatus(environments: MonitorEnvironment[]): MonitorStatus {
  12. const status = MONITOR_STATUS_PRECEDENT.find(s =>
  13. environments.some(env => env.status === s)
  14. );
  15. return status ?? MonitorStatus.ACTIVE;
  16. }