export function sortRows()

in src/pages/Run/Run.utils.ts [196:212]


export function sortRows(sortBy: TasksSortBy, sortDir: 'asc' | 'desc'): (a: Row, b: Row) => number {
  return (a: Row, b: Row) => {
    const fst = sortDir === 'asc' ? a : b;
    const snd = sortDir === 'asc' ? b : a;

    if (sortBy === 'startTime' && fst.type === 'task' && snd.type === 'task') {
      return getRowStartTime(fst) - getRowStartTime(snd);
    }
    if (sortBy === 'endTime' && fst.type === 'task' && snd.type === 'task') {
      return getRowFinishedTime(fst) - getRowFinishedTime(snd);
    } else if (sortBy === 'duration') {
      return taskDuration(fst) - taskDuration(snd);
    }

    return 0;
  };
}