"use client"; import { usePathname } from "next/navigation"; import { useEffect } from "react"; import { init_wow } from "@/utils/initWow"; import { parallaxMouseMovement, parallaxScroll } from "@/utils/parallax"; import { headerChangeOnScroll } from "@/utils/changeHeaderOnScroll"; import "@/app/globals.css"; import "swiper/css"; import "jarallax/dist/jarallax.min.css"; import "swiper/css/effect-fade"; import "react-modal-video/css/modal-video.css"; import "photoswipe/dist/photoswipe.css"; import "tippy.js/dist/tippy.css"; import "@public/assets/css/styles.css"; import Image from "next/image"; import Header from "@/components/Header"; import Footer from "@/components/Footer"; import { navMenuData } from "@/data/menu"; export default function MainLayout({ children, }: Readonly<{ children: React.ReactNode; }>) { const path = usePathname(); useEffect(() => { init_wow(); parallaxMouseMovement(); const mainNav = document.querySelector(".main-nav"); if (mainNav?.classList.contains("transparent")) { mainNav.classList.add("js-transparent"); } else if (!mainNav?.classList?.contains("dark")) { mainNav?.classList.add("js-no-transparent-white"); } window.addEventListener("scroll", headerChangeOnScroll); parallaxScroll(); return () => { window.removeEventListener("scroll", headerChangeOnScroll); }; }, [path]); useEffect(() => { if (typeof window !== "undefined") { // Import the script only on the client side // @ts-ignore import("bootstrap/dist/js/bootstrap.esm").then(() => { // Module is imported, you can access any exported functionality if }); } }, []); return ( <html lang="en" className="no-mobile no-touch"> <head> <link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap" rel="stylesheet" /> <link href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;1,400;1,500&display=swap" rel="stylesheet" /> <link href="https://fonts.googleapis.com/css2?family=Epilogue:wght@400;500&family=Poppins&display=swap" rel="stylesheet" /> <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" /> <link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap" rel="stylesheet" /> <link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;1,400&display=swap" rel="stylesheet" /> </head> <body className="appear-animate body"> <div className="theme-slick"> <div className="page" id="top"> <nav className="main-nav dark transparent stick-fixed wow-menubar wch-unset"> <Header links={navMenuData} /> </nav> <main id="main">{children}</main> <footer className="page-section dark footer bg-dark-2 light-content position-relative overflow-hidden pb-30"> <div className="bg-shape-4 opacity-003"> <Image src="/assets/images/demo-slick/bg-shape-4.svg" width={1600} height={268} alt="" /> </div> <Footer /> </footer> </div> </div> </body> </html> ); }