UNPKG

@ducor/react

Version:

admin template ui interface

31 lines (30 loc) 1.09 kB
import { jsx as _jsx } from "react/jsx-runtime"; // src/contexts/LanguageContext.tsx import { createContext, useState, useContext, useCallback, } from "react"; // Create the context with a default value const LanguageContext = createContext(undefined); const LanguageProvider = ({ children }) => { const [language, setLanguage] = useState("en"); const changeLanguage = (lang) => { setLanguage(lang); }; return (_jsx(LanguageContext.Provider, { value: { language, changeLanguage }, children: children })); }; const useTrans = () => { const context = useContext(LanguageContext); if (!context) { throw new Error("useTranslate must be used within a LanguageProvider"); } // const translations = { // {} // }; // console.log('context', context); const { language } = context; const t = useCallback((key) => { // console.log('translate', key); return key; // return translations[language][key] || key; }, [language]); return { t }; }; export { LanguageProvider, LanguageContext, useTrans };