Files
nysoure/frontend/src/utils/i18n.ts
2025-08-03 16:04:24 +08:00

22 lines
460 B
TypeScript

import { createContext, useContext, useMemo } from "react";
function t(data: any, language: string) {
return (key: string) => {
return data[language]?.["translation"]?.[key] || key;
};
}
export const i18nContext = createContext<any>({});
export function useTranslation() {
const data = useContext(i18nContext);
const userLang = navigator.language;
return useMemo(
() => ({
t: t(data, userLang),
}),
[data, userLang],
);
}