diff options
| author | Adam Soltys <[email protected]> | 2022-11-01 13:33:14 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2022-11-01 13:33:14 -0700 |
| commit | 41f023139132e427f6b67f12742691845918c101 (patch) | |
| tree | 84cfa89c4ddee5d2a1721cd93676dcbf20206c8e /src | |
| parent | 7b91d415aa70a8e1ca04422ea70421f704cbdfc8 (diff) | |
| download | coinos-ui-41f023139132e427f6b67f12742691845918c101.tar.gz coinos-ui-41f023139132e427f6b67f12742691845918c101.zip | |
prerender homepage
Diffstat (limited to 'src')
| -rw-r--r-- | src/app.html | 6 | ||||
| -rw-r--r-- | src/components/Icon.svelte | 2 | ||||
| -rw-r--r-- | src/components/LandingInfoCard.svelte | 4 | ||||
| -rw-r--r-- | src/lib/invoice.js | 2 | ||||
| -rw-r--r-- | src/routes/+layout.server.js | 3 | ||||
| -rw-r--r-- | src/routes/+layout.svelte | 14 | ||||
| -rw-r--r-- | src/routes/+page.server.js | 1 | ||||
| -rw-r--r-- | src/routes/+page.svelte | 20 | ||||
| -rw-r--r-- | src/routes/[username]/transactions/[...page]/+page.server.js | 2 | ||||
| -rw-r--r-- | src/routes/logout/+page.server.js | 2 | ||||
| -rw-r--r-- | src/routes/logout/done/+page.svelte | 9 | ||||
| -rw-r--r-- | src/routes/scan/+page.svelte | 5 |
12 files changed, 40 insertions, 30 deletions
diff --git a/src/app.html b/src/app.html index 57d6d21c..42e791f7 100644 --- a/src/app.html +++ b/src/app.html @@ -7,12 +7,6 @@ <meta name="description" content="An easy bitcoin web wallet" /> <meta name="keywords" content="open source bitcoin lightning web wallet" /> %sveltekit.head% - <script src="https://stamen-maps.a.ssl.fastly.net/js/tile.stamen.js"></script> - <style> - img.huechange { - filter: hue-rotate(170deg); - } - </style> </head> <body> <div>%sveltekit.body%</div> diff --git a/src/components/Icon.svelte b/src/components/Icon.svelte index 58a61033..4b86cc43 100644 --- a/src/components/Icon.svelte +++ b/src/components/Icon.svelte @@ -1,6 +1,6 @@ <script> export let icon; - export let style; + export let style = undefined; </script> <img src="/icons/{icon}.svg" alt={icon} class={style} /> diff --git a/src/components/LandingInfoCard.svelte b/src/components/LandingInfoCard.svelte index c67d3fcc..3d719e0b 100644 --- a/src/components/LandingInfoCard.svelte +++ b/src/components/LandingInfoCard.svelte @@ -3,8 +3,8 @@ export let image; export let title; - export let description; - export let order; + export let description = undefined; + export let order = undefined; </script> <div class="block lg:flex justify-center lg:space-x-20 items-center"> diff --git a/src/lib/invoice.js b/src/lib/invoice.js index b1330f89..e8a5f615 100644 --- a/src/lib/invoice.js +++ b/src/lib/invoice.js @@ -16,7 +16,7 @@ export default async ({ cookies, request }) => { let user = { username: form.get('username') }; - let { uuid }= await post('/invoice', { invoice, user }, auth(cookies)); + let { uuid } = await post('/invoice', { invoice, user }, auth(cookies)); if (invoice.prompt) { throw redirect(307, `/invoice/${uuid}/tip`); diff --git a/src/routes/+layout.server.js b/src/routes/+layout.server.js index 6af13a06..6d1fc3e0 100644 --- a/src/routes/+layout.server.js +++ b/src/routes/+layout.server.js @@ -23,6 +23,9 @@ export async function load({ cookies, locals, request, url, params }) { if (user.username !== params.username) throw error(404, 'user not found'); } + if (['/login', '/register'].includes(url.pathname)) + throw redirect(307, `/${user.username}/dashboard`); + let account = user.accounts.find((a) => a.asset === btc && !a.pubkey); if (account) { let { id } = account; diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 6b62ff4a..f1a81723 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -2,7 +2,7 @@ import { SvelteToast } from '@zerodevx/svelte-toast'; import '../app.css'; import { onDestroy, onMount } from 'svelte'; - import { connect, send } from '$lib/socket'; + import { close, connect, send } from '$lib/socket'; import { last, selectedRate, rate, user } from '$lib/store'; import { page } from '$app/stores'; import { browser } from '$app/environment'; @@ -25,6 +25,8 @@ $user = u; }; + $: $page.url.searchParams.get('logout') && close(); + $: $selectedRate = u && r * (rates[u.currency] / rates.USD); onMount(() => { @@ -59,11 +61,11 @@ <title>coinos</title> {/if} - {#if subject?.profile} - <meta name="og:image" content={`/api/public/${subject.username}-profile.webp`} /> - {:else} - <meta property="og:image" content="/icons/logo.svg" /> - {/if} + {#if subject?.profile} + <meta name="og:image" content={`/api/public/${subject.username}-profile.webp`} /> + {:else} + <meta property="og:image" content="/icons/logo.svg" /> + {/if} </svelte:head> <SvelteToast options={{ reversed: true, intro: { y: 192 } }} /> diff --git a/src/routes/+page.server.js b/src/routes/+page.server.js index dd68c502..2c5d27db 100644 --- a/src/routes/+page.server.js +++ b/src/routes/+page.server.js @@ -1 +1,2 @@ +export const prerender = true; export let load = async ({ fetch }) => (await fetch('/locations')).json(); diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 097278fb..e318ad3a 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -11,6 +11,8 @@ } from '$comp'; import { t } from '$lib/translations'; + import { close } from '$lib/socket'; + import { onMount } from 'svelte'; export let data; let { user } = data; @@ -27,8 +29,22 @@ ]; const faqIDs = ['cost', 'compatibility', 'safety']; + + onMount(async () => { + close(); + + try { + ({ locations } = await fetch('/locations').then((r) => r.json())); + } catch (e) { + console.log(e); + } + }); </script> +<svelte:head> + <script src="https://stamen-maps.a.ssl.fastly.net/js/tile.stamen.js"></script> +</svelte:head> + <LandingHeader {howItWorks} {faq} {about} {user} /> <main class="space-y-40 py-20 md:py-32 lg:py-36 xl:py-40 px-5 md:px-0"> @@ -76,9 +92,9 @@ <div bind:this={about} /> </div> - <div> + {#if locations?.length} <About {locations} /> - </div> + {/if} </main> <Footer /> diff --git a/src/routes/[username]/transactions/[...page]/+page.server.js b/src/routes/[username]/transactions/[...page]/+page.server.js index 0dd9ab6b..6883dfa9 100644 --- a/src/routes/[username]/transactions/[...page]/+page.server.js +++ b/src/routes/[username]/transactions/[...page]/+page.server.js @@ -12,7 +12,7 @@ export async function load({ cookies, params, request }) { if (!parseInt(page)) page = 1; let offset = (page - 1) * limit; - if (!start) start = (Date.now() / 1000) - 24 * 60 * 60; + if (!start) start = Date.now() / 1000 - 24 * 60 * 60; let url = `/payments?v2=true&start=${start * 1000}&limit=${limit}&offset=${offset}`; if (end) url += `&end=${end * 1000}`; diff --git a/src/routes/logout/+page.server.js b/src/routes/logout/+page.server.js index caacbbfd..1b4a1dc1 100644 --- a/src/routes/logout/+page.server.js +++ b/src/routes/logout/+page.server.js @@ -8,5 +8,5 @@ const opts = { export async function load({ cookies }) { cookies.set('token', '', opts); cookies.set('refresh_token', '', opts); - throw redirect(303, '/logout/done'); + throw redirect(307, '/'); } diff --git a/src/routes/logout/done/+page.svelte b/src/routes/logout/done/+page.svelte deleted file mode 100644 index 2553843d..00000000 --- a/src/routes/logout/done/+page.svelte +++ /dev/null @@ -1,9 +0,0 @@ -<script> - import { onMount } from 'svelte'; - import { goto } from '$app/navigation'; - import { close } from '$lib/socket'; - onMount(() => { - close(); - goto('/'); - }); -</script> diff --git a/src/routes/scan/+page.svelte b/src/routes/scan/+page.svelte index 4160d860..10c288dd 100644 --- a/src/routes/scan/+page.svelte +++ b/src/routes/scan/+page.svelte @@ -23,7 +23,10 @@ <div class="flex w-full mb-4 px-4"> <div class="bg-black mx-auto rounded-3xl"> - <video bind:this={vid} class="border-4 rounded-3xl border-black md:max-w-[600px] !max-h-[300px]" /> + <video + bind:this={vid} + class="border-4 rounded-3xl border-black md:max-w-[600px] !max-h-[300px]" + /> </div> </div> |
