'use client' import type { AdminEventDetailData } from './types' import Switch from '@/components/formElements/Switch' import { Card, CardBody } from '@/components/heroui/Card' import { Chip } from '@/components/heroui/Chip' import { getBooleanStatus, getEventStatus } from '@/constants/status' import { occupiedSeatCount } from '@/features/events/eventCapacity' import { formatCurrency, formatNumber } from '@/helpers' import { formatPersianDate } from '@/lib/formatters' const number = formatNumber interface AdminEventSummaryCardProps { event: AdminEventDetailData isTogglingDiscoverable: boolean onToggleDiscoverable: (nextValue: boolean) => void } const AdminEventSummaryCard = ({ event, isTogglingDiscoverable, onToggleDiscoverable }: AdminEventSummaryCardProps) => { const eventStatusBadge = getEventStatus(event.status) const featuredBadge = getBooleanStatus(event.isFeatured, { true: 'ویژه', false: 'عادی' }) return (
{eventStatusBadge ? ( {eventStatusBadge.label} ) : null} {event.isFree ? 'رایگان' : formatCurrency(event.price)} {number(occupiedSeatCount(event.bookedCount, event.reservedCapacity ?? 0))} / {number(event.capacity)} {featuredBadge ? ( {featuredBadge.label} ) : null} {formatPersianDate(event.startsAt)}
{ onToggleDiscoverable(value) }} > نمایش در جستجو
) } export default AdminEventSummaryCard