doc : RErrorWidget and EmptyWidget
This commit is contained in:
BIN
doc/EmptyWidget.png
Normal file
BIN
doc/EmptyWidget.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 124 KiB |
BIN
doc/RErrorWidget.png
Normal file
BIN
doc/RErrorWidget.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 53 KiB |
15
lib/presentation/pages/test/logic.dart
Normal file
15
lib/presentation/pages/test/logic.dart
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import 'package:get/get.dart';
|
||||||
|
|
||||||
|
class TestLogic extends GetxController {
|
||||||
|
@override
|
||||||
|
void onReady() {
|
||||||
|
// TODO: implement onReady
|
||||||
|
super.onReady();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void onClose() {
|
||||||
|
// TODO: implement onClose
|
||||||
|
super.onClose();
|
||||||
|
}
|
||||||
|
}
|
||||||
39
lib/presentation/pages/test/view.dart
Normal file
39
lib/presentation/pages/test/view.dart
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:get/get.dart';
|
||||||
|
import 'package:rasadyar_core/core.dart';
|
||||||
|
|
||||||
|
import 'logic.dart';
|
||||||
|
|
||||||
|
class TestPage extends StatelessWidget {
|
||||||
|
const TestPage({Key? key}) : super(key: key);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
final TestLogic logic = Get.put(TestLogic());
|
||||||
|
|
||||||
|
return Scaffold(body: SafeArea(
|
||||||
|
child: Padding(
|
||||||
|
padding: const EdgeInsets.all(18.0),
|
||||||
|
child: Column(children: [
|
||||||
|
|
||||||
|
Text('buildRow'),
|
||||||
|
buildRow(
|
||||||
|
title: "Test Row Item",
|
||||||
|
value: "Value",
|
||||||
|
titleLabel: "Title Label",
|
||||||
|
valueLabel: "Value Label",
|
||||||
|
titleLabelStyle: AppFonts.yekan14.copyWith(color: Colors.red),
|
||||||
|
valueLabelStyle: AppFonts.yekan14.copyWith(color: Colors.blue),
|
||||||
|
titleStyle: AppFonts.yekan16.copyWith(color: Colors.green),
|
||||||
|
valueStyle: AppFonts.yekan16.copyWith(color: Colors.purple),
|
||||||
|
),
|
||||||
|
Divider(),
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
]),
|
||||||
|
),
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -3,6 +3,8 @@ 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/logic.dart';
|
||||||
import 'package:rasadyar_app/presentation/pages/splash/view.dart';
|
import 'package:rasadyar_app/presentation/pages/splash/view.dart';
|
||||||
import 'package:rasadyar_app/presentation/pages/system_design/system_design.dart';
|
import 'package:rasadyar_app/presentation/pages/system_design/system_design.dart';
|
||||||
|
import 'package:rasadyar_app/presentation/pages/test/logic.dart';
|
||||||
|
import 'package:rasadyar_app/presentation/pages/test/view.dart';
|
||||||
import 'package:rasadyar_chicken/chicken.dart';
|
import 'package:rasadyar_chicken/chicken.dart';
|
||||||
import 'package:rasadyar_chicken/data/di/chicken_di.dart';
|
import 'package:rasadyar_chicken/data/di/chicken_di.dart';
|
||||||
import 'package:rasadyar_core/core.dart';
|
import 'package:rasadyar_core/core.dart';
|
||||||
@@ -16,7 +18,8 @@ part 'app_paths.dart';
|
|||||||
sealed class AppPages {
|
sealed class AppPages {
|
||||||
AppPages._();
|
AppPages._();
|
||||||
|
|
||||||
static const String initRoutes = AppPaths.splash;
|
//static const String initRoutes = AppPaths.splash;
|
||||||
|
static const String initRoutes = AppPaths.test;
|
||||||
static const String initDesignSystem = AppPaths.systemDesignPage;
|
static const String initDesignSystem = AppPaths.systemDesignPage;
|
||||||
|
|
||||||
static List<GetPage> pages = [
|
static List<GetPage> pages = [
|
||||||
@@ -38,13 +41,18 @@ sealed class AppPages {
|
|||||||
binding: BindingsBuilder.put(() => SplashLogic()),
|
binding: BindingsBuilder.put(() => SplashLogic()),
|
||||||
),
|
),
|
||||||
|
|
||||||
|
GetPage(
|
||||||
|
name: AppPaths.test,
|
||||||
|
page: () => TestPage(),
|
||||||
|
binding: BindingsBuilder.put(() => TestLogic()),
|
||||||
|
),
|
||||||
|
|
||||||
...InspectionPages.pages,
|
...InspectionPages.pages,
|
||||||
...LiveStockPages.pages,
|
...LiveStockPages.pages,
|
||||||
...ChickenPages.pages,
|
...ChickenPages.pages,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Map<String, List<Future<void> Function()?>?> getAuthTargetPage(Module? value) {
|
Map<String, List<Future<void> Function()?>?> getAuthTargetPage(Module? value) {
|
||||||
switch (value) {
|
switch (value) {
|
||||||
case Module.inspection:
|
case Module.inspection:
|
||||||
|
|||||||
@@ -6,4 +6,5 @@ sealed class AppPaths {
|
|||||||
static const String splash = '/splash';
|
static const String splash = '/splash';
|
||||||
static const String moduleList = '/moduleList';
|
static const String moduleList = '/moduleList';
|
||||||
static const String systemDesignPage = '/systemDesignPage';
|
static const String systemDesignPage = '/systemDesignPage';
|
||||||
|
static const String test = '/test';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import 'package:rasadyar_chicken/data/models/response/kill_house_distribution_in
|
|||||||
import 'package:rasadyar_chicken/presentation/widget/base_page/view.dart';
|
import 'package:rasadyar_chicken/presentation/widget/base_page/view.dart';
|
||||||
import 'package:rasadyar_chicken/presentation/widget/steward/widely_used/view.dart';
|
import 'package:rasadyar_chicken/presentation/widget/steward/widely_used/view.dart';
|
||||||
import 'package:rasadyar_core/core.dart';
|
import 'package:rasadyar_core/core.dart';
|
||||||
|
import 'package:rasadyar_core/presentation/widget/error_widget.dart';
|
||||||
|
|
||||||
import 'logic.dart';
|
import 'logic.dart';
|
||||||
|
|
||||||
@@ -25,17 +26,6 @@ class HomePage extends GetView<HomeLogic> {
|
|||||||
SizedBox(height: 8.h),
|
SizedBox(height: 8.h),
|
||||||
WidelyUsedWidget(),
|
WidelyUsedWidget(),
|
||||||
SizedBox(height: 20),
|
SizedBox(height: 20),
|
||||||
Wrap(
|
|
||||||
spacing: 8,
|
|
||||||
children: [
|
|
||||||
buildColumn(CoreLoadingIndicator(), 'CoreLoadingIndicator'),
|
|
||||||
buildColumn(CoreLoadingIndicator.linear(), 'CoreLoadingIndicator.linear'),
|
|
||||||
buildColumn(CoreLoadingIndicator.lottie(), ' CoreLoadingIndicator.lottie'),
|
|
||||||
buildColumn(CoreLoadingIndicator.small(), ' CoreLoadingIndicator.small'),
|
|
||||||
|
|
||||||
buildColumn(CoreLoadingIndicator.cupertino(), 'CoreLoadingIndicator.cupertino'),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,31 +1,31 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:rasadyar_core/core.dart';
|
import 'package:rasadyar_core/core.dart';
|
||||||
|
|
||||||
class EmptyWidget extends StatelessWidget {
|
|
||||||
const EmptyWidget({super.key, this.onRefresh});
|
|
||||||
|
|
||||||
final RefreshCallback? onRefresh;
|
/// see this link for UI reference:
|
||||||
|
/// [https://github.com/mirani95/rasadyarApp/blob/develop/doc/EmptyWidget.png]
|
||||||
|
|
||||||
|
class EmptyWidget extends StatelessWidget {
|
||||||
|
const EmptyWidget({super.key});
|
||||||
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return RefreshIndicator(
|
return SingleChildScrollView(
|
||||||
onRefresh: onRefresh ?? () async {},
|
physics: AlwaysScrollableScrollPhysics(),
|
||||||
child: SingleChildScrollView(
|
child: SizedBox(
|
||||||
physics: AlwaysScrollableScrollPhysics(),
|
height: MediaQuery.of(context).size.height / 1.5,
|
||||||
child: SizedBox(
|
child: Column(
|
||||||
height: MediaQuery.of(context).size.height / 1.5,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
child: Column(
|
crossAxisAlignment: CrossAxisAlignment.center,
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
children: [
|
||||||
crossAxisAlignment: CrossAxisAlignment.center,
|
Row(),
|
||||||
children: [
|
Assets.vec.emptySvg.svg(height: 190.h),
|
||||||
Row(),
|
Text(
|
||||||
Assets.vec.emptySvg.svg(height: 190.h),
|
'داده ای یافت نشد!',
|
||||||
Text(
|
style: AppFonts.yekan20.copyWith(color: AppColor.textColor),
|
||||||
'داده ای یافت نشد!',
|
),
|
||||||
style: AppFonts.yekan20.copyWith(color: AppColor.textColor),
|
],
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,8 +1,13 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:rasadyar_core/core.dart';
|
import 'package:rasadyar_core/core.dart';
|
||||||
|
|
||||||
class ErrorWidget extends StatelessWidget {
|
|
||||||
const ErrorWidget({super.key});
|
/// see this link for UI reference:
|
||||||
|
/// [https://github.com/mirani95/rasadyarApp/blob/develop/doc/RErrorWidget.png]
|
||||||
|
|
||||||
|
|
||||||
|
class RErrorWidget extends StatelessWidget {
|
||||||
|
const RErrorWidget({super.key});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|||||||
Reference in New Issue
Block a user