feat: new pages and with binding ...

This commit is contained in:
2025-05-21 09:04:21 +03:30
parent 7f72f2c70d
commit ed75da4eaa
10 changed files with 84 additions and 13 deletions

View File

@@ -0,0 +1,5 @@
import 'package:rasadyar_core/core.dart';
class ActionLogic extends GetxController {
}

View File

@@ -0,0 +1,12 @@
import 'package:flutter/material.dart';
import 'package:rasadyar_core/core.dart';
import 'logic.dart';
class ActionPage extends GetView<ActionLogic> {
ActionPage({super.key});
@override
Widget build(BuildContext context) {
return Container();
}
}

View File

@@ -0,0 +1,5 @@
import 'package:rasadyar_core/core.dart';
class MapLogic extends GetxController {
}

View File

@@ -0,0 +1,14 @@
import 'package:flutter/material.dart';
import 'package:rasadyar_core/core.dart';
import 'logic.dart';
class MapPage extends GetView<MapLogic> {
MapPage({super.key});
@override
Widget build(BuildContext context) {
return Container();
}
}

View File

@@ -0,0 +1,5 @@
import 'package:rasadyar_core/core.dart';
class ProfileLogic extends GetxController {
}

View File

@@ -0,0 +1,13 @@
import 'package:flutter/material.dart';
import 'package:rasadyar_core/core.dart';
import 'logic.dart';
class ProfilePage extends GetView<ProfileLogic> {
ProfilePage({super.key});
@override
Widget build(BuildContext context) {
return Container();
}
}

View File

@@ -1,8 +1,13 @@
import 'package:flutter/material.dart';
import 'package:rasadyar_core/core.dart';
import 'package:rasadyar_livestock/presentation/page/action/view.dart';
import 'package:rasadyar_livestock/presentation/page/map/view.dart';
import 'package:rasadyar_livestock/presentation/page/profile/view.dart';
class RootLogic extends GetxController {
List<Widget> pages = [ActionPage(), MapPage(), ProfilePage()];
RxInt indexedPage = 1.obs;
@override
void onReady() {
// TODO: implement onReady

View File

@@ -7,6 +7,14 @@ class RootPage extends GetView<RootLogic> {
@override
Widget build(BuildContext context) {
return Container();
return Scaffold(
body: ObxValue((data) {
return IndexedStack(
children: controller.pages,
index: data.value,
sizing: StackFit.expand,
);
}, controller.indexedPage),
);
}
}

View File

@@ -1,10 +1,11 @@
import 'package:rasadyar_auth/auth.dart';
import 'package:rasadyar_core/core.dart';
import 'package:rasadyar_livestock/presentation/page/action/logic.dart';
import 'package:rasadyar_livestock/presentation/page/map/logic.dart';
import 'package:rasadyar_livestock/presentation/page/profile/logic.dart';
import 'package:rasadyar_livestock/presentation/page/root/logic.dart';
import 'package:rasadyar_livestock/presentation/page/root/view.dart';
part'app_routes.dart';
part 'app_routes.dart';
sealed class LiveStockPages {
LiveStockPages._();
@@ -15,11 +16,12 @@ sealed class LiveStockPages {
page: () => RootPage(),
middlewares: [AuthMiddleware()],
binding: BindingsBuilder(() {
Get.put(RootLogic());
BindingsBuilder.put(() => RootLogic());
Get.lazyPut(() => ActionLogic());
Get.lazyPut(() => MapLogic());
Get.lazyPut(() => ProfileLogic());
}),
),
];
}

View File

@@ -1,9 +1,11 @@
part of 'app_pages.dart';
sealed class LiveStockRoutes {
LiveStockRoutes._();
static const init = '/liveStockRoutesInit';
static const init = '/liveStock';
static const action = '$init/liveStock';
static const map = '$init/liveStock';
static const profile = '$init/profile';
}