UNPKG

@easyquery/ui

Version:

EasyQuery.JS Community UI widgets

78 lines (77 loc) 3.05 kB
import { Widget, EqContext, Condition, Expression, Query } from '@easyquery/core'; import { PopupMenu, PopupMenuOptions } from '../utils/popup_menu'; import { ConditionsEditMode, QueryPanelOptions } from './widget_options'; import { ConditionRenderer } from './renderers/querypanel/condition_renderer'; import { ExpressionRenderer } from './renderers/querypanel/expression_renderer'; import { BaseElementRenderer } from './renderers/base_element_renderer'; /** * The query panel wiget, implemented without JQuery. */ export declare class QueryPanel extends Widget { options: QueryPanelOptions; private addRowElement; private rootContainer; private progressBlock; private entitiesMenu; private conditionMenu; private groupMenu; private rootGroupMenu; private linkTypeMenu; private queryEventCallbackId; private customQuery; protected get cssPrefix(): string; /** * The default constructor. * @param slot The html element. */ constructor(slot: HTMLElement, customQuery?: Query); getWidgetType(): string; /** * Initialize widget. * @param context The context. * @param options The options. */ init(context: EqContext, options?: QueryPanelOptions): void; private convertEditModelToEditableParts; protected destroyCore(): void; getEntitiesMenu(): PopupMenu; getConditionMenu(): PopupMenu; getLinkTypeMenu(): PopupMenu; getConditionGroupMenu(isRoot?: boolean): PopupMenu; private attachQueryObserver; private detachQueryObserver; getQuery(): Query; /** * Gets `true` if the query panel is in read-only mode. Otherwise - `false`. */ isReadOnly(): boolean; /** * Gets `true` if the query panel is in FixedList edit mode. Otherwise - `false`. */ isFixed(): boolean; /** * Gets or sets the current edit mode. When setting, automatically refreshes the widget. */ get editMode(): ConditionsEditMode; set editMode(value: ConditionsEditMode); protected refreshCore(): void; protected setOptions(options?: QueryPanelOptions): void; protected clear(): void; protected render(): void; getConditionRenderer(condition: Condition, slot?: HTMLDivElement): ConditionRenderer | null; getExpressionRenderer(expression: Expression, slot?: HTMLDivElement): ExpressionRenderer | null; getOperatorRenderer(condition: Condition, text: string, slot?: HTMLDivElement): BaseElementRenderer | null; getAddRowRenderer(slot?: HTMLDivElement): BaseElementRenderer | null; private createEntitiesMenu; showEntitiesMenu(options: PopupMenuOptions): void; private createConditionMenus; private createLinkTypeMenu; toggleConditionPicked(condition: Condition, force?: boolean): void; private landingSlot; private showLandingSlot; private hideLangindSlot; protected onProcessStartCore(): void; protected onProcessEndCore(): void; private renderProgressBlock; clonePanel(slot: HTMLElement, query: Query): QueryPanel; }