refactor(i18n): remove translation provider facade
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -4,7 +4,6 @@ import { getMessages, setRequestLocale } from "next-intl/server";
|
||||
import { notFound } from "next/navigation";
|
||||
import Header from "@/components/web/Header";
|
||||
import Footer from "@/components/web/Footer";
|
||||
import { TranslationProvider } from "@/components/providers/TranslationProvider";
|
||||
import { ThemeProvider } from "@/components/web/theme-provider";
|
||||
import { routing } from "@/i18n/routing";
|
||||
import JsonLd from "@/components/seo/JsonLd";
|
||||
@@ -57,11 +56,9 @@ export default async function RootLayout({
|
||||
storageKey="theme-preference"
|
||||
>
|
||||
<NextIntlClientProvider locale={lang} messages={messages}>
|
||||
<TranslationProvider>
|
||||
<Header />
|
||||
<div className="flex-1">{children}</div>
|
||||
<Footer />
|
||||
</TranslationProvider>
|
||||
<Header />
|
||||
<div className="flex-1">{children}</div>
|
||||
<Footer />
|
||||
</NextIntlClientProvider>
|
||||
</ThemeProvider>
|
||||
</body>
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
"use client";
|
||||
|
||||
import { useLocale as useNextIntlLocale, useMessages as useNextIntlMessages } from "next-intl";
|
||||
import type { Messages } from "@/types/messages";
|
||||
import type { Locale } from "@/constants/i18n-config";
|
||||
|
||||
type TranslationContextValue = {
|
||||
messages: Messages;
|
||||
lang: string;
|
||||
};
|
||||
|
||||
interface TranslationProviderProps {
|
||||
children: React.ReactNode;
|
||||
}
|
||||
|
||||
export function TranslationProvider({children}: TranslationProviderProps) {
|
||||
return <>{children}</>;
|
||||
}
|
||||
|
||||
export function useMessages() {
|
||||
return useNextIntlMessages() as Messages;
|
||||
}
|
||||
|
||||
export function useLang() {
|
||||
return useNextIntlLocale() as Locale;
|
||||
}
|
||||
|
||||
export function useI18n() {
|
||||
return {
|
||||
messages: useMessages(),
|
||||
lang: useLang(),
|
||||
} satisfies TranslationContextValue;
|
||||
}
|
||||
Reference in New Issue
Block a user