From b905c37c8ada6fdf87df44a586ef25a767840e77 Mon Sep 17 00:00:00 2001 From: b3ni15 Date: Thu, 16 Oct 2025 13:48:57 +0200 Subject: [PATCH] refactor: Simplify message deletion logic and improve response handling in DiscordRateLimiter --- src/app/api/delete/route.ts | 8 +++----- src/lib/discordRateLimiter.ts | 4 ++-- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/app/api/delete/route.ts b/src/app/api/delete/route.ts index 890ba9c..efc3646 100644 --- a/src/app/api/delete/route.ts +++ b/src/app/api/delete/route.ts @@ -54,16 +54,14 @@ export async function POST(request: Request) { if (!part.discord_message_id) continue; try { - const res: Response = await rateLimiter.request( + await rateLimiter.request( `/channels/${process.env.DISCORD_CHANNEL_ID}/messages/${part.discord_message_id}`, { method: 'DELETE', } ); - - if (!res.ok && res.status !== 404) { // Don't warn on 404 (already deleted) - console.warn(`Failed to delete message ${part.discord_message_id}. Status: ${res.status}`); - } + // No need to check res.ok or res.status here, as rateLimiter.request throws on !response.ok + // and returns null for 204. } catch (e) { console.error(`Error deleting message ${part.discord_message_id}:`, e); } diff --git a/src/lib/discordRateLimiter.ts b/src/lib/discordRateLimiter.ts index 6f92c7f..e78ad8b 100644 --- a/src/lib/discordRateLimiter.ts +++ b/src/lib/discordRateLimiter.ts @@ -45,8 +45,8 @@ export class DiscordRateLimiter { throw new Error(`Discord API error: ${response.status} - ${errorData.message || JSON.stringify(errorData)}`); } - if (response.status === 204 || response.headers.get('Content-Length') === '0') { - return undefined as T; + if (response.status === 204) { + return null as T; // Return null for 204 No Content } return response.json() as Promise; }