ngx-mat-lib
Version:
A bunch of utilities and components to use in your Angular 7+ apps!
58 lines (57 loc) • 6.52 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { Component, Input } from "@angular/core";
import { map, orderBy } from "lodash";
var XmatSimpleTableComponent = /** @class */ (function () {
function XmatSimpleTableComponent() {
this.displayedCols = [];
}
Object.defineProperty(XmatSimpleTableComponent.prototype, "config", {
get: /**
* @return {?}
*/
function () {
return this._config;
},
set: /**
* @param {?} newValue
* @return {?}
*/
function (newValue) {
this._config = void 0;
if (newValue) {
if (Array.isArray(newValue.cols)) {
this._config = tslib_1.__assign({ tdKlass: "", thKlass: "" }, newValue);
this.displayedCols = map(orderBy(newValue.cols, function (c) { return c.order; }), (function (c) { return c.key; })); // flattened array of keys
this._config.cols = map(newValue.cols, function (c) { return (tslib_1.__assign({ tdKlass: "", thKlass: "" }, c, { key: c.key, label: c.label })); });
}
}
},
enumerable: true,
configurable: true
});
XmatSimpleTableComponent.decorators = [
{ type: Component, args: [{
selector: "xmat-simple-table",
template: "<mat-table *ngIf=\"config?.dataSource\"\n [dataSource]=\"config.dataSource\">\n\n <ng-container *ngFor=\"let col of config.cols\">\n <ng-container [matColumnDef]=\"col.key\">\n <mat-header-cell *matHeaderCellDef\n [ngClass]=\"[col.thKlass, config.thKlass]\">\n <span>\n {{col.label}}\n </span>\n </mat-header-cell>\n <mat-cell *matCellDef=\"let row;\"\n [ngClass]=\"[col.tdKlass, config.tdKlass]\">\n <span *ngIf=\"!col.isHTML\">\n {{row[col.key] || col.ifEmpty}}\n </span>\n <span *ngIf=\"col.isHTML\"\n [innerHTML]=\"row[col.key] || col.ifEmpty\">\n </span>\n </mat-cell>\n </ng-container>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"displayedCols\"></mat-header-row>\n <mat-row *matRowDef=\"let row; columns: displayedCols;\">\n </mat-row>\n</mat-table>\n",
styles: [""]
}] }
];
/** @nocollapse */
XmatSimpleTableComponent.ctorParameters = function () { return []; };
XmatSimpleTableComponent.propDecorators = {
config: [{ type: Input }]
};
return XmatSimpleTableComponent;
}());
export { XmatSimpleTableComponent };
if (false) {
/** @type {?} */
XmatSimpleTableComponent.prototype.displayedCols;
/** @type {?} */
XmatSimpleTableComponent.prototype._config;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1hdC1zaW1wbGUtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LW1hdC1saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy94bWF0LXNpbXBsZS10YWJsZS94bWF0LXNpbXBsZS10YWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUkvQyxPQUFPLEVBQUMsR0FBRyxFQUFFLE9BQU8sRUFBQyxNQUFNLFFBQVEsQ0FBQzs7SUF3Q2hDO1FBSkEscUJBQTBCLEVBQUUsQ0FBQztLQU01QjtJQWpDRCxzQkFDSSw0Q0FBTTs7OztRQXNCVjtZQUNJLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUN2Qjs7Ozs7UUF6QkQsVUFDVyxRQUF5QjtZQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3RCLElBQUksUUFBUSxFQUFFO2dCQUNWLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQzlCLElBQUksQ0FBQyxPQUFPLHNCQUNSLE9BQU8sRUFBRSxFQUFFLEVBQ1gsT0FBTyxFQUFFLEVBQUUsSUFDUixRQUFRLENBQ2QsQ0FBQztvQkFDRixJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxLQUFLLEVBQVAsQ0FBTyxDQUFDLEVBQUUsQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxHQUFHLEVBQUwsQ0FBSyxDQUFDLENBQUMsQ0FBQztvQkFDN0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBQyxDQUFxQixJQUFLLE9BQUEsb0JBQzlELE9BQU8sRUFBRSxFQUFFLEVBQ1gsT0FBTyxFQUFFLEVBQUUsSUFDUixDQUFDLElBQ0osR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQ1YsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQ2hCLEVBTmdFLENBTWhFLENBQUMsQ0FBQztpQkFFUDthQUNKO1NBQ0o7OztPQUFBOztnQkE1QkosU0FBUyxTQUFDO29CQUNQLFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLHdpQ0FBaUQ7O2lCQUVwRDs7Ozs7eUJBR0ksS0FBSzs7bUNBYlY7O1NBV2Esd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuLy8gWE1BVCBNT0RFTFNcbmltcG9ydCB7WG1hdFNpbXBsZVRhYmxlLCBYbWF0U2ltcGxlVGFibGVDb2x9IGZyb20gXCIuLi8uLi9tb2RlbHMveG1hdC1zaW1wbGUtdGFibGUubW9kZWxcIjtcbi8vXG5pbXBvcnQge21hcCwgb3JkZXJCeX0gZnJvbSBcImxvZGFzaFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJ4bWF0LXNpbXBsZS10YWJsZVwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4veG1hdC1zaW1wbGUtdGFibGUuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybHM6IFtcIi4veG1hdC1zaW1wbGUtdGFibGUuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgWG1hdFNpbXBsZVRhYmxlQ29tcG9uZW50IHtcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGNvbmZpZyhuZXdWYWx1ZTogWG1hdFNpbXBsZVRhYmxlKSB7XG4gICAgICAgIHRoaXMuX2NvbmZpZyA9IHZvaWQgMDtcbiAgICAgICAgaWYgKG5ld1ZhbHVlKSB7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShuZXdWYWx1ZS5jb2xzKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2NvbmZpZyA9IHtcbiAgICAgICAgICAgICAgICAgICAgdGRLbGFzczogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgdGhLbGFzczogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgLi4ubmV3VmFsdWVcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzcGxheWVkQ29scyA9IG1hcChvcmRlckJ5KG5ld1ZhbHVlLmNvbHMsIGMgPT4gYy5vcmRlciksIChjID0+IGMua2V5KSk7IC8vIGZsYXR0ZW5lZCBhcnJheSBvZiBrZXlzXG4gICAgICAgICAgICAgICAgdGhpcy5fY29uZmlnLmNvbHMgPSBtYXAobmV3VmFsdWUuY29scywgKGM6IFhtYXRTaW1wbGVUYWJsZUNvbCkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgdGRLbGFzczogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgdGhLbGFzczogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgLi4uYyxcbiAgICAgICAgICAgICAgICAgICAga2V5OiBjLmtleSxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IGMubGFiZWwsXG4gICAgICAgICAgICAgICAgfSkpO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgY29uZmlnKCk6IFhtYXRTaW1wbGVUYWJsZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb25maWc7XG4gICAgfVxuXG4gICAgZGlzcGxheWVkQ29sczogc3RyaW5nW10gPSBbXTtcblxuICAgIHByaXZhdGUgX2NvbmZpZzogWG1hdFNpbXBsZVRhYmxlO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG5cbiAgICB9XG59XG4iXX0=