diff options
| author | Adam Soltys <[email protected]> | 2023-12-07 23:36:01 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2023-12-07 23:36:01 -0800 |
| commit | fdef64da149ed0ceae3778238b9882a576e562ef (patch) | |
| tree | 6e09aed6a1f282ce730f804241d0bc263af2981e | |
| parent | d88d4a9b1d8f229904f4a052e03b860a82811a71 (diff) | |
| download | coinos-ui-fdef64da149ed0ceae3778238b9882a576e562ef.tar.gz coinos-ui-fdef64da149ed0ceae3778238b9882a576e562ef.zip | |
verified flow
| -rw-r--r-- | src/components/AppHeader.svelte | 5 | ||||
| -rw-r--r-- | src/lib/utils.js | 12 | ||||
| -rw-r--r-- | src/locales/en.json | 5 | ||||
| -rw-r--r-- | src/routes/(app)/[username]/settings/[...tab]/+page.svelte | 10 | ||||
| -rw-r--r-- | src/routes/(app)/[username]/settings/[...tab]/_account.svelte | 2 | ||||
| -rw-r--r-- | src/routes/(app)/[username]/verify/[code]/+page.server.js | 8 |
6 files changed, 24 insertions, 18 deletions
diff --git a/src/components/AppHeader.svelte b/src/components/AppHeader.svelte index 352dcfa7..57892b18 100644 --- a/src/components/AppHeader.svelte +++ b/src/components/AppHeader.svelte @@ -150,11 +150,8 @@ {/if} <style> - .z { - z-index: 100; - } - header { + z-index: 50; view-transition-name: header; } </style> diff --git a/src/lib/utils.js b/src/lib/utils.js index adbe8356..f55b47b6 100644 --- a/src/lib/utils.js +++ b/src/lib/utils.js @@ -101,8 +101,8 @@ export function reverseFormat(val, locale) { export let protectedRoutes = [/customers/, /settings/, /payments/]; -export let success = (m) => { - toast.pop(); +export let success = (m, clear = true) => { + if (clear) toast.pop(); toast.push(m, { theme: { "--toastBarBackground": "#F5F7FA", @@ -110,16 +110,16 @@ export let success = (m) => { }); }; -export let warning = (m) => { - toast.pop(); +export let warning = (m, clear = true) => { + if (clear) toast.pop(); toast.push(m, { theme: { "--toastBarBackground": "#FFCE22", }, }); }; -export let fail = (m) => { - toast.pop(); +export let fail = (m, clear = true) => { + if (clear) toast.pop(); toast.push(m, { theme: { "--toastBarBackground": "#E93535", diff --git a/src/locales/en.json b/src/locales/en.json index cefabaa3..ac8b0075 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -207,8 +207,11 @@ "nostrKeys": "Nostr key", "nostrDescription": "Your nostr key is used to sign and decrypt messages, keep it safe or someone may be able to impersonate you.", "seedDescription": "This 12 word seed phrase is used to derive your nostr private key and your self-custodial wallet keys which determine your auto-withdrawal addresses. Back it up and don't let anyone see it.", - "emailDescription": "For password resets and notifications", + "emailDescription": "For password resets and payment notifications only", "hideNsec": "Hide nostr secret key", + "saved": "Settings saved!", + "verifying": "Verification email sent", + "verified": "Email verified!", "revealNsec": "Reveal nostr secret key", "hideSeed": "Hide seed phrase", "revealSeed": "Reveal seed phrase", diff --git a/src/routes/(app)/[username]/settings/[...tab]/+page.svelte b/src/routes/(app)/[username]/settings/[...tab]/+page.svelte index b300b75d..03b68973 100644 --- a/src/routes/(app)/[username]/settings/[...tab]/+page.svelte +++ b/src/routes/(app)/[username]/settings/[...tab]/+page.svelte @@ -39,7 +39,7 @@ $: form?.user && ({ user } = form); - $: form?.success && success("Settings saved!"); + $: form?.success && success($t("user.settings.saved"), false); $: form?.message && fail(form.message); @@ -60,6 +60,11 @@ let { address, id, username } = user; let loading; + onMount(() => { + if ($page.url.searchParams.get("verified")) + success($t("user.settings.verified")); + }); + async function handleSubmit() { try { loading = true; @@ -146,8 +151,7 @@ auth(cookies) ); - warning("Verification email sent"); - await sleep(4000); + warning($t("user.settings.verifying"), false); } catch (e) { console.log(e); } diff --git a/src/routes/(app)/[username]/settings/[...tab]/_account.svelte b/src/routes/(app)/[username]/settings/[...tab]/_account.svelte index e96341b4..773485f0 100644 --- a/src/routes/(app)/[username]/settings/[...tab]/_account.svelte +++ b/src/routes/(app)/[username]/settings/[...tab]/_account.svelte @@ -103,7 +103,7 @@ <input type="text" name="email" bind:value={user.email} /> {#if user.verified} <Icon icon="check" style="absolute right-5 top-3 w-8" /> - {:else} + {:else if user.email} <Icon icon="orangeclock" style="absolute right-5 top-3 w-8" /> {/if} </div> diff --git a/src/routes/(app)/[username]/verify/[code]/+page.server.js b/src/routes/(app)/[username]/verify/[code]/+page.server.js index fda11c9e..3ddcd412 100644 --- a/src/routes/(app)/[username]/verify/[code]/+page.server.js +++ b/src/routes/(app)/[username]/verify/[code]/+page.server.js @@ -1,12 +1,14 @@ import { get } from "$lib/utils"; -import { error } from "@sveltejs/kit"; +import { error, redirect } from "@sveltejs/kit"; export let load = async ({ params: { code } }) => { + let user; try { - let user = await get(`/verify/${code}`); - return { user }; + user = await get(`/verify/${code}`); } catch (e) { console.log(e); return { error: "Verification failed" }; } + + throw redirect(307, `/${user.username}/settings/account?verified=true`); }; |
