Merge version_2 into main #5

Merged
bender merged 5 commits from version_2 into main 2026-04-09 11:38:35 +00:00
5 changed files with 42 additions and 72 deletions

View File

@@ -1,15 +1,15 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import InlineImageSplitTextAbout from '@/components/sections/about/InlineImageSplitTextAbout';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
import FooterSimple from '@/components/sections/footer/FooterSimple';
export default function AboutPage() {
return (
<ThemeProvider>
<div id="nav"><NavbarStyleCentered navItems={[{name: "Home", id: "/"}, {name: "About", id: "/about"}, {name: "Contact", id: "/contact"}, {name: "Policy", id: "/policy"}]} brandName="Tradesman Hardware" /></div>
<InlineImageSplitTextAbout heading={[{type: 'text', content: 'About Tradesman Hardware'}]} />
<FooterBaseCard logoText="Tradesman Hardware" columns={[{title: "Links", items: [{label: "Home", href: "/"}]}]} />
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<div id="nav" data-section="nav"><NavbarLayoutFloatingOverlay /></div>
<InlineImageSplitTextAbout heading={[{type: 'text', content: 'About Tradesman Hardware'}]} useInvertedBackground={false} />
<FooterSimple columns={[{ title: "Links", items: [{ label: "Home", href: "/" }] }]} />
</ThemeProvider>
);
}

View File

@@ -1,15 +1,15 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import ContactCTA from '@/components/sections/contact/ContactCTA';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
import FooterSimple from '@/components/sections/footer/FooterSimple';
export default function ContactPage() {
return (
<ThemeProvider>
<div id="nav"><NavbarStyleCentered navItems={[{name: "Home", id: "/"}, {name: "About", id: "/about"}, {name: "Contact", id: "/contact"}, {name: "Policy", id: "/policy"}]} brandName="Tradesman Hardware" /></div>
<ContactCTA tag="Support" title="Get in Touch" description="Reach out for any hardware queries." buttons={[{text: "Email Us"}]} />
<FooterBaseCard logoText="Tradesman Hardware" columns={[{title: "Links", items: [{label: "Home", href: "/"}]}]} />
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<div id="nav" data-section="nav"><NavbarLayoutFloatingOverlay /></div>
<ContactCTA tag="Support" title="Get in Touch" description="Reach out for any hardware queries." buttons={[{text: "Email Us"}]} background={{ variant: "plain" }} useInvertedBackground={false} />
<FooterSimple columns={[{ title: "Links", items: [{ label: "Home", href: "/" }] }]} />
</ThemeProvider>
);
}

View File

@@ -1,15 +1,15 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import LegalSection from '@/components/legal/LegalSection';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
import FooterSimple from '@/components/sections/footer/FooterSimple';
export default function PolicyPage() {
return (
<ThemeProvider>
<div id="nav"><NavbarStyleCentered navItems={[{name: "Home", id: "/"}, {name: "About", id: "/about"}, {name: "Contact", id: "/contact"}, {name: "Policy", id: "/policy"}]} brandName="Tradesman Hardware" /></div>
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<div id="nav" data-section="nav"><NavbarLayoutFloatingOverlay /></div>
<LegalSection layout="page" title="Terms & Policy" sections={[{heading: "Policies", content: {type: 'paragraph', text: "Standard hardware store policies apply."}}]} />
<FooterBaseCard logoText="Tradesman Hardware" columns={[{title: "Links", items: [{label: "Home", href: "/"}]}]} />
<FooterSimple columns={[{ title: "Links", items: [{ label: "Home", href: "/" }] }]} />
</ThemeProvider>
);
}

View File

@@ -1,29 +1,11 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
export default function ProductDetailPage({ params }: { params: { id: string } }) {
export default function ProductDetailPage() {
return (
<ThemeProvider>
<ReactLenis root>
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "/" },
{ name: "Shop", id: "/shop" },
{ name: "About", id: "/#about" },
{ name: "Contact", id: "/#contact" },
]}
brandName="Tradesman Hardware"
/>
<div className="pt-40 pb-20 px-8">
<h1 className="text-4xl font-bold mb-4">Product Detail: {params.id}</h1>
<p>Product description, price details, and specification list will be displayed here.</p>
</div>
<FooterBaseCard logoText="Tradesman Hardware" columns={[]} />
</ReactLenis>
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<div id="nav" data-section="nav"><NavbarLayoutFloatingOverlay /></div>
</ThemeProvider>
);
}
}

View File

@@ -1,39 +1,27 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import ProductCardOne from '@/components/sections/product/ProductCardOne';
import FooterSimple from '@/components/sections/footer/FooterSimple';
export default function ShopPage() {
return (
<ThemeProvider>
<ReactLenis root>
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "/" },
{ name: "Shop", id: "/shop" },
{ name: "About", id: "/#about" },
{ name: "Contact", id: "/#contact" },
]}
brandName="Tradesman Hardware"
/>
<div className="pt-32 pb-20">
<ProductCardTwo
title="Our Product Catalog"
description="Browse our full selection of professional-grade hardware and tools."
gridVariant="four-items-2x2-equal-grid"
animationType="slide-up"
products={[
{ id: "s1", brand: "ProSeries", name: "Heavy Duty Drill", price: "R 2,499", rating: 5, reviewCount: "128", imageSrc: "http://img.b2bpic.net/free-photo/creative-man-working-wood-workshop_23-2148970802.jpg" },
{ id: "s2", brand: "PaintMaster", name: "Industrial Sprayer", price: "R 1,850", rating: 4, reviewCount: "85", imageSrc: "http://img.b2bpic.net/free-photo/high-angle-painting-brushes-with-paint-cans_23-2148591316.jpg" },
]}
textboxLayout="default"
/>
</div>
<FooterBaseCard logoText="Tradesman Hardware" columns={[]} />
</ReactLenis>
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<div id="nav" data-section="nav"><NavbarLayoutFloatingOverlay /></div>
<ProductCardOne
title="Our Product Catalog"
description="Browse our full selection of professional-grade hardware and tools."
gridVariant="four-items-2x2-equal-grid"
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
products={[
{ id: "s1", name: "Heavy Duty Drill", price: "R 2,499", imageSrc: "http://img.b2bpic.net/free-photo/creative-man-working-wood-workshop_23-2148970802.jpg" },
{ id: "s2", name: "Industrial Sprayer", price: "R 1,850", imageSrc: "http://img.b2bpic.net/free-photo/high-angle-painting-brushes-with-paint-cans_23-2148591316.jpg" },
{ id: "s3", name: "Hammer Set", price: "R 500", imageSrc: "http://img.b2bpic.net/free-photo/creative-man-working-wood-workshop_23-2148970802.jpg" }
]}
/>
<FooterSimple columns={[]} />
</ThemeProvider>
);
}
}