78 lines
2.4 KiB
Dart
78 lines
2.4 KiB
Dart
import 'package:rasadyar_app/presentation/pages/modules/logic.dart';
|
|
import 'package:rasadyar_app/presentation/pages/modules/view.dart';
|
|
import 'package:rasadyar_app/presentation/pages/splash/logic.dart';
|
|
import 'package:rasadyar_app/presentation/pages/splash/view.dart';
|
|
import 'package:rasadyar_app/presentation/pages/system_design/system_design.dart';
|
|
import 'package:rasadyar_chicken/chicken.dart';
|
|
import 'package:rasadyar_chicken/data/di/chicken_di.dart';
|
|
import 'package:rasadyar_core/core.dart';
|
|
import 'package:rasadyar_inspection/injection/inspection_di.dart';
|
|
import 'package:rasadyar_inspection/inspection.dart';
|
|
import 'package:rasadyar_livestock/injection/live_stock_di.dart';
|
|
import 'package:rasadyar_livestock/presentation/routes/app_pages.dart';
|
|
|
|
part 'app_paths.dart';
|
|
|
|
sealed class AppPages {
|
|
AppPages._();
|
|
|
|
static const String initRoutes = AppPaths.splash;
|
|
static const String initDesignSystem = AppPaths.systemDesignPage;
|
|
|
|
static List<GetPage> pages = [
|
|
GetPage(name: AppPaths.systemDesignPage, page: () => SystemDesignPage()),
|
|
|
|
GetPage(
|
|
name: AppPaths.moduleList,
|
|
page: () => ModulesPage(),
|
|
binding: BindingsBuilder(() {
|
|
Get.lazyPut(() => SliderLogic(), tag: "up");
|
|
Get.lazyPut(() => SliderLogic(), tag: "down");
|
|
Get.put(ModulesLogic());
|
|
}),
|
|
),
|
|
|
|
GetPage(
|
|
name: AppPaths.splash,
|
|
page: () => SplashPage(),
|
|
binding: BindingsBuilder.put(() => SplashLogic()),
|
|
),
|
|
|
|
...InspectionPages.pages,
|
|
...LiveStockPages.pages,
|
|
...ChickenPages.pages,
|
|
];
|
|
}
|
|
|
|
Map<String, Future<void>?> getTargetModule(Module? value) {
|
|
switch (value) {
|
|
case Module.inspection:
|
|
return {InspectionRoutes.init: setupInspectionDI()};
|
|
case Module.liveStocks:
|
|
return {LiveStockRoutes.init: setupLiveStockDI()};
|
|
case Module.chicken:
|
|
return {ChickenRoutes.init: setupChickenDI()};
|
|
default:
|
|
return {AppPaths.moduleList: null};
|
|
}
|
|
}
|
|
|
|
Map<String, List<Future<void>?>?> getAuthTargetPage(Module? value) {
|
|
switch (value) {
|
|
case Module.inspection:
|
|
return {
|
|
InspectionRoutes.auth: [setupInspectionDI(), removeInspectionDI()],
|
|
};
|
|
case Module.liveStocks:
|
|
return {
|
|
LiveStockRoutes.auth: [setupLiveStockDI(), removeLiveStockDI()],
|
|
};
|
|
case Module.chicken:
|
|
return {
|
|
ChickenRoutes.auth: [setupChickenDI(), removeChickenDI()],
|
|
};
|
|
default:
|
|
return {AppPaths.moduleList: null};
|
|
}
|
|
}
|