File size: 2,505 Bytes
a21c316
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
import i18n from "i18next";
import { initReactI18next } from "react-i18next";
import LanguageDetector from "i18next-browser-languagedetector";

import en from "./locales/en.json";
import zh from "./locales/zh.json";
import zhTW from "./locales/zh-TW.json";
import ja from "./locales/ja.json";
import tr from "./locales/tr.json";
import vi from "./locales/vi.json";
import pt from "./locales/pt.json";
import ru from "./locales/ru.json";
import ko from "./locales/ko.json";
import ar from "./locales/ar.json";
import es from "./locales/es.json";
import my from "./locales/my.json";

i18n
    // detect user language
    // learn more: https://github.com/i18next/i18next-browser-languagedetector
    .use(LanguageDetector)
    // pass the i18n instance to react-i18next.
    .use(initReactI18next)
    // init i18next
    // for all options read: https://www.i18next.com/overview/configuration-options
    .init({
        resources: {
            en: {
                translation: en,
            },
            zh: {
                translation: zh,
            },
            "zh-TW": {
                translation: zhTW,
            },
            ja: {
                translation: ja,
            },
            tr: {
                translation: tr,
            },
            // Handling 'zh-CN' as 'zh'
            "zh-CN": {
                translation: zh,
            },
            vi: {
                translation: vi,
            },
            "vi-VN": {
                translation: vi,
            },
            pt: {
                translation: pt,
            },
            "pt-BR": {
                translation: pt,
            },
            ru: {
                translation: ru,
            },
            ko: {
                translation: ko,
            },
            ar: {
                translation: ar,
            },
            es: {
                translation: es,
            },
            "es-ES": {
                translation: es,
            },
            "es-MX": {
                translation: es,
            },
            my: {
                translation: my,
            },
            "ms": {
                translation: my,
            },
            "ms-MY": {
                translation: my,
            },
        },
        fallbackLng: "en",
        debug: false, // Set to true for development

        interpolation: {
            escapeValue: false, // not needed for react as it escapes by default
        },
    });

export default i18n;