parseQueryString static method

Map<String, String> parseQueryString(
  1. String rawQuery
)

Implementation

static Map<String, String> parseQueryString(String rawQuery) {
  if (rawQuery.trim().isEmpty) return const {};
  final result = <String, String>{};
  for (final part in rawQuery.split('&')) {
    if (part.isEmpty) continue;
    final equalsIndex = part.indexOf('=');
    if (equalsIndex == -1) {
      result[Uri.decodeQueryComponent(part)] = '';
    } else {
      final key = Uri.decodeQueryComponent(part.substring(0, equalsIndex));
      final value = Uri.decodeQueryComponent(part.substring(equalsIndex + 1));
      result[key] = value;
    }
  }
  return result;
}