From 1642b066c1542581b160e1271f75eea7a6310739 Mon Sep 17 00:00:00 2001 From: "Builder.io" Date: Sat, 8 Nov 2025 21:49:27 +0000 Subject: [PATCH] completionId: cgen-bbf122217dce4b98930dda38b0e66c46 cgen-bbf122217dce4b98930dda38b0e66c46 --- client/components/admin/AdminDiscordManagement.tsx | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/client/components/admin/AdminDiscordManagement.tsx b/client/components/admin/AdminDiscordManagement.tsx index ceefa302..aefe43b7 100644 --- a/client/components/admin/AdminDiscordManagement.tsx +++ b/client/components/admin/AdminDiscordManagement.tsx @@ -61,9 +61,13 @@ export function AdminDiscordManagement() { setLoading(true); const response = await fetch("/api/discord/role-mappings"); - // Check content type + // Read body only once + let data: any; const contentType = response.headers.get("content-type"); - if (!contentType?.includes("application/json")) { + + if (contentType?.includes("application/json")) { + data = await response.json(); + } else { const text = await response.text(); console.error("Non-JSON response:", text); throw new Error( @@ -72,11 +76,9 @@ export function AdminDiscordManagement() { } if (!response.ok) { - const errorData = await response.json().catch(() => ({})); - throw new Error(errorData.error || "Failed to fetch mappings"); + throw new Error(data?.error || "Failed to fetch mappings"); } - const data = await response.json(); setMappings(Array.isArray(data) ? data : []); setError(null); } catch (err) {