import { m } from '@/paraglide/messages'; import { formatters } from '@/utils/formatters'; import { jsonSupport } from '@/utils/help'; import { EyeIcon } from '@phosphor-icons/react'; import { ColumnDef } from '@tanstack/react-table'; import { Badge } from '../ui/badge'; import { Button } from '../ui/button'; import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogTrigger, } from '../ui/dialog'; import { Label } from '../ui/label'; import { Tooltip, TooltipContent, TooltipTrigger } from '../ui/tooltip'; import ActionBadge, { UserActionType } from './action-badge'; export const logColumns: ColumnDef[] = [ { accessorKey: 'user.name', header: m.logs_page_ui_table_header_username(), meta: { thClass: 'w-1/6', }, }, { accessorKey: 'tableName', header: m.logs_page_ui_table_header_table(), meta: { thClass: 'w-1/6', }, cell: ({ row }) => { return ( {row.original.tableName} ); }, }, { accessorKey: 'action', header: m.logs_page_ui_table_header_action(), meta: { thClass: 'w-1/6', }, cell: ({ row }) => { return ( ); }, }, { accessorKey: 'createdAt', header: m.logs_page_ui_table_header_action(), meta: { thClass: 'w-2/6', }, cell: ({ row }) => { return formatters.dateTime(new Date(row.original.createdAt)); }, }, { id: 'actions', meta: { thClass: 'w-1/6', }, cell: ({ row }) => (
), }, ]; type ViewDetailProps = { data: AuditLog; }; const ViewDetail = ({ data }: ViewDetailProps) => { return ( {m.ui_dialog_view_title({ type: m.nav_log() })}
{m.logs_page_ui_table_header_username()}:
{m.logs_page_ui_table_header_table()}: {data.tableName}
{m.logs_page_ui_table_header_action()}:
{data.oldValue && (
{m.logs_page_ui_table_header_old_value()}:
                {jsonSupport(data.oldValue)}
              
)}
{m.logs_page_ui_table_header_new_value()}:
              {data.newValue ? jsonSupport(data.newValue) : ''}
            
{m.logs_page_ui_table_header_create_at()}: {formatters.dateTime(new Date(data.createdAt))}
); };