// dart format width=80
// GENERATED CODE - DO NOT MODIFY BY HAND

// **************************************************************************
// InjectableConfigGenerator
// **************************************************************************

// ignore_for_file: type=lint
// coverage:ignore-file

// ignore_for_file: no_leading_underscores_for_library_prefixes
import 'package:apskel_owner_flutter/common/api/api_client.dart' as _i115;
import 'package:apskel_owner_flutter/common/di/di_auto_route.dart' as _i311;
import 'package:apskel_owner_flutter/common/di/di_connectivity.dart' as _i586;
import 'package:apskel_owner_flutter/common/di/di_dio.dart' as _i103;
import 'package:apskel_owner_flutter/common/di/di_shared_preferences.dart'
    as _i402;
import 'package:apskel_owner_flutter/common/network/network_client.dart'
    as _i543;
import 'package:apskel_owner_flutter/env.dart' as _i6;
import 'package:apskel_owner_flutter/presentation/router/app_router.dart'
    as _i258;
import 'package:connectivity_plus/connectivity_plus.dart' as _i895;
import 'package:dio/dio.dart' as _i361;
import 'package:get_it/get_it.dart' as _i174;
import 'package:injectable/injectable.dart' as _i526;
import 'package:shared_preferences/shared_preferences.dart' as _i460;

const String _dev = 'dev';
const String _prod = 'prod';

extension GetItInjectableX on _i174.GetIt {
  // initializes the registration of main-scope dependencies inside of GetIt
  Future<_i174.GetIt> init({
    String? environment,
    _i526.EnvironmentFilter? environmentFilter,
  }) async {
    final gh = _i526.GetItHelper(this, environment, environmentFilter);
    final sharedPreferencesDi = _$SharedPreferencesDi();
    final dioDi = _$DioDi();
    final autoRouteDi = _$AutoRouteDi();
    final connectivityDi = _$ConnectivityDi();
    await gh.factoryAsync<_i460.SharedPreferences>(
      () => sharedPreferencesDi.prefs,
      preResolve: true,
    );
    gh.lazySingleton<_i361.Dio>(() => dioDi.dio);
    gh.lazySingleton<_i258.AppRouter>(() => autoRouteDi.appRouter);
    gh.lazySingleton<_i895.Connectivity>(() => connectivityDi.connectivity);
    gh.lazySingleton<_i543.NetworkClient>(
      () => _i543.NetworkClient(gh<_i895.Connectivity>()),
    );
    gh.factory<_i6.Env>(() => _i6.DevEnv(), registerFor: {_dev});
    gh.lazySingleton<_i115.ApiClient>(
      () => _i115.ApiClient(gh<_i361.Dio>(), gh<_i6.Env>()),
    );
    gh.factory<_i6.Env>(() => _i6.ProdEnv(), registerFor: {_prod});
    return this;
  }
}

class _$SharedPreferencesDi extends _i402.SharedPreferencesDi {}

class _$DioDi extends _i103.DioDi {}

class _$AutoRouteDi extends _i311.AutoRouteDi {}

class _$ConnectivityDi extends _i586.ConnectivityDi {}
