feat(translation): integrate useT hook for improved translation handling across components

This commit is contained in:
alexsparkes
2026-01-24 18:07:25 +00:00
parent 30aa53fdd7
commit 6ca19fc48d
10 changed files with 268 additions and 279 deletions

View File

@@ -7,15 +7,17 @@ const TranslationContext = createContext();
export function TranslationProvider({ children, initialLanguage }) {
const [currentLanguage, setCurrentLanguage] = useState(initialLanguage);
const i18nInstance = useRef(null);
const i18nInstance = useRef(initTranslations(initialLanguage));
// Initialize i18n instance once
// Update i18n instance when language changes
useEffect(() => {
i18nInstance.current = initTranslations(currentLanguage);
if (currentLanguage !== initialLanguage) {
i18nInstance.current = initTranslations(currentLanguage);
}
variables.language = i18nInstance.current;
variables.languagecode = currentLanguage;
document.documentElement.lang = currentLanguage.replace('_', '-');
}, [currentLanguage]);
}, [currentLanguage, initialLanguage]);
// Change language function
const changeLanguage = useCallback((newLanguage) => {