2024-10-21 21:35:12 +00:00
|
|
|
<script lang="ts">
|
|
|
|
|
import SecondaryNavHeader from "@lib/components/SecondaryNavHeader.svelte"
|
|
|
|
|
import SecondaryNavSection from "@lib/components/SecondaryNavSection.svelte"
|
2026-08-07 21:05:17 +00:00
|
|
|
import SpaceMenuHeader from "@app/components/SpaceMenuHeader.svelte"
|
|
|
|
|
import SpaceMenuNavItems from "@app/components/SpaceMenuNavItems.svelte"
|
|
|
|
|
import SpaceMenuRooms from "@app/components/SpaceMenuRooms.svelte"
|
|
|
|
|
import Link from "@lib/components/Link.svelte"
|
2025-10-21 00:05:22 +00:00
|
|
|
import SocketStatusIndicator from "@app/components/SocketStatusIndicator.svelte"
|
2026-08-07 21:05:17 +00:00
|
|
|
import {makeSpacePath} from "@app/routes"
|
2024-10-21 21:35:12 +00:00
|
|
|
|
2026-07-07 21:23:52 +00:00
|
|
|
type Props = {
|
|
|
|
|
url: string
|
|
|
|
|
mobile?: boolean
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const {url, mobile = false}: Props = $props()
|
2024-10-21 21:35:12 +00:00
|
|
|
</script>
|
|
|
|
|
|
2026-08-07 21:05:17 +00:00
|
|
|
<div class="flex min-h-0 flex-1 flex-col">
|
2026-07-07 21:23:52 +00:00
|
|
|
{#if mobile}
|
|
|
|
|
<SecondaryNavSection class="space-menu min-h-0 flex-1 flex flex-col gap-3 p-0">
|
2026-07-08 22:20:16 +00:00
|
|
|
<div class="card space-menu__card space-menu__header shrink-0 z-nav-item">
|
2026-08-07 21:05:17 +00:00
|
|
|
<SpaceMenuHeader {url} mobile />
|
2026-07-07 21:23:52 +00:00
|
|
|
</div>
|
2026-07-08 22:20:16 +00:00
|
|
|
<div class="space-menu__scroll flex flex-col -mt-12 pt-12 -mb-8 pb-8">
|
2026-07-07 21:23:52 +00:00
|
|
|
<div class="card space-menu__card flex flex-col gap-1">
|
|
|
|
|
<SecondaryNavHeader>Space</SecondaryNavHeader>
|
2026-08-07 21:05:17 +00:00
|
|
|
<SpaceMenuNavItems {url} />
|
2026-07-07 21:23:52 +00:00
|
|
|
</div>
|
2026-08-07 21:05:17 +00:00
|
|
|
<SpaceMenuRooms {url} mobile />
|
2026-07-07 21:23:52 +00:00
|
|
|
</div>
|
2026-07-08 22:20:16 +00:00
|
|
|
<div class="card space-menu__card space-menu__status shrink-0 z-nav-item">
|
2026-08-07 21:05:17 +00:00
|
|
|
<Link href={makeSpacePath(url, "about")} class="space-menu__status-link">
|
|
|
|
|
<SocketStatusIndicator {url} />
|
|
|
|
|
</Link>
|
2026-07-07 21:23:52 +00:00
|
|
|
</div>
|
|
|
|
|
</SecondaryNavSection>
|
|
|
|
|
{:else}
|
|
|
|
|
<SecondaryNavSection class="min-h-0 flex-1 flex flex-col pb-0">
|
|
|
|
|
<div class="shrink-0">
|
2026-08-07 21:05:17 +00:00
|
|
|
<SpaceMenuHeader {url} />
|
2026-07-07 21:23:52 +00:00
|
|
|
</div>
|
2026-07-21 18:06:46 +00:00
|
|
|
<div
|
|
|
|
|
class="space-menu__scroll flex min-h-0 flex-1 flex-col gap-1 overflow-x-hidden overflow-y-auto py-1">
|
2026-08-07 21:05:17 +00:00
|
|
|
<SpaceMenuNavItems {url} />
|
|
|
|
|
<SpaceMenuRooms {url} />
|
2026-07-07 21:23:52 +00:00
|
|
|
<div class="h-5 shrink-0"></div>
|
|
|
|
|
</div>
|
|
|
|
|
</SecondaryNavSection>
|
|
|
|
|
<div class="flex shrink-0 flex-col gap-2 p-2 pt-0 -mt-4 pb-1 md:pb-2 z-nav">
|
2026-08-07 21:05:17 +00:00
|
|
|
<Link href={makeSpacePath(url, "about")} class="button button-neutral button-sm h-10">
|
|
|
|
|
<SocketStatusIndicator {url} />
|
|
|
|
|
</Link>
|
2025-06-30 17:25:34 +00:00
|
|
|
</div>
|
2026-07-07 21:23:52 +00:00
|
|
|
{/if}
|
2024-10-24 21:18:32 +00:00
|
|
|
</div>
|