import type { DateTimeFormatOptions } from 'luxon';
import React from 'react';
import { Tooltip } from '../../presentation';
import { useQuietPeriod } from './useQuietPeriod.hook';
const locale = 'en-US';
const dateOptions: DateTimeFormatOptions = {
weekday: 'short',
year: 'numeric',
month: 'short',
day: 'numeric',
hour: '2-digit',
minute: '2-digit',
};
export function QuietPeriodBadge() {
const quietPeriod = useQuietPeriod();
if (quietPeriod.currentStatus === 'NO_QUIET_PERIOD' || quietPeriod.currentStatus === 'UNKNOWN') {
return null;
}
const start = new Date(quietPeriod.startTime);
const end = new Date(quietPeriod.endTime);
const message =
quietPeriod.currentStatus === 'DURING_QUIET_PERIOD'
? 'This pipeline will not be automatically triggered until the end of the quiet period. '
: 'This pipeline will not be automatically triggered during the quiet period. ';
const template = (
{message}
{`(${start.toLocaleString(locale, dateOptions)} - ${end.toLocaleString(locale, dateOptions)})`}
);
return (
);
}