| 'use client' |
|
|
| import type { FC } from 'react' |
| import React, { useEffect } from 'react' |
| import { changeLanguage } from '@/i18n/i18next-config' |
| import I18NContext from '@/context/i18n' |
| import type { Locale } from '@/i18n' |
| import { setLocaleOnClient } from '@/i18n' |
|
|
| export type II18nProps = { |
| locale: Locale |
| children: React.ReactNode |
| } |
| const I18n: FC<II18nProps> = ({ |
| locale, |
| children, |
| }) => { |
| useEffect(() => { |
| changeLanguage(locale) |
| }, [locale]) |
|
|
| return ( |
| <I18NContext.Provider value={{ |
| locale, |
| i18n: {}, |
| setLocaleOnClient, |
| }}> |
| {children} |
| </I18NContext.Provider> |
| ) |
| } |
| export default React.memo(I18n) |
|
|