From 438d72d188b19622eaf4b4c7760363317693a705 Mon Sep 17 00:00:00 2001 From: verbiricha Date: Mon, 31 Jul 2023 10:00:40 +0200 Subject: [PATCH] fix: set emojis when session available --- src/hooks/login.ts | 6 ++++-- src/login.ts | 8 +++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/hooks/login.ts b/src/hooks/login.ts index 6302697..4565f9a 100644 --- a/src/hooks/login.ts +++ b/src/hooks/login.ts @@ -87,6 +87,8 @@ export function useLoginEvents(pubkey?: string, leaveOpen = false) { const emojis = useUserEmojiPacks(pubkey, userEmojis); useEffect(() => { - Login.setEmojis(emojis); - }, [emojis]); + if (session) { + Login.setEmojis(emojis); + } + }, [session, emojis]); } diff --git a/src/login.ts b/src/login.ts index e4aff98..95051ae 100644 --- a/src/login.ts +++ b/src/login.ts @@ -35,12 +35,14 @@ const initialState = { emojis: [], }; +const SESSION_KEY = "session"; + export class LoginStore extends ExternalStore { #session?: LoginSession; constructor() { super(); - const json = window.localStorage.getItem("session"); + const json = window.localStorage.getItem(SESSION_KEY); if (json) { this.#session = { ...initialState, ...JSON.parse(json) }; if (this.#session) { @@ -126,9 +128,9 @@ export class LoginStore extends ExternalStore { #save() { if (this.#session) { - window.localStorage.setItem("session", JSON.stringify(this.#session)); + window.localStorage.setItem(SESSION_KEY, JSON.stringify(this.#session)); } else { - window.localStorage.removeItem("session"); + window.localStorage.removeItem(SESSION_KEY); } this.notifyChange(); }