apply method
Implementation
@override
Future<String> apply(String content, Map<String, dynamic> context) async {
return content.replaceAllMapped(_routeRegex, (match) {
final args = match.group(1)!.trim();
// Parse route name and parameters
final parts = _parseRouteArgs(args);
final routeName = parts['name']!;
final parameters = parts['params'] ?? {};
try {
if (_urlService != null) {
return _urlService.route(routeName, parameters: parameters);
} else {
// Fallback: return the route path directly
return '/$routeName';
}
} catch (e) {
// Return original directive if route not found
return match.group(0)!;
}
});
}