FormattedMessage: replace Snort -> APP_NAME_CAPITALIZED

This commit is contained in:
Martti Malmi
2023-09-26 09:58:53 +03:00
parent 1f6e1886b3
commit 3c812cb51a
56 changed files with 77 additions and 51 deletions

View File

@ -0,0 +1,22 @@
import { useState, useEffect, FC, ComponentProps } from 'react';
import { useIntl, FormattedMessage } from 'react-intl';
type ExtendedProps = ComponentProps<typeof FormattedMessage>;
const ExtendedFormattedMessage: FC<ExtendedProps> = (props) => {
const { id, defaultMessage, values} = props;
const { formatMessage } = useIntl();
const [processedMessage, setProcessedMessage] = useState<string | null>(null);
useEffect(() => {
const translatedMessage = formatMessage({ id, defaultMessage }, values);
if (typeof translatedMessage === 'string') {
setProcessedMessage(translatedMessage.replace('Snort', process.env.APP_NAME_CAPITALIZED || 'Snort'));
}
}, [id, defaultMessage, values, formatMessage]);
return <>{processedMessage}</>;
};
export default ExtendedFormattedMessage;