UNPKG

@brizy/ui

Version:
69 lines (68 loc) 2.27 kB
import i18n from "i18next"; import { initReactI18next } from "react-i18next"; import ar from "../../locales/ar.json"; import da from "../../locales/da.json"; import de from "../../locales/de.json"; import en from "../../locales/en.json"; import es from "../../locales/es.json"; import fr from "../../locales/fr.json"; import it from "../../locales/it.json"; import ja from "../../locales/ja.json"; import nl from "../../locales/nl.json"; import pt from "../../locales/pt.json"; import ro from "../../locales/ro.json"; import ru from "../../locales/ru.json"; import tr from "../../locales/tr.json"; import uk from "../../locales/uk.json"; import cn from "../../locales/cn.json"; import ko from "../../locales/ko.json"; import lt from "../../locales/lt.json"; import pl from "../../locales/pl.json"; import sv from "../../locales/sv.json"; import no from "../../locales/no.json"; import th from "../../locales/th.json"; const setDefaultNamespace = (translation) => ({ translation }); const resources = { ar: setDefaultNamespace(ar), da: setDefaultNamespace(da), de: setDefaultNamespace(de), en: setDefaultNamespace(en), es: setDefaultNamespace(es), fr: setDefaultNamespace(fr), it: setDefaultNamespace(it), ja: setDefaultNamespace(ja), nl: setDefaultNamespace(nl), pt: setDefaultNamespace(pt), ro: setDefaultNamespace(ro), ru: setDefaultNamespace(ru), tr: setDefaultNamespace(tr), uk: setDefaultNamespace(uk), cn: setDefaultNamespace(cn), ko: setDefaultNamespace(ko), lt: setDefaultNamespace(lt), pl: setDefaultNamespace(pl), sv: setDefaultNamespace(sv), no: setDefaultNamespace(no), th: setDefaultNamespace(th), }; export const getConfig = (locale) => { i18n .use(initReactI18next) // passes i18n down to react-i18next .init({ // allow keys to be phrases having `:`, `.` keySeparator: false, nsSeparator: false, initImmediate: true, missingKeyNoValueFallbackToKey: true, lng: locale, fallbackLng: false, interpolation: { escapeValue: false, // react already safes from xss }, react: { useSuspense: false, }, resources, }); return i18n; };