From 1ff3877220343972ba8e7008b7338b41cc4c876d Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 27 Jan 2023 09:30:52 -0800 Subject: image previews --- src/routes/(app)/[username]/+layout.server.js | 3 +- .../[username]/settings/[...tab]/+page.svelte | 28 +++--- .../[username]/settings/[...tab]/_account.svelte | 103 ++++++++------------- 3 files changed, 56 insertions(+), 78 deletions(-) (limited to 'src/routes/(app)') diff --git a/src/routes/(app)/[username]/+layout.server.js b/src/routes/(app)/[username]/+layout.server.js index d1b203d7..8279698a 100644 --- a/src/routes/(app)/[username]/+layout.server.js +++ b/src/routes/(app)/[username]/+layout.server.js @@ -5,7 +5,8 @@ export let load = async ({ depends, params: { username } }) => { depends('app:user'); try { - return { subject: await get(`/users/${username}`) }; + let subject = await get(`/users/${username}`) + return { subject }; } catch (e) { console.log(e); throw error(500, 'Unable to retrieve user account data'); diff --git a/src/routes/(app)/[username]/settings/[...tab]/+page.svelte b/src/routes/(app)/[username]/settings/[...tab]/+page.svelte index 94ca2223..e1555248 100644 --- a/src/routes/(app)/[username]/settings/[...tab]/+page.svelte +++ b/src/routes/(app)/[username]/settings/[...tab]/+page.svelte @@ -6,7 +6,7 @@ import { Icon, Spinner, Pin } from '$comp'; import { t } from '$lib/translations'; import { failure, post, success } from '$lib/utils'; - import { avatarUpload, bannerUpload, password, pin } from '$lib/store'; + import { avatar, banner, password, pin } from '$lib/store'; import { upload } from '$lib/upload'; import { page } from '$app/stores'; import { sign, send, reEncryptEntropy } from '$lib/nostr'; @@ -46,7 +46,7 @@ $: ({ comp } = tabs.find((t) => t.name === tab)); - let { address, username } = user; + let { address, id, username } = user; let loading; async function handleSubmit() { @@ -58,17 +58,14 @@ data.set('cipher', await reEncryptEntropy(user, data.get('password'))); } - try { - if ($avatarUpload) { - await upload($avatarUpload.file, $avatarUpload.type, $avatarUpload.progress, token); - } - - if ($bannerUpload) { - await upload($bannerUpload.file, $bannerUpload.type, $bannerUpload.progress, token); - } - } catch (e) { - console.log(e); - failure('Something went wrong'); + if ($avatar) { + await upload($avatar.file, $avatar.type, $avatar.progress, token); + await fetch(`/api/public/${id}-profile.webp`, {cache: 'reload', mode: 'no-cors'}) + } + + if ($banner) { + await upload($banner.file, $banner.type, $banner.progress, token); + await fetch(`/api/public/${id}-banner.webp`, {cache: 'reload', mode: 'no-cors'}) } let event = { @@ -99,11 +96,12 @@ } applyAction(result); - loading = false; } catch (e) { console.log(e); - failure('Problem submitting form'); + failure('Something went wrong'); } + + loading = false; } let loaded; diff --git a/src/routes/(app)/[username]/settings/[...tab]/_account.svelte b/src/routes/(app)/[username]/settings/[...tab]/_account.svelte index 93b5442d..9b5af6d3 100644 --- a/src/routes/(app)/[username]/settings/[...tab]/_account.svelte +++ b/src/routes/(app)/[username]/settings/[...tab]/_account.svelte @@ -1,18 +1,14 @@