design-angular-kit 0.13.0 → 1.0.0-0

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 +34 -20
  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,384 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
4
- */
5
- import { Directive, Input, Output, EventEmitter, Injector, Renderer2, ElementRef, ViewContainerRef, ComponentFactoryResolver, NgZone, HostListener, } from '@angular/core';
6
- import { listenToTriggers } from './triggers';
7
- import { positionElements } from './positioning';
8
- import { PopupService } from './popup';
9
- import { TooltipConfig } from './tooltip.config';
10
- import { TooltipComponent } from './tooltip.component';
11
- import { Util } from '../util/util';
12
- import { INTERACTION_TRIGGERS } from '../models/InteractionTrigger';
13
- /** @type {?} */
14
- const TRIGGER = INTERACTION_TRIGGERS.HOVER;
15
- /** @type {?} */
16
- let identifier = 0;
17
- /**
18
- * Una direttiva per la creazione di un tooltip.
19
- */
20
- export class TooltipDirective {
21
- /**
22
- * @param {?} _elementRef
23
- * @param {?} _renderer
24
- * @param {?} injector
25
- * @param {?} componentFactoryResolver
26
- * @param {?} viewContainerRef
27
- * @param {?} config
28
- * @param {?} ngZone
29
- */
30
- constructor(_elementRef, _renderer, injector, componentFactoryResolver, viewContainerRef, config, ngZone) {
31
- this._elementRef = _elementRef;
32
- this._renderer = _renderer;
33
- this._showEvent = new EventEmitter();
34
- this._shownEvent = new EventEmitter();
35
- this._insertedEvent = new EventEmitter();
36
- this._hideEvent = new EventEmitter();
37
- this._hiddenEvent = new EventEmitter();
38
- this._disableTooltip = false;
39
- this._itTooltipWindowId = `it-tooltip-${identifier++}`;
40
- this.placement = config.placement;
41
- this.container = config.container;
42
- this.disableTooltip = config.disableTooltip;
43
- this._popupService = new PopupService(TooltipComponent, injector, viewContainerRef, _renderer, componentFactoryResolver);
44
- this._zoneSubscription = ngZone.onStable.subscribe(() => {
45
- if (this._windowRef) {
46
- this._windowRef.instance.applyPlacement(positionElements(this._elementRef.nativeElement, this._windowRef.location.nativeElement, this.placement, this.container === 'body'));
47
- }
48
- });
49
- }
50
- /**
51
- * Contenuto da mostrare nel tooltip. In assenza di contenuto, il tooltip non si aprirà.
52
- * @return {?}
53
- */
54
- get itTooltip() { return this._itTooltip; }
55
- /**
56
- * @param {?} value
57
- * @return {?}
58
- */
59
- set itTooltip(value) { this._itTooltip = value; }
60
- /**
61
- * Il collocamento accettato dal tooltip:
62
- * "top", "top-left", "top-right", "bottom", "bottom-left", "bottom-right",
63
- * "left", "left-top", "left-bottom", "right", "right-top", "right-bottom"
64
- * ed array dei valori soprariportati.
65
- * @return {?}
66
- */
67
- get placement() { return this._placement; }
68
- /**
69
- * @param {?} value
70
- * @return {?}
71
- */
72
- set placement(value) { this._placement = value; }
73
- /**
74
- * Un selettore che specifica l'elemento in cui il tooltip dovrebbe essere aggiunto.
75
- * Attualmente supporta solo "body".
76
- * @return {?}
77
- */
78
- get container() { return this._container; }
79
- /**
80
- * @param {?} value
81
- * @return {?}
82
- */
83
- set container(value) { this._container = value; }
84
- /**
85
- * Evento da emettere quando il tooltip sta per essere mostrato
86
- * @return {?}
87
- */
88
- get showEvent() { return this._showEvent; }
89
- /**
90
- * @param {?} value
91
- * @return {?}
92
- */
93
- set showEvent(value) { this._showEvent = value; }
94
- /**
95
- * Evento da emettere quando il tooltip è mostrato
96
- * @return {?}
97
- */
98
- get shownEvent() { return this._shownEvent; }
99
- /**
100
- * @param {?} value
101
- * @return {?}
102
- */
103
- set shownEvent(value) { this._shownEvent = value; }
104
- /**
105
- * Evento da emettere quando il tooltip viene inserito nel DOM
106
- * @return {?}
107
- */
108
- get insertedEvent() { return this._insertedEvent; }
109
- /**
110
- * @param {?} value
111
- * @return {?}
112
- */
113
- set insertedEvent(value) { this._insertedEvent = value; }
114
- /**
115
- * Evento da emettere quando il tooltip sta per essere nascosto
116
- * @return {?}
117
- */
118
- get hideEvent() { return this._hideEvent; }
119
- /**
120
- * @param {?} value
121
- * @return {?}
122
- */
123
- set hideEvent(value) { this._hideEvent = value; }
124
- /**
125
- * Evento da emettere quando il tooltip è nascosto
126
- * @return {?}
127
- */
128
- get hiddenEvent() { return this._hiddenEvent; }
129
- /**
130
- * @param {?} value
131
- * @return {?}
132
- */
133
- set hiddenEvent(value) { this._hiddenEvent = value; }
134
- /**
135
- * Un flag utilizzato per indicare se un tooltip è disabilitato, così da non doverlo mostrare.
136
- * @return {?}
137
- */
138
- get disableTooltip() { return this._disableTooltip; }
139
- /**
140
- * @param {?} value
141
- * @return {?}
142
- */
143
- set disableTooltip(value) { this._disableTooltip = Util.coerceBooleanProperty(value); }
144
- /**
145
- * @return {?}
146
- */
147
- _isDisabled() {
148
- if (this.disableTooltip) {
149
- return true;
150
- }
151
- if (!this.itTooltip) {
152
- return true;
153
- }
154
- return false;
155
- }
156
- /**
157
- * Apre il tooltip di un elemento. È considerato un azionamento "manuale" del tooltip.
158
- * Il context è un valore opzionale da iniettare nel template del tooltip quando esso viene creato.
159
- * @param {?=} context
160
- * @return {?}
161
- */
162
- show(context) {
163
- if (!this._isDisabled()) {
164
- // Scatena l'evento per segnalare l'inizio del processo per visualizzare il tooltip
165
- this.showEvent.emit(this);
166
- if (!this._windowRef) {
167
- this._windowRef = this._popupService.open(this.itTooltip, context);
168
- /** @type {?} */
169
- const tooltipComponent = this._windowRef.instance;
170
- tooltipComponent.id = this._itTooltipWindowId;
171
- this._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', this._itTooltipWindowId);
172
- if (this.container === 'body') {
173
- window.document.querySelector(this.container).appendChild(this._windowRef.location.nativeElement);
174
- }
175
- this._windowRef.changeDetectorRef.detectChanges();
176
- this._windowRef.changeDetectorRef.markForCheck();
177
- // Posiziona il tooltip attorno all'elemento
178
- tooltipComponent.applyPlacement(positionElements(this._elementRef.nativeElement, this._windowRef.location.nativeElement, this.placement, this.container === 'body'));
179
- // Scatena l'evento per segnalare l'inserimento nel DOM
180
- this.insertedEvent.emit(this);
181
- }
182
- else {
183
- /** @type {?} */
184
- const tooltipComponent = this._windowRef.instance;
185
- tooltipComponent.hidden = false;
186
- }
187
- // Scatena l'evento per segnalare che il tooltip è stato visualizzato
188
- this.shownEvent.emit(this);
189
- }
190
- }
191
- /**
192
- * Chiude il tooltip di un elemento. È considerato un azionamento "manuale" del tooltip.
193
- * @return {?}
194
- */
195
- hide() {
196
- // Scatena l'evento per segnalare l'inizio del processo per nascondere il tooltip
197
- this.hideEvent.emit(this);
198
- if (this._windowRef) {
199
- /** @type {?} */
200
- const tooltipComponent = this._windowRef.instance;
201
- tooltipComponent.hidden = true;
202
- // Scatena l'evento per segnalare che il tooltip è stato nascosto
203
- this.hiddenEvent.emit(this);
204
- }
205
- }
206
- /**
207
- * Apre/chiude il un tooltip di un elemento. È considerato un azionamento "manuale" del tooltip.
208
- * @return {?}
209
- */
210
- toggle() {
211
- if (this._windowRef) {
212
- if (this._windowRef.instance.hidden) {
213
- this.show();
214
- }
215
- else {
216
- this.hide();
217
- }
218
- }
219
- else {
220
- this.show();
221
- }
222
- }
223
- /**
224
- * Nasconde e distrugge il tooltip di un elemento.
225
- * @return {?}
226
- */
227
- dispose() {
228
- /** @type {?} */
229
- const isShown = this._windowRef ? !this._windowRef.instance.hidden : false;
230
- if (isShown) {
231
- this.hide();
232
- }
233
- if (this._windowRef) {
234
- this._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');
235
- this._popupService.close();
236
- this._windowRef = null;
237
- }
238
- }
239
- /**
240
- * Fornisce al tooltip di un elemento la possibilità di essere mostrato.
241
- * @return {?}
242
- */
243
- enable() {
244
- if (this._isDisabled()) {
245
- this.disableTooltip = false;
246
- }
247
- }
248
- /**
249
- * Rimuove la capacità di mostrare il tooltip di un elemento.
250
- * @return {?}
251
- */
252
- disable() {
253
- if (!this._isDisabled()) {
254
- this.disableTooltip = true;
255
- }
256
- }
257
- /**
258
- * Attiva/disattiva la possibilità che il tooltip di un elemento sia mostrato o nascosto.
259
- * @return {?}
260
- */
261
- toggleEnabled() {
262
- if (this._isDisabled()) {
263
- this.enable();
264
- }
265
- else {
266
- this.disable();
267
- }
268
- }
269
- /**
270
- * @return {?}
271
- */
272
- ngOnInit() {
273
- this._unregisterListenersFn = listenToTriggers(this._renderer, this._elementRef.nativeElement, TRIGGER, this.show.bind(this), this.hide.bind(this), this.toggle.bind(this));
274
- }
275
- /**
276
- * @param {?} changes
277
- * @return {?}
278
- */
279
- ngOnChanges(changes) {
280
- // Chiude il tooltip se il contenuto risulta vuoto, o se disableTooltip è impostato a vero
281
- if ((changes['itTooltip'] || changes['disableTooltip']) && this._isDisabled()) {
282
- this.hide();
283
- }
284
- else if (changes['placement']) {
285
- if (this._windowRef) {
286
- this._windowRef.instance.applyPlacement(positionElements(this._elementRef.nativeElement, this._windowRef.location.nativeElement, this.placement, this.container === 'body'));
287
- }
288
- }
289
- else if (changes['container']) {
290
- /** @type {?} */
291
- const isShown = this._windowRef ? !this._windowRef.instance.hidden : false;
292
- this.dispose();
293
- if (isShown) {
294
- this.show();
295
- }
296
- }
297
- }
298
- /**
299
- * @return {?}
300
- */
301
- ngOnDestroy() {
302
- this.dispose();
303
- this._unregisterListenersFn();
304
- this._zoneSubscription.unsubscribe();
305
- }
306
- /**
307
- * @return {?}
308
- */
309
- handleFocus() {
310
- this.show();
311
- }
312
- /**
313
- * @return {?}
314
- */
315
- handleBlur() {
316
- this.hide();
317
- }
318
- }
319
- TooltipDirective.decorators = [
320
- { type: Directive, args: [{
321
- selector: '[it-tooltip]',
322
- // tslint:disable-line
323
- exportAs: 'it-tooltip'
324
- },] },
325
- ];
326
- /** @nocollapse */
327
- TooltipDirective.ctorParameters = () => [
328
- { type: ElementRef },
329
- { type: Renderer2 },
330
- { type: Injector },
331
- { type: ComponentFactoryResolver },
332
- { type: ViewContainerRef },
333
- { type: TooltipConfig },
334
- { type: NgZone }
335
- ];
336
- TooltipDirective.propDecorators = {
337
- itTooltip: [{ type: Input, args: ['it-tooltip',] }],
338
- placement: [{ type: Input }],
339
- container: [{ type: Input }],
340
- showEvent: [{ type: Output, args: ['show',] }],
341
- shownEvent: [{ type: Output, args: ['shown',] }],
342
- insertedEvent: [{ type: Output, args: ['inserted',] }],
343
- hideEvent: [{ type: Output, args: ['hide',] }],
344
- hiddenEvent: [{ type: Output, args: ['hidden',] }],
345
- disableTooltip: [{ type: Input, args: ['disabled',] }],
346
- handleFocus: [{ type: HostListener, args: ['focus',] }],
347
- handleBlur: [{ type: HostListener, args: ['blur',] }]
348
- };
349
- if (false) {
350
- /** @type {?} */
351
- TooltipDirective.prototype._itTooltip;
352
- /** @type {?} */
353
- TooltipDirective.prototype._placement;
354
- /** @type {?} */
355
- TooltipDirective.prototype._container;
356
- /** @type {?} */
357
- TooltipDirective.prototype._showEvent;
358
- /** @type {?} */
359
- TooltipDirective.prototype._shownEvent;
360
- /** @type {?} */
361
- TooltipDirective.prototype._insertedEvent;
362
- /** @type {?} */
363
- TooltipDirective.prototype._hideEvent;
364
- /** @type {?} */
365
- TooltipDirective.prototype._hiddenEvent;
366
- /** @type {?} */
367
- TooltipDirective.prototype._disableTooltip;
368
- /** @type {?} */
369
- TooltipDirective.prototype._itTooltipWindowId;
370
- /** @type {?} */
371
- TooltipDirective.prototype._popupService;
372
- /** @type {?} */
373
- TooltipDirective.prototype._windowRef;
374
- /** @type {?} */
375
- TooltipDirective.prototype._unregisterListenersFn;
376
- /** @type {?} */
377
- TooltipDirective.prototype._zoneSubscription;
378
- /** @type {?} */
379
- TooltipDirective.prototype._elementRef;
380
- /** @type {?} */
381
- TooltipDirective.prototype._renderer;
382
- }
383
-
384
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9kZXNpZ24tYW5ndWxhci1raXQvIiwic291cmNlcyI6WyJsaWIvdG9vbHRpcC90b29sdGlwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBT0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFJWixRQUFRLEVBQ1IsU0FBUyxFQUVULFVBQVUsRUFFVixnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBQ3hCLE1BQU0sRUFFTixZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBNkIsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN2QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFcEUsTUFBTSxPQUFPLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxDQUFDOztBQUUzQyxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7Ozs7QUFTbkIsTUFBTTs7Ozs7Ozs7OztJQTRGSixZQUNZLGFBQ0EsV0FDUixRQUFrQixFQUNsQix3QkFBa0QsRUFDbEQsZ0JBQWtDLEVBQ2xDLE1BQXFCLEVBQ3JCLE1BQWM7UUFOTixnQkFBVyxHQUFYLFdBQVc7UUFDWCxjQUFTLEdBQVQsU0FBUzswQkEzREEsSUFBSSxZQUFZLEVBQW9COzJCQVFuQyxJQUFJLFlBQVksRUFBb0I7OEJBUWpDLElBQUksWUFBWSxFQUFvQjswQkFReEMsSUFB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eUJBS3BCLFlBQVksU0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEFuZ3VsYXIgbmctYm9vdHN0cmFwIHRlYW0gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcC9tYXN0ZXIvTElDRU5TRVxuICovXG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25Jbml0LFxuICBPbkRlc3Ryb3ksXG4gIE9uQ2hhbmdlcyxcbiAgSW5qZWN0b3IsXG4gIFJlbmRlcmVyMixcbiAgQ29tcG9uZW50UmVmLFxuICBFbGVtZW50UmVmLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBOZ1pvbmUsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIEhvc3RMaXN0ZW5lcixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGxpc3RlblRvVHJpZ2dlcnMgfSBmcm9tICcuL3RyaWdnZXJzJztcbmltcG9ydCB7IHBvc2l0aW9uRWxlbWVudHMsIFBsYWNlbWVudCwgUGxhY2VtZW50QXJyYXkgfSBmcm9tICcuL3Bvc2l0aW9uaW5nJztcbmltcG9ydCB7IFBvcHVwU2VydmljZSB9IGZyb20gJy4vcG9wdXAnO1xuaW1wb3J0IHsgVG9vbHRpcENvbmZpZyB9IGZyb20gJy4vdG9vbHRpcC5jb25maWcnO1xuaW1wb3J0IHsgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vdXRpbC91dGlsJztcbmltcG9ydCB7IElOVEVSQUNUSU9OX1RSSUdHRVJTIH0gZnJvbSAnLi4vbW9kZWxzL0ludGVyYWN0aW9uVHJpZ2dlcic7XG5cbmNvbnN0IFRSSUdHRVIgPSBJTlRFUkFDVElPTl9UUklHR0VSUy5IT1ZFUjtcblxubGV0IGlkZW50aWZpZXIgPSAwO1xuXG4vKipcbiAqIFVuYSBkaXJldHRpdmEgcGVyIGxhIGNyZWF6aW9uZSBkaSB1biB0b29sdGlwLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbaXQtdG9vbHRpcF0nLCAvLyB0c2xpbnQ6ZGlzYWJsZS1saW5lXG4gIGV4cG9ydEFzOiAnaXQtdG9vbHRpcCdcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICAvKipcbiAgICogQ29udGVudXRvIGRhIG1vc3RyYXJlIG5lbCB0b29sdGlwLiBJbiBhc3NlbnphIGRpIGNvbnRlbnV0bywgaWwgdG9vbHRpcCBub24gc2kgYXByaXLDoC5cbiAgICovXG4gIEBJbnB1dCgnaXQtdG9vbHRpcCcpXG4gIGdldCBpdFRvb2x0aXAoKTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiB7IHJldHVybiB0aGlzLl9pdFRvb2x0aXA7IH1cbiAgc2V0IGl0VG9vbHRpcCh2YWx1ZTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PikgeyB0aGlzLl9pdFRvb2x0aXAgPSB2YWx1ZTsgfVxuICBwcml2YXRlIF9pdFRvb2x0aXA6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgLyoqXG4gICAqIElsIGNvbGxvY2FtZW50byBhY2NldHRhdG8gZGFsIHRvb2x0aXA6XG4gICAqICAgIFwidG9wXCIsIFwidG9wLWxlZnRcIiwgXCJ0b3AtcmlnaHRcIiwgXCJib3R0b21cIiwgXCJib3R0b20tbGVmdFwiLCBcImJvdHRvbS1yaWdodFwiLFxuICAgKiAgICBcImxlZnRcIiwgXCJsZWZ0LXRvcFwiLCBcImxlZnQtYm90dG9tXCIsIFwicmlnaHRcIiwgXCJyaWdodC10b3BcIiwgXCJyaWdodC1ib3R0b21cIlxuICAgKiBlZCBhcnJheSBkZWkgdmFsb3JpIHNvcHJhcmlwb3J0YXRpLlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHBsYWNlbWVudCgpOiBQbGFjZW1lbnRBcnJheSB7IHJldHVybiB0aGlzLl9wbGFjZW1lbnQ7IH1cbiAgc2V0IHBsYWNlbWVudCh2YWx1ZTogUGxhY2VtZW50QXJyYXkpIHsgdGhpcy5fcGxhY2VtZW50ID0gdmFsdWU7IH1cbiAgcHJpdmF0ZSBfcGxhY2VtZW50OiBQbGFjZW1lbnRBcnJheTtcblxuICAvKipcbiAgICogVW4gc2VsZXR0b3JlIGNoZSBzcGVjaWZpY2EgbCdlbGVtZW50byBpbiBjdWkgaWwgdG9vbHRpcCBkb3ZyZWJiZSBlc3NlcmUgYWdnaXVudG8uXG4gICAqIEF0dHVhbG1lbnRlIHN1cHBvcnRhIHNvbG8gXCJib2R5XCIuXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgY29udGFpbmVyKCk6IHN0cmluZyB7IHJldHVybiB0aGlzLl9jb250YWluZXI7IH1cbiAgc2V0IGNvbnRhaW5lcih2YWx1ZTogc3RyaW5nKSB7IHRoaXMuX2NvbnRhaW5lciA9IHZhbHVlOyB9XG4gIHByaXZhdGUgX2NvbnRhaW5lcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFdmVudG8gZGEgZW1ldHRlcmUgcXVhbmRvIGlsIHRvb2x0aXAgc3RhIHBlciBlc3NlcmUgbW9zdHJhdG9cbiAgICovXG4gIEBPdXRwdXQoJ3Nob3cnKVxuICBnZXQgc2hvd0V2ZW50KCk6IEV2ZW50RW1pdHRlcjxUb29sdGlwRGlyZWN0aXZlPiB7IHJldHVybiB0aGlzLl9zaG93RXZlbnQ7IH1cbiAgc2V0IHNob3dFdmVudCh2YWx1ZTogRXZlbnRFbWl0dGVyPFRvb2x0aXBEaXJlY3RpdmU+KSB7IHRoaXMuX3Nob3dFdmVudCA9IHZhbHVlOyB9XG4gIHByaXZhdGUgX3Nob3dFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8VG9vbHRpcERpcmVjdGl2ZT4oKTtcblxuICAvKipcbiAgICogRXZlbnRvIGRhIGVtZXR0ZXJlIHF1YW5kbyBpbCB0b29sdGlwIMOoIG1vc3RyYXRvXG4gICAqL1xuICBAT3V0cHV0KCdzaG93bicpXG4gIGdldCBzaG93bkV2ZW50KCk6IEV2ZW50RW1pdHRlcjxUb29sdGlwRGlyZWN0aXZlPiB7IHJldHVybiB0aGlzLl9zaG93bkV2ZW50OyB9XG4gIHNldCBzaG93bkV2ZW50KHZhbHVlOiBFdmVudEVtaXR0ZXI8VG9vbHRpcERpcmVjdGl2ZT4pIHsgdGhpcy5fc2hvd25FdmVudCA9IHZhbHVlOyB9XG4gIHByaXZhdGUgX3Nob3duRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFRvb2x0aXBEaXJlY3RpdmU+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50byBkYSBlbWV0dGVyZSBxdWFuZG8gaWwgdG9vbHRpcCB2aWVuZSBpbnNlcml0byBuZWwgRE9NXG4gICAqL1xuICBAT3V0cHV0KCdpbnNlcnRlZCcpXG4gIGdldCBpbnNlcnRlZEV2ZW50KCk6IEV2ZW50RW1pdHRlcjxUb29sdGlwRGlyZWN0aXZlPiB7IHJldHVybiB0aGlzLl9pbnNlcnRlZEV2ZW50OyB9XG4gIHNldCBpbnNlcnRlZEV2ZW50KHZhbHVlOiBFdmVudEVtaXR0ZXI8VG9vbHRpcERpcmVjdGl2ZT4pIHsgdGhpcy5faW5zZXJ0ZWRFdmVudCA9IHZhbHVlOyB9XG4gIHByaXZhdGUgX2luc2VydGVkRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFRvb2x0aXBEaXJlY3RpdmU+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50byBkYSBlbWV0dGVyZSBxdWFuZG8gaWwgdG9vbHRpcCBzdGEgcGVyIGVzc2VyZSBuYXNjb3N0b1xuICAgKi9cbiAgQE91dHB1dCgnaGlkZScpXG4gIGdldCBoaWRlRXZlbnQoKTogRXZlbnRFbWl0dGVyPFRvb2x0aXBEaXJlY3RpdmU+IHsgcmV0dXJuIHRoaXMuX2hpZGVFdmVudDsgfVxuICBzZXQgaGlkZUV2ZW50KHZhbHVlOiBFdmVudEVtaXR0ZXI8VG9vbHRpcERpcmVjdGl2ZT4pIHsgdGhpcy5faGlkZUV2ZW50ID0gdmFsdWU7IH1cbiAgcHJpdmF0ZSBfaGlkZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxUb29sdGlwRGlyZWN0aXZlPigpO1xuXG4gIC8qKlxuICAgKiBFdmVudG8gZGEgZW1ldHRlcmUgcXVhbmRvIGlsIHRvb2x0aXAgw6ggbmFzY29zdG9cbiAgICovXG4gIEBPdXRwdXQoJ2hpZGRlbicpXG4gIGdldCBoaWRkZW5FdmVudCgpOiBFdmVudEVtaXR0ZXI8VG9vbHRpcERpcmVjdGl2ZT4geyByZXR1cm4gdGhpcy5faGlkZGVuRXZlbnQ7IH1cbiAgc2V0IGhpZGRlbkV2ZW50KHZhbHVlOiBFdmVudEVtaXR0ZXI8VG9vbHRpcERpcmVjdGl2ZT4pIHsgdGhpcy5faGlkZGVuRXZlbnQgPSB2YWx1ZTsgfVxuICBwcml2YXRlIF9oaWRkZW5FdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8VG9vbHRpcERpcmVjdGl2ZT4oKTtcblxuICAvKipcbiAgICogVW4gZmxhZyB1dGlsaXp6YXRvIHBlciBpbmRpY2FyZSBzZSB1biB0b29sdGlwIMOoIGRpc2FiaWxpdGF0bywgY29zw6wgZGEgbm9uIGRvdmVybG8gbW9zdHJhcmUuXG4gICAqL1xuICBASW5wdXQoJ2Rpc2FibGVkJylcbiAgZ2V0IGRpc2FibGVUb29sdGlwKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGlzYWJsZVRvb2x0aXA7IH1cbiAgc2V0IGRpc2FibGVUb29sdGlwKHZhbHVlOiBib29sZWFuKSB7IHRoaXMuX2Rpc2FibGVUb29sdGlwID0gVXRpbC5jb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gIHByaXZhdGUgX2Rpc2FibGVUb29sdGlwID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfaXRUb29sdGlwV2luZG93SWQgPSBgaXQtdG9vbHRpcC0ke2lkZW50aWZpZXIrK31gO1xuICBwcml2YXRlIF9wb3B1cFNlcnZpY2U6IFBvcHVwU2VydmljZTxUb29sdGlwQ29tcG9uZW50PjtcbiAgcHJpdmF0ZSBfd2luZG93UmVmOiBDb21wb25lbnRSZWY8VG9vbHRpcENvbXBvbmVudD47XG4gIHByaXZhdGUgX3VucmVnaXN0ZXJMaXN0ZW5lcnNGbjtcbiAgcHJpdmF0ZSBfem9uZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF9pc0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmRpc2FibGVUb29sdGlwKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLml0VG9vbHRpcCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgY29uZmlnOiBUb29sdGlwQ29uZmlnLFxuICAgICAgbmdab25lOiBOZ1pvbmVcbiAgKSB7XG4gICAgdGhpcy5wbGFjZW1lbnQgPSBjb25maWcucGxhY2VtZW50O1xuICAgIHRoaXMuY29udGFpbmVyID0gY29uZmlnLmNvbnRhaW5lcjtcbiAgICB0aGlzLmRpc2FibGVUb29sdGlwID0gY29uZmlnLmRpc2FibGVUb29sdGlwO1xuICAgIHRoaXMuX3BvcHVwU2VydmljZSA9IG5ldyBQb3B1cFNlcnZpY2U8VG9vbHRpcENvbXBvbmVudD4oXG4gICAgICBUb29sdGlwQ29tcG9uZW50LCBpbmplY3Rvciwgdmlld0NvbnRhaW5lclJlZiwgX3JlbmRlcmVyLCBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpO1xuXG4gICAgdGhpcy5fem9uZVN1YnNjcmlwdGlvbiA9IG5nWm9uZS5vblN0YWJsZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuX3dpbmRvd1JlZikge1xuICAgICAgICB0aGlzLl93aW5kb3dSZWYuaW5zdGFuY2UuYXBwbHlQbGFjZW1lbnQoXG4gICAgICAgICAgcG9zaXRpb25FbGVtZW50cyhcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5fd2luZG93UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICB0aGlzLnBsYWNlbWVudCwgdGhpcy5jb250YWluZXIgPT09ICdib2R5J1xuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHJlIGlsIHRvb2x0aXAgZGkgdW4gZWxlbWVudG8uIMOIIGNvbnNpZGVyYXRvIHVuIGF6aW9uYW1lbnRvIFwibWFudWFsZVwiIGRlbCB0b29sdGlwLlxuICAgKiBJbCBjb250ZXh0IMOoIHVuIHZhbG9yZSBvcHppb25hbGUgZGEgaW5pZXR0YXJlIG5lbCB0ZW1wbGF0ZSBkZWwgdG9vbHRpcCBxdWFuZG8gZXNzbyB2aWVuZSBjcmVhdG8uXG4gICAqL1xuICBzaG93KGNvbnRleHQ/OiBhbnkpIHtcbiAgICBpZiAoIXRoaXMuX2lzRGlzYWJsZWQoKSkge1xuICAgICAgLy8gU2NhdGVuYSBsJ2V2ZW50byBwZXIgc2VnbmFsYXJlIGwnaW5pemlvIGRlbCBwcm9jZXNzbyBwZXIgdmlzdWFsaXp6YXJlIGlsIHRvb2x0aXBcbiAgICAgIHRoaXMuc2hvd0V2ZW50LmVtaXQodGhpcyk7XG5cbiAgICAgIGlmICghdGhpcy5fd2luZG93UmVmKSB7XG4gICAgICAgIHRoaXMuX3dpbmRvd1JlZiA9IHRoaXMuX3BvcHVwU2VydmljZS5vcGVuKHRoaXMuaXRUb29sdGlwLCBjb250ZXh0KTtcblxuICAgICAgICBjb25zdCB0b29sdGlwQ29tcG9uZW50ID0gdGhpcy5fd2luZG93UmVmLmluc3RhbmNlO1xuICAgICAgICB0b29sdGlwQ29tcG9uZW50LmlkID0gdGhpcy5faXRUb29sdGlwV2luZG93SWQ7XG5cbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2FyaWEtZGVzY3JpYmVkYnknLCB0aGlzLl9pdFRvb2x0aXBXaW5kb3dJZCk7XG5cbiAgICAgICAgaWYgKHRoaXMuY29udGFpbmVyID09PSAnYm9keScpIHtcbiAgICAgICAgICB3aW5kb3cuZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLmNvbnRhaW5lcikuYXBwZW5kQ2hpbGQodGhpcy5fd2luZG93UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fd2luZG93UmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgdGhpcy5fd2luZG93UmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgICAgIC8vIFBvc2l6aW9uYSBpbCB0b29sdGlwIGF0dG9ybm8gYWxsJ2VsZW1lbnRvXG4gICAgICAgIHRvb2x0aXBDb21wb25lbnQuYXBwbHlQbGFjZW1lbnQoXG4gICAgICAgICAgcG9zaXRpb25FbGVtZW50cyhcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5fd2luZG93UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICB0aGlzLnBsYWNlbWVudCwgdGhpcy5jb250YWluZXIgPT09ICdib2R5J1xuICAgICAgICAgIClcbiAgICAgICAgKTtcblxuICAgICAgICAvLyBTY2F0ZW5hIGwnZXZlbnRvIHBlciBzZWduYWxhcmUgbCdpbnNlcmltZW50byBuZWwgRE9NXG4gICAgICAgIHRoaXMuaW5zZXJ0ZWRFdmVudC5lbWl0KHRoaXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgdG9vbHRpcENvbXBvbmVudCA9IHRoaXMuX3dpbmRvd1JlZi5pbnN0YW5jZTtcbiAgICAgICAgdG9vbHRpcENvbXBvbmVudC5oaWRkZW4gPSBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgLy8gU2NhdGVuYSBsJ2V2ZW50byBwZXIgc2VnbmFsYXJlIGNoZSBpbCB0b29sdGlwIMOoIHN0YXRvIHZpc3VhbGl6emF0b1xuICAgICAgdGhpcy5zaG93bkV2ZW50LmVtaXQodGhpcyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoaXVkZSBpbCB0b29sdGlwIGRpIHVuIGVsZW1lbnRvLiDDiCBjb25zaWRlcmF0byB1biBhemlvbmFtZW50byBcIm1hbnVhbGVcIiBkZWwgdG9vbHRpcC5cbiAgICovXG4gIGhpZGUoKSB7XG4gICAgLy8gU2NhdGVuYSBsJ2V2ZW50byBwZXIgc2VnbmFsYXJlIGwnaW5pemlvIGRlbCBwcm9jZXNzbyBwZXIgbmFzY29uZGVyZSBpbCB0b29sdGlwXG4gICAgdGhpcy5oaWRlRXZlbnQuZW1pdCh0aGlzKTtcbiAgICBpZiAodGhpcy5fd2luZG93UmVmKSB7XG4gICAgICBjb25zdCB0b29sdGlwQ29tcG9uZW50ID0gdGhpcy5fd2luZG93UmVmLmluc3RhbmNlO1xuICAgICAgdG9vbHRpcENvbXBvbmVudC5oaWRkZW4gPSB0cnVlO1xuXG4gICAgICAvLyBTY2F0ZW5hIGwnZXZlbnRvIHBlciBzZWduYWxhcmUgY2hlIGlsIHRvb2x0aXAgw6ggc3RhdG8gbmFzY29zdG9cbiAgICAgIHRoaXMuaGlkZGVuRXZlbnQuZW1pdCh0aGlzKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQXByZS9jaGl1ZGUgaWwgdW4gdG9vbHRpcCBkaSB1biBlbGVtZW50by4gw4ggY29uc2lkZXJhdG8gdW4gYXppb25hbWVudG8gXCJtYW51YWxlXCIgZGVsIHRvb2x0aXAuXG4gICAqL1xuICB0b2dnbGUoKSB7XG4gICAgaWYgKHRoaXMuX3dpbmRvd1JlZikge1xuICAgICAgaWYgKHRoaXMuX3dpbmRvd1JlZi5pbnN0YW5jZS5oaWRkZW4pIHtcbiAgICAgICAgdGhpcy5zaG93KCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zaG93KCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE5hc2NvbmRlIGUgZGlzdHJ1Z2dlIGlsIHRvb2x0aXAgZGkgdW4gZWxlbWVudG8uXG4gICAqL1xuICBkaXNwb3NlKCkge1xuICAgIGNvbnN0IGlzU2hvd24gPSB0aGlzLl93aW5kb3dSZWYgPyAhdGhpcy5fd2luZG93UmVmLmluc3RhbmNlLmhpZGRlbiA6IGZhbHNlO1xuICAgIGlmIChpc1Nob3duKSB7XG4gICAgICB0aGlzLmhpZGUoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fd2luZG93UmVmKSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnYXJpYS1kZXNjcmliZWRieScpO1xuICAgICAgdGhpcy5fcG9wdXBTZXJ2aWNlLmNsb3NlKCk7XG4gICAgICB0aGlzLl93aW5kb3dSZWYgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBGb3JuaXNjZSBhbCB0b29sdGlwIGRpIHVuIGVsZW1lbnRvIGxhIHBvc3NpYmlsaXTDoCBkaSBlc3NlcmUgbW9zdHJhdG8uXG4gICAqL1xuICBlbmFibGUoKSB7XG4gICAgaWYgKHRoaXMuX2lzRGlzYWJsZWQoKSkge1xuICAgICAgdGhpcy5kaXNhYmxlVG9vbHRpcCA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSaW11b3ZlIGxhIGNhcGFjaXTDoCBkaSBtb3N0cmFyZSBpbCB0b29sdGlwIGRpIHVuIGVsZW1lbnRvLlxuICAgKi9cbiAgZGlzYWJsZSgpIHtcbiAgICBpZiAoIXRoaXMuX2lzRGlzYWJsZWQoKSkge1xuICAgICAgdGhpcy5kaXNhYmxlVG9vbHRpcCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEF0dGl2YS9kaXNhdHRpdmEgbGEgcG9zc2liaWxpdMOgIGNoZSBpbCB0b29sdGlwIGRpIHVuIGVsZW1lbnRvIHNpYSBtb3N0cmF0byBvIG5hc2Nvc3RvLlxuICAgKi9cbiAgdG9nZ2xlRW5hYmxlZCgpIHtcbiAgICBpZiAodGhpcy5faXNEaXNhYmxlZCgpKSB7XG4gICAgICB0aGlzLmVuYWJsZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRpc2FibGUoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl91bnJlZ2lzdGVyTGlzdGVuZXJzRm4gPSBsaXN0ZW5Ub1RyaWdnZXJzKFxuICAgICAgdGhpcy5fcmVuZGVyZXIsIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgVFJJR0dFUixcbiAgICAgIHRoaXMuc2hvdy5iaW5kKHRoaXMpLCB0aGlzLmhpZGUuYmluZCh0aGlzKSwgdGhpcy50b2dnbGUuYmluZCh0aGlzKVxuICAgICk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgLy8gQ2hpdWRlIGlsIHRvb2x0aXAgc2UgaWwgY29udGVudXRvIHJpc3VsdGEgdnVvdG8sIG8gc2UgZGlzYWJsZVRvb2x0aXAgw6ggaW1wb3N0YXRvIGEgdmVyb1xuICAgIGlmICgoY2hhbmdlc1snaXRUb29sdGlwJ10gfHwgY2hhbmdlc1snZGlzYWJsZVRvb2x0aXAnXSkgJiYgdGhpcy5faXNEaXNhYmxlZCgpKSB7XG4gICAgICB0aGlzLmhpZGUoKTtcbiAgICB9IGVsc2UgaWYgKGNoYW5nZXNbJ3BsYWNlbWVudCddKSB7XG4gICAgICBpZiAodGhpcy5fd2luZG93UmVmKSB7XG4gICAgICAgIHRoaXMuX3dpbmRvd1JlZi5pbnN0YW5jZS5hcHBseVBsYWNlbWVudChcbiAgICAgICAgICBwb3NpdGlvbkVsZW1lbnRzKFxuICAgICAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB0aGlzLl93aW5kb3dSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIHRoaXMucGxhY2VtZW50LCB0aGlzLmNvbnRhaW5lciA9PT0gJ2JvZHknXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoY2hhbmdlc1snY29udGFpbmVyJ10pIHtcbiAgICAgIGNvbnN0IGlzU2hvd24gPSB0aGlzLl93aW5kb3dSZWYgPyAhdGhpcy5fd2luZG93UmVmLmluc3RhbmNlLmhpZGRlbiA6IGZhbHNlO1xuICAgICAgdGhpcy5kaXNwb3NlKCk7XG4gICAgICBpZiAoaXNTaG93bikge1xuICAgICAgICB0aGlzLnNob3coKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgICB0aGlzLl91bnJlZ2lzdGVyTGlzdGVuZXJzRm4oKTtcbiAgICB0aGlzLl96b25lU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdmb2N1cycpXG4gIHByb3RlY3RlZCBoYW5kbGVGb2N1cygpIHtcbiAgICB0aGlzLnNob3coKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInKVxuICBwcm90ZWN0ZWQgaGFuZGxlQmx1cigpIHtcbiAgICB0aGlzLmhpZGUoKTtcbiAgfVxufVxuIl19
@@ -1,99 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
4
- */
5
- /**
6
- * @license
7
- * Copyright Angular ng-bootstrap team All Rights Reserved.
8
- *
9
- * Use of this source code is governed by an MIT-style license that can be
10
- * found in the LICENSE file at https://raw.githubusercontent.com/ng-bootstrap/ng-bootstrap/master/LICENSE
11
- */
12
- export class Trigger {
13
- /**
14
- * @param {?} open
15
- * @param {?=} close
16
- */
17
- constructor(open, close) {
18
- this.open = open;
19
- this.close = close;
20
- if (!close) {
21
- this.close = open;
22
- }
23
- }
24
- /**
25
- * @return {?}
26
- */
27
- isManual() { return this.open === 'manual' || this.close === 'manual'; }
28
- }
29
- if (false) {
30
- /** @type {?} */
31
- Trigger.prototype.open;
32
- /** @type {?} */
33
- Trigger.prototype.close;
34
- }
35
- /** @type {?} */
36
- const DEFAULT_ALIASES = {
37
- 'hover': ['mouseenter', 'mouseleave'],
38
- 'focus': ['focus', 'blur']
39
- };
40
- /**
41
- * @param {?} triggers
42
- * @param {?=} aliases
43
- * @return {?}
44
- */
45
- export function parseTriggers(triggers, aliases = DEFAULT_ALIASES) {
46
- /** @type {?} */
47
- const trimmedTriggers = (triggers || '').trim();
48
- if (trimmedTriggers.length === 0) {
49
- return [];
50
- }
51
- /** @type {?} */
52
- const parsedTriggers = trimmedTriggers.split(/\s+/).map(trigger => trigger.split(':')).map((triggerPair) => {
53
- /** @type {?} */
54
- const alias = aliases[triggerPair[0]] || triggerPair;
55
- return new Trigger(alias[0], alias[1]);
56
- });
57
- /** @type {?} */
58
- const manualTriggers = parsedTriggers.filter(triggerPair => triggerPair.isManual());
59
- if (manualTriggers.length > 1) {
60
- throw new Error('Triggers parse error: only one manual trigger is allowed');
61
- }
62
- if (manualTriggers.length === 1 && parsedTriggers.length > 1) {
63
- throw new Error('Triggers parse error: manual trigger can\'t be mixed with other triggers');
64
- }
65
- return parsedTriggers;
66
- }
67
- /** @type {?} */
68
- const noopFn = () => { };
69
- const ɵ0 = noopFn;
70
- /**
71
- * @param {?} renderer
72
- * @param {?} nativeElement
73
- * @param {?} triggers
74
- * @param {?} openFn
75
- * @param {?} closeFn
76
- * @param {?} toggleFn
77
- * @return {?}
78
- */
79
- export function listenToTriggers(renderer, nativeElement, triggers, openFn, closeFn, toggleFn) {
80
- /** @type {?} */
81
- const parsedTriggers = parseTriggers(triggers);
82
- /** @type {?} */
83
- const listeners = [];
84
- if (parsedTriggers.length === 1 && parsedTriggers[0].isManual()) {
85
- return noopFn;
86
- }
87
- parsedTriggers.forEach((trigger) => {
88
- if (trigger.open === trigger.close) {
89
- listeners.push(renderer.listen(nativeElement, trigger.open, toggleFn));
90
- }
91
- else {
92
- listeners.push(renderer.listen(nativeElement, trigger.open, openFn), renderer.listen(nativeElement, trigger.close, closeFn));
93
- }
94
- });
95
- return () => { listeners.forEach(unsubscribeFn => unsubscribeFn()); };
96
- }
97
- export { ɵ0 };
98
-
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpZ2dlcnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9kZXNpZ24tYW5ndWxhci1raXQvIiwic291cmNlcyI6WyJsaWIvdG9vbHRpcC90cmlnZ2Vycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQU9BLE1BQU07Ozs7O0lBQ0YsWUFBbUIsSUFBWSxFQUFTLEtBQWM7UUFBbkMsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUFTLFVBQUssR0FBTCxLQUFLLENBQVM7UUFDbEQsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ1QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7U0FDckI7S0FDSjs7OztJQUVELFFBQVEsS0FBSyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxRQUFRLENBQUMsRUFBRTtDQUMzRTs7Ozs7Ozs7QUFFRCxNQUFNLGVBQWUsR0FBRztJQUNwQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDO0lBQ3JDLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUM7Q0FDN0IsQ0FBQzs7Ozs7O0FBRUYsTUFBTSx3QkFBd0IsUUFBZ0IsRUFBRSxPQUFPLEdBQUcsZUFBZTs7SUFDckUsTUFBTSxlQUFlLEdBQUcsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFFaEQsRUFBRSxDQUFDLENBQUMsZUFBZSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxFQUFFLENBQUM7S0FDYjs7SUFFRCxNQUFNLGNBQWMsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTs7UUFDdkcsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQztRQUNyRCxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzFDLENBQUMsQ0FBQzs7SUFFSCxNQUFNLGNBQWMsR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFFcEYsRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsMERBQTBELENBQUMsQ0FBQztLQUMvRTtJQUVELEVBQUUsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRCxNQUFNLElBQUksS0FBSyxDQUFDLDBFQUEwRSxDQUFDLENBQUM7S0FDL0Y7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDO0NBQ3pCOztBQUVELE1BQU0sTUFBTSxHQUFHLEdBQUcsRUFBRSxJQUFJLENBQUM7Ozs7Ozs7Ozs7O0FBRXpCLE1BQU0sMkJBQTJCLFFBQWEsRUFBRSxhQUFrQixFQUFFLFFBQWdCLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFROztJQUMzRyxNQUFNLGNBQWMsR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7O0lBQy9DLE1BQU0sU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUVyQixFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzlELE1BQU0sQ0FBQyxNQUFNLENBQUM7S0FDakI7SUFFRCxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBZ0IsRUFBRSxFQUFFO1FBQ3hDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDakMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7U0FDMUU7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNKLFNBQVMsQ0FBQyxJQUFJLENBQ1YsUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDckg7S0FDSixDQUFDLENBQUM7SUFFSCxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0NBQ3pFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEFuZ3VsYXIgbmctYm9vdHN0cmFwIHRlYW0gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcC9tYXN0ZXIvTElDRU5TRVxuICovXG5leHBvcnQgY2xhc3MgVHJpZ2dlciB7XG4gICAgY29uc3RydWN0b3IocHVibGljIG9wZW46IHN0cmluZywgcHVibGljIGNsb3NlPzogc3RyaW5nKSB7XG4gICAgICAgIGlmICghY2xvc2UpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2UgPSBvcGVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNNYW51YWwoKSB7IHJldHVybiB0aGlzLm9wZW4gPT09ICdtYW51YWwnIHx8IHRoaXMuY2xvc2UgPT09ICdtYW51YWwnOyB9XG59XG5cbmNvbnN0IERFRkFVTFRfQUxJQVNFUyA9IHtcbiAgICAnaG92ZXInOiBbJ21vdXNlZW50ZXInLCAnbW91c2VsZWF2ZSddLFxuICAgICdmb2N1cyc6IFsnZm9jdXMnLCAnYmx1ciddXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VUcmlnZ2Vycyh0cmlnZ2Vyczogc3RyaW5nLCBhbGlhc2VzID0gREVGQVVMVF9BTElBU0VTKTogVHJpZ2dlcltdIHtcbiAgICBjb25zdCB0cmltbWVkVHJpZ2dlcnMgPSAodHJpZ2dlcnMgfHwgJycpLnRyaW0oKTtcblxuICAgIGlmICh0cmltbWVkVHJpZ2dlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJzZWRUcmlnZ2VycyA9IHRyaW1tZWRUcmlnZ2Vycy5zcGxpdCgvXFxzKy8pLm1hcCh0cmlnZ2VyID0+IHRyaWdnZXIuc3BsaXQoJzonKSkubWFwKCh0cmlnZ2VyUGFpcikgPT4ge1xuICAgICAgICBjb25zdCBhbGlhcyA9IGFsaWFzZXNbdHJpZ2dlclBhaXJbMF1dIHx8IHRyaWdnZXJQYWlyO1xuICAgICAgICByZXR1cm4gbmV3IFRyaWdnZXIoYWxpYXNbMF0sIGFsaWFzWzFdKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IG1hbnVhbFRyaWdnZXJzID0gcGFyc2VkVHJpZ2dlcnMuZmlsdGVyKHRyaWdnZXJQYWlyID0+IHRyaWdnZXJQYWlyLmlzTWFudWFsKCkpO1xuXG4gICAgaWYgKG1hbnVhbFRyaWdnZXJzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcmlnZ2VycyBwYXJzZSBlcnJvcjogb25seSBvbmUgbWFudWFsIHRyaWdnZXIgaXMgYWxsb3dlZCcpO1xuICAgIH1cblxuICAgIGlmIChtYW51YWxUcmlnZ2Vycy5sZW5ndGggPT09IDEgJiYgcGFyc2VkVHJpZ2dlcnMubGVuZ3RoID4gMSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RyaWdnZXJzIHBhcnNlIGVycm9yOiBtYW51YWwgdHJpZ2dlciBjYW5cXCd0IGJlIG1peGVkIHdpdGggb3RoZXIgdHJpZ2dlcnMnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyc2VkVHJpZ2dlcnM7XG59XG5cbmNvbnN0IG5vb3BGbiA9ICgpID0+IHsgfTtcblxuZXhwb3J0IGZ1bmN0aW9uIGxpc3RlblRvVHJpZ2dlcnMocmVuZGVyZXI6IGFueSwgbmF0aXZlRWxlbWVudDogYW55LCB0cmlnZ2Vyczogc3RyaW5nLCBvcGVuRm4sIGNsb3NlRm4sIHRvZ2dsZUZuKSB7XG4gICAgY29uc3QgcGFyc2VkVHJpZ2dlcnMgPSBwYXJzZVRyaWdnZXJzKHRyaWdnZXJzKTtcbiAgICBjb25zdCBsaXN0ZW5lcnMgPSBbXTtcblxuICAgIGlmIChwYXJzZWRUcmlnZ2Vycy5sZW5ndGggPT09IDEgJiYgcGFyc2VkVHJpZ2dlcnNbMF0uaXNNYW51YWwoKSkge1xuICAgICAgICByZXR1cm4gbm9vcEZuO1xuICAgIH1cblxuICAgIHBhcnNlZFRyaWdnZXJzLmZvckVhY2goKHRyaWdnZXI6IFRyaWdnZXIpID0+IHtcbiAgICAgICAgaWYgKHRyaWdnZXIub3BlbiA9PT0gdHJpZ2dlci5jbG9zZSkge1xuICAgICAgICAgICAgbGlzdGVuZXJzLnB1c2gocmVuZGVyZXIubGlzdGVuKG5hdGl2ZUVsZW1lbnQsIHRyaWdnZXIub3BlbiwgdG9nZ2xlRm4pKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxpc3RlbmVycy5wdXNoKFxuICAgICAgICAgICAgICAgIHJlbmRlcmVyLmxpc3RlbihuYXRpdmVFbGVtZW50LCB0cmlnZ2VyLm9wZW4sIG9wZW5GbiksIHJlbmRlcmVyLmxpc3RlbihuYXRpdmVFbGVtZW50LCB0cmlnZ2VyLmNsb3NlLCBjbG9zZUZuKSk7XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiAoKSA9PiB7IGxpc3RlbmVycy5mb3JFYWNoKHVuc3Vic2NyaWJlRm4gPT4gdW5zdWJzY3JpYmVGbigpKTsgfTtcbn1cbiJdfQ==
@@ -1,30 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
4
- */
5
- export class Util {
6
- /**
7
- * @param {?} value
8
- * @return {?}
9
- */
10
- static coerceBooleanProperty(value) {
11
- return value != null && `${value}` !== 'false';
12
- }
13
- /**
14
- * @param {?} value
15
- * @param {?=} fallbackValue
16
- * @return {?}
17
- */
18
- static coerceNumberProperty(value, fallbackValue = 0) {
19
- return Util._isNumberValue(value) ? Number(value) : fallbackValue;
20
- }
21
- /**
22
- * @param {?} value
23
- * @return {?}
24
- */
25
- static _isNumberValue(value) {
26
- return !isNaN(parseFloat(/** @type {?} */ (value))) && !isNaN(Number(value));
27
- }
28
- }
29
-
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2Rlc2lnbi1hbmd1bGFyLWtpdC8iLCJzb3VyY2VzIjpbImxpYi91dGlsL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE1BQU07Ozs7O0lBQ0osTUFBTSxDQUFDLHFCQUFxQixDQUFDLEtBQVU7UUFDckMsTUFBTSxDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksR0FBRyxLQUFLLEVBQUUsS0FBSyxPQUFPLENBQUM7S0FDaEQ7Ozs7OztJQUVELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFVLEVBQUUsYUFBYSxHQUFHLENBQUM7UUFDdkQsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO0tBQ25FOzs7OztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBVTtRQUM5QixNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxtQkFBQyxLQUFZLEVBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0tBRWxFO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVXRpbCB7XG4gIHN0YXRpYyBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB2YWx1ZSAhPSBudWxsICYmIGAke3ZhbHVlfWAgIT09ICdmYWxzZSc7XG4gIH1cblxuICBzdGF0aWMgY29lcmNlTnVtYmVyUHJvcGVydHkodmFsdWU6IGFueSwgZmFsbGJhY2tWYWx1ZSA9IDApOiBudW1iZXIge1xuICAgIHJldHVybiBVdGlsLl9pc051bWJlclZhbHVlKHZhbHVlKSA/IE51bWJlcih2YWx1ZSkgOiBmYWxsYmFja1ZhbHVlO1xuICB9XG5cbiAgc3RhdGljIF9pc051bWJlclZhbHVlKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIWlzTmFOKHBhcnNlRmxvYXQodmFsdWUgYXMgYW55KSkgJiYgIWlzTmFOKE51bWJlcih2YWx1ZSkpO1xuXG4gIH1cbn1cbiJdfQ==
@@ -1,31 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
4
- */
5
- /*
6
- * Public API Surface of design-angular-kit
7
- */
8
- export { ProgressBarComponent } from './lib/progress-bar/progress-bar.component';
9
- export { CheckboxChange, CheckboxComponent } from './lib/checkbox/checkbox.component';
10
- export { PopoverDirective } from './lib/popover/popover.directive';
11
- export { PopoverConfig } from './lib/popover/popover.config';
12
- export { ToggleChange, ToggleComponent } from './lib/toggle/toggle.component';
13
- export { RadioChange, RadioGroupDirective, RadioButtonComponent } from './lib/radio/radio.component';
14
- export { TooltipDirective } from './lib/tooltip/tooltip.directive';
15
- export { TooltipConfig } from './lib/tooltip/tooltip.config';
16
- export { ButtonComponent } from './lib/button/button.component';
17
- export { BadgeDirective } from './lib/badge/badge.directive';
18
- export { CollapseDirective } from './lib/collapse/collapse.directive';
19
- export { CollapseItemComponent } from './lib/collapse/collapse-item.component';
20
- export { CollapseGroupComponent } from './lib/collapse/collapse-group.component';
21
- export { FormInputChange, FormInputComponent } from './lib/form-input/form-input.component';
22
- export { DropdownComponent } from './lib/dropdown/dropdown.component';
23
- export { DropdownItemComponent } from './lib/dropdown/dropdown-item.component';
24
- export { DropdownHeaderComponent } from './lib/dropdown/dropdown-header.component';
25
- export { DropdownDividerComponent } from './lib/dropdown/dropdown-divider.component';
26
- export { BreadcrumbComponent } from './lib/breadcrumb/breadcrumb.component';
27
- export { BreadcrumbItemComponent } from './lib/breadcrumb/breadcrumb-item.component';
28
- export { TabChangeEvent, TabGroupComponent } from './lib/tabs/tab-group.component';
29
- export { DesignAngularKitModule } from './lib/design-angular-kit.module';
30
-
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2Rlc2lnbi1hbmd1bGFyLWtpdC8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHFDQUFjLDJDQUEyQyxDQUFDO0FBQzFELGtEQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGlDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDhCQUFjLDhCQUE4QixDQUFDO0FBQzdDLDhDQUFjLCtCQUErQixDQUFDO0FBQzlDLHVFQUFjLDZCQUE2QixDQUFDO0FBQzVDLGlDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDhCQUFjLDhCQUE4QixDQUFDO0FBQzdDLGdDQUFjLCtCQUErQixDQUFDO0FBQzlDLCtCQUFjLDZCQUE2QixDQUFDO0FBQzVDLGtDQUFjLG1DQUFtQyxDQUFDO0FBQ2xELHNDQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELHVDQUFjLHlDQUF5QyxDQUFDO0FBQ3hELG9EQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGtDQUFjLG1DQUFtQyxDQUFDO0FBQ2xELHNDQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELHdDQUFjLDBDQUEwQyxDQUFDO0FBQ3pELHlDQUFjLDJDQUEyQyxDQUFDO0FBQzFELG9DQUFjLHVDQUF1QyxDQUFDO0FBQ3RELHdDQUFjLDRDQUE0QyxDQUFDO0FBQzNELGtEQUFjLGdDQUFnQyxDQUFDO0FBQy9DLHVDQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBkZXNpZ24tYW5ndWxhci1raXRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcG9wb3Zlci9wb3BvdmVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wb3BvdmVyL3BvcG92ZXIuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RvZ2dsZS90b2dnbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rvb2x0aXAvdG9vbHRpcC5jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYmFkZ2UvYmFkZ2UuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbGxhcHNlL2NvbGxhcHNlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb2xsYXBzZS9jb2xsYXBzZS1pdGVtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb2xsYXBzZS9jb2xsYXBzZS1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9ybS1pbnB1dC9mb3JtLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24vZHJvcGRvd24taXRlbS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24vZHJvcGRvd24taGVhZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi9kcm9wZG93bi1kaXZpZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJzL3RhYi1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGVzaWduLWFuZ3VsYXIta2l0Lm1vZHVsZSc7XG4iXX0=
@@ -1,14 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
4
- */
5
- /**
6
- * Generated bundle index. Do not edit.
7
- */
8
- export { ProgressBarComponent, CheckboxChange, CheckboxComponent, PopoverDirective, PopoverConfig, ToggleChange, ToggleComponent, RadioChange, RadioGroupDirective, RadioButtonComponent, TooltipDirective, TooltipConfig, ButtonComponent, BadgeDirective, CollapseDirective, CollapseItemComponent, CollapseGroupComponent, FormInputChange, FormInputComponent, DropdownComponent, DropdownItemComponent, DropdownHeaderComponent, DropdownDividerComponent, BreadcrumbComponent, BreadcrumbItemComponent, TabChangeEvent, TabGroupComponent, DesignAngularKitModule } from './public_api';
9
- export { PopoverComponent as ɵd } from './lib/popover/popover.component';
10
- export { UniqueSelectionDispatcher as ɵa } from './lib/radio/unique-selection-dispatcher';
11
- export { TabComponent as ɵb } from './lib/tabs/tab.component';
12
- export { TooltipComponent as ɵc } from './lib/tooltip/tooltip.component';
13
-
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduLWFuZ3VsYXIta2l0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vZGVzaWduLWFuZ3VsYXIta2l0LyIsInNvdXJjZXMiOlsiZGVzaWduLWFuZ3VsYXIta2l0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwraUJBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDeEYsT0FBTyxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0saUNBQWlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7UG9wb3ZlckNvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQnO1xuZXhwb3J0IHtVbmlxdWVTZWxlY3Rpb25EaXNwYXRjaGVyIGFzIMm1YX0gZnJvbSAnLi9saWIvcmFkaW8vdW5pcXVlLXNlbGVjdGlvbi1kaXNwYXRjaGVyJztcbmV4cG9ydCB7VGFiQ29tcG9uZW50IGFzIMm1Yn0gZnJvbSAnLi9saWIvdGFicy90YWIuY29tcG9uZW50JztcbmV4cG9ydCB7VG9vbHRpcENvbXBvbmVudCBhcyDJtWN9IGZyb20gJy4vbGliL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQnOyJdfQ==