export function timepointsOfTasks()

in src/components/Timeline/taskdataUtils.ts [88:110]


export function timepointsOfTasks(tasks: Task[]): [number | null, number] {
  return tasks.reduce(
    (val, task) => {
      const taskStartTime = task.started_at;
      const highpoint: number =
        task.finished_at && task.finished_at > val[1]
          ? task.finished_at
          : taskStartTime && taskStartTime > val[1]
            ? taskStartTime
            : val[1];
      const lowpoint: number | null =
        taskStartTime && val[0] === null
          ? taskStartTime
          : taskStartTime && val[0] !== null
            ? taskStartTime < val[0]
              ? taskStartTime
              : val[0]
            : val[0];
      return [lowpoint, highpoint];
    },
    [tasks[0] ? tasks[0].started_at || null : 0, 0],
  );
}