/// Build-time configuration, passed with `--dart-define` (or `--dart-define-from-file=env.json`). /// When the Supabase values are empty the app runs on the bundled demo catalog. abstract final class Env { static const supabaseUrl = String.fromEnvironment('SUPABASE_URL'); static const supabasePublishableKey = String.fromEnvironment('SUPABASE_PUBLISHABLE_KEY'); /// Public base URL of the R2 bucket (custom domain), e.g. https://media.nangakathai.app static const mediaBaseUrl = String.fromEnvironment('MEDIA_BASE_URL'); static bool get hasSupabase => supabaseUrl.isNotEmpty && supabasePublishableKey.isNotEmpty; }