signal-desktop/ts/components/conversation/UniversalTimerNotification.tsx

34 lines
807 B
TypeScript
Raw Normal View History

2021-06-01 20:45:43 +00:00
// Copyright 2021 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import React from 'react';
import { SystemMessage } from './SystemMessage';
import type { LocalizerType } from '../../types/Util';
2021-06-01 20:45:43 +00:00
import * as expirationTimer from '../../util/expirationTimer';
2022-11-16 20:18:02 +00:00
import type { DurationInSeconds } from '../../util/durations';
2021-06-01 20:45:43 +00:00
export type Props = {
i18n: LocalizerType;
2022-11-16 20:18:02 +00:00
expireTimer: DurationInSeconds;
2021-06-01 20:45:43 +00:00
};
2022-11-18 00:45:19 +00:00
export function UniversalTimerNotification(props: Props): JSX.Element | null {
2021-06-01 20:45:43 +00:00
const { i18n, expireTimer } = props;
if (!expireTimer) {
return null;
}
const timeValue = expirationTimer.format(i18n, expireTimer);
2021-06-01 20:45:43 +00:00
return (
<SystemMessage
icon="timer"
2023-03-30 00:03:25 +00:00
contents={i18n('icu:UniversalTimerNotification__text', {
timeValue,
})}
/>
2021-06-01 20:45:43 +00:00
);
2022-11-18 00:45:19 +00:00
}