forked from coracle/flotilla
Use userRoomsByUrl
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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 />
|
||||
|
||||
@@ -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),
|
||||
|
||||
Reference in New Issue
Block a user