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