NyRouterRoute constructor

NyRouterRoute({
  1. required String name,
  2. required NyRouteView view,
  3. NyArgument? defaultArgs,
  4. NyQueryParameters? queryParameters,
  5. List<RouteGuard>? routeGuards,
  6. TransitionType? transitionType,
  7. PageTransitionType? pageTransitionType,
  8. PageTransitionSettings? pageTransitionSettings,
  9. dynamic initialRoute = false,
  10. dynamic unknownRoute = false,
  11. dynamic authPage = false,
})

Implementation

NyRouterRoute({
  required this.name,
  required this.view,
  this.defaultArgs,
  this.queryParameters,
  List<RouteGuard>? routeGuards,
  TransitionType? transitionType,
  this.pageTransitionType,
  this.pageTransitionSettings,
  initialRoute = false,
  unknownRoute = false,
  authPage = false,
}) : _initialRoute = initialRoute,
     _unknownRoute = unknownRoute,
     _authPage = authPage,
     _previewRoute = false,
     _transitionType = transitionType {
  _routeGuards.addAll(routeGuards ?? []);
  builder = (context, arg, queryParameters) {
    Widget widget = view(context);
    if (widget is NyStatefulWidget) {
      widget.controller.request = NyRequest(
        currentRoute: name,
        args: arg,
        queryParameters: queryParameters,
      );
      (widget.controller as NyController).routeGuards.addAll(_routeGuards);

      widget.controller.construct(context);
      if (widget.state != null) {
        widget.controller.state = widget.state!;
      }
    }
    return widget;
  };
}