"use client" import { MapPin } from "lucide-react" import { Button } from "@/components/ui/button" import { Card } from "@/components/ui/card" import { Label } from "@/components/ui/label" import { RadioGroup, RadioGroupItem } from "@/components/ui/radio-group" import { Textarea } from "@/components/ui/textarea" import { Separator } from "@/components/ui/separator" import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select" import DeliveryTypeSelector from "./DeliveryTypeSelector" import type { Order, Region, Address, DeliveryType, CartTranslations, PaymentTypeOption } from "./types" interface OrderSummaryProps { order: Order translations: CartTranslations paymentType: PaymentTypeOption | null deliveryType: DeliveryType selectedRegion: string | null selectedAddress: string note: string regions: Region[] addresses: Address[] paymentTypes: PaymentTypeOption[] onPaymentTypeChange: (type: PaymentTypeOption) => void onDeliveryTypeChange: (type: DeliveryType) => void onRegionChange: (regionCode: string) => void onAddressChange: (address: string) => void onNoteChange: (note: string) => void onMapOpen: () => void onCompleteOrder: () => void isLoading: boolean } export default function OrderSummary({ order, translations: t, paymentType, deliveryType, selectedRegion, selectedAddress, note, regions, addresses, paymentTypes, onPaymentTypeChange, onDeliveryTypeChange, onRegionChange, onAddressChange, onNoteChange, onMapOpen, onCompleteOrder, isLoading, }: OrderSummaryProps) { const filteredAddresses = selectedRegion ? addresses.filter((addr) => { const region = regions.find((r) => r.code === selectedRegion) return region && addr.region_id === region.id }) : [] const isFormValid = selectedRegion && selectedAddress && paymentType return ( {/* Payment Type */}

{t.paymentType}

{paymentTypes.map((type) => ( onPaymentTypeChange(type)} >
{type.name}
))}
{/* Delivery Type */} {/* Region Selection */}
{regions.map((region) => (
))}
{/* Address Selection */} {filteredAddresses.length > 0 && (
)} {/* Note */}