routePathIdentifier<T> static method
Alters given identifier
with path
.
Implementation
static String routePathIdentifier<T>(
{dynamic identifier, dynamic path, dynamic args}) {
if (path == null) {
path = routeIdentifier(identifier);
} else if (path is String) {
if (!path.startsWith('/')) {
path = '/$path';
}
} else if (path is List) {
path = '/' + path.join('/');
} else if (path is Map) {
path = '/' +
Parse.toList(args, entryConverter: (key, value) => '$key/$value')
.join('/');
}
if (args == null || (args is String && args.isEmpty)) {
return path;
}
if (args is Map) {
return '$path?' +
Parse.toList(args, entryConverter: (key, value) => '$key=$value')
.join('&');
}
if (args is List) {
return '$path?args=' + args.join(',');
}
if (path.endsWith('/')) {
return '$path$args';
}
return '$path/$args';
}