| 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 | |
| } | |