From de438b93d54bb2e7fcd816f410a2bba835281348 Mon Sep 17 00:00:00 2001 From: DecDuck Date: Sun, 8 Jun 2025 11:37:24 +1000 Subject: [PATCH] Migrate game metadata import to task system #90 (#103) * feat: move game import to new task system * fix: sizing issue with new task UI * fix: lint * feat: add pcgamingwiki task --- pages/admin/library/import.vue | 4 +- pages/admin/task/[id]/index.vue | 6 +- server/api/v1/admin/import/game/index.post.ts | 17 +- server/internal/metadata/giantbomb.ts | 30 ++- server/internal/metadata/igdb.ts | 195 ++++++++++-------- server/internal/metadata/index.ts | 171 +++++++++------ server/internal/metadata/pcgamingwiki.ts | 42 ++-- server/internal/objects/transactional.ts | 13 ++ server/internal/tasks/index.ts | 16 ++ 9 files changed, 307 insertions(+), 187 deletions(-) diff --git a/pages/admin/library/import.vue b/pages/admin/library/import.vue index 61af793..5f32f54 100644 --- a/pages/admin/library/import.vue +++ b/pages/admin/library/import.vue @@ -334,7 +334,7 @@ async function importGame(useMetadata: boolean) { : undefined; const option = games.unimportedGames[currentlySelectedGame.value]; - const game = await $dropFetch("/api/v1/admin/import/game", { + const { taskId } = await $dropFetch("/api/v1/admin/import/game", { method: "POST", body: { path: option.game, @@ -343,7 +343,7 @@ async function importGame(useMetadata: boolean) { }, }); - router.push(`/admin/library/${game.id}`); + router.push(`/admin/task/${taskId}`); } function importGame_wrapper(metadata = true) { importLoading.value = true; diff --git a/pages/admin/task/[id]/index.vue b/pages/admin/task/[id]/index.vue index 466ca83..fc6261b 100644 --- a/pages/admin/task/[id]/index.vue +++ b/pages/admin/task/[id]/index.vue @@ -57,11 +57,7 @@
{{ line }}
-
+