1
0
mirror of https://github.com/Radarr/Radarr.git synced 2026-04-27 22:57:09 -04:00

Fixed: Invalid audio language leading to UI error

(cherry picked from commit 8fbbe21d814ccdeda7727b5fb83f99ea81f5b225)
This commit is contained in:
Mark McDowall
2023-08-19 23:48:05 -07:00
committed by Bogdan
parent e50abd276e
commit f05f25af0c
3 changed files with 42 additions and 28 deletions
@@ -0,0 +1,41 @@
import createAjaxRequest from 'Utilities/createAjaxRequest';
interface LanguageResponse {
identifier: string;
}
function getLanguage() {
return createAjaxRequest({
global: false,
dataType: 'json',
url: '/localization/language',
}).request;
}
function getDisplayName(code: string) {
return Intl.DisplayNames
? new Intl.DisplayNames([code], { type: 'language' })
: null;
}
let languageNames = getDisplayName('en');
getLanguage().then((data: LanguageResponse) => {
const names = getDisplayName(data.identifier);
if (names) {
languageNames = names;
}
});
export default function getLanguageName(code: string) {
if (!languageNames) {
return code;
}
try {
return languageNames.of(code) ?? code;
} catch (error) {
return code;
}
}