Posts

Showing posts from September, 2026
Image
import React, { useState } from 'react'; import { X, Lock, CheckCircle2, CreditCard, Shield, Truck, Sparkles, ArrowLeft, ChevronRight, Check, Download } from 'lucide-react'; import { CartItem, Address, Order } from '../types'; import { downloadOrderInvoice } from '../utils/invoiceGenerator'; interface CheckoutModalProps { isOpen: boolean; onClose: () => void; items: CartItem[]; savedAddresses: Address[]; onOrderPlaced: (order: Order) => void; onOpenOrderInAccount: (orderId: string) => void; initialPaymentMethod?: 'Apple Pay' | 'Credit Card'; } export const CheckoutModal: React.FC = ({ isOpen, onClose, items, savedAddresses, onOrderPlaced, onOpenOrderInAccount, initialPaymentMethod = 'Credit Card', }) => { if (!isOpen) return null; // Selected saved address or custom input const defaultAddr = savedAddresses.find((a) => a.isDefault) || savedAddresses[0]; const [selectedSavedAddr...