import 'package:rasadyar_chicken/presentation/pages/common/auth/logic.dart'; import 'package:rasadyar_chicken/presentation/pages/common/auth/view.dart'; import 'package:rasadyar_chicken/presentation/pages/common/role/logic.dart'; import 'package:rasadyar_chicken/presentation/pages/common/role/view.dart'; import 'package:rasadyar_chicken/presentation/pages/kill_house/action/logic.dart'; import 'package:rasadyar_chicken/presentation/pages/kill_house/action/view.dart'; import 'package:rasadyar_chicken/presentation/pages/kill_house/root/logic.dart'; import 'package:rasadyar_chicken/presentation/pages/kill_house/root/view.dart'; import 'package:rasadyar_chicken/presentation/pages/kill_house/submit_request/logic.dart'; import 'package:rasadyar_chicken/presentation/pages/kill_house/submit_request/view.dart'; import 'package:rasadyar_chicken/features/poultry_farm_inspection/poultry_farm_inspection.dart'; import 'package:rasadyar_chicken/features/poultry_science/poultry_science.dart'; import 'package:rasadyar_chicken/presentation/pages/steward/steward.dart'; import 'package:rasadyar_chicken/presentation/routes/global_binding.dart'; import 'package:rasadyar_chicken/presentation/routes/routes.dart'; import 'package:rasadyar_chicken/presentation/widget/base_page/logic.dart'; import 'package:rasadyar_chicken/presentation/widget/captcha/logic.dart'; import 'package:rasadyar_core/core.dart'; sealed class ChickenPages { ChickenPages._(); static final pages = [ GetPage( name: ChickenRoutes.auth, page: () => AuthPage(), binding: BindingsBuilder(() { Get.lazyPut(() => AuthLogic()); Get.lazyPut(() => CaptchaWidgetLogic()); Get.lazyPut(() => ChickenBaseLogic(), fenix: true); }), ), GetPage( name: ChickenRoutes.role, page: () => RolePage(), binding: BindingsBuilder(() { Get.lazyPut(() => RoleLogic()); Get.lazyPut(() => ChickenBaseLogic(), fenix: true); }), ), //region Steward Pages GetPage( name: ChickenRoutes.initSteward, page: () => StewardRootPage(), middlewares: [AuthMiddleware()], bindings: [ GlobalBinding(), BindingsBuilder(() { Get.lazyPut(() => ChickenBaseLogic(), fenix: true); Get.lazyPut(() => StewardRootLogic()); Get.lazyPut(() => HomeLogic()); Get.lazyPut(() => BuyLogic()); Get.lazyPut(() => SaleLogic()); Get.lazyPut(() => SegmentationLogic()); }), ], ), GetPage( name: ChickenRoutes.homeSteward, page: () => HomePage(), middlewares: [AuthMiddleware()], binding: BindingsBuilder(() { Get.put(HomeLogic()); Get.lazyPut(() => ChickenBaseLogic()); }), ), //sales GetPage( name: ChickenRoutes.saleSteward, page: () => SalePage(), middlewares: [AuthMiddleware()], binding: BindingsBuilder(() { Get.lazyPut(() => SaleLogic()); Get.lazyPut(() => ChickenBaseLogic()); Get.lazyPut(() => SalesOutOfProvinceLogic()); Get.lazyPut(() => SalesOutOfProvinceBuyersLogic()); Get.lazyPut(() => StewardRootLogic()); }), ), GetPage( name: ChickenRoutes.salesOutOfProvinceSteward, page: () => SalesOutOfProvincePage(), middlewares: [AuthMiddleware()], binding: BindingsBuilder(() { Get.lazyPut(() => SalesOutOfProvinceLogic()); Get.lazyPut(() => SalesOutOfProvinceBuyersLogic()); Get.lazyPut(() => SalesOutOfProvinceSalesListLogic()); }), ), GetPage( name: ChickenRoutes.salesOutOfProvinceBuyerSteward, page: () => SalesOutOfProvinceBuyersPage(), middlewares: [AuthMiddleware()], binding: BindingsBuilder(() { Get.lazyPut(() => SalesOutOfProvinceLogic()); Get.lazyPut(() => SalesOutOfProvinceBuyersLogic()); Get.lazyPut(() => SalesOutOfProvinceSalesListLogic()); }), ), GetPage( name: ChickenRoutes.salesInProvinceSteward, page: () => SalesInProvincePage(), middlewares: [AuthMiddleware()], binding: BindingsBuilder(() { Get.lazyPut(() => ChickenBaseLogic()); Get.lazyPut(() => SalesInProvinceLogic()); }), ), //buy GetPage( name: ChickenRoutes.buySteward, page: () => BuyPage(), middlewares: [AuthMiddleware()], binding: BindingsBuilder(() { Get.lazyPut(() => ChickenBaseLogic()); Get.lazyPut(() => BuyLogic()); }), ), GetPage( name: ChickenRoutes.buysOutOfProvinceSteward, page: () => BuyOutOfProvincePage(), middlewares: [AuthMiddleware()], binding: BindingsBuilder(() { Get.lazyPut(() => ChickenBaseLogic()); Get.lazyPut(() => BuyOutOfProvinceLogic()); }), ), GetPage( name: ChickenRoutes.buysInProvinceSteward, page: () => BuyInProvincePage(), middlewares: [AuthMiddleware()], binding: BindingsBuilder(() { Get.lazyPut(() => ChickenBaseLogic()); Get.lazyPut(() => BuyInProvinceLogic()); Get.lazyPut(() => BuyInProvinceWaitingLogic()); Get.lazyPut(() => BuyInProvinceAllLogic()); }), ), //endregion //region Poultry science Pages ...PoultrySciencePages.pages, //endregion //region Poultry Farm Inspection GetPage( name: ChickenRoutes.poultryFarmInspectionHome, page: () => PoultryFarmInspectionHomePage(), binding: BindingsBuilder(() { Get.lazyPut(() => PoultryFarmInspectionHomeLogic()); Get.lazyPut(() => ChickenBaseLogic(), fenix: true); }), ), //endregion //region kill house GetPage( name: ChickenRoutes.initKillHouse, page: () => KillHouseRootPage(), binding: BindingsBuilder(() { Get.lazyPut(() => KillHouseRootLogic()); Get.lazyPut(() => ChickenBaseLogic(), fenix: true); }), ), GetPage( name: ChickenRoutes.actionKillHouse, page: () => KillHouseActionPage(), bindings: [ GlobalBinding(), BindingsBuilder(() { Get.lazyPut(() => KillHouseActionLogic()); Get.lazyPut(() => ChickenBaseLogic(), fenix: true); }), ], ), GetPage( name: ChickenRoutes.submitRequestKillHouse, page: () => SubmitRequestKillHousePage(), bindings: [ GlobalBinding(), BindingsBuilder(() { Get.lazyPut(() => SubmitRequestKillHouseLogic()); Get.lazyPut(() => ChickenBaseLogic(), fenix: true); }), ], ), //endregion ]; }