lemmy/ui/src/i18next.ts

62 lines
1.4 KiB
TypeScript
Raw Normal View History

2020-01-06 16:22:51 +00:00
import i18next from 'i18next';
import { getLanguage } from './utils';
2020-02-28 21:18:47 +00:00
import { en } from './translations/en';
import { el } from './translations/el';
import { eu } from './translations/eu';
2020-02-28 21:18:47 +00:00
import { eo } from './translations/eo';
import { es } from './translations/es';
import { de } from './translations/de';
import { fr } from './translations/fr';
import { sv } from './translations/sv';
import { ru } from './translations/ru';
import { zh } from './translations/zh';
import { nl } from './translations/nl';
import { it } from './translations/it';
import { fi } from './translations/fi';
import { ca } from './translations/ca';
import { fa } from './translations/fa';
2020-05-02 01:51:04 +00:00
import { hi } from './translations/hi';
import { pt_BR } from './translations/pt_BR';
import { ja } from './translations/ja';
2020-05-02 01:51:04 +00:00
import { ka } from './translations/ka';
2020-02-28 21:18:47 +00:00
// https://github.com/nimbusec-oss/inferno-i18next/blob/master/tests/T.test.js#L66
const resources = {
en,
el,
eu,
2020-02-28 21:18:47 +00:00
eo,
es,
2020-05-02 01:51:04 +00:00
ka,
hi,
2020-02-28 21:18:47 +00:00
de,
zh,
fr,
sv,
ru,
nl,
it,
fi,
ca,
fa,
pt_BR,
ja,
2020-02-28 21:18:47 +00:00
};
2020-01-26 20:49:47 +00:00
function format(value: any, format: any, lng: any): any {
return format === 'uppercase' ? value.toUpperCase() : value;
}
2020-02-28 21:18:47 +00:00
i18next.init({
debug: false,
// load: 'languageOnly',
2020-02-28 21:18:47 +00:00
// initImmediate: false,
lng: getLanguage(),
fallbackLng: 'en',
resources,
interpolation: { format },
});
2020-01-06 16:22:51 +00:00
export { i18next as i18n, resources };