@recursyve/nice-data-filter-kit 12.1.29 → 13.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_index.scss +1 -7
- package/{esm2015/lib/api/dto/saved-reports.dto.js → esm2020/lib/api/dto/saved-reports.dto.mjs} +0 -0
- package/esm2020/lib/api/filter.api.mjs +51 -0
- package/{esm2015/lib/api/models/saved-reports.model.js → esm2020/lib/api/models/saved-reports.model.mjs} +0 -0
- package/{esm2015/lib/api/public-api.js → esm2020/lib/api/public-api.mjs} +0 -0
- package/esm2020/lib/api/saved-report.api.mjs +48 -0
- package/esm2020/lib/components/base-list/base-list.component.mjs +288 -0
- package/{esm2015/lib/components/base-list/base-list.constant.js → esm2020/lib/components/base-list/base-list.constant.mjs} +0 -0
- package/esm2020/lib/components/base-list/base-list.module.mjs +171 -0
- package/{esm2015/lib/components/base-list/directives/base-list-buttons.directive.js → esm2020/lib/components/base-list/directives/base-list-buttons.directive.mjs} +3 -3
- package/{esm2015/lib/components/base-list/directives/base-list-cards.directive.js → esm2020/lib/components/base-list/directives/base-list-cards.directive.mjs} +3 -3
- package/{esm2015/lib/components/base-list/directives/base-list-custom-content.directive.js → esm2020/lib/components/base-list/directives/base-list-custom-content.directive.mjs} +3 -3
- package/{esm2015/lib/components/base-list/directives/base-list-directives.module.js → esm2020/lib/components/base-list/directives/base-list-directives.module.mjs} +4 -4
- package/{esm2015/lib/components/base-list/directives/base-list-filters.directive.js → esm2020/lib/components/base-list/directives/base-list-filters.directive.mjs} +3 -3
- package/{esm2015/lib/components/base-list/directives/base-list-table.directive.js → esm2020/lib/components/base-list/directives/base-list-table.directive.mjs} +3 -3
- package/{esm2015/lib/components/base-list/directives/base-list-title.directive.js → esm2020/lib/components/base-list/directives/base-list-title.directive.mjs} +3 -3
- package/{esm2015/lib/components/base-list/models/columns.model.js → esm2020/lib/components/base-list/models/columns.model.mjs} +0 -0
- package/{esm2015/lib/components/base-list/models/export.model.js → esm2020/lib/components/base-list/models/export.model.mjs} +0 -0
- package/esm2020/lib/components/base-list/models/layout.model.mjs +149 -0
- package/esm2020/lib/components/base-list/providers/base-filter.service.mjs +34 -0
- package/{esm2015/lib/components/base-list/providers/base-list-saved-report.service.js → esm2020/lib/components/base-list/providers/base-list-saved-report.service.mjs} +3 -3
- package/{esm2015/lib/components/base-list/public-api.js → esm2020/lib/components/base-list/public-api.mjs} +0 -0
- package/esm2020/lib/components/base-list/store/base-list.query.mjs +35 -0
- package/esm2020/lib/components/base-list/store/base-list.service.mjs +341 -0
- package/esm2020/lib/components/base-list/store/base-list.store.mjs +81 -0
- package/{esm2015/lib/components/multi-state-list/models/list-states.model.js → esm2020/lib/components/multi-state-list/models/list-states.model.mjs} +0 -0
- package/esm2020/lib/components/multi-state-list/multi-state-list.component.mjs +71 -0
- package/{esm2015/lib/components/multi-state-list/multi-state-list.constant.js → esm2020/lib/components/multi-state-list/multi-state-list.constant.mjs} +0 -0
- package/{esm2015/lib/components/multi-state-list/multi-state-list.module.js → esm2020/lib/components/multi-state-list/multi-state-list.module.mjs} +6 -14
- package/{esm2015/lib/components/multi-state-list/providers/multi-state-filter.service.js → esm2020/lib/components/multi-state-list/providers/multi-state-filter.service.mjs} +0 -0
- package/{esm2015/lib/components/multi-state-list/public-api.js → esm2020/lib/components/multi-state-list/public-api.mjs} +0 -0
- package/{esm2015/lib/components/multi-state-list/store/multi-state-list.query.js → esm2020/lib/components/multi-state-list/store/multi-state-list.query.mjs} +3 -3
- package/{esm2015/lib/components/multi-state-list/store/multi-state-list.service.js → esm2020/lib/components/multi-state-list/store/multi-state-list.service.mjs} +5 -6
- package/esm2020/lib/components/multi-state-list/store/multi-state-list.store.mjs +24 -0
- package/{esm2015/lib/components/public-api.js → esm2020/lib/components/public-api.mjs} +0 -0
- package/esm2020/lib/components/query-builder/filter-selection/filter-selection.component.mjs +41 -0
- package/{esm2015/lib/components/query-builder/pipes/filter-group-icon.pipe.js → esm2020/lib/components/query-builder/pipes/filter-group-icon.pipe.mjs} +3 -3
- package/{esm2015/lib/components/query-builder/providers/filter-group.service.js → esm2020/lib/components/query-builder/providers/filter-group.service.mjs} +0 -0
- package/{esm2015/lib/components/query-builder/public-api.js → esm2020/lib/components/query-builder/public-api.mjs} +0 -0
- package/{esm2015/lib/components/query-builder/query-builder-trigger.directive.js → esm2020/lib/components/query-builder/query-builder-trigger.directive.mjs} +3 -3
- package/esm2020/lib/components/query-builder/query-builder.component.mjs +93 -0
- package/{esm2015/lib/components/query-builder/query-builder.form.js → esm2020/lib/components/query-builder/query-builder.form.mjs} +0 -0
- package/esm2020/lib/components/query-builder/query-builder.module.mjs +116 -0
- package/esm2020/lib/components/query-builder/rule/components/date/date-filter.component.mjs +29 -0
- package/{esm2015/lib/components/query-builder/rule/components/filter.component.js → esm2020/lib/components/query-builder/rule/components/filter.component.mjs} +3 -3
- package/esm2020/lib/components/query-builder/rule/components/number/number-filter.component.mjs +28 -0
- package/esm2020/lib/components/query-builder/rule/components/radio/radio-filter.component.mjs +30 -0
- package/esm2020/lib/components/query-builder/rule/components/select/select-filter.component.mjs +83 -0
- package/esm2020/lib/components/query-builder/rule/components/text/text-filter.component.mjs +31 -0
- package/esm2020/lib/components/query-builder/rule/rule.component.mjs +78 -0
- package/{esm2015/lib/components/query-builder/utils/qb-filter.utils.js → esm2020/lib/components/query-builder/utils/qb-filter.utils.mjs} +23 -9
- package/{esm2015/lib/models/filter.model.js → esm2020/lib/models/filter.model.mjs} +0 -0
- package/{esm2015/lib/models/public-api.js → esm2020/lib/models/public-api.mjs} +0 -0
- package/{esm2015/lib/models/query.model.js → esm2020/lib/models/query.model.mjs} +0 -0
- package/{esm2015/lib/utils/date.adapter.js → esm2020/lib/utils/date.adapter.mjs} +3 -3
- package/esm2020/lib/utils/filter.utils.mjs +40 -0
- package/{esm2015/lib/utils/public-api.js → esm2020/lib/utils/public-api.mjs} +0 -0
- package/{esm2015/lib/utils/query-params.utils.js → esm2020/lib/utils/query-params.utils.mjs} +0 -0
- package/{esm2015/lib/utils/string.utils.js → esm2020/lib/utils/string.utils.mjs} +0 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/{esm2015/recursyve-nice-data-filter-kit.js → esm2020/recursyve-nice-data-filter-kit.mjs} +0 -0
- package/fesm2015/recursyve-nice-data-filter-kit.mjs +2448 -0
- package/fesm2015/recursyve-nice-data-filter-kit.mjs.map +1 -0
- package/fesm2020/recursyve-nice-data-filter-kit.mjs +2446 -0
- package/fesm2020/recursyve-nice-data-filter-kit.mjs.map +1 -0
- package/lib/components/base-list/base-list.module.d.ts +15 -16
- package/lib/components/base-list/models/layout.model.d.ts +0 -4
- package/lib/components/multi-state-list/multi-state-list.module.d.ts +15 -16
- package/lib/components/query-builder/query-builder.module.d.ts +10 -11
- package/package.json +30 -16
- package/src/lib/components/base-list/base-list.theme.scss +5 -5
- package/src/lib/components/query-builder/filter-selection/filter-selection.theme.scss +42 -0
- package/src/lib/components/query-builder/query-builder.theme.scss +2 -0
- package/src/lib/components/query-builder/rule/rule.theme.scss +83 -1
- package/src/lib/nice-data-filter.theme.scss +7 -0
- package/bundles/recursyve-nice-data-filter-kit.umd.js +0 -3189
- package/bundles/recursyve-nice-data-filter-kit.umd.js.map +0 -1
- package/esm2015/lib/api/filter.api.js +0 -52
- package/esm2015/lib/api/saved-report.api.js +0 -49
- package/esm2015/lib/components/base-list/base-list.component.js +0 -297
- package/esm2015/lib/components/base-list/base-list.module.js +0 -180
- package/esm2015/lib/components/base-list/models/layout.model.js +0 -164
- package/esm2015/lib/components/base-list/providers/base-filter.service.js +0 -40
- package/esm2015/lib/components/base-list/store/base-list.query.js +0 -35
- package/esm2015/lib/components/base-list/store/base-list.service.js +0 -330
- package/esm2015/lib/components/base-list/store/base-list.store.js +0 -78
- package/esm2015/lib/components/multi-state-list/multi-state-list.component.js +0 -75
- package/esm2015/lib/components/multi-state-list/store/multi-state-list.store.js +0 -22
- package/esm2015/lib/components/query-builder/filter-selection/filter-selection.component.js +0 -48
- package/esm2015/lib/components/query-builder/query-builder.component.js +0 -100
- package/esm2015/lib/components/query-builder/query-builder.module.js +0 -120
- package/esm2015/lib/components/query-builder/rule/components/date/date-filter.component.js +0 -35
- package/esm2015/lib/components/query-builder/rule/components/number/number-filter.component.js +0 -34
- package/esm2015/lib/components/query-builder/rule/components/radio/radio-filter.component.js +0 -36
- package/esm2015/lib/components/query-builder/rule/components/select/select-filter.component.js +0 -94
- package/esm2015/lib/components/query-builder/rule/components/text/text-filter.component.js +0 -37
- package/esm2015/lib/components/query-builder/rule/rule.component.js +0 -86
- package/esm2015/lib/utils/filter.utils.js +0 -41
- package/fesm2015/recursyve-nice-data-filter-kit.js +0 -2519
- package/fesm2015/recursyve-nice-data-filter-kit.js.map +0 -1
package/esm2015/lib/components/query-builder/rule/components/number/number-filter.component.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Component, forwardRef, ViewEncapsulation } from "@angular/core";
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
3
|
-
import { FilterComponent } from "../filter.component";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/material/form-field";
|
|
6
|
-
import * as i2 from "@angular/flex-layout";
|
|
7
|
-
import * as i3 from "@angular/material/input";
|
|
8
|
-
import * as i4 from "@angular/forms";
|
|
9
|
-
export class NumberFilterComponent extends FilterComponent {
|
|
10
|
-
}
|
|
11
|
-
NumberFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: NumberFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
-
NumberFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.0", type: NumberFilterComponent, selector: "nice-number-filter", providers: [
|
|
13
|
-
{
|
|
14
|
-
provide: NG_VALUE_ACCESSOR,
|
|
15
|
-
useExisting: forwardRef(() => NumberFilterComponent),
|
|
16
|
-
multi: true
|
|
17
|
-
}
|
|
18
|
-
], usesInheritance: true, ngImport: i0, template: "<mat-form-field fxFlex>\n <input matInput [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\" type=\"number\" />\n</mat-form-field>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }], directives: [{ type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: NumberFilterComponent, decorators: [{
|
|
20
|
-
type: Component,
|
|
21
|
-
args: [{
|
|
22
|
-
selector: "nice-number-filter",
|
|
23
|
-
templateUrl: "number-filter.template.html",
|
|
24
|
-
encapsulation: ViewEncapsulation.None,
|
|
25
|
-
providers: [
|
|
26
|
-
{
|
|
27
|
-
provide: NG_VALUE_ACCESSOR,
|
|
28
|
-
useExisting: forwardRef(() => NumberFilterComponent),
|
|
29
|
-
multi: true
|
|
30
|
-
}
|
|
31
|
-
]
|
|
32
|
-
}]
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvcXVlcnktYnVpbGRlci9ydWxlL2NvbXBvbmVudHMvbnVtYmVyL251bWJlci1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL251bWJlci9udW1iZXItZmlsdGVyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7QUFjdEQsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGVBQXVCOztrSEFBckQscUJBQXFCO3NHQUFyQixxQkFBcUIsNkNBUm5CO1FBQ1A7WUFDSSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7WUFDcEQsS0FBSyxFQUFFLElBQUk7U0FDZDtLQUNKLGlEQ2RMLG9KQUdBOzJGRGFhLHFCQUFxQjtrQkFaakMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixXQUFXLEVBQUUsNkJBQTZCO29CQUMxQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDOzRCQUNwRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtbnVtYmVyLWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIm51bWJlci1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTnVtYmVyRmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE51bWJlckZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDxudW1iZXI+IHt9XG4iLCI8bWF0LWZvcm0tZmllbGQgZnhGbGV4PlxuICAgIDxpbnB1dCBtYXRJbnB1dCBbbmdNb2RlbF09XCJ2YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIHR5cGU9XCJudW1iZXJcIiAvPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
|
package/esm2015/lib/components/query-builder/rule/components/radio/radio-filter.component.js
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { Component, forwardRef, Input, ViewEncapsulation } from "@angular/core";
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
3
|
-
import { FilterComponent } from "../filter.component";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/material/radio";
|
|
6
|
-
import * as i2 from "@angular/flex-layout";
|
|
7
|
-
import * as i3 from "@angular/forms";
|
|
8
|
-
import * as i4 from "@angular/common";
|
|
9
|
-
export class RadioFilterComponent extends FilterComponent {
|
|
10
|
-
}
|
|
11
|
-
RadioFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: RadioFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
-
RadioFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.0", type: RadioFilterComponent, selector: "nice-radio-filter", inputs: { filterConfig: "filterConfig" }, providers: [
|
|
13
|
-
{
|
|
14
|
-
provide: NG_VALUE_ACCESSOR,
|
|
15
|
-
useExisting: forwardRef(() => RadioFilterComponent),
|
|
16
|
-
multi: true
|
|
17
|
-
}
|
|
18
|
-
], usesInheritance: true, ngImport: i0, template: "<mat-radio-group fxFlex [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\">\n <mat-radio-button class=\"mx-16\" *ngFor=\"let option of filterConfig.options\" [value]=\"option?.key\">\n {{ option?.name }}\n </mat-radio-button>\n</mat-radio-group>\n", components: [{ type: i1.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }], directives: [{ type: i1.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: RadioFilterComponent, decorators: [{
|
|
20
|
-
type: Component,
|
|
21
|
-
args: [{
|
|
22
|
-
selector: "nice-radio-filter",
|
|
23
|
-
templateUrl: "radio-filter.template.html",
|
|
24
|
-
encapsulation: ViewEncapsulation.None,
|
|
25
|
-
providers: [
|
|
26
|
-
{
|
|
27
|
-
provide: NG_VALUE_ACCESSOR,
|
|
28
|
-
useExisting: forwardRef(() => RadioFilterComponent),
|
|
29
|
-
multi: true
|
|
30
|
-
}
|
|
31
|
-
]
|
|
32
|
-
}]
|
|
33
|
-
}], propDecorators: { filterConfig: [{
|
|
34
|
-
type: Input
|
|
35
|
-
}] } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9xdWVyeS1idWlsZGVyL3J1bGUvY29tcG9uZW50cy9yYWRpby9yYWRpby1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL3JhZGlvL3JhZGlvLWZpbHRlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQWN0RCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZUFBdUI7O2lIQUFwRCxvQkFBb0I7cUdBQXBCLG9CQUFvQixzRkFSbEI7UUFDUDtZQUNJLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztZQUNuRCxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osaURDZkwsaVJBS0E7MkZEWWEsb0JBQW9CO2tCQVpoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFdBQVcsRUFBRSw0QkFBNEI7b0JBQ3pDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUscUJBQXFCLENBQUM7NEJBQ25ELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKO2lCQUNKOzhCQUdVLFlBQVk7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtcmFkaW8tZmlsdGVyXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwicmFkaW8tZmlsdGVyLnRlbXBsYXRlLmh0bWxcIixcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFJhZGlvRmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlvRmlsdGVyQ29tcG9uZW50IGV4dGVuZHMgRmlsdGVyQ29tcG9uZW50PHN0cmluZz4ge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGZpbHRlckNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsO1xufVxuIiwiPG1hdC1yYWRpby1ncm91cCBmeEZsZXggW25nTW9kZWxdPVwidmFsdWVcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIj5cbiAgICA8bWF0LXJhZGlvLWJ1dHRvbiBjbGFzcz1cIm14LTE2XCIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWx0ZXJDb25maWcub3B0aW9uc1wiIFt2YWx1ZV09XCJvcHRpb24/LmtleVwiPlxuICAgICAgICB7eyBvcHRpb24/Lm5hbWUgfX1cbiAgICA8L21hdC1yYWRpby1idXR0b24+XG48L21hdC1yYWRpby1ncm91cD5cbiJdfQ==
|
package/esm2015/lib/components/query-builder/rule/components/select/select-filter.component.js
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
|
-
import { Component, forwardRef, Input, Optional, ViewEncapsulation } from "@angular/core";
|
|
3
|
-
import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
4
|
-
import { of, Subject } from "rxjs";
|
|
5
|
-
import { debounceTime, switchMap } from "rxjs/operators";
|
|
6
|
-
import { NiceFilterService } from "../../../../base-list/providers/base-filter.service";
|
|
7
|
-
import { FilterComponent } from "../filter.component";
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../../../../base-list/providers/base-filter.service";
|
|
10
|
-
import * as i2 from "@angular/material/form-field";
|
|
11
|
-
import * as i3 from "@recursyve/nice-ui-kit.v2";
|
|
12
|
-
import * as i4 from "@angular/flex-layout";
|
|
13
|
-
import * as i5 from "@angular/forms";
|
|
14
|
-
export class SelectFilterComponent extends FilterComponent {
|
|
15
|
-
constructor(filterService) {
|
|
16
|
-
super();
|
|
17
|
-
this.filterService = filterService;
|
|
18
|
-
this.values = [];
|
|
19
|
-
this.search$ = new Subject();
|
|
20
|
-
}
|
|
21
|
-
ngOnInit() {
|
|
22
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
if (!this.filterConfig.lazyLoading) {
|
|
24
|
-
this.values = this.filterConfig.values;
|
|
25
|
-
}
|
|
26
|
-
this.searchSub$ = this.search$
|
|
27
|
-
.pipe(debounceTime(300), switchMap(value => {
|
|
28
|
-
if (this.filterConfig.lazyLoading) {
|
|
29
|
-
return this.filterService.searchFilterValue(this.filterConfig, value);
|
|
30
|
-
}
|
|
31
|
-
return of(this.filterConfig.values);
|
|
32
|
-
}))
|
|
33
|
-
.subscribe(values => {
|
|
34
|
-
this.values = values;
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
ngOnChanges(changes) {
|
|
39
|
-
if ("filterConfig" in changes) {
|
|
40
|
-
if (!this.filterConfig.lazyLoading) {
|
|
41
|
-
this.values = this.filterConfig.values;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
searchValue() {
|
|
46
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
-
if (this.value && !this.values.find(v => v.id === this.value)) {
|
|
48
|
-
const value = yield this.filterService
|
|
49
|
-
.searchFilterResourceValue(this.filterConfig, this.value)
|
|
50
|
-
.toPromise();
|
|
51
|
-
this.values = [...this.values, value];
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
onValueChange(value) {
|
|
56
|
-
super.onValueChange(value);
|
|
57
|
-
this.searchValue();
|
|
58
|
-
}
|
|
59
|
-
ngOnDestroy() {
|
|
60
|
-
this.searchSub$.unsubscribe();
|
|
61
|
-
}
|
|
62
|
-
writeValue(value) {
|
|
63
|
-
super.writeValue(value);
|
|
64
|
-
this.searchValue();
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
SelectFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: SelectFilterComponent, deps: [{ token: i1.NiceFilterService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
68
|
-
SelectFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.0", type: SelectFilterComponent, selector: "nice-select-filter", inputs: { filterConfig: "filterConfig" }, providers: [
|
|
69
|
-
{
|
|
70
|
-
provide: NG_VALUE_ACCESSOR,
|
|
71
|
-
useExisting: forwardRef(() => SelectFilterComponent),
|
|
72
|
-
multi: true
|
|
73
|
-
}
|
|
74
|
-
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<mat-form-field fxFlex>\n <nice-typeahead\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n [typeahead]=\"search$\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n</mat-form-field>\n", components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i3.NiceTypeaheadComponent, selector: "nice-typeahead", inputs: ["items", "labelFormatFn", "required", "disabled", "placeholder", "emptyPlaceholder", "allowNotFoundItems", "panelClass", "bindValue", "bindLabel", "typeahead", "page$", "loading", "loadingPage", "searchFn", "optionTemplate"], outputs: ["change"] }], directives: [{ type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
75
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: SelectFilterComponent, decorators: [{
|
|
76
|
-
type: Component,
|
|
77
|
-
args: [{
|
|
78
|
-
selector: "nice-select-filter",
|
|
79
|
-
templateUrl: "select-filter.template.html",
|
|
80
|
-
encapsulation: ViewEncapsulation.None,
|
|
81
|
-
providers: [
|
|
82
|
-
{
|
|
83
|
-
provide: NG_VALUE_ACCESSOR,
|
|
84
|
-
useExisting: forwardRef(() => SelectFilterComponent),
|
|
85
|
-
multi: true
|
|
86
|
-
}
|
|
87
|
-
]
|
|
88
|
-
}]
|
|
89
|
-
}], ctorParameters: function () { return [{ type: i1.NiceFilterService, decorators: [{
|
|
90
|
-
type: Optional
|
|
91
|
-
}] }]; }, propDecorators: { filterConfig: [{
|
|
92
|
-
type: Input
|
|
93
|
-
}] } });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvcXVlcnktYnVpbGRlci9ydWxlL2NvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QtZmlsdGVyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBZ0MsUUFBUSxFQUFpQixpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2SSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUN4RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFjdEQsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGVBQXdCO0lBUy9ELFlBQWtDLGFBQXFDO1FBQ25FLEtBQUssRUFBRSxDQUFDO1FBRHNCLGtCQUFhLEdBQWIsYUFBYSxDQUF3QjtRQU5oRSxXQUFNLEdBQXdCLEVBQUUsQ0FBQztRQUVqQyxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztJQU12QyxDQUFDO0lBRVksUUFBUTs7WUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBNkIsQ0FBQzthQUNqRTtZQUVELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU87aUJBQ3pCLElBQUksQ0FDRCxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDZCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFO29CQUMvQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQztpQkFDekU7Z0JBRUQsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUE2QixDQUFDLENBQUM7WUFDL0QsQ0FBQyxDQUFDLENBQ0w7aUJBQ0EsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUN6QixDQUFDLENBQUMsQ0FBQztRQUNYLENBQUM7S0FBQTtJQUVNLFdBQVcsQ0FBQyxPQUFzQjtRQUNyQyxJQUFJLGNBQWMsSUFBSSxPQUFPLEVBQUU7WUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBNkIsQ0FBQzthQUNqRTtTQUNKO0lBQ0wsQ0FBQztJQUVhLFdBQVc7O1lBQ3JCLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQzNELE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWE7cUJBQ2pDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQWUsQ0FBQztxQkFDbEUsU0FBUyxFQUFFLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDekM7UUFDTCxDQUFDO0tBQUE7SUFFTSxhQUFhLENBQUMsS0FBYztRQUMvQixLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFjO1FBQzVCLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7O2tIQS9EUSxxQkFBcUI7c0dBQXJCLHFCQUFxQix1RkFSbkI7UUFDUDtZQUNJLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztZQUNwRCxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osc0VDbEJMLDhSQVVBOzJGRFVhLHFCQUFxQjtrQkFaakMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixXQUFXLEVBQUUsNkJBQTZCO29CQUMxQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDOzRCQUNwRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjtpQkFDSjs7MEJBVWdCLFFBQVE7NENBUGQsWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgb2YsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHN3aXRjaE1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsLCBTZWxlY3RGaWx0ZXJWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi8uLi9iYXNlLWxpc3QvcHJvdmlkZXJzL2Jhc2UtZmlsdGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2Utc2VsZWN0LWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInNlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VsZWN0RmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdEZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDx1bmtub3duPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGZpbHRlckNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsO1xuICAgIHB1YmxpYyB2YWx1ZXM6IFNlbGVjdEZpbHRlclZhbHVlW10gPSBbXTtcblxuICAgIHB1YmxpYyBzZWFyY2gkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuXG4gICAgcHJpdmF0ZSBzZWFyY2hTdWIkOiBTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgZmlsdGVyU2VydmljZTogTmljZUZpbHRlclNlcnZpY2U8YW55Pikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKCF0aGlzLmZpbHRlckNvbmZpZy5sYXp5TG9hZGluZykge1xuICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoU3ViJCA9IHRoaXMuc2VhcmNoJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJTZXJ2aWNlLnNlYXJjaEZpbHRlclZhbHVlKHRoaXMuZmlsdGVyQ29uZmlnLCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YodGhpcy5maWx0ZXJDb25maWcudmFsdWVzIGFzIFNlbGVjdEZpbHRlclZhbHVlW10pO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHZhbHVlcyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB2YWx1ZXM7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoXCJmaWx0ZXJDb25maWdcIiBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgc2VhcmNoVmFsdWUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlICYmICF0aGlzLnZhbHVlcy5maW5kKHYgPT4gdi5pZCA9PT0gdGhpcy52YWx1ZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gYXdhaXQgdGhpcy5maWx0ZXJTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLnNlYXJjaEZpbHRlclJlc291cmNlVmFsdWUodGhpcy5maWx0ZXJDb25maWcsIHRoaXMudmFsdWUgYXMgbnVtYmVyKVxuICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgIHRoaXMudmFsdWVzID0gWy4uLnRoaXMudmFsdWVzLCB2YWx1ZV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25WYWx1ZUNoYW5nZSh2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICAgICAgICBzdXBlci5vblZhbHVlQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5zZWFyY2hWYWx1ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWFyY2hTdWIkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHVua25vd24pOiB2b2lkIHtcbiAgICAgICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2VhcmNoVmFsdWUoKTtcbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQgZnhGbGV4PlxuICAgIDxuaWNlLXR5cGVhaGVhZFxuICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFtpdGVtc109XCJ2YWx1ZXNcIlxuICAgICAgICBbdHlwZWFoZWFkXT1cInNlYXJjaCRcIlxuICAgICAgICBiaW5kVmFsdWU9XCJpZFwiXG4gICAgICAgIGJpbmRMYWJlbD1cIm5hbWVcIlxuICAgID48L25pY2UtdHlwZWFoZWFkPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Component, forwardRef, Input, ViewEncapsulation } from "@angular/core";
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
3
|
-
import { FilterComponent } from "../filter.component";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/material/form-field";
|
|
6
|
-
import * as i2 from "@angular/flex-layout";
|
|
7
|
-
import * as i3 from "@angular/material/input";
|
|
8
|
-
import * as i4 from "@angular/forms";
|
|
9
|
-
import * as i5 from "ngx-mask";
|
|
10
|
-
export class TextFilterComponent extends FilterComponent {
|
|
11
|
-
}
|
|
12
|
-
TextFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: TextFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
-
TextFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.0", type: TextFilterComponent, selector: "nice-text-filter", inputs: { filterConfig: "filterConfig" }, providers: [
|
|
14
|
-
{
|
|
15
|
-
provide: NG_VALUE_ACCESSOR,
|
|
16
|
-
useExisting: forwardRef(() => TextFilterComponent),
|
|
17
|
-
multi: true
|
|
18
|
-
}
|
|
19
|
-
], usesInheritance: true, ngImport: i0, template: "<mat-form-field fxFlex>\n <input matInput [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\" [mask]=\"(filterConfig?.mask) || ''\" [validation]=\"false\" type=\"text\" />\n</mat-form-field>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }], directives: [{ type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: TextFilterComponent, decorators: [{
|
|
21
|
-
type: Component,
|
|
22
|
-
args: [{
|
|
23
|
-
selector: "nice-text-filter",
|
|
24
|
-
templateUrl: "text-filter.template.html",
|
|
25
|
-
encapsulation: ViewEncapsulation.None,
|
|
26
|
-
providers: [
|
|
27
|
-
{
|
|
28
|
-
provide: NG_VALUE_ACCESSOR,
|
|
29
|
-
useExisting: forwardRef(() => TextFilterComponent),
|
|
30
|
-
multi: true
|
|
31
|
-
}
|
|
32
|
-
]
|
|
33
|
-
}]
|
|
34
|
-
}], propDecorators: { filterConfig: [{
|
|
35
|
-
type: Input
|
|
36
|
-
}] } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL3RleHQvdGV4dC1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL3RleHQvdGV4dC1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBY3RELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxlQUF1Qjs7Z0hBQW5ELG1CQUFtQjtvR0FBbkIsbUJBQW1CLHFGQVJqQjtRQUNQO1lBQ0ksT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO1lBQ2xELEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixpRENmTCwrTUFHQTsyRkRjYSxtQkFBbUI7a0JBWi9CLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsV0FBVyxFQUFFLDJCQUEyQjtvQkFDeEMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxvQkFBb0IsQ0FBQzs0QkFDbEQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7aUJBQ0o7OEJBR1UsWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgRmlsdGVyQ29tcG9uZW50IH0gZnJvbSBcIi4uL2ZpbHRlci5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwibmljZS10ZXh0LWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInRleHQtZmlsdGVyLnRlbXBsYXRlLmh0bWxcIixcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRleHRGaWx0ZXJDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGV4dEZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDxzdHJpbmc+IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbDtcbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBmeEZsZXg+XG4gICAgPGlucHV0IG1hdElucHV0IFtuZ01vZGVsXT1cInZhbHVlXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCIgW21hc2tdPVwiKGZpbHRlckNvbmZpZz8ubWFzaykgfHwgJydcIiBbdmFsaWRhdGlvbl09XCJmYWxzZVwiIHR5cGU9XCJ0ZXh0XCIgLz5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewEncapsulation } from "@angular/core";
|
|
2
|
-
import { FormGroupName } from "@angular/forms";
|
|
3
|
-
import { QBFilterUtils } from "../utils/qb-filter.utils";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/forms";
|
|
6
|
-
import * as i2 from "@angular/material/button";
|
|
7
|
-
import * as i3 from "@angular/material/icon";
|
|
8
|
-
import * as i4 from "@angular/material/form-field";
|
|
9
|
-
import * as i5 from "@angular/material/select";
|
|
10
|
-
import * as i6 from "@angular/material/core";
|
|
11
|
-
import * as i7 from "./components/text/text-filter.component";
|
|
12
|
-
import * as i8 from "./components/number/number-filter.component";
|
|
13
|
-
import * as i9 from "./components/radio/radio-filter.component";
|
|
14
|
-
import * as i10 from "./components/select/select-filter.component";
|
|
15
|
-
import * as i11 from "./components/date/date-filter.component";
|
|
16
|
-
import * as i12 from "@angular/flex-layout";
|
|
17
|
-
import * as i13 from "../query-builder-trigger.directive";
|
|
18
|
-
import * as i14 from "@angular/common";
|
|
19
|
-
import * as i15 from "@ngx-translate/core";
|
|
20
|
-
export class RuleComponent {
|
|
21
|
-
constructor(formGroupName) {
|
|
22
|
-
this.formGroupName = formGroupName;
|
|
23
|
-
this.remove = new EventEmitter();
|
|
24
|
-
}
|
|
25
|
-
get filterConfig() {
|
|
26
|
-
var _a;
|
|
27
|
-
const rule = this.rules.at(0).value;
|
|
28
|
-
return (_a = this.filterConfigs) === null || _a === void 0 ? void 0 : _a.find(f => f.id === rule.id);
|
|
29
|
-
}
|
|
30
|
-
get isSingleInput() {
|
|
31
|
-
return !this.isDoubleInput && !this.isNoInput;
|
|
32
|
-
}
|
|
33
|
-
get isDoubleInput() {
|
|
34
|
-
return QBFilterUtils.isDoubleInput(this.filterOperator);
|
|
35
|
-
}
|
|
36
|
-
get isNoInput() {
|
|
37
|
-
return QBFilterUtils.isNoInput(this.filterOperator);
|
|
38
|
-
}
|
|
39
|
-
ngOnInit() {
|
|
40
|
-
this.formGroup = this.formGroupName.control;
|
|
41
|
-
this.rules = this.formGroup.get("rules");
|
|
42
|
-
this.filterOperator = this.rules.at(0).value.operation;
|
|
43
|
-
}
|
|
44
|
-
onUpdateFilterConfig(config) {
|
|
45
|
-
const rule = QBFilterUtils.createRule(config);
|
|
46
|
-
this.rules.patchValue([rule]);
|
|
47
|
-
this.filterOperator = rule.operation;
|
|
48
|
-
}
|
|
49
|
-
onClickOr() {
|
|
50
|
-
this.rules.push(QBFilterUtils.createRule(this.filterConfig, this.filterOperator));
|
|
51
|
-
}
|
|
52
|
-
onUpdateFilterOperator(operator) {
|
|
53
|
-
var _a, _b;
|
|
54
|
-
this.filterOperator = operator;
|
|
55
|
-
for (const rule of this.rules.controls) {
|
|
56
|
-
(_a = rule.get("operation")) === null || _a === void 0 ? void 0 : _a.patchValue(this.filterOperator);
|
|
57
|
-
if (this.isDoubleInput) {
|
|
58
|
-
(_b = rule.get("value")) === null || _b === void 0 ? void 0 : _b.patchValue([rule.value.value, rule.value.value]);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
onClickDelete(index) {
|
|
63
|
-
if (this.rules.length > 1) {
|
|
64
|
-
this.rules.removeAt(index);
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
this.remove.emit();
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
RuleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: RuleComponent, deps: [{ token: i1.FormGroupName }], target: i0.ɵɵFactoryTarget.Component });
|
|
72
|
-
RuleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.0", type: RuleComponent, selector: "nice-rule", inputs: { filterConfigs: "filterConfigs" }, outputs: { remove: "remove" }, ngImport: i0, template: "<div fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutGap=\"10px\">\n <button\n fxFlex=\"150px\"\n class=\"select-filter\"\n mat-raised-button\n color=\"accent\"\n niceQueryBuilderTrigger\n [queryBuilderFilters]=\"filterConfigs\"\n (queryBuilderFilterSelected)=\"onUpdateFilterConfig($event)\"\n >\n <div fxFlex=\"row\" fxLayoutAlign=\"space-between center\">\n <div class=\"truncate\" fxFlex=\"0 1 90px\">{{ filterConfig?.name }}</div>\n <mat-icon fxFlex=\"24px\">arrow_drop_down</mat-icon>\n </div>\n </button>\n <div fxLayout=\"row\" fxLayout.lt-md=\"column\" fxFlex=\"1 1 auto\" fxLayoutAlign=\"start center\" fxLayoutGap=\"10px\">\n <mat-form-field ngClass.lt-md=\"w-90-p\" fxFlex=\"0 0 188px\">\n <mat-select\n fxFlex=\"150px\"\n fxFlex.lt-md=\"100%\"\n [ngModel]=\"filterOperator\"\n (ngModelChange)=\"onUpdateFilterOperator($event)\"\n >\n <mat-option *ngFor=\"let operator of filterConfig?.operators\" [value]=\"operator.id\">\n {{ operator?.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <div fxFlex fxLayout=\"row wrap\" fxLayout.lt-md=\"column\" [formGroup]=\"formGroup\">\n <ng-container formArrayName=\"rules\">\n <div\n class=\"rule-container\"\n [fxFlex]=\"isDoubleInput ? '100%' : '50%'\"\n [formGroupName]=\"i\"\n fxFlex.lt-md=\"100%\"\n fxLayout.lt-md=\"column\"\n fxLayoutAlign=\"start center\"\n fxLayoutGap=\"10px\"\n *ngFor=\"let rule of rules.controls; let i = index\"\n >\n <ng-container *ngIf=\"isSingleInput\">\n <ng-container [ngSwitch]=\"filterConfig?.type\">\n <nice-text-filter *ngSwitchCase=\"'text'\" fxFlex formControlName=\"value\" [filterConfig]=\"filterConfig\"></nice-text-filter>\n <nice-number-filter *ngSwitchCase=\"'number'\" fxFlex formControlName=\"value\"></nice-number-filter>\n <nice-radio-filter\n *ngSwitchCase=\"'radio'\"\n fxFlex\n formControlName=\"value\"\n [filterConfig]=\"filterConfig\"\n class=\"mb-16\"\n ></nice-radio-filter>\n <nice-select-filter\n *ngSwitchCase=\"'select'\"\n fxFlex\n formControlName=\"value\"\n [filterConfig]=\"filterConfig\"\n ></nice-select-filter>\n <nice-date-filter *ngSwitchCase=\"'date'\" fxFlex formControlName=\"value\"></nice-date-filter>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"isDoubleInput\">\n <ng-container [ngSwitch]=\"filterConfig?.type\">\n <nice-text-filter\n *ngSwitchCase=\"'text'\"\n [valueIndex]=\"0\"\n [filterConfig]=\"filterConfig\"\n fxFlex\n formControlName=\"secondValue\"\n ></nice-text-filter>\n <nice-number-filter\n *ngSwitchCase=\"'number'\"\n [valueIndex]=\"0\"\n fxFlex\n formControlName=\"secondValue\"\n ></nice-number-filter>\n <nice-radio-filter\n *ngSwitchCase=\"'radio'\"\n fxFlex\n formControlName=\"secondValue\"\n [filterConfig]=\"filterConfig\"\n [valueIndex]=\"0\"\n class=\"mb-16\"\n ></nice-radio-filter>\n <nice-select-filter\n *ngSwitchCase=\"'select'\"\n fxFlex\n formControlName=\"secondValue\"\n [filterConfig]=\"filterConfig\"\n [valueIndex]=\"0\"\n ></nice-select-filter>\n <nice-date-filter\n *ngSwitchCase=\"'date'\"\n [valueIndex]=\"0\"\n fxFlex\n formControlName=\"secondValue\"\n ></nice-date-filter>\n </ng-container>\n <h3 class=\"aligned-text\">\n {{ \"components.query_builder.rule.conditions.and\" | translate }}\n </h3>\n <ng-container [ngSwitch]=\"filterConfig?.type\">\n <nice-text-filter\n *ngSwitchCase=\"'text'\"\n [valueIndex]=\"1\"\n [filterConfig]=\"filterConfig\"\n fxFlex\n formControlName=\"value\"\n ></nice-text-filter>\n <nice-number-filter\n *ngSwitchCase=\"'number'\"\n [valueIndex]=\"1\"\n fxFlex\n formControlName=\"value\"\n ></nice-number-filter>\n <nice-radio-filter\n *ngSwitchCase=\"'radio'\"\n fxFlex\n formControlName=\"value\"\n [filterConfig]=\"filterConfig\"\n [valueIndex]=\"1\"\n class=\"mb-16\"\n ></nice-radio-filter>\n <nice-select-filter\n *ngSwitchCase=\"'select'\"\n fxFlex\n formControlName=\"value\"\n [filterConfig]=\"filterConfig\"\n [valueIndex]=\"1\"\n ></nice-select-filter>\n <nice-date-filter\n *ngSwitchCase=\"'date'\"\n [valueIndex]=\"1\"\n fxFlex\n formControlName=\"value\"\n ></nice-date-filter>\n </ng-container>\n </ng-container>\n <div fxLayout=\"row\" fxLayoutGap=\"8px\">\n <button mat-mini-fab class=\"or-button aligned-button\" (click)=\"onClickOr()\">\n {{ \"components.query_builder.rule.conditions.or\" | translate }}\n </button>\n <button class=\"aligned-button\" mat-icon-button color=\"warn\" (click)=\"onClickDelete(i)\">\n <mat-icon>delete</mat-icon>\n </button>\n </div>\n\n </div>\n </ng-container>\n </div>\n </div>\n</div>\n", styles: ["nice-rule{background:transparent}nice-rule .select-filter{height:36px}nice-rule .aligned-button,nice-rule .select-filter{margin-bottom:1.25em}nice-rule .aligned-text{margin-bottom:2em}nice-rule .filter-select{margin-top:-14px}nice-rule .mat-form-field-infix{border:none}@media screen and (max-width:959px){nice-rule .mat-form-field-infix{max-width:150px}}nice-rule .rule-container{padding-left:12px;padding-right:12px}@media screen and (max-width:959px){nice-rule .rule-container{padding:0}}"], components: [{ type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i7.TextFilterComponent, selector: "nice-text-filter", inputs: ["filterConfig"] }, { type: i8.NumberFilterComponent, selector: "nice-number-filter" }, { type: i9.RadioFilterComponent, selector: "nice-radio-filter", inputs: ["filterConfig"] }, { type: i10.SelectFilterComponent, selector: "nice-select-filter", inputs: ["filterConfig"] }, { type: i11.DateFilterComponent, selector: "nice-date-filter" }], directives: [{ type: i12.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i12.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i12.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { type: i12.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i13.QueryBuilderTriggerDirective, selector: "[niceQueryBuilderTrigger]", inputs: ["queryBuilderFilters", "queryBuilderFiltersLoading"], outputs: ["queryBuilderFilterSelected"] }, { type: i12.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i14.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i14.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i14.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i15.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.0", ngImport: i0, type: RuleComponent, decorators: [{
|
|
74
|
-
type: Component,
|
|
75
|
-
args: [{
|
|
76
|
-
selector: "nice-rule",
|
|
77
|
-
templateUrl: "rule.template.html",
|
|
78
|
-
styleUrls: ["./rule.style.scss"],
|
|
79
|
-
encapsulation: ViewEncapsulation.None
|
|
80
|
-
}]
|
|
81
|
-
}], ctorParameters: function () { return [{ type: i1.FormGroupName }]; }, propDecorators: { filterConfigs: [{
|
|
82
|
-
type: Input
|
|
83
|
-
}], remove: [{
|
|
84
|
-
type: Output
|
|
85
|
-
}] } });
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvcXVlcnktYnVpbGRlci9ydWxlL3J1bGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9ydWxlLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztBQVF6RCxNQUFNLE9BQU8sYUFBYTtJQTRCdEIsWUFBb0IsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUF2QnpDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBdUJnQixDQUFDO0lBakJwRCxJQUFXLFlBQVk7O1FBQ25CLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQXVCLENBQUM7UUFDdEQsT0FBTyxNQUFBLElBQUksQ0FBQyxhQUFhLDBDQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBNkIsQ0FBQztJQUN2RixDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3BCLE9BQU8sYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELElBQVcsU0FBUztRQUNoQixPQUFPLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFJTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQXdDLENBQUM7UUFDN0UsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQXNDLENBQUM7UUFDOUUsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO0lBQzNELENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxNQUFnQztRQUN4RCxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBcUIsQ0FBQyxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3pDLENBQUM7SUFFTSxTQUFTO1FBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFTSxzQkFBc0IsQ0FBQyxRQUFnQjs7UUFDMUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxRQUEyQixDQUFDO1FBQ2xELEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7WUFDcEMsTUFBQSxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQywwQ0FBRSxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBRXZELElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDcEIsTUFBQSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQywwQ0FBRSxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDdkU7U0FDSjtJQUNMLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBYTtRQUM5QixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QjthQUFNO1lBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUN0QjtJQUNMLENBQUM7OzBHQS9EUSxhQUFhOzhGQUFiLGFBQWEsNEhDZDFCLHF3UEF1SkE7MkZEeklhLGFBQWE7a0JBTnpCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFdBQVcsRUFBRSxvQkFBb0I7b0JBQ2pDLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNoQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDeEM7b0dBR1UsYUFBYTtzQkFEbkIsS0FBSztnQkFJQyxNQUFNO3NCQURaLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtR3JvdXBOYW1lIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBHZW5lcmF0ZWRGb3JtQXJyYXksIEdlbmVyYXRlZEZvcm1Hcm91cCB9IGZyb20gXCJAcmVjdXJzeXZlL25neC1mb3JtLWdlbmVyYXRvclwiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IEZpbHRlck9wZXJhdG9ycywgUXVlcnlSdWxlTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL3F1ZXJ5Lm1vZGVsXCI7XG5pbXBvcnQgeyBRdWVyeUZvcm0sIFF1ZXJ5UnVsZUZvcm0gfSBmcm9tIFwiLi4vcXVlcnktYnVpbGRlci5mb3JtXCI7XG5pbXBvcnQgeyBRQkZpbHRlclV0aWxzIH0gZnJvbSBcIi4uL3V0aWxzL3FiLWZpbHRlci51dGlsc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJuaWNlLXJ1bGVcIixcbiAgICB0ZW1wbGF0ZVVybDogXCJydWxlLnRlbXBsYXRlLmh0bWxcIixcbiAgICBzdHlsZVVybHM6IFtcIi4vcnVsZS5zdHlsZS5zY3NzXCJdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgUnVsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZmlsdGVyQ29uZmlnczogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsW10gfCBudWxsO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHB1YmxpYyBmb3JtR3JvdXA6IEdlbmVyYXRlZEZvcm1Hcm91cDxRdWVyeUZvcm0+O1xuICAgIHB1YmxpYyBydWxlczogR2VuZXJhdGVkRm9ybUFycmF5PFF1ZXJ5UnVsZUZvcm0+O1xuICAgIHB1YmxpYyBmaWx0ZXJPcGVyYXRvcjogRmlsdGVyT3BlcmF0b3JzO1xuXG4gICAgcHVibGljIGdldCBmaWx0ZXJDb25maWcoKTogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIHtcbiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMucnVsZXMuYXQoMCkudmFsdWUgYXMgUXVlcnlSdWxlTW9kZWw7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlckNvbmZpZ3M/LmZpbmQoZiA9PiBmLmlkID09PSBydWxlLmlkKSBhcyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWw7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc1NpbmdsZUlucHV0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNEb3VibGVJbnB1dCAmJiAhdGhpcy5pc05vSW5wdXQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc0RvdWJsZUlucHV0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gUUJGaWx0ZXJVdGlscy5pc0RvdWJsZUlucHV0KHRoaXMuZmlsdGVyT3BlcmF0b3IpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNOb0lucHV0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gUUJGaWx0ZXJVdGlscy5pc05vSW5wdXQodGhpcy5maWx0ZXJPcGVyYXRvcik7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBmb3JtR3JvdXBOYW1lOiBGb3JtR3JvdXBOYW1lKSB7fVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZm9ybUdyb3VwTmFtZS5jb250cm9sIGFzIEdlbmVyYXRlZEZvcm1Hcm91cDxRdWVyeUZvcm0+O1xuICAgICAgICB0aGlzLnJ1bGVzID0gdGhpcy5mb3JtR3JvdXAuZ2V0KFwicnVsZXNcIikgYXMgR2VuZXJhdGVkRm9ybUFycmF5PFF1ZXJ5UnVsZUZvcm0+O1xuICAgICAgICB0aGlzLmZpbHRlck9wZXJhdG9yID0gdGhpcy5ydWxlcy5hdCgwKS52YWx1ZS5vcGVyYXRpb247XG4gICAgfVxuXG4gICAgcHVibGljIG9uVXBkYXRlRmlsdGVyQ29uZmlnKGNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJ1bGUgPSBRQkZpbHRlclV0aWxzLmNyZWF0ZVJ1bGUoY29uZmlnKTtcbiAgICAgICAgdGhpcy5ydWxlcy5wYXRjaFZhbHVlKFtydWxlIGFzIFF1ZXJ5UnVsZUZvcm1dKTtcbiAgICAgICAgdGhpcy5maWx0ZXJPcGVyYXRvciA9IHJ1bGUub3BlcmF0aW9uO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrT3IoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucnVsZXMucHVzaChRQkZpbHRlclV0aWxzLmNyZWF0ZVJ1bGUodGhpcy5maWx0ZXJDb25maWcsIHRoaXMuZmlsdGVyT3BlcmF0b3IpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25VcGRhdGVGaWx0ZXJPcGVyYXRvcihvcGVyYXRvcjogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsdGVyT3BlcmF0b3IgPSBvcGVyYXRvciBhcyBGaWx0ZXJPcGVyYXRvcnM7XG4gICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiB0aGlzLnJ1bGVzLmNvbnRyb2xzKSB7XG4gICAgICAgICAgICBydWxlLmdldChcIm9wZXJhdGlvblwiKT8ucGF0Y2hWYWx1ZSh0aGlzLmZpbHRlck9wZXJhdG9yKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuaXNEb3VibGVJbnB1dCkge1xuICAgICAgICAgICAgICAgIHJ1bGUuZ2V0KFwidmFsdWVcIik/LnBhdGNoVmFsdWUoW3J1bGUudmFsdWUudmFsdWUsIHJ1bGUudmFsdWUudmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrRGVsZXRlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucnVsZXMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgdGhpcy5ydWxlcy5yZW1vdmVBdChpbmRleCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZS5lbWl0KCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiIGZ4TGF5b3V0R2FwPVwiMTBweFwiPlxuICAgIDxidXR0b25cbiAgICAgICAgZnhGbGV4PVwiMTUwcHhcIlxuICAgICAgICBjbGFzcz1cInNlbGVjdC1maWx0ZXJcIlxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICBjb2xvcj1cImFjY2VudFwiXG4gICAgICAgIG5pY2VRdWVyeUJ1aWxkZXJUcmlnZ2VyXG4gICAgICAgIFtxdWVyeUJ1aWxkZXJGaWx0ZXJzXT1cImZpbHRlckNvbmZpZ3NcIlxuICAgICAgICAocXVlcnlCdWlsZGVyRmlsdGVyU2VsZWN0ZWQpPVwib25VcGRhdGVGaWx0ZXJDb25maWcoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgICA8ZGl2IGZ4RmxleD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJzcGFjZS1iZXR3ZWVuIGNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRydW5jYXRlXCIgZnhGbGV4PVwiMCAxIDkwcHhcIj57eyBmaWx0ZXJDb25maWc/Lm5hbWUgfX08L2Rpdj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBmeEZsZXg9XCIyNHB4XCI+YXJyb3dfZHJvcF9kb3duPC9tYXQtaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9idXR0b24+XG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0Lmx0LW1kPVwiY29sdW1uXCIgZnhGbGV4PVwiMSAxIGF1dG9cIiBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCIgZnhMYXlvdXRHYXA9XCIxMHB4XCI+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBuZ0NsYXNzLmx0LW1kPVwidy05MC1wXCIgZnhGbGV4PVwiMCAwIDE4OHB4XCI+XG4gICAgICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgICAgIGZ4RmxleD1cIjE1MHB4XCJcbiAgICAgICAgICAgICAgICBmeEZsZXgubHQtbWQ9XCIxMDAlXCJcbiAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJmaWx0ZXJPcGVyYXRvclwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25VcGRhdGVGaWx0ZXJPcGVyYXRvcigkZXZlbnQpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgb3BlcmF0b3Igb2YgZmlsdGVyQ29uZmlnPy5vcGVyYXRvcnNcIiBbdmFsdWVdPVwib3BlcmF0b3IuaWRcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgb3BlcmF0b3I/Lm5hbWUgfX1cbiAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgICA8L21hdC1zZWxlY3Q+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxkaXYgZnhGbGV4IGZ4TGF5b3V0PVwicm93IHdyYXBcIiBmeExheW91dC5sdC1tZD1cImNvbHVtblwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIGZvcm1BcnJheU5hbWU9XCJydWxlc1wiPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJydWxlLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgICAgIFtmeEZsZXhdPVwiaXNEb3VibGVJbnB1dCA/ICcxMDAlJyA6ICc1MCUnXCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Hcm91cE5hbWVdPVwiaVwiXG4gICAgICAgICAgICAgICAgICAgIGZ4RmxleC5sdC1tZD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dC5sdC1tZD1cImNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dEdhcD1cIjEwcHhcIlxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcnVsZSBvZiBydWxlcy5jb250cm9sczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNTaW5nbGVJbnB1dFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiZmlsdGVyQ29uZmlnPy50eXBlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5pY2UtdGV4dC1maWx0ZXIgKm5nU3dpdGNoQ2FzZT1cIid0ZXh0J1wiIGZ4RmxleCBmb3JtQ29udHJvbE5hbWU9XCJ2YWx1ZVwiIFtmaWx0ZXJDb25maWddPVwiZmlsdGVyQ29uZmlnXCI+PC9uaWNlLXRleHQtZmlsdGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuaWNlLW51bWJlci1maWx0ZXIgKm5nU3dpdGNoQ2FzZT1cIidudW1iZXInXCIgZnhGbGV4IGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCI+PC9uaWNlLW51bWJlci1maWx0ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5pY2UtcmFkaW8tZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCIncmFkaW8nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhGbGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ZpbHRlckNvbmZpZ109XCJmaWx0ZXJDb25maWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1iLTE2XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uaWNlLXJhZGlvLWZpbHRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmljZS1zZWxlY3QtZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInc2VsZWN0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ4RmxleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWx0ZXJDb25maWddPVwiZmlsdGVyQ29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uaWNlLXNlbGVjdC1maWx0ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5pY2UtZGF0ZS1maWx0ZXIgKm5nU3dpdGNoQ2FzZT1cIidkYXRlJ1wiIGZ4RmxleCBmb3JtQ29udHJvbE5hbWU9XCJ2YWx1ZVwiPjwvbmljZS1kYXRlLWZpbHRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRG91YmxlSW5wdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImZpbHRlckNvbmZpZz8udHlwZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuaWNlLXRleHQtZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCIndGV4dCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVJbmRleF09XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ZpbHRlckNvbmZpZ109XCJmaWx0ZXJDb25maWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeEZsZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic2Vjb25kVmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L25pY2UtdGV4dC1maWx0ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5pY2UtbnVtYmVyLWZpbHRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ251bWJlcidcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVJbmRleF09XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhGbGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInNlY29uZFZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uaWNlLW51bWJlci1maWx0ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5pY2UtcmFkaW8tZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCIncmFkaW8nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhGbGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInNlY29uZFZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ZpbHRlckNvbmZpZ109XCJmaWx0ZXJDb25maWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVJbmRleF09XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtYi0xNlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmljZS1yYWRpby1maWx0ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5pY2Utc2VsZWN0LWZpbHRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ3NlbGVjdCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeEZsZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic2Vjb25kVmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlsdGVyQ29uZmlnXT1cImZpbHRlckNvbmZpZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZUluZGV4XT1cIjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L25pY2Utc2VsZWN0LWZpbHRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmljZS1kYXRlLWZpbHRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlSW5kZXhdPVwiMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ4RmxleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJzZWNvbmRWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmljZS1kYXRlLWZpbHRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiYWxpZ25lZC10ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgXCJjb21wb25lbnRzLnF1ZXJ5X2J1aWxkZXIucnVsZS5jb25kaXRpb25zLmFuZFwiIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiZmlsdGVyQ29uZmlnPy50eXBlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5pY2UtdGV4dC1maWx0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIid0ZXh0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZUluZGV4XT1cIjFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlsdGVyQ29uZmlnXT1cImZpbHRlckNvbmZpZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ4RmxleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmljZS10ZXh0LWZpbHRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmljZS1udW1iZXItZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInbnVtYmVyJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZUluZGV4XT1cIjFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeEZsZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L25pY2UtbnVtYmVyLWZpbHRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmljZS1yYWRpby1maWx0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidyYWRpbydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeEZsZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlsdGVyQ29uZmlnXT1cImZpbHRlckNvbmZpZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZUluZGV4XT1cIjFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1iLTE2XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uaWNlLXJhZGlvLWZpbHRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmljZS1zZWxlY3QtZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInc2VsZWN0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ4RmxleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWx0ZXJDb25maWddPVwiZmlsdGVyQ29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlSW5kZXhdPVwiMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmljZS1zZWxlY3QtZmlsdGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuaWNlLWRhdGUtZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInZGF0ZSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVJbmRleF09XCIxXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhGbGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uaWNlLWRhdGUtZmlsdGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRHYXA9XCI4cHhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LW1pbmktZmFiIGNsYXNzPVwib3ItYnV0dG9uIGFsaWduZWQtYnV0dG9uXCIgKGNsaWNrKT1cIm9uQ2xpY2tPcigpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgXCJjb21wb25lbnRzLnF1ZXJ5X2J1aWxkZXIucnVsZS5jb25kaXRpb25zLm9yXCIgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImFsaWduZWQtYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIGNvbG9yPVwid2FyblwiIChjbGljayk9XCJvbkNsaWNrRGVsZXRlKGkpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { ObjectUtils } from "@recursyve/nice-ui-kit.v2";
|
|
2
|
-
export class FilterUtils {
|
|
3
|
-
static parametersToRequest(filterParameters) {
|
|
4
|
-
var _a, _b, _c, _d, _e, _f;
|
|
5
|
-
return {
|
|
6
|
-
page: {
|
|
7
|
-
number: Math.ceil(((_a = filterParameters.start) !== null && _a !== void 0 ? _a : 0) / ((_b = filterParameters.length) !== null && _b !== void 0 ? _b : 1)),
|
|
8
|
-
size: (_c = filterParameters.length) !== null && _c !== void 0 ? _c : 0
|
|
9
|
-
},
|
|
10
|
-
search: {
|
|
11
|
-
value: (_d = filterParameters.search) !== null && _d !== void 0 ? _d : ""
|
|
12
|
-
},
|
|
13
|
-
query: {
|
|
14
|
-
condition: "and",
|
|
15
|
-
rules: (_e = filterParameters.rules) !== null && _e !== void 0 ? _e : []
|
|
16
|
-
},
|
|
17
|
-
order: (_f = filterParameters.order) !== null && _f !== void 0 ? _f : undefined,
|
|
18
|
-
data: filterParameters.data
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
static filterChangeNeedsRefresh(currentFilters, newFilters) {
|
|
22
|
-
const newFilterKeys = Object.keys(newFilters).sort();
|
|
23
|
-
if (newFilterKeys.length === 0) {
|
|
24
|
-
return true;
|
|
25
|
-
}
|
|
26
|
-
return newFilterKeys.some((key) => {
|
|
27
|
-
const currentValue = currentFilters[key];
|
|
28
|
-
const newValue = currentFilters[key];
|
|
29
|
-
if (Array.isArray(currentValue)) {
|
|
30
|
-
return !ObjectUtils.areObjectsEqual(currentValue, newValue);
|
|
31
|
-
}
|
|
32
|
-
else if (typeof currentValue === "object" && currentValue !== null) {
|
|
33
|
-
return !ObjectUtils.areObjectsEqual(currentValue, newValue);
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
return currentValue !== newValue;
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi91dGlscy9maWx0ZXIudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR3hELE1BQU0sT0FBTyxXQUFXO0lBQ2IsTUFBTSxDQUFDLG1CQUFtQixDQUFDLGdCQUF1Qzs7UUFDckUsT0FBTztZQUNILElBQUksRUFBRTtnQkFDRixNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQUEsZ0JBQWdCLENBQUMsS0FBSyxtQ0FBSSxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQUEsZ0JBQWdCLENBQUMsTUFBTSxtQ0FBSSxDQUFDLENBQUMsQ0FBQztnQkFDakYsSUFBSSxFQUFFLE1BQUEsZ0JBQWdCLENBQUMsTUFBTSxtQ0FBSSxDQUFDO2FBQ3JDO1lBQ0QsTUFBTSxFQUFFO2dCQUNKLEtBQUssRUFBRSxNQUFBLGdCQUFnQixDQUFDLE1BQU0sbUNBQUksRUFBRTthQUN2QztZQUNELEtBQUssRUFBRTtnQkFDSCxTQUFTLEVBQUUsS0FBSztnQkFDaEIsS0FBSyxFQUFFLE1BQUEsZ0JBQWdCLENBQUMsS0FBSyxtQ0FBSSxFQUFFO2FBQ3RDO1lBQ0QsS0FBSyxFQUFFLE1BQUEsZ0JBQWdCLENBQUMsS0FBSyxtQ0FBSSxTQUFTO1lBQzFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJO1NBQzlCLENBQUM7SUFDTixDQUFDO0lBRU0sTUFBTSxDQUFDLHdCQUF3QixDQUFDLGNBQXFDLEVBQUUsVUFBaUM7UUFDM0csTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyRCxJQUFJLGFBQWEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzVCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFDRCxPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUM5QixNQUFNLFlBQVksR0FBSSxjQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xELE1BQU0sUUFBUSxHQUFJLGNBQXNCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDOUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO2dCQUM3QixPQUFPLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDL0Q7aUJBQU0sSUFBSSxPQUFPLFlBQVksS0FBSyxRQUFRLElBQUksWUFBWSxLQUFLLElBQUksRUFBRTtnQkFDbEUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQy9EO2lCQUFNO2dCQUNILE9BQU8sWUFBWSxLQUFLLFFBQVEsQ0FBQzthQUNwQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JqZWN0VXRpbHMgfSBmcm9tIFwiQHJlY3Vyc3l2ZS9uaWNlLXVpLWtpdC52MlwiO1xuaW1wb3J0IHsgRmlsdGVyUGFyYW1ldGVyc01vZGVsLCBGaWx0ZXJRdWVyeU1vZGVsIH0gZnJvbSBcIi4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcblxuZXhwb3J0IGNsYXNzIEZpbHRlclV0aWxzIHtcbiAgICBwdWJsaWMgc3RhdGljIHBhcmFtZXRlcnNUb1JlcXVlc3QoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsKTogRmlsdGVyUXVlcnlNb2RlbCB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBwYWdlOiB7XG4gICAgICAgICAgICAgICAgbnVtYmVyOiBNYXRoLmNlaWwoKGZpbHRlclBhcmFtZXRlcnMuc3RhcnQgPz8gMCkgLyAoZmlsdGVyUGFyYW1ldGVycy5sZW5ndGggPz8gMSkpLFxuICAgICAgICAgICAgICAgIHNpemU6IGZpbHRlclBhcmFtZXRlcnMubGVuZ3RoID8/IDBcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzZWFyY2g6IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogZmlsdGVyUGFyYW1ldGVycy5zZWFyY2ggPz8gXCJcIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHF1ZXJ5OiB7XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uOiBcImFuZFwiLFxuICAgICAgICAgICAgICAgIHJ1bGVzOiBmaWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzID8/IFtdXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb3JkZXI6IGZpbHRlclBhcmFtZXRlcnMub3JkZXIgPz8gdW5kZWZpbmVkLFxuICAgICAgICAgICAgZGF0YTogZmlsdGVyUGFyYW1ldGVycy5kYXRhXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmaWx0ZXJDaGFuZ2VOZWVkc1JlZnJlc2goY3VycmVudEZpbHRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCwgbmV3RmlsdGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IG5ld0ZpbHRlcktleXMgPSBPYmplY3Qua2V5cyhuZXdGaWx0ZXJzKS5zb3J0KCk7XG4gICAgICAgIGlmIChuZXdGaWx0ZXJLZXlzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ld0ZpbHRlcktleXMuc29tZSgoa2V5KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VmFsdWUgPSAoY3VycmVudEZpbHRlcnMgYXMgYW55KVtrZXldO1xuICAgICAgICAgICAgY29uc3QgbmV3VmFsdWUgPSAoY3VycmVudEZpbHRlcnMgYXMgYW55KVtrZXldO1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY3VycmVudFZhbHVlKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiAhT2JqZWN0VXRpbHMuYXJlT2JqZWN0c0VxdWFsKGN1cnJlbnRWYWx1ZSwgbmV3VmFsdWUpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgY3VycmVudFZhbHVlID09PSBcIm9iamVjdFwiICYmIGN1cnJlbnRWYWx1ZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHJldHVybiAhT2JqZWN0VXRpbHMuYXJlT2JqZWN0c0VxdWFsKGN1cnJlbnRWYWx1ZSwgbmV3VmFsdWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY3VycmVudFZhbHVlICE9PSBuZXdWYWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|