From 1b15767a17d4c80f0c7ea5598ed12a644662f46c Mon Sep 17 00:00:00 2001 From: Jon Staab Date: Thu, 7 Nov 2024 15:19:19 -0800 Subject: [PATCH] Move connection check --- src/app/components/MenuSpace.svelte | 8 -------- src/routes/spaces/[relay]/+layout.svelte | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/app/components/MenuSpace.svelte b/src/app/components/MenuSpace.svelte index e5d86ad..b9f5970 100644 --- a/src/app/components/MenuSpace.svelte +++ b/src/app/components/MenuSpace.svelte @@ -22,9 +22,7 @@ roomsByUrl, GENERAL, } from "@app/state" - import {checkRelayConnection, checkRelayAuth} from "@app/commands" import {pushModal} from "@app/modal" - import {pushToast} from "@app/toast" import {makeSpacePath} from "@app/routes" export let url @@ -73,12 +71,6 @@ onMount(async () => { replaceState = Boolean(element.closest(".drawer")) - - const error = (await checkRelayConnection(url)) || (await checkRelayAuth(url)) - - if (error) { - pushToast({theme: "error", message: error}) - } }) diff --git a/src/routes/spaces/[relay]/+layout.svelte b/src/routes/spaces/[relay]/+layout.svelte index 6963fc1..554c773 100644 --- a/src/routes/spaces/[relay]/+layout.svelte +++ b/src/routes/spaces/[relay]/+layout.svelte @@ -7,11 +7,27 @@ import Delay from "@lib/components/Delay.svelte" import SecondaryNav from "@lib/components/SecondaryNav.svelte" import MenuSpace from "@app/components/MenuSpace.svelte" + import {pushToast} from "@app/toast" + import {checkRelayConnection, checkRelayAuth} from "@app/commands" import {decodeRelay, MEMBERSHIPS, THREAD, MESSAGE, COMMENT} from "@app/state" $: url = decodeRelay($page.params.relay) + const ifLet = (x: T | undefined, f: (x: T) => void) => x === undefined ? undefined : f(x) + + const checkConnection = async () => { + ifLet(await checkRelayConnection(url), error => { + pushToast({theme: "error", message: error}) + }) + + ifLet(await checkRelayAuth(url), error => { + pushToast({theme: "error", message: error}) + }) + } + onMount(() => { + checkConnection() + const sub = subscribe({ filters: [ {kinds: [DELETE], "#k": [THREAD, COMMENT, MESSAGE].map(String)},