1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2026-04-23 22:25:56 -04:00

Convert Page components to TypeScript

This commit is contained in:
Mark McDowall
2024-12-16 06:51:45 -08:00
parent 4e65669c48
commit f35a27449d
69 changed files with 2423 additions and 2755 deletions
@@ -0,0 +1,84 @@
import React from 'react';
import { Error } from 'App/State/AppSectionState';
import getErrorMessage from 'Utilities/Object/getErrorMessage';
import translate from 'Utilities/String/translate';
import styles from './ErrorPage.css';
interface ErrorPageProps {
version: string;
isLocalStorageSupported: boolean;
translationsError?: Error;
seriesError?: Error;
customFiltersError?: Error;
tagsError?: Error;
qualityProfilesError?: Error;
uiSettingsError?: Error;
systemStatusError?: Error;
}
function ErrorPage(props: ErrorPageProps) {
const {
version,
isLocalStorageSupported,
translationsError,
seriesError,
customFiltersError,
tagsError,
qualityProfilesError,
uiSettingsError,
systemStatusError,
} = props;
let errorMessage = translate('FailedToLoadSonarr');
if (!isLocalStorageSupported) {
errorMessage = translate('LocalStorageIsNotSupported');
} else if (translationsError) {
errorMessage = getErrorMessage(
translationsError,
translate('FailedToLoadTranslationsFromApi')
);
} else if (seriesError) {
errorMessage = getErrorMessage(
seriesError,
translate('FailedToLoadSeriesFromApi')
);
} else if (customFiltersError) {
errorMessage = getErrorMessage(
customFiltersError,
translate('FailedToLoadCustomFiltersFromApi')
);
} else if (tagsError) {
errorMessage = getErrorMessage(
tagsError,
translate('FailedToLoadTagsFromApi')
);
} else if (qualityProfilesError) {
errorMessage = getErrorMessage(
qualityProfilesError,
translate('FailedToLoadQualityProfilesFromApi')
);
} else if (uiSettingsError) {
errorMessage = getErrorMessage(
uiSettingsError,
translate('FailedToLoadUiSettingsFromApi')
);
} else if (systemStatusError) {
errorMessage = getErrorMessage(
systemStatusError,
translate('FailedToLoadSystemStatusFromApi')
);
}
return (
<div className={styles.page}>
<div>{errorMessage}</div>
<div className={styles.version}>
{translate('VersionNumber', { version })}
</div>
</div>
);
}
export default ErrorPage;