linkLocation function
A router location: routePath, then parameters as a query with its
keys sorted, so one link always yields one location.
Implementation
String linkLocation(String routePath, Map<String, String> parameters) {
final path = routePath.isEmpty ? '/' : routePath;
if (parameters.isEmpty) return path;
final keys = parameters.keys.toList()..sort();
final query = keys
.map(
(key) =>
'${Uri.encodeQueryComponent(key)}='
'${Uri.encodeQueryComponent(parameters[key]!)}',
)
.join('&');
return '$path?$query';
}