From cd614c3c2ddf184b2644c3e05aba0e71d310812f Mon Sep 17 00:00:00 2001 From: bender Date: Sun, 5 Apr 2026 15:11:09 +0000 Subject: [PATCH] Add src/app/cart/page.tsx --- src/app/cart/page.tsx | 77 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 src/app/cart/page.tsx diff --git a/src/app/cart/page.tsx b/src/app/cart/page.tsx new file mode 100644 index 0000000..b39225b --- /dev/null +++ b/src/app/cart/page.tsx @@ -0,0 +1,77 @@ +"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 { useState } from "react"; + +export default function CartPage() { + const [cartItems, setCartItems] = useState([ + { id: "1", name: "Pro Wireless Headphones", price: 199, quantity: 1 }, + { id: "2", name: "Modern Smartwatch", price: 299, quantity: 1 }, + ]); + + const total = cartItems.reduce((acc, item) => acc + item.price * item.quantity, 0); + + const updateQuantity = (id: string, delta: number) => { + setCartItems(prev => prev.map(item => + item.id === id ? { ...item, quantity: Math.max(1, item.quantity + delta) } : item + )); + }; + + return ( + + + + +
+

Your Shopping Cart

+
+ {cartItems.map(item => ( +
+
+

{item.name}

+

${item.price}

+
+
+ + {item.quantity} + +
+
+ ))} +
+

Total: ${total}

+ +
+
+
+ + +
+
+ ); +} \ No newline at end of file