From 4e259f1e470d79b482d2ac54b0bb1b6f7681161c Mon Sep 17 00:00:00 2001 From: kudinDmitriyUp Date: Sun, 14 Jun 2026 06:41:03 +0000 Subject: [PATCH] Bob AI: Add shopping-cart page --- src/App.tsx | 2 + src/components/Layout.tsx | 4 +- src/pages/ShoppingCartPage.tsx | 105 +++++++++++++++++++++++++++++++++ src/routes.ts | 1 + 4 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 src/pages/ShoppingCartPage.tsx diff --git a/src/App.tsx b/src/App.tsx index 33d15f9..e72fb93 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -2,11 +2,13 @@ import { Routes, Route } from 'react-router-dom'; import Layout from './components/Layout'; import HomePage from './pages/HomePage'; +import ShoppingCartPage from "@/pages/ShoppingCartPage"; export default function App() { return ( }> } /> + } /> ); diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx index 8c6724e..7cfa9c6 100644 --- a/src/components/Layout.tsx +++ b/src/components/Layout.tsx @@ -34,7 +34,9 @@ export default function Layout() { { "name": "Testimonials", "href": "#testimonials" - } + }, + { name: "Shopping Cart", href: "/shopping-cart" }, + ]; return ( diff --git a/src/pages/ShoppingCartPage.tsx b/src/pages/ShoppingCartPage.tsx new file mode 100644 index 0000000..8639163 --- /dev/null +++ b/src/pages/ShoppingCartPage.tsx @@ -0,0 +1,105 @@ +import React from "react"; +import { routes } from "@/routes"; +import NavbarCentered from "@/components/ui/NavbarCentered"; +import ProductQuantityCards from "@/components/sections/product/ProductQuantityCards"; +import ContactSplitForm from "@/components/sections/contact/ContactSplitForm"; +import FooterSimple from "@/components/sections/footer/FooterSimple"; + +const cartItems = [ + { + name: "16 Piece Hot Wings Bucket", + price: "85,000 UZS", + imageSrc: "https://images.unsplash.com/photo-1626645738196-c2a7c87a8f58?q=80&w=800&auto=format&fit=crop", + onAddToCart: () => console.log("Update quantity") + }, + { + name: "Zinger Burger Combo", + price: "45,000 UZS", + imageSrc: "https://images.unsplash.com/photo-1568901346375-23c9450c58cd?q=80&w=800&auto=format&fit=crop", + onAddToCart: () => console.log("Update quantity") + }, + { + name: "Large French Fries", + price: "18,000 UZS", + imageSrc: "https://images.unsplash.com/photo-1576107232684-1279f3908594?q=80&w=800&auto=format&fit=crop", + onAddToCart: () => console.log("Update quantity") + } +]; + +const checkoutInputs = [ + { + name: "fullName", + type: "text", + placeholder: "Full Name", + required: true + }, + { + name: "phone", + type: "tel", + placeholder: "Phone Number (+998...)", + required: true + }, + { + name: "address", + type: "text", + placeholder: "Delivery Address (Urganch)", + required: true + } +]; + +export default function ShoppingCartPage() { + return ( +
+ ({ name: r.label, href: r.path }))} + ctaButton={{ text: "Back to Menu", href: "/menu" }} + /> + +
+ + + +
+ + +
+ ); +} \ No newline at end of file diff --git a/src/routes.ts b/src/routes.ts index 362ecb5..a2452ac 100644 --- a/src/routes.ts +++ b/src/routes.ts @@ -6,4 +6,5 @@ export interface Route { export const routes: Route[] = [ { path: '/', label: 'Home', pageFile: 'HomePage' }, + { path: '/shopping-cart', label: 'Shopping Cart', pageFile: 'ShoppingCartPage' }, ];