From 9a11ab16bb9940f547bc0e8a43e6cd649fdef93e Mon Sep 17 00:00:00 2001 From: Julien Froidefond Date: Sat, 28 Feb 2026 12:15:54 +0100 Subject: [PATCH] refactor: remove unused user profile GET API route --- docs/api-get-cleanup.md | 2 +- src/app/api/user/profile/route.ts | 29 ----------------------------- 2 files changed, 1 insertion(+), 30 deletions(-) delete mode 100644 src/app/api/user/profile/route.ts diff --git a/docs/api-get-cleanup.md b/docs/api-get-cleanup.md index a65749b..9c2fdca 100644 --- a/docs/api-get-cleanup.md +++ b/docs/api-get-cleanup.md @@ -26,7 +26,6 @@ Routes GET actuellement présentes : |-------|----------------------|----------------------------|-------------------------| | `GET /api/komga/books/[bookId]` | fallback dans `ClientBookPage.tsx`, usage `DownloadManager.tsx` | fallback utile hors flux page SSR | Limiter au fallback strict, éviter le double-fetch | | `GET /api/komga/series/[seriesId]` | utilisé via Sidebar pour enrichir les favoris | enrichissement client en cascade | Charger les métadonnées nécessaires en amont côté server | -| `GET /api/user/profile` | pas d'appel client direct trouvé | route utile pour consommation API interne/outils | Vérifier si remplaçable par service server direct | ### B2. Migrees en Lot 2 (pagination server-first) @@ -36,6 +35,7 @@ Routes GET actuellement présentes : | `GET /api/komga/series/[seriesId]/books` | `src/app/series/[seriesId]/SeriesClientWrapper.tsx` | Chargement via `searchParams` dans page server | ✅ Supprimée | | `GET /api/komga/random-book` | `src/components/layout/ClientLayout.tsx` | Action utilisateur via server action | ✅ Supprimée | | `GET /api/komga/home` | `src/app/page.tsx` consomme déjà `HomeService` côté server | Données agrégées directement via service server | ✅ Supprimée | +| `GET /api/user/profile` | aucun consommateur client trouvé, page compte déjà server-first | Profil/statistiques via `UserService` en Server Component | ✅ Supprimée | ### C. A conserver (API de transport / framework) diff --git a/src/app/api/user/profile/route.ts b/src/app/api/user/profile/route.ts deleted file mode 100644 index 759428e..0000000 --- a/src/app/api/user/profile/route.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { NextResponse } from "next/server"; -import { UserService } from "@/lib/services/user.service"; -import { AppError } from "@/utils/errors"; -import logger from "@/lib/logger"; - -export async function GET() { - try { - const [profile, stats] = await Promise.all([ - UserService.getUserProfile(), - UserService.getUserStats(), - ]); - - return NextResponse.json({ ...profile, stats }); - } catch (error) { - logger.error({ err: error }, "Erreur lors de la récupération du profil:"); - - if (error instanceof AppError) { - return NextResponse.json( - { error: error.message, code: error.code }, - { status: error.code === "AUTH_UNAUTHENTICATED" ? 401 : 500 } - ); - } - - return NextResponse.json( - { error: "Erreur lors de la récupération du profil" }, - { status: 500 } - ); - } -}