Fixed: Ensure translations are fetched before loading app

(cherry picked from commit ad2721dc55f3233e4c299babe5744418bc530418)
This commit is contained in:
Mark McDowall
2023-07-14 16:55:25 -07:00
committed by Bogdan
parent b9a28f243e
commit 5e52627799
6 changed files with 41 additions and 19 deletions

View File

@@ -1,22 +1,27 @@
import createAjaxRequest from 'Utilities/createAjaxRequest';
function getTranslations() {
let localization = null;
const ajaxOptions = {
async: false,
return createAjaxRequest({
global: false,
dataType: 'json',
url: '/localization',
success: function(data) {
localization = data.Strings;
}
};
createAjaxRequest(ajaxOptions);
return localization;
url: '/localization'
}).request;
}
const translations = getTranslations();
let translations = {};
export function fetchTranslations() {
return new Promise(async(resolve) => {
try {
const data = await getTranslations();
translations = data.Strings;
resolve(true);
} catch (error) {
resolve(false);
}
});
}
export default function translate(key, args = []) {
const translation = translations[key] || key;