|
- import { I18nProvider } from "@/i18n";
- import { authOptions } from "@/config/authConfig";
- import { AUTH, hasAbility } from "@/authorities";
- import { getServerSession } from "next-auth";
- import { redirect } from "next/navigation";
-
- /** FP-MTMS Version Checklist | Functions Ref. No. 67 | v1.0.0 | 2026-08-13 */
- export default async function M18SyncLayout({
- children,
- }: {
- children: React.ReactNode;
- }) {
- const session = await getServerSession(authOptions);
- const abilities = session?.user?.abilities ?? [];
- const canAccess =
- hasAbility(abilities, AUTH.M18_SYNC) || hasAbility(abilities, AUTH.ADMIN);
-
- if (!canAccess) {
- redirect("/dashboard");
- }
-
- return (
- <I18nProvider namespaces={["m18Sync", "navigation", "common"]}>
- {children}
- </I18nProvider>
- );
- }
|