ngx-table-powerfull
Version:
Table with catalog of functionalities for free use based on the ngx-datatable component and other components
36 lines • 5.53 kB
JavaScript
import { AttributesModel } from "./attributes.model";
import { SortTableModel } from "./sortTable.model";
import { SumaryColumnModel } from "./sumaryColumn.model";
export class ColumnTableModel {
constructor(item) {
this.action = null;
this.index = false;
this.hide = false;
this.tag = null;
this.attributes = [];
this.editable = false;
this.sortable = true;
this.sort = new SortTableModel({ numeric: true });
this.tooltip = false;
this.tooltipText = '';
this.sumary = [];
this.predefinedData = null;
this.visible = true;
this.fixed = false;
this.filtered = true;
if (!!item) {
Object.assign(this, item);
this.attributes = (!!item.attributes) ? item.attributes.map(a => new AttributesModel(a)) : [];
this.sort = (!!item.sort) ? new SortTableModel(item.sort) : new SortTableModel({ numeric: true });
(item.sumary || []).map(s => new SumaryColumnModel(s));
this.hide = (!!item.index) ? item.hide : false;
}
}
}
export var TagTypes;
(function (TagTypes) {
TagTypes["ICON"] = "i";
TagTypes["LINK"] = "a";
TagTypes["BUTTON"] = "button";
})(TagTypes || (TagTypes = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uVGFibGUubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtdGFibGUtcG93ZXJmdWxsLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb2x1bW5UYWJsZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXpELE1BQU0sT0FBTyxnQkFBZ0I7SUFtQjVCLFlBQVksSUFBZ0M7UUFoQmxDLFdBQU0sR0FBVyxJQUFJLENBQUM7UUFDdEIsVUFBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixTQUFJLEdBQVksS0FBSyxDQUFDO1FBQ3RCLFFBQUcsR0FBc0IsSUFBSSxDQUFDO1FBQzlCLGVBQVUsR0FBc0IsRUFBRSxDQUFDO1FBQ25DLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsYUFBUSxHQUFZLElBQUksQ0FBQztRQUN6QixTQUFJLEdBQW1CLElBQUksY0FBYyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFDNUQsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUN6QixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixXQUFNLEdBQXdCLEVBQUUsQ0FBQztRQUNqQyxtQkFBYyxHQUFRLElBQUksQ0FBQztRQUMzQixZQUFPLEdBQVksSUFBSSxDQUFDO1FBQ3hCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFDdkIsYUFBUSxHQUFZLElBQUksQ0FBQztRQUdsQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUU7WUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDL0YsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxjQUFjLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNsRyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBRSxLQUFLLENBQUM7U0FDekQ7SUFDRixDQUFDO0NBQ0Q7QUFFRCxNQUFNLENBQU4sSUFBWSxRQUlYO0FBSkQsV0FBWSxRQUFRO0lBQ2hCLHNCQUFVLENBQUE7SUFDVixzQkFBVSxDQUFBO0lBQ1YsNkJBQWlCLENBQUE7QUFDckIsQ0FBQyxFQUpXLFFBQVEsS0FBUixRQUFRLFFBSW5CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXR0cmlidXRlc01vZGVsIH0gZnJvbSBcIi4vYXR0cmlidXRlcy5tb2RlbFwiO1xyXG5pbXBvcnQgeyBTb3J0VGFibGVNb2RlbCB9IGZyb20gXCIuL3NvcnRUYWJsZS5tb2RlbFwiO1xyXG5pbXBvcnQgeyBTdW1hcnlDb2x1bW5Nb2RlbCB9IGZyb20gXCIuL3N1bWFyeUNvbHVtbi5tb2RlbFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIENvbHVtblRhYmxlTW9kZWx7XHJcbiAgICBwdWJsaWMgcHJvcDogc3RyaW5nO1xyXG4gICAgcHVibGljIG5hbWU6IHN0cmluZztcclxuICAgIHB1YmxpYyBhY3Rpb246IHN0cmluZyA9IG51bGw7XHJcbiAgICBwdWJsaWMgaW5kZXg6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBoaWRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgdGFnOiBUYWdUeXBlcyB8IHN0cmluZyA9IG51bGw7XHJcbiAgICBwdWJsaWMgYXR0cmlidXRlczogQXR0cmlidXRlc01vZGVsW10gPSBbXTtcclxuICAgIHB1YmxpYyBlZGl0YWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIHNvcnRhYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIHB1YmxpYyBzb3J0OiBTb3J0VGFibGVNb2RlbCA9IG5ldyBTb3J0VGFibGVNb2RlbCh7IG51bWVyaWM6IHRydWV9KTtcclxuICAgIHB1YmxpYyB0b29sdGlwOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgdG9vbHRpcFRleHQ6IHN0cmluZyA9ICcnO1xyXG4gICAgcHVibGljIHN1bWFyeTogU3VtYXJ5Q29sdW1uTW9kZWxbXSA9IFtdO1xyXG4gICAgcHVibGljIHByZWRlZmluZWREYXRhOiBhbnkgPSBudWxsO1xyXG4gICAgcHVibGljIHZpc2libGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgcHVibGljIGZpeGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgZmlsdGVyZWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihpdGVtPzogUGFydGlhbDxDb2x1bW5UYWJsZU1vZGVsPikge1xyXG5cdFx0aWYgKCEhaXRlbSkge1xyXG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGl0ZW0pO1xyXG4gICAgICAgICAgICB0aGlzLmF0dHJpYnV0ZXMgPSAoISFpdGVtLmF0dHJpYnV0ZXMpID8gaXRlbS5hdHRyaWJ1dGVzLm1hcCggYSA9PiBuZXcgQXR0cmlidXRlc01vZGVsKGEpKSA6IFtdO1xyXG4gICAgICAgICAgICB0aGlzLnNvcnQgPSAoISFpdGVtLnNvcnQpID8gbmV3IFNvcnRUYWJsZU1vZGVsKGl0ZW0uc29ydCkgOiBuZXcgU29ydFRhYmxlTW9kZWwoeyBudW1lcmljOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICAoaXRlbS5zdW1hcnkgfHwgW10pLm1hcCggcyA9PiBuZXcgU3VtYXJ5Q29sdW1uTW9kZWwocykpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUgPSAoISFpdGVtLmluZGV4KSA/IGl0ZW0uaGlkZSA6ICBmYWxzZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFRhZ1R5cGVzIHtcclxuICAgIElDT04gPSAnaScsXHJcbiAgICBMSU5LID0gJ2EnLFxyXG4gICAgQlVUVE9OID0gJ2J1dHRvbidcclxufVxyXG5cclxuIl19