diff --git a/src/app/cart/page.tsx b/src/app/cart/page.tsx index 7c8e45b..155a8a7 100644 --- a/src/app/cart/page.tsx +++ b/src/app/cart/page.tsx @@ -59,6 +59,13 @@ export default function CartPage() { const tax = subtotal * 0.08; const total = subtotal + shipping + tax; + const socialLinks = [ + { icon: Instagram, href: "https://instagram.com/umbra", ariaLabel: "Instagram" }, + { icon: Twitter, href: "https://twitter.com/umbra", ariaLabel: "Twitter" }, + { icon: TikTok, href: "https://tiktok.com/@umbra", ariaLabel: "TikTok" }, + { icon: Youtube, href: "https://youtube.com/@umbra", ariaLabel: "YouTube" }, + ]; + return ( >, href: "https://tiktok.com/@umbra", ariaLabel: "TikTok" }, - { icon: Youtube, href: "https://youtube.com/@umbra", ariaLabel: "YouTube" }, - ]} + socialLinks={socialLinks} /> diff --git a/src/app/page.tsx b/src/app/page.tsx index 46d2889..8340fbe 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -37,7 +37,7 @@ export default function HomePage() { const socialLinks = [ { icon: Instagram, href: "https://instagram.com/umbra", ariaLabel: "Instagram" }, { icon: Twitter, href: "https://twitter.com/umbra", ariaLabel: "Twitter" }, - { icon: TikTok as React.ComponentType>, href: "https://tiktok.com/@umbra", ariaLabel: "TikTok" }, + { icon: TikTok, href: "https://tiktok.com/@umbra", ariaLabel: "TikTok" }, { icon: Youtube, href: "https://youtube.com/@umbra", ariaLabel: "YouTube" }, ]; diff --git a/src/app/product/[id]/page.tsx b/src/app/product/[id]/page.tsx index ebdcd37..ef99212 100644 --- a/src/app/product/[id]/page.tsx +++ b/src/app/product/[id]/page.tsx @@ -4,6 +4,7 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered"; import FooterCard from "@/components/sections/footer/FooterCard"; import { Instagram, Twitter, Youtube, ShoppingCart, Heart } from "lucide-react"; +import Link from "next/link"; import { useState } from "react"; const TikTok = (props: React.SVGProps) => ( @@ -19,7 +20,28 @@ const TikTok = (props: React.SVGProps) => ( ); -export default function ProductPage() { +const products: { [key: string]: any } = { + "1": { + id: "1", name: "Classic Black Hoodie", price: "$89.99", image: "http://img.b2bpic.net/free-photo/medium-shot-man-posing-with-hoodie-indoors_23-2149359859.jpg", description: "Premium oversized black hoodie perfect for street style. Made with 100% organic cotton for maximum comfort.", sizes: ["XS", "S", "M", "L", "XL", "XXL"], + colors: ["Black", "Charcoal", "Navy"], + }, + "2": { + id: "2", name: "Vintage Denim Jacket", price: "$129.99", image: "http://img.b2bpic.net/free-photo/fashionable-woman-wearing-denim-jacket_23-2148859621.jpg", description: "Authentic vintage-inspired denim jacket with distressed details. Perfect layering piece for any streetwear outfit.", sizes: ["XS", "S", "M", "L", "XL"], + colors: ["Indigo", "Light Blue", "Black"], + }, + "3": { + id: "3", name: "Cargo Pants - Khaki", price: "$79.99", image: "http://img.b2bpic.net/free-photo/young-woman-wearing-trucker-hat_23-2149432334.jpg", description: "Multi-pocket cargo pants in breathable khaki. Comfortable and functional for everyday wear.", sizes: ["28", "30", "32", "34", "36"], + colors: ["Khaki", "Olive", "Black"], + }, +}; + +export default function ProductPage({ params }: { params: { id: string } }) { + const product = products[params.id] || products["1"]; + const [quantity, setQuantity] = useState(1); + const [selectedSize, setSelectedSize] = useState(product.sizes[0]); + const [selectedColor, setSelectedColor] = useState(product.colors[0]); + const [isFavorited, setIsFavorited] = useState(false); + const navItems = [ { name: "Shop", id: "products" }, { name: "Collections", id: "collections" }, @@ -28,9 +50,12 @@ export default function ProductPage() { { name: "Contact", id: "contact" }, ]; - const [isFavorited, setIsFavorited] = useState(false); - const [selectedSize, setSelectedSize] = useState("M"); - const [selectedColor, setSelectedColor] = useState("Black"); + const socialLinks = [ + { icon: Instagram, href: "https://instagram.com/umbra", ariaLabel: "Instagram" }, + { icon: Twitter, href: "https://twitter.com/umbra", ariaLabel: "Twitter" }, + { icon: TikTok, href: "https://tiktok.com/@umbra", ariaLabel: "TikTok" }, + { icon: Youtube, href: "https://youtube.com/@umbra", ariaLabel: "YouTube" }, + ]; return (
+ + ← Back to Shop + +
- {/* Product Image */} -
-
- Classic Black Hoodie -
- +
+ {product.name}
- {/* Product Details */} -
-
-

UMBRA COLLECTION

-

Classic Black Hoodie

-
- $89.99 - $129.99 - 30% OFF -
-
+
+

{product.name}

+

{product.price}

-
-

- Experience ultimate comfort and style with our Classic Black Hoodie. Crafted from premium materials, this versatile piece is perfect for urban exploration. Features a relaxed fit, warm lining, and timeless design that works with any streetwear ensemble. -

-
+

{product.description}

- {/* Size Selection */}
- -
- {["XS", "S", "M", "L", "XL", "XXL"].map((size) => ( + +
+ {product.sizes.map((size: string) => (
- {/* Color Selection */}
- -
- {["Black", "Grey", "Navy"].map((color) => ( + +
+ {product.colors.map((color: string) => (
- {/* Add to Cart */} +
+ +
+ + + {quantity} + + +
+
+
- -
- - {/* Product Info */} -
-
- SKU: - UMBRA-BH-001 -
-
- Material: - 100% Premium Cotton -
-
- Care: - Machine wash cold -
-
@@ -171,12 +191,7 @@ export default function ProductPage() { >, href: "https://tiktok.com/@umbra", ariaLabel: "TikTok" }, - { icon: Youtube, href: "https://youtube.com/@umbra", ariaLabel: "YouTube" }, - ]} + socialLinks={socialLinks} />
diff --git a/src/app/shop/page.tsx b/src/app/shop/page.tsx index ece15e3..13f86dc 100644 --- a/src/app/shop/page.tsx +++ b/src/app/shop/page.tsx @@ -34,7 +34,7 @@ export default function ShopPage() { const socialLinks = [ { icon: Instagram, href: "https://instagram.com/umbra", ariaLabel: "Instagram" }, { icon: Twitter, href: "https://twitter.com/umbra", ariaLabel: "Twitter" }, - { icon: TikTok as React.ComponentType>, href: "https://tiktok.com/@umbra", ariaLabel: "TikTok" }, + { icon: TikTok, href: "https://tiktok.com/@umbra", ariaLabel: "TikTok" }, { icon: Youtube, href: "https://youtube.com/@umbra", ariaLabel: "YouTube" }, ];