All files / app/utilities commits.ts

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      52x       26x 26x                                          
import { dateFromEpochDate } from './dates';
 
export function getUTCDateOfCommit(commit) {
  return dateFromEpochDate(commit.authorDate);
}
 
export function getHourOfCommit(commit) {
  const d = getUTCDateOfCommit(commit);
  return d.getHours();
}
 
export function filterCommitsForSpan(commits, dateStart, dateEnd) {
  return commits.filter(commit => {
    const commitDate = getUTCDateOfCommit(commit);
    return dateStart <= commitDate && commitDate <= dateEnd;
  });
}
 
export function first20CommitsEqual(commitsA, commitsB) {
  if (commitsA.length !== commitsB.length) {
    return false;
  }
  for (let i = 0; i < 20 && i < commitsA.length; i++) {
    if (commitsA[i].id !== commitsB[i].id) {
      return false;
    }
  }
  return true;
}