@datorama/akita
Version:
State Management Tailored-Made for JS Applications
43 lines • 3.24 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @enum {string} */
var Order = {
ASC: 'asc',
DESC: 'desc',
};
export { Order };
// @internal
/**
* @param {?} key
* @param {?=} order
* @return {?}
*/
export function compareValues(key, order) {
if (order === void 0) { order = Order.ASC; }
return (/**
* @param {?} a
* @param {?} b
* @return {?}
*/
function (a, b) {
if (!a.hasOwnProperty(key) || !b.hasOwnProperty(key)) {
return 0;
}
/** @type {?} */
var varA = typeof a[key] === 'string' ? a[key].toUpperCase() : a[key];
/** @type {?} */
var varB = typeof b[key] === 'string' ? b[key].toUpperCase() : b[key];
/** @type {?} */
var comparison = 0;
if (varA > varB) {
comparison = 1;
}
else if (varA < varB) {
comparison = -1;
}
return order == Order.DESC ? comparison * -1 : comparison;
});
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BkYXRvcmFtYS9ha2l0YS8iLCJzb3VyY2VzIjpbInNyYy9zb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztJQUNFLEtBQU0sS0FBSztJQUNYLE1BQU8sTUFBTTs7Ozs7Ozs7O0FBSWYsTUFBTSxVQUFVLGFBQWEsQ0FBQyxHQUFHLEVBQUUsS0FBd0I7SUFBeEIsc0JBQUEsRUFBQSxRQUFlLEtBQUssQ0FBQyxHQUFHO0lBQ3pEOzs7OztJQUFPLFVBQVMsQ0FBQyxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3BELE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7O1lBRUssSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDOztZQUNqRSxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7O1lBRW5FLFVBQVUsR0FBRyxDQUFDO1FBQ2xCLElBQUksSUFBSSxHQUFHLElBQUksRUFBRTtZQUNmLFVBQVUsR0FBRyxDQUFDLENBQUM7U0FDaEI7YUFBTSxJQUFJLElBQUksR0FBRyxJQUFJLEVBQUU7WUFDdEIsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ2pCO1FBQ0QsT0FBTyxLQUFLLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7SUFDNUQsQ0FBQyxFQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE9yZGVyIHtcbiAgQVNDID0gJ2FzYycsXG4gIERFU0MgPSAnZGVzYydcbn1cblxuLy8gQGludGVybmFsXG5leHBvcnQgZnVuY3Rpb24gY29tcGFyZVZhbHVlcyhrZXksIG9yZGVyOiBPcmRlciA9IE9yZGVyLkFTQykge1xuICByZXR1cm4gZnVuY3Rpb24oYSwgYikge1xuICAgIGlmICghYS5oYXNPd25Qcm9wZXJ0eShrZXkpIHx8ICFiLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIGNvbnN0IHZhckEgPSB0eXBlb2YgYVtrZXldID09PSAnc3RyaW5nJyA/IGFba2V5XS50b1VwcGVyQ2FzZSgpIDogYVtrZXldO1xuICAgIGNvbnN0IHZhckIgPSB0eXBlb2YgYltrZXldID09PSAnc3RyaW5nJyA/IGJba2V5XS50b1VwcGVyQ2FzZSgpIDogYltrZXldO1xuXG4gICAgbGV0IGNvbXBhcmlzb24gPSAwO1xuICAgIGlmICh2YXJBID4gdmFyQikge1xuICAgICAgY29tcGFyaXNvbiA9IDE7XG4gICAgfSBlbHNlIGlmICh2YXJBIDwgdmFyQikge1xuICAgICAgY29tcGFyaXNvbiA9IC0xO1xuICAgIH1cbiAgICByZXR1cm4gb3JkZXIgPT0gT3JkZXIuREVTQyA/IGNvbXBhcmlzb24gKiAtMSA6IGNvbXBhcmlzb247XG4gIH07XG59XG4iXX0=