Spaces:
Build error
Build error
File size: 666 Bytes
b59aa07 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
import {
SuggestedTask,
SuggestedTaskGroup,
} from "#/components/features/home/tasks/task.types";
/**
* Groups suggested tasks by their repository.
* @param tasks Array of suggested tasks
* @returns Array of suggested task groups
*/
export function groupSuggestedTasks(
tasks: SuggestedTask[],
): SuggestedTaskGroup[] {
const groupsMap: Record<string, SuggestedTaskGroup> = {};
for (const task of tasks) {
const groupKey = `${task.repo}`;
if (!groupsMap[groupKey]) {
groupsMap[groupKey] = {
title: groupKey,
tasks: [],
};
}
groupsMap[groupKey].tasks.push(task);
}
return Object.values(groupsMap);
}
|