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.
Files changed (207) hide show
  1. package/README.md +61 -31
  2. package/esm2020/design-angular-kit.mjs +5 -0
  3. package/esm2020/lib/badge/badge.directive.mjs +83 -0
  4. package/esm2020/lib/breadcrumb/breadcrumb-item.component.mjs +66 -0
  5. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +89 -0
  6. package/esm2020/lib/button/button.directive.mjs +185 -0
  7. package/esm2020/lib/button/button.module.mjs +18 -0
  8. package/esm2020/lib/checkbox/checkbox.component.mjs +138 -0
  9. package/esm2020/lib/collapse/collapse-group.component.mjs +57 -0
  10. package/esm2020/lib/collapse/collapse-item.component.mjs +79 -0
  11. package/esm2020/lib/collapse/collapse.config.mjs +12 -0
  12. package/esm2020/lib/collapse/collapse.directive.mjs +55 -0
  13. package/esm2020/lib/collapse/collapse.module.mjs +22 -0
  14. package/esm2020/lib/design-angular-kit.module.mjs +142 -0
  15. package/esm2020/lib/dropdown/dropdown-divider.component.mjs +11 -0
  16. package/esm2020/lib/dropdown/dropdown-item.component.mjs +97 -0
  17. package/esm2020/lib/dropdown/dropdown.component.mjs +143 -0
  18. package/esm2020/lib/dropdown/dropdown.config.mjs +12 -0
  19. package/esm2020/lib/dropdown/dropdown.directive.mjs +156 -0
  20. package/esm2020/lib/dropdown/dropdown.module.mjs +25 -0
  21. package/esm2020/lib/enums/icons.enum.mjs +27 -0
  22. package/esm2020/lib/form-input/form-input-password.utils.mjs +154 -0
  23. package/esm2020/lib/form-input/form-input.component.mjs +495 -0
  24. package/esm2020/lib/form-input/it-prefix.directive.mjs +13 -0
  25. package/esm2020/lib/form-input/it-suffix.directive.mjs +13 -0
  26. package/esm2020/lib/form-input/it-text-prefix.directive.mjs +13 -0
  27. package/esm2020/lib/form-input/it-text-suffix.directive.mjs +13 -0
  28. package/esm2020/lib/form-input/mark-matching-text.pipe.mjs +36 -0
  29. package/esm2020/lib/icon/icon.component.mjs +87 -0
  30. package/esm2020/lib/icon/icon.module.mjs +18 -0
  31. package/esm2020/lib/models/Alignment.mjs +15 -0
  32. package/esm2020/lib/models/ButtonSize.mjs +15 -0
  33. package/esm2020/lib/models/InputType.mjs +44 -0
  34. package/esm2020/lib/models/ThemeColor.mjs +30 -0
  35. package/esm2020/lib/popover/popover.config.mjs +17 -0
  36. package/esm2020/lib/popover/popover.directive.mjs +33 -0
  37. package/esm2020/lib/popover/popover.module.mjs +19 -0
  38. package/esm2020/lib/progress-bar/progress-bar.component.mjs +98 -0
  39. package/esm2020/lib/radio/radio.component.mjs +287 -0
  40. package/esm2020/lib/radio/unique-selection-dispatcher.mjs +55 -0
  41. package/esm2020/lib/tabs/tab-group.component.mjs +177 -0
  42. package/esm2020/lib/tabs/tab.component.mjs +73 -0
  43. package/esm2020/lib/tabs/tabs.module.mjs +20 -0
  44. package/esm2020/lib/toggle/toggle.component.mjs +86 -0
  45. package/esm2020/lib/tooltip/tooltip.config.mjs +17 -0
  46. package/esm2020/lib/tooltip/tooltip.directive.mjs +43 -0
  47. package/esm2020/lib/tooltip/tooltip.module.mjs +19 -0
  48. package/esm2020/lib/util/focus-mouse.directive.mjs +32 -0
  49. package/esm2020/lib/util/util.mjs +12 -0
  50. package/esm2020/lib/util/utils.module.mjs +16 -0
  51. package/esm2020/public_api.mjs +40 -0
  52. package/fesm2015/design-angular-kit.mjs +3181 -0
  53. package/fesm2015/design-angular-kit.mjs.map +1 -0
  54. package/fesm2020/design-angular-kit.mjs +3160 -0
  55. package/fesm2020/design-angular-kit.mjs.map +1 -0
  56. package/index.d.ts +5 -0
  57. package/lib/badge/badge.directive.d.ts +11 -5
  58. package/lib/breadcrumb/breadcrumb-item.component.d.ts +16 -5
  59. package/lib/breadcrumb/breadcrumb.component.d.ts +12 -5
  60. package/lib/button/button.directive.d.ts +72 -0
  61. package/lib/button/button.module.d.ts +8 -0
  62. package/lib/checkbox/checkbox.component.d.ts +25 -5
  63. package/lib/collapse/collapse-group.component.d.ts +6 -2
  64. package/lib/collapse/collapse-item.component.d.ts +16 -8
  65. package/lib/collapse/collapse.config.d.ts +6 -0
  66. package/lib/collapse/collapse.directive.d.ts +13 -28
  67. package/lib/collapse/collapse.module.d.ts +12 -0
  68. package/lib/design-angular-kit.module.d.ts +27 -0
  69. package/lib/dropdown/dropdown-divider.component.d.ts +3 -0
  70. package/lib/dropdown/dropdown-item.component.d.ts +22 -8
  71. package/lib/dropdown/dropdown.component.d.ts +34 -26
  72. package/lib/dropdown/dropdown.config.d.ts +6 -0
  73. package/lib/dropdown/dropdown.directive.d.ts +77 -0
  74. package/lib/dropdown/dropdown.module.d.ts +15 -0
  75. package/lib/enums/icons.enum.d.ts +23 -0
  76. package/lib/form-input/form-input-password.utils.d.ts +45 -0
  77. package/lib/form-input/form-input.component.d.ts +202 -20
  78. package/lib/form-input/it-prefix.directive.d.ts +5 -0
  79. package/lib/form-input/it-suffix.directive.d.ts +5 -0
  80. package/lib/form-input/it-text-prefix.directive.d.ts +5 -0
  81. package/lib/form-input/it-text-suffix.directive.d.ts +5 -0
  82. package/lib/form-input/mark-matching-text.pipe.d.ts +10 -0
  83. package/lib/icon/icon.component.d.ts +34 -0
  84. package/lib/icon/icon.module.d.ts +8 -0
  85. package/lib/models/Alignment.d.ts +12 -0
  86. package/lib/models/ButtonSize.d.ts +1 -1
  87. package/lib/models/InputType.d.ts +22 -1
  88. package/lib/models/ThemeColor.d.ts +1 -1
  89. package/lib/popover/popover.config.d.ts +5 -6
  90. package/lib/popover/popover.directive.d.ts +13 -108
  91. package/lib/popover/popover.module.d.ts +9 -0
  92. package/lib/progress-bar/progress-bar.component.d.ts +25 -19
  93. package/lib/radio/radio.component.d.ts +22 -10
  94. package/lib/radio/unique-selection-dispatcher.d.ts +3 -0
  95. package/lib/tabs/tab-group.component.d.ts +17 -11
  96. package/lib/tabs/tab.component.d.ts +6 -2
  97. package/lib/tabs/tabs.module.d.ts +10 -0
  98. package/lib/toggle/toggle.component.d.ts +9 -4
  99. package/lib/tooltip/tooltip.config.d.ts +7 -7
  100. package/lib/tooltip/tooltip.directive.d.ts +12 -92
  101. package/lib/tooltip/tooltip.module.d.ts +9 -0
  102. package/lib/util/focus-mouse.directive.d.ts +13 -0
  103. package/lib/util/utils.module.d.ts +7 -0
  104. package/package.json +36 -21
  105. package/public_api.d.ts +16 -2
  106. package/bundles/design-angular-kit.umd.js +0 -6258
  107. package/bundles/design-angular-kit.umd.js.map +0 -1
  108. package/bundles/design-angular-kit.umd.min.js +0 -31
  109. package/bundles/design-angular-kit.umd.min.js.map +0 -1
  110. package/design-angular-kit.d.ts +0 -8
  111. package/design-angular-kit.metadata.json +0 -1
  112. package/esm2015/design-angular-kit.js +0 -14
  113. package/esm2015/lib/badge/badge.directive.js +0 -116
  114. package/esm2015/lib/breadcrumb/breadcrumb-item.component.js +0 -117
  115. package/esm2015/lib/breadcrumb/breadcrumb.component.js +0 -128
  116. package/esm2015/lib/button/button.component.js +0 -165
  117. package/esm2015/lib/checkbox/checkbox.component.js +0 -170
  118. package/esm2015/lib/collapse/collapse-group.component.js +0 -87
  119. package/esm2015/lib/collapse/collapse-item.component.js +0 -148
  120. package/esm2015/lib/collapse/collapse.directive.js +0 -153
  121. package/esm2015/lib/design-angular-kit.module.js +0 -90
  122. package/esm2015/lib/dropdown/dropdown-divider.component.js +0 -18
  123. package/esm2015/lib/dropdown/dropdown-header.component.js +0 -29
  124. package/esm2015/lib/dropdown/dropdown-item.component.js +0 -157
  125. package/esm2015/lib/dropdown/dropdown.component.js +0 -248
  126. package/esm2015/lib/form-input/form-input.component.js +0 -489
  127. package/esm2015/lib/models/ButtonSize.js +0 -25
  128. package/esm2015/lib/models/IconPosition.js +0 -21
  129. package/esm2015/lib/models/InputType.js +0 -33
  130. package/esm2015/lib/models/InteractionTrigger.js +0 -35
  131. package/esm2015/lib/models/ThemeColor.js +0 -45
  132. package/esm2015/lib/popover/popover.component.js +0 -134
  133. package/esm2015/lib/popover/popover.config.js +0 -35
  134. package/esm2015/lib/popover/popover.directive.js +0 -433
  135. package/esm2015/lib/popover/popup.js +0 -105
  136. package/esm2015/lib/popover/positioning.js +0 -349
  137. package/esm2015/lib/popover/triggers.js +0 -99
  138. package/esm2015/lib/progress-bar/progress-bar.component.js +0 -170
  139. package/esm2015/lib/radio/radio.component.js +0 -526
  140. package/esm2015/lib/radio/unique-selection-dispatcher.js +0 -70
  141. package/esm2015/lib/tabs/tab-group.component.js +0 -339
  142. package/esm2015/lib/tabs/tab.component.js +0 -143
  143. package/esm2015/lib/toggle/toggle.component.js +0 -173
  144. package/esm2015/lib/tooltip/popup.js +0 -105
  145. package/esm2015/lib/tooltip/positioning.js +0 -349
  146. package/esm2015/lib/tooltip/tooltip.component.js +0 -77
  147. package/esm2015/lib/tooltip/tooltip.config.js +0 -31
  148. package/esm2015/lib/tooltip/tooltip.directive.js +0 -384
  149. package/esm2015/lib/tooltip/triggers.js +0 -99
  150. package/esm2015/lib/util/util.js +0 -30
  151. package/esm2015/public_api.js +0 -31
  152. package/esm5/design-angular-kit.js +0 -14
  153. package/esm5/lib/badge/badge.directive.js +0 -145
  154. package/esm5/lib/breadcrumb/breadcrumb-item.component.js +0 -135
  155. package/esm5/lib/breadcrumb/breadcrumb.component.js +0 -164
  156. package/esm5/lib/button/button.component.js +0 -221
  157. package/esm5/lib/checkbox/checkbox.component.js +0 -200
  158. package/esm5/lib/collapse/collapse-group.component.js +0 -102
  159. package/esm5/lib/collapse/collapse-item.component.js +0 -183
  160. package/esm5/lib/collapse/collapse.directive.js +0 -210
  161. package/esm5/lib/design-angular-kit.module.js +0 -94
  162. package/esm5/lib/dropdown/dropdown-divider.component.js +0 -20
  163. package/esm5/lib/dropdown/dropdown-header.component.js +0 -27
  164. package/esm5/lib/dropdown/dropdown-item.component.js +0 -197
  165. package/esm5/lib/dropdown/dropdown.component.js +0 -309
  166. package/esm5/lib/form-input/form-input.component.js +0 -582
  167. package/esm5/lib/models/ButtonSize.js +0 -25
  168. package/esm5/lib/models/IconPosition.js +0 -21
  169. package/esm5/lib/models/InputType.js +0 -33
  170. package/esm5/lib/models/InteractionTrigger.js +0 -35
  171. package/esm5/lib/models/ThemeColor.js +0 -45
  172. package/esm5/lib/popover/popover.component.js +0 -144
  173. package/esm5/lib/popover/popover.config.js +0 -37
  174. package/esm5/lib/popover/popover.directive.js +0 -573
  175. package/esm5/lib/popover/popup.js +0 -116
  176. package/esm5/lib/popover/positioning.js +0 -446
  177. package/esm5/lib/popover/triggers.js +0 -115
  178. package/esm5/lib/progress-bar/progress-bar.component.js +0 -218
  179. package/esm5/lib/radio/radio.component.js +0 -610
  180. package/esm5/lib/radio/unique-selection-dispatcher.js +0 -108
  181. package/esm5/lib/tabs/tab-group.component.js +0 -401
  182. package/esm5/lib/tabs/tab.component.js +0 -156
  183. package/esm5/lib/toggle/toggle.component.js +0 -200
  184. package/esm5/lib/tooltip/popup.js +0 -116
  185. package/esm5/lib/tooltip/positioning.js +0 -446
  186. package/esm5/lib/tooltip/tooltip.component.js +0 -80
  187. package/esm5/lib/tooltip/tooltip.config.js +0 -33
  188. package/esm5/lib/tooltip/tooltip.directive.js +0 -516
  189. package/esm5/lib/tooltip/triggers.js +0 -115
  190. package/esm5/lib/util/util.js +0 -48
  191. package/esm5/public_api.js +0 -31
  192. package/fesm2015/design-angular-kit.js +0 -5094
  193. package/fesm2015/design-angular-kit.js.map +0 -1
  194. package/fesm5/design-angular-kit.js +0 -6314
  195. package/fesm5/design-angular-kit.js.map +0 -1
  196. package/lib/button/button.component.d.ts +0 -50
  197. package/lib/dropdown/dropdown-header.component.d.ts +0 -3
  198. package/lib/models/IconPosition.d.ts +0 -9
  199. package/lib/models/InteractionTrigger.d.ts +0 -19
  200. package/lib/popover/popover.component.d.ts +0 -25
  201. package/lib/popover/popup.d.ts +0 -27
  202. package/lib/popover/positioning.d.ts +0 -32
  203. package/lib/popover/triggers.d.ts +0 -18
  204. package/lib/tooltip/popup.d.ts +0 -27
  205. package/lib/tooltip/positioning.d.ts +0 -32
  206. package/lib/tooltip/tooltip.component.d.ts +0 -20
  207. 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==