added user in app layout load

pull/3/head
TZGyn 2 years ago
parent d4cda54f46
commit 5d6c8a1f2b
Signed by: TZGyn
GPG Key ID: 122EAF77AE81FD4A

@ -9,6 +9,8 @@
import { Loader2, User } from 'lucide-svelte' import { Loader2, User } from 'lucide-svelte'
import { goto } from '$app/navigation' import { goto } from '$app/navigation'
export let email: string = ''
let dialogOpen = false let dialogOpen = false
let isLoading = false let isLoading = false
const logout = async () => { const logout = async () => {
@ -56,7 +58,7 @@
</DropdownMenu.Trigger> </DropdownMenu.Trigger>
<DropdownMenu.Content> <DropdownMenu.Content>
<DropdownMenu.Group> <DropdownMenu.Group>
<DropdownMenu.Label>My Account</DropdownMenu.Label> <DropdownMenu.Label>{email}</DropdownMenu.Label>
<DropdownMenu.Separator /> <DropdownMenu.Separator />
<DropdownMenu.Item on:click={() => goto('/profile')}> <DropdownMenu.Item on:click={() => goto('/profile')}>
Profile Profile

@ -1,7 +1,22 @@
import { getUserFromSessionToken } from '$lib/server/auth'
import { redirect } from '@sveltejs/kit'
import type { LayoutServerLoad } from './$types' import type { LayoutServerLoad } from './$types'
export const load = (async () => { export const load = (async (event) => {
const token = event.cookies.get('token')
if (!token) {
throw redirect(303, '/')
}
const user = await getUserFromSessionToken(token)
if (!user) {
throw redirect(303, '/')
}
return { return {
shortener_url: process.env.SHORTENER_URL ?? 's.tzgyn.com', shortener_url: process.env.SHORTENER_URL ?? 's.tzgyn.com',
user: user,
} }
}) satisfies LayoutServerLoad }) satisfies LayoutServerLoad

@ -1,9 +1,12 @@
<script lang="ts"> <script lang="ts">
import Sidebar from '$lib/components/sidebar.svelte' import Sidebar from '$lib/components/sidebar.svelte'
import type { PageData } from './$types'
export let data: PageData
</script> </script>
<div class="flex h-screen w-full"> <div class="flex h-screen w-full">
<Sidebar /> <Sidebar email={data.user.email} />
<div class="w-full p-4"> <div class="w-full p-4">
<slot /> <slot />
</div> </div>

Loading…
Cancel
Save