diff --git a/src/lib/server/helpers.ts b/src/lib/server/helpers.ts index 31c4b63..7474981 100644 --- a/src/lib/server/helpers.ts +++ b/src/lib/server/helpers.ts @@ -16,13 +16,4 @@ export const isURLValid = (url: string) => { return true; } -export const mimeTypeMap = formatMime; -export const sseBufferMap = new Map() -export const sseHelper = (key: string, log: string) => { - if (!sseBufferMap.has(key)) { - sseBufferMap.set(key, []) - } - const buffer = sseBufferMap.get(key) - buffer.push(log) - sseBufferMap.set(key, buffer) -} \ No newline at end of file +export const mimeTypeMap = formatMime; \ No newline at end of file diff --git a/src/lib/server/ytdlp.ts b/src/lib/server/ytdlp.ts index c9ac629..94b79c9 100644 --- a/src/lib/server/ytdlp.ts +++ b/src/lib/server/ytdlp.ts @@ -63,11 +63,11 @@ export function streamYouTube(link: string, format: string): ReadableStream { - console.error('Stream error:', err); + logger.error('Stream error:', err); controller.error(err); }); } diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 4c8455a..08940b8 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -12,6 +12,8 @@ let disabled = $state(true); let metadata = $state(false); let downloading = $state(false); + let logs = $state(''); + let logId = undefined; const formats = Object.keys(supportedFormats).map((f) => { return { value: f, label: f.toUpperCase() }; @@ -25,15 +27,24 @@ document.cookie = 'downloading=0' }); + const readLogs = () => { + logId = setInterval(() => { + logs += "We're downloading
" + }, 2000) + } const onClick = () => { + let checkIterations = 0; link = ''; downloading = true; document.cookie = 'downloading=1' + + readLogs() const id = setInterval(() => { - if (document.cookie.includes('downloading=0')) { - downloading = false && clearInterval(id); + if (document.cookie.includes('downloading=0') || checkIterations > 3) { + downloading = false && clearInterval(id) && clearInterval(logId); } + checkIterations++; }, 1000); }; @@ -81,8 +92,10 @@ id="wrapper" class="relative mx-auto rounded-lg bg-black p-6 text-[#00ff7f] shadow-lg sm:max-w-sm sm:border-4 sm:border-[#00ff7f] md:mt-10 md:max-w-md lg:max-w-lg 2xl:max-w-2xl" > -
+ +
+ {@html logs}
@@ -169,7 +182,7 @@
- +