diff --git a/src/app/checkout/page.tsx b/src/app/checkout/page.tsx index 7eb7698..b86ee2a 100644 --- a/src/app/checkout/page.tsx +++ b/src/app/checkout/page.tsx @@ -1,78 +1,18 @@ 'use client'; -import { ThemeProvider } from '@/components/theme-provider'; -import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple'; -import ReactLenis from 'lenis/react'; +import { ThemeProvider } from '@/providers/themeProvider/ThemeProvider'; +import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline'; import { useState } from 'react'; -import { CreditCard, Wallet, DollarSign } from 'lucide-react'; const navItems = [ { name: 'Home', id: '/' }, - { name: 'Checkout', id: '/checkout' }, + { name: 'Products', id: '/products' }, + { name: 'Cart', id: '/cart' }, + { name: 'Sign In', id: '/login' }, ]; -interface ShippingFormData { - firstName: string; - lastName: string; - email: string; - phone: string; - street: string; - city: string; - state: string; - zipCode: string; - country: string; -} - -interface OrderItem { - id: string; - name: string; - price: number; - quantity: number; -} - export default function CheckoutPage() { - const [shippingData, setShippingData] = useState({ - firstName: '', - lastName: '', - email: '', - phone: '', - street: '', - city: '', - state: '', - zipCode: '', - country: '', - }); - - const [selectedPaymentMethod, setSelectedPaymentMethod] = useState('ideal'); - const [currentStep, setCurrentStep] = useState<'shipping' | 'order' | 'payment'>('shipping'); - - const orderItems: OrderItem[] = [ - { id: '1', name: 'Premium Subscription (1 Year)', price: 99.99, quantity: 1 }, - { id: '2', name: 'Support Package', price: 49.99, quantity: 1 }, - ]; - - const subtotal = orderItems.reduce((sum, item) => sum + item.price * item.quantity, 0); - const shipping = 10.0; - const tax = (subtotal + shipping) * 0.21; // 21% VAT - const total = subtotal + shipping + tax; - - const handleShippingChange = (e: React.ChangeEvent) => { - const { name, value } = e.target; - setShippingData(prev => ({ - ...prev, - [name]: value, - })); - }; - - const handleShippingSubmit = (e: React.FormEvent) => { - e.preventDefault(); - setCurrentStep('order'); - }; - - const handlePaymentSubmit = () => { - console.log('Processing payment with method:', selectedPaymentMethod); - alert(`Payment processing with ${selectedPaymentMethod.toUpperCase()}`); - }; + const [step, setStep] = useState<'shipping' | 'order' | 'payment'>('shipping'); return ( - - -
-
- {/* Progress Steps */} -
-
-
-
- 1 -
-

Shipping

-
-
-
-
- 2 -
-

Order Summary

-
-
-
-
- 3 -
-

Payment

-
+ +
+
+

Checkout

+
+ {step === 'shipping' && ( +
+

Shipping Information

+

Enter your shipping details.

-
- -
- {/* Main Content */} -
- {/* Shipping Form */} - {currentStep === 'shipping' && ( -
-

Shipping Information

-
-
-
- - -
-
- - -
-
- -
-
- - -
-
- - -
-
- -
- - -
- -
-
- - -
-
- - -
-
- -
-
- - -
-
- - -
-
- - -
-
- )} - - {/* Order Summary */} - {currentStep === 'order' && ( -
-

Order Summary

-
- {orderItems.map(item => ( -
-
-

{item.name}

-

Quantity: {item.quantity}

-
-

${(item.price * item.quantity).toFixed(2)}

-
- ))} -
- -
-
- Subtotal - ${subtotal.toFixed(2)} -
-
- Shipping - ${shipping.toFixed(2)} -
-
- Tax (21%) - ${tax.toFixed(2)} -
-
- Total - ${total.toFixed(2)} -
-
- -
- - -
-
- )} - - {/* Payment Methods */} - {currentStep === 'payment' && ( -
-

Select Payment Method

-
- {/* iDEAL */} - - - {/* PayPal */} - - - {/* Mastercard */} - -
- -
- - -
-
- )} + )} + {step === 'order' && ( +
+

Order Review

+

Review your order before payment.

- - {/* Order Summary Sidebar */} -
-
-

Order Total

-
-
- Subtotal - ${subtotal.toFixed(2)} -
-
- Shipping - ${shipping.toFixed(2)} -
-
- Tax (21%) - ${tax.toFixed(2)} -
-
-
-
- Total - ${total.toFixed(2)} -
-
-
-

✓ Secure payment

-

✓ Money-back guarantee

-

✓ Fast delivery

-
-
+ )} + {step === 'payment' && ( +
+

Payment

+

Complete your purchase.

-
+ )}
- +
); }