UNPKG

com.phloxui

Version:

PhloxUI Ng2+ Framework

65 lines (64 loc) 7.66 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ export class DefaultDataComparator { /** * @param {?} o1 * @param {?} o2 * @return {?} */ compare(o1, o2) { if ((o1 === null || typeof o1 === 'undefined') && (o2 !== null && typeof o2 !== 'undefined')) { return 1; } else if ((o1 !== null && typeof o1 !== 'undefined') && (o2 === null || typeof o2 === 'undefined')) { return -1; } else if ((o1 === null || typeof o1 === 'undefined') && (o2 === null || typeof o2 === 'undefined')) { return 0; } if ((typeof o1) !== (typeof o2)) { if (typeof o1 === 'object' && typeof o2 !== 'object') { return -1; } else if (typeof o1 !== 'object' && typeof o2 === 'object') { return 1; } } if (typeof o1 === 'object') { let /** @type {?} */ objId1 = o1._uuid; let /** @type {?} */ objId2 = o2._uuid; if ((objId1 === null || typeof objId1 === 'undefined') && (objId2 !== null && typeof objId2 !== 'undefined')) { return 1; } else if ((objId1 !== null && typeof objId1 !== 'undefined') && (objId2 === null || typeof objId2 === 'undefined')) { return -1; } else if ((objId1 === null || typeof objId1 === 'undefined') && (objId2 === null || typeof objId2 === 'undefined')) { return 0; } else { if (objId1 === objId2) { return 0; } else if (objId1 < objId2) { return -1; } else if (objId1 > objId2) { return 1; } } } return 0; } /** * @param {?} o1 * @param {?} o2 * @return {?} */ equals(o1, o2) { return this.compare(o1, o2) === 0 ? true : false; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdERhdGFDb21wYXJhdG9yLmpzIiwic291cmNlUm9vdCI6Im5nOi8vY29tLnBobG94dWkvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50L0RlZmF1bHREYXRhQ29tcGFyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBRUEsTUFBTTs7Ozs7O0lBRUssT0FBTyxDQUFDLEVBQU8sRUFBRSxFQUFPO1FBQzNCLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksSUFBSSxPQUFPLEVBQUUsS0FBSyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLElBQUksT0FBTyxFQUFFLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNGLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDWjtRQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLElBQUksT0FBTyxFQUFFLEtBQUssV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssSUFBSSxJQUFJLE9BQU8sRUFBRSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDYjtRQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLElBQUksT0FBTyxFQUFFLEtBQUssV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssSUFBSSxJQUFJLE9BQU8sRUFBRSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsRyxNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ1o7UUFFRCxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5QixFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxRQUFRLElBQUksT0FBTyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDbkQsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2I7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssUUFBUSxJQUFJLE9BQU8sRUFBRSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzFELE1BQU0sQ0FBQyxDQUFDLENBQUM7YUFDWjtTQUNKO1FBRUQsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN6QixxQkFBSSxNQUFNLEdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUM5QixxQkFBSSxNQUFNLEdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUU5QixFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxJQUFJLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssSUFBSSxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDM0csTUFBTSxDQUFDLENBQUMsQ0FBQzthQUNaO1lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLElBQUksSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxJQUFJLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNsSCxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDYjtZQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxJQUFJLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssSUFBSSxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEgsTUFBTSxDQUFDLENBQUMsQ0FBQzthQUNaO1lBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ0osRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUM7b0JBQ3BCLE1BQU0sQ0FBQyxDQUFDLENBQUM7aUJBQ1o7Z0JBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO29CQUN6QixNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ2I7Z0JBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO29CQUN6QixNQUFNLENBQUMsQ0FBQyxDQUFDO2lCQUNaO2FBQ0o7U0FDSjtRQUVELE1BQU0sQ0FBQyxDQUFDLENBQUM7Ozs7Ozs7SUFHTixNQUFNLENBQUMsRUFBTyxFQUFFLEVBQU87UUFDMUIsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7O0NBRXhEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSURhdGFDb21wYXJhdG9yIH0gZnJvbSAnLi9JRGF0YUNvbXBhcmF0b3InO1xuXG5leHBvcnQgY2xhc3MgRGVmYXVsdERhdGFDb21wYXJhdG9yIGltcGxlbWVudHMgSURhdGFDb21wYXJhdG9yPGFueT4ge1xuXG4gICAgcHVibGljIGNvbXBhcmUobzE6IGFueSwgbzI6IGFueSk6IG51bWJlciB7XG4gICAgICAgIGlmICgobzEgPT09IG51bGwgfHwgdHlwZW9mIG8xID09PSAndW5kZWZpbmVkJykgJiYgKG8yICE9PSBudWxsICYmIHR5cGVvZiBvMiAhPT0gJ3VuZGVmaW5lZCcpKSB7XG4gICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgfSBlbHNlIGlmICgobzEgIT09IG51bGwgJiYgdHlwZW9mIG8xICE9PSAndW5kZWZpbmVkJykgJiYgKG8yID09PSBudWxsIHx8IHR5cGVvZiBvMiA9PT0gJ3VuZGVmaW5lZCcpKSB7XG4gICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH0gZWxzZSBpZiAoKG8xID09PSBudWxsIHx8IHR5cGVvZiBvMSA9PT0gJ3VuZGVmaW5lZCcpICYmIChvMiA9PT0gbnVsbCB8fCB0eXBlb2YgbzIgPT09ICd1bmRlZmluZWQnKSkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoKHR5cGVvZiBvMSkgIT09ICh0eXBlb2YgbzIpKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG8xID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgbzIgIT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgbzEgIT09ICdvYmplY3QnICYmIHR5cGVvZiBvMiA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2YgbzEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBsZXQgb2JqSWQxOiBzdHJpbmcgPSBvMS5fdXVpZDtcbiAgICAgICAgICAgIGxldCBvYmpJZDI6IHN0cmluZyA9IG8yLl91dWlkO1xuXG4gICAgICAgICAgICBpZiAoKG9iaklkMSA9PT0gbnVsbCB8fCB0eXBlb2Ygb2JqSWQxID09PSAndW5kZWZpbmVkJykgJiYgKG9iaklkMiAhPT0gbnVsbCAmJiB0eXBlb2Ygb2JqSWQyICE9PSAndW5kZWZpbmVkJykpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoKG9iaklkMSAhPT0gbnVsbCAmJiB0eXBlb2Ygb2JqSWQxICE9PSAndW5kZWZpbmVkJykgJiYgKG9iaklkMiA9PT0gbnVsbCB8fCB0eXBlb2Ygb2JqSWQyID09PSAndW5kZWZpbmVkJykpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKChvYmpJZDEgPT09IG51bGwgfHwgdHlwZW9mIG9iaklkMSA9PT0gJ3VuZGVmaW5lZCcpICYmIChvYmpJZDIgPT09IG51bGwgfHwgdHlwZW9mIG9iaklkMiA9PT0gJ3VuZGVmaW5lZCcpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChvYmpJZDEgPT09IG9iaklkMikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG9iaklkMSA8IG9iaklkMikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChvYmpJZDEgPiBvYmpJZDIpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgcHVibGljIGVxdWFscyhvMTogYW55LCBvMjogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXBhcmUobzEsIG8yKSA9PT0gMCA/IHRydWUgOiBmYWxzZTtcbiAgICB9XG59Il19