mirror of
https://github.com/supabase/supabase.git
synced 2026-10-12 21:05:06 +03:00
* Draft begins * Starte SvelteKit * Changes * Consolidate creating a client * Final draft * Update apps/docs/content/guides/auth/server-side/creating-a-client.mdx Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update apps/docs/content/guides/auth/server-side/creating-a-client.mdx Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Rework and simplify * Update apps/docs/content/guides/auth/server-side/creating-a-client.mdx Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update apps/docs/content/guides/auth/server-side/creating-a-client.mdx Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update apps/docs/content/guides/auth/server-side/creating-a-client.mdx Co-authored-by: Charis <26616127+charislam@users.noreply.github.com> * improve spacing * last * Simplify example * Prettier * Fix hono, remove old pages, and add redirects * Remove from menu * Update apps/docs/content/guides/auth/server-side/creating-a-client.mdx Co-authored-by: Charis <26616127+charislam@users.noreply.github.com> * Changes --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Charis <26616127+charislam@users.noreply.github.com> Co-authored-by: Alan Daniel <stylesshjs@gmail.com>
38 lines
911 B
TypeScript
38 lines
911 B
TypeScript
import { createClient } from '@/utils/supabase/server'
|
|
import Link from 'next/link'
|
|
import { redirect } from 'next/navigation'
|
|
|
|
export default async function AuthButton() {
|
|
const supabase = await createClient()
|
|
|
|
const {
|
|
data: { user },
|
|
} = await supabase.auth.getUser()
|
|
|
|
const signOut = async () => {
|
|
'use server'
|
|
|
|
const supabase = await createClient()
|
|
await supabase.auth.signOut()
|
|
return redirect('/login')
|
|
}
|
|
|
|
return user ? (
|
|
<div className="flex items-center gap-4">
|
|
Hey, {user.email}!
|
|
<form action={signOut}>
|
|
<button className="py-2 px-4 rounded-md no-underline bg-btn-background hover:bg-btn-background-hover">
|
|
Logout
|
|
</button>
|
|
</form>
|
|
</div>
|
|
) : (
|
|
<Link
|
|
href="/login"
|
|
className="py-2 px-3 flex rounded-md no-underline bg-btn-background hover:bg-btn-background-hover"
|
|
>
|
|
Login
|
|
</Link>
|
|
)
|
|
}
|