Fix AdminContact loading state

This commit is contained in:
gpt-engineer-app[bot]
2025-10-28 18:17:10 +00:00
parent b3bb55ecd9
commit 1c7ca8fe32

View File

@@ -87,7 +87,7 @@ interface EmailThread {
export default function AdminContact() {
const queryClient = useQueryClient();
const { theme } = useTheme();
const { isAdmin } = useUserRole();
const { isAdmin, loading: rolesLoading } = useUserRole();
const [statusFilter, setStatusFilter] = useState<string>('all');
const [categoryFilter, setCategoryFilter] = useState<string>('all');
const [searchQuery, setSearchQuery] = useState('');
@@ -259,7 +259,16 @@ export default function AdminContact() {
return cat?.label || category;
};
// Admin-only access check (after all hooks)
// Show loading state while roles are being fetched
if (rolesLoading) {
return (
<div className="flex items-center justify-center min-h-screen">
<p className="text-muted-foreground">Loading...</p>
</div>
);
}
// Admin-only access check (after loading complete)
if (!isAdmin()) {
return (
<div className="flex items-center justify-center min-h-screen">