language implementation MERMS
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
import React, { createContext, useContext } from 'react'
|
||||
|
||||
const TranslationContext = createContext({ messages: {}, locale: 'en' })
|
||||
|
||||
export function NextIntlClientProvider({ locale, messages, children, timeZone }) {
|
||||
return React.createElement(
|
||||
TranslationContext.Provider,
|
||||
{ value: { locale: locale || 'en', messages: messages || {} } },
|
||||
children
|
||||
)
|
||||
}
|
||||
|
||||
export function useTranslations(namespace) {
|
||||
const { messages } = useContext(TranslationContext)
|
||||
return function t(key) {
|
||||
const ns = messages?.[namespace]
|
||||
if (!ns) return key
|
||||
return ns[key] ?? key
|
||||
}
|
||||
}
|
||||
|
||||
export function useLocale() {
|
||||
const { locale } = useContext(TranslationContext)
|
||||
return locale
|
||||
}
|
||||
Reference in New Issue
Block a user