cf-common-lib
Version:
Object Validators and Utilities
52 lines • 4.28 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Pipe } from "@angular/core";
var OrderByPipe = /** @class */ (function () {
function OrderByPipe() {
}
/**
* @param {?} array
* @param {?} orderField
* @param {?} orderType
* @return {?}
*/
OrderByPipe.prototype.transform = /**
* @param {?} array
* @param {?} orderField
* @param {?} orderType
* @return {?}
*/
function (array, orderField, orderType) {
array.sort((/**
* @param {?} a
* @param {?} b
* @return {?}
*/
function (a, b) {
/** @type {?} */
var ae = a[orderField];
/** @type {?} */
var be = b[orderField];
if (ae == undefined && be == undefined)
return 0;
if (ae == undefined && be != undefined)
return orderType ? 1 : -1;
if (ae != undefined && be == undefined)
return orderType ? -1 : 1;
if (ae == be)
return 0;
return orderType ? (ae.toString().toLowerCase() > be.toString().toLowerCase() ? -1 : 1) : (be.toString().toLowerCase() > ae.toString().toLowerCase() ? -1 : 1);
}));
return array;
};
OrderByPipe.decorators = [
{ type: Pipe, args: [{
name: 'orderBy'
},] }
];
return OrderByPipe;
}());
export { OrderByPipe };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItYnkucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2NmLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvcGlwZXMvb3JkZXItYnkucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQ7SUFBQTtJQWdCQSxDQUFDOzs7Ozs7O0lBWkQsK0JBQVM7Ozs7OztJQUFULFVBQVcsS0FBaUIsRUFBRSxVQUFrQixFQUFFLFNBQWtCO1FBQ2hFLEtBQUssQ0FBQyxJQUFJOzs7OztRQUFFLFVBQUUsQ0FBTSxFQUFFLENBQU07O2dCQUNwQixFQUFFLEdBQUcsQ0FBQyxDQUFFLFVBQVUsQ0FBRTs7Z0JBQ3BCLEVBQUUsR0FBRyxDQUFDLENBQUUsVUFBVSxDQUFFO1lBQ3hCLElBQUssRUFBRSxJQUFJLFNBQVMsSUFBSSxFQUFFLElBQUksU0FBUztnQkFBRyxPQUFPLENBQUMsQ0FBQztZQUNuRCxJQUFLLEVBQUUsSUFBSSxTQUFTLElBQUksRUFBRSxJQUFJLFNBQVM7Z0JBQUcsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEUsSUFBSyxFQUFFLElBQUksU0FBUyxJQUFJLEVBQUUsSUFBSSxTQUFTO2dCQUFHLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BFLElBQUssRUFBRSxJQUFJLEVBQUU7Z0JBQUcsT0FBTyxDQUFDLENBQUM7WUFDekIsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuSyxDQUFDLEVBQUUsQ0FBQztRQUNKLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7Z0JBZkYsSUFBSSxTQUFFO29CQUNQLElBQUksRUFBRSxTQUFTO2lCQUNkOztJQWNELGtCQUFDO0NBQUEsQUFoQkQsSUFnQkM7U0FiWSxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5AUGlwZSgge1xubmFtZTogJ29yZGVyQnknXG59IClcbmV4cG9ydCBjbGFzcyBPcmRlckJ5UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xudHJhbnNmb3JtKCBhcnJheTogQXJyYXk8YW55Piwgb3JkZXJGaWVsZDogc3RyaW5nLCBvcmRlclR5cGU6IGJvb2xlYW4gKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgYXJyYXkuc29ydCggKCBhOiBhbnksIGI6IGFueSApID0+IHtcbiAgICAgICAgbGV0IGFlID0gYVsgb3JkZXJGaWVsZCBdO1xuICAgICAgICBsZXQgYmUgPSBiWyBvcmRlckZpZWxkIF07XG4gICAgICAgIGlmICggYWUgPT0gdW5kZWZpbmVkICYmIGJlID09IHVuZGVmaW5lZCApIHJldHVybiAwO1xuICAgICAgICBpZiAoIGFlID09IHVuZGVmaW5lZCAmJiBiZSAhPSB1bmRlZmluZWQgKSByZXR1cm4gb3JkZXJUeXBlID8gMSA6IC0xO1xuICAgICAgICBpZiAoIGFlICE9IHVuZGVmaW5lZCAmJiBiZSA9PSB1bmRlZmluZWQgKSByZXR1cm4gb3JkZXJUeXBlID8gLTEgOiAxO1xuICAgICAgICBpZiAoIGFlID09IGJlICkgcmV0dXJuIDA7XG4gICAgICAgIHJldHVybiBvcmRlclR5cGUgPyAoYWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID4gYmUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID8gLTEgOiAxKSA6IChiZS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPiBhZS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPyAtMSA6IDEpO1xuICAgIH0gKTtcbiAgICByZXR1cm4gYXJyYXk7XG4gIH1cbn0iXX0=