ngx-semantic 2.0.4-beta.2 → 2.0.4-beta.4
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/esm2022/modules/select/select-menu-item.directive.mjs +9 -10
- package/esm2022/modules/select/select-menu.directive.mjs +11 -12
- package/esm2022/modules/select/select.component.mjs +3 -3
- package/esm2022/modules/select/select.module.mjs +1 -1
- package/fesm2022/ngx-semantic-modules-select.mjs +18 -21
- package/fesm2022/ngx-semantic-modules-select.mjs.map +1 -1
- package/modules/select/select-menu-item.directive.d.ts +4 -1
- package/modules/select/select-menu.directive.d.ts +4 -1
- package/package.json +1 -1
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { Directive,
|
|
2
|
+
import { Directive, Input } from '@angular/core';
|
|
3
3
|
import { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';
|
|
4
|
+
import { BaseDirective } from 'ngx-semantic/core/base';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
|
-
export class SuiSelectMenuItemDirective {
|
|
6
|
-
constructor() {
|
|
6
|
+
export class SuiSelectMenuItemDirective extends BaseDirective {
|
|
7
|
+
constructor(elementRef) {
|
|
8
|
+
super(elementRef);
|
|
7
9
|
this.suiValue = null;
|
|
8
10
|
this.suiSelected = false;
|
|
9
11
|
this.suiMultiple = false;
|
|
@@ -16,8 +18,8 @@ export class SuiSelectMenuItemDirective {
|
|
|
16
18
|
ClassUtils.getPropClass(this.suiMultiple && this.suiSelected, 'filtered')
|
|
17
19
|
].join(' ');
|
|
18
20
|
}
|
|
19
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiSelectMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
20
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: SuiSelectMenuItemDirective, selector: "[suiSelectMenuItem]", inputs: { suiValue: "suiValue", suiSelected: "suiSelected", suiMultiple: "suiMultiple" },
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiSelectMenuItemDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
22
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: SuiSelectMenuItemDirective, selector: "[suiSelectMenuItem]", inputs: { suiValue: "suiValue", suiSelected: "suiSelected", suiMultiple: "suiMultiple" }, usesInheritance: true, ngImport: i0 }); }
|
|
21
23
|
}
|
|
22
24
|
__decorate([
|
|
23
25
|
InputBoolean()
|
|
@@ -30,14 +32,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
30
32
|
args: [{
|
|
31
33
|
selector: '[suiSelectMenuItem]'
|
|
32
34
|
}]
|
|
33
|
-
}], propDecorators: { suiValue: [{
|
|
35
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { suiValue: [{
|
|
34
36
|
type: Input
|
|
35
37
|
}], suiSelected: [{
|
|
36
38
|
type: Input
|
|
37
39
|
}], suiMultiple: [{
|
|
38
40
|
type: Input
|
|
39
|
-
}], classes: [{
|
|
40
|
-
type: HostBinding,
|
|
41
|
-
args: ['class']
|
|
42
41
|
}] } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW1lbnUtaXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9zZWxlY3Qvc2VsZWN0LW1lbnUtaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQTJCLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFLdkQsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGFBQWE7SUFLM0QsWUFBWSxVQUFzQjtRQUNoQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFMSixhQUFRLEdBQVEsSUFBSSxDQUFDO1FBQ0wsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7SUFJcEQsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU87WUFDTCxNQUFNO1lBQ04sVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQztZQUNuRCxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQztZQUMxRSxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUM7U0FDMUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDZCxDQUFDOzhHQWhCVSwwQkFBMEI7a0dBQTFCLDBCQUEwQjs7QUFFTDtJQUF0QixZQUFZLEVBQUU7K0RBQTRCO0FBQ3BCO0lBQXRCLFlBQVksRUFBRTsrREFBNEI7MkZBSHpDLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQzsrRUFFaUIsUUFBUTtzQkFBdkIsS0FBSztnQkFDMEIsV0FBVztzQkFBMUMsS0FBSztnQkFDMEIsV0FBVztzQkFBMUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGFzc1V0aWxzLCBJbnB1dEJvb2xlYW4gfSBmcm9tICduZ3gtc2VtYW50aWMvY29yZS91dGlsJztcbmltcG9ydCB7IEJhc2VEaXJlY3RpdmUgfSBmcm9tICduZ3gtc2VtYW50aWMvY29yZS9iYXNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3N1aVNlbGVjdE1lbnVJdGVtXSdcbn0pXG5leHBvcnQgY2xhc3MgU3VpU2VsZWN0TWVudUl0ZW1EaXJlY3RpdmUgZXh0ZW5kcyBCYXNlRGlyZWN0aXZlIHtcbiAgQElucHV0KCkgcHVibGljIHN1aVZhbHVlOiBhbnkgPSBudWxsO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aVNlbGVjdGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpTXVsdGlwbGUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoZWxlbWVudFJlZik7XG4gIH1cblxuICBnZXQgY2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICAnaXRlbScsXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aVNlbGVjdGVkLCAnYWN0aXZlJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyghdGhpcy5zdWlNdWx0aXBsZSAmJiB0aGlzLnN1aVNlbGVjdGVkLCAnc2VsZWN0ZWQnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpTXVsdGlwbGUgJiYgdGhpcy5zdWlTZWxlY3RlZCwgJ2ZpbHRlcmVkJylcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxufVxuIl19
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { Directive, HostBinding, Input } from '@angular/core';
|
|
3
3
|
import { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';
|
|
4
|
+
import { BaseDirective } from 'ngx-semantic/core/base';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
|
-
export class SuiSelectMenuDirective {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.suiDirection = null;
|
|
8
|
-
this.suiScrolling = false;
|
|
9
|
-
}
|
|
6
|
+
export class SuiSelectMenuDirective extends BaseDirective {
|
|
10
7
|
set suiIsOpen(isOpen) {
|
|
11
8
|
this.isOpen = isOpen;
|
|
12
9
|
}
|
|
13
10
|
get suiIsOpen() {
|
|
14
11
|
return this.isOpen;
|
|
15
12
|
}
|
|
13
|
+
constructor(elementRef) {
|
|
14
|
+
super(elementRef);
|
|
15
|
+
this.suiDirection = null;
|
|
16
|
+
this.suiScrolling = false;
|
|
17
|
+
}
|
|
16
18
|
get tabIndex() {
|
|
17
19
|
return -1;
|
|
18
20
|
}
|
|
@@ -26,8 +28,8 @@ export class SuiSelectMenuDirective {
|
|
|
26
28
|
ClassUtils.getPropClass(this.isOpen, 'visible')
|
|
27
29
|
].join(' ');
|
|
28
30
|
}
|
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiSelectMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
30
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: SuiSelectMenuDirective, selector: "[suiSelectMenu]", inputs: { suiDirection: "suiDirection", suiScrolling: "suiScrolling", suiIsOpen: "suiIsOpen" }, host: { properties: { "tabindex": "this.tabIndex"
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiSelectMenuDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
32
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: SuiSelectMenuDirective, selector: "[suiSelectMenu]", inputs: { suiDirection: "suiDirection", suiScrolling: "suiScrolling", suiIsOpen: "suiIsOpen" }, host: { properties: { "tabindex": "this.tabIndex" } }, usesInheritance: true, ngImport: i0 }); }
|
|
31
33
|
}
|
|
32
34
|
__decorate([
|
|
33
35
|
InputBoolean()
|
|
@@ -37,7 +39,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
37
39
|
args: [{
|
|
38
40
|
selector: '[suiSelectMenu]'
|
|
39
41
|
}]
|
|
40
|
-
}], propDecorators: { suiDirection: [{
|
|
42
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { suiDirection: [{
|
|
41
43
|
type: Input
|
|
42
44
|
}], suiScrolling: [{
|
|
43
45
|
type: Input
|
|
@@ -46,8 +48,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
46
48
|
}], tabIndex: [{
|
|
47
49
|
type: HostBinding,
|
|
48
50
|
args: ['tabindex']
|
|
49
|
-
}], classes: [{
|
|
50
|
-
type: HostBinding,
|
|
51
|
-
args: ['class']
|
|
52
51
|
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW1lbnUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvc2VsZWN0L3NlbGVjdC1tZW51LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQU92RCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsYUFBYTtJQU12RCxJQUNJLFNBQVMsQ0FBQyxNQUFlO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELFlBQVksVUFBc0I7UUFDaEMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBZkosaUJBQVksR0FBMkIsSUFBSSxDQUFDO1FBQzVCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO0lBZXJELENBQUM7SUFFRCxJQUNJLFFBQVE7UUFDVixPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ1osQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU87WUFDTCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxZQUFZO1lBQ2pCLE1BQU07WUFDTixZQUFZO1lBQ1osVUFBVSxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDO1lBQy9DLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUM7U0FDaEQsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDZCxDQUFDOzhHQWpDVSxzQkFBc0I7a0dBQXRCLHNCQUFzQjs7QUFFRDtJQUF0QixZQUFZLEVBQUU7NERBQTZCOzJGQUYxQyxzQkFBc0I7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7K0VBRWlCLFlBQVk7c0JBQTNCLEtBQUs7Z0JBQzBCLFlBQVk7c0JBQTNDLEtBQUs7Z0JBS0YsU0FBUztzQkFEWixLQUFLO2dCQWNGLFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsYXNzVXRpbHMsIElucHV0Qm9vbGVhbiB9IGZyb20gJ25neC1zZW1hbnRpYy9jb3JlL3V0aWwnO1xuaW1wb3J0IHsgQmFzZURpcmVjdGl2ZSB9IGZyb20gJ25neC1zZW1hbnRpYy9jb3JlL2Jhc2UnO1xuXG5leHBvcnQgdHlwZSBTdWlTZWxlY3RNZW51RGlyZWN0aW9uID0gJ2xlZnQnIHwgJ3JpZ2h0JyB8IG51bGw7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzdWlTZWxlY3RNZW51XSdcbn0pXG5leHBvcnQgY2xhc3MgU3VpU2VsZWN0TWVudURpcmVjdGl2ZSBleHRlbmRzIEJhc2VEaXJlY3RpdmUge1xuICBASW5wdXQoKSBwdWJsaWMgc3VpRGlyZWN0aW9uOiBTdWlTZWxlY3RNZW51RGlyZWN0aW9uID0gbnVsbDtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlTY3JvbGxpbmcgPSBmYWxzZTtcblxuICBwcml2YXRlIGlzT3BlbjtcblxuICBASW5wdXQoKVxuICBzZXQgc3VpSXNPcGVuKGlzT3BlbjogYm9vbGVhbikge1xuICAgIHRoaXMuaXNPcGVuID0gaXNPcGVuO1xuICB9XG5cbiAgZ2V0IHN1aUlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc09wZW47XG4gIH1cblxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoZWxlbWVudFJlZik7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3RhYmluZGV4JylcbiAgZ2V0IHRhYkluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIC0xO1xuICB9XG5cbiAgZ2V0IGNsYXNzZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gW1xuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlTY3JvbGxpbmcsICdzY3JvbGxpbmcnKSxcbiAgICAgIHRoaXMuc3VpRGlyZWN0aW9uLFxuICAgICAgJ21lbnUnLFxuICAgICAgJ3RyYW5zaXRpb24nLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3MoIXRoaXMuaXNPcGVuLCAnaGlkZGVuJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLmlzT3BlbiwgJ3Zpc2libGUnKVxuICAgIF0uam9pbignICcpO1xuICB9XG59XG4iXX0=
|
|
@@ -19,7 +19,7 @@ export class SuiSelectComponent {
|
|
|
19
19
|
return 0;
|
|
20
20
|
}
|
|
21
21
|
get classes() {
|
|
22
|
-
return [
|
|
22
|
+
return ClassUtils.combineToClass([
|
|
23
23
|
'ui',
|
|
24
24
|
ClassUtils.getPropClass(this.suiFluid, 'fluid'),
|
|
25
25
|
ClassUtils.getPropClass(this.suiCompact, 'compact'),
|
|
@@ -34,7 +34,7 @@ export class SuiSelectComponent {
|
|
|
34
34
|
ClassUtils.getPropClass(this.isOpen, 'active'),
|
|
35
35
|
ClassUtils.getPropClass(this.isOpen, 'visible'),
|
|
36
36
|
ClassUtils.getPropClass(this.suiError, 'error')
|
|
37
|
-
]
|
|
37
|
+
]);
|
|
38
38
|
}
|
|
39
39
|
constructor(changeDetectorRef) {
|
|
40
40
|
this.changeDetectorRef = changeDetectorRef;
|
|
@@ -437,4 +437,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
437
437
|
type: HostListener,
|
|
438
438
|
args: ['click']
|
|
439
439
|
}] } });
|
|
440
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQXFHakUsTUFBTSxPQUFPLGtCQUFrQjtJQTRCN0IsSUFDSSxVQUFVLENBQUMsT0FBNkI7UUFDMUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQztJQUNuRCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUNJLFFBQVE7UUFDVixPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxJQUNJLE9BQU87UUFDVCxPQUFPO1lBQ0wsSUFBSTtZQUNKLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFDL0MsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQztZQUNuRCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDO1lBQ2pELFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUM7WUFD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RUFBRSxtQkFBbUIsQ0FBQzs0QkFDakQsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBRTtpQkFDSjtzRkFFMkMsV0FBVztzQkFBcEQsU0FBUzt1QkFBQyxzQkFBc0I7Z0JBRWhCLG1CQUFtQjtzQkFBbkMsTUFBTTtnQkFDUyxjQUFjO3NCQUE3QixLQUFLO2dCQUMwQixTQUFTO3NCQUF4QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixTQUFTO3NCQUF4QyxLQUFLO2dCQUMwQixVQUFVO3NCQUF6QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixZQUFZO3NCQUEzQyxLQUFLO2dCQUMwQixVQUFVO3NCQUF6QyxLQUFLO2dCQUMwQixJQUFJO3NCQUFuQyxLQUFLO2dCQUMwQixXQUFXO3NCQUExQyxLQUFLO2dCQWVGLFVBQVU7c0JBRGIsS0FBSztnQkFVRixRQUFRO3NCQURYLFdBQVc7dUJBQUMsVUFBVTtnQkFNbkIsT0FBTztzQkFEVixXQUFXO3VCQUFDLE9BQU87Z0JBZ0RiLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2xhc3NVdGlscywgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd4LXNlbWFudGljL2NvcmUvdXRpbCc7XG5pbXBvcnQgeyBTdWlTZWxlY3RNZW51RGlyZWN0aXZlIH0gZnJvbSAnLi9zZWxlY3QtbWVudS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSVNlbGVjdE9wdGlvbiB9IGZyb20gJy4vaW50ZXJmYWNlcy9JU2VsZWN0T3B0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3VpLXNlbGVjdCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGkgY2xhc3M9XCJkcm9wZG93biBpY29uXCI+PC9pPlxuXG4gICAgPCEtLSBNdWx0aXBsZSBTZWxlY3QgRGlzcGxheSAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3VpTXVsdGlwbGVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBzZWxlY3RlZE9wdGlvbnNcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJ1aSBsYWJlbCB0cmFuc2l0aW9uIHZpc2libGVcIlxuICAgICAgICAgICBzdHlsZT1cImRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uaW1hZ2VcIj5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJ1aSBtaW5pIGltYWdlXCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmF2YXRhcl09XCJvcHRpb24uaW1hZ2UuYXZhdGFyXCJcbiAgICAgICAgICAgICAgICAgW3NyY109XCJvcHRpb24uaW1hZ2Uuc3JjXCIvPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uZmxhZ1wiPlxuICAgICAgICAgICAgPGkgW2NsYXNzTmFtZV09XCInZmxhZyAnICsgb3B0aW9uLmZsYWdcIj48L2k+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICB7eyBvcHRpb24udGV4dCB9fVxuXG4gICAgICAgICAgPGkgY2xhc3M9XCJkZWxldGUgaWNvblwiXG4gICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZVNlbGVjdGlvbihvcHRpb24sICRldmVudClcIj48L2k+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdCB0ZXh0XCI+e3sgc3VpUGxhY2Vob2xkZXIgfX08L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS0gU2VhcmNoIFNlY3Rpb24gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN1aVNlYXJjaFwiPlxuICAgICAgPGlucHV0IGNsYXNzPVwic2VhcmNoXCJcbiAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXJtXCJcbiAgICAgICAgICAgICAoZm9jdXMpPVwib25DbGljaygpXCJcbiAgICAgICAgICAgICAoa2V5dXApPVwib25TZWFyY2goKVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPCEtLSBEaXNwbGF5IFNlY3Rpb24gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzdWlNdWx0aXBsZVwiPlxuICAgICAgPGRpdlxuICAgICAgICBbY2xhc3MuZGVmYXVsdF09XCJpc0RlZmF1bHRUZXh0XCJcbiAgICAgICAgW2NsYXNzLmZpbHRlcmVkXT1cImlzRmlsdGVyZWRUZXh0XCJcbiAgICAgICAgW2NsYXNzLnRleHRdPVwidHJ1ZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb25cIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb24uaW1hZ2VcIj5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJ1aSBtaW5pIGltYWdlXCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmF2YXRhcl09XCJzZWxlY3RlZE9wdGlvbi5pbWFnZS5hdmF0YXJcIlxuICAgICAgICAgICAgICAgICBbc3JjXT1cInNlbGVjdGVkT3B0aW9uLmltYWdlLnNyY1wiLz5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb24uZmxhZ1wiPlxuICAgICAgICAgICAgPGkgW2NsYXNzTmFtZV09XCInZmxhZyAnICsgc2VsZWN0ZWRPcHRpb24uZmxhZ1wiPjwvaT5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgIHt7IHNlbGVjdGVkT3B0aW9uLnRleHQgfX1cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzZWxlY3RlZE9wdGlvblwiPlxuICAgICAgICAgIHt7IHN1aVBsYWNlaG9sZGVyIH19XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tIERyb3AgRG93biBNZW51IFNlY3Rpb24gLS0+XG4gICAgPGRpdiBzdWlTZWxlY3RNZW51PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9uc1wiPlxuICAgICAgICA8ZGl2IHN1aVNlbGVjdE1lbnVJdGVtXG4gICAgICAgICAgICAgW3N1aVZhbHVlXT1cIm9wdGlvbi52YWx1ZVwiXG4gICAgICAgICAgICAgW3N1aVNlbGVjdGVkXT1cImlzQWN0aXZlKG9wdGlvbilcIlxuICAgICAgICAgICAgIFtzdWlNdWx0aXBsZV09XCJzdWlNdWx0aXBsZVwiXG4gICAgICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKG9wdGlvbiwgJGV2ZW50KVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uaW1hZ2VcIj5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJ1aSBtaW5pIGltYWdlXCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmF2YXRhcl09XCJvcHRpb24uaW1hZ2UuYXZhdGFyXCJcbiAgICAgICAgICAgICAgICAgW3NyY109XCJvcHRpb24uaW1hZ2Uuc3JjXCIvPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uZmxhZ1wiPlxuICAgICAgICAgICAgPGkgW2NsYXNzTmFtZV09XCInZmxhZyAnICsgb3B0aW9uLmZsYWdcIj48L2k+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAge3sgb3B0aW9uLnRleHQgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNOb1NlYXJjaFJlc3VsdHMoKVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiXG4gICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICAgIE5vIHJlc3VsdHMgZm91bmQuXG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHByb3ZpZGVyczogWyB7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU3VpU2VsZWN0Q29tcG9uZW50KSxcbiAgICBtdWx0aTogdHJ1ZVxuICB9IF1cbn0pXG5leHBvcnQgY2xhc3MgU3VpU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBAVmlld0NoaWxkKFN1aVNlbGVjdE1lbnVEaXJlY3RpdmUpIHB1YmxpYyBvcHRpb25zTWVudTogU3VpU2VsZWN0TWVudURpcmVjdGl2ZTtcblxuICBAT3V0cHV0KCkgcHVibGljIHN1aVNlbGVjdGlvbkNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueSB8IEFycmF5PGFueT4+KCk7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWlQbGFjZWhvbGRlcjogc3RyaW5nID0gbnVsbDtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlTZWFyY2ggPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlGbHVpZCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aUlubGluZSA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aUxvYWRpbmcgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlFcnJvciA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpU2Nyb2xsaW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpQ29tcGFjdCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIG5hbWU6IHN0cmluZyA9IG51bGw7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpTXVsdGlwbGUgPSBmYWxzZTtcblxuICBwcml2YXRlIGlzT3BlbiA9IGZhbHNlO1xuICBwcml2YXRlIGlzU2VhcmNoaW5nID0gZmFsc2U7XG4gIHByaXZhdGUgc2VsZWN0ZWRWYWx1ZXM6IEFycmF5PGFueT4gPSBbXTtcbiAgcHVibGljIHNlYXJjaFRlcm06IHN0cmluZztcbiAgcHJpdmF0ZSBhbGxPcHRpb25zOiBBcnJheTxJU2VsZWN0T3B0aW9uPiA9IFtdO1xuICBwdWJsaWMgZmlsdGVyZWRPcHRpb25zOiBBcnJheTxJU2VsZWN0T3B0aW9uPiA9IFtdO1xuICBwdWJsaWMgc2VsZWN0ZWRPcHRpb246IElTZWxlY3RPcHRpb247XG4gIHB1YmxpYyBzZWxlY3RlZE9wdGlvbnM6IEFycmF5PElTZWxlY3RPcHRpb24+ID0gW107XG5cbiAgcHJpdmF0ZSBjb250cm9sVmFsdWVDaGFuZ2VGbjogKHZhbHVlOiBhbnkgfCBBcnJheTxhbnk+KSA9PiB2b2lkID0gKCkgPT4ge1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHN1aU9wdGlvbnMob3B0aW9uczogQXJyYXk8SVNlbGVjdE9wdGlvbj4pIHtcbiAgICB0aGlzLmFsbE9wdGlvbnMgPSB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IG9wdGlvbnM7XG4gIH1cblxuICBnZXQgc3VpT3B0aW9ucygpOiBBcnJheTxJU2VsZWN0T3B0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuYWxsT3B0aW9ucztcbiAgfVxuXG4gIEBIb3N0QmluZGluZygndGFiaW5kZXgnKVxuICBnZXQgdGFiSW5kZXgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgY2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICAndWknLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlGbHVpZCwgJ2ZsdWlkJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aUNvbXBhY3QsICdjb21wYWN0JyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aVNlYXJjaCwgJ3NlYXJjaCcpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlMb2FkaW5nLCAnbG9hZGluZycpLFxuICAgICAgJ3NlbGVjdGlvbicsXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aUlubGluZSwgJ2lubGluZScpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5kaXNhYmxlZCwgJ2Rpc2FibGVkJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aVNjcm9sbGluZywgJ3Njcm9sbGluZycpLFxuICAgICAgJ2Ryb3Bkb3duJyxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpTXVsdGlwbGUsICdtdWx0aXBsZScpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5pc09wZW4sICdhY3RpdmUnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuaXNPcGVuLCAndmlzaWJsZScpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlFcnJvciwgJ2Vycm9yJylcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG11bHRpcGxlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuc3VpTXVsdGlwbGUgPyAnJyA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNEZWZhdWx0VGV4dCgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRPcHRpb24pIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnN1aVNlYXJjaCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiAhdGhpcy5zZWxlY3RlZE9wdGlvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNGaWx0ZXJlZFRleHQoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLnN1aVNlYXJjaCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmlzU2VhcmNoaW5nO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaXNPcGVuID0gIXRoaXMuaXNPcGVuO1xuXG4gICAgLy8gaGFuZGxlIHNlbGVjdGlvbiBkcm9wZG93blxuICAgIGlmICh0aGlzLm9wdGlvbnNNZW51KSB7XG4gICAgICB0aGlzLm9wdGlvbnNNZW51LnN1aUlzT3BlbiA9IHRoaXMuaXNPcGVuO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnNNZW51KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FuIGVycm9yIG9jY3VycmVkIHJlbmRlcmluZyB0aGUgb3B0aW9ucy4nKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25TZWFyY2goKTogdm9pZCB7XG4gICAgdGhpcy5pc1NlYXJjaGluZyA9ICEhdGhpcy5zZWFyY2hUZXJtO1xuXG4gICAgLy8gaWYgdGhlIHVzZXIgaXMgc2VhcmNoaW5nLCB0aGVuIGtlZXAgdGhlIGRyb3Bkb3duIG9wZW5cbiAgICBpZiAodGhpcy5vcHRpb25zTWVudSkge1xuICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuICAgICAgdGhpcy5vcHRpb25zTWVudS5zdWlJc09wZW4gPSB0cnVlO1xuICAgIH1cblxuICAgIC8vIGxpbWl0IHRoZSBvcHRpb25zIGRpc3BsYXllZFxuICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zID0gdGhpcy5hbGxPcHRpb25zXG4gICAgICAuZmlsdGVyKCh4KSA9PiB4LnRleHQudG9Mb2NhbGVMb3dlckNhc2UoKVxuICAgICAgICAuaW5jbHVkZXModGhpcy5zZWFyY2hUZXJtLnRvTG9jYWxlTG93ZXJDYXNlKCkpKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0FjdGl2ZShvcHRpb246IElTZWxlY3RPcHRpb24pOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5zdWlNdWx0aXBsZSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMob3B0aW9uLnZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRPcHRpb24gPT09IG9wdGlvbjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFzTm9TZWFyY2hSZXN1bHRzKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5zdWlTZWFyY2gpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5maWx0ZXJlZE9wdGlvbnMubGVuZ3RoID09PSAwO1xuICB9XG5cbiAgcHVibGljIG9uSXRlbUNsaWNrKG9wdGlvbjogSVNlbGVjdE9wdGlvbiwgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgLy8gaGFuZGxlIHNpbmdsZSBzZWxlY3RcbiAgICBpZiAoIXRoaXMuc3VpTXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlQ2hhbmdlZCA9IHRoaXMuc2VsZWN0ZWRPcHRpb24/LnZhbHVlICE9PSBvcHRpb24udmFsdWU7XG4gICAgICB0aGlzLnNlbGVjdGVkT3B0aW9uID0gb3B0aW9uO1xuXG4gICAgICBpZiAodmFsdWVDaGFuZ2VkKSB7XG4gICAgICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlRm4ob3B0aW9uLnZhbHVlKTtcbiAgICAgICAgdGhpcy5zdWlTZWxlY3Rpb25DaGFuZ2VkLmVtaXQob3B0aW9uLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBoYW5kbGUgbXVsdGlwbGUgIHNlbGVjdFxuICAgIGlmICh0aGlzLnN1aU11bHRpcGxlKSB7XG4gICAgICBjb25zdCB2YWx1ZUNoYW5nZWQgPSAhdGhpcy5zZWxlY3RlZFZhbHVlcy5pbmNsdWRlcyhvcHRpb24udmFsdWUpO1xuXG4gICAgICBpZiAodmFsdWVDaGFuZ2VkKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucHVzaChvcHRpb24udmFsdWUpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkT3B0aW9ucy5wdXNoKG9wdGlvbik7XG5cbiAgICAgICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2VGbih0aGlzLnNlbGVjdGVkVmFsdWVzKTtcbiAgICAgICAgdGhpcy5zdWlTZWxlY3Rpb25DaGFuZ2VkLmVtaXQodGhpcy5zZWxlY3RlZFZhbHVlcyk7XG4gICAgICB9XG5cbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIC8vIGNsZWFyIHNlYXJjaFxuICAgIHRoaXMuaXNTZWFyY2hpbmcgPSBmYWxzZTtcbiAgICB0aGlzLnNlYXJjaFRlcm0gPSAnJztcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVTZWxlY3Rpb24ob3B0aW9uOiBJU2VsZWN0T3B0aW9uLCBldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3VpTXVsdGlwbGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMob3B0aW9uLnZhbHVlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMgPSB0aGlzLnNlbGVjdGVkVmFsdWVzLmZpbHRlcigoeCkgPT4geCAhPT0gb3B0aW9uLnZhbHVlKTtcbiAgICB0aGlzLnNlbGVjdGVkT3B0aW9ucyA9IHRoaXMuc2VsZWN0ZWRPcHRpb25zLmZpbHRlcigoeCkgPT4geCAhPT0gb3B0aW9uKTtcblxuICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlRm4odGhpcy5zZWxlY3RlZFZhbHVlcyk7XG4gICAgdGhpcy5zdWlTZWxlY3Rpb25DaGFuZ2VkLmVtaXQodGhpcy5zZWxlY3RlZFZhbHVlcyk7XG5cbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBhbnkgfCBBcnJheTxhbnk+KTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWVDaGFuZ2VkID0gdmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRPcHRpb24/LnZhbHVlO1xuXG4gICAgaWYgKHZhbHVlQ2hhbmdlZCkge1xuICAgICAgdGhpcy5zdWlTZWxlY3Rpb25DaGFuZ2VkLmVtaXQodmFsdWUpO1xuICAgIH1cblxuICAgIGNvbnN0IG1hdGNoZWRPcHRpb25zID0gdGhpcy5hbGxPcHRpb25zXG4gICAgICAuZmlsdGVyKCh4KSA9PiB4LnZhbHVlID09PSB2YWx1ZSk7XG4gICAgdGhpcy5zZWxlY3RlZE9wdGlvbiA9IG1hdGNoZWRPcHRpb25zWzBdO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2VGbiA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gIH1cbn1cbiJdfQ==
|
|
440
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQXFHakUsTUFBTSxPQUFPLGtCQUFrQjtJQTRCN0IsSUFDSSxVQUFVLENBQUMsT0FBNkI7UUFDMUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQztJQUNuRCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUNJLFFBQVE7UUFDVixPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxJQUNJLE9BQU87UUFDVCxPQUFPLFVBQVUsQ0FBQyxjQUFjLENBQUM7WUFDL0IsSUFBSTtZQUNKLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFDL0MsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQztZQUNuRCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDO1lBQ2pELFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVB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LEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUU7aUJBQ0o7c0ZBRTJDLFdBQVc7c0JBQXBELFNBQVM7dUJBQUMsc0JBQXNCO2dCQUVoQixtQkFBbUI7c0JBQW5DLE1BQU07Z0JBQ1MsY0FBYztzQkFBN0IsS0FBSztnQkFDMEIsU0FBUztzQkFBeEMsS0FBSztnQkFDMEIsUUFBUTtzQkFBdkMsS0FBSztnQkFDMEIsU0FBUztzQkFBeEMsS0FBSztnQkFDMEIsVUFBVTtzQkFBekMsS0FBSztnQkFDMEIsUUFBUTtzQkFBdkMsS0FBSztnQkFDMEIsUUFBUTtzQkFBdkMsS0FBSztnQkFDMEIsWUFBWTtzQkFBM0MsS0FBSztnQkFDMEIsVUFBVTtzQkFBekMsS0FBSztnQkFDMEIsSUFBSTtzQkFBbkMsS0FBSztnQkFDMEIsV0FBVztzQkFBMUMsS0FBSztnQkFlRixVQUFVO3NCQURiLEtBQUs7Z0JBVUYsUUFBUTtzQkFEWCxXQUFXO3VCQUFDLFVBQVU7Z0JBTW5CLE9BQU87c0JBRFYsV0FBVzt1QkFBQyxPQUFPO2dCQWdEYixPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENsYXNzVXRpbHMsIElucHV0Qm9vbGVhbiB9IGZyb20gJ25neC1zZW1hbnRpYy9jb3JlL3V0aWwnO1xuaW1wb3J0IHsgU3VpU2VsZWN0TWVudURpcmVjdGl2ZSB9IGZyb20gJy4vc2VsZWN0LW1lbnUuZGlyZWN0aXZlJztcbmltcG9ydCB7IElTZWxlY3RPcHRpb24gfSBmcm9tICcuL2ludGVyZmFjZXMvSVNlbGVjdE9wdGlvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N1aS1zZWxlY3QnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpIGNsYXNzPVwiZHJvcGRvd24gaWNvblwiPjwvaT5cblxuICAgIDwhLS0gTXVsdGlwbGUgU2VsZWN0IERpc3BsYXkgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN1aU11bHRpcGxlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygc2VsZWN0ZWRPcHRpb25zXCI+XG4gICAgICAgIDxhIGNsYXNzPVwidWkgbGFiZWwgdHJhbnNpdGlvbiB2aXNpYmxlXCJcbiAgICAgICAgICAgc3R5bGU9XCJkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uLmltYWdlXCI+XG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwidWkgbWluaSBpbWFnZVwiXG4gICAgICAgICAgICAgICAgIFtjbGFzcy5hdmF0YXJdPVwib3B0aW9uLmltYWdlLmF2YXRhclwiXG4gICAgICAgICAgICAgICAgIFtzcmNdPVwib3B0aW9uLmltYWdlLnNyY1wiLz5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uLmZsYWdcIj5cbiAgICAgICAgICAgIDxpIFtjbGFzc05hbWVdPVwiJ2ZsYWcgJyArIG9wdGlvbi5mbGFnXCI+PC9pPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAge3sgb3B0aW9uLnRleHQgfX1cblxuICAgICAgICAgIDxpIGNsYXNzPVwiZGVsZXRlIGljb25cIlxuICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVTZWxlY3Rpb24ob3B0aW9uLCAkZXZlbnQpXCI+PC9pPlxuICAgICAgICA8L2E+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQgdGV4dFwiPnt7IHN1aVBsYWNlaG9sZGVyIH19PC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tIFNlYXJjaCBTZWN0aW9uIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdWlTZWFyY2hcIj5cbiAgICAgIDxpbnB1dCBjbGFzcz1cInNlYXJjaFwiXG4gICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGVybVwiXG4gICAgICAgICAgICAgKGZvY3VzKT1cIm9uQ2xpY2soKVwiXG4gICAgICAgICAgICAgKGtleXVwKT1cIm9uU2VhcmNoKClcIj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS0gRGlzcGxheSBTZWN0aW9uIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc3VpTXVsdGlwbGVcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgW2NsYXNzLmRlZmF1bHRdPVwiaXNEZWZhdWx0VGV4dFwiXG4gICAgICAgIFtjbGFzcy5maWx0ZXJlZF09XCJpc0ZpbHRlcmVkVGV4dFwiXG4gICAgICAgIFtjbGFzcy50ZXh0XT1cInRydWVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkT3B0aW9uXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkT3B0aW9uLmltYWdlXCI+XG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwidWkgbWluaSBpbWFnZVwiXG4gICAgICAgICAgICAgICAgIFtjbGFzcy5hdmF0YXJdPVwic2VsZWN0ZWRPcHRpb24uaW1hZ2UuYXZhdGFyXCJcbiAgICAgICAgICAgICAgICAgW3NyY109XCJzZWxlY3RlZE9wdGlvbi5pbWFnZS5zcmNcIi8+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkT3B0aW9uLmZsYWdcIj5cbiAgICAgICAgICAgIDxpIFtjbGFzc05hbWVdPVwiJ2ZsYWcgJyArIHNlbGVjdGVkT3B0aW9uLmZsYWdcIj48L2k+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICB7eyBzZWxlY3RlZE9wdGlvbi50ZXh0IH19XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc2VsZWN0ZWRPcHRpb25cIj5cbiAgICAgICAgICB7eyBzdWlQbGFjZWhvbGRlciB9fVxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPCEtLSBEcm9wIERvd24gTWVudSBTZWN0aW9uIC0tPlxuICAgIDxkaXYgc3VpU2VsZWN0TWVudT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWx0ZXJlZE9wdGlvbnNcIj5cbiAgICAgICAgPGRpdiBzdWlTZWxlY3RNZW51SXRlbVxuICAgICAgICAgICAgIFtzdWlWYWx1ZV09XCJvcHRpb24udmFsdWVcIlxuICAgICAgICAgICAgIFtzdWlTZWxlY3RlZF09XCJpc0FjdGl2ZShvcHRpb24pXCJcbiAgICAgICAgICAgICBbc3VpTXVsdGlwbGVdPVwic3VpTXVsdGlwbGVcIlxuICAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljayhvcHRpb24sICRldmVudClcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uLmltYWdlXCI+XG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwidWkgbWluaSBpbWFnZVwiXG4gICAgICAgICAgICAgICAgIFtjbGFzcy5hdmF0YXJdPVwib3B0aW9uLmltYWdlLmF2YXRhclwiXG4gICAgICAgICAgICAgICAgIFtzcmNdPVwib3B0aW9uLmltYWdlLnNyY1wiLz5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uLmZsYWdcIj5cbiAgICAgICAgICAgIDxpIFtjbGFzc05hbWVdPVwiJ2ZsYWcgJyArIG9wdGlvbi5mbGFnXCI+PC9pPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIHt7IG9wdGlvbi50ZXh0IH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzTm9TZWFyY2hSZXN1bHRzKClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2VcIlxuICAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgICAgICBObyByZXN1bHRzIGZvdW5kLlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICBgLFxuICBwcm92aWRlcnM6IFsge1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFN1aVNlbGVjdENvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfSBdXG59KVxuZXhwb3J0IGNsYXNzIFN1aVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgQFZpZXdDaGlsZChTdWlTZWxlY3RNZW51RGlyZWN0aXZlKSBwdWJsaWMgb3B0aW9uc01lbnU6IFN1aVNlbGVjdE1lbnVEaXJlY3RpdmU7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBzdWlTZWxlY3Rpb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnkgfCBBcnJheTxhbnk+PigpO1xuICBASW5wdXQoKSBwdWJsaWMgc3VpUGxhY2Vob2xkZXI6IHN0cmluZyA9IG51bGw7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpU2VhcmNoID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpRmx1aWQgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlJbmxpbmUgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlMb2FkaW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpRXJyb3IgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aVNjcm9sbGluZyA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aUNvbXBhY3QgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBuYW1lOiBzdHJpbmcgPSBudWxsO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aU11bHRpcGxlID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBpc09wZW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBpc1NlYXJjaGluZyA9IGZhbHNlO1xuICBwcml2YXRlIHNlbGVjdGVkVmFsdWVzOiBBcnJheTxhbnk+ID0gW107XG4gIHB1YmxpYyBzZWFyY2hUZXJtOiBzdHJpbmc7XG4gIHByaXZhdGUgYWxsT3B0aW9uczogQXJyYXk8SVNlbGVjdE9wdGlvbj4gPSBbXTtcbiAgcHVibGljIGZpbHRlcmVkT3B0aW9uczogQXJyYXk8SVNlbGVjdE9wdGlvbj4gPSBbXTtcbiAgcHVibGljIHNlbGVjdGVkT3B0aW9uOiBJU2VsZWN0T3B0aW9uO1xuICBwdWJsaWMgc2VsZWN0ZWRPcHRpb25zOiBBcnJheTxJU2VsZWN0T3B0aW9uPiA9IFtdO1xuXG4gIHByaXZhdGUgY29udHJvbFZhbHVlQ2hhbmdlRm46ICh2YWx1ZTogYW55IHwgQXJyYXk8YW55PikgPT4gdm9pZCA9ICgpID0+IHtcbiAgfTtcblxuICBASW5wdXQoKVxuICBzZXQgc3VpT3B0aW9ucyhvcHRpb25zOiBBcnJheTxJU2VsZWN0T3B0aW9uPikge1xuICAgIHRoaXMuYWxsT3B0aW9ucyA9IHRoaXMuZmlsdGVyZWRPcHRpb25zID0gb3B0aW9ucztcbiAgfVxuXG4gIGdldCBzdWlPcHRpb25zKCk6IEFycmF5PElTZWxlY3RPcHRpb24+IHtcbiAgICByZXR1cm4gdGhpcy5hbGxPcHRpb25zO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCd0YWJpbmRleCcpXG4gIGdldCB0YWJJbmRleCgpOiBudW1iZXIge1xuICAgIHJldHVybiAwO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBjbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIENsYXNzVXRpbHMuY29tYmluZVRvQ2xhc3MoW1xuICAgICAgJ3VpJyxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpRmx1aWQsICdmbHVpZCcpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlDb21wYWN0LCAnY29tcGFjdCcpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlTZWFyY2gsICdzZWFyY2gnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpTG9hZGluZywgJ2xvYWRpbmcnKSxcbiAgICAgICdzZWxlY3Rpb24nLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlJbmxpbmUsICdpbmxpbmUnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuZGlzYWJsZWQsICdkaXNhYmxlZCcpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlTY3JvbGxpbmcsICdzY3JvbGxpbmcnKSxcbiAgICAgICdkcm9wZG93bicsXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aU11bHRpcGxlLCAnbXVsdGlwbGUnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuaXNPcGVuLCAnYWN0aXZlJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLmlzT3BlbiwgJ3Zpc2libGUnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpRXJyb3IsICdlcnJvcicpXG4gICAgXSk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICB9XG5cbiAgcHVibGljIGdldCBtdWx0aXBsZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnN1aU11bHRpcGxlID8gJycgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzRGVmYXVsdFRleHQoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zdWlTZWFyY2gpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gIXRoaXMuc2VsZWN0ZWRPcHRpb247XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzRmlsdGVyZWRUZXh0KCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5zdWlTZWFyY2gpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pc1NlYXJjaGluZztcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgcHVibGljIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmlzT3BlbiA9ICF0aGlzLmlzT3BlbjtcblxuICAgIC8vIGhhbmRsZSBzZWxlY3Rpb24gZHJvcGRvd25cbiAgICBpZiAodGhpcy5vcHRpb25zTWVudSkge1xuICAgICAgdGhpcy5vcHRpb25zTWVudS5zdWlJc09wZW4gPSB0aGlzLmlzT3BlbjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5vcHRpb25zTWVudSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBbiBlcnJvciBvY2N1cnJlZCByZW5kZXJpbmcgdGhlIG9wdGlvbnMuJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uU2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMuaXNTZWFyY2hpbmcgPSAhIXRoaXMuc2VhcmNoVGVybTtcblxuICAgIC8vIGlmIHRoZSB1c2VyIGlzIHNlYXJjaGluZywgdGhlbiBrZWVwIHRoZSBkcm9wZG93biBvcGVuXG4gICAgaWYgKHRoaXMub3B0aW9uc01lbnUpIHtcbiAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICAgIHRoaXMub3B0aW9uc01lbnUuc3VpSXNPcGVuID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBsaW1pdCB0aGUgb3B0aW9ucyBkaXNwbGF5ZWRcbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IHRoaXMuYWxsT3B0aW9uc1xuICAgICAgLmZpbHRlcigoeCkgPT4geC50ZXh0LnRvTG9jYWxlTG93ZXJDYXNlKClcbiAgICAgICAgLmluY2x1ZGVzKHRoaXMuc2VhcmNoVGVybS50b0xvY2FsZUxvd2VyQ2FzZSgpKSk7XG4gIH1cblxuICBwdWJsaWMgaXNBY3RpdmUob3B0aW9uOiBJU2VsZWN0T3B0aW9uKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuc3VpTXVsdGlwbGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkVmFsdWVzLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkT3B0aW9uID09PSBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhhc05vU2VhcmNoUmVzdWx0cygpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuc3VpU2VhcmNoKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyZWRPcHRpb25zLmxlbmd0aCA9PT0gMDtcbiAgfVxuXG4gIHB1YmxpYyBvbkl0ZW1DbGljayhvcHRpb246IElTZWxlY3RPcHRpb24sIGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIC8vIGhhbmRsZSBzaW5nbGUgc2VsZWN0XG4gICAgaWYgKCF0aGlzLnN1aU11bHRpcGxlKSB7XG4gICAgICBjb25zdCB2YWx1ZUNoYW5nZWQgPSB0aGlzLnNlbGVjdGVkT3B0aW9uPy52YWx1ZSAhPT0gb3B0aW9uLnZhbHVlO1xuICAgICAgdGhpcy5zZWxlY3RlZE9wdGlvbiA9IG9wdGlvbjtcblxuICAgICAgaWYgKHZhbHVlQ2hhbmdlZCkge1xuICAgICAgICB0aGlzLmNvbnRyb2xWYWx1ZUNoYW5nZUZuKG9wdGlvbi52YWx1ZSk7XG4gICAgICAgIHRoaXMuc3VpU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KG9wdGlvbi52YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gaGFuZGxlIG11bHRpcGxlICBzZWxlY3RcbiAgICBpZiAodGhpcy5zdWlNdWx0aXBsZSkge1xuICAgICAgY29uc3QgdmFsdWVDaGFuZ2VkID0gIXRoaXMuc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMob3B0aW9uLnZhbHVlKTtcblxuICAgICAgaWYgKHZhbHVlQ2hhbmdlZCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnB1c2gob3B0aW9uLnZhbHVlKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE9wdGlvbnMucHVzaChvcHRpb24pO1xuXG4gICAgICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlRm4odGhpcy5zZWxlY3RlZFZhbHVlcyk7XG4gICAgICAgIHRoaXMuc3VpU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHRoaXMuc2VsZWN0ZWRWYWx1ZXMpO1xuICAgICAgfVxuXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICAvLyBjbGVhciBzZWFyY2hcbiAgICB0aGlzLmlzU2VhcmNoaW5nID0gZmFsc2U7XG4gICAgdGhpcy5zZWFyY2hUZXJtID0gJyc7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlU2VsZWN0aW9uKG9wdGlvbjogSVNlbGVjdE9wdGlvbiwgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN1aU11bHRpcGxlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkVmFsdWVzLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGVkVmFsdWVzID0gdGhpcy5zZWxlY3RlZFZhbHVlcy5maWx0ZXIoKHgpID0+IHggIT09IG9wdGlvbi52YWx1ZSk7XG4gICAgdGhpcy5zZWxlY3RlZE9wdGlvbnMgPSB0aGlzLnNlbGVjdGVkT3B0aW9ucy5maWx0ZXIoKHgpID0+IHggIT09IG9wdGlvbik7XG5cbiAgICB0aGlzLmNvbnRyb2xWYWx1ZUNoYW5nZUZuKHRoaXMuc2VsZWN0ZWRWYWx1ZXMpO1xuICAgIHRoaXMuc3VpU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHRoaXMuc2VsZWN0ZWRWYWx1ZXMpO1xuXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogYW55IHwgQXJyYXk8YW55Pik6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlQ2hhbmdlZCA9IHZhbHVlICE9PSB0aGlzLnNlbGVjdGVkT3B0aW9uPy52YWx1ZTtcblxuICAgIGlmICh2YWx1ZUNoYW5nZWQpIHtcbiAgICAgIHRoaXMuc3VpU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBtYXRjaGVkT3B0aW9ucyA9IHRoaXMuYWxsT3B0aW9uc1xuICAgICAgLmZpbHRlcigoeCkgPT4geC52YWx1ZSA9PT0gdmFsdWUpO1xuICAgIHRoaXMuc2VsZWN0ZWRPcHRpb24gPSBtYXRjaGVkT3B0aW9uc1swXTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlRm4gPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICB9XG59XG4iXX0=
|
|
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
35
35
|
]
|
|
36
36
|
}]
|
|
37
37
|
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3NlbGVjdC9zZWxlY3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFrQnhELE1BQU0sT0FBTyxlQUFlOzhHQUFmLGVBQWU7K0dBQWYsZUFBZSxpQkFMeEIsa0JBQWtCO1lBQ2xCLHNCQUFzQjtZQUN0QiwwQkFBMEIsYUFOMUIsV0FBVztZQUNYLFlBQVksYUFOWixrQkFBa0I7WUFDbEIsc0JBQXNCO1lBQ3RCLDBCQUEwQjsrR0FZakIsZUFBZSxZQVR4QixXQUFXO1lBQ1gsWUFBWTs7MkZBUUgsZUFBZTtrQkFoQjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QiwwQkFBMEI7cUJBQzNCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxXQUFXO3dCQUNYLFlBQVk7cUJBQ2I7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QiwwQkFBMEI7cUJBQzNCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1aVNlbGVjdE1lbnVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9zZWxlY3QtbWVudS1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTdWlTZWxlY3RNZW51RGlyZWN0aXZlIH0gZnJvbSAnLi9zZWxlY3QtbWVudS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3VpU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZXhwb3J0czogW1xuICAgIFN1aVNlbGVjdENvbXBvbmVudCxcbiAgICBTdWlTZWxlY3RNZW51RGlyZWN0aXZlLFxuICAgIFN1aVNlbGVjdE1lbnVJdGVtRGlyZWN0aXZlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU3VpU2VsZWN0Q29tcG9uZW50LFxuICAgIFN1aVNlbGVjdE1lbnVEaXJlY3RpdmUsXG4gICAgU3VpU2VsZWN0TWVudUl0ZW1EaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTdWlTZWxlY3RNb2R1bGUge1xufVxuIl19
|
|
@@ -2,13 +2,15 @@ import { __decorate } from 'tslib';
|
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
3
|
import { Directive, Input, HostBinding, EventEmitter, forwardRef, Component, ViewEncapsulation, ViewChild, Output, HostListener, NgModule } from '@angular/core';
|
|
4
4
|
import { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';
|
|
5
|
+
import { BaseDirective } from 'ngx-semantic/core/base';
|
|
5
6
|
import * as i1 from '@angular/forms';
|
|
6
7
|
import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
|
7
8
|
import * as i2 from '@angular/common';
|
|
8
9
|
import { CommonModule } from '@angular/common';
|
|
9
10
|
|
|
10
|
-
class SuiSelectMenuItemDirective {
|
|
11
|
-
constructor() {
|
|
11
|
+
class SuiSelectMenuItemDirective extends BaseDirective {
|
|
12
|
+
constructor(elementRef) {
|
|
13
|
+
super(elementRef);
|
|
12
14
|
this.suiValue = null;
|
|
13
15
|
this.suiSelected = false;
|
|
14
16
|
this.suiMultiple = false;
|
|
@@ -21,8 +23,8 @@ class SuiSelectMenuItemDirective {
|
|
|
21
23
|
ClassUtils.getPropClass(this.suiMultiple && this.suiSelected, 'filtered')
|
|
22
24
|
].join(' ');
|
|
23
25
|
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiSelectMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
25
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: SuiSelectMenuItemDirective, selector: "[suiSelectMenuItem]", inputs: { suiValue: "suiValue", suiSelected: "suiSelected", suiMultiple: "suiMultiple" },
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiSelectMenuItemDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
27
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: SuiSelectMenuItemDirective, selector: "[suiSelectMenuItem]", inputs: { suiValue: "suiValue", suiSelected: "suiSelected", suiMultiple: "suiMultiple" }, usesInheritance: true, ngImport: i0 }); }
|
|
26
28
|
}
|
|
27
29
|
__decorate([
|
|
28
30
|
InputBoolean()
|
|
@@ -35,32 +37,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
35
37
|
args: [{
|
|
36
38
|
selector: '[suiSelectMenuItem]'
|
|
37
39
|
}]
|
|
38
|
-
}], propDecorators: { suiValue: [{
|
|
40
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { suiValue: [{
|
|
39
41
|
type: Input
|
|
40
42
|
}], suiSelected: [{
|
|
41
43
|
type: Input
|
|
42
44
|
}], suiMultiple: [{
|
|
43
45
|
type: Input
|
|
44
|
-
}], classes: [{
|
|
45
|
-
type: HostBinding,
|
|
46
|
-
args: ['class']
|
|
47
46
|
}] } });
|
|
48
47
|
|
|
49
48
|
/**
|
|
50
49
|
* Created by bolor on 11/2/2020
|
|
51
50
|
*/
|
|
52
51
|
|
|
53
|
-
class SuiSelectMenuDirective {
|
|
54
|
-
constructor() {
|
|
55
|
-
this.suiDirection = null;
|
|
56
|
-
this.suiScrolling = false;
|
|
57
|
-
}
|
|
52
|
+
class SuiSelectMenuDirective extends BaseDirective {
|
|
58
53
|
set suiIsOpen(isOpen) {
|
|
59
54
|
this.isOpen = isOpen;
|
|
60
55
|
}
|
|
61
56
|
get suiIsOpen() {
|
|
62
57
|
return this.isOpen;
|
|
63
58
|
}
|
|
59
|
+
constructor(elementRef) {
|
|
60
|
+
super(elementRef);
|
|
61
|
+
this.suiDirection = null;
|
|
62
|
+
this.suiScrolling = false;
|
|
63
|
+
}
|
|
64
64
|
get tabIndex() {
|
|
65
65
|
return -1;
|
|
66
66
|
}
|
|
@@ -74,8 +74,8 @@ class SuiSelectMenuDirective {
|
|
|
74
74
|
ClassUtils.getPropClass(this.isOpen, 'visible')
|
|
75
75
|
].join(' ');
|
|
76
76
|
}
|
|
77
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiSelectMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
78
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: SuiSelectMenuDirective, selector: "[suiSelectMenu]", inputs: { suiDirection: "suiDirection", suiScrolling: "suiScrolling", suiIsOpen: "suiIsOpen" }, host: { properties: { "tabindex": "this.tabIndex"
|
|
77
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiSelectMenuDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
78
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: SuiSelectMenuDirective, selector: "[suiSelectMenu]", inputs: { suiDirection: "suiDirection", suiScrolling: "suiScrolling", suiIsOpen: "suiIsOpen" }, host: { properties: { "tabindex": "this.tabIndex" } }, usesInheritance: true, ngImport: i0 }); }
|
|
79
79
|
}
|
|
80
80
|
__decorate([
|
|
81
81
|
InputBoolean()
|
|
@@ -85,7 +85,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
85
85
|
args: [{
|
|
86
86
|
selector: '[suiSelectMenu]'
|
|
87
87
|
}]
|
|
88
|
-
}], propDecorators: { suiDirection: [{
|
|
88
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { suiDirection: [{
|
|
89
89
|
type: Input
|
|
90
90
|
}], suiScrolling: [{
|
|
91
91
|
type: Input
|
|
@@ -94,9 +94,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
94
94
|
}], tabIndex: [{
|
|
95
95
|
type: HostBinding,
|
|
96
96
|
args: ['tabindex']
|
|
97
|
-
}], classes: [{
|
|
98
|
-
type: HostBinding,
|
|
99
|
-
args: ['class']
|
|
100
97
|
}] } });
|
|
101
98
|
|
|
102
99
|
class SuiSelectComponent {
|
|
@@ -110,7 +107,7 @@ class SuiSelectComponent {
|
|
|
110
107
|
return 0;
|
|
111
108
|
}
|
|
112
109
|
get classes() {
|
|
113
|
-
return [
|
|
110
|
+
return ClassUtils.combineToClass([
|
|
114
111
|
'ui',
|
|
115
112
|
ClassUtils.getPropClass(this.suiFluid, 'fluid'),
|
|
116
113
|
ClassUtils.getPropClass(this.suiCompact, 'compact'),
|
|
@@ -125,7 +122,7 @@ class SuiSelectComponent {
|
|
|
125
122
|
ClassUtils.getPropClass(this.isOpen, 'active'),
|
|
126
123
|
ClassUtils.getPropClass(this.isOpen, 'visible'),
|
|
127
124
|
ClassUtils.getPropClass(this.suiError, 'error')
|
|
128
|
-
]
|
|
125
|
+
]);
|
|
129
126
|
}
|
|
130
127
|
constructor(changeDetectorRef) {
|
|
131
128
|
this.changeDetectorRef = changeDetectorRef;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-semantic-modules-select.mjs","sources":["../../src/modules/select/select-menu-item.directive.ts","../../src/modules/select/interfaces/ISelectOption.ts","../../src/modules/select/select-menu.directive.ts","../../src/modules/select/select.component.ts","../../src/modules/select/select.module.ts","../../src/modules/select/ngx-semantic-modules-select.ts"],"sourcesContent":["import {Directive, HostBinding, Input} from '@angular/core';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\n\n@Directive({\n selector: '[suiSelectMenuItem]'\n})\nexport class SuiSelectMenuItemDirective {\n @Input() public suiValue: any = null;\n @Input() @InputBoolean() public suiSelected = false;\n @Input() @InputBoolean() public suiMultiple = false;\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'item',\n ClassUtils.getPropClass(this.suiSelected, 'active'),\n ClassUtils.getPropClass(!this.suiMultiple && this.suiSelected, 'selected'),\n ClassUtils.getPropClass(this.suiMultiple && this.suiSelected, 'filtered')\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 11/2/2020\n */\n\nimport {ISelectOptionImage} from './ISelectOptionImage';\n\nexport interface ISelectOption {\n text: string;\n value: any;\n image?: ISelectOptionImage;\n flag?: string;\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\n\nexport type SuiSelectMenuDirection = 'left' | 'right' | null;\n\n@Directive({\n selector: '[suiSelectMenu]'\n})\nexport class SuiSelectMenuDirective {\n @Input() public suiDirection: SuiSelectMenuDirection = null;\n @Input() @InputBoolean() public suiScrolling = false;\n\n private isOpen;\n\n @Input()\n set suiIsOpen(isOpen: boolean) {\n this.isOpen = isOpen;\n }\n\n get suiIsOpen(): boolean {\n return this.isOpen;\n }\n\n @HostBinding('tabindex')\n get tabIndex(): number {\n return -1;\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiScrolling, 'scrolling'),\n this.suiDirection,\n 'menu',\n 'transition',\n ClassUtils.getPropClass(!this.isOpen, 'hidden'),\n ClassUtils.getPropClass(this.isOpen, 'visible')\n ].join(' ');\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiSelectMenuDirective } from './select-menu.directive';\nimport { ISelectOption } from './interfaces/ISelectOption';\n\n@Component({\n selector: 'sui-select',\n encapsulation: ViewEncapsulation.None,\n template: `\n <i class=\"dropdown icon\"></i>\n\n <!-- Multiple Select Display -->\n <ng-container *ngIf=\"suiMultiple\">\n <ng-container *ngFor=\"let option of selectedOptions\">\n <a class=\"ui label transition visible\"\n style=\"display: inline-block !important;\">\n <ng-container *ngIf=\"option.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"option.image.avatar\"\n [src]=\"option.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"option.flag\">\n <i [className]=\"'flag ' + option.flag\"></i>\n </ng-container>\n\n {{ option.text }}\n\n <i class=\"delete icon\"\n (click)=\"removeSelection(option, $event)\"></i>\n </a>\n </ng-container>\n\n <div class=\"default text\">{{ suiPlaceholder }}</div>\n </ng-container>\n\n <!-- Search Section -->\n <ng-container *ngIf=\"suiSearch\">\n <input class=\"search\"\n autocomplete=\"off\"\n tabindex=\"0\"\n [(ngModel)]=\"searchTerm\"\n (focus)=\"onClick()\"\n (keyup)=\"onSearch()\">\n </ng-container>\n\n <!-- Display Section -->\n <ng-container *ngIf=\"!suiMultiple\">\n <div\n [class.default]=\"isDefaultText\"\n [class.filtered]=\"isFilteredText\"\n [class.text]=\"true\">\n <ng-container *ngIf=\"selectedOption\">\n <ng-container *ngIf=\"selectedOption.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"selectedOption.image.avatar\"\n [src]=\"selectedOption.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"selectedOption.flag\">\n <i [className]=\"'flag ' + selectedOption.flag\"></i>\n </ng-container>\n\n {{ selectedOption.text }}\n </ng-container>\n\n <ng-container *ngIf=\"!selectedOption\">\n {{ suiPlaceholder }}\n </ng-container>\n </div>\n </ng-container>\n\n <!-- Drop Down Menu Section -->\n <div suiSelectMenu>\n <ng-container *ngFor=\"let option of filteredOptions\">\n <div suiSelectMenuItem\n [suiValue]=\"option.value\"\n [suiSelected]=\"isActive(option)\"\n [suiMultiple]=\"suiMultiple\"\n (click)=\"onItemClick(option, $event)\">\n <ng-container *ngIf=\"option.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"option.image.avatar\"\n [src]=\"option.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"option.flag\">\n <i [className]=\"'flag ' + option.flag\"></i>\n </ng-container>\n {{ option.text }}\n </div>\n </ng-container>\n <ng-container *ngIf=\"hasNoSearchResults()\">\n <div class=\"message\"\n (click)=\"$event.stopPropagation()\">\n No results found.\n </div>\n </ng-container>\n </div>\n `,\n providers: [ {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiSelectComponent),\n multi: true\n } ]\n})\nexport class SuiSelectComponent implements AfterViewInit, ControlValueAccessor {\n @ViewChild(SuiSelectMenuDirective) public optionsMenu: SuiSelectMenuDirective;\n\n @Output() public suiSelectionChanged = new EventEmitter<any | Array<any>>();\n @Input() public suiPlaceholder: string = null;\n @Input() @InputBoolean() public suiSearch = false;\n @Input() @InputBoolean() public suiFluid = false;\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public suiLoading = false;\n @Input() @InputBoolean() public suiError = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() @InputBoolean() public suiScrolling = false;\n @Input() @InputBoolean() public suiCompact = false;\n @Input() @InputBoolean() public name: string = null;\n @Input() @InputBoolean() public suiMultiple = false;\n\n private isOpen = false;\n private isSearching = false;\n private selectedValues: Array<any> = [];\n public searchTerm: string;\n private allOptions: Array<ISelectOption> = [];\n public filteredOptions: Array<ISelectOption> = [];\n public selectedOption: ISelectOption;\n public selectedOptions: Array<ISelectOption> = [];\n\n private controlValueChangeFn: (value: any | Array<any>) => void = () => {\n }\n\n @Input()\n set suiOptions(options: Array<ISelectOption>) {\n this.allOptions = this.filteredOptions = options;\n }\n\n get suiOptions(): Array<ISelectOption> {\n return this.allOptions;\n }\n\n @HostBinding('tabindex')\n get tabIndex(): number {\n return 0;\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'ui',\n ClassUtils.getPropClass(this.suiFluid, 'fluid'),\n ClassUtils.getPropClass(this.suiCompact, 'compact'),\n ClassUtils.getPropClass(this.suiSearch, 'search'),\n ClassUtils.getPropClass(this.suiLoading, 'loading'),\n 'selection',\n ClassUtils.getPropClass(this.suiInline, 'inline'),\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n ClassUtils.getPropClass(this.suiScrolling, 'scrolling'),\n 'dropdown',\n ClassUtils.getPropClass(this.suiMultiple, 'multiple'),\n ClassUtils.getPropClass(this.isOpen, 'active'),\n ClassUtils.getPropClass(this.isOpen, 'visible'),\n ClassUtils.getPropClass(this.suiError, 'error')\n ].join(' ');\n }\n\n constructor(private changeDetectorRef: ChangeDetectorRef) {\n }\n\n public get multiple(): string | undefined {\n return this.suiMultiple ? '' : undefined;\n }\n\n public get isDefaultText(): boolean {\n if (!this.selectedOption) {\n return true;\n }\n\n if (this.suiSearch) {\n return false;\n }\n\n return !this.selectedOption;\n }\n\n public get isFilteredText(): boolean {\n if (!this.suiSearch) {\n return false;\n }\n\n return this.isSearching;\n }\n\n @HostListener('click')\n public onClick(): void {\n if (this.disabled) {\n return;\n }\n\n this.isOpen = !this.isOpen;\n\n // handle selection dropdown\n if (this.optionsMenu) {\n this.optionsMenu.suiIsOpen = this.isOpen;\n }\n }\n\n public ngAfterViewInit(): void {\n if (!this.optionsMenu) {\n throw new Error('An error occurred rendering the options.');\n }\n }\n\n public onSearch(): void {\n this.isSearching = !!this.searchTerm;\n\n // if the user is searching, then keep the dropdown open\n if (this.optionsMenu) {\n this.isOpen = true;\n this.optionsMenu.suiIsOpen = true;\n }\n\n // limit the options displayed\n this.filteredOptions = this.allOptions\n .filter((x) => x.text.toLocaleLowerCase()\n .includes(this.searchTerm.toLocaleLowerCase()));\n }\n\n public isActive(option: ISelectOption): boolean {\n if (this.suiMultiple) {\n return this.selectedValues.includes(option.value);\n } else {\n return this.selectedOption === option;\n }\n }\n\n public hasNoSearchResults(): boolean {\n if (!this.suiSearch) {\n return false;\n }\n\n return this.filteredOptions.length === 0;\n }\n\n public onItemClick(option: ISelectOption, event: Event): void {\n // handle single select\n if (!this.suiMultiple) {\n const valueChanged = this.selectedOption?.value !== option.value;\n this.selectedOption = option;\n\n if (valueChanged) {\n this.controlValueChangeFn(option.value);\n this.suiSelectionChanged.emit(option.value);\n }\n }\n\n // handle multiple select\n if (this.suiMultiple) {\n const valueChanged = !this.selectedValues.includes(option.value);\n\n if (valueChanged) {\n this.selectedValues.push(option.value);\n this.selectedOptions.push(option);\n\n this.controlValueChangeFn(this.selectedValues);\n this.suiSelectionChanged.emit(this.selectedValues);\n }\n\n event.stopPropagation();\n }\n\n // clear search\n this.isSearching = false;\n this.searchTerm = '';\n }\n\n public removeSelection(option: ISelectOption, event: Event): void {\n if (!this.suiMultiple) {\n return;\n }\n\n if (!this.selectedValues.includes(option.value)) {\n return;\n }\n\n this.selectedValues = this.selectedValues.filter((x) => x !== option.value);\n this.selectedOptions = this.selectedOptions.filter((x) => x !== option);\n\n this.controlValueChangeFn(this.selectedValues);\n this.suiSelectionChanged.emit(this.selectedValues);\n\n event.stopPropagation();\n }\n\n public writeValue(value: any | Array<any>): void {\n const valueChanged = value !== this.selectedOption?.value;\n\n if (valueChanged) {\n this.suiSelectionChanged.emit(value);\n }\n\n const matchedOptions = this.allOptions\n .filter((x) => x.value === value);\n this.selectedOption = matchedOptions[0];\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: any): void {\n this.controlValueChangeFn = fn;\n }\n\n public registerOnTouched(fn: any): void {\n }\n\n public setDisabledState?(isDisabled: boolean): void {\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {SuiSelectMenuItemDirective} from './select-menu-item.directive';\nimport {SuiSelectMenuDirective} from './select-menu.directive';\nimport {SuiSelectComponent} from './select.component';\n\n@NgModule({\n exports: [\n SuiSelectComponent,\n SuiSelectMenuDirective,\n SuiSelectMenuItemDirective\n ],\n imports: [\n FormsModule,\n CommonModule\n ],\n declarations: [\n SuiSelectComponent,\n SuiSelectMenuDirective,\n SuiSelectMenuItemDirective\n ]\n})\nexport class SuiSelectModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.SuiSelectMenuDirective","i4.SuiSelectMenuItemDirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-semantic-modules-select.mjs","sources":["../../src/modules/select/select-menu-item.directive.ts","../../src/modules/select/interfaces/ISelectOption.ts","../../src/modules/select/select-menu.directive.ts","../../src/modules/select/select.component.ts","../../src/modules/select/select.module.ts","../../src/modules/select/ngx-semantic-modules-select.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, Input } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\n@Directive({\n selector: '[suiSelectMenuItem]'\n})\nexport class SuiSelectMenuItemDirective extends BaseDirective {\n @Input() public suiValue: any = null;\n @Input() @InputBoolean() public suiSelected = false;\n @Input() @InputBoolean() public suiMultiple = false;\n\n constructor(elementRef: ElementRef) {\n super(elementRef);\n }\n\n get classes(): string {\n return [\n 'item',\n ClassUtils.getPropClass(this.suiSelected, 'active'),\n ClassUtils.getPropClass(!this.suiMultiple && this.suiSelected, 'selected'),\n ClassUtils.getPropClass(this.suiMultiple && this.suiSelected, 'filtered')\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 11/2/2020\n */\n\nimport {ISelectOptionImage} from './ISelectOptionImage';\n\nexport interface ISelectOption {\n text: string;\n value: any;\n image?: ISelectOptionImage;\n flag?: string;\n}\n","import { Directive, ElementRef, HostBinding, Input } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\nexport type SuiSelectMenuDirection = 'left' | 'right' | null;\n\n@Directive({\n selector: '[suiSelectMenu]'\n})\nexport class SuiSelectMenuDirective extends BaseDirective {\n @Input() public suiDirection: SuiSelectMenuDirection = null;\n @Input() @InputBoolean() public suiScrolling = false;\n\n private isOpen;\n\n @Input()\n set suiIsOpen(isOpen: boolean) {\n this.isOpen = isOpen;\n }\n\n get suiIsOpen(): boolean {\n return this.isOpen;\n }\n\n constructor(elementRef: ElementRef) {\n super(elementRef);\n }\n\n @HostBinding('tabindex')\n get tabIndex(): number {\n return -1;\n }\n\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiScrolling, 'scrolling'),\n this.suiDirection,\n 'menu',\n 'transition',\n ClassUtils.getPropClass(!this.isOpen, 'hidden'),\n ClassUtils.getPropClass(this.isOpen, 'visible')\n ].join(' ');\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiSelectMenuDirective } from './select-menu.directive';\nimport { ISelectOption } from './interfaces/ISelectOption';\n\n@Component({\n selector: 'sui-select',\n encapsulation: ViewEncapsulation.None,\n template: `\n <i class=\"dropdown icon\"></i>\n\n <!-- Multiple Select Display -->\n <ng-container *ngIf=\"suiMultiple\">\n <ng-container *ngFor=\"let option of selectedOptions\">\n <a class=\"ui label transition visible\"\n style=\"display: inline-block !important;\">\n <ng-container *ngIf=\"option.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"option.image.avatar\"\n [src]=\"option.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"option.flag\">\n <i [className]=\"'flag ' + option.flag\"></i>\n </ng-container>\n\n {{ option.text }}\n\n <i class=\"delete icon\"\n (click)=\"removeSelection(option, $event)\"></i>\n </a>\n </ng-container>\n\n <div class=\"default text\">{{ suiPlaceholder }}</div>\n </ng-container>\n\n <!-- Search Section -->\n <ng-container *ngIf=\"suiSearch\">\n <input class=\"search\"\n autocomplete=\"off\"\n tabindex=\"0\"\n [(ngModel)]=\"searchTerm\"\n (focus)=\"onClick()\"\n (keyup)=\"onSearch()\">\n </ng-container>\n\n <!-- Display Section -->\n <ng-container *ngIf=\"!suiMultiple\">\n <div\n [class.default]=\"isDefaultText\"\n [class.filtered]=\"isFilteredText\"\n [class.text]=\"true\">\n <ng-container *ngIf=\"selectedOption\">\n <ng-container *ngIf=\"selectedOption.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"selectedOption.image.avatar\"\n [src]=\"selectedOption.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"selectedOption.flag\">\n <i [className]=\"'flag ' + selectedOption.flag\"></i>\n </ng-container>\n\n {{ selectedOption.text }}\n </ng-container>\n\n <ng-container *ngIf=\"!selectedOption\">\n {{ suiPlaceholder }}\n </ng-container>\n </div>\n </ng-container>\n\n <!-- Drop Down Menu Section -->\n <div suiSelectMenu>\n <ng-container *ngFor=\"let option of filteredOptions\">\n <div suiSelectMenuItem\n [suiValue]=\"option.value\"\n [suiSelected]=\"isActive(option)\"\n [suiMultiple]=\"suiMultiple\"\n (click)=\"onItemClick(option, $event)\">\n <ng-container *ngIf=\"option.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"option.image.avatar\"\n [src]=\"option.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"option.flag\">\n <i [className]=\"'flag ' + option.flag\"></i>\n </ng-container>\n {{ option.text }}\n </div>\n </ng-container>\n <ng-container *ngIf=\"hasNoSearchResults()\">\n <div class=\"message\"\n (click)=\"$event.stopPropagation()\">\n No results found.\n </div>\n </ng-container>\n </div>\n `,\n providers: [ {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiSelectComponent),\n multi: true\n } ]\n})\nexport class SuiSelectComponent implements AfterViewInit, ControlValueAccessor {\n @ViewChild(SuiSelectMenuDirective) public optionsMenu: SuiSelectMenuDirective;\n\n @Output() public suiSelectionChanged = new EventEmitter<any | Array<any>>();\n @Input() public suiPlaceholder: string = null;\n @Input() @InputBoolean() public suiSearch = false;\n @Input() @InputBoolean() public suiFluid = false;\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public suiLoading = false;\n @Input() @InputBoolean() public suiError = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() @InputBoolean() public suiScrolling = false;\n @Input() @InputBoolean() public suiCompact = false;\n @Input() @InputBoolean() public name: string = null;\n @Input() @InputBoolean() public suiMultiple = false;\n\n private isOpen = false;\n private isSearching = false;\n private selectedValues: Array<any> = [];\n public searchTerm: string;\n private allOptions: Array<ISelectOption> = [];\n public filteredOptions: Array<ISelectOption> = [];\n public selectedOption: ISelectOption;\n public selectedOptions: Array<ISelectOption> = [];\n\n private controlValueChangeFn: (value: any | Array<any>) => void = () => {\n };\n\n @Input()\n set suiOptions(options: Array<ISelectOption>) {\n this.allOptions = this.filteredOptions = options;\n }\n\n get suiOptions(): Array<ISelectOption> {\n return this.allOptions;\n }\n\n @HostBinding('tabindex')\n get tabIndex(): number {\n return 0;\n }\n\n @HostBinding('class')\n get classes(): string {\n return ClassUtils.combineToClass([\n 'ui',\n ClassUtils.getPropClass(this.suiFluid, 'fluid'),\n ClassUtils.getPropClass(this.suiCompact, 'compact'),\n ClassUtils.getPropClass(this.suiSearch, 'search'),\n ClassUtils.getPropClass(this.suiLoading, 'loading'),\n 'selection',\n ClassUtils.getPropClass(this.suiInline, 'inline'),\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n ClassUtils.getPropClass(this.suiScrolling, 'scrolling'),\n 'dropdown',\n ClassUtils.getPropClass(this.suiMultiple, 'multiple'),\n ClassUtils.getPropClass(this.isOpen, 'active'),\n ClassUtils.getPropClass(this.isOpen, 'visible'),\n ClassUtils.getPropClass(this.suiError, 'error')\n ]);\n }\n\n constructor(private changeDetectorRef: ChangeDetectorRef) {\n }\n\n public get multiple(): string | undefined {\n return this.suiMultiple ? '' : undefined;\n }\n\n public get isDefaultText(): boolean {\n if (!this.selectedOption) {\n return true;\n }\n\n if (this.suiSearch) {\n return false;\n }\n\n return !this.selectedOption;\n }\n\n public get isFilteredText(): boolean {\n if (!this.suiSearch) {\n return false;\n }\n\n return this.isSearching;\n }\n\n @HostListener('click')\n public onClick(): void {\n if (this.disabled) {\n return;\n }\n\n this.isOpen = !this.isOpen;\n\n // handle selection dropdown\n if (this.optionsMenu) {\n this.optionsMenu.suiIsOpen = this.isOpen;\n }\n }\n\n public ngAfterViewInit(): void {\n if (!this.optionsMenu) {\n throw new Error('An error occurred rendering the options.');\n }\n }\n\n public onSearch(): void {\n this.isSearching = !!this.searchTerm;\n\n // if the user is searching, then keep the dropdown open\n if (this.optionsMenu) {\n this.isOpen = true;\n this.optionsMenu.suiIsOpen = true;\n }\n\n // limit the options displayed\n this.filteredOptions = this.allOptions\n .filter((x) => x.text.toLocaleLowerCase()\n .includes(this.searchTerm.toLocaleLowerCase()));\n }\n\n public isActive(option: ISelectOption): boolean {\n if (this.suiMultiple) {\n return this.selectedValues.includes(option.value);\n } else {\n return this.selectedOption === option;\n }\n }\n\n public hasNoSearchResults(): boolean {\n if (!this.suiSearch) {\n return false;\n }\n\n return this.filteredOptions.length === 0;\n }\n\n public onItemClick(option: ISelectOption, event: Event): void {\n // handle single select\n if (!this.suiMultiple) {\n const valueChanged = this.selectedOption?.value !== option.value;\n this.selectedOption = option;\n\n if (valueChanged) {\n this.controlValueChangeFn(option.value);\n this.suiSelectionChanged.emit(option.value);\n }\n }\n\n // handle multiple select\n if (this.suiMultiple) {\n const valueChanged = !this.selectedValues.includes(option.value);\n\n if (valueChanged) {\n this.selectedValues.push(option.value);\n this.selectedOptions.push(option);\n\n this.controlValueChangeFn(this.selectedValues);\n this.suiSelectionChanged.emit(this.selectedValues);\n }\n\n event.stopPropagation();\n }\n\n // clear search\n this.isSearching = false;\n this.searchTerm = '';\n }\n\n public removeSelection(option: ISelectOption, event: Event): void {\n if (!this.suiMultiple) {\n return;\n }\n\n if (!this.selectedValues.includes(option.value)) {\n return;\n }\n\n this.selectedValues = this.selectedValues.filter((x) => x !== option.value);\n this.selectedOptions = this.selectedOptions.filter((x) => x !== option);\n\n this.controlValueChangeFn(this.selectedValues);\n this.suiSelectionChanged.emit(this.selectedValues);\n\n event.stopPropagation();\n }\n\n public writeValue(value: any | Array<any>): void {\n const valueChanged = value !== this.selectedOption?.value;\n\n if (valueChanged) {\n this.suiSelectionChanged.emit(value);\n }\n\n const matchedOptions = this.allOptions\n .filter((x) => x.value === value);\n this.selectedOption = matchedOptions[0];\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: any): void {\n this.controlValueChangeFn = fn;\n }\n\n public registerOnTouched(fn: any): void {\n }\n\n public setDisabledState?(isDisabled: boolean): void {\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SuiSelectMenuItemDirective } from './select-menu-item.directive';\nimport { SuiSelectMenuDirective } from './select-menu.directive';\nimport { SuiSelectComponent } from './select.component';\n\n@NgModule({\n exports: [\n SuiSelectComponent,\n SuiSelectMenuDirective,\n SuiSelectMenuItemDirective\n ],\n imports: [\n FormsModule,\n CommonModule\n ],\n declarations: [\n SuiSelectComponent,\n SuiSelectMenuDirective,\n SuiSelectMenuItemDirective\n ]\n})\nexport class SuiSelectModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.SuiSelectMenuDirective","i4.SuiSelectMenuItemDirective"],"mappings":"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"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import { ElementRef } from '@angular/core';
|
|
2
|
+
import { BaseDirective } from 'ngx-semantic/core/base';
|
|
1
3
|
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class SuiSelectMenuItemDirective {
|
|
4
|
+
export declare class SuiSelectMenuItemDirective extends BaseDirective {
|
|
3
5
|
suiValue: any;
|
|
4
6
|
suiSelected: boolean;
|
|
5
7
|
suiMultiple: boolean;
|
|
8
|
+
constructor(elementRef: ElementRef);
|
|
6
9
|
get classes(): string;
|
|
7
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<SuiSelectMenuItemDirective, never>;
|
|
8
11
|
static ɵdir: i0.ɵɵDirectiveDeclaration<SuiSelectMenuItemDirective, "[suiSelectMenuItem]", never, { "suiValue": { "alias": "suiValue"; "required": false; }; "suiSelected": { "alias": "suiSelected"; "required": false; }; "suiMultiple": { "alias": "suiMultiple"; "required": false; }; }, {}, never, never, false, never>;
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
+
import { ElementRef } from '@angular/core';
|
|
2
|
+
import { BaseDirective } from 'ngx-semantic/core/base';
|
|
1
3
|
import * as i0 from "@angular/core";
|
|
2
4
|
export type SuiSelectMenuDirection = 'left' | 'right' | null;
|
|
3
|
-
export declare class SuiSelectMenuDirective {
|
|
5
|
+
export declare class SuiSelectMenuDirective extends BaseDirective {
|
|
4
6
|
suiDirection: SuiSelectMenuDirection;
|
|
5
7
|
suiScrolling: boolean;
|
|
6
8
|
private isOpen;
|
|
7
9
|
set suiIsOpen(isOpen: boolean);
|
|
8
10
|
get suiIsOpen(): boolean;
|
|
11
|
+
constructor(elementRef: ElementRef);
|
|
9
12
|
get tabIndex(): number;
|
|
10
13
|
get classes(): string;
|
|
11
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<SuiSelectMenuDirective, never>;
|