Deduplicate guest tasks list and restore header icon
This commit is contained in:
18
resources/js/guest/lib/taskUtils.ts
Normal file
18
resources/js/guest/lib/taskUtils.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
export type TaskIdentity = {
|
||||
id: number;
|
||||
};
|
||||
|
||||
export function dedupeTasksById<T extends TaskIdentity>(tasks: T[]): T[] {
|
||||
const seen = new Set<number>();
|
||||
const unique: T[] = [];
|
||||
|
||||
tasks.forEach((task) => {
|
||||
if (seen.has(task.id)) {
|
||||
return;
|
||||
}
|
||||
seen.add(task.id);
|
||||
unique.push(task);
|
||||
});
|
||||
|
||||
return unique;
|
||||
}
|
||||
Reference in New Issue
Block a user