pushRoute<T extends Object?> method

Future<T?> pushRoute<T extends Object?>(
  1. RoutePaths route, {
  2. Map<String, String>? params,
  3. Map<String, String>? queries,
  4. Object? extra,
})

Push a route with validation

Implementation

Future<T?> pushRoute<T extends Object?>(
  RoutePaths route, {
  Map<String, String>? params,
  Map<String, String>? queries,
  Object? extra,
}) {
  try {
    final path = (params != null || queries != null)
        ? route.pathWithParams(params ?? {}, queries: queries)
        : route.path;
    return push<T>(path, extra: extra);
  } catch (e) {
    if (kDebugMode) {
      debugPrint('Push error to ${route.path}: $e');
    }
    // Fallback to base path
    return push<T>(route.path, extra: extra);
  }
}