OpenHands / frontend /src /utils /group-suggested-tasks.ts
Backup-bdg's picture
Upload 565 files
b59aa07 verified
raw
history blame
666 Bytes
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);
}