diff --git a/src/app/(main)/layout.tsx b/src/app/(main)/layout.tsx new file mode 100644 index 0000000..a420769 --- /dev/null +++ b/src/app/(main)/layout.tsx @@ -0,0 +1,81 @@ +"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 "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"; + +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 ( + + + + + + + + + + {children} + + ); +} diff --git a/src/app/page.tsx b/src/app/(main)/page.tsx similarity index 76% rename from src/app/page.tsx rename to src/app/(main)/page.tsx index be964f5..6bb8135 100644 --- a/src/app/page.tsx +++ b/src/app/(main)/page.tsx @@ -1,9 +1,15 @@ import Image from "next/image"; -import Header from "../components/Header"; -import Hero from "../components/Hero"; -import Footer from "../components/Footer"; -import Homepage from "../components/Homepage"; -import { slickMultipages } from "../data/menu"; +import Header from "@/components/Header"; +import Hero from "@/components/Hero"; +import Footer from "@/components/Footer"; +import Homepage from "@/components/Homepage"; +import { slickMultipages } from "@/data/menu"; + +export const metadata = { + title: "Cochise Oncology", + description: + "Resonance — One & Multi Page React Nextjs Creative Template", +}; export default function Home() { return ( diff --git a/src/app/slick-about-dark/page.tsx b/src/app/(main)/slick-about-dark/page.tsx similarity index 100% rename from src/app/slick-about-dark/page.tsx rename to src/app/(main)/slick-about-dark/page.tsx diff --git a/src/app/slick-about/page.tsx b/src/app/(main)/slick-about/page.tsx similarity index 100% rename from src/app/slick-about/page.tsx rename to src/app/(main)/slick-about/page.tsx diff --git a/src/app/slick-blog-single/[id]/page.tsx b/src/app/(main)/slick-blog-single/[id]/page.tsx similarity index 100% rename from src/app/slick-blog-single/[id]/page.tsx rename to src/app/(main)/slick-blog-single/[id]/page.tsx diff --git a/src/app/slick-blog/page.tsx b/src/app/(main)/slick-blog/page.tsx similarity index 100% rename from src/app/slick-blog/page.tsx rename to src/app/(main)/slick-blog/page.tsx diff --git a/src/app/slick-contact-dark/page.tsx b/src/app/(main)/slick-contact-dark/page.tsx similarity index 100% rename from src/app/slick-contact-dark/page.tsx rename to src/app/(main)/slick-contact-dark/page.tsx diff --git a/src/app/slick-contact/page.tsx b/src/app/(main)/slick-contact/page.tsx similarity index 100% rename from src/app/slick-contact/page.tsx rename to src/app/(main)/slick-contact/page.tsx diff --git a/src/app/slick-portfolio/page.tsx b/src/app/(main)/slick-portfolio/page.tsx similarity index 100% rename from src/app/slick-portfolio/page.tsx rename to src/app/(main)/slick-portfolio/page.tsx diff --git a/src/app/slick-services/page.tsx b/src/app/(main)/slick-services/page.tsx similarity index 100% rename from src/app/slick-services/page.tsx rename to src/app/(main)/slick-services/page.tsx diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 7ff4745..2953721 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,81 +1,7 @@ -"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 "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"; - export default function RootLayout({ 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 ( - - - - - - - - - - {children} - - ); + return <>{children}; }