import 'package:get_it/get_it.dart'; import 'package:test_sa/modules/cx_module/chat/services/signalr_service.dart'; import 'package:test_sa/modules/cx_module/chat/call/services/webrtc_service.dart'; /// Global service locator instance final getIt = GetIt.instance; /// Setup dependency injection Future setupServiceLocator() async { // SignalR Service - ONLY ONE instance for the entire app getIt.registerLazySingleton( () => SignalRService(), ); // WebRTC Service - ONLY ONE instance for the entire app getIt.registerLazySingleton( () => WebRTCService(), ); print('✅ [DI] Service locator initialized'); print(' - SignalRService registered as singleton (hashCode: ${getIt().hashCode})'); print(' - WebRTCService registered as singleton (hashCode: ${getIt().hashCode})'); } Future resetServices() async { await getIt().reset(); print('✅ [DI] All services reset'); }