33 lines
896 B
Dart
33 lines
896 B
Dart
import 'package:onufitness/environment/app_environment.dart';
|
|
import 'package:onufitness/environment/development_config.dart';
|
|
import 'package:onufitness/environment/production_config.dart';
|
|
import 'package:onufitness/environment/uat_config.dart';
|
|
|
|
abstract class EnvironmentConfig {
|
|
String get apiBaseUrl;
|
|
String get webUrl;
|
|
String get sentryDsn;
|
|
String get environment;
|
|
bool get enableLogging;
|
|
bool get useSentry;
|
|
|
|
// App-wide configurations
|
|
String get googleIosClientId;
|
|
String get agoraAppId;
|
|
String get agoraChatAppKey;
|
|
int get streamEndsTime;
|
|
}
|
|
|
|
class EnvironmentConfigFactory {
|
|
static EnvironmentConfig getConfig() {
|
|
switch (AppEnvironment.current) {
|
|
case Environment.development:
|
|
return DevelopmentConfig();
|
|
case Environment.uat:
|
|
return UATConfig();
|
|
case Environment.production:
|
|
return ProductionConfig();
|
|
}
|
|
}
|
|
}
|