feat: add crowdin i18n
This commit is contained in:
251
src/i18n/i18n.ts
251
src/i18n/i18n.ts
@@ -2,32 +2,39 @@ import i18n from "i18next";
|
|||||||
import { initReactI18next } from "react-i18next";
|
import { initReactI18next } from "react-i18next";
|
||||||
import LanguageDetector from "i18next-browser-languagedetector";
|
import LanguageDetector from "i18next-browser-languagedetector";
|
||||||
|
|
||||||
import enTranslation from "../locales/en.json";
|
import enTranslation from "../locales/translated/en.json";
|
||||||
import zhTranslation from "../locales/zh.json";
|
import afTranslation from "../locales/translated/af.json";
|
||||||
import deTranslation from "../locales/de.json";
|
import arTranslation from "../locales/translated/ar.json";
|
||||||
import ptTranslation from "../locales/pt.json";
|
import bnTranslation from "../locales/translated/bn.json";
|
||||||
import ruTranslation from "../locales/ru.json";
|
import bgTranslation from "../locales/translated/bg.json";
|
||||||
import frTranslation from "../locales/fr.json";
|
import caTranslation from "../locales/translated/ca.json";
|
||||||
import koTranslation from "../locales/ko.json";
|
import csTranslation from "../locales/translated/cs.json";
|
||||||
import itTranslation from "../locales/it.json";
|
import daTranslation from "../locales/translated/da.json";
|
||||||
import esTranslation from "../locales/es.json";
|
import deTranslation from "../locales/translated/de.json";
|
||||||
import hiTranslation from "../locales/hi.json";
|
import elTranslation from "../locales/translated/el.json";
|
||||||
import bnTranslation from "../locales/bn.json";
|
import esTranslation from "../locales/translated/es.json";
|
||||||
import jaTranslation from "../locales/ja.json";
|
import fiTranslation from "../locales/translated/fi.json";
|
||||||
import viTranslation from "../locales/vi.json";
|
import frTranslation from "../locales/translated/fr.json";
|
||||||
import trTranslation from "../locales/tr.json";
|
import heTranslation from "../locales/translated/he.json";
|
||||||
import heTranslation from "../locales/he.json";
|
import hiTranslation from "../locales/translated/hi.json";
|
||||||
import arTranslation from "../locales/ar.json";
|
import huTranslation from "../locales/translated/hu.json";
|
||||||
import plTranslation from "../locales/pl.json";
|
import idTranslation from "../locales/translated/id.json";
|
||||||
import nlTranslation from "../locales/nl.json";
|
import itTranslation from "../locales/translated/it.json";
|
||||||
import svTranslation from "../locales/sv.json";
|
import jaTranslation from "../locales/translated/ja.json";
|
||||||
import idTranslation from "../locales/id.json";
|
import koTranslation from "../locales/translated/ko.json";
|
||||||
import thTranslation from "../locales/th.json";
|
import nlTranslation from "../locales/translated/nl.json";
|
||||||
import ukTranslation from "../locales/uk.json";
|
import noTranslation from "../locales/translated/no.json";
|
||||||
import csTranslation from "../locales/cs.json";
|
import plTranslation from "../locales/translated/pl.json";
|
||||||
import roTranslation from "../locales/ro.json";
|
import ptTranslation from "../locales/translated/pt.json";
|
||||||
import elTranslation from "../locales/el.json";
|
import roTranslation from "../locales/translated/ro.json";
|
||||||
import nbTranslation from "../locales/nb.json";
|
import ruTranslation from "../locales/translated/ru.json";
|
||||||
|
import srTranslation from "../locales/translated/sr.json";
|
||||||
|
import svTranslation from "../locales/translated/sv.json";
|
||||||
|
import thTranslation from "../locales/translated/th.json";
|
||||||
|
import trTranslation from "../locales/translated/tr.json";
|
||||||
|
import ukTranslation from "../locales/translated/uk.json";
|
||||||
|
import viTranslation from "../locales/translated/vi.json";
|
||||||
|
import zhTranslation from "../locales/translated/zh.json";
|
||||||
|
|
||||||
i18n
|
i18n
|
||||||
.use(LanguageDetector)
|
.use(LanguageDetector)
|
||||||
@@ -35,31 +42,38 @@ i18n
|
|||||||
.init({
|
.init({
|
||||||
supportedLngs: [
|
supportedLngs: [
|
||||||
"en",
|
"en",
|
||||||
"zh",
|
"af",
|
||||||
"de",
|
|
||||||
"pt",
|
|
||||||
"ru",
|
|
||||||
"fr",
|
|
||||||
"ko",
|
|
||||||
"it",
|
|
||||||
"es",
|
|
||||||
"hi",
|
|
||||||
"bn",
|
|
||||||
"ja",
|
|
||||||
"vi",
|
|
||||||
"tr",
|
|
||||||
"he",
|
|
||||||
"ar",
|
"ar",
|
||||||
"pl",
|
"bn",
|
||||||
"nl",
|
"bg",
|
||||||
"sv",
|
"ca",
|
||||||
"id",
|
|
||||||
"th",
|
|
||||||
"uk",
|
|
||||||
"cs",
|
"cs",
|
||||||
"ro",
|
"da",
|
||||||
|
"de",
|
||||||
"el",
|
"el",
|
||||||
"nb",
|
"es",
|
||||||
|
"fi",
|
||||||
|
"fr",
|
||||||
|
"he",
|
||||||
|
"hi",
|
||||||
|
"hu",
|
||||||
|
"id",
|
||||||
|
"it",
|
||||||
|
"ja",
|
||||||
|
"ko",
|
||||||
|
"nl",
|
||||||
|
"no",
|
||||||
|
"pl",
|
||||||
|
"pt",
|
||||||
|
"ro",
|
||||||
|
"ru",
|
||||||
|
"sr",
|
||||||
|
"sv",
|
||||||
|
"th",
|
||||||
|
"tr",
|
||||||
|
"uk",
|
||||||
|
"vi",
|
||||||
|
"zh",
|
||||||
],
|
],
|
||||||
fallbackLng: "en",
|
fallbackLng: "en",
|
||||||
debug: false,
|
debug: false,
|
||||||
@@ -76,80 +90,101 @@ i18n
|
|||||||
en: {
|
en: {
|
||||||
translation: enTranslation,
|
translation: enTranslation,
|
||||||
},
|
},
|
||||||
zh: {
|
af: {
|
||||||
translation: zhTranslation,
|
translation: afTranslation,
|
||||||
},
|
|
||||||
de: {
|
|
||||||
translation: deTranslation,
|
|
||||||
},
|
|
||||||
pt: {
|
|
||||||
translation: ptTranslation,
|
|
||||||
},
|
|
||||||
ru: {
|
|
||||||
translation: ruTranslation,
|
|
||||||
},
|
|
||||||
fr: {
|
|
||||||
translation: frTranslation,
|
|
||||||
},
|
|
||||||
ko: {
|
|
||||||
translation: koTranslation,
|
|
||||||
},
|
|
||||||
it: {
|
|
||||||
translation: itTranslation,
|
|
||||||
},
|
|
||||||
es: {
|
|
||||||
translation: esTranslation,
|
|
||||||
},
|
|
||||||
hi: {
|
|
||||||
translation: hiTranslation,
|
|
||||||
},
|
|
||||||
bn: {
|
|
||||||
translation: bnTranslation,
|
|
||||||
},
|
|
||||||
ja: {
|
|
||||||
translation: jaTranslation,
|
|
||||||
},
|
|
||||||
vi: {
|
|
||||||
translation: viTranslation,
|
|
||||||
},
|
|
||||||
tr: {
|
|
||||||
translation: trTranslation,
|
|
||||||
},
|
|
||||||
he: {
|
|
||||||
translation: heTranslation,
|
|
||||||
},
|
},
|
||||||
ar: {
|
ar: {
|
||||||
translation: arTranslation,
|
translation: arTranslation,
|
||||||
},
|
},
|
||||||
pl: {
|
bn: {
|
||||||
translation: plTranslation,
|
translation: bnTranslation,
|
||||||
},
|
},
|
||||||
nl: {
|
bg: {
|
||||||
translation: nlTranslation,
|
translation: bgTranslation,
|
||||||
},
|
},
|
||||||
sv: {
|
ca: {
|
||||||
translation: svTranslation,
|
translation: caTranslation,
|
||||||
},
|
|
||||||
id: {
|
|
||||||
translation: idTranslation,
|
|
||||||
},
|
|
||||||
th: {
|
|
||||||
translation: thTranslation,
|
|
||||||
},
|
|
||||||
uk: {
|
|
||||||
translation: ukTranslation,
|
|
||||||
},
|
},
|
||||||
cs: {
|
cs: {
|
||||||
translation: csTranslation,
|
translation: csTranslation,
|
||||||
},
|
},
|
||||||
ro: {
|
da: {
|
||||||
translation: roTranslation,
|
translation: daTranslation,
|
||||||
|
},
|
||||||
|
de: {
|
||||||
|
translation: deTranslation,
|
||||||
},
|
},
|
||||||
el: {
|
el: {
|
||||||
translation: elTranslation,
|
translation: elTranslation,
|
||||||
},
|
},
|
||||||
nb: {
|
es: {
|
||||||
translation: nbTranslation,
|
translation: esTranslation,
|
||||||
|
},
|
||||||
|
fi: {
|
||||||
|
translation: fiTranslation,
|
||||||
|
},
|
||||||
|
fr: {
|
||||||
|
translation: frTranslation,
|
||||||
|
},
|
||||||
|
he: {
|
||||||
|
translation: heTranslation,
|
||||||
|
},
|
||||||
|
hi: {
|
||||||
|
translation: hiTranslation,
|
||||||
|
},
|
||||||
|
hu: {
|
||||||
|
translation: huTranslation,
|
||||||
|
},
|
||||||
|
id: {
|
||||||
|
translation: idTranslation,
|
||||||
|
},
|
||||||
|
it: {
|
||||||
|
translation: itTranslation,
|
||||||
|
},
|
||||||
|
ja: {
|
||||||
|
translation: jaTranslation,
|
||||||
|
},
|
||||||
|
ko: {
|
||||||
|
translation: koTranslation,
|
||||||
|
},
|
||||||
|
nl: {
|
||||||
|
translation: nlTranslation,
|
||||||
|
},
|
||||||
|
no: {
|
||||||
|
translation: noTranslation,
|
||||||
|
},
|
||||||
|
pl: {
|
||||||
|
translation: plTranslation,
|
||||||
|
},
|
||||||
|
pt: {
|
||||||
|
translation: ptTranslation,
|
||||||
|
},
|
||||||
|
ro: {
|
||||||
|
translation: roTranslation,
|
||||||
|
},
|
||||||
|
ru: {
|
||||||
|
translation: ruTranslation,
|
||||||
|
},
|
||||||
|
sr: {
|
||||||
|
translation: srTranslation,
|
||||||
|
},
|
||||||
|
sv: {
|
||||||
|
translation: svTranslation,
|
||||||
|
},
|
||||||
|
th: {
|
||||||
|
translation: thTranslation,
|
||||||
|
},
|
||||||
|
tr: {
|
||||||
|
translation: trTranslation,
|
||||||
|
},
|
||||||
|
uk: {
|
||||||
|
translation: ukTranslation,
|
||||||
|
},
|
||||||
|
vi: {
|
||||||
|
translation: viTranslation,
|
||||||
|
},
|
||||||
|
zh: {
|
||||||
|
translation: zhTranslation,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -11,20 +11,27 @@ import { Globe } from "lucide-react";
|
|||||||
|
|
||||||
const languages = [
|
const languages = [
|
||||||
{ code: "en", name: "English", nativeName: "English" },
|
{ code: "en", name: "English", nativeName: "English" },
|
||||||
|
{ code: "af", name: "Afrikaans", nativeName: "Afrikaans" },
|
||||||
{ code: "ar", name: "Arabic", nativeName: "العربية" },
|
{ code: "ar", name: "Arabic", nativeName: "العربية" },
|
||||||
{ code: "bn", name: "Bengali", nativeName: "বাংলা" },
|
{ code: "bn", name: "Bengali", nativeName: "বাংলা" },
|
||||||
|
{ code: "bg", name: "Bulgarian", nativeName: "Български" },
|
||||||
|
{ code: "ca", name: "Catalan", nativeName: "Català" },
|
||||||
{ code: "zh", name: "Chinese", nativeName: "中文" },
|
{ code: "zh", name: "Chinese", nativeName: "中文" },
|
||||||
{ code: "cs", name: "Czech", nativeName: "Čeština" },
|
{ code: "cs", name: "Czech", nativeName: "Čeština" },
|
||||||
|
{ code: "da", name: "Danish", nativeName: "Dansk" },
|
||||||
{ code: "nl", name: "Dutch", nativeName: "Nederlands" },
|
{ code: "nl", name: "Dutch", nativeName: "Nederlands" },
|
||||||
|
{ code: "fi", name: "Finnish", nativeName: "Suomi" },
|
||||||
{ code: "fr", name: "French", nativeName: "Français" },
|
{ code: "fr", name: "French", nativeName: "Français" },
|
||||||
{ code: "de", name: "German", nativeName: "Deutsch" },
|
{ code: "de", name: "German", nativeName: "Deutsch" },
|
||||||
{ code: "el", name: "Greek", nativeName: "Ελληνικά" },
|
{ code: "el", name: "Greek", nativeName: "Ελληνικά" },
|
||||||
{ code: "he", name: "Hebrew", nativeName: "עברית" },
|
{ code: "he", name: "Hebrew", nativeName: "עברית" },
|
||||||
{ code: "hi", name: "Hindi", nativeName: "हिन्दी" },
|
{ code: "hi", name: "Hindi", nativeName: "हिन्दी" },
|
||||||
|
{ code: "hu", name: "Hungarian", nativeName: "Magyar" },
|
||||||
{ code: "id", name: "Indonesian", nativeName: "Bahasa Indonesia" },
|
{ code: "id", name: "Indonesian", nativeName: "Bahasa Indonesia" },
|
||||||
{ code: "it", name: "Italian", nativeName: "Italiano" },
|
{ code: "it", name: "Italian", nativeName: "Italiano" },
|
||||||
{ code: "ja", name: "Japanese", nativeName: "日本語" },
|
{ code: "ja", name: "Japanese", nativeName: "日本語" },
|
||||||
{ code: "ko", name: "Korean", nativeName: "한국어" },
|
{ code: "ko", name: "Korean", nativeName: "한국어" },
|
||||||
|
{ code: "no", name: "Norwegian", nativeName: "Norsk" },
|
||||||
{ code: "pl", name: "Polish", nativeName: "Polski" },
|
{ code: "pl", name: "Polish", nativeName: "Polski" },
|
||||||
{
|
{
|
||||||
code: "pt",
|
code: "pt",
|
||||||
@@ -33,13 +40,13 @@ const languages = [
|
|||||||
},
|
},
|
||||||
{ code: "ro", name: "Romanian", nativeName: "Română" },
|
{ code: "ro", name: "Romanian", nativeName: "Română" },
|
||||||
{ code: "ru", name: "Russian", nativeName: "Русский" },
|
{ code: "ru", name: "Russian", nativeName: "Русский" },
|
||||||
|
{ code: "sr", name: "Serbian", nativeName: "Српски" },
|
||||||
{ code: "es", name: "Spanish", nativeName: "Español" },
|
{ code: "es", name: "Spanish", nativeName: "Español" },
|
||||||
{ code: "sv", name: "Swedish", nativeName: "Svenska" },
|
{ code: "sv", name: "Swedish", nativeName: "Svenska" },
|
||||||
{ code: "th", name: "Thai", nativeName: "ไทย" },
|
{ code: "th", name: "Thai", nativeName: "ไทย" },
|
||||||
{ code: "tr", name: "Turkish", nativeName: "Türkçe" },
|
{ code: "tr", name: "Turkish", nativeName: "Türkçe" },
|
||||||
{ code: "uk", name: "Ukrainian", nativeName: "Українська" },
|
{ code: "uk", name: "Ukrainian", nativeName: "Українська" },
|
||||||
{ code: "vi", name: "Vietnamese", nativeName: "Tiếng Việt" },
|
{ code: "vi", name: "Vietnamese", nativeName: "Tiếng Việt" },
|
||||||
{ code: "nb", name: "Norwegian", nativeName: "Norsk" },
|
|
||||||
];
|
];
|
||||||
|
|
||||||
export function LanguageSwitcher() {
|
export function LanguageSwitcher() {
|
||||||
|
|||||||
Reference in New Issue
Block a user