UNPKG

igniteui-angular

Version:

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

998 lines (997 loc) 36.2 kB
import { AfterContentInit, AfterViewInit, ChangeDetectorRef, EventEmitter, ElementRef, IterableDiffers, NgZone, OnInit, QueryList, TemplateRef, ViewContainerRef, Injector, EnvironmentInjector, OnChanges, SimpleChanges } from '@angular/core'; import { IgxGridBaseDirective } from '../grid-base.directive'; import { IgxFilteringService } from '../filtering/grid-filtering.service'; import { IgxGridSelectionService } from '../selection/selection.service'; import { ColumnType, GridType, IgxColumnTemplateContext, RowType } from '../common/grid.interface'; import { IgxGridSummaryService } from '../summaries/grid-summary.service'; import { IDimensionsChange, IgxPivotGridValueTemplateContext, IPivotConfiguration, IPivotConfigurationChangedEventArgs, IPivotDimension, IPivotValue, IValuesChange, PivotDimensionType, IPivotUISettings } from './pivot-grid.interface'; import { IgxPivotHeaderRowComponent } from './pivot-header-row.component'; import { IgxColumnGroupComponent } from '../columns/column-group.component'; import { IgxColumnComponent } from '../columns/column.component'; import { FilterMode, GridPagingMode, GridSummaryCalculationMode, GridSummaryPosition, Size } from '../common/enums'; import { OverlaySettings } from '../../services/public_api'; import { IGridEditEventArgs, ICellPosition, IColumnMovingEndEventArgs, IColumnMovingEventArgs, IColumnMovingStartEventArgs, IColumnVisibilityChangedEventArgs, IGridEditDoneEventArgs, IGridToolbarExportEventArgs, IPinColumnCancellableEventArgs, IPinColumnEventArgs, IPinRowEventArgs, IRowDataCancelableEventArgs, IRowDataEventArgs, IRowDragEndEventArgs, IRowDragStartEventArgs } from '../common/events'; import { IgxGridRowComponent } from '../grid/grid-row.component'; import { DropPosition } from '../moving/moving.service'; import { IgxGridExcelStyleFilteringComponent } from '../filtering/excel-style/excel-style-filtering.component'; import { IgxPivotGridNavigationService } from './pivot-grid-navigation.service'; import { IgxPivotColumnResizingService } from '../resizing/pivot-grid/pivot-resizing.service'; import { IgxFlatTransactionFactory, IgxOverlayService, State, Transaction, TransactionService } from '../../services/public_api'; import { PlatformUtil } from '../../core/utils'; import { IFilteringExpressionsTree } from '../../data-operations/filtering-expressions-tree'; import { GridBaseAPIService } from '../api.service'; import { IForOfDataChangingEventArgs, IgxGridForOfDirective } from '../../directives/for-of/for_of.directive'; import { IgxPivotRowDimensionContentComponent } from './pivot-row-dimension-content.component'; import { IgxPivotGridColumnResizerComponent } from '../resizing/pivot-grid/pivot-resizer.component'; import { ISortingExpression, SortingDirection } from '../../data-operations/sorting-strategy'; import { IFilteringStrategy } from '../../data-operations/filtering-strategy'; import { IgxPivotRowDimensionHeaderTemplateDirective, IgxPivotValueChipTemplateDirective } from './pivot-grid.directives'; import { IFilteringOperation } from '../../data-operations/filtering-condition'; import { IgxGridValidationService } from '../grid/grid-validation.service'; import { IDataCloneStrategy } from '../../data-operations/data-clone-strategy'; import { IgxTextHighlightService } from '../../directives/text-highlight/text-highlight.service'; import { IgxPivotRowHeaderGroupComponent } from './pivot-row-header-group.component'; import { IgxPivotRowDimensionMrlRowComponent } from './pivot-row-dimension-mrl-row.component'; import * as i0 from "@angular/core"; /** * Pivot Grid provides a way to present and manipulate data in a pivot table view. * * @igxModule IgxPivotGridModule * @igxGroup Grids & Lists * @igxKeywords pivot, grid, table * @igxTheme igx-grid-theme * @remarks * The Ignite UI Pivot Grid is used for grouping and aggregating simple flat data into a pivot table. Once data * has been bound and the dimensions and values configured it can be manipulated via sorting and filtering. * @example * ```html * <igx-pivot-grid [data]="data" [pivotConfiguration]="configuration"> * </igx-pivot-grid> * ``` */ export declare class IgxPivotGridComponent extends IgxGridBaseDirective implements OnInit, AfterContentInit, GridType, AfterViewInit, OnChanges { navigation: IgxPivotGridNavigationService; /** * Emitted when the dimension collection is changed via the grid chip area. * * @remarks * Returns the new dimension collection and its type: * @example * ```html * <igx-pivot-grid #grid [data]="localData" [height]="'305px'" * (dimensionsChange)="dimensionsChange($event)"></igx-grid> * ``` */ dimensionsChange: EventEmitter<IDimensionsChange>; /** * Emitted when any of the pivotConfiguration properties is changed via the grid chip area. * * @example * ```html * <igx-pivot-grid #grid [data]="localData" [height]="'305px'" * (pivotConfigurationChanged)="configurationChanged($event)"></igx-grid> * ``` */ pivotConfigurationChange: EventEmitter<IPivotConfigurationChangedEventArgs>; /** * Emitted when the dimension is initialized. * @remarks * Emits the dimension that is about to be initialized. * @example * ```html * <igx-pivot-grid #grid [data]="localData" [height]="'305px'" * (dimensionInit)="dimensionInit($event)"></igx-pivot-grid> * ``` */ dimensionInit: EventEmitter<IPivotDimension>; /** * Emitted when the value is initialized. * @remarks * Emits the value that is about to be initialized. * @example * ```html * <igx-pivot-grid #grid [data]="localData" [height]="'305px'" * (valueInit)="valueInit($event)"></igx-pivot-grid> * ``` */ valueInit: EventEmitter<IPivotValue>; /** * Emitted when a dimension is sorted. * * @example * ```html * <igx-pivot-grid #grid [data]="localData" [height]="'305px'" * (dimensionsSortingExpressionsChange)="dimensionsSortingExpressionsChange($event)"></igx-pivot-grid> * ``` */ dimensionsSortingExpressionsChange: EventEmitter<ISortingExpression<any>[]>; /** * Emitted when the values collection is changed via the grid chip area. * * @remarks * Returns the new dimension * @example * ```html * <igx-pivot-grid #grid [data]="localData" [height]="'305px'" * (valuesChange)="valuesChange($event)"></igx-grid> * ``` */ valuesChange: EventEmitter<IValuesChange>; /** * Gets the sorting expressions generated for the dimensions. * * @example * ```typescript * const expressions = this.grid.dimensionsSortingExpressions; * ``` */ get dimensionsSortingExpressions(): ISortingExpression<any>[]; /** @hidden @internal */ theadRow: IgxPivotHeaderRowComponent; /** * @hidden @internal */ protected valueChipTemplateDirective: IgxPivotValueChipTemplateDirective; /** * @hidden @internal */ protected rowDimensionHeaderDirective: IgxPivotRowDimensionHeaderTemplateDirective; /** * Gets/Sets a custom template for the value chips. * * @example * ```html * <igx-pivot-grid [valueChipTemplate]="myTemplate"><igx-pivot-grid> * ``` */ valueChipTemplate: TemplateRef<IgxPivotGridValueTemplateContext>; rowDimensionHeaderTemplate: TemplateRef<IgxColumnTemplateContext>; /** * Gets/Sets the pivot configuration with all related dimensions and values. * * @example * ```html * <igx-pivot-grid [pivotConfiguration]="config"></igx-pivot-grid> * ``` */ set pivotConfiguration(value: IPivotConfiguration); get pivotConfiguration(): IPivotConfiguration; /** * Gets/Sets whether to auto-generate the pivot configuration based on the provided data. * * @remarks * The default value is false. When set to true, it will override all dimensions and values in the pivotConfiguration. * @example * ```html * <igx-pivot-grid [data]="Data" [autoGenerateConfig]="true"></igx-pivot-grid> * ``` */ autoGenerateConfig: boolean; set pivotUI(value: IPivotUISettings); get pivotUI(): IPivotUISettings; /** * @hidden @internal */ role: string; /** * Enables a super compact theme for the component. * @remarks * Overrides the grid size option if one is set. * @example * ```html * <igx-pivot-grid [superCompactMode]="true"></igx-pivot-grid> * ``` */ get superCompactMode(): boolean; set superCompactMode(value: boolean); /** @hidden @internal */ get gridSize(): Size; /** * Gets/Sets the values clone strategy of the pivot grid when assigning them to different dimensions. * * @example * ```html * <igx-pivot-grid #grid [data]="localData" [pivotValueCloneStrategy]="customCloneStrategy"></igx-pivot-grid> * ``` * @hidden @internal */ get pivotValueCloneStrategy(): IDataCloneStrategy; set pivotValueCloneStrategy(strategy: IDataCloneStrategy); /** * @hidden @internal */ recordTemplate: TemplateRef<any>; /** * @hidden @internal */ headerTemplate: TemplateRef<any>; /** * @hidden @internal */ rowDimensionContainer: QueryList<ElementRef<any>>; /** * @hidden @internal */ resizeLine: IgxPivotGridColumnResizerComponent; /** * @hidden @internal */ excelStyleFilteringComponents: QueryList<IgxGridExcelStyleFilteringComponent>; /** * @hidden @internal */ protected rowDimensionContentCollection: QueryList<IgxPivotRowDimensionContentComponent>; /** * @hidden @internal */ get minColumnWidth(): 200 | 104; /** * @hidden @internal */ verticalRowDimScrollContainers: QueryList<IgxGridForOfDirective<any, any[]>>; /** * @hidden @internal */ rowDimensionMrlRowsCollection: QueryList<IgxPivotRowDimensionMrlRowComponent>; /** * @hidden @internal */ addRowEmptyTemplate: TemplateRef<void>; /** * @hidden @internal */ autoGenerateExclude: string[]; /** * @hidden @internal */ snackbarDisplayTime: number; /** * @hidden @internal */ cellEdit: EventEmitter<IGridEditEventArgs>; /** * @hidden @internal */ cellEditDone: EventEmitter<IGridEditDoneEventArgs>; /** * @hidden @internal */ cellEditEnter: EventEmitter<IGridEditEventArgs>; /** * @hidden @internal */ cellEditExit: EventEmitter<IGridEditDoneEventArgs>; /** * @hidden @internal */ columnMovingStart: EventEmitter<IColumnMovingStartEventArgs>; /** * @hidden @internal */ columnMoving: EventEmitter<IColumnMovingEventArgs>; /** * @hidden @internal */ columnMovingEnd: EventEmitter<IColumnMovingEndEventArgs>; /** * @hidden @internal */ columnPin: EventEmitter<IPinColumnCancellableEventArgs>; /** * @hidden @internal */ columnPinned: EventEmitter<IPinColumnEventArgs>; /** * @hidden @internal */ rowAdd: EventEmitter<IRowDataCancelableEventArgs>; /** * @hidden @internal */ rowAdded: EventEmitter<IRowDataEventArgs>; /** * @hidden @internal */ rowDeleted: EventEmitter<IRowDataEventArgs>; /** * @hidden @internal */ rowDelete: EventEmitter<IRowDataCancelableEventArgs>; /** * @hidden @internal */ rowDragStart: EventEmitter<IRowDragStartEventArgs>; /** * @hidden @internal */ rowDragEnd: EventEmitter<IRowDragEndEventArgs>; /** * @hidden @internal */ rowEditEnter: EventEmitter<IGridEditEventArgs>; /** * @hidden @internal */ rowEdit: EventEmitter<IGridEditEventArgs>; /** * @hidden @internal */ rowEditDone: EventEmitter<IGridEditDoneEventArgs>; /** * @hidden @internal */ rowEditExit: EventEmitter<IGridEditDoneEventArgs>; /** * @hidden @internal */ rowPinning: EventEmitter<IPinRowEventArgs>; /** * @hidden @internal */ rowPinned: EventEmitter<IPinRowEventArgs>; /** @hidden @internal */ columnGroupStates: Map<string, boolean>; /** @hidden @internal */ dimensionDataColumns: any[]; /** @hidden @internal */ get pivotKeys(): { aggregations: string; records: string; children: string; level: string; rowDimensionSeparator: string; columnDimensionSeparator: string; }; /** @hidden @internal */ get type(): GridType["type"]; /** * @hidden @internal */ dragRowID: any; /** * @hidden @internal */ get rootSummariesEnabled(): boolean; /** * @hidden @internal */ rowDimensionResizing: boolean; private _emptyRowDimension; /** * @hidden @internal */ get emptyRowDimension(): IPivotDimension; protected _pivotValueCloneStrategy: IDataCloneStrategy; protected _defaultExpandState: boolean; protected _filterStrategy: IFilteringStrategy; protected regroupTrigger: number; private _data; private _pivotConfiguration; private p_id; private _superCompactMode; private _pivotUI; private _sortableColumns; private _visibleRowDimensions; private _shouldUpdateSizes; /** * Gets/Sets the default expand state for all rows. */ get defaultExpandState(): boolean; set defaultExpandState(val: boolean); /** * @hidden @internal */ get pagingMode(): GridPagingMode; set pagingMode(_val: GridPagingMode); /** * @hidden @internal */ get hideRowSelectors(): boolean; set hideRowSelectors(_value: boolean); /** * @hidden @internal */ autoGenerate: boolean; /** * @hidden @internal */ get actionStrip(): any; /** * @hidden @internal * @deprecated in version 18.2.0. This property is no longer supported. */ get shouldGenerate(): boolean; set shouldGenerate(value: boolean); /** * @hidden @internal */ moving: boolean; /** * @hidden @internal */ toolbarExporting: EventEmitter<IGridToolbarExportEventArgs>; /** * @hidden @internal */ get rowDraggable(): boolean; set rowDraggable(_val: boolean); /** * @hidden @internal */ get allowAdvancedFiltering(): boolean; set allowAdvancedFiltering(_value: boolean); /** * @hidden @internal */ get filterMode(): FilterMode; set filterMode(_value: FilterMode); /** * @hidden @internal */ get allowFiltering(): boolean; set allowFiltering(_value: boolean); /** * @hidden @internal */ get page(): number; set page(_val: number); /** * @hidden @internal */ get perPage(): number; set perPage(_val: number); /** * @hidden @internal */ get pinnedColumns(): IgxColumnComponent[]; /** * @hidden @internal */ get unpinnedColumns(): IgxColumnComponent[]; /** * @hidden @internal */ get unpinnedDataView(): any[]; /** * @hidden @internal */ get unpinnedWidth(): number; /** * @hidden @internal */ get pinnedWidth(): number; /** * @hidden @internal */ set summaryRowHeight(_value: number); get summaryRowHeight(): number; /** * @hidden @internal */ get transactions(): TransactionService<Transaction, State>; /** * @hidden @internal */ get dragIndicatorIconTemplate(): TemplateRef<any>; set dragIndicatorIconTemplate(_val: TemplateRef<any>); /** * @hidden @internal */ get rowEditable(): boolean; set rowEditable(_val: boolean); /** * @hidden @internal */ get pinning(): {}; set pinning(_value: {}); /** * @hidden @internal */ get summaryPosition(): GridSummaryPosition; set summaryPosition(_value: GridSummaryPosition); /** * @hidden @interal */ get summaryCalculationMode(): GridSummaryCalculationMode; set summaryCalculationMode(_value: GridSummaryCalculationMode); /** * @hidden @interal */ get showSummaryOnCollapse(): boolean; set showSummaryOnCollapse(_value: boolean); /** * @hidden @internal */ get hiddenColumnsCount(): any; /** * @hidden @internal */ get pinnedColumnsCount(): any; /** * @hidden @internal */ get batchEditing(): boolean; set batchEditing(_val: boolean); get selectedRows(): any[]; constructor(validationService: IgxGridValidationService, selectionService: IgxGridSelectionService, colResizingService: IgxPivotColumnResizingService, gridAPI: GridBaseAPIService<IgxGridBaseDirective & GridType>, transactionFactory: IgxFlatTransactionFactory, elementRef: ElementRef<HTMLElement>, zone: NgZone, document: any, cdr: ChangeDetectorRef, differs: IterableDiffers, viewRef: ViewContainerRef, injector: Injector, envInjector: EnvironmentInjector, navigation: IgxPivotGridNavigationService, filteringService: IgxFilteringService, textHighlightService: IgxTextHighlightService, overlayService: IgxOverlayService, summaryService: IgxGridSummaryService, localeId: string, platform: PlatformUtil, _diTransactions?: TransactionService<Transaction, State>); /** * @hidden */ ngOnInit(): void; /** * @hidden */ ngAfterContentInit(): void; /** * @hidden @internal */ ngAfterViewInit(): void; /** * @hidden @internal */ ngOnChanges(changes: SimpleChanges): void; /** * Notifies for dimension change. */ notifyDimensionChange(regenerateColumns?: boolean): void; /** * Gets the full list of dimensions. * * @example * ```typescript * const dimensions = this.grid.allDimensions; * ``` */ get allDimensions(): IPivotDimension[]; protected get allVisibleDimensions(): IPivotDimension[]; protected get shouldResize(): boolean; /** @hidden @internal */ createFilterESF(dropdown: any, column: ColumnType, options: OverlaySettings, shouldReatach: boolean): { id: any; ref: any; }; /** @hidden */ featureColumnsWidth(): number; /** * Gets/Sets the value of the `id` attribute. * * @remarks * If not provided it will be automatically generated. * @example * ```html * <igx-pivot-grid [id]="'igx-pivot-1'" [data]="Data"></igx-pivot-grid> * ``` */ get id(): string; set id(value: string); /** * Gets/Sets the array of data that populates the component. * ```html * <igx-pivot-grid [data]="Data"></igx-pivot-grid> * ``` */ set data(value: any[] | null); /** * Returns an array of data set to the component. * ```typescript * let data = this.grid.data; * ``` */ get data(): any[] | null; /** * @hidden */ getContext(rowData: any, rowIndex: any): any; /** * @hidden @internal */ get pivotRowWidths(): number; /** * @hidden @internal */ rowDimensionWidth(dim: any): string; /** * @hidden @internal */ rowDimensionWidthToPixels(dim: IPivotDimension): number; /** * @hidden @internal */ reverseDimensionWidthToPercent(width: number): number; /** @hidden @internal */ get pivotContentCalcWidth(): number; /** @hidden @internal */ get pivotPinnedWidth(): number; /** @hidden @internal */ get pivotUnpinnedWidth(): number; /** @hidden @internal */ get rowDimensions(): IPivotDimension[]; /** @hidden @internal */ set visibleRowDimensions(value: IPivotDimension[]); get visibleRowDimensions(): IPivotDimension[]; /** @hidden @internal */ get columnDimensions(): IPivotDimension[]; /** @hidden @internal */ get filterDimensions(): IPivotDimension[]; /** @hidden @internal */ get values(): IPivotValue[]; toggleColumn(col: IgxColumnComponent): void; /** * @hidden @internal */ isRecordPinnedByIndex(_rowIndex: number): any; /** * @hidden @internal */ toggleColumnVisibility(_args: IColumnVisibilityChangedEventArgs): void; /** * @hidden @internal */ expandAll(): void; /** * @hidden @internal */ collapseAll(): void; /** * @hidden @internal */ expandRow(_rowID: any): void; /** * @hidden @internal */ collapseRow(_rowID: any): void; /** * @hidden @internal */ get pinnedRows(): IgxGridRowComponent[]; /** * @hidden @internal */ get totalRecords(): number; set totalRecords(_total: number); /** * @hidden @internal */ moveColumn(_column: IgxColumnComponent, _target: IgxColumnComponent, _pos?: DropPosition): void; /** * @hidden @internal */ addRow(_data: any): void; /** * @hidden @internal */ deleteRow(_rowSelector: any): any; /** * @hidden @internal */ updateCell(_value: any, _rowSelector: any, _column: string): void; /** * @hidden @internal */ updateRow(_value: any, _rowSelector: any): void; /** * @hidden @internal */ enableSummaries(..._rest: any[]): void; /** * @hidden @internal */ disableSummaries(..._rest: any[]): void; /** * @hidden @internal */ pinColumn(_columnName: string | IgxColumnComponent, _index?: any): boolean; /** * @hidden @internal */ unpinColumn(_columnName: string | IgxColumnComponent, _index?: any): boolean; /** * @hidden @internal */ pinRow(_rowID: any, _index?: number, _row?: RowType): boolean; /** * @hidden @internal */ unpinRow(_rowID: any, _row?: RowType): boolean; /** * @hidden @internal */ get pinnedRowHeight(): void; /** * @hidden @internal */ get hasEditableColumns(): boolean; /** * @hidden @internal */ get hasSummarizedColumns(): boolean; /** * @hidden @internal */ get hasMovableColumns(): boolean; /** * @hidden @internal */ get pinnedDataView(): any[]; /** * @hidden @internal */ openAdvancedFilteringDialog(_overlaySettings?: OverlaySettings): void; /** * @hidden @internal */ closeAdvancedFilteringDialog(_applyChanges: boolean): void; /** * @hidden @internal */ endEdit(_commit?: boolean, _event?: Event): boolean; /** * @hidden @internal */ beginAddRowById(_rowID: any, _asChild?: boolean): void; /** * @hidden @internal */ beginAddRowByIndex(_index: number): void; /** * @hidden @internal */ clearSearch(): void; /** * @hidden @internal */ refreshSearch(_updateActiveInfo?: boolean, _endEdit?: boolean): number; /** * @hidden @internal */ findNext(_text: string, _caseSensitive?: boolean, _exactMatch?: boolean): number; /** * @hidden @internal */ findPrev(_text: string, _caseSensitive?: boolean, _exactMatch?: boolean): number; /** * @hidden @internal */ getNextCell(currRowIndex: number, curVisibleColIndex: number, callback?: (IgxColumnComponent: any) => boolean): ICellPosition; /** * @hidden @internal */ getPreviousCell(currRowIndex: number, curVisibleColIndex: number, callback?: (IgxColumnComponent: any) => boolean): ICellPosition; /** * @hidden @internal */ getPinnedWidth(takeHidden?: boolean): number; /** * @hidden @internal */ get totalHeight(): number; getColumnGroupExpandState(col: IgxColumnComponent): boolean; toggleRowGroup(col: IgxColumnComponent, newState: boolean): void; /** * @hidden @internal */ setupColumns(): void; /** * @hidden @internal */ dataRebinding(event: IForOfDataChangingEventArgs): void; /** * Auto-sizes row dimension cells. * * @remarks * Only sizes based on the dimension cells in view. * @example * ```typescript * this.grid.autoSizeRowDimension(dimension); * ``` * @param dimension The row dimension to size. */ autoSizeRowDimension(dimension: IPivotDimension): void; /** * Inserts dimension in target collection by type at specified index or at the collection's end. * * @example * ```typescript * this.grid.insertDimensionAt(dimension, PivotDimensionType.Row, 1); * ``` * @param dimension The dimension that will be added. * @param targetCollectionType The target collection type to add to. Can be Row, Column or Filter. * @param index The index in the collection at which to add. * This parameter is optional. If not set it will add it to the end of the collection. */ insertDimensionAt(dimension: IPivotDimension, targetCollectionType: PivotDimensionType, index?: number): void; /** * Move dimension from its currently collection to the specified target collection by type at specified index or at the collection's end. * * @example * ```typescript * this.grid.moveDimension(dimension, PivotDimensionType.Row, 1); * ``` * @param dimension The dimension that will be moved. * @param targetCollectionType The target collection type to move it to. Can be Row, Column or Filter. * @param index The index in the collection at which to add. * This parameter is optional. If not set it will add it to the end of the collection. */ moveDimension(dimension: IPivotDimension, targetCollectionType: PivotDimensionType, index?: number): void; /** * Removes dimension from its currently collection. * @remarks * This is different than toggleDimension that enabled/disables the dimension. * This completely removes the specified dimension from the collection. * @example * ```typescript * this.grid.removeDimension(dimension); * ``` * @param dimension The dimension to be removed. */ removeDimension(dimension: IPivotDimension): void; /** * Toggles the dimension's enabled state on or off. * @remarks * The dimension remains in its current collection. This just changes its enabled state. * @example * ```typescript * this.grid.toggleDimension(dimension); * ``` * @param dimension The dimension to be toggled. */ toggleDimension(dimension: IPivotDimension): void; /** * Inserts value at specified index or at the end. * * @example * ```typescript * this.grid.insertValueAt(value, 1); * ``` * @param value The value definition that will be added. * @param index The index in the collection at which to add. * This parameter is optional. If not set it will add it to the end of the collection. */ insertValueAt(value: IPivotValue, index?: number): void; /** * Move value from its currently at specified index or at the end. * * @example * ```typescript * this.grid.moveValue(value, 1); * ``` * @param value The value that will be moved. * @param index The index in the collection at which to add. * This parameter is optional. If not set it will add it to the end of the collection. */ moveValue(value: IPivotValue, index?: number): void; /** * Removes value from collection. * @remarks * This is different than toggleValue that enabled/disables the value. * This completely removes the specified value from the collection. * @example * ```typescript * this.grid.removeValue(dimension); * ``` * @param value The value to be removed. */ removeValue(value: IPivotValue): void; /** * Toggles the value's enabled state on or off. * @remarks * The value remains in its current collection. This just changes its enabled state. * @example * ```typescript * this.grid.toggleValue(value); * ``` * @param value The value to be toggled. */ toggleValue(value: IPivotValue): void; /** * Sort the dimension and its children in the provided direction. * @example * ```typescript * this.grid.sortDimension(dimension, SortingDirection.Asc); * ``` * @param value The value to be toggled. */ sortDimension(dimension: IPivotDimension, sortDirection: SortingDirection): void; /** * Filters a single `IPivotDimension`. * * @example * ```typescript * public filter() { * const set = new Set(); * set.add('Value 1'); * set.add('Value 2'); * this.grid1.filterDimension(this.pivotConfigHierarchy.rows[0], set, IgxStringFilteringOperand.instance().condition('in')); * } * ``` */ filterDimension(dimension: IPivotDimension, value: any, conditionOrExpressionTree?: IFilteringOperation | IFilteringExpressionsTree): void; /** * @hidden @internal */ getRowDimensionByName(memberName: string): any; /** * @hidden @internal */ getDimensionsByType(dimension: PivotDimensionType): IPivotDimension[]; /** * @hidden @internal */ resizeRowDimensionPixels(dimension: IPivotDimension, newWidth: number): void; protected _removeDimensionInternal(dimension: any): void; protected getDimensionType(dimension: IPivotDimension): PivotDimensionType; protected getPivotRowHeaderContentWidth(headerGroup: IgxPivotRowHeaderGroupComponent): number; protected getLargesContentWidth(contents: ElementRef[]): string; /** @hidden @internal */ get hasHorizontalLayout(): boolean; /** * @hidden */ get hasMultipleValues(): boolean; /** * @hidden */ get excelStyleFilterMaxHeight(): string; /** * @hidden */ get excelStyleFilterMinHeight(): string; /** @hidden @internal */ get activeDescendant(): string; protected resolveToggle(groupColumn: IgxColumnComponent, state: boolean): void; protected buildDataView(data: any[]): void; /** * @hidden @internal */ protected getDataBasedBodyHeight(): number; protected horizontalScrollHandler(event: any): void; protected verticalScrollHandler(event: any): void; /** * @hidden */ protected autogenerateColumns(): void; protected generateDimensionColumns(): IgxColumnComponent[]; protected calculateGridSizes(recalcFeatureWidth?: boolean): void; protected getContentCollection(dimenstion: IPivotDimension): any; protected autoSizeDimensionsInView(): void; /** @hidden @internal */ get hasDimensionsToAutosize(): boolean; protected generateFromData(fields: string[]): Map<string, any>; protected generateColumnHierarchy(fields: Map<string, any>, data: any, parent?: any): IgxColumnComponent[]; protected generateConfig(): void; protected createColumnForDimension(value: any, data: any, parent: ColumnType, isGroup: boolean): IgxColumnGroupComponent; protected resolveColumnDimensionWidth(dim: IPivotDimension): string; protected getMeasureChildren(data: any, parent: any, hidden: any, parentWidth: any): any[]; /** * @hidden @internal */ defaultEmptyPivotGridTemplate: TemplateRef<any>; /** * Gets/Sets a custom template when pivot grid is empty. * * @example * ```html * <igx-pivot-grid [emptyPivotGridTemplate]="myTemplate"><igx-pivot-grid> * ``` */ emptyPivotGridTemplate: TemplateRef<void>; /** * @hidden @internal */ get template(): TemplateRef<any>; private emitInitEvents; protected rowDimensionByName(memberName: string): IPivotDimension; protected calculateResizerTop(): any; protected updateDefaultRowHeight(): void; static ɵfac: i0.ɵɵFactoryDeclaration<IgxPivotGridComponent, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, { optional: true; }]>; static ɵcmp: i0.ɵɵComponentDeclaration<IgxPivotGridComponent, "igx-pivot-grid", never, { "valueChipTemplate": { "alias": "valueChipTemplate"; "required": false; }; "rowDimensionHeaderTemplate": { "alias": "rowDimensionHeaderTemplate"; "required": false; }; "pivotConfiguration": { "alias": "pivotConfiguration"; "required": false; }; "autoGenerateConfig": { "alias": "autoGenerateConfig"; "required": false; }; "pivotUI": { "alias": "pivotUI"; "required": false; }; "superCompactMode": { "alias": "superCompactMode"; "required": false; }; "pivotValueCloneStrategy": { "alias": "pivotValueCloneStrategy"; "required": false; }; "addRowEmptyTemplate": { "alias": "addRowEmptyTemplate"; "required": false; }; "autoGenerateExclude": { "alias": "autoGenerateExclude"; "required": false; }; "snackbarDisplayTime": { "alias": "snackbarDisplayTime"; "required": false; }; "defaultExpandState": { "alias": "defaultExpandState"; "required": false; }; "pagingMode": { "alias": "pagingMode"; "required": false; }; "hideRowSelectors": { "alias": "hideRowSelectors"; "required": false; }; "rowDraggable": { "alias": "rowDraggable"; "required": false; }; "allowAdvancedFiltering": { "alias": "allowAdvancedFiltering"; "required": false; }; "filterMode": { "alias": "filterMode"; "required": false; }; "allowFiltering": { "alias": "allowFiltering"; "required": false; }; "page": { "alias": "page"; "required": false; }; "perPage": { "alias": "perPage"; "required": false; }; "summaryRowHeight": { "alias": "summaryRowHeight"; "required": false; }; "rowEditable": { "alias": "rowEditable"; "required": false; }; "pinning": { "alias": "pinning"; "required": false; }; "summaryPosition": { "alias": "summaryPosition"; "required": false; }; "summaryCalculationMode": { "alias": "summaryCalculationMode"; "required": false; }; "showSummaryOnCollapse": { "alias": "showSummaryOnCollapse"; "required": false; }; "batchEditing": { "alias": "batchEditing"; "required": false; }; "id": { "alias": "id"; "required": false; }; "data": { "alias": "data"; "required": false; }; "totalRecords": { "alias": "totalRecords"; "required": false; }; "emptyPivotGridTemplate": { "alias": "emptyPivotGridTemplate"; "required": false; }; }, { "dimensionsChange": "dimensionsChange"; "pivotConfigurationChange": "pivotConfigurationChange"; "dimensionInit": "dimensionInit"; "valueInit": "valueInit"; "dimensionsSortingExpressionsChange": "dimensionsSortingExpressionsChange"; "valuesChange": "valuesChange"; "cellEdit": "cellEdit"; "cellEditDone": "cellEditDone"; "cellEditEnter": "cellEditEnter"; "cellEditExit": "cellEditExit"; "columnMovingStart": "columnMovingStart"; "columnMoving": "columnMoving"; "columnMovingEnd": "columnMovingEnd"; "columnPin": "columnPin"; "columnPinned": "columnPinned"; "rowAdd": "rowAdd"; "rowAdded": "rowAdded"; "rowDeleted": "rowDeleted"; "rowDelete": "rowDelete"; "rowDragStart": "rowDragStart"; "rowDragEnd": "rowDragEnd"; "rowEditEnter": "rowEditEnter"; "rowEdit": "rowEdit"; "rowEditDone": "rowEditDone"; "rowEditExit": "rowEditExit"; "rowPinning": "rowPinning"; "rowPinned": "rowPinned"; }, ["valueChipTemplateDirective", "rowDimensionHeaderDirective"], ["igx-grid-toolbar,igc-grid-toolbar", "igx-grid-footer,igc-grid-footer", "igx-grid-state,igc-grid-state"], true, never>; static ngAcceptInputType_autoGenerateConfig: unknown; static ngAcceptInputType_defaultExpandState: unknown; static ngAcceptInputType_hideRowSelectors: unknown; static ngAcceptInputType_rowDraggable: unknown; static ngAcceptInputType_allowAdvancedFiltering: unknown; static ngAcceptInputType_allowFiltering: unknown; static ngAcceptInputType_rowEditable: unknown; static ngAcceptInputType_showSummaryOnCollapse: unknown; static ngAcceptInputType_batchEditing: unknown; }