com.phloxui
Version:
PhloxUI Ng2+ Framework
144 lines (143 loc) • 10.6 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import * as tslib_1 from "tslib";
import { TableRowController } from './TableRowController';
var DefaultTableRowGenerator = /** @class */ (function () {
function DefaultTableRowGenerator() {
}
/**
* @param {?} a
* @param {?} b
* @param {?} comparator
* @return {?}
*/
DefaultTableRowGenerator.compareIgnoreNullOrUndefined = /**
* @param {?} a
* @param {?} b
* @param {?} comparator
* @return {?}
*/
function (a, b, comparator) {
if (a === b) {
return 0;
}
if ((a === null || a === undefined) && (b === null || b === undefined)) {
return 0;
}
if (a === null || a === undefined) {
return -1;
}
if (b === null || b === undefined) {
return 1;
}
if (comparator === null || typeof comparator !== 'function') {
return 0;
}
return comparator(a, b);
};
/**
* @param {?} table
* @param {?} data
* @return {?}
*/
DefaultTableRowGenerator.prototype.generateTableRows = /**
* @param {?} table
* @param {?} data
* @return {?}
*/
function (table, data) {
if (data === null || typeof data === 'undefined') {
return [];
}
if (!Array.isArray(data)) {
return [];
}
var /** @type {?} */ re = [];
try {
for (var data_1 = tslib_1.__values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) {
var d = data_1_1.value;
var /** @type {?} */ row = new TableRowController(table, d);
re.push(row);
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (data_1_1 && !data_1_1.done && (_a = data_1.return)) _a.call(data_1);
}
finally { if (e_1) throw e_1.error; }
}
return re;
var e_1, _a;
};
/**
* @param {?} compareRowData
* @param {?} toRowData
* @return {?}
*/
DefaultTableRowGenerator.prototype.compareRowData = /**
* @param {?} compareRowData
* @param {?} toRowData
* @return {?}
*/
function (compareRowData, toRowData) {
return DefaultTableRowGenerator.compareIgnoreNullOrUndefined(compareRowData, toRowData, function (compareRowData, toRowData) {
return JSON.stringify(compareRowData).localeCompare(JSON.stringify(toRowData));
});
};
/**
* @param {?} compareRow
* @param {?} toRow
* @return {?}
*/
DefaultTableRowGenerator.prototype.compareRow = /**
* @param {?} compareRow
* @param {?} toRow
* @return {?}
*/
function (compareRow, toRow) {
var _this = this;
return DefaultTableRowGenerator.compareIgnoreNullOrUndefined(compareRow, toRow, function (compareRow, toRow) {
var /** @type {?} */ compareData = compareRow.getData();
var /** @type {?} */ toData = toRow.getData();
return _this.compareRowData(compareData, toData);
});
};
/**
* @param {?} rows
* @param {?} rowData
* @return {?}
*/
DefaultTableRowGenerator.prototype.findRow = /**
* @param {?} rows
* @param {?} rowData
* @return {?}
*/
function (rows, rowData) {
if (rows === null || rows === undefined || !Array.isArray(rows)) {
return null;
}
try {
for (var rows_1 = tslib_1.__values(rows), rows_1_1 = rows_1.next(); !rows_1_1.done; rows_1_1 = rows_1.next()) {
var row = rows_1_1.value;
if (this.compareRowData(row.getData(), rowData) === 0) {
return row;
}
}
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (rows_1_1 && !rows_1_1.done && (_a = rows_1.return)) _a.call(rows_1);
}
finally { if (e_2) throw e_2.error; }
}
return null;
var e_2, _a;
};
return DefaultTableRowGenerator;
}());
export { DefaultTableRowGenerator };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdFRhYmxlUm93R2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6Im5nOi8vY29tLnBobG94dWkvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50L3RhYmxlL0RlZmF1bHRUYWJsZVJvd0dlbmVyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBSTFELElBQUE7Ozs7Ozs7OztJQUVnQixxREFBNEI7Ozs7OztjQUFDLENBQU0sRUFBRSxDQUFNLEVBQUUsVUFBb0I7UUFDN0UsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDWixNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZFLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDVjtRQUNELEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDbEMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ1g7UUFDRCxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ2xDLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDVjtRQUVELEVBQUUsQ0FBQyxDQUFDLFVBQVUsS0FBSyxJQUFJLElBQUksT0FBTyxVQUFVLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQztZQUM1RCxNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzs7Ozs7OztJQUduQixvREFBaUI7Ozs7O2NBQUMsS0FBaUIsRUFBRSxJQUFTO1FBQ25ELEVBQUUsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksT0FBTyxJQUFJLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztZQUNqRCxNQUFNLENBQUMsRUFBRSxDQUFDO1NBQ1g7UUFDRCxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLE1BQU0sQ0FBQyxFQUFFLENBQUM7U0FDWDtRQUVELHFCQUFJLEVBQUUsR0FBMEIsRUFBRSxDQUFDOztZQUNuQyxHQUFHLENBQUMsQ0FBVSxJQUFBLFNBQUEsaUJBQUEsSUFBSSxDQUFBLDBCQUFBO2dCQUFiLElBQUksQ0FBQyxpQkFBQTtnQkFDUixxQkFBSSxHQUFHLEdBQXdCLElBQUksa0JBQWtCLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUVoRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2Q7Ozs7Ozs7OztRQUVELE1BQU0sQ0FBQyxFQUFFLENBQUM7Ozs7Ozs7O0lBR0wsaURBQWM7Ozs7O2NBQUMsY0FBbUIsRUFBRSxTQUFjO1FBQ3ZELE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyw0QkFBNEIsQ0FBQyxjQUFjLEVBQUUsU0FBUyxFQUFFLFVBQUMsY0FBbUIsRUFBRSxTQUFjO1lBQzFILE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDaEYsQ0FBQyxDQUFDOzs7Ozs7O0lBR0UsNkNBQVU7Ozs7O2NBQUMsVUFBK0IsRUFBRSxLQUEwQjs7UUFDM0UsTUFBTSxDQUFDLHdCQUF3QixDQUFDLDRCQUE0QixDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsVUFBQyxVQUFlLEVBQUUsS0FBVTtZQUMxRyxxQkFBSSxXQUFXLEdBQVEsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzVDLHFCQUFJLE1BQU0sR0FBUSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFbEMsTUFBTSxDQUFDLEtBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ2pELENBQUMsQ0FBQzs7Ozs7OztJQUdFLDBDQUFPOzs7OztjQUFDLElBQTJCLEVBQUUsT0FBWTtRQUN0RCxFQUFFLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoRSxNQUFNLENBQUMsSUFBSSxDQUFDO1NBQ2I7O1lBRUQsR0FBRyxDQUFDLENBQVksSUFBQSxTQUFBLGlCQUFBLElBQUksQ0FBQSwwQkFBQTtnQkFBZixJQUFJLEdBQUcsaUJBQUE7Z0JBQ1YsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDdEQsTUFBTSxDQUFDLEdBQUcsQ0FBQztpQkFDWjthQUNGOzs7Ozs7Ozs7UUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDOzs7bUNBeEVoQjtJQTJFQyxDQUFBO0FBdEVELG9DQXNFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBobG94VGFibGUgfSBmcm9tICcuL1BobG94VGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlUm93Q29udHJvbGxlciB9IGZyb20gJy4vVGFibGVSb3dDb250cm9sbGVyJztcbmltcG9ydCB7IElUYWJsZVJvd0NvbnRyb2xsZXIgfSBmcm9tICcuL0lUYWJsZVJvd0NvbnRyb2xsZXInO1xuaW1wb3J0IHsgSVRhYmxlUm93R2VuZXJhdG9yIH0gZnJvbSAnLi9JVGFibGVSb3dHZW5lcmF0b3InO1xuXG5leHBvcnQgY2xhc3MgRGVmYXVsdFRhYmxlUm93R2VuZXJhdG9yIGltcGxlbWVudHMgSVRhYmxlUm93R2VuZXJhdG9yIHtcblxuICBwdWJsaWMgc3RhdGljIGNvbXBhcmVJZ25vcmVOdWxsT3JVbmRlZmluZWQoYTogYW55LCBiOiBhbnksIGNvbXBhcmF0b3I6IEZ1bmN0aW9uKTogbnVtYmVyIHtcbiAgICBpZiAoYSA9PT0gYikge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIGlmICgoYSA9PT0gbnVsbCB8fCBhID09PSB1bmRlZmluZWQpICYmIChiID09PSBudWxsIHx8IGIgPT09IHVuZGVmaW5lZCkpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICBpZiAoYSA9PT0gbnVsbCB8fCBhID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgaWYgKGIgPT09IG51bGwgfHwgYiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gMTtcbiAgICB9XG5cbiAgICBpZiAoY29tcGFyYXRvciA9PT0gbnVsbCB8fCB0eXBlb2YgY29tcGFyYXRvciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBhcmF0b3IoYSwgYik7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVUYWJsZVJvd3ModGFibGU6IFBobG94VGFibGUsIGRhdGE6IGFueSk6IElUYWJsZVJvd0NvbnRyb2xsZXJbXSB7XG4gICAgaWYgKGRhdGEgPT09IG51bGwgfHwgdHlwZW9mIGRhdGEgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGlmICghQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIGxldCByZTogSVRhYmxlUm93Q29udHJvbGxlcltdID0gW107XG4gICAgZm9yIChsZXQgZCBvZiBkYXRhKSB7XG4gICAgICBsZXQgcm93OiBJVGFibGVSb3dDb250cm9sbGVyID0gbmV3IFRhYmxlUm93Q29udHJvbGxlcih0YWJsZSwgZCk7XG5cbiAgICAgIHJlLnB1c2gocm93KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmU7XG4gIH1cblxuICBwdWJsaWMgY29tcGFyZVJvd0RhdGEoY29tcGFyZVJvd0RhdGE6IGFueSwgdG9Sb3dEYXRhOiBhbnkpOiBudW1iZXIge1xuICAgIHJldHVybiBEZWZhdWx0VGFibGVSb3dHZW5lcmF0b3IuY29tcGFyZUlnbm9yZU51bGxPclVuZGVmaW5lZChjb21wYXJlUm93RGF0YSwgdG9Sb3dEYXRhLCAoY29tcGFyZVJvd0RhdGE6IGFueSwgdG9Sb3dEYXRhOiBhbnkpID0+IHtcbiAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShjb21wYXJlUm93RGF0YSkubG9jYWxlQ29tcGFyZShKU09OLnN0cmluZ2lmeSh0b1Jvd0RhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjb21wYXJlUm93KGNvbXBhcmVSb3c6IElUYWJsZVJvd0NvbnRyb2xsZXIsIHRvUm93OiBJVGFibGVSb3dDb250cm9sbGVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gRGVmYXVsdFRhYmxlUm93R2VuZXJhdG9yLmNvbXBhcmVJZ25vcmVOdWxsT3JVbmRlZmluZWQoY29tcGFyZVJvdywgdG9Sb3csIChjb21wYXJlUm93OiBhbnksIHRvUm93OiBhbnkpID0+IHtcbiAgICAgIGxldCBjb21wYXJlRGF0YTogYW55ID0gY29tcGFyZVJvdy5nZXREYXRhKCk7XG4gICAgICBsZXQgdG9EYXRhOiBhbnkgPSB0b1Jvdy5nZXREYXRhKCk7XG5cbiAgICAgIHJldHVybiB0aGlzLmNvbXBhcmVSb3dEYXRhKGNvbXBhcmVEYXRhLCB0b0RhdGEpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGZpbmRSb3cocm93czogSVRhYmxlUm93Q29udHJvbGxlcltdLCByb3dEYXRhOiBhbnkpOiBJVGFibGVSb3dDb250cm9sbGVyIHtcbiAgICBpZiAocm93cyA9PT0gbnVsbCB8fCByb3dzID09PSB1bmRlZmluZWQgfHwgIUFycmF5LmlzQXJyYXkocm93cykpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGZvciAobGV0IHJvdyBvZiByb3dzKSB7XG4gICAgICBpZiAodGhpcy5jb21wYXJlUm93RGF0YShyb3cuZ2V0RGF0YSgpLCByb3dEYXRhKSA9PT0gMCkge1xuICAgICAgICByZXR1cm4gcm93O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbn1cbiJdfQ==