diff --git a/frontend/src/lib/api.js b/frontend/src/lib/api.js index 1f54b3a..6ba1495 100644 --- a/frontend/src/lib/api.js +++ b/frontend/src/lib/api.js @@ -43,10 +43,11 @@ export async function deleteGame(id) { } /** Upload a game ZIP */ -export async function uploadGame(file, title) { +export async function uploadGame(file, title, igdbId) { const form = new FormData(); form.append("file", file); if (title) form.append("title", title); + if (igdbId) form.append("igdb_id", String(igdbId)); const res = await fetch(`${BASE}/api/upload`, { method: "POST", diff --git a/frontend/src/pages/Library.svelte b/frontend/src/pages/Library.svelte index 0ea0155..da90bc0 100644 --- a/frontend/src/pages/Library.svelte +++ b/frontend/src/pages/Library.svelte @@ -82,12 +82,12 @@ manualSearched = false; } - async function doUpload(title) { + async function doUpload(title, igdbId) { if (!pendingFile) return; uploading = true; uploadError = ""; try { - await uploadGame(pendingFile, title || undefined); + await uploadGame(pendingFile, title || undefined, igdbId); cancelUpload(); await loadGames(); } catch (err) { @@ -139,10 +139,12 @@ {:else if igdbResults !== null && igdbResults.length > 0}

Select a match or enter a custom title:

- {#each igdbResults as result (result.igdb_id)} + {#each igdbResults as result}