@progress/kendo-angular-buttons 7.0.0-next.202111120840 → 7.0.2-dev.202201201235

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 (283) hide show
  1. package/LICENSE.md +1 -1
  2. package/NOTICE.txt +119 -79
  3. package/README.md +1 -1
  4. package/dist/cdn/js/kendo-angular-buttons.js +20 -0
  5. package/dist/cdn/main.js +5 -0
  6. package/dist/es/button/button.directive.js +769 -0
  7. package/{esm2015 → dist/es}/button/button.module.js +13 -13
  8. package/dist/es/button/button.service.js +24 -0
  9. package/{esm2015 → dist/es}/button/selection-settings.js +0 -1
  10. package/dist/es/buttongroup/buttongroup.component.js +353 -0
  11. package/dist/es/buttongroup/buttongroup.module.js +30 -0
  12. package/{esm2015 → dist/es}/buttons.module.js +12 -12
  13. package/{esm2015 → dist/es}/chip/chip-content-click-event-args.interface.js +0 -1
  14. package/{esm2015 → dist/es}/chip/chip-list-remove-event-args.interface.js +0 -1
  15. package/dist/es/chip/chip-list.component.js +214 -0
  16. package/{esm2015 → dist/es}/chip/chip-remove-event-args.interface.js +0 -1
  17. package/dist/es/chip/chip.component.js +449 -0
  18. package/dist/es/chip/chip.module.js +55 -0
  19. package/{esm2015 → dist/es}/chip/models/selection.js +0 -1
  20. package/dist/es/common/models/fillmode.js +4 -0
  21. package/dist/es/common/models/rounded.js +4 -0
  22. package/{esm2015 → dist/es}/common/models/shape.js +0 -1
  23. package/{esm2015 → dist/es}/common/models/size.js +0 -1
  24. package/dist/es/common/models/styling-classes.js +4 -0
  25. package/{esm2015 → dist/es}/common/models/theme-color.js +0 -1
  26. package/{esm2015/button-look.js → dist/es/common/models.js} +0 -1
  27. package/{esm2015 → dist/es}/direction.js +0 -1
  28. package/dist/es/dropdownbutton/dropdownbutton.component.js +704 -0
  29. package/dist/es/dropdownbutton/dropdownbutton.module.js +32 -0
  30. package/dist/es/floatingactionbutton/animations/animations.js +33 -0
  31. package/dist/es/floatingactionbutton/dial-item.component.js +143 -0
  32. package/dist/es/floatingactionbutton/dial-list.component.js +76 -0
  33. package/dist/es/floatingactionbutton/floatingactionbutton.component.js +903 -0
  34. package/dist/es/floatingactionbutton/floatingactionbutton.module.js +65 -0
  35. package/{esm2015 → dist/es}/floatingactionbutton/models/align.js +0 -1
  36. package/{esm2015 → dist/es}/floatingactionbutton/models/item-animation.interface.js +0 -1
  37. package/{esm2015 → dist/es}/floatingactionbutton/models/item-click.event.js +0 -1
  38. package/{esm2015 → dist/es}/floatingactionbutton/models/item.interface.js +0 -1
  39. package/{esm2015 → dist/es}/floatingactionbutton/models/offset.js +0 -1
  40. package/{esm2015 → dist/es}/floatingactionbutton/models/position-mode.js +0 -1
  41. package/dist/es/floatingactionbutton/templates/dial-item-template.directive.js +26 -0
  42. package/dist/es/floatingactionbutton/templates/fab-template.directive.js +26 -0
  43. package/dist/es/floatingactionbutton/utils.js +38 -0
  44. package/dist/es/focusable/focus.service.js +43 -0
  45. package/dist/es/focusable/focusable.directive.js +68 -0
  46. package/dist/es/index.js +22 -0
  47. package/dist/es/listbutton/button-item-template.directive.js +68 -0
  48. package/dist/es/listbutton/list-button.js +243 -0
  49. package/{esm2015 → dist/es}/listbutton/list-item-model.js +0 -1
  50. package/dist/es/listbutton/list.component.js +85 -0
  51. package/dist/es/listbutton/list.module.js +33 -0
  52. package/{esm2015 → dist/es}/listbutton/popup-settings.js +0 -1
  53. package/dist/es/listbutton/template-context.directive.js +40 -0
  54. package/{esm2015 → dist/es}/main.js +1 -5
  55. package/{esm2015 → dist/es}/navigation/key-events.js +0 -0
  56. package/{esm2015 → dist/es}/navigation/navigation-action.js +0 -0
  57. package/dist/es/navigation/navigation-config.js +9 -0
  58. package/dist/es/navigation/navigation.service.js +114 -0
  59. package/dist/es/package-metadata.js +15 -0
  60. package/dist/es/preventable-event.js +29 -0
  61. package/dist/es/splitbutton/localization/custom-messages.component.js +44 -0
  62. package/dist/es/splitbutton/localization/localized-messages.directive.js +35 -0
  63. package/dist/es/splitbutton/localization/messages.js +22 -0
  64. package/dist/es/splitbutton/splitbutton.component.js +830 -0
  65. package/dist/es/splitbutton/splitbutton.module.js +34 -0
  66. package/dist/es/util.js +97 -0
  67. package/{button → dist/es2015/button}/button.directive.d.ts +101 -46
  68. package/dist/es2015/button/button.directive.js +671 -0
  69. package/{button → dist/es2015/button}/button.module.d.ts +0 -5
  70. package/dist/es2015/button/button.module.js +47 -0
  71. package/{button → dist/es2015/button}/button.service.d.ts +1 -7
  72. package/dist/es2015/button/button.service.js +26 -0
  73. package/{button → dist/es2015/button}/selection-settings.d.ts +0 -0
  74. package/dist/es2015/button/selection-settings.js +4 -0
  75. package/{buttongroup → dist/es2015/buttongroup}/buttongroup.component.d.ts +9 -28
  76. package/{esm2015 → dist/es2015}/buttongroup/buttongroup.component.js +116 -121
  77. package/dist/es2015/buttongroup/buttongroup.module.d.ts +14 -0
  78. package/dist/es2015/buttongroup/buttongroup.module.js +27 -0
  79. package/{buttons.module.d.ts → dist/es2015/buttons.module.d.ts} +0 -10
  80. package/dist/es2015/buttons.module.js +51 -0
  81. package/{chip → dist/es2015/chip}/chip-content-click-event-args.interface.d.ts +0 -0
  82. package/dist/es2015/chip/chip-content-click-event-args.interface.js +4 -0
  83. package/{chip → dist/es2015/chip}/chip-list-remove-event-args.interface.d.ts +0 -0
  84. package/dist/es2015/chip/chip-list-remove-event-args.interface.js +4 -0
  85. package/{chip → dist/es2015/chip}/chip-list.component.d.ts +21 -8
  86. package/dist/es2015/chip/chip-list.component.js +197 -0
  87. package/{chip → dist/es2015/chip}/chip-remove-event-args.interface.d.ts +0 -0
  88. package/dist/es2015/chip/chip-remove-event-args.interface.js +4 -0
  89. package/{chip → dist/es2015/chip}/chip.component.d.ts +72 -38
  90. package/dist/es2015/chip/chip.component.js +431 -0
  91. package/{chip → dist/es2015/chip}/chip.module.d.ts +0 -7
  92. package/{esm2015 → dist/es2015}/chip/chip.module.js +11 -16
  93. package/{chip → dist/es2015/chip}/models/selection.d.ts +0 -0
  94. package/dist/es2015/chip/models/selection.js +4 -0
  95. package/{util.d.ts → dist/es2015/common/models/fillmode.d.ts} +4 -8
  96. package/dist/es2015/common/models/fillmode.js +4 -0
  97. package/dist/es2015/common/models/rounded.d.ts +12 -0
  98. package/dist/es2015/common/models/rounded.js +4 -0
  99. package/dist/es2015/common/models/shape.d.ts +9 -0
  100. package/dist/es2015/common/models/shape.js +4 -0
  101. package/dist/es2015/common/models/size.d.ts +17 -0
  102. package/dist/es2015/common/models/size.js +4 -0
  103. package/{esm2015/kendo-angular-buttons.js → dist/es2015/common/models/styling-classes.d.ts} +5 -2
  104. package/dist/es2015/common/models/styling-classes.js +4 -0
  105. package/{common → dist/es2015/common}/models/theme-color.d.ts +15 -4
  106. package/dist/es2015/common/models/theme-color.js +4 -0
  107. package/{common/models/size.d.ts → dist/es2015/common/models.d.ts} +6 -10
  108. package/dist/es2015/common/models.js +4 -0
  109. package/{direction.d.ts → dist/es2015/direction.d.ts} +0 -0
  110. package/dist/es2015/direction.js +4 -0
  111. package/{dropdownbutton → dist/es2015/dropdownbutton}/dropdownbutton.component.d.ts +74 -29
  112. package/{esm2015 → dist/es2015}/dropdownbutton/dropdownbutton.component.js +257 -179
  113. package/dist/es2015/dropdownbutton/dropdownbutton.module.d.ts +14 -0
  114. package/dist/es2015/dropdownbutton/dropdownbutton.module.js +29 -0
  115. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/animations/animations.d.ts +0 -0
  116. package/{esm2015 → dist/es2015}/floatingactionbutton/animations/animations.js +0 -0
  117. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/dial-item.component.d.ts +5 -8
  118. package/dist/es2015/floatingactionbutton/dial-item.component.js +133 -0
  119. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/dial-list.component.d.ts +2 -5
  120. package/dist/es2015/floatingactionbutton/dial-list.component.js +81 -0
  121. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/floatingactionbutton.component.d.ts +47 -49
  122. package/{esm2015 → dist/es2015}/floatingactionbutton/floatingactionbutton.component.js +212 -192
  123. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/floatingactionbutton.module.d.ts +0 -13
  124. package/{esm2015 → dist/es2015}/floatingactionbutton/floatingactionbutton.module.js +11 -19
  125. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/align.d.ts +0 -0
  126. package/dist/es2015/floatingactionbutton/models/align.js +4 -0
  127. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/item-animation.interface.d.ts +0 -0
  128. package/dist/es2015/floatingactionbutton/models/item-animation.interface.js +4 -0
  129. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/item-click.event.d.ts +0 -0
  130. package/dist/es2015/floatingactionbutton/models/item-click.event.js +4 -0
  131. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/item.interface.d.ts +0 -0
  132. package/dist/es2015/floatingactionbutton/models/item.interface.js +4 -0
  133. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/offset.d.ts +0 -0
  134. package/dist/es2015/floatingactionbutton/models/offset.js +4 -0
  135. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/position-mode.d.ts +0 -0
  136. package/dist/es2015/floatingactionbutton/models/position-mode.js +4 -0
  137. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/templates/dial-item-template.directive.d.ts +0 -3
  138. package/dist/es2015/floatingactionbutton/templates/dial-item-template.directive.js +25 -0
  139. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/templates/fab-template.directive.d.ts +0 -3
  140. package/dist/es2015/floatingactionbutton/templates/fab-template.directive.js +25 -0
  141. package/{floatingactionbutton → dist/es2015/floatingactionbutton}/utils.d.ts +0 -0
  142. package/{esm2015 → dist/es2015}/floatingactionbutton/utils.js +0 -0
  143. package/{focusable → dist/es2015/focusable}/focus.service.d.ts +1 -5
  144. package/{esm2015 → dist/es2015}/focusable/focus.service.js +10 -8
  145. package/{focusable → dist/es2015/focusable}/focusable.directive.d.ts +0 -3
  146. package/{esm2015 → dist/es2015}/focusable/focusable.directive.js +20 -19
  147. package/dist/es2015/index.d.ts +22 -0
  148. package/dist/es2015/index.js +22 -0
  149. package/dist/es2015/index.metadata.json +1 -0
  150. package/{listbutton → dist/es2015/listbutton}/button-item-template.directive.d.ts +0 -3
  151. package/{esm2015 → dist/es2015}/listbutton/button-item-template.directive.js +12 -13
  152. package/{listbutton → dist/es2015/listbutton}/list-button.d.ts +2 -6
  153. package/{esm2015 → dist/es2015}/listbutton/list-button.js +6 -16
  154. package/{listbutton → dist/es2015/listbutton}/list-item-model.d.ts +0 -0
  155. package/dist/es2015/listbutton/list-item-model.js +4 -0
  156. package/{listbutton → dist/es2015/listbutton}/list.component.d.ts +3 -3
  157. package/dist/es2015/listbutton/list.component.js +113 -0
  158. package/dist/es2015/listbutton/list.module.d.ts +9 -0
  159. package/dist/es2015/listbutton/list.module.js +30 -0
  160. package/{listbutton → dist/es2015/listbutton}/popup-settings.d.ts +0 -0
  161. package/dist/es2015/listbutton/popup-settings.js +4 -0
  162. package/{listbutton → dist/es2015/listbutton}/template-context.directive.d.ts +1 -4
  163. package/dist/es2015/listbutton/template-context.directive.js +35 -0
  164. package/{main.d.ts → dist/es2015/main.d.ts} +5 -9
  165. package/dist/es2015/main.js +22 -0
  166. package/{navigation → dist/es2015/navigation}/key-events.d.ts +0 -0
  167. package/dist/es2015/navigation/key-events.js +13 -0
  168. package/{navigation → dist/es2015/navigation}/navigation-action.d.ts +0 -0
  169. package/dist/es2015/navigation/navigation-action.js +19 -0
  170. package/{navigation → dist/es2015/navigation}/navigation-config.d.ts +0 -0
  171. package/{esm2015 → dist/es2015}/navigation/navigation-config.js +0 -0
  172. package/{navigation → dist/es2015/navigation}/navigation.service.d.ts +0 -3
  173. package/{esm2015 → dist/es2015}/navigation/navigation.service.js +9 -11
  174. package/{package-metadata.d.ts → dist/es2015/package-metadata.d.ts} +0 -0
  175. package/{esm2015 → dist/es2015}/package-metadata.js +1 -1
  176. package/{preventable-event.d.ts → dist/es2015/preventable-event.d.ts} +0 -0
  177. package/{esm2015 → dist/es2015}/preventable-event.js +0 -0
  178. package/dist/es2015/splitbutton/localization/custom-messages.component.d.ts +15 -0
  179. package/dist/es2015/splitbutton/localization/custom-messages.component.js +36 -0
  180. package/dist/es2015/splitbutton/localization/localized-messages.directive.d.ts +13 -0
  181. package/dist/es2015/splitbutton/localization/localized-messages.directive.js +31 -0
  182. package/dist/es2015/splitbutton/localization/messages.d.ts +32 -0
  183. package/dist/es2015/splitbutton/localization/messages.js +16 -0
  184. package/{splitbutton → dist/es2015/splitbutton}/splitbutton.component.d.ts +74 -34
  185. package/{esm2015 → dist/es2015}/splitbutton/splitbutton.component.js +288 -203
  186. package/dist/es2015/splitbutton/splitbutton.module.d.ts +14 -0
  187. package/dist/es2015/splitbutton/splitbutton.module.js +31 -0
  188. package/dist/es2015/util.d.ts +41 -0
  189. package/dist/es2015/util.js +95 -0
  190. package/{fesm2015/kendo-angular-buttons.js → dist/fesm2015/index.js} +2394 -1838
  191. package/dist/fesm5/index.js +5561 -0
  192. package/dist/npm/button/button.directive.js +771 -0
  193. package/dist/npm/button/button.module.js +52 -0
  194. package/dist/npm/button/button.service.js +26 -0
  195. package/dist/npm/button/selection-settings.js +6 -0
  196. package/dist/npm/buttongroup/buttongroup.component.js +355 -0
  197. package/dist/npm/buttongroup/buttongroup.module.js +32 -0
  198. package/dist/npm/buttons.module.js +56 -0
  199. package/dist/npm/chip/chip-content-click-event-args.interface.js +6 -0
  200. package/dist/npm/chip/chip-list-remove-event-args.interface.js +6 -0
  201. package/dist/npm/chip/chip-list.component.js +216 -0
  202. package/dist/npm/chip/chip-remove-event-args.interface.js +6 -0
  203. package/dist/npm/chip/chip.component.js +451 -0
  204. package/dist/npm/chip/chip.module.js +57 -0
  205. package/dist/npm/chip/models/selection.js +6 -0
  206. package/dist/npm/common/models/fillmode.js +6 -0
  207. package/dist/npm/common/models/rounded.js +6 -0
  208. package/dist/npm/common/models/shape.js +6 -0
  209. package/dist/npm/common/models/size.js +6 -0
  210. package/dist/npm/common/models/styling-classes.js +6 -0
  211. package/dist/npm/common/models/theme-color.js +6 -0
  212. package/dist/npm/common/models.js +6 -0
  213. package/dist/npm/direction.js +6 -0
  214. package/dist/npm/dropdownbutton/dropdownbutton.component.js +706 -0
  215. package/dist/npm/dropdownbutton/dropdownbutton.module.js +34 -0
  216. package/dist/npm/floatingactionbutton/animations/animations.js +37 -0
  217. package/dist/npm/floatingactionbutton/dial-item.component.js +145 -0
  218. package/dist/npm/floatingactionbutton/dial-list.component.js +78 -0
  219. package/dist/npm/floatingactionbutton/floatingactionbutton.component.js +905 -0
  220. package/dist/npm/floatingactionbutton/floatingactionbutton.module.js +67 -0
  221. package/dist/npm/floatingactionbutton/models/align.js +6 -0
  222. package/dist/npm/floatingactionbutton/models/item-animation.interface.js +6 -0
  223. package/dist/npm/floatingactionbutton/models/item-click.event.js +6 -0
  224. package/dist/npm/floatingactionbutton/models/item.interface.js +6 -0
  225. package/dist/npm/floatingactionbutton/models/offset.js +6 -0
  226. package/dist/npm/floatingactionbutton/models/position-mode.js +6 -0
  227. package/dist/npm/floatingactionbutton/templates/dial-item-template.directive.js +28 -0
  228. package/dist/npm/floatingactionbutton/templates/fab-template.directive.js +28 -0
  229. package/dist/npm/floatingactionbutton/utils.js +42 -0
  230. package/dist/npm/focusable/focus.service.js +45 -0
  231. package/dist/npm/focusable/focusable.directive.js +70 -0
  232. package/dist/npm/index.js +39 -0
  233. package/dist/npm/listbutton/button-item-template.directive.js +70 -0
  234. package/dist/npm/listbutton/list-button.js +245 -0
  235. package/dist/npm/listbutton/list-item-model.js +6 -0
  236. package/dist/npm/listbutton/list.component.js +87 -0
  237. package/dist/npm/listbutton/list.module.js +35 -0
  238. package/dist/npm/listbutton/popup-settings.js +6 -0
  239. package/dist/npm/listbutton/template-context.directive.js +42 -0
  240. package/dist/npm/main.js +45 -0
  241. package/dist/npm/navigation/key-events.js +15 -0
  242. package/dist/npm/navigation/navigation-action.js +21 -0
  243. package/dist/npm/navigation/navigation-config.js +11 -0
  244. package/dist/npm/navigation/navigation.service.js +116 -0
  245. package/dist/npm/package-metadata.js +17 -0
  246. package/dist/npm/preventable-event.js +31 -0
  247. package/dist/npm/splitbutton/localization/custom-messages.component.js +46 -0
  248. package/dist/npm/splitbutton/localization/localized-messages.directive.js +37 -0
  249. package/dist/npm/splitbutton/localization/messages.js +24 -0
  250. package/dist/npm/splitbutton/splitbutton.component.js +832 -0
  251. package/dist/npm/splitbutton/splitbutton.module.js +36 -0
  252. package/dist/npm/util.js +100 -0
  253. package/dist/systemjs/kendo-angular-buttons.js +5 -0
  254. package/package.json +110 -35
  255. package/schematics/ngAdd/index.js +2 -5
  256. package/schematics/ngAdd/index.js.map +1 -1
  257. package/bundles/kendo-angular-buttons.umd.js +0 -5
  258. package/button-look.d.ts +0 -21
  259. package/buttongroup/buttongroup.module.d.ts +0 -21
  260. package/chip/models/chip-look.d.ts +0 -18
  261. package/chip/models/type.d.ts +0 -21
  262. package/common/models/shape.d.ts +0 -16
  263. package/dropdownbutton/dropdownbutton.module.d.ts +0 -23
  264. package/esm2015/button/button.directive.js +0 -488
  265. package/esm2015/button/button.service.js +0 -28
  266. package/esm2015/buttongroup/buttongroup.module.js +0 -30
  267. package/esm2015/chip/chip-list.component.js +0 -145
  268. package/esm2015/chip/chip.component.js +0 -335
  269. package/esm2015/chip/models/chip-look.js +0 -5
  270. package/esm2015/chip/models/type.js +0 -5
  271. package/esm2015/dropdownbutton/dropdownbutton.module.js +0 -32
  272. package/esm2015/floatingactionbutton/dial-item.component.js +0 -126
  273. package/esm2015/floatingactionbutton/dial-list.component.js +0 -89
  274. package/esm2015/floatingactionbutton/templates/dial-item-template.directive.js +0 -27
  275. package/esm2015/floatingactionbutton/templates/fab-template.directive.js +0 -27
  276. package/esm2015/listbutton/list.component.js +0 -120
  277. package/esm2015/listbutton/list.module.js +0 -39
  278. package/esm2015/listbutton/template-context.directive.js +0 -33
  279. package/esm2015/splitbutton/splitbutton.module.js +0 -32
  280. package/esm2015/util.js +0 -39
  281. package/kendo-angular-buttons.d.ts +0 -9
  282. package/listbutton/list.module.d.ts +0 -18
  283. package/splitbutton/splitbutton.module.d.ts +0 -23
@@ -0,0 +1,704 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ /* tslint:disable:no-access-missing-member */
7
+ import { Component, ContentChild, TemplateRef, ViewChild, ViewContainerRef, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output, NgZone, ChangeDetectorRef } from '@angular/core';
8
+ import { LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
9
+ import { PopupService } from '@progress/kendo-angular-popup';
10
+ import { isDocumentAvailable, guid, Keys, isChanged } from '@progress/kendo-angular-common';
11
+ import { ButtonItemTemplateDirective } from '../listbutton/button-item-template.directive';
12
+ import { isPresent, tick } from '../util';
13
+ import { ListButton } from '../listbutton/list-button';
14
+ import { ListComponent } from '../listbutton/list.component';
15
+ import { FocusService } from '../focusable/focus.service';
16
+ import { NavigationService } from '../navigation/navigation.service';
17
+ import { NAVIGATION_CONFIG } from '../navigation/navigation-config';
18
+ import { PreventableEvent } from '../preventable-event';
19
+ import { merge } from 'rxjs';
20
+ var NAVIGATION_SETTINGS = {
21
+ useLeftRightArrows: true
22
+ };
23
+ var ɵ0 = NAVIGATION_SETTINGS;
24
+ var NAVIGATION_SETTINGS_PROVIDER = {
25
+ provide: NAVIGATION_CONFIG,
26
+ useValue: ɵ0
27
+ };
28
+ /**
29
+ * Represents the Kendo UI DropDownButton component for Angular.
30
+ *
31
+ * @example
32
+ * ```ts
33
+ * _@Component({
34
+ * selector: 'my-app',
35
+ * template: `
36
+ * <kendo-dropdownbutton [data]="data">
37
+ * User Settings
38
+ * </kendo-dropdownbutton>
39
+ * `
40
+ * })
41
+ * class AppComponent {
42
+ * public data: Array<any> = [{
43
+ * text: 'My Profile'
44
+ * }, {
45
+ * text: 'Friend Requests'
46
+ * }, {
47
+ * text: 'Account Settings'
48
+ * }, {
49
+ * text: 'Support'
50
+ * }, {
51
+ * text: 'Log Out'
52
+ * }];
53
+ * }
54
+ * ```
55
+ */
56
+ var DropDownButtonComponent = /** @class */ (function (_super) {
57
+ tslib_1.__extends(DropDownButtonComponent, _super);
58
+ function DropDownButtonComponent(focusService, navigationService, wrapperRef, zone, popupService, elRef, localization, cdr) {
59
+ var _this = _super.call(this, focusService, navigationService, wrapperRef, zone, localization, cdr) || this;
60
+ _this.popupService = popupService;
61
+ _this.elRef = elRef;
62
+ /**
63
+ * Defines the name of an existing icon in a Kendo UI theme.
64
+ */
65
+ _this.icon = '';
66
+ /**
67
+ * Defines the list of CSS classes which are used for styling the Button with custom icons.
68
+ */
69
+ _this.iconClass = '';
70
+ /**
71
+ * Defines a URL for styling the button with a custom image.
72
+ */
73
+ _this.imageUrl = '';
74
+ /**
75
+ * The size property specifies the padding of the DropDownButton
76
+ * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-size)).
77
+ *
78
+ * The possible values are:
79
+ * * `'small'`
80
+ * * `'medium'` (default)
81
+ * * `'large'`
82
+ * * `null`
83
+ */
84
+ _this.size = 'medium';
85
+ /**
86
+ * The shape property specifies if the DropDownButton will be a square or rectangle.
87
+ * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-shape)).
88
+ *
89
+ * The possible values are:
90
+ * * `'rectangle'` (default)
91
+ * * `'square'`
92
+ * * `null`
93
+ */
94
+ _this.shape = 'rectangle';
95
+ /**
96
+ * The rounded property specifies the border radius of the DropDownButton
97
+ * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-rounded)).
98
+ *
99
+ * The possible values are:
100
+ * * `'small'`
101
+ * * `'medium'` (default)
102
+ * * `'large'`
103
+ * * `'full'`
104
+ * * `null`
105
+ */
106
+ _this.rounded = 'medium';
107
+ /**
108
+ * The DropDownButton allows you to specify predefined theme colors.
109
+ * The theme color will be applied as a background and border color while also amending the text color accordingly
110
+ * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-themeColor)).
111
+ *
112
+ * The possible values are:
113
+ * * `base` &mdash;Applies coloring based on the `base` theme color. (default)
114
+ * * `primary` &mdash;Applies coloring based on the `primary` theme color.
115
+ * * `secondary`&mdash;Applies coloring based on the `secondary` theme color.
116
+ * * `tertiary`&mdash; Applies coloring based on the `tertiary` theme color.
117
+ * * `info`&mdash;Applies coloring based on the `info` theme color.
118
+ * * `success`&mdash; Applies coloring based on the `success` theme color.
119
+ * * `warning`&mdash; Applies coloring based on the `warning` theme color.
120
+ * * `error`&mdash; Applies coloring based on the `error` theme color.
121
+ * * `dark`&mdash; Applies coloring based on the `dark` theme color.
122
+ * * `light`&mdash; Applies coloring based on the `light` theme color.
123
+ * * `inverse`&mdash; Applies coloring based on the `inverse` theme color.
124
+ * * `null` &mdash;Removes the default CSS class (no class would be rendered).
125
+ */
126
+ _this.themeColor = 'base';
127
+ /**
128
+ * Specifies the [`tabIndex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the component.
129
+ */
130
+ _this.tabIndex = 0;
131
+ /**
132
+ * Fires each time the user clicks on a drop-down list item. The event data contains the data item bound to the clicked list item.
133
+ */
134
+ _this.itemClick = new EventEmitter();
135
+ /**
136
+ * Fires each time the popup is about to open.
137
+ * This event is preventable. If you cancel the event, the popup will remain closed.
138
+ */
139
+ _this.open = new EventEmitter();
140
+ /**
141
+ * Fires each time the popup is about to close.
142
+ * This event is preventable. If you cancel the event, the popup will remain open.
143
+ */
144
+ _this.close = new EventEmitter();
145
+ /**
146
+ * Fires each time the DropDownButton gets focused.
147
+ */
148
+ _this.onFocus = new EventEmitter(); //tslint:disable-line:no-output-rename
149
+ /**
150
+ * Fires each time the DropDownButton gets blurred.
151
+ */
152
+ _this.onBlur = new EventEmitter(); //tslint:disable-line:no-output-rename
153
+ _this.listId = guid();
154
+ _this._fillMode = 'solid';
155
+ _this._itemClick = _this.itemClick;
156
+ _this._blur = _this.onBlur;
157
+ return _this;
158
+ }
159
+ Object.defineProperty(DropDownButtonComponent.prototype, "popupSettings", {
160
+ get: function () {
161
+ return this._popupSettings;
162
+ },
163
+ /**
164
+ * Configures the popup of the DropDownButton.
165
+ *
166
+ * The available options are:
167
+ * - `animate: Boolean`&mdash;Controls the popup animation. By default, the open and close animations are enabled.
168
+ * - `popupClass: String`&mdash;Specifies a list of CSS classes that are used to style the popup.
169
+ * - `appendTo: "root" | "component" | ViewContainerRef`&mdash;Specifies the component to which the popup will be appended.
170
+ * - `align: "left" | "center" | "right"`&mdash;Specifies the alignment of the popup.
171
+ */
172
+ set: function (settings) {
173
+ this._popupSettings = Object.assign({ animate: true, popupClass: '' }, settings);
174
+ },
175
+ enumerable: true,
176
+ configurable: true
177
+ });
178
+ Object.defineProperty(DropDownButtonComponent.prototype, "disabled", {
179
+ get: function () {
180
+ return this._disabled;
181
+ },
182
+ /**
183
+ * Sets the disabled state of the DropDownButton.
184
+ */
185
+ set: function (value) {
186
+ if (value && this.openState) {
187
+ this.openState = false;
188
+ }
189
+ this._disabled = value;
190
+ },
191
+ enumerable: true,
192
+ configurable: true
193
+ });
194
+ Object.defineProperty(DropDownButtonComponent.prototype, "data", {
195
+ get: function () {
196
+ return this._data;
197
+ },
198
+ /**
199
+ * Sets or gets the data of the DropDownButton.
200
+ *
201
+ * > The data has to be provided in an array-like list.
202
+ */
203
+ set: function (data) {
204
+ this._data = data || [];
205
+ },
206
+ enumerable: true,
207
+ configurable: true
208
+ });
209
+ Object.defineProperty(DropDownButtonComponent.prototype, "fillMode", {
210
+ get: function () {
211
+ return this._fillMode;
212
+ },
213
+ /**
214
+ * The fillMode property specifies the background and border styles of the DropDownButton
215
+ * ([see example]({% slug api_buttons_dropdownbuttoncomponent %}#toc-fillMode)).
216
+ *
217
+ * The available values are:
218
+ * * `solid` (default)
219
+ * * `flat`
220
+ * * `outline`
221
+ * * `link`
222
+ * * `null`
223
+ */
224
+ set: function (fillMode) {
225
+ this._fillMode = fillMode === 'clear' ? 'flat' : fillMode;
226
+ },
227
+ enumerable: true,
228
+ configurable: true
229
+ });
230
+ Object.defineProperty(DropDownButtonComponent.prototype, "openState", {
231
+ /**
232
+ * @hidden
233
+ */
234
+ get: function () {
235
+ return this._open;
236
+ },
237
+ /**
238
+ * @hidden
239
+ */
240
+ set: function (open) {
241
+ if (this.disabled) {
242
+ return;
243
+ }
244
+ var eventArgs = new PreventableEvent();
245
+ if (open) {
246
+ this.open.emit(eventArgs);
247
+ }
248
+ else {
249
+ this.close.emit(eventArgs);
250
+ }
251
+ if (eventArgs.isDefaultPrevented()) {
252
+ return;
253
+ }
254
+ this._toggle(open);
255
+ },
256
+ enumerable: true,
257
+ configurable: true
258
+ });
259
+ Object.defineProperty(DropDownButtonComponent.prototype, "componentTabIndex", {
260
+ /**
261
+ * @hidden
262
+ */
263
+ get: function () {
264
+ return this.disabled ? (-1) : this.tabIndex;
265
+ },
266
+ enumerable: true,
267
+ configurable: true
268
+ });
269
+ Object.defineProperty(DropDownButtonComponent.prototype, "appendTo", {
270
+ get: function () {
271
+ var appendTo = this.popupSettings.appendTo;
272
+ if (!appendTo || appendTo === 'root') {
273
+ return undefined;
274
+ }
275
+ return appendTo === 'component' ? this.container : appendTo;
276
+ },
277
+ enumerable: true,
278
+ configurable: true
279
+ });
280
+ Object.defineProperty(DropDownButtonComponent.prototype, "focused", {
281
+ get: function () {
282
+ return this._isFocused && !this._disabled;
283
+ },
284
+ enumerable: true,
285
+ configurable: true
286
+ });
287
+ Object.defineProperty(DropDownButtonComponent.prototype, "widgetClasses", {
288
+ get: function () {
289
+ return true;
290
+ },
291
+ enumerable: true,
292
+ configurable: true
293
+ });
294
+ Object.defineProperty(DropDownButtonComponent.prototype, "dir", {
295
+ get: function () {
296
+ return this.direction;
297
+ },
298
+ enumerable: true,
299
+ configurable: true
300
+ });
301
+ Object.defineProperty(DropDownButtonComponent.prototype, "active", {
302
+ /**
303
+ * @hidden
304
+ */
305
+ get: function () {
306
+ return this._active;
307
+ },
308
+ enumerable: true,
309
+ configurable: true
310
+ });
311
+ /**
312
+ * @hidden
313
+ */
314
+ DropDownButtonComponent.prototype.keydown = function (event) {
315
+ this.keyDownHandler(event);
316
+ if (event.keyCode === Keys.Space) {
317
+ this._active = true;
318
+ }
319
+ };
320
+ /**
321
+ * @hidden
322
+ */
323
+ DropDownButtonComponent.prototype.keypress = function (event) {
324
+ this.keyPressHandler(event);
325
+ };
326
+ /**
327
+ * @hidden
328
+ */
329
+ DropDownButtonComponent.prototype.keyup = function (event) {
330
+ this.keyUpHandler(event);
331
+ this._active = false;
332
+ };
333
+ /**
334
+ * @hidden
335
+ */
336
+ DropDownButtonComponent.prototype.mousedown = function (event) {
337
+ if (this._disabled) {
338
+ event.preventDefault();
339
+ }
340
+ this._active = true;
341
+ };
342
+ /**
343
+ * @hidden
344
+ */
345
+ DropDownButtonComponent.prototype.mouseup = function (event) {
346
+ if (this._disabled) {
347
+ event.preventDefault();
348
+ }
349
+ this._active = false;
350
+ };
351
+ /**
352
+ * @hidden
353
+ */
354
+ DropDownButtonComponent.prototype.openPopup = function () {
355
+ this.togglePopupVisibility();
356
+ };
357
+ /**
358
+ * @hidden
359
+ */
360
+ DropDownButtonComponent.prototype.onButtonBlur = function () {
361
+ if (!this.isOpen) {
362
+ this.blurWrapper();
363
+ }
364
+ };
365
+ Object.defineProperty(DropDownButtonComponent.prototype, "anchorAlign", {
366
+ /**
367
+ * @hidden
368
+ */
369
+ get: function () {
370
+ var align = { horizontal: this.popupSettings.align || 'left', vertical: 'bottom' };
371
+ if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
372
+ align.horizontal = 'right';
373
+ }
374
+ return align;
375
+ },
376
+ enumerable: true,
377
+ configurable: true
378
+ });
379
+ Object.defineProperty(DropDownButtonComponent.prototype, "popupAlign", {
380
+ /**
381
+ * @hidden
382
+ */
383
+ get: function () {
384
+ var align = { horizontal: this.popupSettings.align || 'left', vertical: 'top' };
385
+ if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
386
+ align.horizontal = 'right';
387
+ }
388
+ return align;
389
+ },
390
+ enumerable: true,
391
+ configurable: true
392
+ });
393
+ /**
394
+ * Focuses the DropDownButton component.
395
+ */
396
+ DropDownButtonComponent.prototype.focus = function () {
397
+ if (isDocumentAvailable()) {
398
+ this.button.nativeElement.focus();
399
+ }
400
+ };
401
+ /**
402
+ * Blurs the DropDownButton component.
403
+ */
404
+ DropDownButtonComponent.prototype.blur = function () {
405
+ if (isDocumentAvailable()) {
406
+ this.button.nativeElement.blur();
407
+ this.blurWrapper();
408
+ }
409
+ };
410
+ DropDownButtonComponent.prototype.ngOnChanges = function (changes) {
411
+ if (isChanged("popupSettings", changes) && isPresent(this.popupRef)) {
412
+ var popup = this.popupRef.popup.instance;
413
+ var newSettings = changes.popupSettings.currentValue;
414
+ popup.popupClass = newSettings.popupClass;
415
+ popup.animate = newSettings.animate;
416
+ popup.popupAlign = this.popupAlign;
417
+ }
418
+ };
419
+ DropDownButtonComponent.prototype.ngOnDestroy = function () {
420
+ _super.prototype.ngOnDestroy.call(this);
421
+ this.destroyPopup();
422
+ };
423
+ /**
424
+ * Toggles the visibility of the popup.
425
+ * If the `toggle` method is used to open or close the popup, the `open` and `close` events will not be fired.
426
+ *
427
+ * @param open - The state of the popup.
428
+ */
429
+ DropDownButtonComponent.prototype.toggle = function (open) {
430
+ var _this = this;
431
+ if (this.disabled) {
432
+ return;
433
+ }
434
+ tick(function () { return (_this._toggle((open === undefined) ? !_this._open : open)); });
435
+ };
436
+ Object.defineProperty(DropDownButtonComponent.prototype, "isOpen", {
437
+ /**
438
+ * Returns the current open state of the popup.
439
+ */
440
+ get: function () {
441
+ return this.openState;
442
+ },
443
+ enumerable: true,
444
+ configurable: true
445
+ });
446
+ /**
447
+ * @hidden
448
+ */
449
+ DropDownButtonComponent.prototype.handleFocus = function () {
450
+ if (!this._disabled && !this._isFocused) {
451
+ this._isFocused = true;
452
+ this.onFocus.emit();
453
+ }
454
+ };
455
+ /**
456
+ * @hidden
457
+ */
458
+ DropDownButtonComponent.prototype.wrapperContains = function (element) {
459
+ return this.wrapper === element
460
+ || this.wrapper.contains(element)
461
+ || (this.popupRef && this.popupRef.popupElement.contains(element));
462
+ };
463
+ DropDownButtonComponent.prototype.subscribeNavigationEvents = function () {
464
+ this.navigationSubscription = this.navigationService.navigate
465
+ .subscribe(this.onArrowKeyNavigate.bind(this));
466
+ this.enterUpSubscription = this.navigationService.enterup.subscribe(this.onNavigationEnterUp.bind(this));
467
+ this.openSubscription = this.navigationService.open.subscribe(this.onNavigationOpen.bind(this));
468
+ this.closeSubscription = merge(this.navigationService.close, this.navigationService.esc).subscribe(this.onNavigationClose.bind(this));
469
+ };
470
+ DropDownButtonComponent.prototype.onNavigationEnterUp = function () {
471
+ if (!this._disabled && !this.openState) {
472
+ this._active = false;
473
+ }
474
+ if (this.openState) {
475
+ var focused = this.focusService.focused;
476
+ if (isPresent(focused) && focused !== -1) {
477
+ this.emitItemClickHandler(focused);
478
+ }
479
+ }
480
+ this.togglePopupVisibility();
481
+ if (!this.openState && isDocumentAvailable()) {
482
+ this.button.nativeElement.focus();
483
+ }
484
+ };
485
+ DropDownButtonComponent.prototype.onNavigationOpen = function () {
486
+ if (!this._disabled && !this.openState) {
487
+ this.togglePopupVisibility();
488
+ }
489
+ };
490
+ DropDownButtonComponent.prototype.onNavigationClose = function () {
491
+ if (this.openState) {
492
+ this.togglePopupVisibility();
493
+ if (isDocumentAvailable()) {
494
+ this.button.nativeElement.focus();
495
+ }
496
+ }
497
+ };
498
+ DropDownButtonComponent.prototype.onArrowKeyNavigate = function (index) {
499
+ this.focusService.focus(index);
500
+ };
501
+ DropDownButtonComponent.prototype._toggle = function (open) {
502
+ if (this._open === open) {
503
+ return;
504
+ }
505
+ this._open = open;
506
+ this.destroyPopup();
507
+ if (this._open) {
508
+ this.createPopup();
509
+ }
510
+ };
511
+ DropDownButtonComponent.prototype.createPopup = function () {
512
+ var _this = this;
513
+ this.popupRef = this.popupService.open({
514
+ anchor: this.elRef,
515
+ anchorAlign: this.anchorAlign,
516
+ animate: this.popupSettings.animate,
517
+ appendTo: this.appendTo,
518
+ content: this.popupTemplate,
519
+ popupAlign: this.popupAlign,
520
+ popupClass: this.popupClasses
521
+ });
522
+ this.popupRef.popupAnchorViewportLeave.subscribe(function () { return _this.openState = false; });
523
+ this.popupRef.popupOpen.subscribe(this.focusFirstItem.bind(this));
524
+ };
525
+ DropDownButtonComponent.prototype.destroyPopup = function () {
526
+ if (this.popupRef) {
527
+ this.popupRef.close();
528
+ this.popupRef = null;
529
+ }
530
+ };
531
+ tslib_1.__decorate([
532
+ Input(),
533
+ tslib_1.__metadata("design:type", String)
534
+ ], DropDownButtonComponent.prototype, "icon", void 0);
535
+ tslib_1.__decorate([
536
+ Input(),
537
+ tslib_1.__metadata("design:type", String)
538
+ ], DropDownButtonComponent.prototype, "iconClass", void 0);
539
+ tslib_1.__decorate([
540
+ Input(),
541
+ tslib_1.__metadata("design:type", String)
542
+ ], DropDownButtonComponent.prototype, "imageUrl", void 0);
543
+ tslib_1.__decorate([
544
+ Input(),
545
+ tslib_1.__metadata("design:type", Object),
546
+ tslib_1.__metadata("design:paramtypes", [Object])
547
+ ], DropDownButtonComponent.prototype, "popupSettings", null);
548
+ tslib_1.__decorate([
549
+ Input(),
550
+ tslib_1.__metadata("design:type", String)
551
+ ], DropDownButtonComponent.prototype, "textField", void 0);
552
+ tslib_1.__decorate([
553
+ Input(),
554
+ tslib_1.__metadata("design:type", Boolean),
555
+ tslib_1.__metadata("design:paramtypes", [Boolean])
556
+ ], DropDownButtonComponent.prototype, "disabled", null);
557
+ tslib_1.__decorate([
558
+ Input(),
559
+ tslib_1.__metadata("design:type", Object),
560
+ tslib_1.__metadata("design:paramtypes", [Object])
561
+ ], DropDownButtonComponent.prototype, "data", null);
562
+ tslib_1.__decorate([
563
+ Input(),
564
+ tslib_1.__metadata("design:type", String)
565
+ ], DropDownButtonComponent.prototype, "size", void 0);
566
+ tslib_1.__decorate([
567
+ Input(),
568
+ tslib_1.__metadata("design:type", String)
569
+ ], DropDownButtonComponent.prototype, "shape", void 0);
570
+ tslib_1.__decorate([
571
+ Input(),
572
+ tslib_1.__metadata("design:type", String)
573
+ ], DropDownButtonComponent.prototype, "rounded", void 0);
574
+ tslib_1.__decorate([
575
+ Input(),
576
+ tslib_1.__metadata("design:type", String),
577
+ tslib_1.__metadata("design:paramtypes", [String])
578
+ ], DropDownButtonComponent.prototype, "fillMode", null);
579
+ tslib_1.__decorate([
580
+ Input(),
581
+ tslib_1.__metadata("design:type", String)
582
+ ], DropDownButtonComponent.prototype, "themeColor", void 0);
583
+ tslib_1.__decorate([
584
+ Input(),
585
+ tslib_1.__metadata("design:type", Object)
586
+ ], DropDownButtonComponent.prototype, "buttonClass", void 0);
587
+ tslib_1.__decorate([
588
+ Input(),
589
+ tslib_1.__metadata("design:type", Number)
590
+ ], DropDownButtonComponent.prototype, "tabIndex", void 0);
591
+ tslib_1.__decorate([
592
+ Output(),
593
+ tslib_1.__metadata("design:type", EventEmitter)
594
+ ], DropDownButtonComponent.prototype, "itemClick", void 0);
595
+ tslib_1.__decorate([
596
+ Output(),
597
+ tslib_1.__metadata("design:type", EventEmitter)
598
+ ], DropDownButtonComponent.prototype, "open", void 0);
599
+ tslib_1.__decorate([
600
+ Output(),
601
+ tslib_1.__metadata("design:type", EventEmitter)
602
+ ], DropDownButtonComponent.prototype, "close", void 0);
603
+ tslib_1.__decorate([
604
+ Output('focus'),
605
+ tslib_1.__metadata("design:type", EventEmitter)
606
+ ], DropDownButtonComponent.prototype, "onFocus", void 0);
607
+ tslib_1.__decorate([
608
+ Output('blur'),
609
+ tslib_1.__metadata("design:type", EventEmitter)
610
+ ], DropDownButtonComponent.prototype, "onBlur", void 0);
611
+ tslib_1.__decorate([
612
+ HostBinding('class.k-focus'),
613
+ tslib_1.__metadata("design:type", Boolean),
614
+ tslib_1.__metadata("design:paramtypes", [])
615
+ ], DropDownButtonComponent.prototype, "focused", null);
616
+ tslib_1.__decorate([
617
+ HostBinding('class.k-dropdown-button'),
618
+ tslib_1.__metadata("design:type", Boolean),
619
+ tslib_1.__metadata("design:paramtypes", [])
620
+ ], DropDownButtonComponent.prototype, "widgetClasses", null);
621
+ tslib_1.__decorate([
622
+ HostBinding('attr.dir'),
623
+ tslib_1.__metadata("design:type", String),
624
+ tslib_1.__metadata("design:paramtypes", [])
625
+ ], DropDownButtonComponent.prototype, "dir", null);
626
+ tslib_1.__decorate([
627
+ ContentChild(ButtonItemTemplateDirective, { static: false }),
628
+ tslib_1.__metadata("design:type", ButtonItemTemplateDirective)
629
+ ], DropDownButtonComponent.prototype, "itemTemplate", void 0);
630
+ tslib_1.__decorate([
631
+ ViewChild('button', { static: true }),
632
+ tslib_1.__metadata("design:type", ElementRef)
633
+ ], DropDownButtonComponent.prototype, "button", void 0);
634
+ tslib_1.__decorate([
635
+ ViewChild('buttonList', { static: false }),
636
+ tslib_1.__metadata("design:type", ListComponent)
637
+ ], DropDownButtonComponent.prototype, "buttonList", void 0);
638
+ tslib_1.__decorate([
639
+ ViewChild('popupTemplate', { static: true }),
640
+ tslib_1.__metadata("design:type", TemplateRef)
641
+ ], DropDownButtonComponent.prototype, "popupTemplate", void 0);
642
+ tslib_1.__decorate([
643
+ ViewChild('container', { read: ViewContainerRef, static: true }),
644
+ tslib_1.__metadata("design:type", ViewContainerRef)
645
+ ], DropDownButtonComponent.prototype, "container", void 0);
646
+ tslib_1.__decorate([
647
+ HostListener('keydown', ['$event']),
648
+ tslib_1.__metadata("design:type", Function),
649
+ tslib_1.__metadata("design:paramtypes", [Object]),
650
+ tslib_1.__metadata("design:returntype", void 0)
651
+ ], DropDownButtonComponent.prototype, "keydown", null);
652
+ tslib_1.__decorate([
653
+ HostListener('keypress', ['$event']),
654
+ tslib_1.__metadata("design:type", Function),
655
+ tslib_1.__metadata("design:paramtypes", [Object]),
656
+ tslib_1.__metadata("design:returntype", void 0)
657
+ ], DropDownButtonComponent.prototype, "keypress", null);
658
+ tslib_1.__decorate([
659
+ HostListener('keyup', ['$event']),
660
+ tslib_1.__metadata("design:type", Function),
661
+ tslib_1.__metadata("design:paramtypes", [Object]),
662
+ tslib_1.__metadata("design:returntype", void 0)
663
+ ], DropDownButtonComponent.prototype, "keyup", null);
664
+ tslib_1.__decorate([
665
+ HostListener('mousedown', ['$event']),
666
+ tslib_1.__metadata("design:type", Function),
667
+ tslib_1.__metadata("design:paramtypes", [Object]),
668
+ tslib_1.__metadata("design:returntype", void 0)
669
+ ], DropDownButtonComponent.prototype, "mousedown", null);
670
+ tslib_1.__decorate([
671
+ HostListener('mouseup', ['$event']),
672
+ tslib_1.__metadata("design:type", Function),
673
+ tslib_1.__metadata("design:paramtypes", [Object]),
674
+ tslib_1.__metadata("design:returntype", void 0)
675
+ ], DropDownButtonComponent.prototype, "mouseup", null);
676
+ DropDownButtonComponent = tslib_1.__decorate([
677
+ Component({
678
+ exportAs: 'kendoDropDownButton',
679
+ providers: [
680
+ FocusService,
681
+ NavigationService,
682
+ NAVIGATION_SETTINGS_PROVIDER,
683
+ LocalizationService,
684
+ {
685
+ provide: L10N_PREFIX,
686
+ useValue: 'kendo.dropdownbutton'
687
+ }
688
+ ],
689
+ selector: 'kendo-dropdownbutton',
690
+ template: "\n <button kendoButton #button\n role=\"menu\"\n type=\"button\"\n [tabindex]=\"componentTabIndex\"\n [class.k-active]=\"active\"\n [disabled]=\"disabled\"\n [icon]=\"icon\"\n [iconClass]=\"iconClass\"\n [imageUrl]=\"imageUrl\"\n [ngClass]=\"buttonClass\"\n [size]=\"size\"\n [shape]=\"shape\"\n [rounded]=\"rounded\"\n [fillMode]=\"fillMode\"\n [themeColor]=\"fillMode ? themeColor : null\"\n (click)=\"openPopup()\"\n (focus)=\"handleFocus()\"\n (blur)=\"onButtonBlur()\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-expanded]=\"openState\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-owns]=\"listId\"\n >\n <ng-content></ng-content>\n </button>\n <ng-template #popupTemplate>\n <kendo-button-list\n #buttonList\n [id]=\"listId\"\n [data]=\"data\"\n [textField]=\"textField\"\n [itemTemplate]=\"itemTemplate\"\n (onItemClick)=\"onItemClick($event)\"\n (keydown)=\"keyDownHandler($event)\"\n (keypress)=\"keyPressHandler($event)\"\n (keyup)=\"keyUpHandler($event)\"\n [attr.dir]=\"dir\"\n [size]=\"size\"\n >\n </kendo-button-list>\n </ng-template>\n <ng-container #container></ng-container>\n "
691
+ }),
692
+ tslib_1.__metadata("design:paramtypes", [FocusService,
693
+ NavigationService,
694
+ ElementRef,
695
+ NgZone,
696
+ PopupService,
697
+ ElementRef,
698
+ LocalizationService,
699
+ ChangeDetectorRef])
700
+ ], DropDownButtonComponent);
701
+ return DropDownButtonComponent;
702
+ }(ListButton));
703
+ export { DropDownButtonComponent };
704
+ export { ɵ0 };