@knora/action
Version:
Knora ui module: action
37 lines • 3.86 kB
JavaScript
import * as tslib_1 from "tslib";
import { Pipe } from '@angular/core';
var SortByPipe = /** @class */ (function () {
function SortByPipe() {
}
/**
* compares value by value and brings it to alphabetical order
*/
SortByPipe.prototype.transform = function (array, args) {
if (array !== undefined) {
array.sort(function (a, b) {
if (args) {
a[args] = (a[args] === null ? '' : a[args]);
b[args] = (b[args] === null ? '' : b[args]);
if (a[args].toLowerCase() < b[args].toLowerCase()) {
return -1;
}
else if (a[args].toLowerCase() > b[args].toLowerCase()) {
return 1;
}
else {
return 0;
}
}
});
}
return array;
};
SortByPipe = tslib_1.__decorate([
Pipe({
name: 'kuiSortBy'
})
], SortByPipe);
return SortByPipe;
}());
export { SortByPipe };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1ieS5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGtub3JhL2FjdGlvbi8iLCJzb3VyY2VzIjpbImxpYi9waXBlcy9zb3J0LWJ5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBS3BEO0lBQUE7SUF1QkEsQ0FBQztJQXJCRzs7T0FFRztJQUNILDhCQUFTLEdBQVQsVUFBVSxLQUFpQixFQUFFLElBQVk7UUFDckMsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQ3JCLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBQyxDQUFNLEVBQUUsQ0FBTTtnQkFDdEIsSUFBSSxJQUFJLEVBQUU7b0JBQ04sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDNUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDNUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO3dCQUMvQyxPQUFPLENBQUMsQ0FBQyxDQUFDO3FCQUNiO3lCQUFNLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTt3QkFDdEQsT0FBTyxDQUFDLENBQUM7cUJBQ1o7eUJBQU07d0JBQ0gsT0FBTyxDQUFDLENBQUM7cUJBQ1o7aUJBQ0o7WUFDTCxDQUFDLENBQUMsQ0FBQztTQUNOO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQXRCUSxVQUFVO1FBSHRCLElBQUksQ0FBQztZQUNGLElBQUksRUFBRSxXQUFXO1NBQ3BCLENBQUM7T0FDVyxVQUFVLENBdUJ0QjtJQUFELGlCQUFDO0NBQUEsQUF2QkQsSUF1QkM7U0F2QlksVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdrdWlTb3J0QnknXG59KVxuZXhwb3J0IGNsYXNzIFNvcnRCeVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICAgIC8qKlxuICAgICAqIGNvbXBhcmVzIHZhbHVlIGJ5IHZhbHVlIGFuZCBicmluZ3MgaXQgdG8gYWxwaGFiZXRpY2FsIG9yZGVyXG4gICAgICovXG4gICAgdHJhbnNmb3JtKGFycmF5OiBBcnJheTxhbnk+LCBhcmdzOiBzdHJpbmcpOiBBcnJheTxhbnk+IHtcbiAgICAgICAgaWYgKGFycmF5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGFycmF5LnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGFyZ3MpIHtcbiAgICAgICAgICAgICAgICAgICAgYVthcmdzXSA9IChhW2FyZ3NdID09PSBudWxsID8gJycgOiBhW2FyZ3NdKTtcbiAgICAgICAgICAgICAgICAgICAgYlthcmdzXSA9IChiW2FyZ3NdID09PSBudWxsID8gJycgOiBiW2FyZ3NdKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGFbYXJnc10udG9Mb3dlckNhc2UoKSA8IGJbYXJnc10udG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGFbYXJnc10udG9Mb3dlckNhc2UoKSA+IGJbYXJnc10udG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhcnJheTtcbiAgICB9XG59XG4iXX0=