import { Eye, Star1 } from 'iconsax-react' import type { ColumnType } from '@/components/types/TableTypes' import type { Review } from '../types/Types' import { formatOptionalDate } from '@/helpers/func' import Status from '@/components/Status' import { Link } from 'react-router-dom' import { Pages } from '@/config/Pages' const getStatusVariant = (status: string): 'success' | 'error' | 'warning' | 'info' | 'pending' => { const variantMap: Record = { 'pending': 'pending', 'approved': 'success', 'rejected': 'error', } return variantMap[status] || 'pending' } export const getReviewTableColumns = (): ColumnType[] => { return [ { key: 'user', title: 'کاربر', render: (item: Review) => { const name = [item.user.firstName, item.user.lastName].filter(Boolean).join(' ') return name || '-' } }, { key: 'food', title: 'کالا', render: (item: Review) => { return item.food.title || '-' } }, { key: 'rating', title: 'امتیاز', render: (item: Review) => { return (
{item.rating}
) } }, { key: 'comment', title: 'نظر', render: (item: Review) => { return (
{item.comment || '-'}
) } }, { key: 'status', title: 'وضعیت', render: (item: Review) => { const statusLabels: Record = { 'pending': 'در انتظار', 'approved': 'تایید شده', 'rejected': 'رد شده', } return ( ) } }, { key: 'createdAt', title: 'تاریخ ثبت', render: (item: Review) => { return formatOptionalDate(item.createdAt, { year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', }) } }, { key: 'details', title: '', render: (item: Review) => { return ( ) } }, ] }