mirror of
https://forgejo.ellis.link/continuwuation/continuwuity.git
synced 2026-05-26 20:49:55 +00:00
Improve error handling in gh download
This commit is contained in:
@@ -2,31 +2,35 @@
|
|||||||
import type { Endpoints } from "@octokit/types";
|
import type { Endpoints } from "@octokit/types";
|
||||||
|
|
||||||
export let releaseData: Endpoints["GET /repos/{owner}/{repo}/releases/latest"]["response"]["data"];
|
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);
|
// console.log(releaseData);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="release">
|
<div class="release">
|
||||||
{#if browser && navigator}
|
{#if browser && navigator}
|
||||||
{#if navigator.platform.startsWith("Win")}
|
{#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}
|
{#if asset}
|
||||||
<a href={asset.browser_download_url}>Download for Windows</a>
|
<a href={asset.browser_download_url}>Download for Windows</a>
|
||||||
{/if}
|
{/if}
|
||||||
{:else if navigator.platform.startsWith("Mac")}
|
{:else if navigator.platform.startsWith("Mac")}
|
||||||
{@const asset =releaseData.assets.filter((a) => a.name.endsWith(".dmg"))[0]}
|
{@const asset = (releaseData?.assets || []).filter((a) =>
|
||||||
{#if asset}
|
a.name.endsWith(".dmg"),
|
||||||
<a href={asset.browser_download_url}>Download for MacOS</a>
|
)[0]}
|
||||||
{/if}
|
{#if asset}
|
||||||
|
<a href={asset.browser_download_url}>Download for MacOS</a>
|
||||||
|
{/if}
|
||||||
{:else if navigator.platform.startsWith("Linux") && navigator.platform.includes("x86_64")}
|
{:else if navigator.platform.startsWith("Linux") && navigator.platform.includes("x86_64")}
|
||||||
|
{@const asset = (releaseData?.assets || []).filter((a) =>
|
||||||
{@const asset =releaseData.assets.filter((a) => a.name.endsWith(".AppImage"))[0]}
|
a.name.endsWith(".AppImage"),
|
||||||
{#if asset}
|
)[0]}
|
||||||
<a href={asset.browser_download_url}>Download AppImage</a>
|
{#if asset}
|
||||||
|
<a href={asset.browser_download_url}>Download AppImage</a>
|
||||||
|
{/if}
|
||||||
{/if}
|
{/if}
|
||||||
{/if}
|
<!-- {:else} -->
|
||||||
<!-- {:else} -->
|
|
||||||
{/if}
|
{/if}
|
||||||
<p>Latest release: <a href={releaseData.html_url}>{releaseData.name}</a></p>
|
<p>Latest release: <a href={releaseData.html_url}>{releaseData.name}</a></p>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user