distinctBy<T, K> function
Returns unique values using a key function.
Implementation
List<T> distinctBy<T, K>(Iterable<T> iterable, K Function(T) key) {
final seen = <K>{};
final result = <T>[];
for (final item in iterable) {
final k = key(item);
if (seen.add(k)) {
result.add(item);
}
}
return result;
}