diff --git a/src/app/cart/page.tsx b/src/app/cart/page.tsx index f10bf7c..a853a82 100644 --- a/src/app/cart/page.tsx +++ b/src/app/cart/page.tsx @@ -8,7 +8,7 @@ import Link from "next/link"; import { useState } from "react"; import type { LucideIcon } from "lucide-react"; -const TikTok: LucideIcon = (props: React.SVGProps) => ( +const TikTok = (props: React.SVGProps) => ( ) => ( > -) as LucideIcon; +) as unknown as LucideIcon; export default function CartPage() { const navItems = [ diff --git a/src/app/page.tsx b/src/app/page.tsx index 9779a22..b15d97b 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -13,7 +13,7 @@ import Link from "next/link"; import { Sparkles, TrendingUp, Instagram, Twitter, Youtube } from "lucide-react"; import type { LucideIcon } from "lucide-react"; -const TikTok: LucideIcon = (props: React.SVGProps) => ( +const TikTok = (props: React.SVGProps) => ( ) => ( > -) as LucideIcon; +) as unknown as LucideIcon; export default function HomePage() { const navItems = [ diff --git a/src/app/product/[id]/page.tsx b/src/app/product/[id]/page.tsx index c8692e8..9d97dd5 100644 --- a/src/app/product/[id]/page.tsx +++ b/src/app/product/[id]/page.tsx @@ -3,12 +3,11 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered"; import FooterCard from "@/components/sections/footer/FooterCard"; -import { Instagram, Twitter, Youtube, Heart, ShoppingCart } from "lucide-react"; +import { Instagram, Twitter, Youtube } from "lucide-react"; import Link from "next/link"; -import { useState } from "react"; import type { LucideIcon } from "lucide-react"; -const TikTok: LucideIcon = (props: React.SVGProps) => ( +const TikTok = (props: React.SVGProps) => ( ) => ( > -) as LucideIcon; +) as unknown as LucideIcon; + +const productDetails: { [key: string]: { name: string; price: number; image: string; description: string; sizes: string[]; colors: string[] } } = { + "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 hoodie crafted from 100% organic cotton. Perfect for layering or wearing solo. Features a kangaroo pocket and adjustable drawstrings. Comfortable, durable, and timeless.", sizes: ["XS", "S", "M", "L", "XL", "XXL"], + colors: ["Black", "Charcoal", "Navy", "White"], + }, + "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 a modern fit. Featuring button closure, multiple pockets, and classic denim construction. A versatile staple for any wardrobe.", sizes: ["XS", "S", "M", "L", "XL"], + colors: ["Indigo", "Light Blue", "Black"], + }, + "3": { + name: "Cargo Pants - Khaki", price: 79.99, + image: "http://img.b2bpic.net/free-photo/young-woman-wearing-trucker-hat_23-2149432334.jpg", description: "Comfortable cargo pants with multiple pockets and adjustable straps. Perfect for everyday wear with a practical, streetwear aesthetic. Premium cotton blend fabric.", sizes: ["XS", "S", "M", "L", "XL", "XXL"], + colors: ["Khaki", "Black", "Olive"], + }, +}; + +export default function ProductPage({ params }: { params: { id: string } }) { + const product = productDetails[params.id as keyof typeof productDetails] || productDetails["1"]; -export default function ProductPage() { const navItems = [ { name: "Shop", id: "products" }, { name: "Collections", id: "collections" }, @@ -30,11 +49,6 @@ export default function ProductPage() { { name: "Contact", id: "contact" }, ]; - const [selectedSize, setSelectedSize] = useState("M"); - const [selectedColor, setSelectedColor] = useState("Black"); - const [quantity, setQuantity] = useState(1); - const [isFavorited, setIsFavorited] = useState(false); - const socialLinks: Array<{ icon: LucideIcon; href: string; ariaLabel: string }> = [ { icon: Instagram, href: "https://instagram.com/umbra", ariaLabel: "Instagram" }, { icon: Twitter, href: "https://twitter.com/umbra", ariaLabel: "Twitter" }, @@ -71,39 +85,23 @@ export default function ProductPage() {
- {/* Product Image */} -
- Classic Black Hoodie +
+ {product.name}
- {/* Product Details */} -
-
-

Premium Collection

-

Classic Black Hoodie

-

$89.99

-

- Experience the perfect blend of comfort and style with our Classic Black Hoodie. Crafted from premium materials, this versatile piece is ideal for layering or wearing alone. The spacious fit and quality construction make it a wardrobe essential for any streetwear enthusiast. -

-
+
+

{product.name}

+

${product.price.toFixed(2)}

- {/* Color Selection */} -
- +

{product.description}

+ +
+

Colors

- {["Black", "Grey", "Navy"].map((color) => ( + {product.colors.map((color) => ( @@ -111,19 +109,13 @@ export default function ProductPage() {
- {/* Size Selection */} -
- -
- {["XS", "S", "M", "L", "XL", "XXL"].map((size) => ( +
+

Sizes

+
+ {product.sizes.map((size) => ( @@ -131,84 +123,13 @@ export default function ProductPage() {
- {/* Quantity */} -
- -
- - {quantity} - -
-
+ - {/* Action Buttons */} -
- - -
- - {/* Product Info */} -
-
-

Material

-

100% Premium Cotton

-
-
-

Shipping

-

Free shipping on orders over $150

-
-
-

Returns

-

30-day return policy

-
-
-
-
- - {/* Related Products */} -
-

Related Products

-
- {[ - { - name: "Vintage Denim Jacket", price: "$129.99", image: "http://img.b2bpic.net/free-photo/fashionable-woman-wearing-denim-jacket_23-2148859621.jpg"}, - { - name: "Cargo Pants - Khaki", price: "$79.99", image: "http://img.b2bpic.net/free-photo/young-woman-wearing-trucker-hat_23-2149432334.jpg"}, - { - name: "Oversized T-Shirt", price: "$49.99", image: "http://img.b2bpic.net/free-photo/teenager-boy-stylish-clothes-posing_23-2149085228.jpg"}, - ].map((product, i) => ( - -
- {product.name} -
-

- {product.name} -

-

{product.price}

- - ))} +
diff --git a/src/app/shop/page.tsx b/src/app/shop/page.tsx index 6180e60..def8cd4 100644 --- a/src/app/shop/page.tsx +++ b/src/app/shop/page.tsx @@ -10,7 +10,7 @@ import Link from "next/link"; import { TrendingUp, Instagram, Twitter, Youtube } from "lucide-react"; import type { LucideIcon } from "lucide-react"; -const TikTok: LucideIcon = (props: React.SVGProps) => ( +const TikTok = (props: React.SVGProps) => ( ) => ( > -) as LucideIcon; +) as unknown as LucideIcon; export default function ShopPage() { const navItems = [