UNPKG

data-table-kit

Version:

A simple datatable/datagrid for Angular projects

70 lines 7.08 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, Input, ViewChild, ViewContainerRef } from '@angular/core'; import { DataTableColumnDirective } from '../data-table-column.directive'; import { DataTableChildDirective } from '../data-table-child.directive'; import { CellDataContext } from '../cell-data-context'; export class DataTableCellComponent { constructor() { this.editing = false; this.rowIndex = -1; this.viewColumn = null; } /** * @param {?} changes * @return {?} */ ngOnChanges(changes) { if (changes["data"] || changes["column"] || changes["child"]) { if (this.data != null) { if (this.column != null) { this.viewColumn = this._cellContainerRef.createEmbeddedView(this.column.ColumnTemplate, new CellDataContext(this.data, this.editing, this.rowIndex)); } if (this.child != null) { /** @type {?} */ let viewChild = this._cellContainerRef.createEmbeddedView(this.child.ChildTemplate, new CellDataContext(this.data, false, this.rowIndex)); } } } else if (changes["editing"] && this.viewColumn != null) { this.viewColumn.context.update(this.editing); } } } DataTableCellComponent.decorators = [ { type: Component, args: [{ selector: "data-table-cell", template: "<div [ngClass]=\"fadein\">\n <ng-container #gridCell></ng-container>\n</div>\n", styles: [""] }] } ]; DataTableCellComponent.propDecorators = { data: [{ type: Input }], fadein: [{ type: Input }], editing: [{ type: Input }], rowIndex: [{ type: Input }], column: [{ type: Input }], child: [{ type: Input }], _cellContainerRef: [{ type: ViewChild, args: ["gridCell", { read: ViewContainerRef, static: true },] }] }; if (false) { /** @type {?} */ DataTableCellComponent.prototype.data; /** @type {?} */ DataTableCellComponent.prototype.fadein; /** @type {?} */ DataTableCellComponent.prototype.editing; /** @type {?} */ DataTableCellComponent.prototype.rowIndex; /** @type {?} */ DataTableCellComponent.prototype.column; /** @type {?} */ DataTableCellComponent.prototype.child; /** @type {?} */ DataTableCellComponent.prototype._cellContainerRef; /** @type {?} */ DataTableCellComponent.prototype.viewColumn; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1jZWxsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2RhdGEtdGFibGUta2l0LyIsInNvdXJjZXMiOlsibGliL2RhdGEtdGFibGUtY2VsbC9kYXRhLXRhYmxlLWNlbGwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQWtDLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU92RCxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBUVcsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUN6QixhQUFRLEdBQVcsQ0FBQyxDQUFDLENBQUM7UUFLL0IsZUFBVSxHQUF5QixJQUFJLENBQUM7SUF1QjFDLENBQUM7Ozs7O0lBckJDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzVELElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEVBQUU7Z0JBQ3JCLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLEVBQUU7b0JBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUN6RCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFDMUIsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDNUQsQ0FBQztpQkFDSDtnQkFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFFOzt3QkFDbEIsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FDdkQsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQ3hCLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDckQ7aUJBQ0Y7YUFDRjtTQUNGO2FBQ0ksSUFBRyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUUsSUFBSSxDQUFDLFVBQVUsSUFBRSxJQUFJLEVBQUM7WUFDaEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM5QztJQUNILENBQUM7OztZQXBDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsMkZBQStDOzthQUVoRDs7O21CQUVFLEtBQUs7cUJBQ0wsS0FBSztzQkFDTCxLQUFLO3VCQUNMLEtBQUs7cUJBQ0wsS0FBSztvQkFDTCxLQUFLO2dDQUNMLFNBQVMsU0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7OztJQU4vRCxzQ0FBbUI7O0lBQ25CLHdDQUF3Qjs7SUFDeEIseUNBQWtDOztJQUNsQywwQ0FBK0I7O0lBQy9CLHdDQUEwQzs7SUFDMUMsdUNBQXdDOztJQUN4QyxtREFBcUc7O0lBRXJHLDRDQUF3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiwgU2ltcGxlQ2hhbmdlcywgRW1iZWRkZWRWaWV3UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhVGFibGVDb2x1bW5EaXJlY3RpdmUgfSBmcm9tICcuLi9kYXRhLXRhYmxlLWNvbHVtbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGF0YVRhYmxlQ2hpbGREaXJlY3RpdmUgfSBmcm9tICcuLi9kYXRhLXRhYmxlLWNoaWxkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDZWxsRGF0YUNvbnRleHQgfSBmcm9tICcuLi9jZWxsLWRhdGEtY29udGV4dCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJkYXRhLXRhYmxlLWNlbGxcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9kYXRhLXRhYmxlLWNlbGwuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL2RhdGEtdGFibGUtY2VsbC5jb21wb25lbnQuY3NzXCJdXG59KVxuZXhwb3J0IGNsYXNzIERhdGFUYWJsZUNlbGxDb21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBhbnk7XG4gIEBJbnB1dCgpIGZhZGVpbjogc3RyaW5nO1xuICBASW5wdXQoKSBlZGl0aW5nOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHJvd0luZGV4OiBudW1iZXIgPSAtMTtcbiAgQElucHV0KCkgY29sdW1uOiBEYXRhVGFibGVDb2x1bW5EaXJlY3RpdmU7XG4gIEBJbnB1dCgpIGNoaWxkOiBEYXRhVGFibGVDaGlsZERpcmVjdGl2ZTtcbiAgQFZpZXdDaGlsZChcImdyaWRDZWxsXCIsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pIF9jZWxsQ29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIHZpZXdDb2x1bW46IEVtYmVkZGVkVmlld1JlZjxhbnk+ID0gbnVsbDtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbXCJkYXRhXCJdIHx8IGNoYW5nZXNbXCJjb2x1bW5cIl0gfHwgY2hhbmdlc1tcImNoaWxkXCJdKSB7XG4gICAgICBpZiAodGhpcy5kYXRhICE9IG51bGwpIHtcbiAgICAgICAgaWYgKHRoaXMuY29sdW1uICE9IG51bGwpIHtcbiAgICAgICAgICB0aGlzLnZpZXdDb2x1bW4gPSB0aGlzLl9jZWxsQ29udGFpbmVyUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyhcbiAgICAgICAgICAgIHRoaXMuY29sdW1uLkNvbHVtblRlbXBsYXRlLFxuICAgICAgICAgICAgbmV3IENlbGxEYXRhQ29udGV4dCh0aGlzLmRhdGEsIHRoaXMuZWRpdGluZywgdGhpcy5yb3dJbmRleClcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmNoaWxkICE9IG51bGwpIHtcbiAgICAgICAgICBsZXQgdmlld0NoaWxkID0gdGhpcy5fY2VsbENvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcoXG4gICAgICAgICAgICB0aGlzLmNoaWxkLkNoaWxkVGVtcGxhdGUsXG4gICAgICAgICAgICBuZXcgQ2VsbERhdGFDb250ZXh0KHRoaXMuZGF0YSwgZmFsc2UsIHRoaXMucm93SW5kZXgpXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmKGNoYW5nZXNbXCJlZGl0aW5nXCJdJiZ0aGlzLnZpZXdDb2x1bW4hPW51bGwpe1xuICAgICAgdGhpcy52aWV3Q29sdW1uLmNvbnRleHQudXBkYXRlKHRoaXMuZWRpdGluZyk7XG4gICAgfVxuICB9XG59XG4iXX0=