From 9e02748067abd5b3ef1b4a8c9c43951932a40568 Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Mon, 3 Nov 2025 02:06:23 +0000 Subject: [PATCH] Fix moderation type errors --- src/components/moderation/ActivityCard.tsx | 6 +++--- src/components/moderation/ItemEditDialog.tsx | 4 ++-- src/components/moderation/ReassignDialog.tsx | 2 +- src/components/moderation/RecentActivity.tsx | 6 +++--- src/components/moderation/ReportsQueue.tsx | 4 ++-- src/types/database.ts | 6 +++--- src/types/photo-submissions.ts | 14 +++++++------- src/types/photos.ts | 6 +++--- 8 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/components/moderation/ActivityCard.tsx b/src/components/moderation/ActivityCard.tsx index 6d5c4098..98d46460 100644 --- a/src/components/moderation/ActivityCard.tsx +++ b/src/components/moderation/ActivityCard.tsx @@ -12,11 +12,11 @@ interface ActivityCardProps { entity_type?: string; entity_name?: string; timestamp: string; - moderator_id?: string; + moderator_id?: string | null; moderator?: { username: string; - display_name?: string; - avatar_url?: string; + display_name?: string | null; + avatar_url?: string | null; }; }; } diff --git a/src/components/moderation/ItemEditDialog.tsx b/src/components/moderation/ItemEditDialog.tsx index 405fb197..acfbb30c 100644 --- a/src/components/moderation/ItemEditDialog.tsx +++ b/src/components/moderation/ItemEditDialog.tsx @@ -295,8 +295,8 @@ export function ItemEditDialog({ item, items, open, onOpenChange, onComplete }: // Simple photo editing form for caption and credit interface PhotoItem { url: string; - caption?: string; - credit?: string; + caption?: string | null; + credit?: string | null; } function PhotoEditForm({ diff --git a/src/components/moderation/ReassignDialog.tsx b/src/components/moderation/ReassignDialog.tsx index 845c03f2..da13b172 100644 --- a/src/components/moderation/ReassignDialog.tsx +++ b/src/components/moderation/ReassignDialog.tsx @@ -24,7 +24,7 @@ import { logger } from '@/lib/logger'; interface Moderator { user_id: string; username: string; - display_name?: string; + display_name?: string | null; role: string; } diff --git a/src/components/moderation/RecentActivity.tsx b/src/components/moderation/RecentActivity.tsx index b006304e..c2298ef9 100644 --- a/src/components/moderation/RecentActivity.tsx +++ b/src/components/moderation/RecentActivity.tsx @@ -15,11 +15,11 @@ interface ActivityItem { entity_type?: string; entity_name?: string; timestamp: string; - moderator_id?: string; + moderator_id?: string | null; moderator?: { username: string; - display_name?: string; - avatar_url?: string; + display_name?: string | null; + avatar_url?: string | null; }; } diff --git a/src/components/moderation/ReportsQueue.tsx b/src/components/moderation/ReportsQueue.tsx index fd069732..78065955 100644 --- a/src/components/moderation/ReportsQueue.tsx +++ b/src/components/moderation/ReportsQueue.tsx @@ -71,12 +71,12 @@ interface Report { reported_entity_type: ReportEntityType; reported_entity_id: string; report_type: string; - reason: string; + reason: string | null; status: string; created_at: string; reporter_profile?: { username: string; - display_name?: string; + display_name?: string | null; }; reported_content?: ReportedContent; } diff --git a/src/types/database.ts b/src/types/database.ts index af8209a7..e39843ac 100644 --- a/src/types/database.ts +++ b/src/types/database.ts @@ -277,9 +277,9 @@ export interface UserTopList { id: string; user_id: string; title: string; - description?: string; + description?: string | null; list_type: 'parks' | 'rides' | 'coasters' | 'companies' | 'mixed'; - is_public: boolean; + is_public: boolean | null; created_at: string; updated_at: string; items?: UserTopListItem[]; // New relational data @@ -291,7 +291,7 @@ export interface UserTopListItem { entity_type: 'park' | 'ride' | 'company'; entity_id: string; position: number; - notes?: string; + notes?: string | null; created_at: string; updated_at: string; // Populated via joins diff --git a/src/types/photo-submissions.ts b/src/types/photo-submissions.ts index 53b8e0e2..0a119335 100644 --- a/src/types/photo-submissions.ts +++ b/src/types/photo-submissions.ts @@ -16,14 +16,14 @@ export interface PhotoSubmissionItem { photo_submission_id: string; cloudflare_image_id: string; cloudflare_image_url: string; - caption?: string; - title?: string; - filename?: string; + caption?: string | null; + title?: string | null; + filename?: string | null; order_index: number; - file_size?: number; - mime_type?: string; - date_taken?: string; - date_taken_precision?: string; + file_size?: number | null; + mime_type?: string | null; + date_taken?: string | null; + date_taken_precision?: string | null; created_at: string; } diff --git a/src/types/photos.ts b/src/types/photos.ts index 6177ebd2..26ef5f6f 100644 --- a/src/types/photos.ts +++ b/src/types/photos.ts @@ -12,11 +12,11 @@ export interface PhotoItem { id: string; url: string; filename: string; - caption?: string; + caption?: string | null; size?: number; type?: string; - title?: string; - date_taken?: string; + title?: string | null; + date_taken?: string | null; } // Normalized photo for consistent display