commit
771aa61b38
88 changed files with 354452 additions and 8 deletions
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
|
@ -13,6 +13,7 @@ greatly reduce the amount of work needed to review your work. -->
|
|||
|
||||
1. [ ] All visible strings are translated with proper context.
|
||||
1. [ ] All data-formatting is locale-aware (dates, numbers, and so on).
|
||||
1. [ ] Translated strings are extracted to `.pot` file.
|
||||
1. [ ] Number of API calls is optimized.
|
||||
1. [ ] The changes are tested.
|
||||
1. [ ] Type definitions are up to date.
|
||||
|
|
10
.tx/config
Normal file
10
.tx/config
Normal file
|
@ -0,0 +1,10 @@
|
|||
[main]
|
||||
host = https://www.transifex.com
|
||||
|
||||
[saleor-1.dashboard-20]
|
||||
file_filter = locale/<lang>.po
|
||||
minimum_perc = 1
|
||||
source_file = locale/messages.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
1
locale/ar.json
Normal file
1
locale/ar.json
Normal file
File diff suppressed because one or more lines are too long
8639
locale/ar.po
Normal file
8639
locale/ar.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/az.json
Normal file
1
locale/az.json
Normal file
File diff suppressed because one or more lines are too long
8637
locale/az.po
Normal file
8637
locale/az.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/bg.json
Normal file
1
locale/bg.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/bg.po
Normal file
8638
locale/bg.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/bn.json
Normal file
1
locale/bn.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/bn.po
Normal file
8638
locale/bn.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/ca.json
Normal file
1
locale/ca.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/ca.po
Normal file
8638
locale/ca.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/cs.json
Normal file
1
locale/cs.json
Normal file
File diff suppressed because one or more lines are too long
8640
locale/cs.po
Normal file
8640
locale/cs.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/da.json
Normal file
1
locale/da.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/da.po
Normal file
8638
locale/da.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/de.json
Normal file
1
locale/de.json
Normal file
File diff suppressed because one or more lines are too long
8649
locale/de.po
Normal file
8649
locale/de.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/el.json
Normal file
1
locale/el.json
Normal file
File diff suppressed because one or more lines are too long
8640
locale/el.po
Normal file
8640
locale/el.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/es.json
Normal file
1
locale/es.json
Normal file
File diff suppressed because one or more lines are too long
8652
locale/es.po
Normal file
8652
locale/es.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/es_CO.json
Normal file
1
locale/es_CO.json
Normal file
File diff suppressed because one or more lines are too long
8639
locale/es_CO.po
Normal file
8639
locale/es_CO.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/et.json
Normal file
1
locale/et.json
Normal file
File diff suppressed because one or more lines are too long
8640
locale/et.po
Normal file
8640
locale/et.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/fa.json
Normal file
1
locale/fa.json
Normal file
File diff suppressed because one or more lines are too long
8640
locale/fa.po
Normal file
8640
locale/fa.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/fr.json
Normal file
1
locale/fr.json
Normal file
File diff suppressed because one or more lines are too long
8643
locale/fr.po
Normal file
8643
locale/fr.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/hi.json
Normal file
1
locale/hi.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/hi.po
Normal file
8638
locale/hi.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/hu.json
Normal file
1
locale/hu.json
Normal file
File diff suppressed because one or more lines are too long
8639
locale/hu.po
Normal file
8639
locale/hu.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/hy.json
Normal file
1
locale/hy.json
Normal file
File diff suppressed because one or more lines are too long
8637
locale/hy.po
Normal file
8637
locale/hy.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/id.json
Normal file
1
locale/id.json
Normal file
File diff suppressed because one or more lines are too long
8639
locale/id.po
Normal file
8639
locale/id.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/is.json
Normal file
1
locale/is.json
Normal file
File diff suppressed because one or more lines are too long
8637
locale/is.po
Normal file
8637
locale/is.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/it.json
Normal file
1
locale/it.json
Normal file
File diff suppressed because one or more lines are too long
8642
locale/it.po
Normal file
8642
locale/it.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/ja.json
Normal file
1
locale/ja.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/ja.po
Normal file
8638
locale/ja.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/ko.json
Normal file
1
locale/ko.json
Normal file
File diff suppressed because one or more lines are too long
8640
locale/ko.po
Normal file
8640
locale/ko.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/mn.json
Normal file
1
locale/mn.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/mn.po
Normal file
8638
locale/mn.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/nb.json
Normal file
1
locale/nb.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/nb.po
Normal file
8638
locale/nb.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/nl.json
Normal file
1
locale/nl.json
Normal file
File diff suppressed because one or more lines are too long
8640
locale/nl.po
Normal file
8640
locale/nl.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/pl.json
Normal file
1
locale/pl.json
Normal file
File diff suppressed because one or more lines are too long
8644
locale/pl.po
Normal file
8644
locale/pl.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/pt.json
Normal file
1
locale/pt.json
Normal file
File diff suppressed because one or more lines are too long
8637
locale/pt.po
Normal file
8637
locale/pt.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/pt_BR.json
Normal file
1
locale/pt_BR.json
Normal file
File diff suppressed because one or more lines are too long
8647
locale/pt_BR.po
Normal file
8647
locale/pt_BR.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/ro.json
Normal file
1
locale/ro.json
Normal file
File diff suppressed because one or more lines are too long
8639
locale/ro.po
Normal file
8639
locale/ro.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/ru.json
Normal file
1
locale/ru.json
Normal file
File diff suppressed because one or more lines are too long
8651
locale/ru.po
Normal file
8651
locale/ru.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/sk.json
Normal file
1
locale/sk.json
Normal file
File diff suppressed because one or more lines are too long
8641
locale/sk.po
Normal file
8641
locale/sk.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/sl.json
Normal file
1
locale/sl.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/sl.po
Normal file
8638
locale/sl.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/sq.json
Normal file
1
locale/sq.json
Normal file
File diff suppressed because one or more lines are too long
8637
locale/sq.po
Normal file
8637
locale/sq.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/sr.json
Normal file
1
locale/sr.json
Normal file
File diff suppressed because one or more lines are too long
8637
locale/sr.po
Normal file
8637
locale/sr.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/sv.json
Normal file
1
locale/sv.json
Normal file
File diff suppressed because one or more lines are too long
8640
locale/sv.po
Normal file
8640
locale/sv.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/th.json
Normal file
1
locale/th.json
Normal file
File diff suppressed because one or more lines are too long
8638
locale/th.po
Normal file
8638
locale/th.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/tr.json
Normal file
1
locale/tr.json
Normal file
File diff suppressed because one or more lines are too long
8645
locale/tr.po
Normal file
8645
locale/tr.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/uk.json
Normal file
1
locale/uk.json
Normal file
File diff suppressed because one or more lines are too long
8644
locale/uk.po
Normal file
8644
locale/uk.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/vi.json
Normal file
1
locale/vi.json
Normal file
File diff suppressed because one or more lines are too long
8643
locale/vi.po
Normal file
8643
locale/vi.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/zh-Hans.json
Normal file
1
locale/zh-Hans.json
Normal file
File diff suppressed because one or more lines are too long
8642
locale/zh-Hans.po
Normal file
8642
locale/zh-Hans.po
Normal file
File diff suppressed because it is too large
Load diff
1
locale/zh-Hant.json
Normal file
1
locale/zh-Hant.json
Normal file
File diff suppressed because one or more lines are too long
8637
locale/zh-Hant.po
Normal file
8637
locale/zh-Hant.po
Normal file
File diff suppressed because it is too large
Load diff
|
@ -150,6 +150,7 @@
|
|||
],
|
||||
"moduleNameMapper": {
|
||||
"@assets(.*)$": "<rootDir>/assets/$1",
|
||||
"@locale(.*)$": "<rootDir>/locale/$1",
|
||||
"@saleor(.*)$": "<rootDir>/src/$1",
|
||||
"^lodash-es(.*)$": "lodash/$1"
|
||||
}
|
||||
|
|
|
@ -1,22 +1,144 @@
|
|||
import React from "react";
|
||||
import { IntlProvider } from "react-intl";
|
||||
|
||||
import locale_AR from "@locale/ar.json";
|
||||
import locale_AZ from "@locale/az.json";
|
||||
import locale_BG from "@locale/bg.json";
|
||||
import locale_BN from "@locale/bn.json";
|
||||
import locale_CA from "@locale/ca.json";
|
||||
import locale_CS from "@locale/cs.json";
|
||||
import locale_DA from "@locale/da.json";
|
||||
import locale_DE from "@locale/de.json";
|
||||
import locale_EL from "@locale/el.json";
|
||||
import locale_ES from "@locale/es.json";
|
||||
import locale_ES_CO from "@locale/es_CO.json";
|
||||
import locale_ET from "@locale/et.json";
|
||||
import locale_FA from "@locale/fa.json";
|
||||
import locale_FR from "@locale/fr.json";
|
||||
import locale_HI from "@locale/hi.json";
|
||||
import locale_HU from "@locale/hu.json";
|
||||
import locale_HY from "@locale/hy.json";
|
||||
import locale_ID from "@locale/id.json";
|
||||
import locale_IS from "@locale/is.json";
|
||||
import locale_IT from "@locale/it.json";
|
||||
import locale_JA from "@locale/ja.json";
|
||||
import locale_KO from "@locale/ko.json";
|
||||
import locale_MN from "@locale/mn.json";
|
||||
import locale_NB from "@locale/nb.json";
|
||||
import locale_NL from "@locale/nl.json";
|
||||
import locale_PL from "@locale/pl.json";
|
||||
import locale_PT from "@locale/pt.json";
|
||||
import locale_PT_BR from "@locale/pt_BR.json";
|
||||
import locale_RO from "@locale/ro.json";
|
||||
import locale_RU from "@locale/ru.json";
|
||||
import locale_SK from "@locale/sk.json";
|
||||
import locale_SL from "@locale/sl.json";
|
||||
import locale_SQ from "@locale/sq.json";
|
||||
import locale_SR from "@locale/sr.json";
|
||||
import locale_SV from "@locale/sv.json";
|
||||
import locale_TH from "@locale/th.json";
|
||||
import locale_TR from "@locale/tr.json";
|
||||
import locale_UK from "@locale/uk.json";
|
||||
import locale_VI from "@locale/vi.json";
|
||||
import locale_ZH_HANS from "@locale/zh-Hans.json";
|
||||
import locale_ZH_HANT from "@locale/zh-Hant.json";
|
||||
|
||||
const defaultLocale = "en";
|
||||
|
||||
export type LocaleContextType = string;
|
||||
export const LocaleContext = React.createContext<LocaleContextType>("en");
|
||||
export const LocaleContext = React.createContext<LocaleContextType>(
|
||||
defaultLocale
|
||||
);
|
||||
|
||||
const { Consumer: LocaleConsumer, Provider: RawLocaleProvider } = LocaleContext;
|
||||
|
||||
enum Locale {
|
||||
EN = "en",
|
||||
EN_GB = "en-gb",
|
||||
EN_US = "en-us"
|
||||
AR = "ar",
|
||||
AZ = "az",
|
||||
BG = "bg",
|
||||
BN = "bn",
|
||||
CA = "ca",
|
||||
CS = "cs",
|
||||
DA = "da",
|
||||
DE = "de",
|
||||
EL = "el",
|
||||
ES = "es",
|
||||
ES_CO = "es-co",
|
||||
ET = "et",
|
||||
FA = "fa",
|
||||
FR = "fr",
|
||||
HI = "hi",
|
||||
HU = "hu",
|
||||
HY = "hy",
|
||||
ID = "id",
|
||||
IS = "is",
|
||||
IT = "it",
|
||||
JA = "ja",
|
||||
KO = "ko",
|
||||
MN = "mn",
|
||||
NB = "nb",
|
||||
NL = "nl",
|
||||
PL = "pl",
|
||||
PT = "pt",
|
||||
PT_BR = "pt-br",
|
||||
RO = "ro",
|
||||
RU = "ru",
|
||||
SK = "sk",
|
||||
SL = "sl",
|
||||
SQ = "sq",
|
||||
SR = "sr",
|
||||
SV = "sv",
|
||||
TH = "th",
|
||||
TR = "tr",
|
||||
UK = "uk",
|
||||
VI = "vi",
|
||||
ZH_HANS = "zh-hans",
|
||||
ZH_HANT = "zh-hant"
|
||||
}
|
||||
|
||||
type LocaleMessages = Record<string, string>;
|
||||
const localeData: Record<Locale, LocaleMessages> = {
|
||||
[Locale.EN]: {},
|
||||
[Locale.EN_GB]: {},
|
||||
[Locale.EN_US]: {}
|
||||
[Locale.AR]: locale_AR,
|
||||
[Locale.AZ]: locale_AZ,
|
||||
[Locale.BG]: locale_BG,
|
||||
[Locale.BN]: locale_BN,
|
||||
[Locale.CA]: locale_CA,
|
||||
[Locale.CS]: locale_CS,
|
||||
[Locale.DA]: locale_DA,
|
||||
[Locale.DE]: locale_DE,
|
||||
[Locale.EL]: locale_EL,
|
||||
[Locale.ES]: locale_ES,
|
||||
[Locale.ES_CO]: locale_ES_CO,
|
||||
[Locale.ET]: locale_ET,
|
||||
[Locale.FA]: locale_FA,
|
||||
[Locale.FR]: locale_FR,
|
||||
[Locale.HI]: locale_HI,
|
||||
[Locale.HU]: locale_HU,
|
||||
[Locale.HY]: locale_HY,
|
||||
[Locale.ID]: locale_ID,
|
||||
[Locale.IS]: locale_IS,
|
||||
[Locale.IT]: locale_IT,
|
||||
[Locale.JA]: locale_JA,
|
||||
[Locale.KO]: locale_KO,
|
||||
[Locale.MN]: locale_MN,
|
||||
[Locale.NB]: locale_NB,
|
||||
[Locale.NL]: locale_NL,
|
||||
[Locale.PL]: locale_PL,
|
||||
[Locale.PT]: locale_PT,
|
||||
[Locale.PT_BR]: locale_PT_BR,
|
||||
[Locale.RO]: locale_RO,
|
||||
[Locale.RU]: locale_RU,
|
||||
[Locale.SK]: locale_SK,
|
||||
[Locale.SL]: locale_SL,
|
||||
[Locale.SQ]: locale_SQ,
|
||||
[Locale.SR]: locale_SR,
|
||||
[Locale.SV]: locale_SV,
|
||||
[Locale.TH]: locale_TH,
|
||||
[Locale.TR]: locale_TR,
|
||||
[Locale.UK]: locale_UK,
|
||||
[Locale.VI]: locale_VI,
|
||||
[Locale.ZH_HANS]: locale_ZH_HANS,
|
||||
[Locale.ZH_HANT]: locale_ZH_HANT
|
||||
};
|
||||
|
||||
function getMatchingLocale(): Locale {
|
||||
|
@ -35,7 +157,17 @@ const LocaleProvider: React.FC = ({ children }) => {
|
|||
const [locale] = React.useState(getMatchingLocale());
|
||||
|
||||
return (
|
||||
<IntlProvider locale={locale} messages={localeData[locale]} key={locale}>
|
||||
<IntlProvider
|
||||
defaultLocale={defaultLocale}
|
||||
locale={locale}
|
||||
messages={localeData[locale]}
|
||||
onError={err => {
|
||||
if (!err.includes("[React Intl] Missing message: ")) {
|
||||
console.error(err);
|
||||
}
|
||||
}}
|
||||
key={locale}
|
||||
>
|
||||
<RawLocaleProvider value={locale}>{children}</RawLocaleProvider>
|
||||
</IntlProvider>
|
||||
);
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
"noUnusedParameters": true,
|
||||
"paths": {
|
||||
"@assets/*": ["assets/*"],
|
||||
"@locale/*": ["locale/*"],
|
||||
"@saleor/*": ["src/*"]
|
||||
},
|
||||
"resolveJsonModule": true
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
"@material-ui",
|
||||
"lodash-es",
|
||||
"@assets",
|
||||
"@locale",
|
||||
"@saleor"
|
||||
]
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue