novo-elements 10.6.0 → 10.6.1-next.1
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/elements/query-builder/condition-definitions/abstract-condition.definition.d.ts +14 -3
- package/elements/query-builder/condition-definitions/address-condition.definition.d.ts +8 -7
- package/elements/query-builder/condition-definitions/boolean-condition.definition.d.ts +2 -0
- package/elements/query-builder/condition-definitions/date-condition.definition.d.ts +2 -0
- package/elements/query-builder/condition-definitions/date-time-condition.definition.d.ts +2 -0
- package/elements/query-builder/condition-definitions/number-condition.definition.d.ts +2 -0
- package/elements/query-builder/condition-definitions/picker-condition.definition.d.ts +3 -1
- package/elements/query-builder/condition-definitions/string-condition.definition.d.ts +3 -1
- package/esm2022/elements/field/formats/date-format.mjs +4 -1
- package/esm2022/elements/query-builder/condition-definitions/abstract-condition.definition.mjs +41 -4
- package/esm2022/elements/query-builder/condition-definitions/address-condition.definition.mjs +29 -16
- package/esm2022/elements/query-builder/condition-definitions/boolean-condition.definition.mjs +15 -12
- package/esm2022/elements/query-builder/condition-definitions/date-condition.definition.mjs +17 -14
- package/esm2022/elements/query-builder/condition-definitions/date-time-condition.definition.mjs +17 -14
- package/esm2022/elements/query-builder/condition-definitions/number-condition.definition.mjs +16 -13
- package/esm2022/elements/query-builder/condition-definitions/picker-condition.definition.mjs +17 -14
- package/esm2022/elements/query-builder/condition-definitions/string-condition.definition.mjs +20 -17
- package/fesm2022/novo-elements-elements-field.mjs +3 -0
- package/fesm2022/novo-elements-elements-field.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-query-builder.mjs +125 -71
- package/fesm2022/novo-elements-elements-query-builder.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,20 +1,31 @@
|
|
|
1
|
-
import { OnDestroy, OnInit } from '@angular/core';
|
|
2
|
-
import { UntypedFormGroup } from '@angular/forms';
|
|
1
|
+
import { AfterViewInit, OnDestroy, OnInit, QueryList } from '@angular/core';
|
|
2
|
+
import { FormControlName, UntypedFormGroup } from '@angular/forms';
|
|
3
3
|
import { NovoLabelService } from 'novo-elements/services';
|
|
4
4
|
import { NovoConditionFieldDef } from '../query-builder.directives';
|
|
5
5
|
import { Operator } from '../query-builder.types';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
|
-
export declare abstract class AbstractConditionFieldDef implements OnDestroy, OnInit {
|
|
7
|
+
export declare abstract class AbstractConditionFieldDef implements OnDestroy, OnInit, AfterViewInit {
|
|
8
8
|
labels: NovoLabelService;
|
|
9
9
|
/** Column name that should be used to reference this column. */
|
|
10
10
|
get name(): string;
|
|
11
11
|
set name(name: string);
|
|
12
12
|
_name: string;
|
|
13
13
|
defaultOperator: Operator | string;
|
|
14
|
+
protected _previousOperatorValue: Operator;
|
|
15
|
+
protected operatorEditGroups: Set<Operator>[];
|
|
14
16
|
fieldDef: NovoConditionFieldDef;
|
|
17
|
+
formControlsByName: QueryList<FormControlName>;
|
|
15
18
|
constructor(labels: NovoLabelService);
|
|
16
19
|
ngOnInit(): void;
|
|
20
|
+
ngAfterViewInit(): void;
|
|
21
|
+
frameAfterViewInit(): void;
|
|
17
22
|
ngOnDestroy(): void;
|
|
23
|
+
/**
|
|
24
|
+
* Define an edit group of operators. Once defined, if the user switches from one of these operators to another,
|
|
25
|
+
* then the condition value will not be cleared. This makes sense if both operators use the same UI controls for editing.
|
|
26
|
+
* @param operators The set of Operator values intended to share UI controls.
|
|
27
|
+
*/
|
|
28
|
+
protected defineOperatorEditGroup(...operators: Operator[]): void;
|
|
18
29
|
onOperatorSelect(formGroup: UntypedFormGroup): void;
|
|
19
30
|
/** Synchronizes the column definition name with the text column name. */
|
|
20
31
|
private _syncFieldDefName;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { AbstractControl } from '@angular/forms';
|
|
1
|
+
import { ElementRef, InputSignal, OnDestroy, QueryList, Signal, WritableSignal } from '@angular/core';
|
|
2
|
+
import { AbstractControl, UntypedFormGroup } from '@angular/forms';
|
|
3
3
|
import { NovoPickerToggleElement } from 'novo-elements/elements/field';
|
|
4
4
|
import { PlacesListComponent } from 'novo-elements/elements/places';
|
|
5
5
|
import { NovoLabelService } from 'novo-elements/services';
|
|
@@ -9,12 +9,11 @@ import * as i0 from "@angular/core";
|
|
|
9
9
|
/**
|
|
10
10
|
* Handle selection of field values when a list of options is provided.
|
|
11
11
|
*/
|
|
12
|
-
export declare class NovoDefaultAddressConditionDef extends AbstractConditionFieldDef implements
|
|
13
|
-
element: ElementRef;
|
|
14
|
-
labels: NovoLabelService;
|
|
12
|
+
export declare class NovoDefaultAddressConditionDef extends AbstractConditionFieldDef implements OnDestroy {
|
|
15
13
|
overlayChildren: QueryList<NovoPickerToggleElement>;
|
|
16
14
|
inputChildren: QueryList<ElementRef>;
|
|
17
15
|
placesPicker: PlacesListComponent;
|
|
16
|
+
addressSideTest: any;
|
|
18
17
|
radiusValues: number[];
|
|
19
18
|
defaultRadius: number;
|
|
20
19
|
defaults: AddressCriteriaConfig;
|
|
@@ -30,8 +29,9 @@ export declare class NovoDefaultAddressConditionDef extends AbstractConditionFie
|
|
|
30
29
|
chipListModel: any;
|
|
31
30
|
term: string;
|
|
32
31
|
private _addressChangesSubscription;
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
element: ElementRef<any>;
|
|
33
|
+
constructor(labelService: NovoLabelService);
|
|
34
|
+
frameAfterViewInit(): void;
|
|
35
35
|
ngOnDestroy(): void;
|
|
36
36
|
onKeyup(event: any, viewIndex: any): void;
|
|
37
37
|
onKeydown(event: any, viewIndex: any): void;
|
|
@@ -42,6 +42,7 @@ export declare class NovoDefaultAddressConditionDef extends AbstractConditionFie
|
|
|
42
42
|
closePlacesList(viewIndex: any): void;
|
|
43
43
|
selectPlace(event: any, formGroup: AbstractControl, viewIndex: string): void;
|
|
44
44
|
remove(valueToRemove: AddressData, formGroup: AbstractControl, viewIndex: string): void;
|
|
45
|
+
onOperatorSelect(formGroup: UntypedFormGroup): void;
|
|
45
46
|
onRadiusSelect(formGroup: AbstractControl, radius: number): void;
|
|
46
47
|
private assignRadiusFromValue;
|
|
47
48
|
private updateRadiusInValues;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { AbstractConditionFieldDef } from './abstract-condition.definition';
|
|
2
2
|
import { Operator } from '../query-builder.types';
|
|
3
|
+
import { NovoLabelService } from 'novo-elements/services';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
/**
|
|
5
6
|
* When constructing a query using a field that is a boolean with only true/false as possible values.
|
|
6
7
|
*/
|
|
7
8
|
export declare class NovoDefaultBooleanConditionDef extends AbstractConditionFieldDef {
|
|
8
9
|
defaultOperator: Operator;
|
|
10
|
+
constructor(labelService: NovoLabelService);
|
|
9
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<NovoDefaultBooleanConditionDef, never>;
|
|
10
12
|
static ɵcmp: i0.ɵɵComponentDeclaration<NovoDefaultBooleanConditionDef, "novo-boolean-condition-def", never, {}, {}, never, never, false, never>;
|
|
11
13
|
}
|
|
@@ -2,6 +2,7 @@ import { QueryList } from '@angular/core';
|
|
|
2
2
|
import { NovoPickerToggleElement } from 'novo-elements/elements/field';
|
|
3
3
|
import { AbstractConditionFieldDef } from './abstract-condition.definition';
|
|
4
4
|
import { Operator } from '../query-builder.types';
|
|
5
|
+
import { NovoLabelService } from 'novo-elements/services';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
/**
|
|
7
8
|
* Most complicated of the default conditions defs, a date needs to provide a different
|
|
@@ -10,6 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
10
11
|
export declare class NovoDefaultDateConditionDef extends AbstractConditionFieldDef {
|
|
11
12
|
overlayChildren: QueryList<NovoPickerToggleElement>;
|
|
12
13
|
defaultOperator: Operator;
|
|
14
|
+
constructor(labelService: NovoLabelService);
|
|
13
15
|
closePanel(event: any, viewIndex: any): void;
|
|
14
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<NovoDefaultDateConditionDef, never>;
|
|
15
17
|
static ɵcmp: i0.ɵɵComponentDeclaration<NovoDefaultDateConditionDef, "novo-date-condition-def", never, {}, {}, never, never, false, never>;
|
|
@@ -2,6 +2,7 @@ import { QueryList } from '@angular/core';
|
|
|
2
2
|
import { NovoPickerToggleElement } from 'novo-elements/elements/field';
|
|
3
3
|
import { AbstractConditionFieldDef } from './abstract-condition.definition';
|
|
4
4
|
import { Operator } from '../query-builder.types';
|
|
5
|
+
import { NovoLabelService } from 'novo-elements/services';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
/**
|
|
7
8
|
* Most complicated of the default conditions defs, a date needs to provide a different
|
|
@@ -10,6 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
10
11
|
export declare class NovoDefaultDateTimeConditionDef extends AbstractConditionFieldDef {
|
|
11
12
|
overlayChildren: QueryList<NovoPickerToggleElement>;
|
|
12
13
|
defaultOperator: Operator;
|
|
14
|
+
constructor(labelService: NovoLabelService);
|
|
13
15
|
closePanel(event: any, viewIndex: any): void;
|
|
14
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<NovoDefaultDateTimeConditionDef, never>;
|
|
15
17
|
static ɵcmp: i0.ɵɵComponentDeclaration<NovoDefaultDateTimeConditionDef, "novo-date-time-condition-def", never, {}, {}, never, never, false, never>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AbstractConditionFieldDef } from './abstract-condition.definition';
|
|
2
2
|
import { Operator } from '../query-builder.types';
|
|
3
|
+
import { NovoLabelService } from 'novo-elements/services';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
/**
|
|
5
6
|
* When constructing a query using a field that is an Int, Double, Number ...etc.
|
|
@@ -7,6 +8,7 @@ import * as i0 from "@angular/core";
|
|
|
7
8
|
*/
|
|
8
9
|
export declare class NovoDefaultNumberConditionDef extends AbstractConditionFieldDef {
|
|
9
10
|
defaultOperator: Operator;
|
|
11
|
+
constructor(labelService: NovoLabelService);
|
|
10
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<NovoDefaultNumberConditionDef, never>;
|
|
11
13
|
static ɵcmp: i0.ɵɵComponentDeclaration<NovoDefaultNumberConditionDef, "novo-number-condition-def", never, {}, {}, never, never, false, never>;
|
|
12
14
|
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { NovoLabelService } from 'novo-elements/services';
|
|
2
2
|
import { Operator } from '../query-builder.types';
|
|
3
|
+
import { AbstractConditionFieldDef } from './abstract-condition.definition';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
/**
|
|
5
6
|
* Handle selection of field values when a list of options is provided.
|
|
6
7
|
*/
|
|
7
8
|
export declare class NovoDefaultPickerConditionDef extends AbstractConditionFieldDef {
|
|
8
9
|
defaultOperator: Operator;
|
|
10
|
+
constructor(labelService: NovoLabelService);
|
|
9
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<NovoDefaultPickerConditionDef, never>;
|
|
10
12
|
static ɵcmp: i0.ɵɵComponentDeclaration<NovoDefaultPickerConditionDef, "novo-picker-condition-def", never, {}, {}, never, never, false, never>;
|
|
11
13
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AbstractControl } from '@angular/forms';
|
|
2
|
-
import {
|
|
2
|
+
import { NovoLabelService } from 'novo-elements/services';
|
|
3
3
|
import { Operator } from '../query-builder.types';
|
|
4
|
+
import { AbstractConditionFieldDef } from './abstract-condition.definition';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
/**
|
|
6
7
|
* Constructing filters against String fields can be complex. Each "chip" added to the
|
|
@@ -10,6 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
10
11
|
*/
|
|
11
12
|
export declare class NovoDefaultStringConditionDef extends AbstractConditionFieldDef {
|
|
12
13
|
defaultOperator: Operator;
|
|
14
|
+
constructor(labelService: NovoLabelService);
|
|
13
15
|
getValue(formGroup: AbstractControl): any[];
|
|
14
16
|
add(event: any, formGroup: AbstractControl): void;
|
|
15
17
|
remove(valueToRemove: string, formGroup: AbstractControl): void;
|
|
@@ -58,6 +58,9 @@ export class NovoDateFormatDirective extends IMaskDirective {
|
|
|
58
58
|
}
|
|
59
59
|
normalize(value) {
|
|
60
60
|
const pattern = this.labels.dateFormat.toUpperCase();
|
|
61
|
+
if (!value) {
|
|
62
|
+
return "";
|
|
63
|
+
}
|
|
61
64
|
return DateUtil.format(DateUtil.parse(value), pattern);
|
|
62
65
|
}
|
|
63
66
|
formatAsIso(date) {
|
|
@@ -113,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
113
116
|
}], ctorParameters: () => [{ type: i1.NovoLabelService }], propDecorators: { dateFormat: [{
|
|
114
117
|
type: Input
|
|
115
118
|
}] } });
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1mb3JtYXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ub3ZvLWVsZW1lbnRzL3NyYy9lbGVtZW50cy9maWVsZC9mb3JtYXRzL2RhdGUtZm9ybWF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLFVBQVUsRUFBVSxLQUFLLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBMkIsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsY0FBYyxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDcEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUVoRSxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7SUFDdEQsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBU0YsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGNBQW1CO0lBSzlELFlBQW9CLE1BQXdCO1FBQzFDLEtBQUssRUFBRSxDQUFDO1FBRFUsV0FBTSxHQUFOLE1BQU0sQ0FBa0I7UUFKNUMsZ0JBQVcsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUzQyxlQUFVLEdBQWlCLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFJcEQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDeEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUEyQixDQUFDLENBQUMsNkNBQTZDO1FBQ3hGLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxJQUFJLEVBQUUsSUFBSTtZQUNWLE9BQU8sRUFBRSxhQUFhO1lBQ3RCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsT0FBTyxFQUFFLElBQUk7WUFDYixJQUFJLEVBQUUsS0FBSztZQUNYLEdBQUcsRUFBRSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN6QixHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDekIsT0FBTyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFO1lBQ25DLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDeEMsS0FBSyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUNuQyxNQUFNLEVBQUU7Z0JBQ04sQ0FBQyxFQUFFO29CQUNELElBQUksRUFBRSxXQUFXO29CQUNqQixlQUFlLEVBQUUsR0FBRztvQkFDcEIsSUFBSSxFQUFFLENBQUM7b0JBQ1AsRUFBRSxFQUFFLEVBQUU7b0JBQ04sU0FBUyxFQUFFLENBQUM7aUJBQ2I7Z0JBQ0QsQ0FBQyxFQUFFO29CQUNELElBQUksRUFBRSxXQUFXO29CQUNqQixlQUFlLEVBQUUsR0FBRztvQkFDcEIsSUFBSSxFQUFFLENBQUM7b0JBQ1AsRUFBRSxFQUFFLEVBQUU7b0JBQ04sU0FBUyxFQUFFLENBQUM7aUJBQ2I7Z0JBQ0QsQ0FBQyxFQUFFO29CQUNELElBQUksRUFBRSxXQUFXO29CQUNqQixlQUFlLEVBQUUsR0FBRztvQkFDcEIsSUFBSSxFQUFFLElBQUk7b0JBQ1YsRUFBRSxFQUFFLElBQUk7aUJBQ1Q7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWE7UUFDckIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBQ0QsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFVO1FBQ3BCLElBQUksSUFBSSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLElBQUksS0FBSyxJQUFJLElBQUk7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM3QiwrQ0FBK0M7UUFDL0MsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ2xCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3hELE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQW9CO1FBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTtZQUM1QixJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDckIsUUFBUSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3hCLEtBQUssWUFBWSxDQUFDLE9BQU87b0JBQ3ZCLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNuQyxNQUFNO2dCQUNSLEtBQUssWUFBWSxDQUFDLE1BQU07b0JBQ3RCLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNuQyxNQUFNO2dCQUNSO29CQUNFLFNBQVMsR0FBRyxJQUFJLENBQUM7b0JBQ2pCLE1BQU07WUFDVixDQUFDO1lBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hCLENBQUMsQ0FBQztJQUNKLENBQUM7OEdBNUZVLHVCQUF1QjtrR0FBdkIsdUJBQXVCLGdJQUZ2QixDQUFDLHlCQUF5QixFQUFFLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSxDQUFDOzsyRkFFakcsdUJBQXVCO2tCQVBuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsa0JBQWtCO3FCQUMxQjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLHlCQUF5QixFQUFFLENBQUM7aUJBQzdHO3FGQUlVLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbnB1dCwgT3B0aW9uYWwsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ09NUE9TSVRJT05fQlVGRkVSX01PREUsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSU1hc2tEaXJlY3RpdmUsIElNYXNrRmFjdG9yeSB9IGZyb20gJ2FuZ3VsYXItaW1hc2snO1xuaW1wb3J0IHsgaXNWYWxpZCB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IE1hc2tlZFJhbmdlIH0gZnJvbSAnaW1hc2snO1xuaW1wb3J0IHsgTm92b0xhYmVsU2VydmljZSB9IGZyb20gJ25vdm8tZWxlbWVudHMvc2VydmljZXMnO1xuaW1wb3J0IHsgRGF0ZVV0aWwgfSBmcm9tICdub3ZvLWVsZW1lbnRzL3V0aWxzJztcbmltcG9ydCB7IERBVEVfRk9STUFUUywgTk9WT19JTlBVVF9GT1JNQVQgfSBmcm9tICcuL2Jhc2UtZm9ybWF0JztcblxuZXhwb3J0IGNvbnN0IERBVEVGT1JNQVRfVkFMVUVfQUNDRVNTT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBOb3ZvRGF0ZUZvcm1hdERpcmVjdGl2ZSksXG4gIG11bHRpOiB0cnVlLFxufTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnaW5wdXRbZGF0ZUZvcm1hdF0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdub3ZvLWRhdGUtZm9ybWF0JyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbREFURUZPUk1BVF9WQUxVRV9BQ0NFU1NPUiwgeyBwcm92aWRlOiBOT1ZPX0lOUFVUX0ZPUk1BVCwgdXNlRXhpc3Rpbmc6IE5vdm9EYXRlRm9ybWF0RGlyZWN0aXZlIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBOb3ZvRGF0ZUZvcm1hdERpcmVjdGl2ZSBleHRlbmRzIElNYXNrRGlyZWN0aXZlPGFueT4ge1xuICB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQElucHV0KCkgZGF0ZUZvcm1hdDogREFURV9GT1JNQVRTID0gREFURV9GT1JNQVRTLkRBVEU7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBsYWJlbHM6IE5vdm9MYWJlbFNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICAgIGNvbnN0IGRhdGVGb3JtYXQgPSB0aGlzLmxhYmVscy5kYXRlRm9ybWF0LnRvVXBwZXJDYXNlKCk7XG4gICAgdGhpcy51bm1hc2sgPSAndHlwZWQnIGFzIHVua25vd24gYXMgZmFsc2U7IC8vIHR5cGluZyBpcyB0byB3b3JrIGFyb3VuZCBhbmd1bGFyLWltYXNrIGJ1Z1xuICAgIHRoaXMuaW1hc2sgPSB7XG4gICAgICBtYXNrOiBEYXRlLFxuICAgICAgcGF0dGVybjogJ217L31gZHsvfWBZJyxcbiAgICAgIG92ZXJ3cml0ZTogdHJ1ZSxcbiAgICAgIGF1dG9maXg6IHRydWUsXG4gICAgICBsYXp5OiBmYWxzZSxcbiAgICAgIG1pbjogbmV3IERhdGUoMTkwMCwgMCwgMSksXG4gICAgICBtYXg6IG5ldyBEYXRlKDIxMDAsIDAsIDEpLFxuICAgICAgcHJlcGFyZTogKHN0cikgPT4gc3RyLnRvVXBwZXJDYXNlKCksXG4gICAgICBmb3JtYXQ6IChkYXRlKSA9PiB0aGlzLmZvcm1hdFZhbHVlKGRhdGUpLFxuICAgICAgcGFyc2U6IChzdHIpID0+IERhdGVVdGlsLnBhcnNlKHN0ciksXG4gICAgICBibG9ja3M6IHtcbiAgICAgICAgZDoge1xuICAgICAgICAgIG1hc2s6IE1hc2tlZFJhbmdlLFxuICAgICAgICAgIHBsYWNlaG9sZGVyQ2hhcjogJ0QnLFxuICAgICAgICAgIGZyb206IDEsXG4gICAgICAgICAgdG86IDMxLFxuICAgICAgICAgIG1heExlbmd0aDogMixcbiAgICAgICAgfSxcbiAgICAgICAgbToge1xuICAgICAgICAgIG1hc2s6IE1hc2tlZFJhbmdlLFxuICAgICAgICAgIHBsYWNlaG9sZGVyQ2hhcjogJ00nLFxuICAgICAgICAgIGZyb206IDEsXG4gICAgICAgICAgdG86IDEyLFxuICAgICAgICAgIG1heExlbmd0aDogMixcbiAgICAgICAgfSxcbiAgICAgICAgWToge1xuICAgICAgICAgIG1hc2s6IE1hc2tlZFJhbmdlLFxuICAgICAgICAgIHBsYWNlaG9sZGVyQ2hhcjogJ1knLFxuICAgICAgICAgIGZyb206IDE5MDAsXG4gICAgICAgICAgdG86IDk5OTksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBub3JtYWxpemUodmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IHBhdHRlcm4gPSB0aGlzLmxhYmVscy5kYXRlRm9ybWF0LnRvVXBwZXJDYXNlKCk7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuICAgIHJldHVybiBEYXRlVXRpbC5mb3JtYXQoRGF0ZVV0aWwucGFyc2UodmFsdWUpLCBwYXR0ZXJuKTtcbiAgfVxuXG4gIGZvcm1hdEFzSXNvKGRhdGU6IERhdGUpOiBzdHJpbmcge1xuICAgIGlmIChkYXRlICYmIGlzVmFsaWQoZGF0ZSkpIHtcbiAgICAgIHJldHVybiBkYXRlLnRvSVNPU3RyaW5nKCkuc2xpY2UoMCwgMTApO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGZvcm1hdFZhbHVlKHZhbHVlOiBhbnkpOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSByZXR1cm4gJyc7XG4gICAgLy8gVXNlIGBwYXJzZWAgYmVjYXVzZSBpdCBrZWVwcyBkYXRlcyBpbiBsb2NhbGVcbiAgICBjb25zdCBkYXRlID0gRGF0ZVV0aWwucGFyc2UodmFsdWUpO1xuICAgIGlmIChpc1ZhbGlkKGRhdGUpKSB7XG4gICAgICBjb25zdCBkYXRlRm9ybWF0ID0gdGhpcy5sYWJlbHMuZGF0ZUZvcm1hdC50b1VwcGVyQ2FzZSgpO1xuICAgICAgcmV0dXJuIERhdGVVdGlsLmZvcm1hdChkYXRlLCBkYXRlRm9ybWF0KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubm9ybWFsaXplKHZhbHVlKTtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgIHN1cGVyLndyaXRlVmFsdWUodGhpcy5mb3JtYXRWYWx1ZSh2YWx1ZSkpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSAoZGF0ZTogYW55KSA9PiB7XG4gICAgICBsZXQgZm9ybWF0dGVkID0gZGF0ZTtcbiAgICAgIHN3aXRjaCAodGhpcy5kYXRlRm9ybWF0KSB7XG4gICAgICAgIGNhc2UgREFURV9GT1JNQVRTLklTTzg2MDE6XG4gICAgICAgICAgZm9ybWF0dGVkID0gdGhpcy5mb3JtYXRBc0lzbyhkYXRlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBEQVRFX0ZPUk1BVFMuU1RSSU5HOlxuICAgICAgICAgIGZvcm1hdHRlZCA9IHRoaXMuZm9ybWF0VmFsdWUoZGF0ZSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgZm9ybWF0dGVkID0gZGF0ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChkYXRlKTtcbiAgICAgIGZuKGZvcm1hdHRlZCk7XG4gICAgfTtcbiAgfVxufVxuIl19
|
package/esm2022/elements/query-builder/condition-definitions/abstract-condition.definition.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Directive, Input, ViewChild } from '@angular/core';
|
|
1
|
+
import { Directive, Input, QueryList, ViewChild, ViewChildren } from '@angular/core';
|
|
2
|
+
import { FormControlName } from '@angular/forms';
|
|
2
3
|
import { NovoLabelService } from 'novo-elements/services';
|
|
3
4
|
import { NovoConditionFieldDef } from '../query-builder.directives';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
@@ -16,18 +17,51 @@ export class AbstractConditionFieldDef {
|
|
|
16
17
|
}
|
|
17
18
|
constructor(labels) {
|
|
18
19
|
this.labels = labels;
|
|
20
|
+
this.operatorEditGroups = [];
|
|
19
21
|
}
|
|
20
22
|
ngOnInit() {
|
|
21
23
|
this._syncFieldDefName();
|
|
22
24
|
this._syncFieldDefOperatorValue();
|
|
25
|
+
this._previousOperatorValue = this.defaultOperator;
|
|
23
26
|
// Need to add self to FilterBuilder because "ContentChildren won't find it"
|
|
24
27
|
this.fieldDef?.register();
|
|
25
28
|
}
|
|
29
|
+
ngAfterViewInit() {
|
|
30
|
+
setTimeout(() => {
|
|
31
|
+
this.frameAfterViewInit();
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
frameAfterViewInit() {
|
|
35
|
+
const operatorField = this.formControlsByName.find(formControlDirective => formControlDirective.name === 'operator')?.control;
|
|
36
|
+
if (operatorField) {
|
|
37
|
+
this._previousOperatorValue = operatorField.value;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
26
40
|
ngOnDestroy() {
|
|
27
41
|
this.fieldDef?.unregister();
|
|
28
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Define an edit group of operators. Once defined, if the user switches from one of these operators to another,
|
|
45
|
+
* then the condition value will not be cleared. This makes sense if both operators use the same UI controls for editing.
|
|
46
|
+
* @param operators The set of Operator values intended to share UI controls.
|
|
47
|
+
*/
|
|
48
|
+
defineOperatorEditGroup(...operators) {
|
|
49
|
+
this.operatorEditGroups.push(new Set(operators));
|
|
50
|
+
}
|
|
29
51
|
onOperatorSelect(formGroup) {
|
|
30
|
-
|
|
52
|
+
let clearVal = true;
|
|
53
|
+
if (this._previousOperatorValue && this.operatorEditGroups?.length) {
|
|
54
|
+
const previousOperatorGroupIndex = this.operatorEditGroups.findIndex(grp => grp.has(this._previousOperatorValue));
|
|
55
|
+
const newOperatorValue = formGroup.get('operator').getRawValue();
|
|
56
|
+
const newOperatorGroupIndex = this.operatorEditGroups.findIndex(grp => grp.has(newOperatorValue));
|
|
57
|
+
if (previousOperatorGroupIndex !== -1 && newOperatorGroupIndex !== -1 && previousOperatorGroupIndex === newOperatorGroupIndex) {
|
|
58
|
+
clearVal = false;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
this._previousOperatorValue = formGroup.get('operator').value;
|
|
62
|
+
if (clearVal) {
|
|
63
|
+
formGroup.get('value').setValue(null);
|
|
64
|
+
}
|
|
31
65
|
}
|
|
32
66
|
/** Synchronizes the column definition name with the text column name. */
|
|
33
67
|
_syncFieldDefName() {
|
|
@@ -41,7 +75,7 @@ export class AbstractConditionFieldDef {
|
|
|
41
75
|
}
|
|
42
76
|
}
|
|
43
77
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AbstractConditionFieldDef, deps: [{ token: i1.NovoLabelService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
44
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: AbstractConditionFieldDef, inputs: { name: "name" }, viewQueries: [{ propertyName: "fieldDef", first: true, predicate: NovoConditionFieldDef, descendants: true, static: true }], ngImport: i0 }); }
|
|
78
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: AbstractConditionFieldDef, inputs: { name: "name" }, viewQueries: [{ propertyName: "fieldDef", first: true, predicate: NovoConditionFieldDef, descendants: true, static: true }, { propertyName: "formControlsByName", predicate: FormControlName, descendants: true }], ngImport: i0 }); }
|
|
45
79
|
}
|
|
46
80
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AbstractConditionFieldDef, decorators: [{
|
|
47
81
|
type: Directive
|
|
@@ -50,5 +84,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
50
84
|
}], fieldDef: [{
|
|
51
85
|
type: ViewChild,
|
|
52
86
|
args: [NovoConditionFieldDef, { static: true }]
|
|
87
|
+
}], formControlsByName: [{
|
|
88
|
+
type: ViewChildren,
|
|
89
|
+
args: [FormControlName]
|
|
53
90
|
}] } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtY29uZGl0aW9uLmRlZmluaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ub3ZvLWVsZW1lbnRzL3NyYy9lbGVtZW50cy9xdWVyeS1idWlsZGVyL2NvbmRpdGlvbi1kZWZpbml0aW9ucy9hYnN0cmFjdC1jb25kaXRpb24uZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZILE9BQU8sRUFBd0IsZUFBZSxFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxxQkFBcUIsRUFBNkIsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBSS9GLE1BQU0sT0FBZ0IseUJBQXlCO0lBQzdDLGdFQUFnRTtJQUNoRSxJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLElBQVk7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbEIsc0VBQXNFO1FBQ3RFLGdGQUFnRjtRQUNoRixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBV0QsWUFBbUIsTUFBd0I7UUFBeEIsV0FBTSxHQUFOLE1BQU0sQ0FBa0I7UUFMakMsdUJBQWtCLEdBQW9CLEVBQUUsQ0FBQztJQUtMLENBQUM7SUFFL0MsUUFBUTtRQUNOLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsZUFBMkIsQ0FBQztRQUMvRCw0RUFBNEU7UUFD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ZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBRdWVyeUxpc3QsIFZpZXdDaGlsZCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbERpcmVjdGl2ZSwgRm9ybUNvbnRyb2xOYW1lLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTm92b0xhYmVsU2VydmljZSB9IGZyb20gJ25vdm8tZWxlbWVudHMvc2VydmljZXMnO1xuaW1wb3J0IHsgTm92b0NvbmRpdGlvbkZpZWxkRGVmLCBOb3ZvQ29uZGl0aW9uT3BlcmF0b3JzRGVmIH0gZnJvbSAnLi4vcXVlcnktYnVpbGRlci5kaXJlY3RpdmVzJztcbmltcG9ydCB7IE9wZXJhdG9yIH0gZnJvbSAnLi4vcXVlcnktYnVpbGRlci50eXBlcyc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0Q29uZGl0aW9uRmllbGREZWYgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIC8qKiBDb2x1bW4gbmFtZSB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIHJlZmVyZW5jZSB0aGlzIGNvbHVtbi4gKi9cbiAgQElucHV0KClcbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuICBzZXQgbmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9uYW1lID0gbmFtZTtcbiAgICAvLyBXaXRoIEl2eSwgaW5wdXRzIGNhbiBiZSBpbml0aWFsaXplZCBiZWZvcmUgc3RhdGljIHF1ZXJ5IHJlc3VsdHMgYXJlXG4gICAgLy8gYXZhaWxhYmxlLiBJbiB0aGF0IGNhc2UsIHdlIGRlZmVyIHRoZSBzeW5jaHJvbml6YXRpb24gdW50aWwgXCJuZ09uSW5pdFwiIGZpcmVzLlxuICAgIHRoaXMuX3N5bmNGaWVsZERlZk5hbWUoKTtcbiAgfVxuICBfbmFtZTogc3RyaW5nO1xuXG4gIGRlZmF1bHRPcGVyYXRvcjogT3BlcmF0b3IgfCBzdHJpbmc7XG4gIHByb3RlY3RlZCBfcHJldmlvdXNPcGVyYXRvclZhbHVlOiBPcGVyYXRvcjtcblxuICBwcm90ZWN0ZWQgb3BlcmF0b3JFZGl0R3JvdXBzOiBTZXQ8T3BlcmF0b3I+W10gPSBbXTtcblxuICBAVmlld0NoaWxkKE5vdm9Db25kaXRpb25GaWVsZERlZiwgeyBzdGF0aWM6IHRydWUgfSkgZmllbGREZWY6IE5vdm9Db25kaXRpb25GaWVsZERlZjtcbiAgQFZpZXdDaGlsZHJlbihGb3JtQ29udHJvbE5hbWUpIGZvcm1Db250cm9sc0J5TmFtZTogUXVlcnlMaXN0PEZvcm1Db250cm9sTmFtZT47XG5cbiAgY29uc3RydWN0b3IocHVibGljIGxhYmVsczogTm92b0xhYmVsU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9zeW5jRmllbGREZWZOYW1lKCk7XG4gICAgdGhpcy5fc3luY0ZpZWxkRGVmT3BlcmF0b3JWYWx1ZSgpO1xuICAgIHRoaXMuX3ByZXZpb3VzT3BlcmF0b3JWYWx1ZSA9IHRoaXMuZGVmYXVsdE9wZXJhdG9yIGFzIE9wZXJhdG9yO1xuICAgIC8vIE5lZWQgdG8gYWRkIHNlbGYgdG8gRmlsdGVyQnVpbGRlciBiZWNhdXNlIFwiQ29udGVudENoaWxkcmVuIHdvbid0IGZpbmQgaXRcIlxuICAgIHRoaXMuZmllbGREZWY/LnJlZ2lzdGVyKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmZyYW1lQWZ0ZXJWaWV3SW5pdCgpO1xuICAgIH0pO1xuICB9XG5cbiAgZnJhbWVBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IG9wZXJhdG9yRmllbGQgPSB0aGlzLmZvcm1Db250cm9sc0J5TmFtZS5maW5kKGZvcm1Db250cm9sRGlyZWN0aXZlID0+IGZvcm1Db250cm9sRGlyZWN0aXZlLm5hbWUgPT09ICdvcGVyYXRvcicpPy5jb250cm9sO1xuICAgIGlmIChvcGVyYXRvckZpZWxkKSB7XG4gICAgICB0aGlzLl9wcmV2aW91c09wZXJhdG9yVmFsdWUgPSBvcGVyYXRvckZpZWxkLnZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZmllbGREZWY/LnVucmVnaXN0ZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWZpbmUgYW4gZWRpdCBncm91cCBvZiBvcGVyYXRvcnMuIE9uY2UgZGVmaW5lZCwgaWYgdGhlIHVzZXIgc3dpdGNoZXMgZnJvbSBvbmUgb2YgdGhlc2Ugb3BlcmF0b3JzIHRvIGFub3RoZXIsXG4gICAqIHRoZW4gdGhlIGNvbmRpdGlvbiB2YWx1ZSB3aWxsIG5vdCBiZSBjbGVhcmVkLiBUaGlzIG1ha2VzIHNlbnNlIGlmIGJvdGggb3BlcmF0b3JzIHVzZSB0aGUgc2FtZSBVSSBjb250cm9scyBmb3IgZWRpdGluZy5cbiAgICogQHBhcmFtIG9wZXJhdG9ycyBUaGUgc2V0IG9mIE9wZXJhdG9yIHZhbHVlcyBpbnRlbmRlZCB0byBzaGFyZSBVSSBjb250cm9scy5cbiAgICovXG4gIHByb3RlY3RlZCBkZWZpbmVPcGVyYXRvckVkaXRHcm91cCguLi5vcGVyYXRvcnM6IE9wZXJhdG9yW10pOiB2b2lkIHtcbiAgICB0aGlzLm9wZXJhdG9yRWRpdEdyb3Vwcy5wdXNoKG5ldyBTZXQob3BlcmF0b3JzKSk7XG4gIH1cblxuICBvbk9wZXJhdG9yU2VsZWN0KGZvcm1Hcm91cDogVW50eXBlZEZvcm1Hcm91cCk6IHZvaWQge1xuICAgIGxldCBjbGVhclZhbCA9IHRydWU7XG4gICAgaWYgKHRoaXMuX3ByZXZpb3VzT3BlcmF0b3JWYWx1ZSAmJiB0aGlzLm9wZXJhdG9yRWRpdEdyb3Vwcz8ubGVuZ3RoKSB7XG4gICAgICBjb25zdCBwcmV2aW91c09wZXJhdG9yR3JvdXBJbmRleCA9IHRoaXMub3BlcmF0b3JFZGl0R3JvdXBzLmZpbmRJbmRleChncnAgPT4gZ3JwLmhhcyh0aGlzLl9wcmV2aW91c09wZXJhdG9yVmFsdWUpKTtcbiAgICAgIGNvbnN0IG5ld09wZXJhdG9yVmFsdWUgPSBmb3JtR3JvdXAuZ2V0KCdvcGVyYXRvcicpLmdldFJhd1ZhbHVlKCk7XG4gICAgICBjb25zdCBuZXdPcGVyYXRvckdyb3VwSW5kZXggPSB0aGlzLm9wZXJhdG9yRWRpdEdyb3Vwcy5maW5kSW5kZXgoZ3JwID0+IGdycC5oYXMobmV3T3BlcmF0b3JWYWx1ZSkpO1xuICAgICAgaWYgKHByZXZpb3VzT3BlcmF0b3JHcm91cEluZGV4ICE9PSAtMSAmJiBuZXdPcGVyYXRvckdyb3VwSW5kZXggIT09IC0xICYmIHByZXZpb3VzT3BlcmF0b3JHcm91cEluZGV4ID09PSBuZXdPcGVyYXRvckdyb3VwSW5kZXgpIHtcbiAgICAgICAgY2xlYXJWYWwgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fcHJldmlvdXNPcGVyYXRvclZhbHVlID0gZm9ybUdyb3VwLmdldCgnb3BlcmF0b3InKS52YWx1ZTtcbiAgICBpZiAoY2xlYXJWYWwpIHtcbiAgICAgIGZvcm1Hcm91cC5nZXQoJ3ZhbHVlJykuc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFN5bmNocm9uaXplcyB0aGUgY29sdW1uIGRlZmluaXRpb24gbmFtZSB3aXRoIHRoZSB0ZXh0IGNvbHVtbiBuYW1lLiAqL1xuICBwcml2YXRlIF9zeW5jRmllbGREZWZOYW1lKCkge1xuICAgIGlmICh0aGlzLmZpZWxkRGVmKSB7XG4gICAgICB0aGlzLmZpZWxkRGVmLm5hbWUgPSB0aGlzLm5hbWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfc3luY0ZpZWxkRGVmT3BlcmF0b3JWYWx1ZSgpIHtcbiAgICBpZiAodGhpcy5maWVsZERlZikge1xuICAgICAgdGhpcy5maWVsZERlZi5kZWZhdWx0T3BlcmF0b3IgPSB0aGlzLmRlZmF1bHRPcGVyYXRvcjtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
package/esm2022/elements/query-builder/condition-definitions/address-condition.definition.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, ElementRef, input, QueryList, signal, ViewChild, ViewChildren, ViewEncapsulation } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, ElementRef, inject, input, QueryList, signal, ViewChild, ViewChildren, ViewEncapsulation } from '@angular/core';
|
|
2
2
|
import { NovoPickerToggleElement } from 'novo-elements/elements/field';
|
|
3
3
|
import { PlacesListComponent } from 'novo-elements/elements/places';
|
|
4
4
|
import { NovoLabelService } from 'novo-elements/services';
|
|
@@ -6,6 +6,7 @@ import { Helpers } from 'novo-elements/utils';
|
|
|
6
6
|
import { Subscription } from 'rxjs';
|
|
7
7
|
import { Operator, RadiusUnits } from '../query-builder.types';
|
|
8
8
|
import { AbstractConditionFieldDef } from './abstract-condition.definition';
|
|
9
|
+
import { NovoSelectElement } from 'novo-elements/elements/select';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
import * as i1 from "novo-elements/services";
|
|
11
12
|
import * as i2 from "@angular/common";
|
|
@@ -22,10 +23,8 @@ import * as i11 from "../query-builder.directives";
|
|
|
22
23
|
* Handle selection of field values when a list of options is provided.
|
|
23
24
|
*/
|
|
24
25
|
export class NovoDefaultAddressConditionDef extends AbstractConditionFieldDef {
|
|
25
|
-
constructor(
|
|
26
|
-
super(
|
|
27
|
-
this.element = element;
|
|
28
|
-
this.labels = labels;
|
|
26
|
+
constructor(labelService) {
|
|
27
|
+
super(labelService);
|
|
29
28
|
// Static defaults
|
|
30
29
|
this.radiusValues = [5, 10, 20, 30, 40, 50, 100];
|
|
31
30
|
this.defaultRadius = 30;
|
|
@@ -49,15 +48,16 @@ export class NovoDefaultAddressConditionDef extends AbstractConditionFieldDef {
|
|
|
49
48
|
this.chipListModel = '';
|
|
50
49
|
this.term = '';
|
|
51
50
|
this._addressChangesSubscription = Subscription.EMPTY;
|
|
51
|
+
this.element = inject(ElementRef);
|
|
52
|
+
this.defineOperatorEditGroup(Operator.includeAny, Operator.excludeAny, Operator.radius);
|
|
52
53
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
frameAfterViewInit() {
|
|
55
|
+
super.frameAfterViewInit();
|
|
56
|
+
// Initialize the radius value from existing data
|
|
57
|
+
this.assignRadiusFromValue();
|
|
58
|
+
// Update the radius on address value changes
|
|
59
|
+
this._addressChangesSubscription = this.inputChildren.changes.subscribe(() => {
|
|
56
60
|
this.assignRadiusFromValue();
|
|
57
|
-
// Update the radius on address value changes
|
|
58
|
-
this._addressChangesSubscription = this.inputChildren.changes.subscribe(() => {
|
|
59
|
-
this.assignRadiusFromValue();
|
|
60
|
-
});
|
|
61
61
|
});
|
|
62
62
|
}
|
|
63
63
|
ngOnDestroy() {
|
|
@@ -122,6 +122,16 @@ export class NovoDefaultAddressConditionDef extends AbstractConditionFieldDef {
|
|
|
122
122
|
}
|
|
123
123
|
this.closePlacesList(viewIndex);
|
|
124
124
|
}
|
|
125
|
+
// Override abstract behavior - allow moving location from includeAny to radius, but when moving the opposite direction,
|
|
126
|
+
// trim out radius information from the value
|
|
127
|
+
onOperatorSelect(formGroup) {
|
|
128
|
+
const previousOperator = this._previousOperatorValue;
|
|
129
|
+
super.onOperatorSelect(formGroup);
|
|
130
|
+
if ([previousOperator, formGroup.get('operator').getRawValue()].indexOf(Operator.radius) !== -1 &&
|
|
131
|
+
formGroup.get('value').getRawValue() != null) {
|
|
132
|
+
formGroup.get('value').setValue(this.updateRadiusInValues(formGroup, this.getValue(formGroup)));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
125
135
|
onRadiusSelect(formGroup, radius) {
|
|
126
136
|
this.radius.set(radius);
|
|
127
137
|
// We must dirty the form explicitly to show up as a user modification when it was done programmatically
|
|
@@ -155,8 +165,8 @@ export class NovoDefaultAddressConditionDef extends AbstractConditionFieldDef {
|
|
|
155
165
|
isRadiusOperatorSelected(formGroup) {
|
|
156
166
|
return formGroup.get('operator').value === 'radius';
|
|
157
167
|
}
|
|
158
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NovoDefaultAddressConditionDef, deps: [{ token:
|
|
159
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.2.3", type: NovoDefaultAddressConditionDef, selector: "novo-address-condition-def", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "placesPicker", first: true, predicate: ["placesPicker"], descendants: true }, { propertyName: "overlayChildren", predicate: NovoPickerToggleElement, descendants: true }, { propertyName: "inputChildren", predicate: ["addressInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
168
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NovoDefaultAddressConditionDef, deps: [{ token: i1.NovoLabelService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
169
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.2.3", type: NovoDefaultAddressConditionDef, selector: "novo-address-condition-def", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "placesPicker", first: true, predicate: ["placesPicker"], descendants: true }, { propertyName: "overlayChildren", predicate: NovoPickerToggleElement, descendants: true }, { propertyName: "inputChildren", predicate: ["addressInput"], descendants: true }, { propertyName: "addressSideTest", predicate: NovoSelectElement, descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
160
170
|
<ng-container novoConditionFieldDef>
|
|
161
171
|
<novo-field *novoConditionOperatorsDef="let formGroup" [formGroup]="formGroup">
|
|
162
172
|
<novo-select [placeholder]="labels.operator" formControlName="operator" (onSelect)="onOperatorSelect(formGroup)">
|
|
@@ -256,7 +266,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
256
266
|
encapsulation: ViewEncapsulation.None,
|
|
257
267
|
changeDetection: ChangeDetectionStrategy.Default,
|
|
258
268
|
}]
|
|
259
|
-
}], ctorParameters: () => [{ type:
|
|
269
|
+
}], ctorParameters: () => [{ type: i1.NovoLabelService }], propDecorators: { overlayChildren: [{
|
|
260
270
|
type: ViewChildren,
|
|
261
271
|
args: [NovoPickerToggleElement]
|
|
262
272
|
}], inputChildren: [{
|
|
@@ -265,5 +275,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
265
275
|
}], placesPicker: [{
|
|
266
276
|
type: ViewChild,
|
|
267
277
|
args: ['placesPicker']
|
|
278
|
+
}], addressSideTest: [{
|
|
279
|
+
type: ViewChildren,
|
|
280
|
+
args: [NovoSelectElement]
|
|
268
281
|
}] } });
|
|
269
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy1jb25kaXRpb24uZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25vdm8tZWxlbWVudHMvc3JjL2VsZW1lbnRzL3F1ZXJ5LWJ1aWxkZXIvY29uZGl0aW9uLWRlZmluaXRpb25zL2FkZHJlc3MtY29uZGl0aW9uLmRlZmluaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixLQUFLLEVBR0wsU0FBUyxFQUVULE1BQU0sRUFDTixTQUFTLEVBQ1QsWUFBWSxFQUNaLGlCQUFpQixFQUVsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsT0FBTyxFQUFPLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQTZFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxSSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7Ozs7OztBQUU1RTs7R0FFRztBQW9ESCxNQUFNLE9BQU8sOEJBQStCLFNBQVEseUJBQXlCO0lBcUMzRSxZQUFtQixPQUFtQixFQUFTLE1BQXdCO1FBQ3JFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQURHLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFrQjtRQWhDdkUsa0JBQWtCO1FBQ2xCLGlCQUFZLEdBQWEsQ0FBQyxDQUFDLEVBQUUs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LEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRTtTQUMxQixDQUFDO0lBQ0osQ0FBQztJQUVPLFNBQVMsQ0FBQyxTQUEwQjtRQUMxQyxPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDOUUsQ0FBQztJQUVPLHdCQUF3QixDQUFDLFNBQTBCO1FBQ3pELE9BQU8sU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDO0lBQ3RELENBQUM7OEdBbEtVLDhCQUE4QjtrR0FBOUIsOEJBQThCLDRVQUMzQix1QkFBdUIsMEpBbEQzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkNUOzsyRkFJVSw4QkFBOEI7a0JBbkQxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkNUO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsT0FBTztpQkFDakQ7OEdBRXdDLGVBQWU7c0JBQXJELFlBQVk7dUJBQUMsdUJBQXVCO2dCQUNQLGFBQWE7c0JBQTFDLFlBQVk7dUJBQUMsY0FBYztnQkFDRCxZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgRWxlbWVudFJlZixcbiAgaW5wdXQsXG4gIElucHV0U2lnbmFsLFxuICBPbkRlc3Ryb3ksXG4gIFF1ZXJ5TGlzdCxcbiAgU2lnbmFsLFxuICBzaWduYWwsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgV3JpdGFibGVTaWduYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOb3ZvUGlja2VyVG9nZ2xlRWxlbWVudCB9IGZyb20gJ25vdm8tZWxlbWVudHMvZWxlbWVudHMvZmllbGQnO1xuaW1wb3J0IHsgUGxhY2VzTGlzdENvbXBvbmVudCB9IGZyb20gJ25vdm8tZWxlbWVudHMvZWxlbWVudHMvcGxhY2VzJztcbmltcG9ydCB7IE5vdm9MYWJlbFNlcnZpY2UgfSBmcm9tICdub3ZvLWVsZW1lbnRzL3NlcnZpY2VzJztcbmltcG9ydCB7IEhlbHBlcnMsIEtleSB9IGZyb20gJ25vdm8tZWxlbWVudHMvdXRpbHMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBZGRyZXNzQ3JpdGVyaWFDb25maWcsIEFkZHJlc3NEYXRhLCBBZGRyZXNzUmFkaXVzLCBBZGRyZXNzUmFkaXVzVW5pdHNOYW1lLCBPcGVyYXRvciwgUmFkaXVzVW5pdHMgfSBmcm9tICcuLi9xdWVyeS1idWlsZGVyLnR5cGVzJztcbmltcG9ydCB7IEFic3RyYWN0Q29uZGl0aW9uRmllbGREZWYgfSBmcm9tICcuL2Fic3RyYWN0LWNvbmRpdGlvbi5kZWZpbml0aW9uJztcblxuLyoqXG4gKiBIYW5kbGUgc2VsZWN0aW9uIG9mIGZpZWxkIHZhbHVlcyB3aGVuIGEgbGlzdCBvZiBvcHRpb25zIGlzIHByb3ZpZGVkLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdub3ZvLWFkZHJlc3MtY29uZGl0aW9uLWRlZicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciBub3ZvQ29uZGl0aW9uRmllbGREZWY+XG4gICAgICA8bm92by1maWVsZCAqbm92b0NvbmRpdGlvbk9wZXJhdG9yc0RlZj1cImxldCBmb3JtR3JvdXBcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgICAgICA8bm92by1zZWxlY3QgW3BsYWNlaG9sZGVyXT1cImxhYmVscy5vcGVyYXRvclwiIGZvcm1Db250cm9sTmFtZT1cIm9wZXJhdG9yXCIgKG9uU2VsZWN0KT1cIm9uT3BlcmF0b3JTZWxlY3QoZm9ybUdyb3VwKVwiPlxuICAgICAgICAgIDxub3ZvLW9wdGlvbiB2YWx1ZT1cImluY2x1ZGVBbnlcIj57eyBsYWJlbHMuaW5jbHVkZUFueSB9fTwvbm92by1vcHRpb24+XG4gICAgICAgICAgPG5vdm8tb3B0aW9uIHZhbHVlPVwiZXhjbHVkZUFueVwiPnt7IGxhYmVscy5leGNsdWRlIH19PC9ub3ZvLW9wdGlvbj5cbiAgICAgICAgICA8bm92by1vcHRpb24gdmFsdWU9XCJyYWRpdXNcIiAqbmdJZj1cInJhZGl1c0VuYWJsZWQoKVwiPnt7IGxhYmVscy5yYWRpdXMgfX08L25vdm8tb3B0aW9uPlxuICAgICAgICA8L25vdm8tc2VsZWN0PlxuICAgICAgPC9ub3ZvLWZpZWxkPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbm92b0NvbmRpdGlvbklucHV0RGVmPVwibGV0IGZvcm1Hcm91cDsgdmlld0luZGV4IGFzIHZpZXdJbmRleDsgZmllbGRNZXRhIGFzIG1ldGFcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgICAgICA8bm92by1mbGV4IGp1c3RpZnk9XCJzcGFjZS1iZXR3ZWVuXCIgYWxpZ249XCJlbmRcIj5cbiAgICAgICAgICA8bm92by1maWVsZCAjbm92b1JhZGl1c0ZpZWxkICpuZ0lmPVwiZm9ybUdyb3VwLnZhbHVlLm9wZXJhdG9yID09PSAncmFkaXVzJ1wiIGNsYXNzPVwiYWRkcmVzcy1yYWRpdXNcIj5cbiAgICAgICAgICAgIDxub3ZvLXNlbGVjdFxuICAgICAgICAgICAgICAjcmFkaXVzU2VsZWN0IFtwbGFjZWhvbGRlcl09XCJsYWJlbHMucmFkaXVzXCJcbiAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIm9uUmFkaXVzU2VsZWN0KGZvcm1Hcm91cCwgJGV2ZW50LnNlbGVjdGVkKVwiXG4gICAgICAgICAgICAgIFt2YWx1ZV09XCJyYWRpdXMoKVwiXG4gICAgICAgICAgICAgIFtvcHRpb25zXT1cInJhZGl1c09wdGlvbnMoKVwiPlxuICAgICAgICAgICAgPC9ub3ZvLXNlbGVjdD5cbiAgICAgICAgICA8L25vdm8tZmllbGQ+XG4gICAgICAgICAgPG5vdm8tZmllbGQgI25vdm9GaWVsZCBjbGFzcz1cImFkZHJlc3MtbG9jYXRpb25cIj5cbiAgICAgICAgICAgIDxub3ZvLWNoaXAtbGlzdCBbKG5nTW9kZWwpXT1cImNoaXBMaXN0TW9kZWxcIiBbbmdNb2RlbE9wdGlvbnNdPVwieyBzdGFuZGFsb25lOiB0cnVlIH1cIiAoY2xpY2spPVwib3BlblBsYWNlc0xpc3Qodmlld0luZGV4KVwiPlxuICAgICAgICAgICAgICA8bm92by1jaGlwICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZvcm1Hcm91cC5nZXQoJ3ZhbHVlJykudmFsdWVcIiAocmVtb3ZlZCk9XCJyZW1vdmUoaXRlbSwgZm9ybUdyb3VwLCB2aWV3SW5kZXgpXCI+XG4gICAgICAgICAgICAgICAgPG5vdm8tdGV4dCBlbGxpcHNpcz57eyBpdGVtLmZvcm1hdHRlZF9hZGRyZXNzIH19PC9ub3ZvLXRleHQ+XG4gICAgICAgICAgICAgICAgPG5vdm8taWNvbiBub3ZvQ2hpcFJlbW92ZT5jbG9zZTwvbm92by1pY29uPlxuICAgICAgICAgICAgICA8L25vdm8tY2hpcD5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgbm92b0NoaXBJbnB1dFxuICAgICAgICAgICAgICAgIFtpZF09XCJ2aWV3SW5kZXhcIlxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJsYWJlbHMubG9jYXRpb25cIlxuICAgICAgICAgICAgICAgIChrZXl1cCk9XCJvbktleXVwKCRldmVudCwgdmlld0luZGV4KVwiXG4gICAgICAgICAgICAgICAgKGtleWRvd24pPVwib25LZXlkb3duKCRldmVudCwgdmlld0luZGV4KVwiXG4gICAgICAgICAgICAgICAgW3BpY2tlcl09XCJwbGFjZXNQaWNrZXJcIlxuICAgICAgICAgICAgICAgICNhZGRyZXNzSW5wdXQvPlxuICAgICAgICAgICAgPC9ub3ZvLWNoaXAtbGlzdD5cbiAgICAgICAgICAgIDxub3ZvLXBpY2tlci10b2dnbGUgW292ZXJsYXlJZF09XCJ2aWV3SW5kZXhcIiBpY29uPVwibG9jYXRpb25cIiBub3ZvU3VmZml4PlxuICAgICAgICAgICAgICA8Z29vZ2xlLXBsYWNlcy1saXN0XG4gICAgICAgICAgICAgICAgW3Rlcm1dPVwidGVybVwiXG4gICAgICAgICAgICAgICAgKHNlbGVjdCk9XCJzZWxlY3RQbGFjZSgkZXZlbnQsIGZvcm1Hcm91cCwgdmlld0luZGV4KVwiXG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICNwbGFjZXNQaWNrZXIvPlxuICAgICAgICAgICAgPC9ub3ZvLXBpY2tlci10b2dnbGU+XG4gICAgICAgICAgPC9ub3ZvLWZpZWxkPlxuICAgICAgICA8L25vdm8tZmxleD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICBgLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG59KVxuZXhwb3J0IGNsYXNzIE5vdm9EZWZhdWx0QWRkcmVzc0NvbmRpdGlvbkRlZiBleHRlbmRzIEFic3RyYWN0Q29uZGl0aW9uRmllbGREZWYgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkcmVuKE5vdm9QaWNrZXJUb2dnbGVFbGVtZW50KSBvdmVybGF5Q2hpbGRyZW46IFF1ZXJ5TGlzdDxOb3ZvUGlja2VyVG9nZ2xlRWxlbWVudD47XG4gIEBWaWV3Q2hpbGRyZW4oJ2FkZHJlc3NJbnB1dCcpIGlucHV0Q2hpbGRyZW46IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcbiAgQFZpZXdDaGlsZCgncGxhY2VzUGlja2VyJykgcGxhY2VzUGlja2VyOiBQbGFjZXNMaXN0Q29tcG9uZW50O1xuXG4gIC8vIFN0YXRpYyBkZWZhdWx0c1xuICByYWRpdXNWYWx1ZXM6IG51bWJlcltdID0gWzUsIDEwLCAyMCwgMzAsIDQwLCA1MCwgMTAwXTtcbiAgZGVmYXVsdFJhZGl1czogbnVtYmVyID0gMzA7XG5cbiAgLy8gT3ZlcnJpZGFibGUgZGVmYXVsdHNcbiAgZGVmYXVsdHM6IEFkZHJlc3NDcml0ZXJpYUNvbmZpZyA9IHtcbiAgICByYWRpdXNFbmFibGVkOiBmYWxzZSxcbiAgICByYWRpdXNVbml0czogJ21pbGVzJyxcbiAgfTtcbiAgY29uZmlnOiBJbnB1dFNpZ25hbDxBZGRyZXNzQ3JpdGVyaWFDb25maWc+ID0gaW5wdXQoKTtcbiAgcmFkaXVzVW5pdHM6IFNpZ25hbDxBZGRyZXNzUmFkaXVzVW5pdHNOYW1lPiA9IGNvbXB1dGVkKCgpID0+XG4gICAgdGhpcy5jb25maWcoKT8ucmFkaXVzVW5pdHMgfHwgdGhpcy5kZWZhdWx0cy5yYWRpdXNVbml0c1xuICApO1xuICByYWRpdXNFbmFibGVkOiBTaWduYWw8Ym9vbGVhbj4gPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuY29uZmlnKCk/LnJhZGl1c0VuYWJsZWQgfHwgdGhpcy5kZWZhdWx0cy5yYWRpdXNFbmFibGVkXG4gICk7XG5cbiAgcmFkaXVzOiBXcml0YWJsZVNpZ25hbDxudW1iZXI+ID0gc2lnbmFsKHRoaXMuZGVmYXVsdFJhZGl1cyk7XG4gIHJhZGl1c09wdGlvbnM6IFNpZ25hbDx7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBudW1iZXI7IH1bXT4gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgdW5pdHNMYWJlbCA9IHRoaXMucmFkaXVzVW5pdHMoKSA9PT0gUmFkaXVzVW5pdHMubWlsZXMgPyB0aGlzLmxhYmVscy5taWxlcyA6IHRoaXMubGFiZWxzLmttO1xuICAgIHJldHVybiB0aGlzLnJhZGl1c1ZhbHVlcy5tYXAodmFsdWUgPT4gKHtcbiAgICAgIGxhYmVsOiBgJHt2YWx1ZS50b1N0cmluZygpfSAke3VuaXRzTGFiZWx9YCxcbiAgICAgIHZhbHVlLFxuICAgIH0pKTtcbiAgfSk7XG5cbiAgZGVmYXVsdE9wZXJhdG9yID0gT3BlcmF0b3IuaW5jbHVkZUFueTtcbiAgY2hpcExpc3RNb2RlbDogYW55ID0gJyc7XG4gIHRlcm06IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX2FkZHJlc3NDaGFuZ2VzU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnQ6IEVsZW1lbnRSZWYsIHB1YmxpYyBsYWJlbHM6IE5vdm9MYWJlbFNlcnZpY2UpIHtcbiAgICBzdXBlcihsYWJlbHMpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgLy8gSW5pdGlhbGl6ZSB0aGUgcmFkaXVzIHZhbHVlIGZyb20gZXhpc3RpbmcgZGF0YVxuICAgICAgdGhpcy5hc3NpZ25SYWRpdXNGcm9tVmFsdWUoKTtcblxuICAgICAgLy8gVXBkYXRlIHRoZSByYWRpdXMgb24gYWRkcmVzcyB2YWx1ZSBjaGFuZ2VzXG4gICAgICB0aGlzLl9hZGRyZXNzQ2hhbmdlc1N1YnNjcmlwdGlvbiA9IHRoaXMuaW5wdXRDaGlsZHJlbi5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuYXNzaWduUmFkaXVzRnJvbVZhbHVlKCk7XG4gICAgICB9KVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fYWRkcmVzc0NoYW5nZXNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG9uS2V5dXAoZXZlbnQsIHZpZXdJbmRleCkge1xuICAgIGlmICghW0tleS5Fc2NhcGUsIEtleS5FbnRlcl0uaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgdGhpcy5vcGVuUGxhY2VzTGlzdCh2aWV3SW5kZXgpO1xuICAgIH1cbiAgICB0aGlzLnRlcm0gPSBldmVudC50YXJnZXQudmFsdWU7XG4gIH1cblxuICBvbktleWRvd24oZXZlbnQsIHZpZXdJbmRleCkge1xuICAgIGlmICghdGhpcy5wbGFjZXNQaWNrZXIuZHJvcGRvd25PcGVuKSB7XG4gICAgICB0aGlzLm9wZW5QbGFjZXNMaXN0KHZpZXdJbmRleCk7XG4gICAgICB0aGlzLnBsYWNlc1BpY2tlci5kcm9wZG93bk9wZW4gPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoW0tleS5Fc2NhcGUsIEtleS5UYWJdLmluY2x1ZGVzKGV2ZW50LmtleSkpIHtcbiAgICAgIHRoaXMuY2xvc2VQbGFjZXNMaXN0KHZpZXdJbmRleCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGxhY2VzUGlja2VyLm9uS2V5RG93bihldmVudCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0VmFsdWUoZm9ybUdyb3VwOiBBYnN0cmFjdENvbnRyb2wpOiBBZGRyZXNzRGF0YVtdIHtcbiAgICByZXR1cm4gZm9ybUdyb3VwLnZhbHVlLnZhbHVlIHx8IFtdO1xuICB9XG5cbiAgZ2V0Q3VycmVudE92ZXJsYXkodmlld0luZGV4OiBzdHJpbmcpOiBOb3ZvUGlja2VyVG9nZ2xlRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMub3ZlcmxheUNoaWxkcmVuPy5maW5kKGl0ZW0gPT4gaXRlbS5vdmVybGF5SWQgPT09IHZpZXdJbmRleCk7XG4gIH1cblxuICBnZXRDdXJyZW50SW5wdXQodmlld0luZGV4OiBzdHJpbmcpOiBFbGVtZW50UmVmIHtcbiAgICByZXR1cm4gdGhpcy5pbnB1dENoaWxkcmVuPy5maW5kKGl0ZW0gPT4gKGl0ZW0gYXMgYW55KS5uYXRpdmVFbGVtZW50LmlkID09PSB2aWV3SW5kZXgpO1xuICB9XG5cbiAgb3BlblBsYWNlc0xpc3Qodmlld0luZGV4KSB7XG4gICAgdGhpcy5nZXRDdXJyZW50T3ZlcmxheSh2aWV3SW5kZXgpPy5vcGVuUGFuZWwoKTtcbiAgfVxuXG4gIGNsb3NlUGxhY2VzTGlzdCh2aWV3SW5kZXgpIHtcbiAgICB0aGlzLmdldEN1cnJlbnRPdmVybGF5KHZpZXdJbmRleCk/LmNsb3NlUGFuZWwoKTtcbiAgfVxuXG4gIHNlbGVjdFBsYWNlKGV2ZW50OiBhbnksIGZvcm1Hcm91cDogQWJzdHJhY3RDb250cm9sLCB2aWV3SW5kZXg6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlVG9BZGQ6IEFkZHJlc3NEYXRhID0ge1xuICAgICAgYWRkcmVzc19jb21wb25lbnRzOiBldmVudC5hZGRyZXNzX2NvbXBvbmVudHMsXG4gICAgICBmb3JtYXR0ZWRfYWRkcmVzczogZXZlbnQuZm9ybWF0dGVkX2FkZHJlc3MsXG4gICAgICBnZW9tZXRyeTogZXZlbnQuZ2VvbWV0cnksXG4gICAgICBwbGFjZV9pZDogZXZlbnQucGxhY2VfaWQsXG4gICAgfTtcbiAgICBjb25zdCBjdXJyZW50OiBBZGRyZXNzRGF0YSB8IEFkZHJlc3NEYXRhW10gPSB0aGlzLmdldFZhbHVlKGZvcm1Hcm91cCk7XG4gICAgY29uc3QgdXBkYXRlZDogQWRkcmVzc0RhdGFbXSA9IEFycmF5LmlzQXJyYXkoY3VycmVudCkgPyBbLi4uY3VycmVudCwgdmFsdWVUb0FkZF0gOiBbdmFsdWVUb0FkZF07XG4gICAgZm9ybUdyb3VwLmdldCgndmFsdWUnKS5zZXRWYWx1ZSh0aGlzLnVwZGF0ZVJhZGl1c0luVmFsdWVzKGZvcm1Hcm91cCwgdXBkYXRlZCkpO1xuXG4gICAgdGhpcy5pbnB1dENoaWxkcmVuLmZvckVhY2goaW5wdXQgPT4ge1xuICAgICAgaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgIH0pXG4gICAgdGhpcy5nZXRDdXJyZW50SW5wdXQodmlld0luZGV4KT8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIHRoaXMuY2xvc2VQbGFjZXNMaXN0KHZpZXdJbmRleCk7XG4gIH1cblxuICByZW1vdmUodmFsdWVUb1JlbW92ZTogQWRkcmVzc0RhdGEsIGZvcm1Hcm91cDogQWJzdHJhY3RDb250cm9sLCB2aWV3SW5kZXg6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLmdldFZhbHVlKGZvcm1Hcm91cCk7XG4gICAgY29uc3QgaW5kZXggPSBjdXJyZW50LmluZGV4T2YodmFsdWVUb1JlbW92ZSk7XG4gICAgaWYgKGluZGV4ID49IDApIHtcbiAgICAgIGNvbnN0IG9sZFZhbHVlID0gWy4uLmN1cnJlbnRdXG4gICAgICBvbGRWYWx1ZS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgZm9ybUdyb3VwLmdldCgndmFsdWUnKS5zZXRWYWx1ZShvbGRWYWx1ZSk7XG4gICAgfVxuICAgIHRoaXMuY2xvc2VQbGFjZXNMaXN0KHZpZXdJbmRleCk7XG4gIH1cblxuICBvblJhZGl1c1NlbGVjdChmb3JtR3JvdXA6IEFic3RyYWN0Q29udHJvbCwgcmFkaXVzOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnJhZGl1cy5zZXQocmFkaXVzKTtcbiAgICAvLyBXZSBtdXN0IGRpcnR5IHRoZSBmb3JtIGV4cGxpY2l0bHkgdG8gc2hvdyB1cCBhcyBhIHVzZXIgbW9kaWZpY2F0aW9uIHdoZW4gaXQgd2FzIGRvbmUgcHJvZ3JhbW1hdGljYWxseVxuICAgIGZvcm1Hcm91cC5nZXQoJ3ZhbHVlJykuc2V0VmFsdWUodGhpcy51cGRhdGVSYWRpdXNJblZhbHVlcyhmb3JtR3JvdXAsIHRoaXMuZ2V0VmFsdWUoZm9ybUdyb3VwKSkpO1xuICAgIGZvcm1Hcm91cC5tYXJrQXNEaXJ0eSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3NpZ25SYWRpdXNGcm9tVmFsdWUoKSB7XG4gICAgaWYgKHRoaXMucGxhY2VzUGlja2VyPy5tb2RlbD8ubGVuZ3RoKSB7XG4gICAgICBjb25zdCBhZGRyZXNzRGF0YTogQWRkcmVzc0RhdGEgPSB0aGlzLnBsYWNlc1BpY2tlci5tb2RlbFswXTtcbiAgICAgIGNvbnN0IGluaXRpYWxSYWRpdXMgPSBhZGRyZXNzRGF0YS5yYWRpdXM/LnZhbHVlO1xuICAgICAgaWYgKGluaXRpYWxSYWRpdXMgJiYgSGVscGVycy5pc051bWJlcihpbml0aWFsUmFkaXVzKSkge1xuICAgICAgICB0aGlzLnJhZGl1cy5zZXQoaW5pdGlhbFJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVSYWRpdXNJblZhbHVlcyhmb3JtR3JvdXA6IEFic3RyYWN0Q29udHJvbCwgdmFsdWVzOiBBZGRyZXNzRGF0YVtdKTogQWRkcmVzc0RhdGFbXSB7XG4gICAgcmV0dXJuIHZhbHVlcy5tYXAodmFsID0+ICh7XG4gICAgICAuLi52YWwsXG4gICAgICByYWRpdXM6IHRoaXMuaXNSYWRpdXNPcGVyYXRvclNlbGVjdGVkKGZvcm1Hcm91cCkgPyB0aGlzLmdldFJhZGl1c0RhdGEoZm9ybUdyb3VwKSA6IHVuZGVmaW5lZCxcbiAgICB9KSk7XG4gIH1cblxuICBwcml2YXRlIGdldFJhZGl1c0RhdGEoZm9ybUdyb3VwOiBBYnN0cmFjdENvbnRyb2wpOiBBZGRyZXNzUmFkaXVzIHtcbiAgICByZXR1cm4ge1xuICAgICAgdmFsdWU6IHRoaXMuZ2V0UmFkaXVzKGZvcm1Hcm91cCksXG4gICAgICB1bml0czogdGhpcy5yYWRpdXNVbml0cygpLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldFJhZGl1cyhmb3JtR3JvdXA6IEFic3RyYWN0Q29udHJvbCk6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuaXNSYWRpdXNPcGVyYXRvclNlbGVjdGVkKGZvcm1Hcm91cCkgPyB0aGlzLnJhZGl1cygpIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1JhZGl1c09wZXJhdG9yU2VsZWN0ZWQoZm9ybUdyb3VwOiBBYnN0cmFjdENvbnRyb2wpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZm9ybUdyb3VwLmdldCgnb3BlcmF0b3InKS52YWx1ZSA9PT0gJ3JhZGl1cyc7XG4gIH1cbn1cbiJdfQ==
|
|
282
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy1jb25kaXRpb24uZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25vdm8tZWxlbWVudHMvc3JjL2VsZW1lbnRzL3F1ZXJ5LWJ1aWxkZXIvY29uZGl0aW9uLWRlZmluaXRpb25zL2FkZHJlc3MtY29uZGl0aW9uLmRlZmluaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUdMLFNBQVMsRUFFVCxNQUFNLEVBQ04sU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFFbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLE9BQU8sRUFBTyxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUE2RSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUksT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFFbEU7O0dBRUc7QUFvREgsTUFBTSxPQUFPLDhCQUErQixTQUFRLHlCQUF5QjtJQXdDM0UsWUFBWSxZQUE4QjtRQUN4QyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFuQ3RCLGtCQUFrQjtRQUNsQixpQkFBWSxHQUFhLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFB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QTlCLDhCQUE4Qiw0VUFDM0IsdUJBQXVCLHdKQUd2QixpQkFBaUIsdUVBckRyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkNUOzsyRkFJVSw4QkFBOEI7a0JBbkQxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkNUO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsT0FBTztpQkFDakQ7cUZBRXdDLGVBQWU7c0JBQXJELFlBQVk7dUJBQUMsdUJBQXVCO2dCQUNQLGFBQWE7c0JBQTFDLFlBQVk7dUJBQUMsY0FBYztnQkFDRCxZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWM7Z0JBQ1EsZUFBZTtzQkFBL0MsWUFBWTt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgSW5wdXRTaWduYWwsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBTaWduYWwsXG4gIHNpZ25hbCxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBXcml0YWJsZVNpZ25hbFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5vdm9QaWNrZXJUb2dnbGVFbGVtZW50IH0gZnJvbSAnbm92by1lbGVtZW50cy9lbGVtZW50cy9maWVsZCc7XG5pbXBvcnQgeyBQbGFjZXNMaXN0Q29tcG9uZW50IH0gZnJvbSAnbm92by1lbGVtZW50cy9lbGVtZW50cy9wbGFjZXMnO1xuaW1wb3J0IHsgTm92b0xhYmVsU2VydmljZSB9IGZyb20gJ25vdm8tZWxlbWVudHMvc2VydmljZXMnO1xuaW1wb3J0IHsgSGVscGVycywgS2V5IH0gZnJvbSAnbm92by1lbGVtZW50cy91dGlscyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFkZHJlc3NDcml0ZXJpYUNvbmZpZywgQWRkcmVzc0RhdGEsIEFkZHJlc3NSYWRpdXMsIEFkZHJlc3NSYWRpdXNVbml0c05hbWUsIE9wZXJhdG9yLCBSYWRpdXNVbml0cyB9IGZyb20gJy4uL3F1ZXJ5LWJ1aWxkZXIudHlwZXMnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb25kaXRpb25GaWVsZERlZiB9IGZyb20gJy4vYWJzdHJhY3QtY29uZGl0aW9uLmRlZmluaXRpb24nO1xuaW1wb3J0IHsgTm92b1NlbGVjdEVsZW1lbnQgfSBmcm9tICdub3ZvLWVsZW1lbnRzL2VsZW1lbnRzL3NlbGVjdCc7XG5cbi8qKlxuICogSGFuZGxlIHNlbGVjdGlvbiBvZiBmaWVsZCB2YWx1ZXMgd2hlbiBhIGxpc3Qgb2Ygb3B0aW9ucyBpcyBwcm92aWRlZC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbm92by1hZGRyZXNzLWNvbmRpdGlvbi1kZWYnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXIgbm92b0NvbmRpdGlvbkZpZWxkRGVmPlxuICAgICAgPG5vdm8tZmllbGQgKm5vdm9Db25kaXRpb25PcGVyYXRvcnNEZWY9XCJsZXQgZm9ybUdyb3VwXCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgICAgICAgPG5vdm8tc2VsZWN0IFtwbGFjZWhvbGRlcl09XCJsYWJlbHMub3BlcmF0b3JcIiBmb3JtQ29udHJvbE5hbWU9XCJvcGVyYXRvclwiIChvblNlbGVjdCk9XCJvbk9wZXJhdG9yU2VsZWN0KGZvcm1Hcm91cClcIj5cbiAgICAgICAgICA8bm92by1vcHRpb24gdmFsdWU9XCJpbmNsdWRlQW55XCI+e3sgbGFiZWxzLmluY2x1ZGVBbnkgfX08L25vdm8tb3B0aW9uPlxuICAgICAgICAgIDxub3ZvLW9wdGlvbiB2YWx1ZT1cImV4Y2x1ZGVBbnlcIj57eyBsYWJlbHMuZXhjbHVkZSB9fTwvbm92by1vcHRpb24+XG4gICAgICAgICAgPG5vdm8tb3B0aW9uIHZhbHVlPVwicmFkaXVzXCIgKm5nSWY9XCJyYWRpdXNFbmFibGVkKClcIj57eyBsYWJlbHMucmFkaXVzIH19PC9ub3ZvLW9wdGlvbj5cbiAgICAgICAgPC9ub3ZvLXNlbGVjdD5cbiAgICAgIDwvbm92by1maWVsZD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5vdm9Db25kaXRpb25JbnB1dERlZj1cImxldCBmb3JtR3JvdXA7IHZpZXdJbmRleCBhcyB2aWV3SW5kZXg7IGZpZWxkTWV0YSBhcyBtZXRhXCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgICAgICAgPG5vdm8tZmxleCBqdXN0aWZ5PVwic3BhY2UtYmV0d2VlblwiIGFsaWduPVwiZW5kXCI+XG4gICAgICAgICAgPG5vdm8tZmllbGQgI25vdm9SYWRpdXNGaWVsZCAqbmdJZj1cImZvcm1Hcm91cC52YWx1ZS5vcGVyYXRvciA9PT0gJ3JhZGl1cydcIiBjbGFzcz1cImFkZHJlc3MtcmFkaXVzXCI+XG4gICAgICAgICAgICA8bm92by1zZWxlY3RcbiAgICAgICAgICAgICAgI3JhZGl1c1NlbGVjdCBbcGxhY2Vob2xkZXJdPVwibGFiZWxzLnJhZGl1c1wiXG4gICAgICAgICAgICAgIChvblNlbGVjdCk9XCJvblJhZGl1c1NlbGVjdChmb3JtR3JvdXAsICRldmVudC5zZWxlY3RlZClcIlxuICAgICAgICAgICAgICBbdmFsdWVdPVwicmFkaXVzKClcIlxuICAgICAgICAgICAgICBbb3B0aW9uc109XCJyYWRpdXNPcHRpb25zKClcIj5cbiAgICAgICAgICAgIDwvbm92by1zZWxlY3Q+XG4gICAgICAgICAgPC9ub3ZvLWZpZWxkPlxuICAgICAgICAgIDxub3ZvLWZpZWxkICNub3ZvRmllbGQgY2xhc3M9XCJhZGRyZXNzLWxvY2F0aW9uXCI+XG4gICAgICAgICAgICA8bm92by1jaGlwLWxpc3QgWyhuZ01vZGVsKV09XCJjaGlwTGlzdE1vZGVsXCIgW25nTW9kZWxPcHRpb25zXT1cInsgc3RhbmRhbG9uZTogdHJ1ZSB9XCIgKGNsaWNrKT1cIm9wZW5QbGFjZXNMaXN0KHZpZXdJbmRleClcIj5cbiAgICAgICAgICAgICAgPG5vdm8tY2hpcCAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmb3JtR3JvdXAuZ2V0KCd2YWx1ZScpLnZhbHVlXCIgKHJlbW92ZWQpPVwicmVtb3ZlKGl0ZW0sIGZvcm1Hcm91cCwgdmlld0luZGV4KVwiPlxuICAgICAgICAgICAgICAgIDxub3ZvLXRleHQgZWxsaXBzaXM+e3sgaXRlbS5mb3JtYXR0ZWRfYWRkcmVzcyB9fTwvbm92by10ZXh0PlxuICAgICAgICAgICAgICAgIDxub3ZvLWljb24gbm92b0NoaXBSZW1vdmU+Y2xvc2U8L25vdm8taWNvbj5cbiAgICAgICAgICAgICAgPC9ub3ZvLWNoaXA+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIG5vdm9DaGlwSW5wdXRcbiAgICAgICAgICAgICAgICBbaWRdPVwidmlld0luZGV4XCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwibGFiZWxzLmxvY2F0aW9uXCJcbiAgICAgICAgICAgICAgICAoa2V5dXApPVwib25LZXl1cCgkZXZlbnQsIHZpZXdJbmRleClcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQsIHZpZXdJbmRleClcIlxuICAgICAgICAgICAgICAgIFtwaWNrZXJdPVwicGxhY2VzUGlja2VyXCJcbiAgICAgICAgICAgICAgICAjYWRkcmVzc0lucHV0Lz5cbiAgICAgICAgICAgIDwvbm92by1jaGlwLWxpc3Q+XG4gICAgICAgICAgICA8bm92by1waWNrZXItdG9nZ2xlIFtvdmVybGF5SWRdPVwidmlld0luZGV4XCIgaWNvbj1cImxvY2F0aW9uXCIgbm92b1N1ZmZpeD5cbiAgICAgICAgICAgICAgPGdvb2dsZS1wbGFjZXMtbGlzdFxuICAgICAgICAgICAgICAgIFt0ZXJtXT1cInRlcm1cIlxuICAgICAgICAgICAgICAgIChzZWxlY3QpPVwic2VsZWN0UGxhY2UoJGV2ZW50LCBmb3JtR3JvdXAsIHZpZXdJbmRleClcIlxuICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAjcGxhY2VzUGlja2VyLz5cbiAgICAgICAgICAgIDwvbm92by1waWNrZXItdG9nZ2xlPlxuICAgICAgICAgIDwvbm92by1maWVsZD5cbiAgICAgICAgPC9ub3ZvLWZsZXg+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgYCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxufSlcbmV4cG9ydCBjbGFzcyBOb3ZvRGVmYXVsdEFkZHJlc3NDb25kaXRpb25EZWYgZXh0ZW5kcyBBYnN0cmFjdENvbmRpdGlvbkZpZWxkRGVmIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZHJlbihOb3ZvUGlja2VyVG9nZ2xlRWxlbWVudCkgb3ZlcmxheUNoaWxkcmVuOiBRdWVyeUxpc3Q8Tm92b1BpY2tlclRvZ2dsZUVsZW1lbnQ+O1xuICBAVmlld0NoaWxkcmVuKCdhZGRyZXNzSW5wdXQnKSBpbnB1dENoaWxkcmVuOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj47XG4gIEBWaWV3Q2hpbGQoJ3BsYWNlc1BpY2tlcicpIHBsYWNlc1BpY2tlcjogUGxhY2VzTGlzdENvbXBvbmVudDtcbiAgQFZpZXdDaGlsZHJlbihOb3ZvU2VsZWN0RWxlbWVudCkgYWRkcmVzc1NpZGVUZXN0OiBhbnk7XG5cbiAgLy8gU3RhdGljIGRlZmF1bHRzXG4gIHJhZGl1c1ZhbHVlczogbnVtYmVyW10gPSBbNSwgMTAsIDIwLCAzMCwgNDAsIDUwLCAxMDBdO1xuICBkZWZhdWx0UmFkaXVzOiBudW1iZXIgPSAzMDtcblxuICAvLyBPdmVycmlkYWJsZSBkZWZhdWx0c1xuICBkZWZhdWx0czogQWRkcmVzc0NyaXRlcmlhQ29uZmlnID0ge1xuICAgIHJhZGl1c0VuYWJsZWQ6IGZhbHNlLFxuICAgIHJhZGl1c1VuaXRzOiAnbWlsZXMnLFxuICB9O1xuICBjb25maWc6IElucHV0U2lnbmFsPEFkZHJlc3NDcml0ZXJpYUNvbmZpZz4gPSBpbnB1dCgpO1xuICByYWRpdXNVbml0czogU2lnbmFsPEFkZHJlc3NSYWRpdXNVbml0c05hbWU+ID0gY29tcHV0ZWQoKCkgPT5cbiAgICB0aGlzLmNvbmZpZygpPy5yYWRpdXNVbml0cyB8fCB0aGlzLmRlZmF1bHRzLnJhZGl1c1VuaXRzXG4gICk7XG4gIHJhZGl1c0VuYWJsZWQ6IFNpZ25hbDxib29sZWFuPiA9IGNvbXB1dGVkKCgpID0+XG4gICAgdGhpcy5jb25maWcoKT8ucmFkaXVzRW5hYmxlZCB8fCB0aGlzLmRlZmF1bHRzLnJhZGl1c0VuYWJsZWRcbiAgKTtcblxuICByYWRpdXM6IFdyaXRhYmxlU2lnbmFsPG51bWJlcj4gPSBzaWduYWwodGhpcy5kZWZhdWx0UmFkaXVzKTtcbiAgcmFkaXVzT3B0aW9uczogU2lnbmFsPHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IG51bWJlcjsgfVtdPiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCB1bml0c0xhYmVsID0gdGhpcy5yYWRpdXNVbml0cygpID09PSBSYWRpdXNVbml0cy5taWxlcyA/IHRoaXMubGFiZWxzLm1pbGVzIDogdGhpcy5sYWJlbHMua207XG4gICAgcmV0dXJuIHRoaXMucmFkaXVzVmFsdWVzLm1hcCh2YWx1ZSA9PiAoe1xuICAgICAgbGFiZWw6IGAke3ZhbHVlLnRvU3RyaW5nKCl9ICR7dW5pdHNMYWJlbH1gLFxuICAgICAgdmFsdWUsXG4gICAgfSkpO1xuICB9KTtcblxuICBkZWZhdWx0T3BlcmF0b3IgPSBPcGVyYXRvci5pbmNsdWRlQW55O1xuICBjaGlwTGlzdE1vZGVsOiBhbnkgPSAnJztcbiAgdGVybTogc3RyaW5nID0gJyc7XG5cbiAgcHJpdmF0ZSBfYWRkcmVzc0NoYW5nZXNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICBwdWJsaWMgZWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICBjb25zdHJ1Y3RvcihsYWJlbFNlcnZpY2U6IE5vdm9MYWJlbFNlcnZpY2UpIHtcbiAgICBzdXBlcihsYWJlbFNlcnZpY2UpO1xuICAgIHRoaXMuZGVmaW5lT3BlcmF0b3JFZGl0R3JvdXAoT3BlcmF0b3IuaW5jbHVkZUFueSwgT3BlcmF0b3IuZXhjbHVkZUFueSwgT3BlcmF0b3IucmFkaXVzKTtcbiAgfVxuXG4gIGZyYW1lQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5mcmFtZUFmdGVyVmlld0luaXQoKTtcbiAgICAvLyBJbml0aWFsaXplIHRoZSByYWRpdXMgdmFsdWUgZnJvbSBleGlzdGluZyBkYXRhXG4gICAgdGhpcy5hc3NpZ25SYWRpdXNGcm9tVmFsdWUoKTtcblxuICAgIC8vIFVwZGF0ZSB0aGUgcmFkaXVzIG9uIGFkZHJlc3MgdmFsdWUgY2hhbmdlc1xuICAgIHRoaXMuX2FkZHJlc3NDaGFuZ2VzU3Vic2NyaXB0aW9uID0gdGhpcy5pbnB1dENoaWxkcmVuLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuYXNzaWduUmFkaXVzRnJvbVZhbHVlKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9hZGRyZXNzQ2hhbmdlc1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgb25LZXl1cChldmVudCwgdmlld0luZGV4KSB7XG4gICAgaWYgKCFbS2V5LkVzY2FwZSwgS2V5LkVudGVyXS5pbmNsdWRlcyhldmVudC5rZXkpKSB7XG4gICAgICB0aGlzLm9wZW5QbGFjZXNMaXN0KHZpZXdJbmRleCk7XG4gICAgfVxuICAgIHRoaXMudGVybSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgfVxuXG4gIG9uS2V5ZG93bihldmVudCwgdmlld0luZGV4KSB7XG4gICAgaWYgKCF0aGlzLnBsYWNlc1BpY2tlci5kcm9wZG93bk9wZW4pIHtcbiAgICAgIHRoaXMub3BlblBsYWNlc0xpc3Qodmlld0luZGV4KTtcbiAgICAgIHRoaXMucGxhY2VzUGlja2VyLmRyb3Bkb3duT3BlbiA9IHRydWU7XG4gICAgfVxuICAgIGlmIChbS2V5LkVzY2FwZSwgS2V5LlRhYl0uaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgdGhpcy5jbG9zZVBsYWNlc0xpc3Qodmlld0luZGV4KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wbGFjZXNQaWNrZXIub25LZXlEb3duKGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBnZXRWYWx1ZShmb3JtR3JvdXA6IEFic3RyYWN0Q29udHJvbCk6IEFkZHJlc3NEYXRhW10ge1xuICAgIHJldHVybiBmb3JtR3JvdXAudmFsdWUudmFsdWUgfHwgW107XG4gIH1cblxuICBnZXRDdXJyZW50T3ZlcmxheSh2aWV3SW5kZXg6IHN0cmluZyk6IE5vdm9QaWNrZXJUb2dnbGVFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5Q2hpbGRyZW4/LmZpbmQoaXRlbSA9PiBpdGVtLm92ZXJsYXlJZCA9PT0gdmlld0luZGV4KTtcbiAgfVxuXG4gIGdldEN1cnJlbnRJbnB1dCh2aWV3SW5kZXg6IHN0cmluZyk6IEVsZW1lbnRSZWYge1xuICAgIHJldHVybiB0aGlzLmlucHV0Q2hpbGRyZW4/LmZpbmQoaXRlbSA9PiAoaXRlbSBhcyBhbnkpLm5hdGl2ZUVsZW1lbnQuaWQgPT09IHZpZXdJbmRleCk7XG4gIH1cblxuICBvcGVuUGxhY2VzTGlzdCh2aWV3SW5kZXgpIHtcbiAgICB0aGlzLmdldEN1cnJlbnRPdmVybGF5KHZpZXdJbmRleCk/Lm9wZW5QYW5lbCgpO1xuICB9XG5cbiAgY2xvc2VQbGFjZXNMaXN0KHZpZXdJbmRleCkge1xuICAgIHRoaXMuZ2V0Q3VycmVudE92ZXJsYXkodmlld0luZGV4KT8uY2xvc2VQYW5lbCgpO1xuICB9XG5cbiAgc2VsZWN0UGxhY2UoZXZlbnQ6IGFueSwgZm9ybUdyb3VwOiBBYnN0cmFjdENvbnRyb2wsIHZpZXdJbmRleDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWVUb0FkZDogQWRkcmVzc0RhdGEgPSB7XG4gICAgICBhZGRyZXNzX2NvbXBvbmVudHM6IGV2ZW50LmFkZHJlc3NfY29tcG9uZW50cyxcbiAgICAgIGZvcm1hdHRlZF9hZGRyZXNzOiBldmVudC5mb3JtYXR0ZWRfYWRkcmVzcyxcbiAgICAgIGdlb21ldHJ5OiBldmVudC5nZW9tZXRyeSxcbiAgICAgIHBsYWNlX2lkOiBldmVudC5wbGFjZV9pZCxcbiAgICB9O1xuICAgIGNvbnN0IGN1cnJlbnQ6IEFkZHJlc3NEYXRhIHwgQWRkcmVzc0RhdGFbXSA9IHRoaXMuZ2V0VmFsdWUoZm9ybUdyb3VwKTtcbiAgICBjb25zdCB1cGRhdGVkOiBBZGRyZXNzRGF0YVtdID0gQXJyYXkuaXNBcnJheShjdXJyZW50KSA/IFsuLi5jdXJyZW50LCB2YWx1ZVRvQWRkXSA6IFt2YWx1ZVRvQWRkXTtcbiAgICBmb3JtR3JvdXAuZ2V0KCd2YWx1ZScpLnNldFZhbHVlKHRoaXMudXBkYXRlUmFkaXVzSW5WYWx1ZXMoZm9ybUdyb3VwLCB1cGRhdGVkKSk7XG5cbiAgICB0aGlzLmlucHV0Q2hpbGRyZW4uZm9yRWFjaChpbnB1dCA9PiB7XG4gICAgICBpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgfSlcbiAgICB0aGlzLmdldEN1cnJlbnRJbnB1dCh2aWV3SW5kZXgpPy5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgdGhpcy5jbG9zZVBsYWNlc0xpc3Qodmlld0luZGV4KTtcbiAgfVxuXG4gIHJlbW92ZSh2YWx1ZVRvUmVtb3ZlOiBBZGRyZXNzRGF0YSwgZm9ybUdyb3VwOiBBYnN0cmFjdENvbnRyb2wsIHZpZXdJbmRleDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudCA9IHRoaXMuZ2V0VmFsdWUoZm9ybUdyb3VwKTtcbiAgICBjb25zdCBpbmRleCA9IGN1cnJlbnQuaW5kZXhPZih2YWx1ZVRvUmVtb3ZlKTtcbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgY29uc3Qgb2xkVmFsdWUgPSBbLi4uY3VycmVudF1cbiAgICAgIG9sZFZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICBmb3JtR3JvdXAuZ2V0KCd2YWx1ZScpLnNldFZhbHVlKG9sZFZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5jbG9zZVBsYWNlc0xpc3Qodmlld0luZGV4KTtcbiAgfVxuXG4gIC8vIE92ZXJyaWRlIGFic3RyYWN0IGJlaGF2aW9yIC0gYWxsb3cgbW92aW5nIGxvY2F0aW9uIGZyb20gaW5jbHVkZUFueSB0byByYWRpdXMsIGJ1dCB3aGVuIG1vdmluZyB0aGUgb3Bwb3NpdGUgZGlyZWN0aW9uLFxuICAvLyB0cmltIG91dCByYWRpdXMgaW5mb3JtYXRpb24gZnJvbSB0aGUgdmFsdWVcbiAgb25PcGVyYXRvclNlbGVjdChmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXApOiB2b2lkIHtcbiAgICBjb25zdCBwcmV2aW91c09wZXJhdG9yID0gdGhpcy5fcHJldmlvdXNPcGVyYXRvclZhbHVlO1xuICAgIHN1cGVyLm9uT3BlcmF0b3JTZWxlY3QoZm9ybUdyb3VwKTtcbiAgICBpZiAoW3ByZXZpb3VzT3BlcmF0b3IsIGZvcm1Hcm91cC5nZXQoJ29wZXJhdG9yJykuZ2V0UmF3VmFsdWUoKV0uaW5kZXhPZihPcGVyYXRvci5yYWRpdXMpICE9PSAtMSAmJlxuICAgICAgICBmb3JtR3JvdXAuZ2V0KCd2YWx1ZScpLmdldFJhd1ZhbHVlKCkgIT0gbnVsbCkge1xuICAgICAgZm9ybUdyb3VwLmdldCgndmFsdWUnKS5zZXRWYWx1ZSh0aGlzLnVwZGF0ZVJhZGl1c0luVmFsdWVzKGZvcm1Hcm91cCwgdGhpcy5nZXRWYWx1ZShmb3JtR3JvdXApKSk7XG4gICAgfVxuICB9XG5cbiAgb25SYWRpdXNTZWxlY3QoZm9ybUdyb3VwOiBBYnN0cmFjdENvbnRyb2wsIHJhZGl1czogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5yYWRpdXMuc2V0KHJhZGl1cyk7XG4gICAgLy8gV2UgbXVzdCBkaXJ0eSB0aGUgZm9ybSBleHBsaWNpdGx5IHRvIHNob3cgdXAgYXMgYSB1c2VyIG1vZGlmaWNhdGlvbiB3aGVuIGl0IHdhcyBkb25lIHByb2dyYW1tYXRpY2FsbHlcbiAgICBmb3JtR3JvdXAuZ2V0KCd2YWx1ZScpLnNldFZhbHVlKHRoaXMudXBkYXRlUmFkaXVzSW5WYWx1ZXMoZm9ybUdyb3VwLCB0aGlzLmdldFZhbHVlKGZvcm1Hcm91cCkpKTtcbiAgICBmb3JtR3JvdXAubWFya0FzRGlydHkoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXNzaWduUmFkaXVzRnJvbVZhbHVlKCkge1xuICAgIGlmICh0aGlzLnBsYWNlc1BpY2tlcj8ubW9kZWw/Lmxlbmd0aCkge1xuICAgICAgY29uc3QgYWRkcmVzc0RhdGE6IEFkZHJlc3NEYXRhID0gdGhpcy5wbGFjZXNQaWNrZXIubW9kZWxbMF07XG4gICAgICBjb25zdCBpbml0aWFsUmFkaXVzID0gYWRkcmVzc0RhdGEucmFkaXVzPy52YWx1ZTtcbiAgICAgIGlmIChpbml0aWFsUmFkaXVzICYmIEhlbHBlcnMuaXNOdW1iZXIoaW5pdGlhbFJhZGl1cykpIHtcbiAgICAgICAgdGhpcy5yYWRpdXMuc2V0KGluaXRpYWxSYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUmFkaXVzSW5WYWx1ZXMoZm9ybUdyb3VwOiBBYnN0cmFjdENvbnRyb2wsIHZhbHVlczogQWRkcmVzc0RhdGFbXSk6IEFkZHJlc3NEYXRhW10ge1xuICAgIHJldHVybiB2YWx1ZXMubWFwKHZhbCA9PiAoe1xuICAgICAgLi4udmFsLFxuICAgICAgcmFkaXVzOiB0aGlzLmlzUmFkaXVzT3BlcmF0b3JTZWxlY3RlZChmb3JtR3JvdXApID8gdGhpcy5nZXRSYWRpdXNEYXRhKGZvcm1Hcm91cCkgOiB1bmRlZmluZWQsXG4gICAgfSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSYWRpdXNEYXRhKGZvcm1Hcm91cDogQWJzdHJhY3RDb250cm9sKTogQWRkcmVzc1JhZGl1cyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHZhbHVlOiB0aGlzLmdldFJhZGl1cyhmb3JtR3JvdXApLFxuICAgICAgdW5pdHM6IHRoaXMucmFkaXVzVW5pdHMoKSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSYWRpdXMoZm9ybUdyb3VwOiBBYnN0cmFjdENvbnRyb2wpOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmlzUmFkaXVzT3BlcmF0b3JTZWxlY3RlZChmb3JtR3JvdXApID8gdGhpcy5yYWRpdXMoKSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByaXZhdGUgaXNSYWRpdXNPcGVyYXRvclNlbGVjdGVkKGZvcm1Hcm91cDogQWJzdHJhY3RDb250cm9sKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZvcm1Hcm91cC5nZXQoJ29wZXJhdG9yJykudmFsdWUgPT09ICdyYWRpdXMnO1xuICB9XG59XG4iXX0=
|
package/esm2022/elements/query-builder/condition-definitions/boolean-condition.definition.mjs
CHANGED
|
@@ -1,22 +1,25 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
|
|
2
2
|
import { AbstractConditionFieldDef } from './abstract-condition.definition';
|
|
3
3
|
import { Operator } from '../query-builder.types';
|
|
4
|
+
import { NovoLabelService } from 'novo-elements/services';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "
|
|
6
|
-
import * as i2 from "
|
|
7
|
-
import * as i3 from "novo-elements/elements/
|
|
8
|
-
import * as i4 from "novo-elements/elements/
|
|
9
|
-
import * as i5 from "novo-elements/elements/
|
|
10
|
-
import * as i6 from "
|
|
6
|
+
import * as i1 from "novo-elements/services";
|
|
7
|
+
import * as i2 from "@angular/forms";
|
|
8
|
+
import * as i3 from "novo-elements/elements/select";
|
|
9
|
+
import * as i4 from "novo-elements/elements/field";
|
|
10
|
+
import * as i5 from "novo-elements/elements/common";
|
|
11
|
+
import * as i6 from "novo-elements/elements/radio";
|
|
12
|
+
import * as i7 from "../query-builder.directives";
|
|
11
13
|
/**
|
|
12
14
|
* When constructing a query using a field that is a boolean with only true/false as possible values.
|
|
13
15
|
*/
|
|
14
16
|
export class NovoDefaultBooleanConditionDef extends AbstractConditionFieldDef {
|
|
15
|
-
constructor() {
|
|
16
|
-
super(
|
|
17
|
+
constructor(labelService) {
|
|
18
|
+
super(labelService);
|
|
17
19
|
this.defaultOperator = Operator.include;
|
|
20
|
+
this.defineOperatorEditGroup(Operator.include, Operator.exclude, Operator.isNull);
|
|
18
21
|
}
|
|
19
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NovoDefaultBooleanConditionDef, deps:
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NovoDefaultBooleanConditionDef, deps: [{ token: i1.NovoLabelService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
23
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: NovoDefaultBooleanConditionDef, selector: "novo-boolean-condition-def", usesInheritance: true, ngImport: i0, template: `
|
|
21
24
|
<ng-container novoConditionFieldDef>
|
|
22
25
|
<novo-field *novoConditionOperatorsDef="let formGroup" [formGroup]="formGroup">
|
|
@@ -33,7 +36,7 @@ export class NovoDefaultBooleanConditionDef extends AbstractConditionFieldDef {
|
|
|
33
36
|
</novo-radio-group>
|
|
34
37
|
</novo-field>
|
|
35
38
|
</ng-container>
|
|
36
|
-
`, isInline: true, dependencies: [{ kind: "directive", type:
|
|
39
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.NovoSelectElement, selector: "novo-select", inputs: ["disabled", "required", "tabIndex", "id", "name", "options", "placeholder", "readonly", "headerConfig", "position", "overlayWidth", "overlayHeight", "displayIcon", "displayWith", "compareWith", "value", "multiple"], outputs: ["onSelect", "selectionChange", "valueChange", "openedChange", "opened", "closed"] }, { kind: "component", type: i4.NovoFieldElement, selector: "novo-field", inputs: ["layout", "appearance", "customOverlayOrigin", "width"], outputs: ["valueChanges", "stateChanges"] }, { kind: "component", type: i5.NovoOption, selector: "novo-option", inputs: ["selected", "keepOpen", "novoInert", "value", "disabled"], exportAs: ["novoOption"] }, { kind: "component", type: i6.NovoRadioElement, selector: "novo-radio", inputs: ["id", "name", "tabindex", "vertical", "label", "button", "theme", "size", "icon", "color", "disabled", "checked", "value"], outputs: ["change", "blur", "focus"] }, { kind: "component", type: i6.NovoRadioGroup, selector: "novo-radio-group", inputs: ["id", "tabindex", "errorStateMatcher", "appearance", "value", "name", "disabled", "required", "placeholder"], outputs: ["change", "blur"] }, { kind: "directive", type: i7.NovoConditionOperatorsDef, selector: "[novoConditionOperatorsDef]" }, { kind: "directive", type: i7.NovoConditionInputDef, selector: "[novoConditionInputDef]" }, { kind: "directive", type: i7.NovoConditionFieldDef, selector: "[novoConditionFieldDef]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
|
37
40
|
}
|
|
38
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NovoDefaultBooleanConditionDef, decorators: [{
|
|
39
42
|
type: Component,
|
|
@@ -59,5 +62,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
59
62
|
encapsulation: ViewEncapsulation.None,
|
|
60
63
|
changeDetection: ChangeDetectionStrategy.Default,
|
|
61
64
|
}]
|
|
62
|
-
}] });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
}], ctorParameters: () => [{ type: i1.NovoLabelService }] });
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1jb25kaXRpb24uZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25vdm8tZWxlbWVudHMvc3JjL2VsZW1lbnRzL3F1ZXJ5LWJ1aWxkZXIvY29uZGl0aW9uLWRlZmluaXRpb25zL2Jvb2xlYW4tY29uZGl0aW9uLmRlZmluaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7OztBQUUxRDs7R0FFRztBQXVCSCxNQUFNLE9BQU8sOEJBQStCLFNBQVEseUJBQXlCO0lBRzNFLFlBQVksWUFBOEI7UUFDeEMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBSHRCLG9CQUFlLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUlqQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwRixDQUFDOzhHQU5VLDhCQUE4QjtrR0FBOUIsOEJBQThCLHlGQXBCL0I7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQlQ7OzJGQUlVLDhCQUE4QjtrQkF0QjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JUO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsT0FBTztpQkFDakQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb25kaXRpb25GaWVsZERlZiB9IGZyb20gJy4vYWJzdHJhY3QtY29uZGl0aW9uLmRlZmluaXRpb24nO1xuaW1wb3J0IHsgT3BlcmF0b3IgfSBmcm9tICcuLi9xdWVyeS1idWlsZGVyLnR5cGVzJztcbmltcG9ydCB7IE5vdm9MYWJlbFNlcnZpY2UgfSBmcm9tICdub3ZvLWVsZW1lbnRzL3NlcnZpY2VzJztcblxuLyoqXG4gKiBXaGVuIGNvbnN0cnVjdGluZyBhIHF1ZXJ5IHVzaW5nIGEgZmllbGQgdGhhdCBpcyBhIGJvb2xlYW4gd2l0aCBvbmx5IHRydWUvZmFsc2UgYXMgcG9zc2libGUgdmFsdWVzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdub3ZvLWJvb2xlYW4tY29uZGl0aW9uLWRlZicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciBub3ZvQ29uZGl0aW9uRmllbGREZWY+XG4gICAgICA8bm92by1maWVsZCAqbm92b0NvbmRpdGlvbk9wZXJhdG9yc0RlZj1cImxldCBmb3JtR3JvdXBcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgICAgICA8bm92by1zZWxlY3QgW3BsYWNlaG9sZGVyXT1cImxhYmVscy5vcGVyYXRvclwiIGZvcm1Db250cm9sTmFtZT1cIm9wZXJhdG9yXCIgKG9uU2VsZWN0KT1cIm9uT3BlcmF0b3JTZWxlY3QoZm9ybUdyb3VwKVwiPlxuICAgICAgICAgIDxub3ZvLW9wdGlvbiB2YWx1ZT1cImluY2x1ZGVcIj57eyBsYWJlbHMuZXF1YWxzIH19PC9ub3ZvLW9wdGlvbj5cbiAgICAgICAgICA8bm92by1vcHRpb24gdmFsdWU9XCJleGNsdWRlXCI+e3sgbGFiZWxzLmRvZXNOb3RFcXVhbCB9fTwvbm92by1vcHRpb24+XG4gICAgICAgICAgPG5vdm8tb3B0aW9uIHZhbHVlPVwiaXNOdWxsXCI+e3sgbGFiZWxzLmlzRW1wdHkgfX08L25vdm8tb3B0aW9uPlxuICAgICAgICA8L25vdm8tc2VsZWN0PlxuICAgICAgPC9ub3ZvLWZpZWxkPlxuICAgICAgPG5vdm8tZmllbGQgKm5vdm9Db25kaXRpb25JbnB1dERlZj1cImxldCBmb3JtR3JvdXBcIiBbc3R5bGUud2lkdGgucHhdPVwiMTI1XCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgICAgICAgPG5vdm8tcmFkaW8tZ3JvdXAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIj5cbiAgICAgICAgICA8bm92by1yYWRpbyBbdmFsdWVdPVwidHJ1ZVwiPnt7IGZvcm1Hcm91cC52YWx1ZS5vcGVyYXRvciA9PT0gJ2lzTnVsbCcgPyBsYWJlbHMueWVzIDogbGFiZWxzLnRydWUgfX08L25vdm8tcmFkaW8+XG4gICAgICAgICAgPG5vdm8tcmFkaW8gW3ZhbHVlXT1cImZhbHNlXCI+e3sgZm9ybUdyb3VwLnZhbHVlLm9wZXJhdG9yID09PSAnaXNOdWxsJyA/IGxhYmVscy5ubyA6IGxhYmVscy5mYWxzZSB9fTwvbm92by1yYWRpbz5cbiAgICAgICAgPC9ub3ZvLXJhZGlvLWdyb3VwPlxuICAgICAgPC9ub3ZvLWZpZWxkPlxuICAgIDwvbmctY29udGFpbmVyPlxuICBgLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG59KVxuZXhwb3J0IGNsYXNzIE5vdm9EZWZhdWx0Qm9vbGVhbkNvbmRpdGlvbkRlZiBleHRlbmRzIEFic3RyYWN0Q29uZGl0aW9uRmllbGREZWYge1xuICBkZWZhdWx0T3BlcmF0b3IgPSBPcGVyYXRvci5pbmNsdWRlO1xuXG4gIGNvbnN0cnVjdG9yKGxhYmVsU2VydmljZTogTm92b0xhYmVsU2VydmljZSkge1xuICAgIHN1cGVyKGxhYmVsU2VydmljZSk7XG4gICAgdGhpcy5kZWZpbmVPcGVyYXRvckVkaXRHcm91cChPcGVyYXRvci5pbmNsdWRlLCBPcGVyYXRvci5leGNsdWRlLCBPcGVyYXRvci5pc051bGwpO1xuICB9XG59XG4iXX0=
|