Fix en locale, symlinks and use async await
This commit is contained in:
parent
8e0740372a
commit
ce6d9d835a
6 changed files with 17 additions and 18 deletions
|
@ -1 +0,0 @@
|
||||||
defaultMessages.json
|
|
|
@ -1 +0,0 @@
|
||||||
es_CO.json
|
|
|
@ -1 +0,0 @@
|
||||||
pt_BR.json
|
|
|
@ -1 +0,0 @@
|
||||||
zh-Hans.json
|
|
|
@ -1 +0,0 @@
|
||||||
zh-Hant.json
|
|
|
@ -1,6 +1,5 @@
|
||||||
import useLocalStorage from "@saleor/hooks/useLocalStorage";
|
import useLocalStorage from "@saleor/hooks/useLocalStorage";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { useEffect } from "react";
|
|
||||||
import { IntlProvider } from "react-intl";
|
import { IntlProvider } from "react-intl";
|
||||||
|
|
||||||
export enum Locale {
|
export enum Locale {
|
||||||
|
@ -15,7 +14,7 @@ export enum Locale {
|
||||||
EL = "el",
|
EL = "el",
|
||||||
EN = "en",
|
EN = "en",
|
||||||
ES = "es",
|
ES = "es",
|
||||||
ES_CO = "es-co",
|
ES_CO = "es-CO",
|
||||||
ET = "et",
|
ET = "et",
|
||||||
FA = "fa",
|
FA = "fa",
|
||||||
FR = "fr",
|
FR = "fr",
|
||||||
|
@ -32,7 +31,7 @@ export enum Locale {
|
||||||
NL = "nl",
|
NL = "nl",
|
||||||
PL = "pl",
|
PL = "pl",
|
||||||
PT = "pt",
|
PT = "pt",
|
||||||
PT_BR = "pt-br",
|
PT_BR = "pt-BR",
|
||||||
RO = "ro",
|
RO = "ro",
|
||||||
RU = "ru",
|
RU = "ru",
|
||||||
SK = "sk",
|
SK = "sk",
|
||||||
|
@ -44,8 +43,8 @@ export enum Locale {
|
||||||
TR = "tr",
|
TR = "tr",
|
||||||
UK = "uk",
|
UK = "uk",
|
||||||
VI = "vi",
|
VI = "vi",
|
||||||
ZH_HANS = "zh-hans",
|
ZH_HANS = "zh-Hans",
|
||||||
ZH_HANT = "zh-hant"
|
ZH_HANT = "zh-Hant"
|
||||||
}
|
}
|
||||||
|
|
||||||
interface StructuredMessage {
|
interface StructuredMessage {
|
||||||
|
@ -144,16 +143,21 @@ const LocaleProvider: React.FC = ({ children }) => {
|
||||||
"locale",
|
"locale",
|
||||||
getMatchingLocale(navigator.languages) || defaultLocale
|
getMatchingLocale(navigator.languages) || defaultLocale
|
||||||
);
|
);
|
||||||
const [messages, setMessages] = useLocalStorage("messages", {});
|
const [messages, setMessages] = React.useState(undefined);
|
||||||
|
|
||||||
useEffect(() => {
|
React.useEffect(() => {
|
||||||
|
async function changeLocale() {
|
||||||
if (locale !== defaultLocale) {
|
if (locale !== defaultLocale) {
|
||||||
// It seems like Webpack is unable to use aliases for lazy imports
|
// It seems like Webpack is unable to use aliases for lazy imports
|
||||||
import(`../../../locale/${locale}.json`).then(({ default: res }) =>
|
const mod = await import(`../../../locale/${locale}.json`);
|
||||||
setMessages(res)
|
setMessages(mod.default);
|
||||||
);
|
} else {
|
||||||
|
setMessages(undefined);
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
|
||||||
|
changeLocale();
|
||||||
|
}, [locale]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<IntlProvider
|
<IntlProvider
|
||||||
|
|
Loading…
Reference in a new issue