UNPKG

igniteui-angular

Version:

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

510 lines (509 loc) 15.1 kB
import { AfterViewInit, EventEmitter, TemplateRef } from '@angular/core'; import { ChangeDetectorRef, QueryList, ElementRef, OnDestroy } from '@angular/core'; import { IgxChipComponent } from '../chips/chip.component'; import { IQueryBuilderResourceStrings } from '../core/i18n/query-builder-resources'; import { PlatformUtil, trackByIdentity } from '../core/utils'; import { IExpressionTree, IFilteringExpressionsTree } from '../data-operations/filtering-expressions-tree'; import { IgxOverlayOutletDirective } from '../directives/toggle/toggle.directive'; import { FieldType, EntityType } from '../grids/common/grid.interface'; import { IgxSelectComponent } from '../select/select.component'; import { OverlaySettings } from '../services/overlay/utilities'; import { IComboSelectionChangingEventArgs } from "../combo/combo.component"; import { IChangeCheckboxEventArgs } from '../checkbox/checkbox-base.directive'; import { ISelectionEventArgs } from '../drop-down/drop-down.common'; import { IgxQueryBuilderSearchValueTemplateDirective } from './query-builder.directives'; import { IgxQueryBuilderComponent } from './query-builder.component'; import { IgxQueryBuilderDragService } from './query-builder-drag.service'; import { ExpressionGroupItem, ExpressionItem, ExpressionOperandItem } from './query-builder.common'; import * as i0 from "@angular/core"; /** @hidden */ export declare class IgxQueryBuilderTreeComponent implements AfterViewInit, OnDestroy { cdr: ChangeDetectorRef; dragService: IgxQueryBuilderDragService; protected platform: PlatformUtil; private elRef; protected _localeId: string; /** * @hidden @internal */ _expressionTree: IExpressionTree; /** * @hidden @internal */ _expressionTreeCopy: IExpressionTree; /** * @hidden @internal */ get getClass(): string; /** * Sets/gets the entities. */ entities: EntityType[]; /** * Sets/gets the parent query builder component. */ queryBuilder: IgxQueryBuilderComponent; /** * Sets/gets the search value template. */ searchValueTemplate: TemplateRef<IgxQueryBuilderSearchValueTemplateDirective>; /** * Returns the parent expression operand. */ get parentExpression(): ExpressionOperandItem; /** * Sets the parent expression operand. */ set parentExpression(value: ExpressionOperandItem); /** * Returns the fields. */ get fields(): FieldType[]; /** * Sets the fields. */ set fields(fields: FieldType[]); /** * Returns the expression tree. */ get expressionTree(): IExpressionTree; /** * Sets the expression tree. */ set expressionTree(expressionTree: IExpressionTree); /** * Gets the `locale` of the query builder. * If not set, defaults to application's locale. */ get locale(): string; /** * Sets the `locale` of the query builder. * Expects a valid BCP 47 language tag. */ set locale(value: string); /** * Sets the resource strings. * By default it uses EN resources. */ set resourceStrings(value: IQueryBuilderResourceStrings); /** * Returns the resource strings. */ get resourceStrings(): IQueryBuilderResourceStrings; /** * Gets/sets the expected return field. */ expectedReturnField: string; /** * Event fired as the expression tree is changed. */ expressionTreeChange: EventEmitter<IExpressionTree>; /** * Event fired if a nested query builder tree is being edited. */ inEditModeChange: EventEmitter<ExpressionOperandItem>; protected entitySelect: IgxSelectComponent; private editingInputs; private returnFieldsCombo; protected returnFieldSelect: IgxSelectComponent; private fieldSelect; private conditionSelect; private searchValueInput; private picker; private addRootAndGroupButton; private addConditionButton; private entityChangeDialog; private addExpressionItemDropDown; private groupContextMenuDropDown; /** * @hidden @internal */ expressionsChips: QueryList<IgxChipComponent>; protected set editingInputsContainer(value: ElementRef); /** @hidden */ protected get editingInputsContainer(): ElementRef; protected set currentGroupButtonsContainer(value: ElementRef); /** @hidden */ protected get currentGroupButtonsContainer(): ElementRef; private expressionsContainer; private overlayOutlet; private innerQueries; /** * @hidden @internal */ innerQueryNewExpressionTree: IExpressionTree; /** * @hidden @internal */ rootGroup: ExpressionGroupItem; /** * @hidden @internal */ selectedExpressions: ExpressionOperandItem[]; /** * @hidden @internal */ currentGroup: ExpressionGroupItem; /** * @hidden @internal */ contextualGroup: ExpressionGroupItem; /** * @hidden @internal */ filteringLogics: any; /** * @hidden @internal */ selectedCondition: string; /** * @hidden @internal */ searchValue: { value: any; }; /** * @hidden @internal */ pickerOutlet: IgxOverlayOutletDirective | ElementRef; /** * @hidden @internal */ prevFocusedExpression: ExpressionOperandItem; /** * @hidden @internal */ initialOperator: number; /** * @hidden @internal */ returnFieldSelectOverlaySettings: OverlaySettings; /** * @hidden @internal */ entitySelectOverlaySettings: OverlaySettings; /** * @hidden @internal */ fieldSelectOverlaySettings: OverlaySettings; /** * @hidden @internal */ conditionSelectOverlaySettings: OverlaySettings; /** * @hidden @internal */ addExpressionDropDownOverlaySettings: OverlaySettings; /** * @hidden @internal */ groupContextMenuDropDownOverlaySettings: OverlaySettings; private destroy$; private _timeoutId; private _lastFocusedChipIndex; private _focusDelay; private _parentExpression; private _selectedEntity; private _selectedReturnFields; private _selectedField; private _editingInputsContainer; private _currentGroupButtonsContainer; private _addModeExpression; private _editedExpression; private _preventInit; private _prevFocusedContainer; private _expandedExpressions; private _fields; private _locale; private _entityNewValue; private _resourceStrings; /** * Returns if the select entity dropdown at the root level is disabled after the initial selection. */ get disableEntityChange(): boolean; /** * Returns if the fields combo at the root level is disabled. */ get disableReturnFieldsChange(): boolean; /** * Returns the current level. */ get level(): number; private _positionSettings; private _overlaySettings; /** @hidden */ protected isAdvancedFiltering(): boolean; /** @hidden */ protected isHierarchicalNestedQuery(): boolean; /** @hidden */ protected isSearchValueInputDisabled(): boolean; constructor(cdr: ChangeDetectorRef, dragService: IgxQueryBuilderDragService, platform: PlatformUtil, elRef: ElementRef, _localeId: string); /** * @hidden @internal */ ngAfterViewInit(): void; /** * @hidden @internal */ ngOnDestroy(): void; /** * @hidden @internal */ set selectedEntity(value: string); /** * @hidden @internal */ get selectedEntity(): EntityType; /** * @hidden @internal */ onEntitySelectChanging(event: ISelectionEventArgs): void; /** * @hidden */ onShowEntityChangeDialogChange(eventArgs: IChangeCheckboxEventArgs): void; /** * @hidden */ onEntityChangeCancel(): void; /** * @hidden */ onEntityChangeConfirm(): void; /** * @hidden @internal */ set selectedReturnFields(value: string[]); /** * @hidden @internal */ get selectedReturnFields(): string[]; /** * @hidden @internal */ set selectedField(value: FieldType); /** * @hidden @internal */ get selectedField(): FieldType; /** * @hidden @internal * * used by the grid */ setPickerOutlet(outlet?: IgxOverlayOutletDirective | ElementRef): void; /** * @hidden @internal * * used by the grid */ get isContextMenuVisible(): boolean; /** * @hidden @internal */ get hasEditedExpression(): boolean; /** * @hidden @internal */ addCondition(parent: ExpressionGroupItem, afterExpression?: ExpressionOperandItem, isUIInteraction?: boolean): void; /** * @hidden @internal */ addReverseGroup(parent?: ExpressionGroupItem, afterExpression?: ExpressionItem): void; /** * @hidden @internal */ endGroup(groupItem: ExpressionGroupItem): void; /** * @hidden @internal */ commitExpression(): void; /** * @hidden @internal */ discardExpression(expressionItem?: ExpressionOperandItem): void; /** * @hidden @internal */ commitOperandEdit(): void; /** * @hidden @internal */ cancelOperandAdd(): void; /** * @hidden @internal */ deleteItem: (expressionItem: ExpressionItem, skipEmit?: boolean) => void; /** * @hidden @internal */ cancelOperandEdit(): void; /** * @hidden @internal */ operandCanBeCommitted(): boolean; /** * @hidden @internal */ canCommitCurrentState(): boolean; /** * @hidden @internal */ commitCurrentState(): void; /** * @hidden @internal */ exitEditAddMode(shouldPreventInit?: boolean): void; /** * @hidden @internal * * used by the grid */ exitOperandEdit(): void; /** * @hidden @internal */ isExpressionGroup(expression: ExpressionItem): boolean; /** * @hidden @internal */ onExpressionFocus(expressionItem: ExpressionOperandItem): void; /** * @hidden @internal */ onExpressionBlur(event: any, expressionItem: ExpressionOperandItem): void; /** * @hidden @internal */ onChipRemove(expressionItem: ExpressionItem): void; /** * @hidden @internal */ focusChipAfterDrag: (index: number) => void; /** * @hidden @internal */ addExpressionBlur(): void; /** * @hidden @internal */ onChipClick(expressionItem: ExpressionOperandItem, chip: IgxChipComponent): void; /** * @hidden @internal */ enterExpressionEdit(expressionItem: ExpressionOperandItem, chip?: IgxChipComponent): void; /** * @hidden @internal */ clickExpressionAdd(targetButton: HTMLElement, chip: IgxChipComponent): void; /** * @hidden @internal */ openExpressionAddDialog(targetButton: HTMLElement): void; /** * @hidden @internal */ enterExpressionAdd(event: ISelectionEventArgs, expressionItem: ExpressionOperandItem): void; /** * @hidden @internal */ enterEditMode(expressionItem: ExpressionOperandItem): void; /** * @hidden @internal */ onConditionSelectChanging(event: ISelectionEventArgs): void; /** * @hidden @internal */ onKeyDown(eventArgs: KeyboardEvent): void; /** * @hidden @internal */ onGroupClick(groupContextMenuDropDown: any, targetButton: HTMLButtonElement, groupItem: ExpressionGroupItem): void; /** * @hidden @internal */ getOperator(expressionItem: any): any; /** * @hidden @internal */ getSwitchGroupText(expressionItem: any): string; /** * @hidden @internal */ onGroupContextMenuDropDownSelectionChanging(event: ISelectionEventArgs): void; /** * @hidden @internal */ ungroup(): void; /** * @hidden @internal */ selectFilteringLogic(index: number): void; /** * @hidden @internal */ getConditionFriendlyName(name: string): string; /** * @hidden @internal */ isDate(value: any): value is Date; /** * @hidden @internal */ invokeClick(eventArgs: KeyboardEvent): void; /** * @hidden @internal */ openPicker(args: KeyboardEvent): void; /** * @hidden @internal */ onOutletPointerDown(event: any): void; /** * @hidden @internal */ getConditionList(): string[]; /** * @hidden @internal */ getFormatter(field: string): (value: any, rowData?: any) => any; /** * @hidden @internal */ getFormat(field: string): string; /** * @hidden @internal * * used by the grid */ setAddButtonFocus(): void; /** * @hidden @internal */ context(expression: ExpressionItem, afterExpression?: ExpressionItem): { $implicit: ExpressionItem; afterExpression: ExpressionItem; }; formatReturnFields(innerTree: IFilteringExpressionsTree): string; isInEditMode(): boolean; onInEditModeChanged(expressionItem: ExpressionOperandItem): void; getExpressionTreeCopy(expressionTree: IExpressionTree, shouldAssignInnerQueryExprTree?: boolean): IExpressionTree; onSelectAllClicked(): void; onReturnFieldSelectChanging(event: IComboSelectionChangingEventArgs | ISelectionEventArgs): void; initExpressionTree(selectedEntityName: string, selectedReturnFields: string[]): void; getSearchValueTemplateContext(defaultSearchValueTemplate: any): any; private getPipeArgs; private selectDefaultCondition; private getFilters; private addGroup; private createExpressionGroupItem; private createExpressionTreeFromGroupItem; private scrollElementIntoView; private focusEditedExpressionChip; private init; /** rootGroup is recreated after clicking Apply, which sets new expressionTree and calls init()*/ protected trackExpressionItem: typeof trackByIdentity; static ɵfac: i0.ɵɵFactoryDeclaration<IgxQueryBuilderTreeComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<IgxQueryBuilderTreeComponent, "igx-query-builder-tree", never, { "entities": { "alias": "entities"; "required": false; }; "queryBuilder": { "alias": "queryBuilder"; "required": false; }; "searchValueTemplate": { "alias": "searchValueTemplate"; "required": false; }; "parentExpression": { "alias": "parentExpression"; "required": false; }; "fields": { "alias": "fields"; "required": false; }; "expressionTree": { "alias": "expressionTree"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "resourceStrings": { "alias": "resourceStrings"; "required": false; }; "expectedReturnField": { "alias": "expectedReturnField"; "required": false; }; }, { "expressionTreeChange": "expressionTreeChange"; "inEditModeChange": "inEditModeChange"; }, never, never, true, never>; }