diff --git a/src/main/services/download/download-manager.ts b/src/main/services/download/download-manager.ts index d6542396..b9c9d5a6 100644 --- a/src/main/services/download/download-manager.ts +++ b/src/main/services/download/download-manager.ts @@ -104,9 +104,9 @@ export class DownloadManager { console.log(downloadLink, token, "<<<"); - GenericHTTPDownloader.startDownload(game, downloadLink, [ - `Cookie: accountToken=${token}`, - ]); + GenericHTTPDownloader.startDownload(game, downloadLink, { + Cookie: `accountToken=${token}`, + }); } else if (game.downloader === Downloader.PixelDrain) { const id = game!.uri!.split("/").pop(); diff --git a/src/main/services/download/generic-http-downloader.ts b/src/main/services/download/generic-http-downloader.ts index 688769a4..a482c075 100644 --- a/src/main/services/download/generic-http-downloader.ts +++ b/src/main/services/download/generic-http-downloader.ts @@ -69,7 +69,7 @@ export class GenericHTTPDownloader { static async startDownload( game: Game, downloadUrl: string, - headers: string[] = [] + headers?: Record ) { this.downloadingGame = game; diff --git a/src/main/services/download/http-download.ts b/src/main/services/download/http-download.ts index ec16f5cd..ec9ba635 100644 --- a/src/main/services/download/http-download.ts +++ b/src/main/services/download/http-download.ts @@ -26,7 +26,7 @@ export class HTTPDownload { static async cancelDownload(gid: string) { const downloadItem: DownloadItem = this.downloads[gid]; downloadItem?.cancel(); - this.downloads; + delete this.downloads[gid]; } static async pauseDownload(gid: string) { @@ -42,11 +42,11 @@ export class HTTPDownload { static async startDownload( downloadPath: string, downloadUrl: string, - header: string[] = [] + headers?: Record ) { return new Promise((resolve) => { WindowManager.mainWindow?.webContents.downloadURL(downloadUrl, { - headers: { Cookie: header[0].split(": ")[1] }, + headers, }); WindowManager.mainWindow?.webContents.session.on( @@ -59,26 +59,6 @@ export class HTTPDownload { // Set the save path, making Electron not to prompt a save dialog. item.setSavePath(downloadPath); - item.on("updated", (_event, state) => { - if (state === "interrupted") { - console.log("Download is interrupted but can be resumed"); - } else if (state === "progressing") { - if (item.isPaused()) { - console.log("Download is paused"); - } else { - console.log(`Received bytes: ${item.getReceivedBytes()}`); - } - } - }); - - item.once("done", (_event, state) => { - if (state === "completed") { - console.log("Download successfully"); - } else { - console.log(`Download failed: ${state}`); - } - }); - resolve(gid.toString()); } );