UNPKG

@syncfusion/ej2-angular-querybuilder

Version:
205 lines (198 loc) 12.1 kB
import { __decorate } from 'tslib'; import * as i0 from '@angular/core'; import { Directive, ContentChild, ContentChildren, Component, ChangeDetectionStrategy, NgModule } from '@angular/core'; import { ComplexBase, setValue, Template, ArrayBase, ComponentBase, ComponentMixins } from '@syncfusion/ej2-angular-base'; import { QueryBuilder, QueryLibrary } from '@syncfusion/ej2-querybuilder'; export * from '@syncfusion/ej2-querybuilder'; import { CommonModule } from '@angular/common'; let input = ['category', 'columns', 'field', 'format', 'label', 'operators', 'ruleTemplate', 'step', 'template', 'type', 'validation', 'value', 'values']; let outputs$1 = []; /** * `e-column` directive represent a column of the Angular QueryBuilder. * It must be contained in a QueryBuilder component(`ejs-querybuilder`). * ```html * <ejs-querybuilder [dataSource]='data'> * <e-columns> * <e-column field='ID' label='ID' type='number'></e-column> * <e-column field='Date' label='Date' type='date' format='dd/MM/yyyy'></e-column> * </e-columns> * </ejs-querybuilder> * ``` */ class ColumnDirective extends ComplexBase { constructor(viewContainerRef) { super(); this.viewContainerRef = viewContainerRef; setValue('currentInstance', this, this.viewContainerRef); this.registerEvents(outputs$1); this.directivePropList = input; } } ColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ColumnDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); ColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: ColumnDirective, selector: "ejs-querybuilder>e-columns>e-column", inputs: { category: "category", columns: "columns", field: "field", format: "format", label: "label", operators: "operators", ruleTemplate: "ruleTemplate", step: "step", template: "template", type: "type", validation: "validation", value: "value", values: "values" }, queries: [{ propertyName: "ruleTemplate", first: true, predicate: ["ruleTemplate"], descendants: true }, { propertyName: "template", first: true, predicate: ["template"], descendants: true }], usesInheritance: true, ngImport: i0 }); __decorate([ Template() ], ColumnDirective.prototype, "ruleTemplate", void 0); __decorate([ Template() ], ColumnDirective.prototype, "template", void 0); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ColumnDirective, decorators: [{ type: Directive, args: [{ selector: 'ejs-querybuilder>e-columns>e-column', inputs: input, outputs: outputs$1, queries: {} }] }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { ruleTemplate: [{ type: ContentChild, args: ['ruleTemplate'] }], template: [{ type: ContentChild, args: ['template'] }] } }); /** * Column Array Directive * @private */ class ColumnsDirective extends ArrayBase { constructor() { super('columns'); } } ColumnsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ColumnsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); ColumnsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: ColumnsDirective, selector: "ejs-querybuilder>e-columns", queries: [{ propertyName: "children", predicate: ColumnDirective }], usesInheritance: true, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ColumnsDirective, decorators: [{ type: Directive, args: [{ selector: 'ejs-querybuilder>e-columns', queries: { children: new ContentChildren(ColumnDirective) }, }] }], ctorParameters: function () { return []; } }); const inputs = ['addRuleToNewGroups', 'allowDragAndDrop', 'allowValidation', 'autoSelectField', 'autoSelectOperator', 'columns', 'cssClass', 'dataSource', 'displayMode', 'enableNotCondition', 'enablePersistence', 'enableRtl', 'enableSeparateConnector', 'fieldMode', 'fieldModel', 'headerTemplate', 'height', 'immediateModeDelay', 'locale', 'matchCase', 'maxGroupCount', 'operatorModel', 'readonly', 'rule', 'separator', 'showButtons', 'sortDirection', 'summaryView', 'valueModel', 'width']; const outputs = ['actionBegin', 'beforeChange', 'change', 'created', 'dataBound', 'ruleChange', 'drag', 'dragStart', 'drop']; const twoWays = ['']; /** * Represents the EJ2 Angular QueryBuilder Component. * ```html * <ejs-querybuilder></ejs-querybuilder> * ``` */ let QueryBuilderComponent = class QueryBuilderComponent extends QueryBuilder { constructor(ngEle, srenderer, viewContainerRef, injector) { super(); this.ngEle = ngEle; this.srenderer = srenderer; this.viewContainerRef = viewContainerRef; this.injector = injector; this.tags = ['columns']; this.element = this.ngEle.nativeElement; this.injectedModules = this.injectedModules || []; try { let mod = this.injector.get('QueryBuilderQueryLibrary'); if (this.injectedModules.indexOf(mod) === -1) { this.injectedModules.push(mod); } } catch { } this.registerEvents(outputs); this.addTwoWay.call(this, twoWays); setValue('currentInstance', this, this.viewContainerRef); this.context = new ComponentBase(); } ngOnInit() { this.context.ngOnInit(this); } ngAfterViewInit() { this.context.ngAfterViewInit(this); } ngOnDestroy() { this.context.ngOnDestroy(this); } ngAfterContentChecked() { this.tagObjects[0].instance = this.childColumns; this.context.ngAfterContentChecked(this); } }; QueryBuilderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); QueryBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QueryBuilderComponent, selector: "ejs-querybuilder", inputs: { addRuleToNewGroups: "addRuleToNewGroups", allowDragAndDrop: "allowDragAndDrop", allowValidation: "allowValidation", autoSelectField: "autoSelectField", autoSelectOperator: "autoSelectOperator", columns: "columns", cssClass: "cssClass", dataSource: "dataSource", displayMode: "displayMode", enableNotCondition: "enableNotCondition", enablePersistence: "enablePersistence", enableRtl: "enableRtl", enableSeparateConnector: "enableSeparateConnector", fieldMode: "fieldMode", fieldModel: "fieldModel", headerTemplate: "headerTemplate", height: "height", immediateModeDelay: "immediateModeDelay", locale: "locale", matchCase: "matchCase", maxGroupCount: "maxGroupCount", operatorModel: "operatorModel", readonly: "readonly", rule: "rule", separator: "separator", showButtons: "showButtons", sortDirection: "sortDirection", summaryView: "summaryView", valueModel: "valueModel", width: "width" }, outputs: { actionBegin: "actionBegin", beforeChange: "beforeChange", change: "change", created: "created", dataBound: "dataBound", ruleChange: "ruleChange", drag: "drag", dragStart: "dragStart", drop: "drop" }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ["headerTemplate"], descendants: true }, { propertyName: "childColumns", first: true, predicate: ColumnsDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); __decorate([ Template() ], QueryBuilderComponent.prototype, "headerTemplate", void 0); QueryBuilderComponent = __decorate([ ComponentMixins([ComponentBase]) ], QueryBuilderComponent); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderComponent, decorators: [{ type: Component, args: [{ selector: 'ejs-querybuilder', inputs: inputs, outputs: outputs, template: '', changeDetection: ChangeDetectionStrategy.OnPush, queries: { childColumns: new ContentChild(ColumnsDirective) } }] }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.Injector }]; }, propDecorators: { headerTemplate: [{ type: ContentChild, args: ['headerTemplate'] }] } }); /** * NgModule definition for the QueryBuilder component. */ class QueryBuilderModule { } QueryBuilderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); QueryBuilderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderModule, declarations: [QueryBuilderComponent, ColumnDirective, ColumnsDirective], imports: [CommonModule], exports: [QueryBuilderComponent, ColumnDirective, ColumnsDirective] }); QueryBuilderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderModule, imports: [[CommonModule]] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderModule, decorators: [{ type: NgModule, args: [{ imports: [CommonModule], declarations: [ QueryBuilderComponent, ColumnDirective, ColumnsDirective ], exports: [ QueryBuilderComponent, ColumnDirective, ColumnsDirective ] }] }] }); const QueryLibraryService = { provide: 'QueryBuilderQueryLibrary', useValue: QueryLibrary }; /** * NgModule definition for the QueryBuilder component with providers. */ class QueryBuilderAllModule { } QueryBuilderAllModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderAllModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); QueryBuilderAllModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderAllModule, imports: [CommonModule, QueryBuilderModule], exports: [QueryBuilderModule] }); QueryBuilderAllModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderAllModule, providers: [ QueryLibraryService ], imports: [[CommonModule, QueryBuilderModule], QueryBuilderModule] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QueryBuilderAllModule, decorators: [{ type: NgModule, args: [{ imports: [CommonModule, QueryBuilderModule], exports: [ QueryBuilderModule ], providers: [ QueryLibraryService ] }] }] }); /** * Generated bundle index. Do not edit. */ export { ColumnDirective, ColumnsDirective, QueryBuilderAllModule, QueryBuilderComponent, QueryBuilderModule, QueryLibraryService }; //# sourceMappingURL=syncfusion-ej2-angular-querybuilder.mjs.map