import * as React from "react"; import { Dialog } from "@headlessui/react"; import { X } from "lucide-react"; import { appContext } from "../hooks/provider"; import { useConfigStore } from "../hooks/store"; import Footer from "./footer"; import "antd/dist/reset.css"; import SideBar from "./sidebar"; import ContentHeader from "./contentheader"; import { ConfigProvider, theme } from "antd"; const classNames = (...classes: (string | undefined | boolean)[]) => { return classes.filter(Boolean).join(" "); }; type Props = { title: string; link: string; children?: React.ReactNode; showHeader?: boolean; restricted?: boolean; meta?: any; }; const Layout = ({ meta, title, link, children, showHeader = true, restricted = false, }: Props) => { const { darkMode } = React.useContext(appContext); const { sidebar } = useConfigStore(); const { isExpanded } = sidebar; const [isMobileMenuOpen, setIsMobileMenuOpen] = React.useState(false); // Close mobile menu on route change React.useEffect(() => { setIsMobileMenuOpen(false); }, [link]); React.useEffect(() => { document.getElementsByTagName("html")[0].className = `${ darkMode === "dark" ? "dark bg-primary" : "light bg-primary" }`; }, [darkMode]); const layoutContent = (