From bc75c9a2c77d9ee231efcc8b3c4d5a5212d76aac Mon Sep 17 00:00:00 2001 From: StroepWafel Date: Thu, 4 Jun 2026 20:05:34 +0930 Subject: [PATCH] PFP caching --- src/interface/components/CloudPanel.svelte | 9 +- .../components/CloudPfpAvatar.svelte | 44 +++++++ .../components/store/CloudHeader.svelte | 17 +-- src/plugins/built-in/profilePicture/index.ts | 20 ++-- src/seqta/utils/CloudAuth.ts | 4 + src/seqta/utils/cloudPfpCache.ts | 112 ++++++++++++++++++ src/seqta/utils/cloudPfpSync.ts | 49 ++++++-- src/types/storage.ts | 2 +- 8 files changed, 228 insertions(+), 29 deletions(-) create mode 100644 src/interface/components/CloudPfpAvatar.svelte create mode 100644 src/seqta/utils/cloudPfpCache.ts diff --git a/src/interface/components/CloudPanel.svelte b/src/interface/components/CloudPanel.svelte index ee8faea2..fb0ce6a5 100644 --- a/src/interface/components/CloudPanel.svelte +++ b/src/interface/components/CloudPanel.svelte @@ -3,6 +3,7 @@ import { animate } from "motion"; import { delay } from "@/seqta/utils/delay.ts"; import { cloudAuth } from "@/seqta/utils/CloudAuth"; + import CloudPfpAvatar from "@/interface/components/CloudPfpAvatar.svelte"; const { hidePanel } = $props<{ hidePanel: () => void; @@ -105,12 +106,12 @@
{#if cloudState.user?.pfpUrl} - - {:else} + {/if} + {#if !cloudState.user?.pfpUrl}
{getInitials()}
diff --git a/src/interface/components/CloudPfpAvatar.svelte b/src/interface/components/CloudPfpAvatar.svelte new file mode 100644 index 00000000..d44a181a --- /dev/null +++ b/src/interface/components/CloudPfpAvatar.svelte @@ -0,0 +1,44 @@ + + +{#if avatarSrc} + +{/if} diff --git a/src/interface/components/store/CloudHeader.svelte b/src/interface/components/store/CloudHeader.svelte index b8ce98da..abae4e29 100644 --- a/src/interface/components/store/CloudHeader.svelte +++ b/src/interface/components/store/CloudHeader.svelte @@ -1,6 +1,7 @@