UNPKG

igniteui-angular

Version:

Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps

162 lines • 13.9 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, Input, ViewChildren, QueryList, HostBinding, ViewChild, ElementRef, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core'; import { IgxSummaryCellComponent } from './summary-cell.component'; import { IgxGridForOfDirective } from '../../directives/for-of/for_of.directive'; import { GridBaseAPIService } from '../api.service'; import { IgxForOfSyncService } from '../../directives/for-of/for_of.sync.service'; var IgxSummaryRowComponent = /** @class */ (function () { function IgxSummaryRowComponent(gridAPI, element, cdr) { this.gridAPI = gridAPI; this.element = element; this.cdr = cdr; this.indentation = 0; this.firstCellIndentation = -1; } Object.defineProperty(IgxSummaryRowComponent.prototype, "dataRowIndex", { get: /** * @return {?} */ function () { return this.index; }, enumerable: true, configurable: true }); Object.defineProperty(IgxSummaryRowComponent.prototype, "minHeight", { get: /** * @return {?} */ function () { return this.grid.summaryService.calcMaxSummaryHeight() - 1; }, enumerable: true, configurable: true }); /** * @return {?} */ IgxSummaryRowComponent.prototype.ngDoCheck = /** * @return {?} */ function () { this.cdr.markForCheck(); }; Object.defineProperty(IgxSummaryRowComponent.prototype, "grid", { get: /** * @return {?} */ function () { return this.gridAPI.grid; }, enumerable: true, configurable: true }); Object.defineProperty(IgxSummaryRowComponent.prototype, "nativeElement", { get: /** * @return {?} */ function () { return this.element.nativeElement; }, enumerable: true, configurable: true }); /** * @param {?} columnName * @return {?} */ IgxSummaryRowComponent.prototype.getColumnSummaries = /** * @param {?} columnName * @return {?} */ function (columnName) { if (!this.summaries.get(columnName)) { return []; } return this.summaries.get(columnName); }; Object.defineProperty(IgxSummaryRowComponent.prototype, "pinnedColumns", { /** * @hidden */ get: /** * @hidden * @return {?} */ function () { return this.grid.pinnedColumns; }, enumerable: true, configurable: true }); Object.defineProperty(IgxSummaryRowComponent.prototype, "unpinnedColumns", { /** * @hidden */ get: /** * @hidden * @return {?} */ function () { return this.grid.unpinnedColumns; }, enumerable: true, configurable: true }); IgxSummaryRowComponent.decorators = [ { type: Component, args: [{ changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, selector: 'igx-grid-summary-row', template: "<ng-container *ngIf=\"summaries.size\">\n <ng-container *ngIf=\"indentation\">\n <div class=\"igx-grid__row-indentation igx-grid__row-indentation--level-{{indentation}}\"></div>\n </ng-container>\n <ng-container *ngIf=\"grid.summariesMargin\">\n <div\n class=\"igx-grid__summaries-patch\"\n [style.min-width.px]=\"grid.summariesMargin\"\n [style.flex-basis.px]=\"grid.summariesMargin\"\n ></div>\n </ng-container>\n <ng-container *ngIf=\"pinnedColumns.length > 0\">\n <igx-grid-summary-cell *ngFor=\"let col of pinnedColumns | igxNotGrouped\"\n class=\"igx-grid-summary igx-grid-summary--fw igx-grid-summary--pinned\"\n [class.igx-grid-summary--cosy]=\"grid.displayDensity === 'cosy'\"\n [class.igx-grid-summary--compact]=\"grid.displayDensity === 'compact'\"\n [class.igx-grid-summary--empty]=\"!col.hasSummary\"\n [class.igx-grid-summary--pinned-last]=\"col.isLastPinned\"\n [column]=\"col\"\n [firstCellIndentation]=\"firstCellIndentation\"\n [rowIndex]=\"index\"\n [summaryResults]=\"getColumnSummaries(col.field)\"\n [hasSummary]=\"col.hasSummary\"\n [density]=\"grid.displayDensity\"\n [style.max-height.px]=\"minHeight\"\n [style.min-height.px]=\"minHeight\">\n </igx-grid-summary-cell>\n </ng-container>\n <ng-template igxGridFor let-col [igxGridForOf]=\"unpinnedColumns | igxNotGrouped\" [igxForScrollContainer]=\"grid.parentVirtDir\" let-colIndex=\"index\" [igxForScrollOrientation]=\"'horizontal'\" [igxForContainerSize]=\"grid.unpinnedWidth\" [igxForTrackBy]=\"grid.trackColumnChanges\" [igxForSizePropName]='\"calcWidth\"' #igxDirRef>\n <igx-grid-summary-cell\n class=\"igx-grid-summary igx-grid-summary--fw\"\n [class.igx-grid-summary--cosy]=\"grid.displayDensity === 'cosy'\"\n [class.igx-grid-summary--compact]=\"grid.displayDensity === 'compact'\"\n [class.igx-grid-summary--empty]=\"!col.hasSummary\"\n [column]=\"col\"\n [rowIndex]=\"index\"\n [firstCellIndentation]=\"firstCellIndentation\"\n [summaryResults]=\"getColumnSummaries(col.field)\"\n [hasSummary]=\"col.hasSummary\"\n [density]=\"grid.displayDensity\"\n [style.max-height.px]=\"minHeight\"\n [style.min-height.px]=\"minHeight\">\n </igx-grid-summary-cell>\n </ng-template>\n</ng-container>\n", providers: [IgxForOfSyncService] }] } ]; /** @nocollapse */ IgxSummaryRowComponent.ctorParameters = function () { return [ { type: GridBaseAPIService }, { type: ElementRef }, { type: ChangeDetectorRef } ]; }; IgxSummaryRowComponent.propDecorators = { summaries: [{ type: Input }], gridID: [{ type: Input }], index: [{ type: Input }], indentation: [{ type: Input }], firstCellIndentation: [{ type: Input }], dataRowIndex: [{ type: HostBinding, args: ['attr.data-rowIndex',] }], summaryCells: [{ type: ViewChildren, args: [IgxSummaryCellComponent, { read: IgxSummaryCellComponent },] }], virtDirRow: [{ type: ViewChild, args: ['igxDirRef', { read: IgxGridForOfDirective },] }] }; return IgxSummaryRowComponent; }()); export { IgxSummaryRowComponent }; if (false) { /** @type {?} */ IgxSummaryRowComponent.prototype.summaries; /** @type {?} */ IgxSummaryRowComponent.prototype.gridID; /** @type {?} */ IgxSummaryRowComponent.prototype.index; /** @type {?} */ IgxSummaryRowComponent.prototype.indentation; /** @type {?} */ IgxSummaryRowComponent.prototype.firstCellIndentation; /** @type {?} */ IgxSummaryRowComponent.prototype.summaryCells; /** * @hidden * @type {?} */ IgxSummaryRowComponent.prototype.virtDirRow; /** @type {?} */ IgxSummaryRowComponent.prototype.gridAPI; /** @type {?} */ IgxSummaryRowComponent.prototype.element; /** @type {?} */ IgxSummaryRowComponent.prototype.cdr; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtbWFyeS1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vaWduaXRldWktYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9ncmlkcy9zdW1tYXJpZXMvc3VtbWFyeS1yb3cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFDTCxZQUFZLEVBQ1osU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQ1QsVUFBVSxFQUNWLHVCQUF1QixFQUN2QixpQkFBaUIsRUFFcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHcEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFHbEY7SUEwQ0ksZ0NBQW1CLE9BQXFFLEVBQ3JFLE9BQW1CLEVBQ25CLEdBQXNCO1FBRnRCLFlBQU8sR0FBUCxPQUFPLENBQThEO1FBQ3JFLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUF6QmxDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBR2hCLHlCQUFvQixHQUFHLENBQUMsQ0FBQyxDQUFDO0lBc0JXLENBQUM7SUFwQjdDLHNCQUNJLGdEQUFZOzs7O1FBRGhCO1lBRUksT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3RCLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNkNBQVM7Ozs7UUFBYjtZQUNJLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDL0QsQ0FBQzs7O09BQUE7Ozs7SUFlTSwwQ0FBUzs7O0lBQWhCO1FBQ0ksSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsc0JBQVcsd0NBQUk7Ozs7UUFBZjtZQUNJLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDN0IsQ0FBQzs7O09BQUE7SUFFRCxzQkFBVyxpREFBYTs7OztRQUF4QjtZQUNJLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDdEMsQ0FBQzs7O09BQUE7Ozs7O0lBRU0sbURBQWtCOzs7O0lBQXpCLFVBQTBCLFVBQVU7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2pDLE9BQU8sRUFBRSxDQUFDO1NBQ2I7UUFDRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRTFDLENBQUM7SUFLRCxzQkFBVyxpREFBYTtRQUh4Qjs7V0FFRzs7Ozs7UUFDSDtZQUNJLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDbkMsQ0FBQzs7O09BQUE7SUFLRCxzQkFBVyxtREFBZTtRQUgxQjs7V0FFRzs7Ozs7UUFDSDtZQUNJLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDckMsQ0FBQzs7O09BQUE7O2dCQTlFSixTQUFTLFNBQUM7b0JBQ1AsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLG1CQUFtQixFQUFFLEtBQUs7b0JBQzFCLFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLDAvRUFBMkM7b0JBQzNDLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNuQzs7OztnQkFaUSxrQkFBa0I7Z0JBUnZCLFVBQVU7Z0JBRVYsaUJBQWlCOzs7NEJBcUJoQixLQUFLO3lCQUdMLEtBQUs7d0JBR0wsS0FBSzs4QkFHTCxLQUFLO3VDQUdMLEtBQUs7K0JBR0wsV0FBVyxTQUFDLG9CQUFvQjsrQkFTaEMsWUFBWSxTQUFDLHVCQUF1QixFQUFFLEVBQUUsSUFBSSxFQUFFLHVCQUF1QixFQUFFOzZCQU12RSxTQUFTLFNBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFOztJQXdDM0QsNkJBQUM7Q0FBQSxBQS9FRCxJQStFQztTQXhFWSxzQkFBc0I7OztJQUUvQiwyQ0FDa0Q7O0lBRWxELHdDQUNjOztJQUVkLHVDQUNxQjs7SUFFckIsNkNBQ3VCOztJQUV2QixzREFDaUM7O0lBV2pDLDhDQUN3RDs7Ozs7SUFLeEQsNENBQzhDOztJQUVsQyx5Q0FBNEU7O0lBQzVFLHlDQUEwQjs7SUFDMUIscUNBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgSW5wdXQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBIb3N0QmluZGluZyxcbiAgICBWaWV3Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBEb0NoZWNrXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSWd4U3VtbWFyeVJlc3VsdCB9IGZyb20gJy4vZ3JpZC1zdW1tYXJ5JztcbmltcG9ydCB7IElneFN1bW1hcnlDZWxsQ29tcG9uZW50IH0gZnJvbSAnLi9zdW1tYXJ5LWNlbGwuY29tcG9uZW50JztcbmltcG9ydCB7IElneEdyaWRGb3JPZkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZm9yLW9mL2Zvcl9vZi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR3JpZEJhc2VBUElTZXJ2aWNlIH0gZnJvbSAnLi4vYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgSWd4R3JpZEJhc2VDb21wb25lbnQsIElHcmlkRGF0YUJpbmRhYmxlIH0gZnJvbSAnLi4vZ3JpZC1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJZ3hDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi9jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IElneEZvck9mU3luY1NlcnZpY2UgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2Zvci1vZi9mb3Jfb2Yuc3luYy5zZXJ2aWNlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBzZWxlY3RvcjogJ2lneC1ncmlkLXN1bW1hcnktcm93JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc3VtbWFyeS1yb3cuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW0lneEZvck9mU3luY1NlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIElneFN1bW1hcnlSb3dDb21wb25lbnQgaW1wbGVtZW50cyBEb0NoZWNrICB7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzdW1tYXJpZXM6IE1hcDxzdHJpbmcsIElneFN1bW1hcnlSZXN1bHRbXT47XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBncmlkSUQ7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpbmRleDogbnVtYmVyO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaW5kZW50YXRpb24gPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZmlyc3RDZWxsSW5kZW50YXRpb24gPSAtMTtcblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXJvd0luZGV4JylcbiAgICBnZXQgZGF0YVJvd0luZGV4KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbmRleDtcbiAgICB9XG5cbiAgICBnZXQgbWluSGVpZ2h0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ncmlkLnN1bW1hcnlTZXJ2aWNlLmNhbGNNYXhTdW1tYXJ5SGVpZ2h0KCkgLSAxO1xuICAgIH1cblxuICAgIEBWaWV3Q2hpbGRyZW4oSWd4U3VtbWFyeUNlbGxDb21wb25lbnQsIHsgcmVhZDogSWd4U3VtbWFyeUNlbGxDb21wb25lbnQgfSlcbiAgICBwdWJsaWMgc3VtbWFyeUNlbGxzOiBRdWVyeUxpc3Q8SWd4U3VtbWFyeUNlbGxDb21wb25lbnQ+O1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGQoJ2lneERpclJlZicsIHsgcmVhZDogSWd4R3JpZEZvck9mRGlyZWN0aXZlIH0pXG4gICAgcHVibGljIHZpcnREaXJSb3c6IElneEdyaWRGb3JPZkRpcmVjdGl2ZTxhbnk+O1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGdyaWRBUEk6IEdyaWRCYXNlQVBJU2VydmljZTxJZ3hHcmlkQmFzZUNvbXBvbmVudCAmIElHcmlkRGF0YUJpbmRhYmxlPixcbiAgICAgICAgICAgICAgICBwdWJsaWMgZWxlbWVudDogRWxlbWVudFJlZixcbiAgICAgICAgICAgICAgICBwdWJsaWMgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIHB1YmxpYyBuZ0RvQ2hlY2soKSB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZ3JpZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JpZEFQSS5ncmlkO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbmF0aXZlRWxlbWVudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb2x1bW5TdW1tYXJpZXMoY29sdW1uTmFtZSkge1xuICAgICAgICBpZiAoIXRoaXMuc3VtbWFyaWVzLmdldChjb2x1bW5OYW1lKSkge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnN1bW1hcmllcy5nZXQoY29sdW1uTmFtZSk7XG5cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIGdldCBwaW5uZWRDb2x1bW5zKCk6IElneENvbHVtbkNvbXBvbmVudFtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JpZC5waW5uZWRDb2x1bW5zO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IHVucGlubmVkQ29sdW1ucygpOiBJZ3hDb2x1bW5Db21wb25lbnRbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdyaWQudW5waW5uZWRDb2x1bW5zO1xuICAgIH1cbn1cbiJdfQ==