Fix up language inconsistenties

This commit is contained in:
Jamie Curnow
2025-11-12 16:30:22 +10:00
parent 9f0f89ff03
commit 711f312b71
6 changed files with 660 additions and 663 deletions

View File

@@ -9,6 +9,7 @@
const allLocales = [ const allLocales = [
["en", "en-US"], ["en", "en-US"],
["es", "es-ES"], ["es", "es-ES"],
["de", "de-DE"],
]; ];
const ignoreUnused = [ const ignoreUnused = [

View File

@@ -1,23 +1,23 @@
import { createIntl, createIntlCache } from "react-intl"; import { createIntl, createIntlCache } from "react-intl";
import langDe from "./lang/de.json";
import langEn from "./lang/en.json"; import langEn from "./lang/en.json";
import langEs from "./lang/es.json"; import langEs from "./lang/es.json";
import langDe from "./lang/de.json";
import langList from "./lang/lang-list.json"; import langList from "./lang/lang-list.json";
// first item of each array should be the language code, // first item of each array should be the language code,
// not the country code // not the country code
// Remember when adding to this list, also update check-locales.js script // Remember when adding to this list, also update check-locales.js script
const localeOptions = [ const localeOptions = [
["en", "en-US"], ["en", "en-US"],
["es", "es-ES"], ["es", "es-ES"],
["de", "de-DE"] ["de", "de-DE"],
]; ];
const loadMessages = (locale?: string): typeof langList & typeof langEn => { const loadMessages = (locale?: string): typeof langList & typeof langEn => {
const thisLocale = locale || "en"; const thisLocale = locale || "en";
switch (thisLocale.slice(0, 2)) { switch (thisLocale.slice(0, 2)) {
case "es": case "es":
return Object.assign({}, langList, langEs); return Object.assign({}, langList, langEn, langEs);
case "de": case "de":
return Object.assign({}, langList, langEn, langDe); return Object.assign({}, langList, langEn, langDe);
default: default:
@@ -27,8 +27,8 @@ const loadMessages = (locale?: string): typeof langList & typeof langEn => {
const getFlagCodeForLocale = (locale?: string) => { const getFlagCodeForLocale = (locale?: string) => {
switch (locale) { switch (locale) {
case "es-ES": case "es-ES":
case "es": case "es":
return "ES"; return "ES";
case "de-DE": case "de-DE":
case "de": case "de":
@@ -56,10 +56,7 @@ const getLocale = (short = false) => {
const cache = createIntlCache(); const cache = createIntlCache();
const initialMessages = loadMessages(getLocale()); const initialMessages = loadMessages(getLocale());
let intl = createIntl( let intl = createIntl({ locale: getLocale(), messages: initialMessages }, cache);
{ locale: getLocale(), messages: initialMessages },
cache,
);
const changeLocale = (locale: string): void => { const changeLocale = (locale: string): void => {
const messages = loadMessages(locale); const messages = loadMessages(locale);
@@ -99,12 +96,4 @@ const T = ({
); );
}; };
export { export { localeOptions, getFlagCodeForLocale, getLocale, createIntl, changeLocale, intl, T };
localeOptions,
getFlagCodeForLocale,
getLocale,
createIntl,
changeLocale,
intl,
T,
};

View File

@@ -32,6 +32,7 @@
"certificate.none.subtitle.for-http": "Dieser Host verwendet kein HTTPS.", "certificate.none.subtitle.for-http": "Dieser Host verwendet kein HTTPS.",
"certificate.none.title": "Kein", "certificate.none.title": "Kein",
"certificate.not-in-use": "Nicht in Benutzung", "certificate.not-in-use": "Nicht in Benutzung",
"certificate.renew": "Zertifikat erneuern",
"certificates": "Zertifikate", "certificates": "Zertifikate",
"certificates.custom": "Benutzerdefiniertes Zertifikat", "certificates.custom": "Benutzerdefiniertes Zertifikat",
"certificates.custom.warning": "Mit einem Passwort geschützte Schlüsseldateien werden nicht unterstützt.", "certificates.custom.warning": "Mit einem Passwort geschützte Schlüsseldateien werden nicht unterstützt.",
@@ -168,7 +169,7 @@
"public": "Öffentlich", "public": "Öffentlich",
"redirection-host": "Redirection Host", "redirection-host": "Redirection Host",
"redirection-host.forward-domain": "Forward Domain", "redirection-host.forward-domain": "Forward Domain",
"redirection-host.forward-http-code" : "HTTP Code", "redirection-host.forward-http-code": "HTTP Code",
"redirection-hosts": "Redirection Hosts", "redirection-hosts": "Redirection Hosts",
"redirection-hosts.count": "{count} {count, plural, one {Redirection Host} other {Redirection Hosts}}", "redirection-hosts.count": "{count} {count, plural, one {Redirection Host} other {Redirection Hosts}}",
"role.admin": "Administrator", "role.admin": "Administrator",
@@ -212,4 +213,4 @@
"user.switch-light": "Zum Light Mode wechslen", "user.switch-light": "Zum Light Mode wechslen",
"username": "Benutzername", "username": "Benutzername",
"users": "Benutzer" "users": "Benutzer"
} }

View File

@@ -2,4 +2,4 @@
"locale-de-DE": "German", "locale-de-DE": "German",
"locale-en-US": "English", "locale-en-US": "English",
"locale-es-ES": "Español" "locale-es-ES": "Español"
} }

View File

@@ -98,6 +98,9 @@
"certificate.not-in-use": { "certificate.not-in-use": {
"defaultMessage": "Nicht in Benutzung" "defaultMessage": "Nicht in Benutzung"
}, },
"certificate.renew": {
"defaultMessage": "Zertifikat erneuern"
},
"certificates": { "certificates": {
"defaultMessage": "Zertifikate" "defaultMessage": "Zertifikate"
}, },

File diff suppressed because it is too large Load Diff