ngx-monitorias-uniandes-lib
Version:
This library is used for Monitorias-Uniandes system.
26 lines • 1.16 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var api_1 = require("api-angular-monitorias-dto/api");
function sortPeriods(periods, sortByYearAsc, sortByPeriodAsc) {
return periods.sort(function (a, b) {
// Ordenar por año
if (a.year !== b.year) {
return sortByYearAsc ? (a.year - b.year) : (b.year - a.year);
}
// Ordenar por periodo (usando los valores del enumerador)
var periodA = api_1.Semester_Period.getEnumValueByNameId(a.period).id;
var periodB = api_1.Semester_Period.getEnumValueByNameId(b.period).id;
if (periodA !== periodB) {
return sortByPeriodAsc ? (periodA - periodB) : (periodB - periodA);
}
// Ordenar por tipo de periodo (ACADEMIC primero)
if (a.typePeriod === 'ACADEMIC' && b.typePeriod !== 'ACADEMIC')
return -1;
if (a.typePeriod !== 'ACADEMIC' && b.typePeriod === 'ACADEMIC')
return 1;
// Si todo es igual, no cambiamos el orden
return 0;
});
}
exports.sortPeriods = sortPeriods;
//# sourceMappingURL=sort-periods.js.map