design-angular-kit 0.13.0 → 1.0.0-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/README.md +61 -31
- package/esm2020/design-angular-kit.mjs +5 -0
- package/esm2020/lib/badge/badge.directive.mjs +83 -0
- package/esm2020/lib/breadcrumb/breadcrumb-item.component.mjs +66 -0
- package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +89 -0
- package/esm2020/lib/button/button.directive.mjs +185 -0
- package/esm2020/lib/button/button.module.mjs +18 -0
- package/esm2020/lib/checkbox/checkbox.component.mjs +138 -0
- package/esm2020/lib/collapse/collapse-group.component.mjs +57 -0
- package/esm2020/lib/collapse/collapse-item.component.mjs +79 -0
- package/esm2020/lib/collapse/collapse.config.mjs +12 -0
- package/esm2020/lib/collapse/collapse.directive.mjs +55 -0
- package/esm2020/lib/collapse/collapse.module.mjs +22 -0
- package/esm2020/lib/design-angular-kit.module.mjs +142 -0
- package/esm2020/lib/dropdown/dropdown-divider.component.mjs +11 -0
- package/esm2020/lib/dropdown/dropdown-item.component.mjs +97 -0
- package/esm2020/lib/dropdown/dropdown.component.mjs +143 -0
- package/esm2020/lib/dropdown/dropdown.config.mjs +12 -0
- package/esm2020/lib/dropdown/dropdown.directive.mjs +156 -0
- package/esm2020/lib/dropdown/dropdown.module.mjs +25 -0
- package/esm2020/lib/enums/icons.enum.mjs +27 -0
- package/esm2020/lib/form-input/form-input-password.utils.mjs +154 -0
- package/esm2020/lib/form-input/form-input.component.mjs +495 -0
- package/esm2020/lib/form-input/it-prefix.directive.mjs +13 -0
- package/esm2020/lib/form-input/it-suffix.directive.mjs +13 -0
- package/esm2020/lib/form-input/it-text-prefix.directive.mjs +13 -0
- package/esm2020/lib/form-input/it-text-suffix.directive.mjs +13 -0
- package/esm2020/lib/form-input/mark-matching-text.pipe.mjs +36 -0
- package/esm2020/lib/icon/icon.component.mjs +87 -0
- package/esm2020/lib/icon/icon.module.mjs +18 -0
- package/esm2020/lib/models/Alignment.mjs +15 -0
- package/esm2020/lib/models/ButtonSize.mjs +15 -0
- package/esm2020/lib/models/InputType.mjs +44 -0
- package/esm2020/lib/models/ThemeColor.mjs +30 -0
- package/esm2020/lib/popover/popover.config.mjs +17 -0
- package/esm2020/lib/popover/popover.directive.mjs +33 -0
- package/esm2020/lib/popover/popover.module.mjs +19 -0
- package/esm2020/lib/progress-bar/progress-bar.component.mjs +98 -0
- package/esm2020/lib/radio/radio.component.mjs +287 -0
- package/esm2020/lib/radio/unique-selection-dispatcher.mjs +55 -0
- package/esm2020/lib/tabs/tab-group.component.mjs +177 -0
- package/esm2020/lib/tabs/tab.component.mjs +73 -0
- package/esm2020/lib/tabs/tabs.module.mjs +20 -0
- package/esm2020/lib/toggle/toggle.component.mjs +86 -0
- package/esm2020/lib/tooltip/tooltip.config.mjs +17 -0
- package/esm2020/lib/tooltip/tooltip.directive.mjs +43 -0
- package/esm2020/lib/tooltip/tooltip.module.mjs +19 -0
- package/esm2020/lib/util/focus-mouse.directive.mjs +32 -0
- package/esm2020/lib/util/util.mjs +12 -0
- package/esm2020/lib/util/utils.module.mjs +16 -0
- package/esm2020/public_api.mjs +40 -0
- package/fesm2015/design-angular-kit.mjs +3181 -0
- package/fesm2015/design-angular-kit.mjs.map +1 -0
- package/fesm2020/design-angular-kit.mjs +3160 -0
- package/fesm2020/design-angular-kit.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/badge/badge.directive.d.ts +11 -5
- package/lib/breadcrumb/breadcrumb-item.component.d.ts +16 -5
- package/lib/breadcrumb/breadcrumb.component.d.ts +12 -5
- package/lib/button/button.directive.d.ts +72 -0
- package/lib/button/button.module.d.ts +8 -0
- package/lib/checkbox/checkbox.component.d.ts +25 -5
- package/lib/collapse/collapse-group.component.d.ts +6 -2
- package/lib/collapse/collapse-item.component.d.ts +16 -8
- package/lib/collapse/collapse.config.d.ts +6 -0
- package/lib/collapse/collapse.directive.d.ts +13 -28
- package/lib/collapse/collapse.module.d.ts +12 -0
- package/lib/design-angular-kit.module.d.ts +27 -0
- package/lib/dropdown/dropdown-divider.component.d.ts +3 -0
- package/lib/dropdown/dropdown-item.component.d.ts +22 -8
- package/lib/dropdown/dropdown.component.d.ts +34 -26
- package/lib/dropdown/dropdown.config.d.ts +6 -0
- package/lib/dropdown/dropdown.directive.d.ts +77 -0
- package/lib/dropdown/dropdown.module.d.ts +15 -0
- package/lib/enums/icons.enum.d.ts +23 -0
- package/lib/form-input/form-input-password.utils.d.ts +45 -0
- package/lib/form-input/form-input.component.d.ts +202 -20
- package/lib/form-input/it-prefix.directive.d.ts +5 -0
- package/lib/form-input/it-suffix.directive.d.ts +5 -0
- package/lib/form-input/it-text-prefix.directive.d.ts +5 -0
- package/lib/form-input/it-text-suffix.directive.d.ts +5 -0
- package/lib/form-input/mark-matching-text.pipe.d.ts +10 -0
- package/lib/icon/icon.component.d.ts +34 -0
- package/lib/icon/icon.module.d.ts +8 -0
- package/lib/models/Alignment.d.ts +12 -0
- package/lib/models/ButtonSize.d.ts +1 -1
- package/lib/models/InputType.d.ts +22 -1
- package/lib/models/ThemeColor.d.ts +1 -1
- package/lib/popover/popover.config.d.ts +5 -6
- package/lib/popover/popover.directive.d.ts +13 -108
- package/lib/popover/popover.module.d.ts +9 -0
- package/lib/progress-bar/progress-bar.component.d.ts +25 -19
- package/lib/radio/radio.component.d.ts +22 -10
- package/lib/radio/unique-selection-dispatcher.d.ts +3 -0
- package/lib/tabs/tab-group.component.d.ts +17 -11
- package/lib/tabs/tab.component.d.ts +6 -2
- package/lib/tabs/tabs.module.d.ts +10 -0
- package/lib/toggle/toggle.component.d.ts +9 -4
- package/lib/tooltip/tooltip.config.d.ts +7 -7
- package/lib/tooltip/tooltip.directive.d.ts +12 -92
- package/lib/tooltip/tooltip.module.d.ts +9 -0
- package/lib/util/focus-mouse.directive.d.ts +13 -0
- package/lib/util/utils.module.d.ts +7 -0
- package/package.json +36 -21
- package/public_api.d.ts +16 -2
- package/bundles/design-angular-kit.umd.js +0 -6258
- package/bundles/design-angular-kit.umd.js.map +0 -1
- package/bundles/design-angular-kit.umd.min.js +0 -31
- package/bundles/design-angular-kit.umd.min.js.map +0 -1
- package/design-angular-kit.d.ts +0 -8
- package/design-angular-kit.metadata.json +0 -1
- package/esm2015/design-angular-kit.js +0 -14
- package/esm2015/lib/badge/badge.directive.js +0 -116
- package/esm2015/lib/breadcrumb/breadcrumb-item.component.js +0 -117
- package/esm2015/lib/breadcrumb/breadcrumb.component.js +0 -128
- package/esm2015/lib/button/button.component.js +0 -165
- package/esm2015/lib/checkbox/checkbox.component.js +0 -170
- package/esm2015/lib/collapse/collapse-group.component.js +0 -87
- package/esm2015/lib/collapse/collapse-item.component.js +0 -148
- package/esm2015/lib/collapse/collapse.directive.js +0 -153
- package/esm2015/lib/design-angular-kit.module.js +0 -90
- package/esm2015/lib/dropdown/dropdown-divider.component.js +0 -18
- package/esm2015/lib/dropdown/dropdown-header.component.js +0 -29
- package/esm2015/lib/dropdown/dropdown-item.component.js +0 -157
- package/esm2015/lib/dropdown/dropdown.component.js +0 -248
- package/esm2015/lib/form-input/form-input.component.js +0 -489
- package/esm2015/lib/models/ButtonSize.js +0 -25
- package/esm2015/lib/models/IconPosition.js +0 -21
- package/esm2015/lib/models/InputType.js +0 -33
- package/esm2015/lib/models/InteractionTrigger.js +0 -35
- package/esm2015/lib/models/ThemeColor.js +0 -45
- package/esm2015/lib/popover/popover.component.js +0 -134
- package/esm2015/lib/popover/popover.config.js +0 -35
- package/esm2015/lib/popover/popover.directive.js +0 -433
- package/esm2015/lib/popover/popup.js +0 -105
- package/esm2015/lib/popover/positioning.js +0 -349
- package/esm2015/lib/popover/triggers.js +0 -99
- package/esm2015/lib/progress-bar/progress-bar.component.js +0 -170
- package/esm2015/lib/radio/radio.component.js +0 -526
- package/esm2015/lib/radio/unique-selection-dispatcher.js +0 -70
- package/esm2015/lib/tabs/tab-group.component.js +0 -339
- package/esm2015/lib/tabs/tab.component.js +0 -143
- package/esm2015/lib/toggle/toggle.component.js +0 -173
- package/esm2015/lib/tooltip/popup.js +0 -105
- package/esm2015/lib/tooltip/positioning.js +0 -349
- package/esm2015/lib/tooltip/tooltip.component.js +0 -77
- package/esm2015/lib/tooltip/tooltip.config.js +0 -31
- package/esm2015/lib/tooltip/tooltip.directive.js +0 -384
- package/esm2015/lib/tooltip/triggers.js +0 -99
- package/esm2015/lib/util/util.js +0 -30
- package/esm2015/public_api.js +0 -31
- package/esm5/design-angular-kit.js +0 -14
- package/esm5/lib/badge/badge.directive.js +0 -145
- package/esm5/lib/breadcrumb/breadcrumb-item.component.js +0 -135
- package/esm5/lib/breadcrumb/breadcrumb.component.js +0 -164
- package/esm5/lib/button/button.component.js +0 -221
- package/esm5/lib/checkbox/checkbox.component.js +0 -200
- package/esm5/lib/collapse/collapse-group.component.js +0 -102
- package/esm5/lib/collapse/collapse-item.component.js +0 -183
- package/esm5/lib/collapse/collapse.directive.js +0 -210
- package/esm5/lib/design-angular-kit.module.js +0 -94
- package/esm5/lib/dropdown/dropdown-divider.component.js +0 -20
- package/esm5/lib/dropdown/dropdown-header.component.js +0 -27
- package/esm5/lib/dropdown/dropdown-item.component.js +0 -197
- package/esm5/lib/dropdown/dropdown.component.js +0 -309
- package/esm5/lib/form-input/form-input.component.js +0 -582
- package/esm5/lib/models/ButtonSize.js +0 -25
- package/esm5/lib/models/IconPosition.js +0 -21
- package/esm5/lib/models/InputType.js +0 -33
- package/esm5/lib/models/InteractionTrigger.js +0 -35
- package/esm5/lib/models/ThemeColor.js +0 -45
- package/esm5/lib/popover/popover.component.js +0 -144
- package/esm5/lib/popover/popover.config.js +0 -37
- package/esm5/lib/popover/popover.directive.js +0 -573
- package/esm5/lib/popover/popup.js +0 -116
- package/esm5/lib/popover/positioning.js +0 -446
- package/esm5/lib/popover/triggers.js +0 -115
- package/esm5/lib/progress-bar/progress-bar.component.js +0 -218
- package/esm5/lib/radio/radio.component.js +0 -610
- package/esm5/lib/radio/unique-selection-dispatcher.js +0 -108
- package/esm5/lib/tabs/tab-group.component.js +0 -401
- package/esm5/lib/tabs/tab.component.js +0 -156
- package/esm5/lib/toggle/toggle.component.js +0 -200
- package/esm5/lib/tooltip/popup.js +0 -116
- package/esm5/lib/tooltip/positioning.js +0 -446
- package/esm5/lib/tooltip/tooltip.component.js +0 -80
- package/esm5/lib/tooltip/tooltip.config.js +0 -33
- package/esm5/lib/tooltip/tooltip.directive.js +0 -516
- package/esm5/lib/tooltip/triggers.js +0 -115
- package/esm5/lib/util/util.js +0 -48
- package/esm5/public_api.js +0 -31
- package/fesm2015/design-angular-kit.js +0 -5094
- package/fesm2015/design-angular-kit.js.map +0 -1
- package/fesm5/design-angular-kit.js +0 -6314
- package/fesm5/design-angular-kit.js.map +0 -1
- package/lib/button/button.component.d.ts +0 -50
- package/lib/dropdown/dropdown-header.component.d.ts +0 -3
- package/lib/models/IconPosition.d.ts +0 -9
- package/lib/models/InteractionTrigger.d.ts +0 -19
- package/lib/popover/popover.component.d.ts +0 -25
- package/lib/popover/popup.d.ts +0 -27
- package/lib/popover/positioning.d.ts +0 -32
- package/lib/popover/triggers.d.ts +0 -18
- package/lib/tooltip/popup.d.ts +0 -27
- package/lib/tooltip/positioning.d.ts +0 -32
- package/lib/tooltip/tooltip.component.d.ts +0 -20
- package/lib/tooltip/triggers.d.ts +0 -18
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import { Component, Input } from '@angular/core';
|
|
6
|
-
import { Util } from '../util/util';
|
|
7
|
-
import { IconPosition, ICON_POSITIONS } from '../models/IconPosition';
|
|
8
|
-
/** @type {?} */
|
|
9
|
-
var identifier = 0;
|
|
10
|
-
/**
|
|
11
|
-
* Componente usata per visualizzare una voce di menù all'interno di una dropdown
|
|
12
|
-
*/
|
|
13
|
-
var DropdownItemComponent = /** @class */ (function () {
|
|
14
|
-
function DropdownItemComponent() {
|
|
15
|
-
this.id = "dropdown-item-" + identifier++;
|
|
16
|
-
this._link = '';
|
|
17
|
-
this._active = false;
|
|
18
|
-
this._disabled = false;
|
|
19
|
-
this._large = false;
|
|
20
|
-
this._icon = undefined;
|
|
21
|
-
this._iconPosition = ICON_POSITIONS.RIGHT;
|
|
22
|
-
}
|
|
23
|
-
Object.defineProperty(DropdownItemComponent.prototype, "link", {
|
|
24
|
-
/**
|
|
25
|
-
* Il link alla pagina verso cui andare al click sull'elemento del dropdown
|
|
26
|
-
*/
|
|
27
|
-
get: /**
|
|
28
|
-
* Il link alla pagina verso cui andare al click sull'elemento del dropdown
|
|
29
|
-
* @return {?}
|
|
30
|
-
*/
|
|
31
|
-
function () { return !this.disabled ? this._link : ''; },
|
|
32
|
-
set: /**
|
|
33
|
-
* @param {?} value
|
|
34
|
-
* @return {?}
|
|
35
|
-
*/
|
|
36
|
-
function (value) { this._link = value; },
|
|
37
|
-
enumerable: true,
|
|
38
|
-
configurable: true
|
|
39
|
-
});
|
|
40
|
-
Object.defineProperty(DropdownItemComponent.prototype, "active", {
|
|
41
|
-
/**
|
|
42
|
-
* Se presente indica che l'elemento viene renderizzato come elemento attivo.
|
|
43
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
44
|
-
*/
|
|
45
|
-
get: /**
|
|
46
|
-
* Se presente indica che l'elemento viene renderizzato come elemento attivo.
|
|
47
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
48
|
-
* @return {?}
|
|
49
|
-
*/
|
|
50
|
-
function () { return this._active; },
|
|
51
|
-
set: /**
|
|
52
|
-
* @param {?} value
|
|
53
|
-
* @return {?}
|
|
54
|
-
*/
|
|
55
|
-
function (value) { this._active = Util.coerceBooleanProperty(value); },
|
|
56
|
-
enumerable: true,
|
|
57
|
-
configurable: true
|
|
58
|
-
});
|
|
59
|
-
Object.defineProperty(DropdownItemComponent.prototype, "disabled", {
|
|
60
|
-
/**
|
|
61
|
-
* Se presente indica che l'elemento è disabilitato.
|
|
62
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
63
|
-
*/
|
|
64
|
-
get: /**
|
|
65
|
-
* Se presente indica che l'elemento è disabilitato.
|
|
66
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
67
|
-
* @return {?}
|
|
68
|
-
*/
|
|
69
|
-
function () { return this._disabled; },
|
|
70
|
-
set: /**
|
|
71
|
-
* @param {?} value
|
|
72
|
-
* @return {?}
|
|
73
|
-
*/
|
|
74
|
-
function (value) {
|
|
75
|
-
this._disabled = Util.coerceBooleanProperty(value);
|
|
76
|
-
},
|
|
77
|
-
enumerable: true,
|
|
78
|
-
configurable: true
|
|
79
|
-
});
|
|
80
|
-
Object.defineProperty(DropdownItemComponent.prototype, "large", {
|
|
81
|
-
/**
|
|
82
|
-
* Se presente indica che il testo dell'elemento viene renderizzato più grande.
|
|
83
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
84
|
-
*/
|
|
85
|
-
get: /**
|
|
86
|
-
* Se presente indica che il testo dell'elemento viene renderizzato più grande.
|
|
87
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
88
|
-
* @return {?}
|
|
89
|
-
*/
|
|
90
|
-
function () { return this._large; },
|
|
91
|
-
set: /**
|
|
92
|
-
* @param {?} value
|
|
93
|
-
* @return {?}
|
|
94
|
-
*/
|
|
95
|
-
function (value) { this._large = Util.coerceBooleanProperty(value); },
|
|
96
|
-
enumerable: true,
|
|
97
|
-
configurable: true
|
|
98
|
-
});
|
|
99
|
-
Object.defineProperty(DropdownItemComponent.prototype, "icon", {
|
|
100
|
-
/**
|
|
101
|
-
* La classe dell'icona da usare prima o dopo del testo dell'elemento del dropdown
|
|
102
|
-
*/
|
|
103
|
-
get: /**
|
|
104
|
-
* La classe dell'icona da usare prima o dopo del testo dell'elemento del dropdown
|
|
105
|
-
* @return {?}
|
|
106
|
-
*/
|
|
107
|
-
function () { return this._icon; },
|
|
108
|
-
set: /**
|
|
109
|
-
* @param {?} value
|
|
110
|
-
* @return {?}
|
|
111
|
-
*/
|
|
112
|
-
function (value) { this._icon = value; },
|
|
113
|
-
enumerable: true,
|
|
114
|
-
configurable: true
|
|
115
|
-
});
|
|
116
|
-
Object.defineProperty(DropdownItemComponent.prototype, "iconPosition", {
|
|
117
|
-
/**
|
|
118
|
-
* La posizione dell'icona rispetto al testo dell'elemento del dropdown.
|
|
119
|
-
* Può assumere valori right o left.
|
|
120
|
-
*/
|
|
121
|
-
get: /**
|
|
122
|
-
* La posizione dell'icona rispetto al testo dell'elemento del dropdown.
|
|
123
|
-
* Può assumere valori right o left.
|
|
124
|
-
* @return {?}
|
|
125
|
-
*/
|
|
126
|
-
function () { return this._iconPosition; },
|
|
127
|
-
set: /**
|
|
128
|
-
* @param {?} value
|
|
129
|
-
* @return {?}
|
|
130
|
-
*/
|
|
131
|
-
function (value) {
|
|
132
|
-
if (IconPosition.is(value)) {
|
|
133
|
-
this._iconPosition = value;
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
this._iconPosition = ICON_POSITIONS.RIGHT;
|
|
137
|
-
}
|
|
138
|
-
},
|
|
139
|
-
enumerable: true,
|
|
140
|
-
configurable: true
|
|
141
|
-
});
|
|
142
|
-
Object.defineProperty(DropdownItemComponent.prototype, "dropdownItemClass", {
|
|
143
|
-
get: /**
|
|
144
|
-
* @return {?}
|
|
145
|
-
*/
|
|
146
|
-
function () {
|
|
147
|
-
return "list-item " + this.iconPosition + "-icon";
|
|
148
|
-
},
|
|
149
|
-
enumerable: true,
|
|
150
|
-
configurable: true
|
|
151
|
-
});
|
|
152
|
-
Object.defineProperty(DropdownItemComponent.prototype, "iconClass", {
|
|
153
|
-
get: /**
|
|
154
|
-
* @return {?}
|
|
155
|
-
*/
|
|
156
|
-
function () {
|
|
157
|
-
return this.icon + " " + this.iconPosition;
|
|
158
|
-
},
|
|
159
|
-
enumerable: true,
|
|
160
|
-
configurable: true
|
|
161
|
-
});
|
|
162
|
-
DropdownItemComponent.decorators = [
|
|
163
|
-
{ type: Component, args: [{
|
|
164
|
-
selector: 'it-dropdown-item',
|
|
165
|
-
template: "<li [id]=\"id\">\n <a [attr.href]=\"link\"\n [attr.tabindex]=\"this.disabled ? -1 : 0\"\n [class]=\"dropdownItemClass\"\n [ngClass]=\"{\n 'large' : large, \n 'active' : active,\n 'disabled' : disabled,\n 'disabled-item-link' : disabled\n }\">\n <i [class]=\"iconClass\" aria-hidden=\"true\" *ngIf=\"icon && iconPosition === 'left'\"></i>\n <span>\n <ng-content></ng-content>\n </span>\n <i [class]=\"iconClass\" aria-hidden=\"true\" *ngIf=\"icon && iconPosition === 'right'\"></i>\n </a>\n</li>",
|
|
166
|
-
styles: [".disabled-item-link{pointer-events:none}"]
|
|
167
|
-
},] },
|
|
168
|
-
];
|
|
169
|
-
DropdownItemComponent.propDecorators = {
|
|
170
|
-
link: [{ type: Input }],
|
|
171
|
-
active: [{ type: Input }],
|
|
172
|
-
disabled: [{ type: Input }],
|
|
173
|
-
large: [{ type: Input }],
|
|
174
|
-
icon: [{ type: Input }],
|
|
175
|
-
iconPosition: [{ type: Input }]
|
|
176
|
-
};
|
|
177
|
-
return DropdownItemComponent;
|
|
178
|
-
}());
|
|
179
|
-
export { DropdownItemComponent };
|
|
180
|
-
if (false) {
|
|
181
|
-
/** @type {?} */
|
|
182
|
-
DropdownItemComponent.prototype.id;
|
|
183
|
-
/** @type {?} */
|
|
184
|
-
DropdownItemComponent.prototype._link;
|
|
185
|
-
/** @type {?} */
|
|
186
|
-
DropdownItemComponent.prototype._active;
|
|
187
|
-
/** @type {?} */
|
|
188
|
-
DropdownItemComponent.prototype._disabled;
|
|
189
|
-
/** @type {?} */
|
|
190
|
-
DropdownItemComponent.prototype._large;
|
|
191
|
-
/** @type {?} */
|
|
192
|
-
DropdownItemComponent.prototype._icon;
|
|
193
|
-
/** @type {?} */
|
|
194
|
-
DropdownItemComponent.prototype._iconPosition;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9kZXNpZ24tYW5ndWxhci1raXQvIiwic291cmNlcyI6WyJsaWIvZHJvcGRvd24vZHJvcGRvd24taXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFFdEUsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDOzs7Ozs7a0JBMkJaLG1CQUFpQixVQUFVLEVBQUk7cUJBUXBCLEVBQUU7dUJBU0EsS0FBSzt5QkFXSCxLQUFLO3NCQVNSLEtBQUs7cUJBUU4sU0FBUzs2QkFlRCxjQUFjLENBQUMsS0FBSzs7SUF2RDVDLHNCQUNJLHVDQUFJO1FBSlI7O1dBRUc7Ozs7O1FBQ0gsY0FDcUIsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUU7Ozs7O1FBQy9ELFVBQVMsS0FBYSxJQUFJLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEVBQUU7OztPQURnQjtJQVEvRCxzQkFDSSx5Q0FBTTtRQUxWOzs7V0FHRzs7Ozs7O1FBQ0gsY0FDd0IsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTs7Ozs7UUFDOUMsVUFBVyxLQUFjLElBQUksSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTs7O09BRGxDO0lBUTlDLHNCQUNJLDJDQUFRO1FBTFo7OztXQUdHOzs7Ozs7UUFDSCxjQUMwQixNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFOzs7OztRQUNsRCxVQUFhLEtBQWM7WUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEQ7OztPQUhpRDtJQVVsRCxzQkFDSSx3Q0FBSztRQUxUOzs7V0FHRzs7Ozs7O1FBQ0gsY0FDdUIsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRTs7Ozs7UUFDNUMsVUFBVSxLQUFjLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTs7O09BRGxDO0lBTzVDLHNCQUNJLHVDQUFJO1FBSlI7O1dBRUc7Ozs7O1FBQ0gsY0FDcUIsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTs7Ozs7UUFDekMsVUFBUyxLQUFhLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsRUFBRTs7O09BRE47SUFRekMsc0JBQ0ksK0NBQVk7UUFMaEI7OztXQUdHOzs7Ozs7UUFDSCxjQUMwQixNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFOzs7OztRQUN0RCxVQUFpQixLQUFVO1lBQ3pCLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQzthQUM1QjtZQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNOLElBQUksQ0FBQyxhQUFhLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQzthQUMzQztTQUNGOzs7T0FQcUQ7SUFVdEQsc0JBQUksb0RBQWlCOzs7O1FBQXJCO1lBQ0UsTUFBTSxDQUFDLGVBQWEsSUFBSSxDQUFDLFlBQVksVUFBTyxDQUFDO1NBQzlDOzs7T0FBQTtJQUVELHNCQUFJLDRDQUFTOzs7O1FBQWI7WUFDRSxNQUFNLENBQUksSUFBSSxDQUFDLElBQUksU0FBSSxJQUFJLENBQUMsWUFBYyxDQUFDO1NBQzVDOzs7T0FBQTs7Z0JBMUZGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUUsbWlCQWdCTjtvQkFDSixNQUFNLEVBQUUsQ0FBQywwQ0FBMEMsQ0FBQztpQkFDckQ7Ozt1QkFPRSxLQUFLO3lCQVNMLEtBQUs7MkJBU0wsS0FBSzt3QkFXTCxLQUFLO3VCQVFMLEtBQUs7K0JBU0wsS0FBSzs7Z0NBbEZSOztTQThCYSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi91dGlsL3V0aWwnO1xuaW1wb3J0IHsgSWNvblBvc2l0aW9uLCBJQ09OX1BPU0lUSU9OUyB9IGZyb20gJy4uL21vZGVscy9JY29uUG9zaXRpb24nO1xuXG5sZXQgaWRlbnRpZmllciA9IDA7XG5cbi8qKlxuICogQ29tcG9uZW50ZSB1c2F0YSBwZXIgdmlzdWFsaXp6YXJlIHVuYSB2b2NlIGRpIG1lbsO5IGFsbCdpbnRlcm5vIGRpIHVuYSBkcm9wZG93blxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpdC1kcm9wZG93bi1pdGVtJyxcbiAgdGVtcGxhdGU6IGA8bGkgW2lkXT1cImlkXCI+XG4gIDxhIFthdHRyLmhyZWZdPVwibGlua1wiXG4gICAgW2F0dHIudGFiaW5kZXhdPVwidGhpcy5kaXNhYmxlZCA/IC0xIDogMFwiXG4gICAgW2NsYXNzXT1cImRyb3Bkb3duSXRlbUNsYXNzXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnbGFyZ2UnIDogbGFyZ2UsIFxuICAgICAgJ2FjdGl2ZScgOiBhY3RpdmUsXG4gICAgICAnZGlzYWJsZWQnIDogZGlzYWJsZWQsXG4gICAgICAnZGlzYWJsZWQtaXRlbS1saW5rJyA6IGRpc2FibGVkXG4gICAgfVwiPlxuICAgIDxpIFtjbGFzc109XCJpY29uQ2xhc3NcIiBhcmlhLWhpZGRlbj1cInRydWVcIiAqbmdJZj1cImljb24gJiYgaWNvblBvc2l0aW9uID09PSAnbGVmdCdcIj48L2k+XG4gICAgPHNwYW4+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9zcGFuPlxuICAgIDxpIFtjbGFzc109XCJpY29uQ2xhc3NcIiBhcmlhLWhpZGRlbj1cInRydWVcIiAqbmdJZj1cImljb24gJiYgaWNvblBvc2l0aW9uID09PSAncmlnaHQnXCI+PC9pPlxuICA8L2E+XG48L2xpPmAsXG4gIHN0eWxlczogW2AuZGlzYWJsZWQtaXRlbS1saW5re3BvaW50ZXItZXZlbnRzOm5vbmV9YF1cbn0pXG5leHBvcnQgY2xhc3MgRHJvcGRvd25JdGVtQ29tcG9uZW50IHtcbiAgaWQgPSBgZHJvcGRvd24taXRlbS0ke2lkZW50aWZpZXIrK31gO1xuXG4gIC8qKlxuICAgKiBJbCBsaW5rIGFsbGEgcGFnaW5hIHZlcnNvIGN1aSBhbmRhcmUgYWwgY2xpY2sgc3VsbCdlbGVtZW50byBkZWwgZHJvcGRvd25cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBsaW5rKCk6IHN0cmluZyB7IHJldHVybiAhdGhpcy5kaXNhYmxlZCA/IHRoaXMuX2xpbmsgOiAnJzsgfVxuICBzZXQgbGluayh2YWx1ZTogc3RyaW5nKSB7IHRoaXMuX2xpbmsgPSB2YWx1ZTsgfVxuICBwcml2YXRlIF9saW5rID0gJyc7XG5cbiAgLyoqXG4gICAqIFNlIHByZXNlbnRlIGluZGljYSBjaGUgbCdlbGVtZW50byB2aWVuZSByZW5kZXJpenphdG8gY29tZSBlbGVtZW50byBhdHRpdm8uXG4gICAqIEFjY2V0dGEgdW5hIGVzcHJlc3Npb25lIGJvb2xlYW5hIG8gcHXDsiBlc3NlcmUgdXNhdG8gY29tZSBhdHRyaWJ1dG8gc2VuemEgdmFsb3JlXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgYWN0aXZlKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fYWN0aXZlOyB9XG4gIHNldCBhY3RpdmUodmFsdWU6IGJvb2xlYW4pIHsgdGhpcy5fYWN0aXZlID0gVXRpbC5jb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gIHByaXZhdGUgX2FjdGl2ZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTZSBwcmVzZW50ZSBpbmRpY2EgY2hlIGwnZWxlbWVudG8gw6ggZGlzYWJpbGl0YXRvLlxuICAgKiBBY2NldHRhIHVuYSBlc3ByZXNzaW9uZSBib29sZWFuYSBvIHB1w7IgZXNzZXJlIHVzYXRvIGNvbWUgYXR0cmlidXRvIHNlbnphIHZhbG9yZVxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7IH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBVdGlsLmNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogU2UgcHJlc2VudGUgaW5kaWNhIGNoZSBpbCB0ZXN0byBkZWxsJ2VsZW1lbnRvIHZpZW5lIHJlbmRlcml6emF0byBwacO5IGdyYW5kZS5cbiAgICogQWNjZXR0YSB1bmEgZXNwcmVzc2lvbmUgYm9vbGVhbmEgbyBwdcOyIGVzc2VyZSB1c2F0byBjb21lIGF0dHJpYnV0byBzZW56YSB2YWxvcmVcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBsYXJnZSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2xhcmdlOyB9XG4gIHNldCBsYXJnZSh2YWx1ZTogYm9vbGVhbikgeyB0aGlzLl9sYXJnZSA9IFV0aWwuY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICBwcml2YXRlIF9sYXJnZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBMYSBjbGFzc2UgZGVsbCdpY29uYSBkYSB1c2FyZSBwcmltYSBvIGRvcG8gZGVsIHRlc3RvIGRlbGwnZWxlbWVudG8gZGVsIGRyb3Bkb3duXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgaWNvbigpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5faWNvbjsgfVxuICBzZXQgaWNvbih2YWx1ZTogc3RyaW5nKSB7IHRoaXMuX2ljb24gPSB2YWx1ZTsgfVxuICBwcml2YXRlIF9pY29uID0gdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBMYSBwb3NpemlvbmUgZGVsbCdpY29uYSByaXNwZXR0byBhbCB0ZXN0byBkZWxsJ2VsZW1lbnRvIGRlbCBkcm9wZG93bi5cbiAgICogUHXDsiBhc3N1bWVyZSB2YWxvcmkgcmlnaHQgbyBsZWZ0LlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGljb25Qb3NpdGlvbigpOiBhbnkgeyByZXR1cm4gdGhpcy5faWNvblBvc2l0aW9uOyB9XG4gIHNldCBpY29uUG9zaXRpb24odmFsdWU6IGFueSkge1xuICAgIGlmIChJY29uUG9zaXRpb24uaXModmFsdWUpKSB7XG4gICAgICB0aGlzLl9pY29uUG9zaXRpb24gPSB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5faWNvblBvc2l0aW9uID0gSUNPTl9QT1NJVElPTlMuUklHSFQ7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2ljb25Qb3NpdGlvbiA9IElDT05fUE9TSVRJT05TLlJJR0hUO1xuXG4gIGdldCBkcm9wZG93bkl0ZW1DbGFzcygpIHtcbiAgICByZXR1cm4gYGxpc3QtaXRlbSAke3RoaXMuaWNvblBvc2l0aW9ufS1pY29uYDtcbiAgfVxuXG4gIGdldCBpY29uQ2xhc3MoKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuaWNvbn0gJHt0aGlzLmljb25Qb3NpdGlvbn1gO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,309 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import { Component, Input, Output, EventEmitter, ViewChild, ElementRef, HostListener, ChangeDetectionStrategy } from '@angular/core';
|
|
6
|
-
import { Util } from '../util/util';
|
|
7
|
-
import { ThemeColor } from '../models/ThemeColor';
|
|
8
|
-
/** @type {?} */
|
|
9
|
-
var identifier = 0;
|
|
10
|
-
/** @type {?} */
|
|
11
|
-
var DEFAULT_COLOR = 'dropdown';
|
|
12
|
-
/** @type {?} */
|
|
13
|
-
var PLACEMENT_PROPERTY = 'x-placement';
|
|
14
|
-
/** @type {?} */
|
|
15
|
-
var PLACEMENT_VALUE = 'bottom-start';
|
|
16
|
-
/**
|
|
17
|
-
* Componente usata per attivare o disattivare overlay contestuali per visualizzare elenchi di link e altro ancora con questi menù a tendina
|
|
18
|
-
*/
|
|
19
|
-
var DropdownComponent = /** @class */ (function () {
|
|
20
|
-
function DropdownComponent(_eleRef) {
|
|
21
|
-
this._eleRef = _eleRef;
|
|
22
|
-
this.id = "dropdown-" + identifier++;
|
|
23
|
-
this._isOpen = false;
|
|
24
|
-
this._dark = false;
|
|
25
|
-
this._fullWidth = false;
|
|
26
|
-
this._color = DEFAULT_COLOR;
|
|
27
|
-
this._label = '';
|
|
28
|
-
this._onOpen = new EventEmitter();
|
|
29
|
-
this._onClose = new EventEmitter();
|
|
30
|
-
this._onToggle = new EventEmitter();
|
|
31
|
-
}
|
|
32
|
-
Object.defineProperty(DropdownComponent.prototype, "isOpen", {
|
|
33
|
-
get: /**
|
|
34
|
-
* @return {?}
|
|
35
|
-
*/
|
|
36
|
-
function () { return this._isOpen; },
|
|
37
|
-
enumerable: true,
|
|
38
|
-
configurable: true
|
|
39
|
-
});
|
|
40
|
-
Object.defineProperty(DropdownComponent.prototype, "dark", {
|
|
41
|
-
/**
|
|
42
|
-
* Se presente indica che il dropdown utilizza il tema di colorazione scura.
|
|
43
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
44
|
-
*/
|
|
45
|
-
get: /**
|
|
46
|
-
* Se presente indica che il dropdown utilizza il tema di colorazione scura.
|
|
47
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
48
|
-
* @return {?}
|
|
49
|
-
*/
|
|
50
|
-
function () { return this._dark; },
|
|
51
|
-
set: /**
|
|
52
|
-
* @param {?} value
|
|
53
|
-
* @return {?}
|
|
54
|
-
*/
|
|
55
|
-
function (value) { this._dark = Util.coerceBooleanProperty(value); },
|
|
56
|
-
enumerable: true,
|
|
57
|
-
configurable: true
|
|
58
|
-
});
|
|
59
|
-
Object.defineProperty(DropdownComponent.prototype, "fullWidth", {
|
|
60
|
-
/**
|
|
61
|
-
* Se presente indica che le voci del dropdown si sviluppano orizzontalmente.
|
|
62
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
63
|
-
*/
|
|
64
|
-
get: /**
|
|
65
|
-
* Se presente indica che le voci del dropdown si sviluppano orizzontalmente.
|
|
66
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
67
|
-
* @return {?}
|
|
68
|
-
*/
|
|
69
|
-
function () { return this._fullWidth; },
|
|
70
|
-
set: /**
|
|
71
|
-
* @param {?} value
|
|
72
|
-
* @return {?}
|
|
73
|
-
*/
|
|
74
|
-
function (value) { this._fullWidth = Util.coerceBooleanProperty(value); },
|
|
75
|
-
enumerable: true,
|
|
76
|
-
configurable: true
|
|
77
|
-
});
|
|
78
|
-
Object.defineProperty(DropdownComponent.prototype, "color", {
|
|
79
|
-
/**
|
|
80
|
-
* Il colore del pulsante che attiva il dropdown.
|
|
81
|
-
* Può assumere i valori primary, secondary, danger, warning, info, warning, success, light e dark
|
|
82
|
-
*/
|
|
83
|
-
get: /**
|
|
84
|
-
* Il colore del pulsante che attiva il dropdown.
|
|
85
|
-
* Può assumere i valori primary, secondary, danger, warning, info, warning, success, light e dark
|
|
86
|
-
* @return {?}
|
|
87
|
-
*/
|
|
88
|
-
function () { return this._color; },
|
|
89
|
-
set: /**
|
|
90
|
-
* @param {?} value
|
|
91
|
-
* @return {?}
|
|
92
|
-
*/
|
|
93
|
-
function (value) {
|
|
94
|
-
if (ThemeColor.is(value)) {
|
|
95
|
-
this._color = value;
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
this._color = DEFAULT_COLOR;
|
|
99
|
-
}
|
|
100
|
-
},
|
|
101
|
-
enumerable: true,
|
|
102
|
-
configurable: true
|
|
103
|
-
});
|
|
104
|
-
Object.defineProperty(DropdownComponent.prototype, "label", {
|
|
105
|
-
/**
|
|
106
|
-
* Il testo presente sul pulsante che attiva il dropdown
|
|
107
|
-
*/
|
|
108
|
-
get: /**
|
|
109
|
-
* Il testo presente sul pulsante che attiva il dropdown
|
|
110
|
-
* @return {?}
|
|
111
|
-
*/
|
|
112
|
-
function () { return this._label; },
|
|
113
|
-
set: /**
|
|
114
|
-
* @param {?} value
|
|
115
|
-
* @return {?}
|
|
116
|
-
*/
|
|
117
|
-
function (value) { this._label = value; },
|
|
118
|
-
enumerable: true,
|
|
119
|
-
configurable: true
|
|
120
|
-
});
|
|
121
|
-
Object.defineProperty(DropdownComponent.prototype, "onOpen", {
|
|
122
|
-
/**
|
|
123
|
-
* Evento che viene lanciato ogni volta che il dropdown viene aperto
|
|
124
|
-
*/
|
|
125
|
-
get: /**
|
|
126
|
-
* Evento che viene lanciato ogni volta che il dropdown viene aperto
|
|
127
|
-
* @return {?}
|
|
128
|
-
*/
|
|
129
|
-
function () { return this._onOpen; },
|
|
130
|
-
set: /**
|
|
131
|
-
* @param {?} value
|
|
132
|
-
* @return {?}
|
|
133
|
-
*/
|
|
134
|
-
function (value) { this._onOpen = value; },
|
|
135
|
-
enumerable: true,
|
|
136
|
-
configurable: true
|
|
137
|
-
});
|
|
138
|
-
Object.defineProperty(DropdownComponent.prototype, "onClose", {
|
|
139
|
-
/**
|
|
140
|
-
* Evento che viene lanciato ogni volta che il dropdown viene chiuso
|
|
141
|
-
*/
|
|
142
|
-
get: /**
|
|
143
|
-
* Evento che viene lanciato ogni volta che il dropdown viene chiuso
|
|
144
|
-
* @return {?}
|
|
145
|
-
*/
|
|
146
|
-
function () { return this._onClose; },
|
|
147
|
-
set: /**
|
|
148
|
-
* @param {?} value
|
|
149
|
-
* @return {?}
|
|
150
|
-
*/
|
|
151
|
-
function (value) { this._onClose = value; },
|
|
152
|
-
enumerable: true,
|
|
153
|
-
configurable: true
|
|
154
|
-
});
|
|
155
|
-
Object.defineProperty(DropdownComponent.prototype, "onToggle", {
|
|
156
|
-
/**
|
|
157
|
-
* Evento che viene lanciato ogni volta che il dropdown viene aperto oppure chiuso
|
|
158
|
-
*/
|
|
159
|
-
get: /**
|
|
160
|
-
* Evento che viene lanciato ogni volta che il dropdown viene aperto oppure chiuso
|
|
161
|
-
* @return {?}
|
|
162
|
-
*/
|
|
163
|
-
function () { return this._onToggle; },
|
|
164
|
-
set: /**
|
|
165
|
-
* @param {?} value
|
|
166
|
-
* @return {?}
|
|
167
|
-
*/
|
|
168
|
-
function (value) { this._onToggle = value; },
|
|
169
|
-
enumerable: true,
|
|
170
|
-
configurable: true
|
|
171
|
-
});
|
|
172
|
-
/**
|
|
173
|
-
* @param {?} target
|
|
174
|
-
* @return {?}
|
|
175
|
-
*/
|
|
176
|
-
DropdownComponent.prototype.onClick = /**
|
|
177
|
-
* @param {?} target
|
|
178
|
-
* @return {?}
|
|
179
|
-
*/
|
|
180
|
-
function (target) {
|
|
181
|
-
if (target === this._dropdownButton.nativeElement) {
|
|
182
|
-
this._toggle();
|
|
183
|
-
}
|
|
184
|
-
else if (this.isOpen) {
|
|
185
|
-
this._close();
|
|
186
|
-
}
|
|
187
|
-
};
|
|
188
|
-
/**
|
|
189
|
-
* @param {?} target
|
|
190
|
-
* @return {?}
|
|
191
|
-
*/
|
|
192
|
-
DropdownComponent.prototype.onFocus = /**
|
|
193
|
-
* @param {?} target
|
|
194
|
-
* @return {?}
|
|
195
|
-
*/
|
|
196
|
-
function (target) {
|
|
197
|
-
/** @type {?} */
|
|
198
|
-
var isPartOfDropdown = (/** @type {?} */ (this._eleRef.nativeElement)).contains(target);
|
|
199
|
-
if (!isPartOfDropdown && this.isOpen) {
|
|
200
|
-
this._close();
|
|
201
|
-
}
|
|
202
|
-
};
|
|
203
|
-
Object.defineProperty(DropdownComponent.prototype, "dropdownButtonClass", {
|
|
204
|
-
get: /**
|
|
205
|
-
* @return {?}
|
|
206
|
-
*/
|
|
207
|
-
function () {
|
|
208
|
-
return "btn btn-" + this.color + " dropdown-toggle";
|
|
209
|
-
},
|
|
210
|
-
enumerable: true,
|
|
211
|
-
configurable: true
|
|
212
|
-
});
|
|
213
|
-
/**
|
|
214
|
-
* @return {?}
|
|
215
|
-
*/
|
|
216
|
-
DropdownComponent.prototype._toggle = /**
|
|
217
|
-
* @return {?}
|
|
218
|
-
*/
|
|
219
|
-
function () {
|
|
220
|
-
if (this._isOpen) {
|
|
221
|
-
this._close();
|
|
222
|
-
}
|
|
223
|
-
else {
|
|
224
|
-
this._open();
|
|
225
|
-
}
|
|
226
|
-
this.onToggle.emit(this);
|
|
227
|
-
};
|
|
228
|
-
/**
|
|
229
|
-
* @return {?}
|
|
230
|
-
*/
|
|
231
|
-
DropdownComponent.prototype._open = /**
|
|
232
|
-
* @return {?}
|
|
233
|
-
*/
|
|
234
|
-
function () {
|
|
235
|
-
if (!this._isOpen) {
|
|
236
|
-
this._isOpen = true;
|
|
237
|
-
this._dropdownMenu.nativeElement.setAttribute(PLACEMENT_PROPERTY, PLACEMENT_VALUE);
|
|
238
|
-
this.onOpen.emit(this);
|
|
239
|
-
}
|
|
240
|
-
};
|
|
241
|
-
/**
|
|
242
|
-
* @return {?}
|
|
243
|
-
*/
|
|
244
|
-
DropdownComponent.prototype._close = /**
|
|
245
|
-
* @return {?}
|
|
246
|
-
*/
|
|
247
|
-
function () {
|
|
248
|
-
if (this._isOpen) {
|
|
249
|
-
this._isOpen = false;
|
|
250
|
-
this._dropdownMenu.nativeElement.removeAttribute(PLACEMENT_PROPERTY);
|
|
251
|
-
this.onClose.emit(this);
|
|
252
|
-
}
|
|
253
|
-
};
|
|
254
|
-
DropdownComponent.decorators = [
|
|
255
|
-
{ type: Component, args: [{
|
|
256
|
-
selector: 'it-dropdown',
|
|
257
|
-
template: "<div class=\"dropdown\" [class.show]=\"isOpen\" [id]=\"id\">\n <button #dropdownButton [class]=\"dropdownButtonClass\" \n type=\"button\" id=\"dropdownMenuButton\"\n aria-haspopup=\"true\" [attr.aria-expanded]=\"isOpen\">\n {{label}}\n </button>\n <div #dropdownMenu class=\"dropdown-menu\" aria-labelledby=\"dropdownMenuButton\"\n [class.dark]=\"dark\" [class.full-width]=\"fullWidth\" [class.show]=\"isOpen\">\n <div class=\"link-list-wrapper\">\n <ul class=\"link-list\">\n <ng-content></ng-content>\n </ul>\n </div>\n </div>\n</div>\n",
|
|
258
|
-
styles: [""],
|
|
259
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
260
|
-
},] },
|
|
261
|
-
];
|
|
262
|
-
/** @nocollapse */
|
|
263
|
-
DropdownComponent.ctorParameters = function () { return [
|
|
264
|
-
{ type: ElementRef }
|
|
265
|
-
]; };
|
|
266
|
-
DropdownComponent.propDecorators = {
|
|
267
|
-
_dropdownMenu: [{ type: ViewChild, args: ['dropdownMenu',] }],
|
|
268
|
-
_dropdownButton: [{ type: ViewChild, args: ['dropdownButton',] }],
|
|
269
|
-
dark: [{ type: Input }],
|
|
270
|
-
fullWidth: [{ type: Input }],
|
|
271
|
-
color: [{ type: Input }],
|
|
272
|
-
label: [{ type: Input }],
|
|
273
|
-
onOpen: [{ type: Output }],
|
|
274
|
-
onClose: [{ type: Output }],
|
|
275
|
-
onToggle: [{ type: Output }],
|
|
276
|
-
onClick: [{ type: HostListener, args: ['document:click', ['$event.target'],] }],
|
|
277
|
-
onFocus: [{ type: HostListener, args: ['document:focusin', ['$event.target'],] }]
|
|
278
|
-
};
|
|
279
|
-
return DropdownComponent;
|
|
280
|
-
}());
|
|
281
|
-
export { DropdownComponent };
|
|
282
|
-
if (false) {
|
|
283
|
-
/** @type {?} */
|
|
284
|
-
DropdownComponent.prototype._dropdownMenu;
|
|
285
|
-
/** @type {?} */
|
|
286
|
-
DropdownComponent.prototype._dropdownButton;
|
|
287
|
-
/** @type {?} */
|
|
288
|
-
DropdownComponent.prototype.id;
|
|
289
|
-
/** @type {?} */
|
|
290
|
-
DropdownComponent.prototype._isOpen;
|
|
291
|
-
/** @type {?} */
|
|
292
|
-
DropdownComponent.prototype._dark;
|
|
293
|
-
/** @type {?} */
|
|
294
|
-
DropdownComponent.prototype._fullWidth;
|
|
295
|
-
/** @type {?} */
|
|
296
|
-
DropdownComponent.prototype._color;
|
|
297
|
-
/** @type {?} */
|
|
298
|
-
DropdownComponent.prototype._label;
|
|
299
|
-
/** @type {?} */
|
|
300
|
-
DropdownComponent.prototype._onOpen;
|
|
301
|
-
/** @type {?} */
|
|
302
|
-
DropdownComponent.prototype._onClose;
|
|
303
|
-
/** @type {?} */
|
|
304
|
-
DropdownComponent.prototype._onToggle;
|
|
305
|
-
/** @type {?} */
|
|
306
|
-
DropdownComponent.prototype._eleRef;
|
|
307
|
-
}
|
|
308
|
-
|
|
309
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vZGVzaWduLWFuZ3VsYXIta2l0LyIsInNvdXJjZXMiOlsibGliL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSx1QkFBdUIsRUFDckcsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBRWxELElBQUksVUFBVSxHQUFHLENBQUMsQ0FBQzs7QUFFbkIsSUFBTSxhQUFhLEdBQUcsVUFBVSxDQUFDOztBQUNqQyxJQUFNLGtCQUFrQixHQUFHLGFBQWEsQ0FBQzs7QUFDekMsSUFBTSxlQUFlLEdBQUcsY0FBYyxDQUFDOzs7OztJQTRIckMsMkJBQW9CLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7a0JBM0ZsQyxjQUFZLFVBQVUsRUFBSTt1QkFHYixLQUFLO3FCQVNQLEtBQUs7MEJBU0EsS0FBSztzQkFlVCxhQUFhO3NCQVFiLEVBQUU7dUJBUUQsSUFBSSxZQUFZLEVBQXFCO3dCQVFwQyxJQUFJLFlBQVksRUFBcUI7eUJBUXBDLElBQUksWUFBWSxFQUFxQjtLQXlCeEQ7SUEzRkQsc0JBQUkscUNBQU07Ozs7UUFBVixjQUF3QixNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFOzs7T0FBQTtJQU85QyxzQkFDSSxtQ0FBSTtRQUxSOzs7V0FHRzs7Ozs7O1FBQ0gsY0FDc0IsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTs7Ozs7UUFDMUMsVUFBUyxLQUFjLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMs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YSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uL3V0aWwvdXRpbCc7XG5pbXBvcnQgeyBUaGVtZUNvbG9yIH0gZnJvbSAnLi4vbW9kZWxzL1RoZW1lQ29sb3InO1xuXG5sZXQgaWRlbnRpZmllciA9IDA7XG5cbmNvbnN0IERFRkFVTFRfQ09MT1IgPSAnZHJvcGRvd24nO1xuY29uc3QgUExBQ0VNRU5UX1BST1BFUlRZID0gJ3gtcGxhY2VtZW50JztcbmNvbnN0IFBMQUNFTUVOVF9WQUxVRSA9ICdib3R0b20tc3RhcnQnO1xuXG4vKipcbiAqIENvbXBvbmVudGUgdXNhdGEgcGVyIGF0dGl2YXJlIG8gZGlzYXR0aXZhcmUgb3ZlcmxheSBjb250ZXN0dWFsaSBwZXIgdmlzdWFsaXp6YXJlIGVsZW5jaGkgZGkgbGluayBlIGFsdHJvIGFuY29yYSBjb24gcXVlc3RpIG1lbsO5IGEgdGVuZGluYVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpdC1kcm9wZG93bicsXG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cImRyb3Bkb3duXCIgW2NsYXNzLnNob3ddPVwiaXNPcGVuXCIgW2lkXT1cImlkXCI+XG4gIDxidXR0b24gI2Ryb3Bkb3duQnV0dG9uIFtjbGFzc109XCJkcm9wZG93bkJ1dHRvbkNsYXNzXCIgXG4gICAgdHlwZT1cImJ1dHRvblwiIGlkPVwiZHJvcGRvd25NZW51QnV0dG9uXCJcbiAgICBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiaXNPcGVuXCI+XG4gICAge3tsYWJlbH19XG4gIDwvYnV0dG9uPlxuICA8ZGl2ICNkcm9wZG93bk1lbnUgY2xhc3M9XCJkcm9wZG93bi1tZW51XCIgYXJpYS1sYWJlbGxlZGJ5PVwiZHJvcGRvd25NZW51QnV0dG9uXCJcbiAgICBbY2xhc3MuZGFya109XCJkYXJrXCIgW2NsYXNzLmZ1bGwtd2lkdGhdPVwiZnVsbFdpZHRoXCIgW2NsYXNzLnNob3ddPVwiaXNPcGVuXCI+XG4gICAgPGRpdiBjbGFzcz1cImxpbmstbGlzdC13cmFwcGVyXCI+XG4gICAgICA8dWwgY2xhc3M9XCJsaW5rLWxpc3RcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbmAsXG4gIHN0eWxlczogW2BgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRHJvcGRvd25Db21wb25lbnQge1xuICBAVmlld0NoaWxkKCdkcm9wZG93bk1lbnUnKVxuICBwcml2YXRlIF9kcm9wZG93bk1lbnU6IEVsZW1lbnRSZWY7XG5cbiAgQFZpZXdDaGlsZCgnZHJvcGRvd25CdXR0b24nKVxuICBwcml2YXRlIF9kcm9wZG93bkJ1dHRvbjogRWxlbWVudFJlZjtcblxuICBpZCA9IGBkcm9wZG93bi0ke2lkZW50aWZpZXIrK31gO1xuXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9pc09wZW47IH1cbiAgcHJpdmF0ZSBfaXNPcGVuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNlIHByZXNlbnRlIGluZGljYSBjaGUgaWwgZHJvcGRvd24gdXRpbGl6emEgaWwgdGVtYSBkaSBjb2xvcmF6aW9uZSBzY3VyYS5cbiAgICogQWNjZXR0YSB1bmEgZXNwcmVzc2lvbmUgYm9vbGVhbmEgbyBwdcOyIGVzc2VyZSB1c2F0byBjb21lIGF0dHJpYnV0byBzZW56YSB2YWxvcmVcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBkYXJrKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGFyazsgfVxuICBzZXQgZGFyayh2YWx1ZTogYm9vbGVhbikgeyB0aGlzLl9kYXJrID0gVXRpbC5jb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gIHByaXZhdGUgX2RhcmsgPSBmYWxzZTtcblxuICAvKipcbiAgICogU2UgcHJlc2VudGUgaW5kaWNhIGNoZSBsZSB2b2NpIGRlbCBkcm9wZG93biBzaSBzdmlsdXBwYW5vIG9yaXp6b250YWxtZW50ZS5cbiAgICogQWNjZXR0YSB1bmEgZXNwcmVzc2lvbmUgYm9vbGVhbmEgbyBwdcOyIGVzc2VyZSB1c2F0byBjb21lIGF0dHJpYnV0byBzZW56YSB2YWxvcmVcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBmdWxsV2lkdGgoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9mdWxsV2lkdGg7IH1cbiAgc2V0IGZ1bGxXaWR0aCh2YWx1ZTogYm9vbGVhbikgeyB0aGlzLl9mdWxsV2lkdGggPSBVdGlsLmNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7IH1cbiAgcHJpdmF0ZSBfZnVsbFdpZHRoID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElsIGNvbG9yZSBkZWwgcHVsc2FudGUgY2hlIGF0dGl2YSBpbCBkcm9wZG93bi5cbiAgICogUHXDsiBhc3N1bWVyZSBpIHZhbG9yaSBwcmltYXJ5LCBzZWNvbmRhcnksIGRhbmdlciwgd2FybmluZywgaW5mbywgd2FybmluZywgc3VjY2VzcywgbGlnaHQgZSBkYXJrXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgY29sb3IoKTogYW55IHsgcmV0dXJuIHRoaXMuX2NvbG9yOyB9XG4gIHNldCBjb2xvcih2YWx1ZTogYW55KSB7XG4gICAgaWYgKFRoZW1lQ29sb3IuaXModmFsdWUpKSB7XG4gICAgICB0aGlzLl9jb2xvciA9IHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jb2xvciA9IERFRkFVTFRfQ09MT1I7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2NvbG9yID0gREVGQVVMVF9DT0xPUjtcblxuICAvKipcbiAgICogSWwgdGVzdG8gcHJlc2VudGUgc3VsIHB1bHNhbnRlIGNoZSBhdHRpdmEgaWwgZHJvcGRvd25cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBsYWJlbCgpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5fbGFiZWw7IH1cbiAgc2V0IGxhYmVsKHZhbHVlOiBzdHJpbmcpIHsgdGhpcy5fbGFiZWwgPSB2YWx1ZTsgfVxuICBwcml2YXRlIF9sYWJlbCA9ICcnO1xuXG4gIC8qKlxuICAgKiBFdmVudG8gY2hlIHZpZW5lIGxhbmNpYXRvIG9nbmkgdm9sdGEgY2hlIGlsIGRyb3Bkb3duIHZpZW5lIGFwZXJ0b1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGdldCBvbk9wZW4oKTogRXZlbnRFbWl0dGVyPERyb3Bkb3duQ29tcG9uZW50PiB7IHJldHVybiB0aGlzLl9vbk9wZW47IH1cbiAgc2V0IG9uT3Blbih2YWx1ZTogRXZlbnRFbWl0dGVyPERyb3Bkb3duQ29tcG9uZW50PikgeyB0aGlzLl9vbk9wZW4gPSB2YWx1ZTsgfVxuICBwcml2YXRlIF9vbk9wZW4gPSBuZXcgRXZlbnRFbWl0dGVyPERyb3Bkb3duQ29tcG9uZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudG8gY2hlIHZpZW5lIGxhbmNpYXRvIG9nbmkgdm9sdGEgY2hlIGlsIGRyb3Bkb3duIHZpZW5lIGNoaXVzb1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGdldCBvbkNsb3NlKCk6IEV2ZW50RW1pdHRlcjxEcm9wZG93bkNvbXBvbmVudD4geyByZXR1cm4gdGhpcy5fb25DbG9zZTsgfVxuICBzZXQgb25DbG9zZSh2YWx1ZTogRXZlbnRFbWl0dGVyPERyb3Bkb3duQ29tcG9uZW50PikgeyB0aGlzLl9vbkNsb3NlID0gdmFsdWU7IH1cbiAgcHJpdmF0ZSBfb25DbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcGRvd25Db21wb25lbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50byBjaGUgdmllbmUgbGFuY2lhdG8gb2duaSB2b2x0YSBjaGUgaWwgZHJvcGRvd24gdmllbmUgYXBlcnRvIG9wcHVyZSBjaGl1c29cbiAgICovXG4gIEBPdXRwdXQoKVxuICBnZXQgb25Ub2dnbGUoKTogRXZlbnRFbWl0dGVyPERyb3Bkb3duQ29tcG9uZW50PiB7IHJldHVybiB0aGlzLl9vblRvZ2dsZTsgfVxuICBzZXQgb25Ub2dnbGUodmFsdWU6IEV2ZW50RW1pdHRlcjxEcm9wZG93bkNvbXBvbmVudD4pIHsgdGhpcy5fb25Ub2dnbGUgPSB2YWx1ZTsgfVxuICBwcml2YXRlIF9vblRvZ2dsZSA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcGRvd25Db21wb25lbnQ+KCk7XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudC50YXJnZXQnXSlcbiAgb25DbGljayh0YXJnZXQpIHtcbiAgICBpZiAodGFyZ2V0ID09PSB0aGlzLl9kcm9wZG93bkJ1dHRvbi5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLl90b2dnbGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICB0aGlzLl9jbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmZvY3VzaW4nLCBbJyRldmVudC50YXJnZXQnXSlcbiAgb25Gb2N1cyh0YXJnZXQpIHtcbiAgICBjb25zdCBpc1BhcnRPZkRyb3Bkb3duID0gKHRoaXMuX2VsZVJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5jb250YWlucyh0YXJnZXQpO1xuICAgIGlmICghaXNQYXJ0T2ZEcm9wZG93biAmJiB0aGlzLmlzT3Blbikge1xuICAgICAgdGhpcy5fY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgZHJvcGRvd25CdXR0b25DbGFzcygpIHtcbiAgICByZXR1cm4gYGJ0biBidG4tJHt0aGlzLmNvbG9yfSBkcm9wZG93bi10b2dnbGVgO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlUmVmOiBFbGVtZW50UmVmKSB7XG5cbiAgfVxuXG4gIHByaXZhdGUgX3RvZ2dsZSgpIHtcbiAgICBpZiAodGhpcy5faXNPcGVuKSB7XG4gICAgICB0aGlzLl9jbG9zZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9vcGVuKCk7XG4gICAgfVxuICAgIHRoaXMub25Ub2dnbGUuZW1pdCh0aGlzKTtcbiAgfVxuXG4gIHByaXZhdGUgX29wZW4oKSB7XG4gICAgaWYgKCF0aGlzLl9pc09wZW4pIHtcbiAgICAgIHRoaXMuX2lzT3BlbiA9IHRydWU7XG4gICAgICB0aGlzLl9kcm9wZG93bk1lbnUubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoUExBQ0VNRU5UX1BST1BFUlRZLCBQTEFDRU1FTlRfVkFMVUUpO1xuICAgICAgdGhpcy5vbk9wZW4uZW1pdCh0aGlzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jbG9zZSgpIHtcbiAgICBpZiAodGhpcy5faXNPcGVuKSB7XG4gICAgICB0aGlzLl9pc09wZW4gPSBmYWxzZTtcbiAgICAgIHRoaXMuX2Ryb3Bkb3duTWVudS5uYXRpdmVFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZShQTEFDRU1FTlRfUFJPUEVSVFkpO1xuICAgICAgdGhpcy5vbkNsb3NlLmVtaXQodGhpcyk7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
|