import 'package:connectivity_plus/connectivity_plus.dart'; import 'package:dio/dio.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; import 'package:injectable/injectable.dart'; import 'package:shared_preferences/shared_preferences.dart'; @module abstract class RegisterModule { @lazySingleton Connectivity get connectivity => Connectivity(); @lazySingleton FlutterSecureStorage get storage => const FlutterSecureStorage( aOptions: AndroidOptions(encryptedSharedPreferences: true), ); @lazySingleton http.Client get httpClient => http.Client(); @lazySingleton Dio get dio => Dio(BaseOptions( connectTimeout: const Duration(seconds: 15), receiveTimeout: const Duration(seconds: 15), )); @preResolve Future get sharedPreferences => SharedPreferences.getInstance(); }