// 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_pos_flutter_v2/application/analytic/category_analytic_loader/category_analytic_loader_bloc.dart'
    as _i911;
import 'package:apskel_pos_flutter_v2/application/analytic/dashboard_analytic_loader/dashboard_analytic_loader_bloc.dart'
    as _i80;
import 'package:apskel_pos_flutter_v2/application/analytic/inventory_analytic_loader/inventory_analytic_loader_bloc.dart'
    as _i651;
import 'package:apskel_pos_flutter_v2/application/analytic/payment_method_analytic_loader/payment_method_analytic_loader_bloc.dart'
    as _i733;
import 'package:apskel_pos_flutter_v2/application/analytic/product_analytic_loader/product_analytic_loader_bloc.dart'
    as _i268;
import 'package:apskel_pos_flutter_v2/application/analytic/profit_loss_analytic_loader/profit_loss_analytic_loader_bloc.dart'
    as _i741;
import 'package:apskel_pos_flutter_v2/application/analytic/sales_analytic_loader/sales_analytic_loader_bloc.dart'
    as _i413;
import 'package:apskel_pos_flutter_v2/application/auth/auth_bloc.dart' as _i343;
import 'package:apskel_pos_flutter_v2/application/auth/login_form/login_form_bloc.dart'
    as _i46;
import 'package:apskel_pos_flutter_v2/application/auth/logout/logout_bloc.dart'
    as _i641;
import 'package:apskel_pos_flutter_v2/application/category/category_loader/category_loader_bloc.dart'
    as _i1018;
import 'package:apskel_pos_flutter_v2/application/checkout/checkout_form/checkout_form_bloc.dart'
    as _i13;
import 'package:apskel_pos_flutter_v2/application/customer/customer_loader/customer_loader_bloc.dart'
    as _i683;
import 'package:apskel_pos_flutter_v2/application/order/order_form/order_form_bloc.dart'
    as _i702;
import 'package:apskel_pos_flutter_v2/application/order/order_loader/order_loader_bloc.dart'
    as _i94;
import 'package:apskel_pos_flutter_v2/application/outlet/outlet_loader/outlet_loader_bloc.dart'
    as _i76;
import 'package:apskel_pos_flutter_v2/application/payment/payment_form/payment_form_bloc.dart'
    as _i194;
import 'package:apskel_pos_flutter_v2/application/payment_method/payment_method_loader/payment_method_loader_bloc.dart'
    as _i952;
import 'package:apskel_pos_flutter_v2/application/printer/bluetooth/bluetooth_connect/bluetooth_connect_bloc.dart'
    as _i489;
import 'package:apskel_pos_flutter_v2/application/printer/bluetooth/bluetooth_loader/bluetooth_loader_bloc.dart'
    as _i903;
import 'package:apskel_pos_flutter_v2/application/printer/print_struck/print_struck_bloc.dart'
    as _i21;
import 'package:apskel_pos_flutter_v2/application/printer/printer_bloc.dart'
    as _i96;
import 'package:apskel_pos_flutter_v2/application/printer/printer_form/printer_form_bloc.dart'
    as _i787;
import 'package:apskel_pos_flutter_v2/application/printer/printer_loader/printer_loader_bloc.dart'
    as _i1028;
import 'package:apskel_pos_flutter_v2/application/product/product_loader/product_loader_bloc.dart'
    as _i13;
import 'package:apskel_pos_flutter_v2/application/refund/refund_form/refund_form_bloc.dart'
    as _i837;
import 'package:apskel_pos_flutter_v2/application/report/report_bloc.dart'
    as _i257;
import 'package:apskel_pos_flutter_v2/application/split_bill/split_bill_form/split_bill_form_bloc.dart'
    as _i334;
import 'package:apskel_pos_flutter_v2/application/sync/sync_bloc.dart' as _i741;
import 'package:apskel_pos_flutter_v2/application/sync/sync_setting/sync_setting_bloc.dart'
    as _i729;
import 'package:apskel_pos_flutter_v2/application/table/table_form/table_form_bloc.dart'
    as _i248;
import 'package:apskel_pos_flutter_v2/application/table/table_loader/table_loader_bloc.dart'
    as _i424;
import 'package:apskel_pos_flutter_v2/application/void/void_form/void_form_bloc.dart'
    as _i822;
import 'package:apskel_pos_flutter_v2/common/api/api_client.dart' as _i457;
import 'package:apskel_pos_flutter_v2/common/database/database_helper.dart'
    as _i487;
import 'package:apskel_pos_flutter_v2/common/di/di_auto_route.dart' as _i729;
import 'package:apskel_pos_flutter_v2/common/di/di_connectivity.dart' as _i807;
import 'package:apskel_pos_flutter_v2/common/di/di_database.dart' as _i209;
import 'package:apskel_pos_flutter_v2/common/di/di_dio.dart' as _i86;
import 'package:apskel_pos_flutter_v2/common/di/di_firebase.dart' as _i857;
import 'package:apskel_pos_flutter_v2/common/di/di_shared_preferences.dart'
    as _i135;
import 'package:apskel_pos_flutter_v2/common/network/network_client.dart'
    as _i171;
import 'package:apskel_pos_flutter_v2/common/service/device_info_service.dart'
    as _i288;
import 'package:apskel_pos_flutter_v2/common/service/fcm_service.dart' as _i312;
import 'package:apskel_pos_flutter_v2/domain/analytic/analytic.dart' as _i346;
import 'package:apskel_pos_flutter_v2/domain/auth/auth.dart' as _i776;
import 'package:apskel_pos_flutter_v2/domain/category/category.dart' as _i502;
import 'package:apskel_pos_flutter_v2/domain/customer/customer.dart' as _i143;
import 'package:apskel_pos_flutter_v2/domain/order/order.dart' as _i299;
import 'package:apskel_pos_flutter_v2/domain/outlet/outlet.dart' as _i552;
import 'package:apskel_pos_flutter_v2/domain/payment_method/payment_method.dart'
    as _i297;
import 'package:apskel_pos_flutter_v2/domain/printer/printer.dart' as _i104;
import 'package:apskel_pos_flutter_v2/domain/product/product.dart' as _i44;
import 'package:apskel_pos_flutter_v2/domain/table/table.dart' as _i983;
import 'package:apskel_pos_flutter_v2/env.dart' as _i923;
import 'package:apskel_pos_flutter_v2/infrastructure/analytic/datasources/remote_data_provider.dart'
    as _i708;
import 'package:apskel_pos_flutter_v2/infrastructure/analytic/repositories/analytic_repository.dart'
    as _i288;
import 'package:apskel_pos_flutter_v2/infrastructure/auth/datasources/local_data_provider.dart'
    as _i204;
import 'package:apskel_pos_flutter_v2/infrastructure/auth/datasources/remote_data_provider.dart'
    as _i370;
import 'package:apskel_pos_flutter_v2/infrastructure/auth/repositories/auth_repository.dart'
    as _i941;
import 'package:apskel_pos_flutter_v2/infrastructure/category/datasources/local_data_provider.dart'
    as _i708;
import 'package:apskel_pos_flutter_v2/infrastructure/category/datasources/remote_data_provider.dart'
    as _i856;
import 'package:apskel_pos_flutter_v2/infrastructure/category/repositories/category_repository.dart'
    as _i604;
import 'package:apskel_pos_flutter_v2/infrastructure/customer/datasources/remote_data_provider.dart'
    as _i841;
import 'package:apskel_pos_flutter_v2/infrastructure/customer/repositories/customer_repository.dart'
    as _i385;
import 'package:apskel_pos_flutter_v2/infrastructure/order/datasources/remote_data_provider.dart'
    as _i360;
import 'package:apskel_pos_flutter_v2/infrastructure/order/repositories/order_repository.dart'
    as _i851;
import 'package:apskel_pos_flutter_v2/infrastructure/outlet/datasources/local_data_provider.dart'
    as _i693;
import 'package:apskel_pos_flutter_v2/infrastructure/outlet/datasources/remote_data_provider.dart'
    as _i132;
import 'package:apskel_pos_flutter_v2/infrastructure/outlet/repositories/outlet_repository.dart'
    as _i845;
import 'package:apskel_pos_flutter_v2/infrastructure/payment_method/datasources/remote_data_provider.dart'
    as _i833;
import 'package:apskel_pos_flutter_v2/infrastructure/payment_method/repositories/payment_method_repository.dart'
    as _i167;
import 'package:apskel_pos_flutter_v2/infrastructure/printer/datasource/local_data_provider.dart'
    as _i149;
import 'package:apskel_pos_flutter_v2/infrastructure/printer/repositories/printer_repository.dart'
    as _i881;
import 'package:apskel_pos_flutter_v2/infrastructure/product/datasources/local_data_provider.dart'
    as _i464;
import 'package:apskel_pos_flutter_v2/infrastructure/product/datasources/remote_data_provider.dart'
    as _i707;
import 'package:apskel_pos_flutter_v2/infrastructure/product/repositories/product_repository.dart'
    as _i763;
import 'package:apskel_pos_flutter_v2/infrastructure/table/datasources/remote_data_provider.dart'
    as _i95;
import 'package:apskel_pos_flutter_v2/infrastructure/table/repositories/table_repository.dart'
    as _i824;
import 'package:apskel_pos_flutter_v2/presentation/router/app_router.dart'
    as _i800;
import 'package:connectivity_plus/connectivity_plus.dart' as _i895;
import 'package:device_info_plus/device_info_plus.dart' as _i833;
import 'package:dio/dio.dart' as _i361;
import 'package:firebase_messaging/firebase_messaging.dart' as _i892;
import 'package:flutter_local_notifications/flutter_local_notifications.dart'
    as _i163;
import 'package:get_it/get_it.dart' as _i174;
import 'package:injectable/injectable.dart' as _i526;
import 'package:package_info_plus/package_info_plus.dart' as _i655;
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 firebaseDi = _$FirebaseDi();
    final sharedPreferencesDi = _$SharedPreferencesDi();
    final databaseDi = _$DatabaseDi();
    final autoRouteDi = _$AutoRouteDi();
    final connectivityDi = _$ConnectivityDi();
    final dioDi = _$DioDi();
    gh.factory<_i13.CheckoutFormBloc>(() => _i13.CheckoutFormBloc());
    gh.factory<_i96.PrinterBloc>(() => _i96.PrinterBloc());
    gh.factory<_i257.ReportBloc>(() => _i257.ReportBloc());
    gh.factory<_i334.SplitBillFormBloc>(() => _i334.SplitBillFormBloc());
    await gh.factoryAsync<_i655.PackageInfo>(
      () => firebaseDi.packageInfo,
      preResolve: true,
    );
    await gh.factoryAsync<_i460.SharedPreferences>(
      () => sharedPreferencesDi.prefs,
      preResolve: true,
    );
    gh.singleton<_i487.DatabaseHelper>(() => databaseDi.databaseHelper);
    gh.lazySingleton<_i800.AppRouter>(() => autoRouteDi.appRouter);
    gh.lazySingleton<_i895.Connectivity>(() => connectivityDi.connectivity);
    gh.lazySingleton<_i361.Dio>(() => dioDi.dio);
    gh.lazySingleton<_i892.FirebaseMessaging>(() => firebaseDi.messaging);
    gh.lazySingleton<_i163.FlutterLocalNotificationsPlugin>(
      () => firebaseDi.localNotifications,
    );
    gh.lazySingleton<_i833.DeviceInfoPlugin>(() => firebaseDi.deviceInfo);
    gh.lazySingleton<_i288.DeviceInfoService>(
      () => _i288.DeviceInfoService(
        gh<_i833.DeviceInfoPlugin>(),
        gh<_i655.PackageInfo>(),
      ),
    );
    gh.lazySingleton<_i171.NetworkClient>(
      () => _i171.NetworkClient(gh<_i895.Connectivity>()),
    );
    gh.factory<_i923.Env>(() => _i923.DevEnv(), registerFor: {_dev});
    gh.factory<_i708.CategoryLocalDataProvider>(
      () => _i708.CategoryLocalDataProvider(gh<_i487.DatabaseHelper>()),
    );
    gh.factory<_i149.PrinterLocalDataProvider>(
      () => _i149.PrinterLocalDataProvider(gh<_i487.DatabaseHelper>()),
    );
    gh.factory<_i464.ProductLocalDataProvider>(
      () => _i464.ProductLocalDataProvider(gh<_i487.DatabaseHelper>()),
    );
    gh.lazySingleton<_i312.FcmService>(
      () => _i312.FcmService(
        gh<_i892.FirebaseMessaging>(),
        gh<_i163.FlutterLocalNotificationsPlugin>(),
      ),
    );
    gh.factory<_i204.AuthLocalDataProvider>(
      () => _i204.AuthLocalDataProvider(gh<_i460.SharedPreferences>()),
    );
    gh.factory<_i693.OutletLocalDatasource>(
      () => _i693.OutletLocalDatasource(gh<_i460.SharedPreferences>()),
    );
    gh.lazySingleton<_i457.ApiClient>(
      () => _i457.ApiClient(gh<_i361.Dio>(), gh<_i923.Env>()),
    );
    gh.factory<_i923.Env>(() => _i923.ProdEnv(), registerFor: {_prod});
    gh.factory<_i104.IPrinterRepository>(
      () => _i881.PrinterRepository(
        gh<_i149.PrinterLocalDataProvider>(),
        gh<_i693.OutletLocalDatasource>(),
        gh<_i204.AuthLocalDataProvider>(),
      ),
    );
    gh.factory<_i489.BluetoothConnectBloc>(
      () => _i489.BluetoothConnectBloc(gh<_i104.IPrinterRepository>()),
    );
    gh.factory<_i903.BluetoothLoaderBloc>(
      () => _i903.BluetoothLoaderBloc(gh<_i104.IPrinterRepository>()),
    );
    gh.factory<_i1028.PrinterLoaderBloc>(
      () => _i1028.PrinterLoaderBloc(gh<_i104.IPrinterRepository>()),
    );
    gh.factory<_i21.PrintStruckBloc>(
      () => _i21.PrintStruckBloc(gh<_i104.IPrinterRepository>()),
    );
    gh.factory<_i708.AnalyticRemoteDataProvider>(
      () => _i708.AnalyticRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i370.AuthRemoteDataProvider>(
      () => _i370.AuthRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i856.CategoryRemoteDataProvider>(
      () => _i856.CategoryRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i841.CustomerRemoteDataProvider>(
      () => _i841.CustomerRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i360.OrderRemoteDataProvider>(
      () => _i360.OrderRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i132.OutletRemoteDataProvider>(
      () => _i132.OutletRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i833.PaymentMethodRemoteDataProvider>(
      () => _i833.PaymentMethodRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i707.ProductRemoteDataProvider>(
      () => _i707.ProductRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i95.TableRemoteDataProvider>(
      () => _i95.TableRemoteDataProvider(gh<_i457.ApiClient>()),
    );
    gh.factory<_i776.IAuthRepository>(
      () => _i941.AuthRepository(
        gh<_i370.AuthRemoteDataProvider>(),
        gh<_i204.AuthLocalDataProvider>(),
      ),
    );
    gh.factory<_i502.ICategoryRepository>(
      () => _i604.CategoryRepository(
        gh<_i856.CategoryRemoteDataProvider>(),
        gh<_i708.CategoryLocalDataProvider>(),
      ),
    );
    gh.factory<_i46.LoginFormBloc>(
      () => _i46.LoginFormBloc(
        gh<_i776.IAuthRepository>(),
        gh<_i312.FcmService>(),
        gh<_i288.DeviceInfoService>(),
      ),
    );
    gh.factory<_i983.ITableRepository>(
      () => _i824.TableRepository(
        gh<_i95.TableRemoteDataProvider>(),
        gh<_i693.OutletLocalDatasource>(),
      ),
    );
    gh.factory<_i299.IOrderRepository>(
      () => _i851.OrderRepository(gh<_i360.OrderRemoteDataProvider>()),
    );
    gh.factory<_i248.TableFormBloc>(
      () => _i248.TableFormBloc(gh<_i983.ITableRepository>()),
    );
    gh.factory<_i424.TableLoaderBloc>(
      () => _i424.TableLoaderBloc(gh<_i983.ITableRepository>()),
    );
    gh.factory<_i44.IProductRepository>(
      () => _i763.ProductRepository(
        gh<_i707.ProductRemoteDataProvider>(),
        gh<_i464.ProductLocalDataProvider>(),
      ),
    );
    gh.factory<_i552.IOutletRepository>(
      () => _i845.OutletRepository(
        gh<_i132.OutletRemoteDataProvider>(),
        gh<_i693.OutletLocalDatasource>(),
      ),
    );
    gh.factory<_i297.IPaymentMethodRepository>(
      () => _i167.PaymentMethodRepository(
        gh<_i833.PaymentMethodRemoteDataProvider>(),
      ),
    );
    gh.factory<_i641.LogoutBloc>(
      () => _i641.LogoutBloc(gh<_i776.IAuthRepository>()),
    );
    gh.factory<_i1018.CategoryLoaderBloc>(
      () => _i1018.CategoryLoaderBloc(gh<_i502.ICategoryRepository>()),
    );
    gh.factory<_i702.OrderFormBloc>(
      () => _i702.OrderFormBloc(
        gh<_i299.IOrderRepository>(),
        gh<_i552.IOutletRepository>(),
      ),
    );
    gh.factory<_i143.ICustomerRepository>(
      () => _i385.CustomerRepository(gh<_i841.CustomerRemoteDataProvider>()),
    );
    gh.factory<_i787.PrinterFormBloc>(
      () => _i787.PrinterFormBloc(
        gh<_i104.IPrinterRepository>(),
        gh<_i552.IOutletRepository>(),
      ),
    );
    gh.factory<_i94.OrderLoaderBloc>(
      () => _i94.OrderLoaderBloc(gh<_i299.IOrderRepository>()),
    );
    gh.factory<_i194.PaymentFormBloc>(
      () => _i194.PaymentFormBloc(gh<_i299.IOrderRepository>()),
    );
    gh.factory<_i837.RefundFormBloc>(
      () => _i837.RefundFormBloc(gh<_i299.IOrderRepository>()),
    );
    gh.factory<_i822.VoidFormBloc>(
      () => _i822.VoidFormBloc(gh<_i299.IOrderRepository>()),
    );
    gh.factory<_i683.CustomerLoaderBloc>(
      () => _i683.CustomerLoaderBloc(gh<_i143.ICustomerRepository>()),
    );
    gh.factory<_i346.IAnalyticRepository>(
      () => _i288.AnalyticRepository(gh<_i708.AnalyticRemoteDataProvider>()),
    );
    gh.factory<_i952.PaymentMethodLoaderBloc>(
      () => _i952.PaymentMethodLoaderBloc(gh<_i297.IPaymentMethodRepository>()),
    );
    gh.factory<_i343.AuthBloc>(
      () => _i343.AuthBloc(
        gh<_i776.IAuthRepository>(),
        gh<_i552.IOutletRepository>(),
      ),
    );
    gh.factory<_i76.OutletLoaderBloc>(
      () => _i76.OutletLoaderBloc(gh<_i552.IOutletRepository>()),
    );
    gh.factory<_i13.ProductLoaderBloc>(
      () => _i13.ProductLoaderBloc(gh<_i44.IProductRepository>()),
    );
    gh.factory<_i741.SyncBloc>(
      () => _i741.SyncBloc(
        gh<_i44.IProductRepository>(),
        gh<_i502.ICategoryRepository>(),
      ),
    );
    gh.factory<_i729.SyncSettingBloc>(
      () => _i729.SyncSettingBloc(
        gh<_i44.IProductRepository>(),
        gh<_i502.ICategoryRepository>(),
      ),
    );
    gh.factory<_i911.CategoryAnalyticLoaderBloc>(
      () => _i911.CategoryAnalyticLoaderBloc(gh<_i346.IAnalyticRepository>()),
    );
    gh.factory<_i80.DashboardAnalyticLoaderBloc>(
      () => _i80.DashboardAnalyticLoaderBloc(gh<_i346.IAnalyticRepository>()),
    );
    gh.factory<_i651.InventoryAnalyticLoaderBloc>(
      () => _i651.InventoryAnalyticLoaderBloc(gh<_i346.IAnalyticRepository>()),
    );
    gh.factory<_i733.PaymentMethodAnalyticLoaderBloc>(
      () => _i733.PaymentMethodAnalyticLoaderBloc(
        gh<_i346.IAnalyticRepository>(),
      ),
    );
    gh.factory<_i268.ProductAnalyticLoaderBloc>(
      () => _i268.ProductAnalyticLoaderBloc(gh<_i346.IAnalyticRepository>()),
    );
    gh.factory<_i741.ProfitLossAnalyticLoaderBloc>(
      () => _i741.ProfitLossAnalyticLoaderBloc(gh<_i346.IAnalyticRepository>()),
    );
    gh.factory<_i413.SalesAnalyticLoaderBloc>(
      () => _i413.SalesAnalyticLoaderBloc(gh<_i346.IAnalyticRepository>()),
    );
    return this;
  }
}

class _$FirebaseDi extends _i857.FirebaseDi {}

class _$SharedPreferencesDi extends _i135.SharedPreferencesDi {}

class _$DatabaseDi extends _i209.DatabaseDi {}

class _$AutoRouteDi extends _i729.AutoRouteDi {}

class _$ConnectivityDi extends _i807.ConnectivityDi {}

class _$DioDi extends _i86.DioDi {}
