findWorkingSupabaseUrl function
Implementation
Future<String> findWorkingSupabaseUrl(
List<String> supabaseUrls,
String supabaseAnonKey,
) async {
for (final url in supabaseUrls) {
final client = SupabaseClient(url, supabaseAnonKey);
try {
await client
.from('app_config')
.select()
.eq('id', 'eq.prod')
.limit(1)
.maybeSingle()
.timeout(
const Duration(seconds: 5),
onTimeout: () =>
throw TimeoutException('Connection timeout after 5 seconds'),
);
debugPrint("✅ Connected to Supabase at $url");
return url;
} catch (e) {
debugPrint("⚠️ Failed to connect to $url: $e");
}
}
throw Exception("No Supabase URL worked!");
}