From 05ba99e368bfaf73e16019328d4cee5c20b3586e Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Tue, 21 Oct 2025 15:24:44 +0000 Subject: [PATCH] Fix useState declarations --- src/components/admin/TestDataGenerator.tsx | 20 +++++++++++++++- src/components/auth/AuthDiagnostics.tsx | 24 ++++++++++++++++++- .../versioning/VersionComparisonDialog.tsx | 11 +++++++-- src/pages/Profile.tsx | 3 ++- 4 files changed, 53 insertions(+), 5 deletions(-) diff --git a/src/components/admin/TestDataGenerator.tsx b/src/components/admin/TestDataGenerator.tsx index d621d333..3b94fc40 100644 --- a/src/components/admin/TestDataGenerator.tsx +++ b/src/components/admin/TestDataGenerator.tsx @@ -21,6 +21,24 @@ const PRESETS = { stress: { label: 'Stress', description: '~2600 submissions - Load testing', counts: '400 parks, 1000 rides, 400 companies, 200 models, 500 photo sets' } }; +interface TestDataResults { + summary: { + operators: number; + property_owners: number; + manufacturers: number; + designers: number; + parks: number; + rides: number; + rideModels: number; + photos: number; + totalPhotoItems: number; + conflicts: number; + versionChains: number; + companies?: number; + }; + time?: string; +} + export function TestDataGenerator() { const { toast } = useToast(); const [preset, setPreset] = useState<'small' | 'medium' | 'large' | 'stress'>('small'); @@ -43,7 +61,7 @@ export function TestDataGenerator() { includeExpiredLocks: false }); const [loading, setLoading] = useState(false); - const [results, setResults] = useState(null); + const [results, setResults] = useState(null); const [stats, setStats] = useState<{ total: number; pending: number; diff --git a/src/components/auth/AuthDiagnostics.tsx b/src/components/auth/AuthDiagnostics.tsx index 9ed4a36e..a868d816 100644 --- a/src/components/auth/AuthDiagnostics.tsx +++ b/src/components/auth/AuthDiagnostics.tsx @@ -5,8 +5,30 @@ import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/com import { Badge } from '@/components/ui/badge'; import { Button } from '@/components/ui/button'; +interface AuthDiagnosticsData { + timestamp: string; + storage: { + type: string; + persistent: boolean; + }; + session: { + exists: boolean; + user: string | null; + expiresAt: number | null; + error: string | null; + }; + network: { + online: boolean; + }; + environment: { + url: string; + isIframe: boolean; + cookiesEnabled: boolean; + }; +} + export function AuthDiagnostics() { - const [diagnostics, setDiagnostics] = useState(null); + const [diagnostics, setDiagnostics] = useState(null); const [isOpen, setIsOpen] = useState(false); const runDiagnostics = async () => { diff --git a/src/components/versioning/VersionComparisonDialog.tsx b/src/components/versioning/VersionComparisonDialog.tsx index 60fb654f..7d3c9297 100644 --- a/src/components/versioning/VersionComparisonDialog.tsx +++ b/src/components/versioning/VersionComparisonDialog.tsx @@ -16,6 +16,13 @@ interface VersionComparisonDialogProps { toVersionId: string; } +interface VersionDiff { + [fieldName: string]: { + from: unknown; + to: unknown; + }; +} + export function VersionComparisonDialog({ open, onOpenChange, @@ -25,7 +32,7 @@ export function VersionComparisonDialog({ toVersionId, }: VersionComparisonDialogProps) { const { versions, compareVersions } = useEntityVersions(entityType, entityId); - const [diff, setDiff] = useState(null); + const [diff, setDiff] = useState(null); const [loading, setLoading] = useState(true); const fromVersion = versions.find(v => v.version_id === fromVersionId); @@ -36,7 +43,7 @@ export function VersionComparisonDialog({ if (open && fromVersionId && toVersionId) { setLoading(true); const result = await compareVersions(fromVersionId, toVersionId); - setDiff(result); + setDiff(result as VersionDiff); setLoading(false); } }; diff --git a/src/pages/Profile.tsx b/src/pages/Profile.tsx index 622790a7..fa9fae3c 100644 --- a/src/pages/Profile.tsx +++ b/src/pages/Profile.tsx @@ -1,6 +1,7 @@ import { useState, useEffect } from 'react'; import { useParams, useNavigate, Link } from 'react-router-dom'; import { formatDistanceToNow } from 'date-fns'; +import { User as SupabaseUser } from '@supabase/supabase-js'; import { Header } from '@/components/layout/Header'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; @@ -134,7 +135,7 @@ export default function Profile() { const [profile, setProfile] = useState(null); const [loading, setLoading] = useState(true); const [editing, setEditing] = useState(false); - const [currentUser, setCurrentUser] = useState(null); + const [currentUser, setCurrentUser] = useState(null); const [editForm, setEditForm] = useState({ username: '', display_name: '',