29 lines
853 B
TypeScript
29 lines
853 B
TypeScript
import "react-native-url-polyfill/auto";
|
|
import AsyncStorage from "@react-native-async-storage/async-storage";
|
|
import { createClient } from "@supabase/supabase-js";
|
|
import Constants from "expo-constants";
|
|
|
|
const supabaseUrl = Constants.expoConfig?.extra?.supabaseUrl as string;
|
|
const supabaseAnonKey = Constants.expoConfig?.extra?.supabaseAnonKey as string;
|
|
|
|
if (!supabaseUrl || !supabaseAnonKey) {
|
|
throw new Error(
|
|
"Supabase URL und Anon Key müssen in app.config.ts (extra) gesetzt sein. " +
|
|
"EXPO_PUBLIC_SUPABASE_URL + EXPO_PUBLIC_SUPABASE_ANON_KEY in env.",
|
|
);
|
|
}
|
|
|
|
export const supabase = createClient(supabaseUrl, supabaseAnonKey, {
|
|
auth: {
|
|
storage: AsyncStorage,
|
|
autoRefreshToken: true,
|
|
persistSession: true,
|
|
detectSessionInUrl: false,
|
|
},
|
|
realtime: {
|
|
params: {
|
|
apikey: supabaseAnonKey,
|
|
},
|
|
},
|
|
});
|