]> Untitled Git - lemmy-ui.git/blob - src/shared/i18next.ts
Don't restore scroll position on page refresh. Fixes #186
[lemmy-ui.git] / src / shared / i18next.ts
1 import i18next, { i18nTyped } from "i18next";
2 import { getLanguage } from "./utils";
3 import { en } from "./translations/en";
4 import { el } from "./translations/el";
5 import { eu } from "./translations/eu";
6 import { eo } from "./translations/eo";
7 import { es } from "./translations/es";
8 import { de } from "./translations/de";
9 import { fr } from "./translations/fr";
10 import { sv } from "./translations/sv";
11 import { ru } from "./translations/ru";
12 import { zh } from "./translations/zh";
13 import { nl } from "./translations/nl";
14 import { it } from "./translations/it";
15 import { fi } from "./translations/fi";
16 import { ca } from "./translations/ca";
17 import { fa } from "./translations/fa";
18 import { hi } from "./translations/hi";
19 import { pl } from "./translations/pl";
20 import { pt_BR } from "./translations/pt_BR";
21 import { ja } from "./translations/ja";
22 import { ka } from "./translations/ka";
23 import { gl } from "./translations/gl";
24 import { tr } from "./translations/tr";
25 import { hu } from "./translations/hu";
26 import { uk } from "./translations/uk";
27 import { sq } from "./translations/sq";
28 import { km } from "./translations/km";
29 import { ga } from "./translations/ga";
30 import { sr_Latn } from "./translations/sr_Latn";
31 import { da } from "./translations/da";
32 import { oc } from "./translations/oc";
33 import { hr } from "./translations/hr";
34 import { th } from "./translations/th";
35 import { bg } from "./translations/bg";
36 import { ar } from "./translations/ar";
37 import { ko } from "./translations/ko";
38
39 // https://github.com/nimbusec-oss/inferno-i18next/blob/master/tests/T.test.js#L66
40 const resources = {
41   en,
42   el,
43   eu,
44   eo,
45   es,
46   ka,
47   hi,
48   de,
49   zh,
50   fr,
51   sv,
52   ru,
53   nl,
54   it,
55   fi,
56   ca,
57   fa,
58   pl,
59   pt_BR,
60   ja,
61   gl,
62   tr,
63   hu,
64   uk,
65   sq,
66   km,
67   ga,
68   sr_Latn,
69   da,
70   oc,
71   hr,
72   th,
73   bg,
74   ar,
75   ko
76 };
77
78 function format(value: any, format: any): any {
79   return format === "uppercase" ? value.toUpperCase() : value;
80 }
81
82 i18next.init({
83   debug: false,
84   // load: 'languageOnly',
85
86   // initImmediate: false,
87   lng: getLanguage(),
88   fallbackLng: "en",
89   resources,
90   interpolation: { format },
91 });
92
93 export const i18n = i18next as i18nTyped;
94
95 export { resources };