| import Cookies from 'js-cookie' |
|
|
| import { changeLanguage } from '@/i18n/i18next-config' |
| import { LOCALE_COOKIE_NAME } from '@/config' |
| import { LanguagesSupported } from '@/i18n/language' |
|
|
| export const i18n = { |
| defaultLocale: 'en-US', |
| locales: LanguagesSupported, |
| } as const |
|
|
| export type Locale = typeof i18n['locales'][number] |
|
|
| export const setLocaleOnClient = (locale: Locale, reloadPage = true) => { |
| Cookies.set(LOCALE_COOKIE_NAME, locale) |
| changeLanguage(locale) |
| reloadPage && location.reload() |
| } |
|
|
| export const getLocaleOnClient = (): Locale => { |
| return Cookies.get(LOCALE_COOKIE_NAME) as Locale || i18n.defaultLocale |
| } |
|
|