postgresFlavorForProject function

FFPostgresFlavor postgresFlavorForProject(
  1. FFProject project, {
  2. required String currentEnvironmentKey,
})

Implementation

FFPostgresFlavor postgresFlavorForProject(
  FFProject project, {
  required String currentEnvironmentKey,
}) {
  final mode = supabaseConnectionModeForProject(project);
  final hasSupabase = switch (mode) {
    FFBackend_SupabaseConnection.supabaseSelfHostedConfig =>
      project.backend.supabaseSelfHostedConfig.projectConfig.enabled,
    FFBackend_SupabaseConnection.supabaseOauthConfig =>
      currentSupabaseConfigForProject(
        project,
        currentEnvironmentKey: currentEnvironmentKey,
      ).projectConfig.enabled,
    FFBackend_SupabaseConnection.notSet => false,
  };
  return hasSupabase
      ? FFPostgresFlavor.FLAVOR_SUPABASE
      : project.backend.postgresConfig.projectConfig.enabled
      ? FFPostgresFlavor.FLAVOR_POSTGRES
      : FFPostgresFlavor.FLAVOR_UNDEFINED;
}