feat: Add millisecond precision to moderation queue timestamps

This commit is contained in:
gpt-engineer-app[bot]
2025-10-13 16:51:06 +00:00
parent 70528ff0b1
commit f5d059b5a5
2 changed files with 44 additions and 32 deletions

View File

@@ -1,5 +1,6 @@
import { useState, useImperativeHandle, forwardRef, useMemo } from 'react'; import { useState, useImperativeHandle, forwardRef, useMemo } from 'react';
import { Card, CardContent } from '@/components/ui/card'; import { Card, CardContent } from '@/components/ui/card';
import { TooltipProvider } from '@/components/ui/tooltip';
import { useToast } from '@/hooks/use-toast'; import { useToast } from '@/hooks/use-toast';
import { useUserRole } from '@/hooks/useUserRole'; import { useUserRole } from '@/hooks/useUserRole';
import { useAuth } from '@/hooks/useAuth'; import { useAuth } from '@/hooks/useAuth';
@@ -156,6 +157,7 @@ export const ModerationQueue = forwardRef<ModerationQueueRef>((props, ref) => {
statusFilter={queueManager.filters.statusFilter} statusFilter={queueManager.filters.statusFilter}
/> />
) : ( ) : (
<TooltipProvider>
<div className="space-y-6"> <div className="space-y-6">
{queueManager.items.map((item, index) => ( {queueManager.items.map((item, index) => (
<QueueItem <QueueItem
@@ -184,6 +186,7 @@ export const ModerationQueue = forwardRef<ModerationQueueRef>((props, ref) => {
/> />
))} ))}
</div> </div>
</TooltipProvider>
)} )}
{/* Pagination */} {/* Pagination */}

View File

@@ -7,6 +7,7 @@ import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar';
import { Textarea } from '@/components/ui/textarea'; import { Textarea } from '@/components/ui/textarea';
import { Label } from '@/components/ui/label'; import { Label } from '@/components/ui/label';
import { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert'; import { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';
import { format } from 'date-fns'; import { format } from 'date-fns';
import { SubmissionItemsList } from './SubmissionItemsList'; import { SubmissionItemsList } from './SubmissionItemsList';
import { MeasurementDisplay } from '@/components/ui/measurement-display'; import { MeasurementDisplay } from '@/components/ui/measurement-display';
@@ -192,10 +193,18 @@ export const QueueItem = memo(({
/> />
)} )}
</div> </div>
<Tooltip>
<TooltipTrigger asChild>
<div className={`flex items-center gap-2 text-muted-foreground ${isMobile ? 'text-xs' : 'text-sm'}`}> <div className={`flex items-center gap-2 text-muted-foreground ${isMobile ? 'text-xs' : 'text-sm'}`}>
<Calendar className={isMobile ? "w-3 h-3" : "w-4 h-4"} /> <Calendar className={isMobile ? "w-3 h-3" : "w-4 h-4"} />
{format(new Date(item.created_at), isMobile ? 'MMM d, yyyy' : 'MMM d, yyyy HH:mm')} {format(new Date(item.created_at), isMobile ? 'MMM d, HH:mm:ss' : 'MMM d, yyyy HH:mm:ss.SSS')}
</div> </div>
</TooltipTrigger>
<TooltipContent>
<p className="text-xs">Full timestamp:</p>
<p className="font-mono">{item.created_at}</p>
</TooltipContent>
</Tooltip>
</div> </div>
{item.user_profile && ( {item.user_profile && (