onGenerateRoute method
Implementation
Route? onGenerateRoute(RouteSettings settings) {
///`Check if List is Empty`
if (routes.isEmpty || getPages.isEmpty) {
return GetPageRoute(
settings: settings,
page: () => EmptyPage(),
);
}
/// Check if we Have Route of That Page
/// assigning first Route as Default
/// in case if no route name matches
for (var element in routes) {
if (element == settings.name) {
// GetRouteMap routeMap = routeList[routes.indexOf(element)];
///Grab `Get Page` from list
GetPage? getPage = getPages.firstWhereOrNull((e) => e.name == element);
///if `GetPage = Null` , Means Wrong Route Passed , Show Empty Page
if (getPage == null) {
return EmptyGetPageRoute(element, settings);
}
/// Else We can return Finally The `Correct` Page
return GetRouteFromPage(getPage, settings);
// return routeList[pages.indexOf(element)].getPageRoute;
}
///if `settingName = / ` We can Pass the First Page
if (settings.name == '/') {
GetPage? getPage =
getPages.firstWhereOrNull((e) => e.name == routes[0]);
if (getPage == null) {
return EmptyGetPageRoute(routes[0], settings);
}
return GetRouteFromPage(getPage, settings);
}
}
}