"use client"; import React from "react"; import clsx from "clsx"; import { usePathname } from "next/navigation"; import { PropsBaseLayout, TContextBaseLayout } from "./interface"; import Header from "./componets/Header"; import Navbar from "./componets/Navbar"; import RequireAuth from "@/components/protected/RequiredAuth"; export const ContextBaseLayout = React.createContext({}); const BaseLayout = ({ children, title, breadcrumb }: PropsBaseLayout) => { const [showFull, setShowFull] = React.useState(true); const [openMenuMobile, setOpenMenuMobile] = React.useState(false); const pathname = usePathname(); // Blueprint layout đặc biệt const isBlueprint = pathname.startsWith("/blueprint"); return (
{/* ========================= OVERLAY MOBILE ========================= */} {!isBlueprint && (
setOpenMenuMobile(false)} /> )} {/* ========================= SIDEBAR / NAVBAR ========================= */} {!isBlueprint && ( )} {/* ========================= HEADER ========================= */}
{/* ========================= MAIN CONTENT ========================= */}
{children}
); }; export default BaseLayout;