* chore: migration to SvelteKit 2 * stage 1: migrate to svelte 5 and fix rerendering issues * stage 2: fix more $: reactivity across dashboard * fix merge conflicts * chore: migrate code in main to svelte 5 * chore: update preventDefault * chore: simplify tsconfig and remove unused mobileMenuRef in MobileMenu.svelte * chore: enforce .ts across dashboard * rename from classroomio-com to website * stage-3: Replace carbon icon svelte with lucide icon * update lock file * chore: finish icon replacement * fix: settings and setup page multiple rerender * stage 3: More icon and rerendering fixes * feat: setup drizzle and better auth * fix: onboarding validation error showing translation key #586 (#593) * fix: onboarding validation error showing translation key #586 * fix: remove debug log for profile update errors * chore: add a clean command * fix: remove message from email verification response
25 lines
592 B
TypeScript
25 lines
592 B
TypeScript
import { env } from '$env/dynamic/private';
|
|
import { config } from '$lib/config';
|
|
import { createClient, type SupabaseClient } from '@supabase/supabase-js';
|
|
|
|
export let supabase: SupabaseClient;
|
|
|
|
/**
|
|
* Should only be called on server files
|
|
*
|
|
* @returns supabase
|
|
*/
|
|
export const getServerSupabase = () => {
|
|
if (supabase) return supabase;
|
|
|
|
supabase = createClient(config.supabaseConfig.url, env.PRIVATE_SUPABASE_SERVICE_ROLE || 'some-key-here', {
|
|
auth: {
|
|
persistSession: false,
|
|
autoRefreshToken: false,
|
|
detectSessionInUrl: false
|
|
}
|
|
});
|
|
|
|
return supabase;
|
|
};
|