if (active === index) {
active = null
} else {
active = index
}
arr.sort((a, b) => (+moment(b.date, 'DD.MM.YY')) - (+moment(a.date, 'DD.MM.YY')))
Вот посмотрите, я расписал несколько итераций. Уже из этого ясно, что выходной массив должен начинаться из значений ['Category 1', 'Category 1', 'Category 2', ...]