/*! * devextreme-angular-test * Version: 17.2.8 * Build date: Mon Feb 05 2018 * * Copyright (c) 2012 - 2018 Developer Express Inc. ALL RIGHTS RESERVED * * This software may be modified and distributed under the terms * of the MIT license. See the LICENSE file in the root of the project for details. * * https://github.com/DevExpress/devextreme-angular */ /* tslint:disable:use-input-property-decorator */ import { Component, NgModule, Host, SkipSelf, ContentChildren, forwardRef, QueryList } from '@angular/core'; import { NestedOptionHost } from '../../core/nested-option'; import { DxiDataGridColumn } from './base/data-grid-column-dxi'; import { DxiValidationRuleComponent } from './validation-rule-dxi'; @Component({ selector: 'dxi-column', template: '', styles: [''], providers: [NestedOptionHost], inputs: [ 'alignment', 'allowEditing', 'allowExporting', 'allowFiltering', 'allowFixing', 'allowGrouping', 'allowHeaderFiltering', 'allowHiding', 'allowReordering', 'allowResizing', 'allowSearch', 'allowSorting', 'autoExpandGroup', 'calculateCellValue', 'calculateDisplayValue', 'calculateFilterExpression', 'calculateGroupValue', 'calculateSortValue', 'caption', 'cellTemplate', 'columns', 'cssClass', 'customizeText', 'dataField', 'dataType', 'editCellTemplate', 'editorOptions', 'encodeHtml', 'falseText', 'filterOperations', 'filterType', 'filterValue', 'filterValues', 'fixed', 'fixedPosition', 'format', 'formItem', 'groupCellTemplate', 'groupIndex', 'headerCellTemplate', 'headerFilter', 'hidingPriority', 'isBand', 'lookup', 'minWidth', 'name', 'ownerBand', 'precision', 'selectedFilterOperation', 'setCellValue', 'showEditorAlways', 'showInColumnChooser', 'showWhenGrouped', 'sortIndex', 'sortingMethod', 'sortOrder', 'trueText', 'validationRules', 'visible', 'visibleIndex', 'width' ] }) export class DxiColumnComponent extends DxiDataGridColumn { protected get _optionPath() { return 'columns'; } @ContentChildren(forwardRef(() => DxiColumnComponent)) get columnsChildren(): QueryList { return this._getOption('columns'); } set columnsChildren(value) { this.setChildren('columns', value); } @ContentChildren(forwardRef(() => DxiValidationRuleComponent)) get validationRulesChildren(): QueryList { return this._getOption('validationRules'); } set validationRulesChildren(value) { this.setChildren('validationRules', value); } constructor(@SkipSelf() @Host() parentOptionHost: NestedOptionHost, @Host() optionHost: NestedOptionHost) { super(); parentOptionHost.setNestedOption(this); optionHost.setHost(this, this._fullOptionPath.bind(this)); } } @NgModule({ declarations: [ DxiColumnComponent ], exports: [ DxiColumnComponent ], }) export class DxiColumnModule { }