Jonny Borges

fix linter errors

1 -import 'package:example_nav2/services/auth_service.dart';  
2 import 'package:flutter/material.dart'; 1 import 'package:flutter/material.dart';
3 import 'package:get/get.dart'; 2 import 'package:get/get.dart';
4 3
  4 +import '../../../../services/auth_service.dart';
5 import '../../../routes/app_pages.dart'; 5 import '../../../routes/app_pages.dart';
6 6
7 class DrawerWidget extends StatelessWidget { 7 class DrawerWidget extends StatelessWidget {
1 -import 'package:example_nav2/app/middleware/auth_middleware.dart';  
2 import 'package:get/get.dart'; 1 import 'package:get/get.dart';
3 -import 'package:get/get_navigation/src/nav2/router_outlet.dart';  
4 -  
5 -import 'package:example_nav2/app/modules/login/bindings/login_binding.dart';  
6 -import 'package:example_nav2/app/modules/login/views/login_view.dart';  
7 2
  3 +import '../middleware/auth_middleware.dart';
8 import '../modules/home/bindings/home_binding.dart'; 4 import '../modules/home/bindings/home_binding.dart';
9 import '../modules/home/views/home_view.dart'; 5 import '../modules/home/views/home_view.dart';
  6 +import '../modules/login/bindings/login_binding.dart';
  7 +import '../modules/login/views/login_view.dart';
10 import '../modules/product_details/bindings/product_details_binding.dart'; 8 import '../modules/product_details/bindings/product_details_binding.dart';
11 import '../modules/product_details/views/product_details_view.dart'; 9 import '../modules/product_details/views/product_details_view.dart';
12 import '../modules/products/bindings/products_binding.dart'; 10 import '../modules/products/bindings/products_binding.dart';
1 -import 'package:example_nav2/services/auth_service.dart';  
2 import 'package:flutter/material.dart'; 1 import 'package:flutter/material.dart';
3 -  
4 import 'package:get/get.dart'; 2 import 'package:get/get.dart';
5 -import 'package:get/get_navigation/src/nav2/get_router_delegate.dart';  
6 3
7 import 'app/routes/app_pages.dart'; 4 import 'app/routes/app_pages.dart';
  5 +import 'services/auth_service.dart';
8 6
9 void main() { 7 void main() {
10 runApp( 8 runApp(
@@ -1011,8 +1011,7 @@ you can only use widgets and widget functions here'''; @@ -1011,8 +1011,7 @@ you can only use widgets and widget functions here''';
1011 } 1011 }
1012 1012
1013 GlobalKey<NavigatorState>? addKey(GlobalKey<NavigatorState> newKey) { 1013 GlobalKey<NavigatorState>? addKey(GlobalKey<NavigatorState> newKey) {
1014 - getxController.key = newKey;  
1015 - return key; 1014 + return getxController.addKey(newKey);
1016 } 1015 }
1017 1016
1018 GlobalKey<NavigatorState>? nestedKey(dynamic key) { 1017 GlobalKey<NavigatorState>? nestedKey(dynamic key) {
@@ -73,7 +73,10 @@ class GetDelegate extends RouterDelegate<GetNavConfig> @@ -73,7 +73,10 @@ class GetDelegate extends RouterDelegate<GetNavConfig>
73 } 73 }
74 74
75 GetNavConfig? runMiddleware(GetNavConfig config) { 75 GetNavConfig? runMiddleware(GetNavConfig config) {
76 - final middlewares = config.currentTreeBranch.last.middlewares ?? []; 76 + final middlewares = config.currentTreeBranch.last.middlewares;
  77 + if (middlewares == null) {
  78 + return config;
  79 + }
77 var iterator = config; 80 var iterator = config;
78 for (var item in middlewares) { 81 for (var item in middlewares) {
79 var redirectRes = item.redirectDelegate(iterator); 82 var redirectRes = item.redirectDelegate(iterator);
@@ -105,9 +108,9 @@ class GetDelegate extends RouterDelegate<GetNavConfig> @@ -105,9 +108,9 @@ class GetDelegate extends RouterDelegate<GetNavConfig>
105 return history.removeAt(index); 108 return history.removeAt(index);
106 } 109 }
107 110
108 - void _unsafeHistoryClear() {  
109 - history.clear();  
110 - } 111 + // void _unsafeHistoryClear() {
  112 + // history.clear();
  113 + // }
111 114
112 /// Adds a new history entry and waits for the result 115 /// Adds a new history entry and waits for the result
113 Future<T?> pushHistory<T>( 116 Future<T?> pushHistory<T>(
@@ -260,7 +263,7 @@ class GetDelegate extends RouterDelegate<GetNavConfig> @@ -260,7 +263,7 @@ class GetDelegate extends RouterDelegate<GetNavConfig>
260 if (currentHistory == null) return <GetPage>[]; 263 if (currentHistory == null) return <GetPage>[];
261 264
262 final res = currentHistory.currentTreeBranch 265 final res = currentHistory.currentTreeBranch
263 - .where((r) => r.participatesInRootNavigator != null); 266 + .where((r) => r.participatesInRootNavigator);
264 if (res.length == 0) { 267 if (res.length == 0) {
265 //default behavoir, all routes participate in root navigator 268 //default behavoir, all routes participate in root navigator
266 return currentHistory.currentTreeBranch; 269 return currentHistory.currentTreeBranch;
@@ -312,6 +315,7 @@ class GetDelegate extends RouterDelegate<GetNavConfig> @@ -312,6 +315,7 @@ class GetDelegate extends RouterDelegate<GetNavConfig>
312 315
313 Future<T?> toNamed<T>(String fullRoute) { 316 Future<T?> toNamed<T>(String fullRoute) {
314 final decoder = Get.routeTree.matchRoute(fullRoute); 317 final decoder = Get.routeTree.matchRoute(fullRoute);
  318 +
315 return pushHistory<T>( 319 return pushHistory<T>(
316 GetNavConfig( 320 GetNavConfig(
317 currentTreeBranch: decoder.treeBranch, 321 currentTreeBranch: decoder.treeBranch,
@@ -421,7 +425,14 @@ class GetNavigator extends Navigator { @@ -421,7 +425,14 @@ class GetNavigator extends Navigator {
421 'GetNavigator should either have a key or a name set'), 425 'GetNavigator should either have a key or a name set'),
422 super( 426 super(
423 key: key ?? Get.nestedKey(name), 427 key: key ?? Get.nestedKey(name),
424 - onPopPage: onPopPage, 428 + onPopPage: onPopPage ??
  429 + (route, result) {
  430 + final didPop = route.didPop(result);
  431 + if (!didPop) {
  432 + return false;
  433 + }
  434 + return true;
  435 + },
425 reportsRouteUpdateToEngine: reportsRouteUpdateToEngine, 436 reportsRouteUpdateToEngine: reportsRouteUpdateToEngine,
426 pages: pages, 437 pages: pages,
427 observers: [ 438 observers: [
@@ -116,7 +116,11 @@ class GetRouterOutlet extends RouterOutlet<GetDelegate, GetNavConfig> { @@ -116,7 +116,11 @@ class GetRouterOutlet extends RouterOutlet<GetDelegate, GetNavConfig> {
116 if (pageRes.length > 0) { 116 if (pageRes.length > 0) {
117 return GetNavigator( 117 return GetNavigator(
118 onPopPage: onPopPage ?? 118 onPopPage: onPopPage ??
119 - (a, c) { 119 + (route, result) {
  120 + final didPop = route.didPop(result);
  121 + if (!didPop) {
  122 + return false;
  123 + }
120 return true; 124 return true;
121 }, 125 },
122 pages: pageRes, 126 pages: pageRes,
@@ -91,12 +91,12 @@ class ParseRouteTree { @@ -91,12 +91,12 @@ class ParseRouteTree {
91 91
92 List<GetPage> _flattenPage(GetPage route) { 92 List<GetPage> _flattenPage(GetPage route) {
93 final result = <GetPage>[]; 93 final result = <GetPage>[];
94 - if (route.children == null || route.children!.isEmpty) { 94 + if (route.children.isEmpty) {
95 return result; 95 return result;
96 } 96 }
97 97
98 final parentPath = route.name; 98 final parentPath = route.name;
99 - for (var page in route.children!) { 99 + for (var page in route.children) {
100 // Add Parent middlewares to children 100 // Add Parent middlewares to children
101 final parentMiddlewares = [ 101 final parentMiddlewares = [
102 if (page.middlewares != null) ...page.middlewares!, 102 if (page.middlewares != null) ...page.middlewares!,
@@ -29,7 +29,14 @@ class GetMaterialController extends GetxController { @@ -29,7 +29,14 @@ class GetMaterialController extends GetxController {
29 29
30 CustomTransition? customTransition; 30 CustomTransition? customTransition;
31 31
32 - var key = GlobalKey<NavigatorState>(debugLabel: 'Key Created by default'); 32 + var _key = GlobalKey<NavigatorState>(debugLabel: 'Key Created by default');
  33 +
  34 + GlobalKey<NavigatorState> get key => _key;
  35 +
  36 + GlobalKey<NavigatorState>? addKey(GlobalKey<NavigatorState> newKey) {
  37 + _key = newKey;
  38 + return key;
  39 + }
33 40
34 Map<dynamic, GlobalKey<NavigatorState>> keys = {}; 41 Map<dynamic, GlobalKey<NavigatorState>> keys = {};
35 42
1 -// import 'package:flutter/material.dart';  
2 -  
3 -// import '../../../get.dart';  
4 -// import 'custom_transition.dart';  
5 -// import 'get_transition_mixin.dart';  
6 -// import 'route_middleware.dart';  
7 -// import 'transitions_type.dart';  
8 -  
9 -// class GetPageRoute<T> extends PageRoute<T>  
10 -// with GetPageRouteTransitionMixin<T> {  
11 -// /// Creates a page route for use in an iOS designed app.  
12 -// ///  
13 -// /// The [builder], [maintainState], and [fullscreenDialog] arguments must not  
14 -// /// be null.  
15 -// GetPageRoute({  
16 -// RouteSettings? settings,  
17 -// this.transitionDuration = const Duration(milliseconds: 300),  
18 -// this.opaque = true,  
19 -// this.parameter,  
20 -// this.curve,  
21 -// this.alignment,  
22 -// this.transition,  
23 -// this.popGesture,  
24 -// this.customTransition,  
25 -// this.barrierDismissible = false,  
26 -// this.barrierColor,  
27 -// this.binding,  
28 -// this.bindings,  
29 -// this.routeName,  
30 -// this.page,  
31 -// this.title,  
32 -// this.barrierLabel,  
33 -// this.maintainState = true,  
34 -// bool fullscreenDialog = false,  
35 -// this.middlewares,  
36 -// }) : reference = "$routeName: ${settings?.hashCode ?? page.hashCode}",  
37 -// super(settings: settings, fullscreenDialog: fullscreenDialog);  
38 -  
39 -// @override  
40 -// final Duration transitionDuration;  
41 -// final GetPageBuilder? page;  
42 -// final String? routeName;  
43 -// final String reference;  
44 -// final CustomTransition? customTransition;  
45 -// final Bindings? binding;  
46 -// final Map<String, String>? parameter;  
47 -// final List<Bindings>? bindings;  
48 -  
49 -// @override  
50 -// final bool opaque;  
51 -// final bool? popGesture;  
52 -  
53 -// @override  
54 -// final bool barrierDismissible;  
55 -// final Transition? transition;  
56 -// final Curve? curve;  
57 -// final Alignment? alignment;  
58 -// final List<GetMiddleware>? middlewares;  
59 -  
60 -// @override  
61 -// final Color? barrierColor;  
62 -  
63 -// @override  
64 -// final String? barrierLabel;  
65 -  
66 -// @override  
67 -// final bool maintainState;  
68 -  
69 -// @override  
70 -// void dispose() {  
71 -// super.dispose();  
72 -// if (Get.smartManagement != SmartManagement.onlyBuilder) {  
73 -// WidgetsBinding.instance!.addPostFrameCallback((_) {  
74 -// if (Get.reference != reference) {  
75 -// GetInstance().removeDependencyByRoute("$reference");  
76 -// }  
77 -// });  
78 -// }  
79 -  
80 -// // if (Get.smartManagement != SmartManagement.onlyBuilder) {  
81 -// // GetInstance().removeDependencyByRoute("$reference");  
82 -// // }  
83 -  
84 -// final middlewareRunner = MiddlewareRunner(middlewares);  
85 -// middlewareRunner.runOnPageDispose();  
86 -// }  
87 -  
88 -// @override  
89 -// Widget buildContent(BuildContext context) {  
90 -// Get.reference = reference;  
91 -// final middlewareRunner = MiddlewareRunner(middlewares);  
92 -// final bindingsToBind = middlewareRunner.runOnBindingsStart(bindings);  
93 -  
94 -// binding?.dependencies();  
95 -// if (bindingsToBind != null) {  
96 -// for (final binding in bindingsToBind) {  
97 -// binding.dependencies();  
98 -// }  
99 -// }  
100 -  
101 -// final pageToBuild = middlewareRunner.runOnPageBuildStart(page)!;  
102 -// return middlewareRunner.runOnPageBuilt(pageToBuild());  
103 -// }  
104 -  
105 -// @override  
106 -// final String? title;  
107 -  
108 -// @override  
109 -// String get debugLabel => '${super.debugLabel}(${settings.name})';  
110 -// }  
@@ -34,7 +34,7 @@ class GetPage<T> extends Page<T> { @@ -34,7 +34,7 @@ class GetPage<T> extends Page<T> {
34 final String? title; 34 final String? title;
35 final Transition? transition; 35 final Transition? transition;
36 final Curve curve; 36 final Curve curve;
37 - final bool? participatesInRootNavigator; 37 + final bool participatesInRootNavigator;
38 final Alignment? alignment; 38 final Alignment? alignment;
39 final bool maintainState; 39 final bool maintainState;
40 final bool opaque; 40 final bool opaque;
@@ -57,7 +57,7 @@ class GetPage<T> extends Page<T> { @@ -57,7 +57,7 @@ class GetPage<T> extends Page<T> {
57 @override 57 @override
58 final String name; 58 final String name;
59 59
60 - final List<GetPage>? children; 60 + final List<GetPage> children;
61 final List<GetMiddleware>? middlewares; 61 final List<GetMiddleware>? middlewares;
62 final PathDecoded path; 62 final PathDecoded path;
63 final GetPage? unknownRoute; 63 final GetPage? unknownRoute;
@@ -66,7 +66,7 @@ class GetPage<T> extends Page<T> { @@ -66,7 +66,7 @@ class GetPage<T> extends Page<T> {
66 required this.name, 66 required this.name,
67 required this.page, 67 required this.page,
68 this.title, 68 this.title,
69 - this.participatesInRootNavigator, 69 + this.participatesInRootNavigator = true,
70 this.gestureWidth = 20, 70 this.gestureWidth = 20,
71 // RouteSettings settings, 71 // RouteSettings settings,
72 this.maintainState = true, 72 this.maintainState = true,
@@ -81,7 +81,7 @@ class GetPage<T> extends Page<T> { @@ -81,7 +81,7 @@ class GetPage<T> extends Page<T> {
81 this.transition, 81 this.transition,
82 this.customTransition, 82 this.customTransition,
83 this.fullscreenDialog = false, 83 this.fullscreenDialog = false,
84 - this.children, 84 + this.children = const <GetPage>[],
85 this.middlewares, 85 this.middlewares,
86 this.unknownRoute, 86 this.unknownRoute,
87 this.preventDuplicates = true, 87 this.preventDuplicates = true,
1 -import 'package:flutter/widgets.dart';  
2 -  
3 -class TransitionComponent {  
4 - Widget buildChildWithTransition(  
5 - BuildContext context,  
6 - Curve curve,  
7 - Alignment alignment,  
8 - Animation<double> animation,  
9 - Animation<double> secondaryAnimation,  
10 - Widget child) {  
11 - return child;  
12 - }  
13 -}  
@@ -4,7 +4,7 @@ export 'duration_extensions.dart'; @@ -4,7 +4,7 @@ export 'duration_extensions.dart';
4 export 'dynamic_extensions.dart'; 4 export 'dynamic_extensions.dart';
5 export 'event_loop_extensions.dart'; 5 export 'event_loop_extensions.dart';
6 export 'internacionalization.dart'; 6 export 'internacionalization.dart';
  7 +export 'iterable_extensions.dart';
7 export 'num_extensions.dart'; 8 export 'num_extensions.dart';
8 export 'string_extensions.dart'; 9 export 'string_extensions.dart';
9 export 'widget_extensions.dart'; 10 export 'widget_extensions.dart';
10 -export 'iterable_extensions.dart';