https://dev.kronoz.win/r/marzneshin.git
| 1 |
6badc43 |
Mrdn |
2y ago |
import dayjs from 'dayjs'; |
| 2 |
6badc43 |
Mrdn |
2y ago |
import i18n from 'i18next'; |
| 3 |
6badc43 |
Mrdn |
2y ago |
import LanguageDetector from 'i18next-browser-languagedetector'; |
| 4 |
6badc43 |
Mrdn |
2y ago |
import HttpApi from 'i18next-http-backend'; |
| 5 |
6badc43 |
Mrdn |
2y ago |
import { initReactI18next } from 'react-i18next'; |
| 6 |
7b6fa39 |
Mrdn |
2y ago |
import { joinPaths } from '@remix-run/router'; |
| 7 |
6badc43 |
Mrdn |
2y ago |
|
| 8 |
6badc43 |
Mrdn |
2y ago |
declare module 'i18next' { |
| 9 |
6badc43 |
Mrdn |
2y ago |
interface CustomTypeOptions { |
| 10 |
6badc43 |
Mrdn |
2y ago |
returnNull: false; |
| 11 |
6badc43 |
Mrdn |
2y ago |
} |
| 12 |
6badc43 |
Mrdn |
2y ago |
} |
| 13 |
6badc43 |
Mrdn |
2y ago |
|
| 14 |
6badc43 |
Mrdn |
2y ago |
i18n |
| 15 |
6badc43 |
Mrdn |
2y ago |
.use(LanguageDetector) |
| 16 |
6badc43 |
Mrdn |
2y ago |
.use(initReactI18next) |
| 17 |
6badc43 |
Mrdn |
2y ago |
.use(HttpApi) |
| 18 |
6badc43 |
Mrdn |
2y ago |
.init( |
| 19 |
6badc43 |
Mrdn |
2y ago |
{ |
| 20 |
6badc43 |
Mrdn |
2y ago |
debug: import.meta.env.NODE_ENV === 'development', |
| 21 |
6badc43 |
Mrdn |
2y ago |
returnNull: false, |
| 22 |
6badc43 |
Mrdn |
2y ago |
fallbackLng: 'en', |
| 23 |
6badc43 |
Mrdn |
2y ago |
interpolation: { |
| 24 |
6badc43 |
Mrdn |
2y ago |
escapeValue: false, |
| 25 |
6badc43 |
Mrdn |
2y ago |
}, |
| 26 |
6badc43 |
Mrdn |
2y ago |
react: { |
| 27 |
6badc43 |
Mrdn |
2y ago |
useSuspense: false, |
| 28 |
6badc43 |
Mrdn |
2y ago |
}, |
| 29 |
6badc43 |
Mrdn |
2y ago |
load: 'languageOnly', |
| 30 |
6badc43 |
Mrdn |
2y ago |
detection: { |
| 31 |
6badc43 |
Mrdn |
2y ago |
caches: ['localStorage', 'sessionStorage', 'cookie'], |
| 32 |
6badc43 |
Mrdn |
2y ago |
}, |
| 33 |
6badc43 |
Mrdn |
2y ago |
backend: { |
| 34 |
7b6fa39 |
Mrdn |
2y ago |
loadPath: joinPaths([import.meta.env.BASE_URL, 'locales/{{lng}}.json']), |
| 35 |
6badc43 |
Mrdn |
2y ago |
}, |
| 36 |
3b7feef |
Mrdn |
2y ago |
supportedLngs: ['en', 'ku-kur', 'ku-sor', 'ku-sor-latin', 'fa', 'ru'], |
| 37 |
6badc43 |
Mrdn |
2y ago |
}, |
| 38 |
6badc43 |
Mrdn |
2y ago |
function() { |
| 39 |
6badc43 |
Mrdn |
2y ago |
dayjs.locale(i18n.language); |
| 40 |
6badc43 |
Mrdn |
2y ago |
} |
| 41 |
6badc43 |
Mrdn |
2y ago |
); |
| 42 |
6badc43 |
Mrdn |
2y ago |
|
| 43 |
6badc43 |
Mrdn |
2y ago |
i18n.on('languageChanged', (lng) => { |
| 44 |
6badc43 |
Mrdn |
2y ago |
dayjs.locale(lng); |
| 45 |
6badc43 |
Mrdn |
2y ago |
}); |
| 46 |
6badc43 |
Mrdn |
2y ago |
|
| 47 |
6badc43 |
Mrdn |
2y ago |
export default i18n; |