fix: sorting resets
This commit is contained in:
@@ -50,6 +50,14 @@ export function taskFutureReset(task: Task): Date | null {
|
||||
);
|
||||
}
|
||||
|
||||
export function taskSortReset(task: Task): Date | null {
|
||||
let resetDate = taskNextReset(task);
|
||||
while (resetDate !== null && resetDate.getTime() < new Date().getTime()) {
|
||||
resetDate = nextCronReset(resetDate, task.reset_cron, task.id);
|
||||
}
|
||||
return resetDate;
|
||||
}
|
||||
|
||||
export function taskCompleted(task: Task): boolean {
|
||||
if (task.check_date === null) {
|
||||
return false;
|
||||
@@ -94,8 +102,8 @@ export function taskSortFunction(
|
||||
case SortType.RESET_DATE:
|
||||
return (a: Task, b: Task) =>
|
||||
(reverse ? -1 : 1) *
|
||||
((taskNextReset(a) ?? fallbackDate(a)).getTime() -
|
||||
(taskNextReset(b) ?? fallbackDate(b)).getTime());
|
||||
((taskSortReset(a) ?? fallbackDate(a)).getTime() -
|
||||
(taskSortReset(b) ?? fallbackDate(b)).getTime());
|
||||
case SortType.NAME:
|
||||
return (a: Task, b: Task) =>
|
||||
(reverse ? -1 : 1) * a.name.localeCompare(b.name);
|
||||
|
||||
Reference in New Issue
Block a user