Use userRoomsByUrl

This commit is contained in:
Jon Staab
2024-12-16 17:07:52 -08:00
parent d0565e7c62
commit 166bd81310
10 changed files with 22 additions and 31 deletions
+2 -3
View File
@@ -15,9 +15,8 @@
import RoomCreate from "@app/components/RoomCreate.svelte"
import MenuSpaceRoomItem from "@app/components/MenuSpaceRoomItem.svelte"
import {
getMembershipUrls,
userRoomsByUrl,
hasMembershipUrl,
userMembership,
memberships,
deriveUserRooms,
deriveOtherRooms,
@@ -93,7 +92,7 @@
</Button>
</li>
<li>
{#if getMembershipUrls($userMembership).includes(url)}
{#if $userRoomsByUrl.has(url)}
<Button on:click={leaveSpace} class="text-error">
<Icon icon="exit" />
Leave Space
+3 -3
View File
@@ -5,7 +5,7 @@
import CardButton from "@lib/components/CardButton.svelte"
import MenuSpacesItem from "@app/components/MenuSpacesItem.svelte"
import SpaceAdd from "@app/components/SpaceAdd.svelte"
import {userMembership, getMembershipUrls, PLATFORM_RELAY} from "@app/state"
import {userRoomsByUrl, PLATFORM_RELAY} from "@app/state"
import {pushModal} from "@app/modal"
const addSpace = () => pushModal(SpaceAdd)
@@ -15,8 +15,8 @@
{#if PLATFORM_RELAY}
<MenuSpacesItem url={PLATFORM_RELAY} />
<Divider />
{:else if getMembershipUrls($userMembership).length > 0}
{#each getMembershipUrls($userMembership) as url (url)}
{:else if $userRoomsByUrl.size > 0}
{#each $userRoomsByUrl.keys() as url (url)}
<MenuSpacesItem {url} />
{/each}
<Divider />
+2 -8
View File
@@ -10,13 +10,7 @@
import MenuSpaces from "@app/components/MenuSpaces.svelte"
import MenuSettings from "@app/components/MenuSettings.svelte"
import PrimaryNavItemSpace from "@app/components/PrimaryNavItemSpace.svelte"
import {
userMembership,
getMembershipUrls,
canDecrypt,
PLATFORM_RELAY,
PLATFORM_LOGO,
} from "@app/state"
import {userRoomsByUrl, canDecrypt, PLATFORM_RELAY, PLATFORM_LOGO} from "@app/state"
import {pushModal} from "@app/modal"
import {makeSpacePath} from "@app/routes"
import {notifications} from "@app/notifications"
@@ -31,7 +25,7 @@
const openChat = () => ($canDecrypt ? goto("/chat") : pushModal(ChatEnable, {next: "/chat"}))
$: spaceUrls = getMembershipUrls($userMembership)
$: spaceUrls = Array.from($userRoomsByUrl.keys())
$: spacePaths = spaceUrls.map(url => makeSpacePath(url))
$: anySpaceNotifications = spacePaths.some(
path => !$page.url.pathname.startsWith(path) && $notifications.has(path),