import { Row, Button, Text, Icon, Icons, DataTable, DataColumn } from '@umami/react-zen'; import Link from 'next/link'; import { formatDistance } from 'date-fns'; import { ROLES } from '@/lib/constants'; import { useMessages, useLocale } from '@/components/hooks'; import { UserDeleteButton } from './UserDeleteButton'; export function UsersTable({ data = [], showActions = true, }: { data: any[]; showActions?: boolean; }) { const { formatMessage, labels } = useMessages(); const { dateLocale } = useLocale(); return ( {(row: any) => formatMessage( labels[Object.keys(ROLES).find(key => ROLES[key] === row.role)] || labels.unknown, ) } {(row: any) => formatDistance(new Date(row.createdAt), new Date(), { addSuffix: true, locale: dateLocale, }) } {(row: any) => row._count.websiteUser} {showActions && ( {(row: any) => { const { id, username } = row; return ( ); }} )} ); }