'use client' import { useEffect, useState } from 'react' import type { Lang } from './i18n' /** The current language (html[data-lang], set before the first paint); re-reads when the switch is used. */ export function useLang(): Lang { const [lang, setLang] = useState('ru') useEffect(() => { const read = () => { const html = document.documentElement const current: Lang = html.dataset.lang === 'en' ? 'en' : 'ru' setLang(current) } read() window.addEventListener('langchange', read) return () => window.removeEventListener('langchange', read) }, []) return lang }