@angular-generic-table/core
Version:
A generic table component for Angular
75 lines (74 loc) • 6.87 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import { Pipe } from '@angular/core';
var GtRowClassPipe = /** @class */ (function () {
function GtRowClassPipe() {
}
/**
* @param {?} array
* @param {?} gtFields
* @return {?}
*/
GtRowClassPipe.prototype.transform = /**
* @param {?} array
* @param {?} gtFields
* @return {?}
*/
function (array, gtFields) {
if (array) {
// find columns with rowClass property defined
var /** @type {?} */ COLUMNS_WITH_CLASS = gtFields
.map(function (column) { return column; })
.filter(function (column) { return column.rowClass; });
COLUMNS_WITH_CLASS.map(function (column) {
// for each column with rowClass property defined...
array.map(function (row) {
// loop through rows and set row class
if (typeof column.rowClass === 'function') {
// if row class is a function, try using the function...
try {
if (row.$$gtRowClass) {
row.$$gtRowClass = row.$$gtRowClass.concat(' ' + column.rowClass(row, column));
}
else {
row.$$gtRowClass = column.rowClass(row, column);
}
}
catch (/** @type {?} */ error) {
console.log('Error when trying to get row class name using formula.', error);
}
}
else {
// if not a function, return plain string value
if (row.$$gtRowClass) {
row.$$gtRowClass = row.$$gtRowClass.concat(' ' + column.rowClass);
}
else {
row.$$gtRowClass = column.rowClass;
}
}
});
});
}
return array;
};
GtRowClassPipe.decorators = [
{ type: Pipe, args: [{
name: 'gtRowClass'
},] },
];
return GtRowClassPipe;
}());
export { GtRowClassPipe };
function GtRowClassPipe_tsickle_Closure_declarations() {
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
GtRowClassPipe.decorators;
/**
* @nocollapse
* @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}
*/
GtRowClassPipe.ctorParameters;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Qtcm93LWNsYXNzLnBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYW5ndWxhci1nZW5lcmljLXRhYmxlL2NvcmUvIiwic291cmNlcyI6WyJwaXBlcy9ndC1yb3ctY2xhc3MucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztJQU9uRCxrQ0FBUzs7Ozs7SUFBVCxVQUFVLEtBQWlCLEVBQUUsUUFBd0M7UUFDcEUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzs7WUFFWCxxQkFBTSxrQkFBa0IsR0FBRyxRQUFRO2lCQUNqQyxHQUFHLENBQUMsVUFBQSxNQUFNLElBQUksT0FBQSxNQUFNLEVBQU4sQ0FBTSxDQUFDO2lCQUNyQixNQUFNLENBQUMsVUFBQSxNQUFNLElBQUksT0FBQSxNQUFNLENBQUMsUUFBUSxFQUFmLENBQWUsQ0FBQyxDQUFDO1lBQ3BDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxVQUFBLE1BQU07O2dCQUU1QixLQUFLLENBQUMsR0FBRyxDQUFDLFVBQUEsR0FBRzs7b0JBRVosRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLENBQUMsUUFBUSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUM7O3dCQUUzQyxJQUFJLENBQUM7NEJBQ0osRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7Z0NBQ3RCLEdBQUcsQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQ3pDLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FDbEMsQ0FBQzs2QkFDRjs0QkFBQyxJQUFJLENBQUMsQ0FBQztnQ0FDUCxHQUFHLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDOzZCQUNoRDt5QkFDRDt3QkFBQyxLQUFLLENBQUMsQ0FBQyxpQkFBQSxLQUFLLEVBQUUsQ0FBQzs0QkFDaEIsT0FBTyxDQUFDLEdBQUcsQ0FDVix3REFBd0QsRUFDeEQsS0FBSyxDQUNMLENBQUM7eUJBQ0Y7cUJBQ0Q7b0JBQUMsSUFBSSxDQUFDLENBQUM7O3dCQUVQLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDOzRCQUN0QixHQUFHLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7eUJBQ2xFO3dCQUFDLElBQUksQ0FBQyxDQUFDOzRCQUNQLEdBQUcsQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQzt5QkFDbkM7cUJBQ0Q7aUJBQ0QsQ0FBQyxDQUFDO2FBQ0gsQ0FBQyxDQUFDO1NBQ0g7UUFDRCxNQUFNLENBQUMsS0FBSyxDQUFDO0tBQ2I7O2dCQTFDRCxJQUFJLFNBQUM7b0JBQ0wsSUFBSSxFQUFFLFlBQVk7aUJBQ2xCOzt5QkFMRDs7U0FNYSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3RDb25maWdGaWVsZCB9IGZyb20gJy4uL2ludGVyZmFjZXMvZ3QtY29uZmlnLWZpZWxkJztcblxuQFBpcGUoe1xuXHRuYW1lOiAnZ3RSb3dDbGFzcydcbn0pXG5leHBvcnQgY2xhc3MgR3RSb3dDbGFzc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblx0dHJhbnNmb3JtKGFycmF5OiBBcnJheTxhbnk+LCBndEZpZWxkczogQXJyYXk8R3RDb25maWdGaWVsZDxhbnksIGFueT4+KTogYW55IHtcblx0XHRpZiAoYXJyYXkpIHtcblx0XHRcdC8vIGZpbmQgY29sdW1ucyB3aXRoIHJvd0NsYXNzIHByb3BlcnR5IGRlZmluZWRcblx0XHRcdGNvbnN0IENPTFVNTlNfV0lUSF9DTEFTUyA9IGd0RmllbGRzXG5cdFx0XHRcdC5tYXAoY29sdW1uID0+IGNvbHVtbilcblx0XHRcdFx0LmZpbHRlcihjb2x1bW4gPT4gY29sdW1uLnJvd0NsYXNzKTtcblx0XHRcdENPTFVNTlNfV0lUSF9DTEFTUy5tYXAoY29sdW1uID0+IHtcblx0XHRcdFx0Ly8gZm9yIGVhY2ggY29sdW1uIHdpdGggcm93Q2xhc3MgcHJvcGVydHkgZGVmaW5lZC4uLlxuXHRcdFx0XHRhcnJheS5tYXAocm93ID0+IHtcblx0XHRcdFx0XHQvLyBsb29wIHRocm91Z2ggcm93cyBhbmQgc2V0IHJvdyBjbGFzc1xuXHRcdFx0XHRcdGlmICh0eXBlb2YgY29sdW1uLnJvd0NsYXNzID09PSAnZnVuY3Rpb24nKSB7XG5cdFx0XHRcdFx0XHQvLyBpZiByb3cgY2xhc3MgaXMgYSBmdW5jdGlvbiwgdHJ5IHVzaW5nIHRoZSBmdW5jdGlvbi4uLlxuXHRcdFx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHRcdFx0aWYgKHJvdy4kJGd0Um93Q2xhc3MpIHtcblx0XHRcdFx0XHRcdFx0XHRyb3cuJCRndFJvd0NsYXNzID0gcm93LiQkZ3RSb3dDbGFzcy5jb25jYXQoXG5cdFx0XHRcdFx0XHRcdFx0XHQnICcgKyBjb2x1bW4ucm93Q2xhc3Mocm93LCBjb2x1bW4pXG5cdFx0XHRcdFx0XHRcdFx0KTtcblx0XHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0XHRyb3cuJCRndFJvd0NsYXNzID0gY29sdW1uLnJvd0NsYXNzKHJvdywgY29sdW1uKTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fSBjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coXG5cdFx0XHRcdFx0XHRcdFx0J0Vycm9yIHdoZW4gdHJ5aW5nIHRvIGdldCByb3cgY2xhc3MgbmFtZSB1c2luZyBmb3JtdWxhLicsXG5cdFx0XHRcdFx0XHRcdFx0ZXJyb3Jcblx0XHRcdFx0XHRcdFx0KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0Ly8gaWYgbm90IGEgZnVuY3Rpb24sIHJldHVybiBwbGFpbiBzdHJpbmcgdmFsdWVcblx0XHRcdFx0XHRcdGlmIChyb3cuJCRndFJvd0NsYXNzKSB7XG5cdFx0XHRcdFx0XHRcdHJvdy4kJGd0Um93Q2xhc3MgPSByb3cuJCRndFJvd0NsYXNzLmNvbmNhdCgnICcgKyBjb2x1bW4ucm93Q2xhc3MpO1xuXHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0cm93LiQkZ3RSb3dDbGFzcyA9IGNvbHVtbi5yb3dDbGFzcztcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pO1xuXHRcdFx0fSk7XG5cdFx0fVxuXHRcdHJldHVybiBhcnJheTtcblx0fVxufVxuIl19