From 768a4e2414e50d1f0fc15f529a2b4307c2d2aaee Mon Sep 17 00:00:00 2001 From: DecDuck Date: Wed, 25 Feb 2026 23:23:36 +1100 Subject: [PATCH] Quick fixes (#355) * fix: error message on import * fix: 2fa input size --- pages/admin/library/[id]/import.vue | 42 +++++++++++++++-------------- pages/auth/mfa/totp.vue | 1 + 2 files changed, 23 insertions(+), 20 deletions(-) diff --git a/pages/admin/library/[id]/import.vue b/pages/admin/library/[id]/import.vue index d5d6ad85..53ab061c 100644 --- a/pages/admin/library/[id]/import.vue +++ b/pages/admin/library/[id]/import.vue @@ -297,7 +297,7 @@ {{ $t("library.admin.import.import") }} @@ -363,6 +363,7 @@ import { MinusIcon, PlusIcon, } from "@heroicons/vue/20/solid"; +import { FetchError } from "ofetch"; import { GameType } from "~/prisma/client/enums"; import type { ImportVersion } from "~/server/api/v1/admin/import/version/index.post"; import type { VersionGuess } from "~/server/internal/library"; @@ -414,26 +415,27 @@ async function updateCurrentlySelectedVersion(value: number) { } async function startImport() { - if (!versionSettings.value) return; - const taskId = await $dropFetch("/api/v1/admin/import/version", { - method: "POST", - body: { - ...versionSettings.value, - id: gameId, - version: versions[currentlySelectedVersion.value], - }, - }); - router.push(`/admin/task/${taskId.taskId}`); -} - -function startImport_wrapper() { importLoading.value = true; - startImport() - .catch((error) => { - importError.value = error.statusMessage ?? t("errors.unknown"); - }) - .finally(() => { - importLoading.value = false; + + if (!versionSettings.value) return; + try { + const taskId = await $dropFetch("/api/v1/admin/import/version", { + method: "POST", + body: { + ...versionSettings.value, + id: gameId, + version: versions[currentlySelectedVersion.value], + }, }); + router.push(`/admin/task/${taskId.taskId}`); + } catch (error) { + if (error instanceof FetchError) { + importError.value = error.data?.message ?? t("errors.unknown"); + } else { + importError.value = (error as string)?.toString(); + } + } finally { + importLoading.value = false; + } } diff --git a/pages/auth/mfa/totp.vue b/pages/auth/mfa/totp.vue index 449dd7c6..833e146d 100644 --- a/pages/auth/mfa/totp.vue +++ b/pages/auth/mfa/totp.vue @@ -26,6 +26,7 @@