contribution-graph-utils.ts 531 B

1234567891011121314151617181920
  1. import { differenceInDays, format, startOfWeek } from 'date-fns';
  2. /**
  3. * Gets current week's ISO week ID, e.g 2025-W32
  4. */
  5. export const getISOWeekId = (date: Date): string => {
  6. return format(date, "RRRR-'W'II");
  7. };
  8. export const getDaysDifference = (
  9. dateFrom: Date,
  10. dateTo: Date = new Date(),
  11. ): number => {
  12. const diffDays = differenceInDays(dateFrom, dateTo);
  13. return Math.max(0, diffDays);
  14. };
  15. export const getCurrentWeekStart = (date: Date = new Date()): Date => {
  16. return startOfWeek(date, { weekStartsOn: 1 });
  17. };