group method

void group({
  1. required String prefix,
  2. required void routes(
    1. RouteRegistry registry
    ),
  3. List<Middleware> middleware = const [],
})

Groups a set of routes under a prefix and optional middleware.

Implementation

void group({
  required String prefix,
  required void Function(RouteRegistry registry) routes,
  List<Middleware> middleware = const [],
}) {
  final groupRegistry = RouteRegistry();
  routes(groupRegistry);

  for (final route in groupRegistry.routes) {
    final newPath = '$prefix${route.path}';
    _registry.register(route.method, newPath, route.handler, [
      ...middleware,
      ...route.middleware,
    ]);
  }
}