diff --git a/src/lib/ActionButtons.svelte b/src/lib/ActionButtons.svelte new file mode 100644 index 0000000..1cae57e --- /dev/null +++ b/src/lib/ActionButtons.svelte @@ -0,0 +1,60 @@ + + +
+ + +
diff --git a/src/lib/download.ts b/src/lib/download.ts new file mode 100644 index 0000000..063d1b1 --- /dev/null +++ b/src/lib/download.ts @@ -0,0 +1,6 @@ +export const downloadURI = (uri: string, name: string): void => { + const link = document.createElement('a'); + link.download = name; + link.href = uri; + link.click(); +}; diff --git a/src/routes/index.svelte b/src/routes/index.svelte index 8c96904..5e82445 100644 --- a/src/routes/index.svelte +++ b/src/routes/index.svelte @@ -17,6 +17,8 @@ import { classNames } from '../lib/class-names'; import iro from '@jaames/iro'; import { onMount } from 'svelte'; + import { downloadURI } from '../lib/download'; + import ActionButtons from '../lib/ActionButtons.svelte'; $: rawData = new Response(); @@ -110,16 +112,57 @@

QR Code Generator

-
+
{#await data} placeholder +
+ + +
{:then image} {#if message}

{message}

+ {:else} qrcode + {/if} {:catch e} -

{e.message}

+

+ {e.message} +

+ {/await}