From 3b3cabb1b67c645c0f69d56d953733878fcbedf6 Mon Sep 17 00:00:00 2001 From: Jade Ellis Date: Tue, 16 Jul 2024 19:42:18 +0100 Subject: [PATCH] Improve error handling in gh download --- .../website/src/lib/GhReleasesDownload.svelte | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/packages/website/src/lib/GhReleasesDownload.svelte b/packages/website/src/lib/GhReleasesDownload.svelte index 25734327..6ca7052b 100644 --- a/packages/website/src/lib/GhReleasesDownload.svelte +++ b/packages/website/src/lib/GhReleasesDownload.svelte @@ -2,31 +2,35 @@ import type { Endpoints } from "@octokit/types"; export let releaseData: Endpoints["GET /repos/{owner}/{repo}/releases/latest"]["response"]["data"]; - import { browser } from '$app/environment'; + import { browser } from "$app/environment"; // console.log(releaseData);
{#if browser && navigator} {#if navigator.platform.startsWith("Win")} - {@const asset =releaseData.assets.filter((a) => a.name.endsWith(".exe"))[0]} + {@const asset = (releaseData?.assets || []).filter((a) => + a.name.endsWith(".exe"), + )[0]} {#if asset} Download for Windows {/if} {:else if navigator.platform.startsWith("Mac")} - {@const asset =releaseData.assets.filter((a) => a.name.endsWith(".dmg"))[0]} - {#if asset} - Download for MacOS - {/if} - + {@const asset = (releaseData?.assets || []).filter((a) => + a.name.endsWith(".dmg"), + )[0]} + {#if asset} + Download for MacOS + {/if} {:else if navigator.platform.startsWith("Linux") && navigator.platform.includes("x86_64")} - - {@const asset =releaseData.assets.filter((a) => a.name.endsWith(".AppImage"))[0]} - {#if asset} - Download AppImage + {@const asset = (releaseData?.assets || []).filter((a) => + a.name.endsWith(".AppImage"), + )[0]} + {#if asset} + Download AppImage + {/if} {/if} - {/if} - + {/if}

Latest release: {releaseData.name}