32 lines
1.2 KiB
Dart
32 lines
1.2 KiB
Dart
import 'package:rasadyar_auth/data/common/constant.dart';
|
|
import 'package:rasadyar_auth/data/common/dio_error_handler.dart';
|
|
import 'package:rasadyar_auth/data/repositories/auth_repository_imp.dart';
|
|
import 'package:rasadyar_core/core.dart';
|
|
|
|
import '../common/dio_manager.dart';
|
|
|
|
GetIt diAuth = GetIt.instance;
|
|
|
|
Future<void> setupAuthDI() async {
|
|
diAuth.registerLazySingleton(() => DioRemoteManager());
|
|
diAuth.registerLazySingleton<DioRemote>(() => DioRemote());
|
|
|
|
/* final manager = diAuth.get<DioRemoteManager>();
|
|
final dioRemote = await manager.setEnvironment(ApiEnvironment.dam);*/
|
|
|
|
final dioRemote = diAuth.get<DioRemote>();
|
|
await dioRemote.init();
|
|
diAuth.registerSingleton<AuthRepositoryImpl>(AuthRepositoryImpl(dioRemote));
|
|
diAuth.registerLazySingleton<DioErrorHandler>(() => DioErrorHandler());
|
|
}
|
|
|
|
Future<void> newSetupAuthDI(String newUrl) async {
|
|
diAuth.registerLazySingleton<DioRemote>(() => DioRemote(baseUrl: newUrl),instanceName: 'newRemote');
|
|
final dioRemote = diAuth.get<DioRemote>(instanceName: 'newRemote');
|
|
await dioRemote.init();
|
|
diAuth.registerSingleton<AuthRepositoryImpl>(
|
|
AuthRepositoryImpl(dioRemote),
|
|
instanceName: 'newUrl',
|
|
);
|
|
}
|