queryList method

List<String>? queryList(
  1. String key, {
  2. String separator = ',',
  3. List<String>? defaultValue,
})

Gets a query parameter as list of strings.

Splits by comma and trims whitespace by default.

Implementation

List<String>? queryList(
  String key, {
  String separator = ',',
  List<String>? defaultValue,
}) {
  final value = _raw.uri.queryParameters[key];
  if (value == null || value.isEmpty) {
    return defaultValue;
  }

  try {
    return value
        .split(separator)
        .map((s) => s.trim())
        .where((s) => s.isNotEmpty)
        .toList();
  } catch (_) {
    return defaultValue;
  }
}