mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-21 20:31:15 -05:00
feat: Add millisecond precision to moderation queue timestamps
This commit is contained in:
@@ -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 */}
|
||||||
|
|||||||
@@ -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 && (
|
||||||
|
|||||||
Reference in New Issue
Block a user