20 lines
701 B
TypeScript
20 lines
701 B
TypeScript
// EXPO_PUBLIC_* vars are inlined at bundle time by Expo's Babel plugin.
|
|
// We pull them through a single typed module so a missing var is a loud
|
|
// startup error rather than a confusing Supabase 401 later.
|
|
|
|
function required(name: string): string {
|
|
const v = process.env[name];
|
|
if (!v || v.length === 0) {
|
|
throw new Error(
|
|
'Missing required env var ' + name + '. Set it in apps/mobile/.env.local — see .env.example.',
|
|
);
|
|
}
|
|
return v;
|
|
}
|
|
|
|
export const env = {
|
|
supabaseUrl: required('EXPO_PUBLIC_SUPABASE_URL'),
|
|
supabaseAnonKey: required('EXPO_PUBLIC_SUPABASE_ANON_KEY'),
|
|
authRedirectUrl: process.env.EXPO_PUBLIC_AUTH_REDIRECT_URL ?? 'netralax://auth/callback',
|
|
} as const;
|