66 lines
2.7 KiB
TypeScript
66 lines
2.7 KiB
TypeScript
"use client";
|
|
|
|
import ReactLenis from "lenis/react";
|
|
import BlogCardTwo from '@/components/sections/blog/BlogCardTwo';
|
|
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
|
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
|
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
|
import { useBlogPosts } from "@/hooks/useBlogPosts";
|
|
|
|
export default function BlogPage() {
|
|
const { posts, isLoading } = useBlogPosts();
|
|
|
|
return (
|
|
<ThemeProvider
|
|
defaultButtonVariant="elastic-effect"
|
|
defaultTextAnimation="background-highlight"
|
|
borderRadius="soft"
|
|
contentWidth="smallMedium"
|
|
sizing="largeSmall"
|
|
background="floatingGradient"
|
|
cardStyle="gradient-radial"
|
|
primaryButtonStyle="double-inset"
|
|
secondaryButtonStyle="solid"
|
|
headingFontWeight="normal"
|
|
>
|
|
<ReactLenis root>
|
|
<div className="min-h-screen bg-background">
|
|
<NavbarStyleCentered
|
|
brandName="iPhone Store"
|
|
navItems={[
|
|
{ name: "Home", id: "/" },
|
|
{ name: "Products", id: "products" },
|
|
{ name: "Pricing", id: "pricing" },
|
|
{ name: "Features", id: "features" },
|
|
{ name: "Reviews", id: "reviews" },
|
|
{ name: "Contact", id: "contact" }
|
|
]}
|
|
button={{ text: "Shop Now", href: "products" }}
|
|
/>
|
|
|
|
{isLoading ? (
|
|
<div className="w-content-width mx-auto py-20 text-center">
|
|
<p className="text-foreground">Loading posts...</p>
|
|
</div>
|
|
) : (
|
|
<BlogCardTwo
|
|
blogs={posts}
|
|
title="Latest iPhone Insights"
|
|
description="Stay updated with the latest iPhone news, reviews, and technology insights"
|
|
textboxLayout="default"
|
|
useInvertedBackground="noInvert"
|
|
carouselMode="buttons"
|
|
animationType="slide-up"
|
|
/>
|
|
)}
|
|
|
|
<FooterLogoReveal
|
|
logoText="iPhone Store"
|
|
leftLink={{ text: "Privacy Policy", href: "#" }}
|
|
rightLink={{ text: "Terms of Service", href: "#" }}
|
|
/>
|
|
</div>
|
|
</ReactLenis>
|
|
</ThemeProvider>
|
|
);
|
|
} |