You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
1.9KB

  1. // import 'package:barcode_scan/barcode_scan.dart';
  2. import 'dart:io';
  3. import 'package:farm_tpf/data/repository/repository.dart';
  4. import 'package:farm_tpf/presentation/screens/codes/bloc/stamp_bloc.dart';
  5. import 'package:farm_tpf/presentation/screens/codes/cubit/detail_stamp_cubit.dart';
  6. import 'package:farm_tpf/presentation/screens/plot/bloc/plot_bloc.dart';
  7. import 'package:firebase_core/firebase_core.dart';
  8. import 'package:flutter/material.dart';
  9. import 'package:flutter/services.dart';
  10. import 'package:flutter_bloc/flutter_bloc.dart';
  11. import 'package:hive/hive.dart';
  12. import 'package:path_provider/path_provider.dart';
  13. import 'app.dart';
  14. // import 'data/repository/auth_repository.dart';
  15. import 'data/repository/authentication_repository.dart';
  16. import 'environment/app_config.dart';
  17. import 'presentation/screens/task/bloc/task_bloc.dart';
  18. final GlobalKey<NavigatorState> globalNavigator = GlobalKey<NavigatorState>();
  19. Future<void> main() async {
  20. WidgetsFlutterBinding.ensureInitialized();
  21. await Firebase.initializeApp();
  22. await SystemChrome.setPreferredOrientations([
  23. DeviceOrientation.portraitDown,
  24. DeviceOrientation.portraitUp,
  25. ]);
  26. setFlavorDevelopment();
  27. final appDocumentDirectory = await getApplicationDocumentsDirectory();
  28. Hive..init(appDocumentDirectory.path);
  29. await Hive.openBox('LocalDBName');
  30. runApp(
  31. MultiBlocProvider(
  32. providers: [
  33. BlocProvider(
  34. create: (_) => StampBloc(
  35. Repository(),
  36. ),
  37. ),
  38. BlocProvider(
  39. create: (_) => TaskBloc(
  40. Repository(),
  41. ),
  42. ),
  43. BlocProvider(
  44. create: (_) => PlotBloc(
  45. repository: Repository(),
  46. ),
  47. ),
  48. BlocProvider(
  49. create: (_) => DetailStampCubit(),
  50. ),
  51. ],
  52. child: App(
  53. authenticationRepository: AuthenticationRepository(),
  54. ),
  55. ),
  56. );
  57. }