Skip to content
Snippets Groups Projects

Split sortEpics into assignDates method

Merged Rajat Jain requested to merge 9831-roadmap-refactor into master
All threads resolved!
2 files
+ 13
22
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -6,6 +6,8 @@ import {
EXTEND_AS,
TIMELINE_CELL_MIN_WIDTH,
DAYS_IN_WEEK,
PAST_DATE,
FUTURE_DATE,
} from '../constants';
const monthsForQuarters = {
@@ -435,32 +437,17 @@ export function assignDates(a, b, { dateUndefined, outOfRange, originalDate, dat
}
export const sortEpics = (epics, sortedBy) => {
const pastDate = new Date(new Date().getFullYear() - 100, 0, 1);
const futureDate = new Date(new Date().getFullYear() + 100, 0, 1);
const sortByStartDate = sortedBy.indexOf('start_date') > -1;
const sortOrderAsc = sortedBy.indexOf('asc') > -1;
epics.sort((a, b) => {
let aDate;
let bDate;
if (sortByStartDate) {
[aDate, bDate] = assignDates(a, b, {
dateUndefined: 'startDateUndefined',
outOfRange: 'startDateOutOfRange',
originalDate: 'originalStartDate',
date: 'startDate',
proxyDate: pastDate,
});
} else {
[aDate, bDate] = assignDates(a, b, {
dateUndefined: 'endDateUndefined',
outOfRange: 'endDateOutOfRange',
originalDate: 'originalEndDate',
date: 'endDate',
proxyDate: futureDate,
});
}
const [aDate, bDate] = assignDates(a, b, {
dateUndefined: sortByStartDate ? 'startDateUndefined' : 'endDateUndefined',
outOfRange: sortByStartDate ? 'startDateOutOfRange' : 'endDateOutOfRange',
originalDate: sortByStartDate ? 'originalStartDate' : 'originalEndDate',
date: sortByStartDate ? 'startDate' : 'endDate',
proxyDate: sortByStartDate ? PAST_DATE : FUTURE_DATE,
});
// Sort in ascending or descending order
if (aDate.getTime() < bDate.getTime()) {
Loading