62 lines
2.4 KiB
TypeScript
62 lines
2.4 KiB
TypeScript
"use client";
|
|
|
|
import ReactLenis from "lenis/react";
|
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
|
import { useBlogPosts } from "@/hooks/useBlogPosts";
|
|
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
|
import BlogCardOne from "@/components/sections/blog/BlogCardOne";
|
|
|
|
export default function BlogPage() {
|
|
const { posts, isLoading } = useBlogPosts();
|
|
|
|
return (
|
|
<ThemeProvider
|
|
defaultButtonVariant="text-stagger"
|
|
defaultTextAnimation="entrance-slide"
|
|
borderRadius="soft"
|
|
contentWidth="mediumLarge"
|
|
sizing="medium"
|
|
background="noiseDiagonalGradient"
|
|
cardStyle="layered-gradient"
|
|
primaryButtonStyle="double-inset"
|
|
secondaryButtonStyle="layered"
|
|
headingFontWeight="bold"
|
|
>
|
|
<ReactLenis root>
|
|
<div id="nav" data-section="nav">
|
|
<NavbarStyleCentered
|
|
navItems={[
|
|
{ name: "Home", id: "/" },
|
|
{ name: "Services", id: "/#services" },
|
|
{ name: "Pricing", id: "/#pricing" },
|
|
{ name: "Team", id: "/#team" },
|
|
{ name: "Reviews", id: "/#testimonials" },
|
|
{ name: "FAQ", id: "/#faq" },
|
|
]}
|
|
button={{ text: "Book Now", href: "/#contact" }}
|
|
brandName="Royal Parlor"
|
|
className="relative z-50"
|
|
/>
|
|
</div>
|
|
|
|
{isLoading ? (
|
|
<div className="w-content-width mx-auto py-20 text-center">
|
|
<p className="text-foreground">Loading posts...</p>
|
|
</div>
|
|
) : (
|
|
<div id="blog" data-section="blog">
|
|
<BlogCardOne
|
|
blogs={posts}
|
|
title="Latest Articles"
|
|
description="Insights and updates from our team"
|
|
animationType="slide-up"
|
|
textboxLayout="default"
|
|
useInvertedBackground={false}
|
|
/>
|
|
</div>
|
|
)}
|
|
</ReactLenis>
|
|
</ThemeProvider>
|
|
);
|
|
}
|