29 lines
704 B
TypeScript
29 lines
704 B
TypeScript
import { createServerClient } from "@supabase/ssr"
|
|
import { createServerOnlyFn } from "@tanstack/react-start"
|
|
import { getCookies, setCookie } from "@tanstack/react-start/server"
|
|
|
|
const supabase_url = createServerOnlyFn(
|
|
() => process.env.SUPABASE_URL as string
|
|
)
|
|
const supabase_key = createServerOnlyFn(
|
|
() => process.env.SUPABASE_KEY as string
|
|
)
|
|
|
|
export function getSupabaseServerClient() {
|
|
return createServerClient(supabase_url(), supabase_key(), {
|
|
cookies: {
|
|
getAll() {
|
|
return Object.entries(getCookies()).map(([name, value]) => ({
|
|
name,
|
|
value
|
|
}))
|
|
},
|
|
setAll(cookies) {
|
|
cookies.forEach((cookie) => {
|
|
setCookie(cookie.name, cookie.value)
|
|
})
|
|
}
|
|
}
|
|
})
|
|
}
|