UNPKG

ngx-ntk-query-builder

Version:

Angular query builder

133 lines (126 loc) 5.42 kB
import * as i0 from '@angular/core'; import { OnInit, ModuleWithProviders } from '@angular/core'; import * as i3 from '@angular/forms'; import { ControlValueAccessor } from '@angular/forms'; import * as i4 from '@ngx-translate/core'; import { TranslateService } from '@ngx-translate/core'; import { HttpClient } from '@angular/common/http'; import * as i2 from '@angular/common'; interface QueryBuilderFieldMap { [key: string]: QueryField; } interface QueryBuilderSettings { allowRuleSets?: boolean; } interface QueryRule { field: string; type: string; operator: string; value?: any; } interface QueryRuleSet { condition: string; rules: Array<QueryRuleSet | QueryRule>; } interface QueryField { name: string; type: string; value?: string; options?: SelectOption[]; settings?: QueryFieldSettings; } interface QueryFieldSettings { nullableOperators?: boolean; emptyOperators?: boolean; } interface SelectOption { name: string; value: any; } declare class OperatorsService { private translate; readonly INPUT_TYPE_STRING = "string"; readonly INPUT_TYPE_INTEGER = "integer"; readonly INPUT_TYPE_DOUBLE = "double"; readonly INPUT_TYPE_TIME = "time"; readonly INPUT_TYPE_DATE = "date"; readonly INPUT_TYPE_SELECT = "select"; readonly INPUT_TYPE_BOOLEAN = "boolean"; readonly INPUT_TYPE_MULTI_SELECT = "multi_select"; readonly NULLABLE_OPERATORS: string[]; readonly EMPTY_OPERATORS: string[]; readonly MULTI_SELECT_OPERATORS: string[]; private readonly defaultOperator; private readonly operatorsMap; private readonly operatorsDisplayNames; private readonly operatorsDisplayNames___old; constructor(translate: TranslateService); getOperators(rule: QueryRule, fieldMap: QueryBuilderFieldMap): string[]; getDefaultOperator(): string; getOperatorsWithoutInput(): string[]; getOperatorDisplayName(operator: string): string; private getAvailableTypes; static ɵfac: i0.ɵɵFactoryDeclaration<OperatorsService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<OperatorsService>; } declare class TranslateUiService { private translateService; private http; private availableLanguages; private translationPath; constructor(translateService: TranslateService, http: HttpClient); init(language?: string): void; private loadTranslation; setLanguage(language: string): void; getCurrentLanguage(): string; getAvailableLanguages(): string[]; static ɵfac: i0.ɵɵFactoryDeclaration<TranslateUiService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<TranslateUiService>; } declare class NgxQueryBuilderComponent implements OnInit, ControlValueAccessor { translate: TranslateService; private translateUiService; operatorsService: OperatorsService; private _language; set language(value: string); get language(): string; fieldMap: QueryBuilderFieldMap; settings: QueryBuilderSettings; disabled: boolean; data: QueryRuleSet; parent: QueryRuleSet; index: number; constructor(translate: TranslateService, translateUiService: TranslateUiService, operatorsService: OperatorsService); ngOnInit(): void; /**** ControlValueAccessor START ****/ onChange: (data: QueryRuleSet) => void; onTouched: () => void; writeValue(data: any): void; registerOnChange(fn: (data: QueryRuleSet) => void): void; registerOnTouched(fn: () => void): void; setDisabledState(isDisabled: boolean): void; /**** ControlValueAccessor END ****/ addRule(): void; removeRule(index: number): void; addRuleSet(): void; removeRuleSet(index: number): void; changeCondition(value: string): void; changeField(rule: QueryRule, index: number): void; hasParentRuleSet(): boolean; getEmptyRuleSetData(): QueryRuleSet; getFields(): QueryField[]; getInputType(rule: QueryRule): string; getRuleOptions(rule: QueryRule): any; convertToRuleSet(model: QueryRuleSet | QueryRule): QueryRuleSet; convertToRule(model: QueryRuleSet | QueryRule): QueryRule; static ɵfac: i0.ɵɵFactoryDeclaration<NgxQueryBuilderComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<NgxQueryBuilderComponent, "ngx-ntk-query-builder", never, { "language": { "alias": "language"; "required": false; }; "fieldMap": { "alias": "fieldMap"; "required": false; }; "settings": { "alias": "settings"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "data": { "alias": "data"; "required": false; }; "parent": { "alias": "parent"; "required": false; }; "index": { "alias": "index"; "required": false; }; }, {}, never, never, false, never>; } declare class NgxNtkQueryBuilderModule { static forRoot(): ModuleWithProviders<NgxNtkQueryBuilderModule>; static ɵfac: i0.ɵɵFactoryDeclaration<NgxNtkQueryBuilderModule, never>; static ɵmod: i0.ɵɵNgModuleDeclaration<NgxNtkQueryBuilderModule, [typeof NgxQueryBuilderComponent], [typeof i2.CommonModule, typeof i3.FormsModule, typeof i4.TranslateModule], [typeof NgxQueryBuilderComponent]>; static ɵinj: i0.ɵɵInjectorDeclaration<NgxNtkQueryBuilderModule>; } export { NgxNtkQueryBuilderModule, NgxQueryBuilderComponent }; export type { QueryBuilderFieldMap, QueryBuilderSettings, QueryField, QueryFieldSettings, QueryRule, QueryRuleSet, SelectOption };