'use client'; import { useState } from 'react'; import { formatCurrency, formatDateAndTime } from '@/packages/shared/src/utils'; import { useTranslation } from 'react-i18next'; import { Button } from '@kit/ui/button'; import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, } from '@kit/ui/dialog'; import { TableCell, TableRow } from '@kit/ui/table'; import { Trans } from '@kit/ui/trans'; import BookingContainer from '../booking/booking-container'; import CartItemDelete from './cart-item-delete'; import { EnrichedCartItem } from './types'; const EditCartServiceItemModal = ({ item, onComplete, }: { item: EnrichedCartItem | null; onComplete: () => void; }) => { if (!item) return null; return ( {item.product && item.reservation.countryCode ? ( ) : ( )} ); }; export default function CartServiceItem({ item, currencyCode, isUnavailable, }: { item: EnrichedCartItem; currencyCode: string; isUnavailable?: boolean; }) { const [editingItem, setEditingItem] = useState(null); const { i18n: { language }, } = useTranslation(); return ( <> {item.product_title} {formatDateAndTime(item.reservation.startTime.toString())} {item.reservation.location?.address ?? '-'} {item.quantity} {formatCurrency({ value: item.unit_price, currencyCode, locale: language, })} {formatCurrency({ value: item.total, currencyCode, locale: language, })} setEditingItem(item)}> {isUnavailable && ( )} setEditingItem(null)} /> > ); }
{item.product_title}