// Unique by, last wins export function uniqueBy( items: T[], keyOrFn: K | ((item: T) => any) ): T[] { const keyFn = typeof keyOrFn === 'function' ? keyOrFn : (item: T) => item[keyOrFn]; const seen = new Map(); items.forEach((item) => { const key = keyFn(item); seen.set(key, item); }); return Array.from(seen.values()); }