diff options
| author | AAGaming <aagaming@riseup.net> | 2026-10-17 20:31:24 -0400 |
|---|---|---|
| committer | AAGaming <aagaming@riseup.net> | 2026-10-17 20:31:24 -0400 |
| commit | a349af9d76d0457067fb546872304df8cdb6ab27 (patch) | |
| tree | a2376f6b6288a4c79dea62d90510b09051ce73fb /frontend/src/utils/TranslationHelper.tsx | |
| parent | dae497ef949d4b36b2bdc3537f4f52b1cfdafa2e (diff) | |
| parent | 82df584b461fe9a283b687ad9d883ea1cb8767a8 (diff) | |
| download | decky-loader-a349af9d76d0457067fb546872304df8cdb6ab27.tar.gz decky-loader-a349af9d76d0457067fb546872304df8cdb6ab27.zip | |
Merge branch 'main' of github.com:SteamDeckHomebrew/decky-loader
Diffstat (limited to 'frontend/src/utils/TranslationHelper.tsx')
| -rw-r--r-- | frontend/src/utils/TranslationHelper.tsx | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/frontend/src/utils/TranslationHelper.tsx b/frontend/src/utils/TranslationHelper.tsx index 4596060d..60af2065 100644 --- a/frontend/src/utils/TranslationHelper.tsx +++ b/frontend/src/utils/TranslationHelper.tsx @@ -2,10 +2,12 @@ import { FC } from 'react'; import { Translation } from 'react-i18next'; import Logger from '../logger'; +import { WarnThirdPartyType } from './globalTypes'; export enum TranslationClass { PLUGIN_LOADER = 'PluginLoader', DEVELOPER = 'Developer', + WARN_THIRD_PARTY = 'WarnThirdParty', } interface TranslationHelperProps { @@ -13,11 +15,17 @@ interface TranslationHelperProps { transText: string; i18nArgs?: {}; installType?: number; + warnType?: WarnThirdPartyType; } const logger = new Logger('TranslationHelper'); -const TranslationHelper: FC<TranslationHelperProps> = ({ transClass, transText, i18nArgs = null }) => { +const TranslationHelper: FC<TranslationHelperProps> = ({ + transClass, + transText, + i18nArgs = null, + warnType = WarnThirdPartyType.REPO, +}) => { return ( <Translation> {(t, {}) => { @@ -30,6 +38,25 @@ const TranslationHelper: FC<TranslationHelperProps> = ({ transClass, transText, return i18nArgs ? t(TranslationClass.DEVELOPER + '.' + transText, i18nArgs) : t(TranslationClass.DEVELOPER + '.' + transText); + //Handle different messages in different class cases + case TranslationClass.WARN_THIRD_PARTY: + //Needed only for title and description + if (!transText.startsWith('button')) { + switch (warnType) { + case WarnThirdPartyType.REPO: + return i18nArgs + ? t(TranslationClass.WARN_THIRD_PARTY + '.' + transText + '_repo', i18nArgs) + : t(TranslationClass.WARN_THIRD_PARTY + '.' + transText + '_repo'); + case WarnThirdPartyType.ZIP: + return i18nArgs + ? t(TranslationClass.WARN_THIRD_PARTY + '.' + transText + '_zip', i18nArgs) + : t(TranslationClass.WARN_THIRD_PARTY + '.' + transText + '_zip'); + } + } else { + return i18nArgs + ? t(TranslationClass.WARN_THIRD_PARTY + '.' + transText, i18nArgs) + : t(TranslationClass.WARN_THIRD_PARTY + '.' + transText); + } default: logger.error('We should never fall in the default case!'); return ''; |
