import 'package:absenkuv3/Bloc/Akun/KontakSemuaPegawai/KontakPegawaiBloc.dart';
import 'package:absenkuv3/Bloc/Badge/BadgeShiftBloc.dart';
import 'package:absenkuv3/Bloc/BadgeNotifBloc.dart' as badgeNotif;
import 'package:absenkuv3/Bloc/Koordinator/Izin/BadgeNotifKoordinatorBloc.dart';
import 'package:absenkuv3/Bloc/Koordinator/Izin/IzinPegawaiBloc.dart';
import 'package:absenkuv3/Bloc/Koordinator/MonitorAbsensi/BadgeMonitorAbsenBloc.dart';
import 'package:absenkuv3/Bloc/Koordinator/MonitorAbsensi/MonitorAbsenBloc.dart';
import 'package:absenkuv3/Bloc/MonitorAbsensi/SelectedBadgeMonitor.dart';
import 'package:absenkuv3/Bloc/Patroli/AbsensiPatroliBloc.dart';
import 'package:absenkuv3/Bloc/Patroli/CekValidasiWaktuBloc.dart';
import 'package:absenkuv3/Bloc/Patroli/JadwalPatroliBloc.dart';
import 'package:absenkuv3/Bloc/Patroli/QrBloc.dart';
import 'package:absenkuv3/Bloc/ColorBloc.dart';
import 'package:absenkuv3/Bloc/Dropdown/DropdownCabangBloc.dart'
    as dropdownCabangBloc;
import 'package:absenkuv3/Bloc/Dropdown/DropdownDepartemenBloc.dart'
    as dropdownDepartemenBloc;
import 'package:absenkuv3/Bloc/Dropdown/DropdownKaryawanBloc.dart';
import 'package:absenkuv3/Bloc/Dropdown/DropdownProdukLayananBloc.dart';
import 'package:absenkuv3/Bloc/EmailBloc.dart';
import 'package:absenkuv3/Bloc/FilterHeaderBloc.dart';
import 'package:absenkuv3/Bloc/Izin/IzinPegawaiBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiApproval/GetDataPengajuanAspekKedisiplinanBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiApproval/GetDataPengajuanAspekKepribadianBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiApproval/GetDataPengajuanNilaiIndividuBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiApproval/SetujuiApprovalkpiBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiSaya/GetDataPengajuanKpiSayaBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiSaya/GetListKpiSayaBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiSaya/SimpanDraftPengajuanKpiSayaBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiSaya/TerimaApprovalKpiBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiTeam/GetListKpiBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiTeam/GetListKpiTeamBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiTeam/PengajuanKpiBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiTeam/PengajuanPerformanceIndikatorKpiBloc.dart';
import 'package:absenkuv3/Bloc/Kpi/KpiTeam/PublishkpiTeamBloc.dart';
import 'package:absenkuv3/Bloc/Lembur/AbsensiLemburBloc.dart';
import 'package:absenkuv3/Bloc/MonitorAbsensi/BadgeMonitorAbsenBloc.dart';
import 'package:absenkuv3/Bloc/MonitorAbsensi/MonitorAbsenBloc.dart';
import 'package:absenkuv3/Bloc/MonitorAbsensi/MonitorListBloc.dart';
import 'package:absenkuv3/Bloc/MonitorAbsensi/MonitorListIzinBloc.dart';
import 'package:absenkuv3/Bloc/MonitorAbsensi/MonitorListLemburBloc.dart';
import 'package:absenkuv3/Bloc/NavigatorBloc.dart';
import 'package:absenkuv3/Bloc/NotifBloc.dart';
import 'package:absenkuv3/Bloc/Page/PageAkunBloc.dart';
import 'package:absenkuv3/Bloc/PengaturanBloc.dart';
import 'package:absenkuv3/Bloc/Pkwt/BadgePkwtBloc.dart';
import 'package:absenkuv3/Bloc/Pkwt/DataCallbackPkwtBloc.dart';
import 'package:absenkuv3/Bloc/Pkwt/DetailPkwtBloc.dart';
import 'package:absenkuv3/Bloc/Pkwt/PkwtBloc.dart';
import 'package:absenkuv3/Bloc/SearchBloc.dart';
import 'package:absenkuv3/Bloc/SalesActivity/ApproverBloc.dart';
import 'package:absenkuv3/Bloc/SalesActivity/DataDailyAktivitasSalesBloc.dart';
import 'package:absenkuv3/Bloc/SalesActivity/DataLayananDetailByIdBloc.dart';
import 'package:absenkuv3/Bloc/SalesActivity/KambanBloc.dart';
import 'package:absenkuv3/Bloc/SalesActivity/LayananDraftBloc.dart';
import 'package:absenkuv3/Bloc/Shift/PilihShiftBloc.dart';
import 'package:absenkuv3/Bloc/Shift/ShiftV2Bloc.dart';
import 'package:absenkuv3/Bloc/Shift/TukarShiftBloc.dart';
import 'package:absenkuv3/Bloc/SlipGaji/SlipGajiBloc.dart';
import 'package:absenkuv3/Bloc/Sos/SosBloc.dart';
import 'package:absenkuv3/Bloc/Summary/HadirBloc.dart';
import 'package:absenkuv3/Bloc/Summary/SisaCutiBloc.dart';
import 'package:absenkuv3/Bloc/Summary/SummaryIzinBloc.dart';
import 'package:absenkuv3/Bloc/Summary/SummaryBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapAlpaBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapCutiBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapHadirBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapIzinBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapLemburBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapPulangCepatBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapSakitBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapTAPBloc.dart';
import 'package:absenkuv3/Bloc/Summary/rekap/SummaryRekapTerlambatBloc.dart';
import 'package:absenkuv3/Bloc/TitikCorouselBloc.dart';
import 'package:absenkuv3/Bloc/klien/DashboardModeKlienBloc.dart';
import 'package:absenkuv3/Repository/Model/mLogin.dart';
import 'package:absenkuv3/Repository/Service/serviceInfo.dart';
import 'package:absenkuv3/Repository/sharedPreference.dart';
import 'package:absenkuv3/Setting/firebase_config.dart';
import 'package:absenkuv3/Setting/router.dart';
import 'package:absenkuv3/UI/Template/AutoComplete/Bloc/AutoCompletePegawaiBawahanBloc.dart'
    as bawahanBloc;
import 'package:absenkuv3/UI/Template/AutoComplete/Bloc/AutoCompleteFilterPerusahaanBloc.dart'
    as filterPerusahaanBloc;
import 'package:absenkuv3/UI/Template/AutoComplete/Bloc/AutoCompleteFilterGroupAreaBloc.dart'
as filterGroupAreaBloc;
import 'package:absenkuv3/UI/Template/AutoComplete/Bloc/AutoCompletePegawaiBloc.dart';
import 'package:absenkuv3/UI/Template/AutoCompleteShift/Bloc/AutoCompleteShiftBloc.dart'
    as autoCompleteShift;
import 'package:absenkuv3/UI/Template/CameraX/Bloc/FaceXBloc.dart';
import 'package:absenkuv3/UI/Template/CupertinoPicker/Bloc/date_pick_bloc.dart';
import 'package:absenkuv3/UI/Template/DateRangePicker/Bloc/DateRangePickerBloc.dart';
import 'package:absenkuv3/UI/Template/FilterBottomKontak/Bloc/FilterBottomKontakKaryawanBloc.dart';
import 'package:absenkuv3/UI/Template/FilterToggle/Bloc/ToogleFilterBloc.dart';
import 'package:absenkuv3/UI/Template/MonthPicker/Bloc/MonthPickerBloc.dart';
import 'package:absenkuv3/UI/Template/MonthPicker/Bloc/MonthPickerRekapBloc.dart'
    as monthPickerRekap;
import 'package:absenkuv3/UI/Template/Selected/Bloc/CabangSelectedBloc.dart';
import 'package:absenkuv3/UI/Template/Selected/Bloc/DepartemenSelectedBloc.dart';
import 'package:absenkuv3/UI/Template/Selected/Bloc/KaryawanSelectedBloc.dart';
import 'package:absenkuv3/UI/Template/Selected/Bloc/SelectedIdBloc.dart';
import 'package:absenkuv3/Bloc/Absensi/AbsensiBloc.dart';
import 'package:absenkuv3/Bloc/Dropdown/DropdownJenisReimbursementBloc.dart'
    as dropdownJenisReimbursement;
import 'package:absenkuv3/Bloc/Dropdown/DropdownStatus.dart' as dropdownStatusBloc;
import 'package:absenkuv3/Bloc/FilterBottomSheetBloc.dart';
import 'package:absenkuv3/Bloc/Aktivitas/AbsensiAktivitasBloc.dart';
import 'package:absenkuv3/Bloc/Aktivitas/AktivitasBloc.dart' as aktivitasBloc;
import 'package:absenkuv3/Bloc/Aktivitas/AktivitasPegawaiBloc.dart' as aktivitasPegawaiBloc;
import 'package:absenkuv3/Bloc/AuthBloc.dart';
import 'package:absenkuv3/Bloc/Dropdown/DropdownJenisIzinBloc.dart' as dropdownJenisIzin;
import 'package:absenkuv3/Bloc/Gaji/GajiBloc.dart';
import 'package:absenkuv3/Bloc/Izin/IzinBloc.dart';
import 'package:absenkuv3/Bloc/Izin/RekapIzinSayaBloc.dart';
import 'package:absenkuv3/Bloc/JamKerja/JamKerjaBloc.dart';
import 'package:absenkuv3/Bloc/Lembur/LemburBloc.dart';
import 'package:absenkuv3/Bloc/Lembur/LemburPegawaiBloc.dart';
import 'package:absenkuv3/Bloc/Shift/ShiftBloc.dart';
import 'package:absenkuv3/Bloc/Shift/ShiftKaryawanBloc.dart';
import 'package:absenkuv3/Bloc/Shift/ShiftKaryawanDetailBloc.dart';
import 'package:absenkuv3/Bloc/Shift/ShiftTemanBloc.dart';
import 'package:absenkuv3/Bloc/Shift/ShiftTemanDetailBloc.dart';
import 'package:absenkuv3/Bloc/SplashScreenBloc.dart';
import 'package:absenkuv3/main.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:absenkuv3/Bloc/Patroli/PatroliBloc.dart' as checkpointBloc;
import 'package:absenkuv3/Bloc/Patroli/PatroliPegawaiBloc.dart' as PatroliPegawaiBloc;



class AppBlocProviders{
  static List<BlocProvider>providers=[
    BlocProvider<NavigatorBloc>(
            create: (context) {
              return NavigatorBloc(GlobalVariable.navState);
            },
          ),
          BlocProvider<SplashScreenBloc>(
            create: (context) {
              return SplashScreenBloc();
            },
          ),
          BlocProvider<ColorBloc>(
            create: (context) {
              return ColorBloc();
            },
          ),
          BlocProvider<TitikCorouselBloc>(
            create: (context) {
              return TitikCorouselBloc();
            },
          ),
          BlocProvider<AuthBloc>(
            create: (context) {
              return AuthBloc(loginRespon!);
            },
          ),
          BlocProvider<IzinBloc>(
            create: (context) {
              return IzinBloc(IzinProgressState());
            },
          ),
          BlocProvider<RekapIzinSayaBloc>(
            create: (context) {
              return RekapIzinSayaBloc(RekapIzinProgressState());
            },
          ),
          BlocProvider<IzinPegawaiBloc>(
            create: (context) {
              return IzinPegawaiBloc(IzinPegawaiProgressState());
            },
          ),
          /*BlocProvider<CameraBloc>(
            create: (context) {
              return CameraBloc();
            },
          ),*/
          BlocProvider<AbsensiBloc>(
            create: (context) {
              return AbsensiBloc(AbsensiLoading());
            },
          ),
          BlocProvider<dropdownJenisIzin.DropdownJenisIzinBloc>(
            create: (context) {
              return dropdownJenisIzin.DropdownJenisIzinBloc(
                  dropdownJenisIzin.DropdownProgressState());
            },
          ),
          BlocProvider<
              dropdownJenisReimbursement.DropdownJenisReimbursementBloc>(
            create: (context) {
              return dropdownJenisReimbursement.DropdownJenisReimbursementBloc(
                  dropdownJenisReimbursement.DropdownProgressState());
            },
          ),
          BlocProvider<dropdownCabangBloc.DropdownCabangBloc>(
            create: (context) {
              return dropdownCabangBloc.DropdownCabangBloc(
                  dropdownCabangBloc.DropdownProgressState());
            },
          ),
          BlocProvider<dropdownDepartemenBloc.DropdownDepartemenBloc>(
            create: (context) {
              return dropdownDepartemenBloc.DropdownDepartemenBloc(
                  dropdownDepartemenBloc.DropdownProgressState());
            },
          ),
          BlocProvider<dropdownStatusBloc.DropdownStatusBloc>(
            create: (context) {
              return dropdownStatusBloc.DropdownStatusBloc(
                  dropdownStatusBloc.DropdownProgressState());
            },
          ),
          BlocProvider<FilterBottomSheetBloc>(
            create: (context) {
              return FilterBottomSheetBloc(FilterProgress());
            },
          ),
          BlocProvider<LemburBloc>(
            create: (context) {
              return LemburBloc(LemburProgressState());
            },
          ),
          BlocProvider<LemburPegawaiBloc>(
            create: (context) {
              return LemburPegawaiBloc(LemburPegawaiProgressState());
            },
          ),
          BlocProvider<AbsensiLemburBloc>(
            create: (context) {
              return AbsensiLemburBloc(AbsensiLemburLoading());
            },
          ),
          BlocProvider<MonthPickerBloc>(
            create: (context) {
              return MonthPickerBloc(MonthPickerProgressState());
            },
          ),
          BlocProvider<monthPickerRekap.MonthPickerRekapBloc>(
            create: (context) {
              return monthPickerRekap.MonthPickerRekapBloc(
                  monthPickerRekap.MonthPickerProgressRekapState());
            },
          ),
          BlocProvider<AutoCompletePegawaiBloc>(
            create: (context) {
              return AutoCompletePegawaiBloc(ProgressState());
            },
          ),
          BlocProvider<bawahanBloc.AutoCompletePegawaiBawahanBloc>(
            create: (context) {
              return bawahanBloc.AutoCompletePegawaiBawahanBloc(
                  bawahanBloc.ProgressState());
            },
          ),
          BlocProvider<filterPerusahaanBloc.AutoCompleteFilterPerusahaanBloc>(
            create: (context) {
              return filterPerusahaanBloc.AutoCompleteFilterPerusahaanBloc(
                  filterPerusahaanBloc.ProgressState());
            },
          ),
          BlocProvider<filterGroupAreaBloc.AutoCompleteFilterGroupAreaBloc>(
            create: (context) {
              return filterGroupAreaBloc.AutoCompleteFilterGroupAreaBloc(
                  filterGroupAreaBloc.GroupProgressState());
            },
          ),
          BlocProvider<autoCompleteShift.AutoCompleteShiftBloc>(
            create: (context) {
              return autoCompleteShift.AutoCompleteShiftBloc(
                  autoCompleteShift.ProgressState());
            },
          ),
          BlocProvider<DateRangePickerBloc>(
            create: (context) {
              return DateRangePickerBloc(DateUnavailable());
            },
          ),
          BlocProvider<BadgeShiftBloc>(create: (context) {
            return BadgeShiftBloc(GetProgress());
          }),
          BlocProvider<PengaturanBloc>(create: (context) {
            return PengaturanBloc(GetProgressPengaturan());
          }),
          BlocProvider<aktivitasBloc.AktivitasBloc>(
            create: (context) {
              return aktivitasBloc.AktivitasBloc(
                  aktivitasBloc.AktivitasProgressState());
            },
          ),
          BlocProvider<aktivitasPegawaiBloc.AktivitasPegawaiBloc>(
            create: (context) {
              return aktivitasPegawaiBloc.AktivitasPegawaiBloc(
                  aktivitasPegawaiBloc.AktivitasProgressState());
            },
          ),
          BlocProvider<AbsensiAktivitasBloc>(
            create: (context) {
              return AbsensiAktivitasBloc(AbsensiAktivitasInitial());
            },
          ),
          BlocProvider<TukarShiftBloc>(
            create: (context) {
              return TukarShiftBloc(TukarShiftProgressState());
            },
          ),
          BlocProvider<PilihShiftBloc>(
            create: (context) {
              return PilihShiftBloc(DataShiftProgress());
            },
          ),
          BlocProvider<SummaryBloc>(
            create: (context) {
              return SummaryBloc(SummaryProgressState());
            },
          ),
          BlocProvider<JamKerjaBloc>(
            create: (context) {
              return JamKerjaBloc(JamKerjaProgressState());
            },
          ),
          BlocProvider<ShiftBloc>(
            create: (context) {
              return ShiftBloc(ShiftProgressState());
            },
          ),
          BlocProvider<ShiftTemanBloc>(
            create: (context) {
              return ShiftTemanBloc(ShiftTemanProgressState());
            },
          ),
          BlocProvider<ShiftKaryawanBloc>(
            create: (context) {
              return ShiftKaryawanBloc(ShiftKaryawanProgressState());
            },
          ),
          BlocProvider<ShiftTemanDetailBloc>(
            create: (context) {
              return ShiftTemanDetailBloc(ShiftTemanDetailProgressState());
            },
          ),
          BlocProvider<ShiftKaryawanDetailBloc>(
            create: (context) {
              return ShiftKaryawanDetailBloc(
                  ShiftKaryawanDetailProgressState());
            },
          ),
          BlocProvider<GajiBloc>(
            create: (context) {
              return GajiBloc(GajiProgressState());
            },
          ),
          BlocProvider<SlipGajiBloc>(
            create: (context) {
              return SlipGajiBloc(SlipGajiProgressState());
            },
          ),
          BlocProvider<ResetPasswordBloc>(
            create: (context) {
              return ResetPasswordBloc(ResetPasswordProgress());
            },
          ),
          BlocProvider<badgeNotif.BadgeNotifBloc>(
            create: (context) {
              return badgeNotif.BadgeNotifBloc(badgeNotif.GetProgress());
            },
          ),
          BlocProvider<PageAkunBloc>(
            create: (context) {
              return PageAkunBloc(PageAkunGetProgress());
            },
          ),
          BlocProvider<BadgeMonitorAbsenBloc>(
            create: (context) {
              return BadgeMonitorAbsenBloc(GetBadgeMonitorProgress());
            },
          ),
          BlocProvider<MonitorAbsenBloc>(
            create: (context) {
              return MonitorAbsenBloc(ProgressMonitorAbsenState());
            },
          ),
          BlocProvider<BadgeMonitorAbsenKlienBloc>(
            create: (context) {
              return BadgeMonitorAbsenKlienBloc(GetBadgeMonitorKlienProgress());
            },
          ),
          BlocProvider<MonitorAbsenKlienBloc>(
            create: (context) {
              return MonitorAbsenKlienBloc(ProgressMonitorAbsenKlienState());
            },
          ),
          BlocProvider<MonitorListIzinBloc>(
            create: (context) {
              return MonitorListIzinBloc(ProgressMonitorListIzinMonitorState());
            },
          ),
          BlocProvider<MonitorListLemburBloc>(
            create: (context) {
              return MonitorListLemburBloc(
                  ProgressMonitorListLemburMonitorState());
            },
          ),
          BlocProvider<MonitorListBloc>(
            create: (context) {
              return MonitorListBloc(ProgressMonitorListState());
            },
          ),
          BlocProvider<SelectedBadgeMonitor>(
            create: (context) {
              return SelectedBadgeMonitor('A');
            },
          ),

          BlocProvider<KontakPegawaiBloc>(
            create: (context) {
              return KontakPegawaiBloc(KontakPegawaiProgressState());
            },
          ),

          //SUMMARY DATA DASHBOARD//
          BlocProvider<HadirBloc>(
            create: (context) {
              return HadirBloc(HadirProgressState());
            },
          ),
          BlocProvider<SummaryIzinBloc>(
            create: (context) {
              return SummaryIzinBloc(SummaryIzinProgressState());
            },
          ),
          BlocProvider<SisaCutiDashboardBloc>(
            create: (context) {
              return SisaCutiDashboardBloc(SummarySisaCutiProgressState());
            },
          ),
          BlocProvider<SummaryRekapHadirBloc>(
            create: (context) {
              return SummaryRekapHadirBloc(SummaryProgressRekapHadirState());
            },
          ),
          BlocProvider<SummaryRekapAlpaBloc>(
            create: (context) {
              return SummaryRekapAlpaBloc(SummaryProgressRekapAlpaState());
            },
          ),
          BlocProvider<SummaryRekapSakitBloc>(
            create: (context) {
              return SummaryRekapSakitBloc(SummaryProgressRekapSakitState());
            },
          ),
          BlocProvider<SummaryRekapIzinBloc>(
            create: (context) {
              return SummaryRekapIzinBloc(SummaryProgressRekapIzinState());
            },
          ),
          BlocProvider<SummaryRekapCutiBloc>(
            create: (context) {
              return SummaryRekapCutiBloc(SummaryProgressCutiState());
            },
          ),
          BlocProvider<SummaryRekapLemburBloc>(
            create: (context) {
              return SummaryRekapLemburBloc(SummaryProgressLemburState());
            },
          ),
          BlocProvider<SummaryRekapTerlambatBloc>(
            create: (context) {
              return SummaryRekapTerlambatBloc(SummaryProgressTerlambatState());
            },
          ),
          BlocProvider<SummaryRekapPulangCepatBloc>(
            create: (context) {
              return SummaryRekapPulangCepatBloc(
                  SummaryProgressPulangCepatState());
            },
          ),
          BlocProvider<SummaryRekapTAPBloc>(
            create: (context) {
              return SummaryRekapTAPBloc(SummaryProgressTAPState());
            },
          ),
          //END SUMMARY DATA DASHBOARD//

          BlocProvider<FilterBottomKontakKaryawanBloc>(
            create: (context) {
              return FilterBottomKontakKaryawanBloc(FilterKontakProgress());
            },
          ),
          BlocProvider<FilterHeaderBloc>(
            create: (context) {
              return FilterHeaderBloc(GetProgressFilter());
            },
          ),
          BlocProvider<ToogleFilterBloc>(
            create: (context) {
              return ToogleFilterBloc();
            },
          ),
          BlocProvider<DatePickBloc>(
            create: (context) {
              return DatePickBloc();
            },
          ),
          BlocProvider<DepartemenSelectedBloc>(
            create: (context) {
              return DepartemenSelectedBloc(DepartemenSelectedInitial());
            },
          ),
          BlocProvider<KaryawanSelectedBloc>(
            create: (context) {
              return KaryawanSelectedBloc(KaryawanSelectedInitial());
            },
          ),
          BlocProvider<CabangSelectedBloc>(
            create: (context) {
              return CabangSelectedBloc(CabangSelectedInitial());
            },
          ),
          BlocProvider<DropdownKaryawanBloc>(
            create: (context) {
              return DropdownKaryawanBloc(DropdownProgressState());
            },
          ),
          BlocProvider<SearchBloc>(
            create: (context) {
              return SearchBloc();
            },
          ),
          BlocProvider<SelectedIdBloc>(create: (context) {
            return SelectedIdBloc();
          }),
          BlocProvider<DropdownProdukLayananBloc>(
            create: (context) {
              return DropdownProdukLayananBloc(
                  DropdownProdukLayananProgressState());
            },
          ),
          BlocProvider<KambanBloc>(
            create: (context) {
              return KambanBloc(KambanProgressState());
            },
          ),
          BlocProvider<DataLayananDetailByIdBloc>(
            create: (context) {
              return DataLayananDetailByIdBloc(
                  DataLayananDetailByIdProgressState());
            },
          ),
          BlocProvider<LayananDraftBloc>(
            create: (context) {
              return LayananDraftBloc(LayananDraftProgressState());
            },
          ),
          BlocProvider<ApproverBloc>(
            create: (context) {
              return ApproverBloc(ApproverProgressState());
            },
          ),
          BlocProvider<DataDailyAktivitasSalesBloc>(
            create: (context) {
              return DataDailyAktivitasSalesBloc(
                  DataDailyAktivitasSalesProgressState());
            },
          ),
          //KPI//
          BlocProvider<GetListKpiBloc>(
            create: (context) {
              return GetListKpiBloc(DataListKpiProgressState());
            },
          ),
          BlocProvider<PengajuanKpiBloc>(
            create: (context) {
              return PengajuanKpiBloc(PengajuanKpiProgress());
            },
          ),
          BlocProvider<PengajuanPerformanceIndikatorBloc>(
            create: (context) {
              return PengajuanPerformanceIndikatorBloc(
                  PengajuanPerformanceIndikatorProgress());
            },
          ),
          BlocProvider<PublishKpiTeamBloc>(
            create: (context) {
              return PublishKpiTeamBloc(PublishKpiTeamProgress());
            },
          ),
          BlocProvider<GetListKpiSayaBloc>(
            create: (context) {
              return GetListKpiSayaBloc(DataListKpiSayaProgressState());
            },
          ),
          BlocProvider<GetListKpiPengajuanSayaBloc>(
            create: (context) {
              return GetListKpiPengajuanSayaBloc(
                  DataListKpiSayaProgressState());
            },
          ),
          BlocProvider<GetListKpiApproveSayaBloc>(
            create: (context) {
              return GetListKpiApproveSayaBloc(DataListKpiSayaProgressState());
            },
          ),
          BlocProvider<GetListKpiDiterimaSayaBloc>(
            create: (context) {
              return GetListKpiDiterimaSayaBloc(DataListKpiSayaProgressState());
            },
          ),
          BlocProvider<GetListkpiTeamBloc>(
            create: (context) {
              return GetListkpiTeamBloc(DataListKpiTeamProgressState());
            },
          ),
          BlocProvider<GetDataListKpiPengajuanTeamBloc>(
            create: (context) {
              return GetDataListKpiPengajuanTeamBloc(
                  DataListKpiTeamProgressState());
            },
          ),
          BlocProvider<GetDataListKpiApprovedTeamBloc>(
            create: (context) {
              return GetDataListKpiApprovedTeamBloc(
                  DataListKpiTeamProgressState());
            },
          ),
          BlocProvider<GetDataListKpiDraftTeamBloc>(
            create: (context) {
              return GetDataListKpiDraftTeamBloc(
                  DataListKpiTeamProgressState());
            },
          ),
          BlocProvider<GetDataPengajuanKpiSayaBloc>(
            create: (context) {
              return GetDataPengajuanKpiSayaBloc(
                  DataPengajuanKpiSayaProgressState());
            },
          ),
          BlocProvider<SimpanDraftPengajuanKpiSayaBloc>(
            create: (context) {
              return SimpanDraftPengajuanKpiSayaBloc(
                  SimpanPengajuanDraftKpiSayaProgress());
            },
          ),
          BlocProvider<GetDataPengajuanAspekKepribadianBloc>(
            create: (context) {
              return GetDataPengajuanAspekKepribadianBloc(
                  DataPengajuanAspekKepribadianProgressState());
            },
          ),
          BlocProvider<GetDataPengajuanAspekKedisiplinanBloc>(
            create: (context) {
              return GetDataPengajuanAspekKedisiplinanBloc(
                  DataPengajuanAspekKedisiplinanProgressState());
            },
          ),
          BlocProvider<GetDataPengajuanNilaiIndividuBloc>(
            create: (context) {
              return GetDataPengajuanNilaiIndividuBloc(
                  DataPengajuanNilaiIndividuProgressState());
            },
          ),
          BlocProvider<SetujuiApprovalKpiBloc>(
            create: (context) {
              return SetujuiApprovalKpiBloc(SetujuiApprovalKpiProgress());
            },
          ),
          BlocProvider<TerimaApprovalKpiBloc>(
            create: (context) {
              return TerimaApprovalKpiBloc(TerimaApprovalKpiProgress());
            },
          ),
          BlocProvider<NotifBloc>(
            create: (context) {
              return NotifBloc(ProgressNotifState());
            },
          ),
          BlocProvider<ShiftV2Bloc>(
            create: (context) {
              return ShiftV2Bloc(ShiftProgressV2State());
            },
          ),
          //START CHECKPOINT//
          BlocProvider<checkpointBloc.PatroliBloc>(
            create: (context) {
              return checkpointBloc.PatroliBloc(
                  checkpointBloc.PatroliProgressState());
            },
          ),
          BlocProvider<JadwalPatroliBloc>(
            create: (context) {
              return JadwalPatroliBloc();
            },
          ),
          BlocProvider<PatroliPegawaiBloc.PatroliPegawaiBloc>(
            create: (context) {
              return PatroliPegawaiBloc.PatroliPegawaiBloc(
                  PatroliPegawaiBloc.PatroliProgressState());
            },
          ),
          BlocProvider<AbsensiPatroliBloc>(
            create: (context) {
              return AbsensiPatroliBloc(AbsensiPatroliInitial());
            },
          ),
          BlocProvider<QRBloc>(
            create: (context) {
              return QRBloc();
            },
          ),
          BlocProvider<QrScannerV2Bloc>(
            create: (context) {
              return QrScannerV2Bloc();
            },
          ),
          BlocProvider<CekValidasiWaktuBloc>(create: (context) {
            return CekValidasiWaktuBloc(ChekValidasiProgress());
          }),
          //END CHECKPOINT//
          BlocProvider<FaceXBloc>(
            create: (context) {
              return FaceXBloc(regisState());
            },
          ),
          //SOS//
          BlocProvider<SosBloc>(
            create: (context) {
              return SosBloc(SosProgressState());
            },
          ),
          //END SOS//
          //PKWT//
          BlocProvider<PkwtBloc>(
            create: (context) {
              return PkwtBloc(PkwtProgressState());
            },
          ),
          BlocProvider<BadgePkwtBloc>(create: (context) {
            return BadgePkwtBloc(GetPkwtProgress());
          }),
          BlocProvider<DetailPkwtBloc>(
            create: (context) {
              return DetailPkwtBloc(DetailPkwtProgress());
            },
          ),
          BlocProvider<DataCallbackPkwtCubit>(
            create: (context) {
              return DataCallbackPkwtCubit();
            },
          ),
          BlocProvider<IzinPegawaiKlienBloc>(
              create: (context) {
                return IzinPegawaiKlienBloc(IzinPegawaiKlienProgressState());
              },
          ),
          BlocProvider<BadgeNotifKoordinatorBloc>(create: (context) {
            return BadgeNotifKoordinatorBloc(GetProgressKoordinator());
          },),
          BlocProvider<GridPreferenceBloc>(
            create: (context) {
              return GridPreferenceBloc();
            },
          ),
          //END PKWT//
  ];
}