@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,245 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ /* tslint:disable:deprecation */
8
+ var rxjs_1 = require("rxjs");
9
+ var operators_1 = require("rxjs/operators");
10
+ var key_events_1 = require("./../navigation/key-events");
11
+ var navigation_action_1 = require("./../navigation/navigation-action");
12
+ var kendo_angular_common_1 = require("@progress/kendo-angular-common");
13
+ var util_1 = require("./../util");
14
+ var kendo_licensing_1 = require("@progress/kendo-licensing");
15
+ var package_metadata_1 = require("../package-metadata");
16
+ /**
17
+ * @hidden
18
+ */
19
+ var ListButton = /** @class */ (function () {
20
+ function ListButton(focusService, navigationService, wrapperRef, _zone, localization, cdr) {
21
+ var _this = this;
22
+ this.focusService = focusService;
23
+ this.navigationService = navigationService;
24
+ this.wrapperRef = wrapperRef;
25
+ this._zone = _zone;
26
+ this.cdr = cdr;
27
+ this._open = false;
28
+ this._disabled = false;
29
+ this._active = false;
30
+ this._popupSettings = { animate: true, popupClass: '' };
31
+ this.listId = kendo_angular_common_1.guid();
32
+ this._isFocused = false;
33
+ kendo_licensing_1.validatePackage(package_metadata_1.packageMetadata);
34
+ this.focusService = focusService;
35
+ this.navigationService = navigationService;
36
+ this.wrapper = wrapperRef.nativeElement;
37
+ this.localizationChangeSubscription = localization.changes.subscribe(function (_a) {
38
+ var rtl = _a.rtl;
39
+ return (_this.direction = rtl ? 'rtl' : 'ltr');
40
+ });
41
+ this.subscribeEvents();
42
+ }
43
+ Object.defineProperty(ListButton.prototype, "popupClasses", {
44
+ get: function () {
45
+ var popupClasses = ['k-menu-popup'];
46
+ if (this._popupSettings.popupClass) {
47
+ popupClasses.push(this._popupSettings.popupClass);
48
+ }
49
+ return popupClasses.join(' ');
50
+ },
51
+ enumerable: true,
52
+ configurable: true
53
+ });
54
+ Object.defineProperty(ListButton.prototype, "openState", {
55
+ get: function () {
56
+ return this._open;
57
+ },
58
+ set: function (open) {
59
+ this._open = open;
60
+ },
61
+ enumerable: true,
62
+ configurable: true
63
+ });
64
+ /**
65
+ * @hidden
66
+ */
67
+ ListButton.prototype.togglePopupVisibility = function () {
68
+ if (this._disabled) {
69
+ return;
70
+ }
71
+ this.openState = !this.openState;
72
+ if (!this.openState) {
73
+ this.focusService.focus(-1);
74
+ }
75
+ };
76
+ /**
77
+ * @hidden
78
+ */
79
+ ListButton.prototype.onItemClick = function (index) {
80
+ var _this = this;
81
+ this.emitItemClickHandler(index);
82
+ setTimeout(function () { return _this.focusWrapper(); }, 1);
83
+ };
84
+ ListButton.prototype.ngOnDestroy = function () {
85
+ this.openState = false;
86
+ this.unsubscribeEvents();
87
+ clearTimeout(this.focusFirstTimeout);
88
+ clearTimeout(this.blurTimeout);
89
+ if (this.localizationChangeSubscription) {
90
+ this.localizationChangeSubscription.unsubscribe();
91
+ }
92
+ };
93
+ ListButton.prototype.subscribeEvents = function () {
94
+ if (!kendo_angular_common_1.isDocumentAvailable()) {
95
+ return;
96
+ }
97
+ this.subscribeListItemFocusEvent();
98
+ this.subscribeComponentBlurredEvent();
99
+ this.subscribeNavigationEvents();
100
+ };
101
+ ListButton.prototype.subscribeListItemFocusEvent = function () {
102
+ var _this = this;
103
+ this.focusSubscription = this.focusService.onFocus.subscribe(function () {
104
+ _this._isFocused = true;
105
+ });
106
+ };
107
+ ListButton.prototype.subscribeComponentBlurredEvent = function () {
108
+ var _this = this;
109
+ this._zone.runOutsideAngular(function () {
110
+ _this.tabSubscription = _this.navigationService.tab.pipe(operators_1.filter(function () { return _this._isFocused; })).subscribe(_this.handleTab.bind(_this));
111
+ _this.componentBlurredSubscription = rxjs_1.fromEvent(document, 'click')
112
+ .pipe(operators_1.filter(function (event) { return !_this.wrapperContains(event.target); }), operators_1.filter(function () { return _this._isFocused; }))
113
+ .subscribe(function () { return _this._zone.run(function () { return _this.blurWrapper(); }); });
114
+ });
115
+ };
116
+ ListButton.prototype.subscribeNavigationEvents = function () {
117
+ var _this = this;
118
+ this.navigationSubscription = this.navigationService.navigate.subscribe(this.focusService.focus.bind(this.focusService));
119
+ this.enterUpSubscription = this.navigationService.enterup.subscribe(function () {
120
+ _this.enterHandler();
121
+ _this.focusWrapper();
122
+ });
123
+ this.openSubscription = this.navigationService.open.subscribe(function () {
124
+ if (!_this._open) {
125
+ _this.togglePopupVisibility();
126
+ _this.focusFirstItem();
127
+ }
128
+ else {
129
+ _this.focusWrapper();
130
+ }
131
+ });
132
+ this.closeSubscription = rxjs_1.merge(this.navigationService.close, this.navigationService.esc).subscribe(function () { return _this.focusWrapper(); });
133
+ };
134
+ ListButton.prototype.enterHandler = function () { }; // tslint:disable-line
135
+ ListButton.prototype.unsubscribeEvents = function () {
136
+ if (!kendo_angular_common_1.isDocumentAvailable()) {
137
+ return;
138
+ }
139
+ this.unsubscribe(this.componentBlurredSubscription);
140
+ this.unsubscribe(this.focusSubscription);
141
+ this.unsubscribe(this.navigationSubscription);
142
+ this.unsubscribe(this.enterPressSubscription);
143
+ this.unsubscribe(this.enterUpSubscription);
144
+ this.unsubscribe(this.openSubscription);
145
+ this.unsubscribe(this.closeSubscription);
146
+ this.unsubscribe(this.tabSubscription);
147
+ };
148
+ ListButton.prototype.unsubscribe = function (subscription) {
149
+ if (subscription) {
150
+ subscription.unsubscribe();
151
+ }
152
+ };
153
+ /**
154
+ * @hidden
155
+ */
156
+ ListButton.prototype.keyDownHandler = function (event) {
157
+ this.keyHandler(event);
158
+ };
159
+ /**
160
+ * @hidden
161
+ */
162
+ ListButton.prototype.keyPressHandler = function (event) {
163
+ this.keyHandler(event, key_events_1.KeyEvents.keypress);
164
+ };
165
+ /**
166
+ * @hidden
167
+ */
168
+ ListButton.prototype.keyUpHandler = function (event) {
169
+ this.keyHandler(event, key_events_1.KeyEvents.keyup);
170
+ };
171
+ /**
172
+ * @hidden
173
+ */
174
+ ListButton.prototype.keyHandler = function (event, keyEvent) {
175
+ if (this._disabled) {
176
+ return;
177
+ }
178
+ var focused = this.focusService.focused || 0;
179
+ var eventData = event;
180
+ var action = this.navigationService.process({
181
+ altKey: eventData.altKey,
182
+ current: focused,
183
+ keyCode: eventData.keyCode,
184
+ keyEvent: keyEvent,
185
+ max: this._data ? this._data.length - 1 : 0,
186
+ min: 0
187
+ });
188
+ if (action !== navigation_action_1.NavigationAction.Undefined &&
189
+ action !== navigation_action_1.NavigationAction.Tab &&
190
+ (action !== navigation_action_1.NavigationAction.Enter || (action === navigation_action_1.NavigationAction.Enter && this._open))) {
191
+ if (event.keyCode === kendo_angular_common_1.Keys.Space && action === navigation_action_1.NavigationAction.EnterUp) {
192
+ this._open = false;
193
+ }
194
+ else {
195
+ eventData.preventDefault();
196
+ }
197
+ }
198
+ };
199
+ ListButton.prototype.emitItemClickHandler = function (index) {
200
+ var dataItem = this._data[index];
201
+ if (this._itemClick) {
202
+ this._itemClick.emit(dataItem);
203
+ }
204
+ if (dataItem && dataItem.click && !dataItem.disabled) {
205
+ dataItem.click(dataItem);
206
+ }
207
+ };
208
+ ListButton.prototype.focusFirstItem = function () {
209
+ var _this = this;
210
+ if (this._data && util_1.isPresent(this._data[0])) {
211
+ this.focusFirstTimeout = setTimeout(function () { return _this.focusService.focus(0); }, 1);
212
+ }
213
+ };
214
+ ListButton.prototype.focusWrapper = function () {
215
+ if (this._open) {
216
+ this.togglePopupVisibility();
217
+ this.focusButton();
218
+ }
219
+ };
220
+ ListButton.prototype.wrapperContains = function (element) {
221
+ return this.wrapper === element || this.wrapper.contains(element);
222
+ };
223
+ ListButton.prototype.blurWrapper = function (emit) {
224
+ if (emit === void 0) { emit = true; }
225
+ if (this._open) {
226
+ this.togglePopupVisibility();
227
+ }
228
+ this._isFocused = false;
229
+ if (emit) {
230
+ this._blur.emit();
231
+ this.cdr.markForCheck();
232
+ }
233
+ };
234
+ ListButton.prototype.focusButton = function () {
235
+ if (this.button) {
236
+ this.button.nativeElement.focus();
237
+ }
238
+ };
239
+ ListButton.prototype.handleTab = function () {
240
+ this.focusButton();
241
+ this.blurWrapper(false);
242
+ };
243
+ return ListButton;
244
+ }());
245
+ exports.ListButton = ListButton;
@@ -0,0 +1,6 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,87 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ var tslib_1 = require("tslib");
8
+ var core_1 = require("@angular/core");
9
+ var kendo_licensing_1 = require("@progress/kendo-licensing");
10
+ var package_metadata_1 = require("../package-metadata");
11
+ var button_item_template_directive_1 = require("./button-item-template.directive");
12
+ var util_1 = require("../util");
13
+ /**
14
+ * @hidden
15
+ */
16
+ var ListComponent = /** @class */ (function () {
17
+ function ListComponent() {
18
+ this.onItemClick = new core_1.EventEmitter();
19
+ this.onItemBlur = new core_1.EventEmitter();
20
+ this.sizeClass = '';
21
+ kendo_licensing_1.validatePackage(package_metadata_1.packageMetadata);
22
+ }
23
+ Object.defineProperty(ListComponent.prototype, "size", {
24
+ set: function (size) {
25
+ if (size) {
26
+ this.sizeClass = "k-menu-group-" + util_1.SIZES[size];
27
+ }
28
+ else {
29
+ this.sizeClass = '';
30
+ }
31
+ },
32
+ enumerable: true,
33
+ configurable: true
34
+ });
35
+ ListComponent.prototype.getText = function (dataItem) {
36
+ if (dataItem) {
37
+ return this.textField ? dataItem[this.textField] : dataItem.text || dataItem;
38
+ }
39
+ return undefined;
40
+ };
41
+ ListComponent.prototype.getIconClasses = function (dataItem) {
42
+ var icon = dataItem.icon ? 'k-icon k-i-' + dataItem.icon : undefined;
43
+ var classes = {};
44
+ classes[icon || dataItem.iconClass] = true;
45
+ return classes;
46
+ };
47
+ ListComponent.prototype.onClick = function (index) {
48
+ this.onItemClick.emit(index);
49
+ };
50
+ ListComponent.prototype.onBlur = function () {
51
+ this.onItemBlur.emit();
52
+ };
53
+ tslib_1.__decorate([
54
+ core_1.Input(),
55
+ tslib_1.__metadata("design:type", Array)
56
+ ], ListComponent.prototype, "data", void 0);
57
+ tslib_1.__decorate([
58
+ core_1.Input(),
59
+ tslib_1.__metadata("design:type", String)
60
+ ], ListComponent.prototype, "textField", void 0);
61
+ tslib_1.__decorate([
62
+ core_1.Input(),
63
+ tslib_1.__metadata("design:type", button_item_template_directive_1.ButtonItemTemplateDirective)
64
+ ], ListComponent.prototype, "itemTemplate", void 0);
65
+ tslib_1.__decorate([
66
+ core_1.Output(),
67
+ tslib_1.__metadata("design:type", core_1.EventEmitter)
68
+ ], ListComponent.prototype, "onItemClick", void 0);
69
+ tslib_1.__decorate([
70
+ core_1.Output(),
71
+ tslib_1.__metadata("design:type", core_1.EventEmitter)
72
+ ], ListComponent.prototype, "onItemBlur", void 0);
73
+ tslib_1.__decorate([
74
+ core_1.Input(),
75
+ tslib_1.__metadata("design:type", String),
76
+ tslib_1.__metadata("design:paramtypes", [String])
77
+ ], ListComponent.prototype, "size", null);
78
+ ListComponent = tslib_1.__decorate([
79
+ core_1.Component({
80
+ selector: 'kendo-button-list',
81
+ template: "\n <ul class=\"k-group k-menu-group k-reset\" [ngClass]=\"sizeClass\" unselectable=\"on\" role=\"menu\">\n <li role=\"menuitem\" unselectable=\"on\"\n kendoButtonFocusable\n *ngFor=\"let dataItem of data; let index = index;\"\n class=\"k-item k-menu-item\"\n (click)=\"onClick(index)\"\n (blur)=\"onBlur()\"\n [attr.aria-disabled]=\"dataItem.disabled ? true : false\">\n <ng-template [ngIf]=\"itemTemplate?.templateRef\">\n <span kendoButtonFocusable [index]=\"index\" class=\"k-link k-menu-link\" [class.k-disabled]=\"dataItem.disabled\" tabindex=\"-1\">\n <ng-template [templateContext]=\"{templateRef: itemTemplate?.templateRef, $implicit: dataItem}\"></ng-template>\n </span>\n </ng-template>\n <ng-template [ngIf]=\"!itemTemplate?.templateRef\">\n <span kendoButtonFocusable [index]=\"index\" class=\"k-link k-menu-link\" [class.k-disabled]=\"dataItem.disabled\" tabindex=\"-1\">\n <span\n *ngIf=\"dataItem.icon || dataItem.iconClass\"\n [ngClass]=\"getIconClasses(dataItem)\"\n ></span>\n <img\n *ngIf=\"dataItem.imageUrl\"\n class=\"k-image\"\n [src]=\"dataItem.imageUrl\"\n alt=\"\"\n >\n <span *ngIf=\"getText(dataItem)\" class=\"k-menu-link-text\">\n {{ getText(dataItem) }}\n </span>\n </span>\n </ng-template>\n </li>\n </ul>\n "
82
+ }),
83
+ tslib_1.__metadata("design:paramtypes", [])
84
+ ], ListComponent);
85
+ return ListComponent;
86
+ }());
87
+ exports.ListComponent = ListComponent;
@@ -0,0 +1,35 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ var tslib_1 = require("tslib");
8
+ var core_1 = require("@angular/core");
9
+ var common_1 = require("@angular/common");
10
+ var list_component_1 = require("./list.component");
11
+ var focusable_directive_1 = require("./../focusable/focusable.directive");
12
+ var button_item_template_directive_1 = require("./button-item-template.directive");
13
+ var template_context_directive_1 = require("./template-context.directive");
14
+ var EXPORTED_DIRECTIVES = [
15
+ list_component_1.ListComponent,
16
+ focusable_directive_1.FocusableDirective,
17
+ button_item_template_directive_1.ButtonItemTemplateDirective,
18
+ template_context_directive_1.TemplateContextDirective
19
+ ];
20
+ /**
21
+ * @hidden
22
+ */
23
+ var ListModule = /** @class */ (function () {
24
+ function ListModule() {
25
+ }
26
+ ListModule = tslib_1.__decorate([
27
+ core_1.NgModule({
28
+ declarations: [EXPORTED_DIRECTIVES],
29
+ exports: [EXPORTED_DIRECTIVES],
30
+ imports: [common_1.CommonModule]
31
+ })
32
+ ], ListModule);
33
+ return ListModule;
34
+ }());
35
+ exports.ListModule = ListModule;
@@ -0,0 +1,6 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,42 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ var tslib_1 = require("tslib");
8
+ var core_1 = require("@angular/core");
9
+ /**
10
+ * @hidden
11
+ */
12
+ var TemplateContextDirective = /** @class */ (function () {
13
+ function TemplateContextDirective(viewContainerRef) {
14
+ this.viewContainerRef = viewContainerRef;
15
+ }
16
+ Object.defineProperty(TemplateContextDirective.prototype, "templateContext", {
17
+ set: function (context) {
18
+ if (this.insertedViewRef) {
19
+ this.viewContainerRef.remove(this.viewContainerRef.indexOf(this.insertedViewRef));
20
+ this.insertedViewRef = undefined;
21
+ }
22
+ if (context.templateRef) {
23
+ this.insertedViewRef = this.viewContainerRef.createEmbeddedView(context.templateRef, context);
24
+ }
25
+ },
26
+ enumerable: true,
27
+ configurable: true
28
+ });
29
+ tslib_1.__decorate([
30
+ core_1.Input(),
31
+ tslib_1.__metadata("design:type", Object),
32
+ tslib_1.__metadata("design:paramtypes", [Object])
33
+ ], TemplateContextDirective.prototype, "templateContext", null);
34
+ TemplateContextDirective = tslib_1.__decorate([
35
+ core_1.Directive({
36
+ selector: '[templateContext]' // tslint:disable-line:directive-selector
37
+ }),
38
+ tslib_1.__metadata("design:paramtypes", [core_1.ViewContainerRef])
39
+ ], TemplateContextDirective);
40
+ return TemplateContextDirective;
41
+ }());
42
+ exports.TemplateContextDirective = TemplateContextDirective;
@@ -0,0 +1,45 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ var button_directive_1 = require("./button/button.directive");
8
+ exports.ButtonDirective = button_directive_1.ButtonDirective;
9
+ exports.Button = button_directive_1.ButtonDirective;
10
+ var buttongroup_component_1 = require("./buttongroup/buttongroup.component");
11
+ exports.ButtonGroupComponent = buttongroup_component_1.ButtonGroupComponent;
12
+ exports.ButtonGroup = buttongroup_component_1.ButtonGroupComponent;
13
+ var buttongroup_module_1 = require("./buttongroup/buttongroup.module");
14
+ exports.ButtonGroupModule = buttongroup_module_1.ButtonGroupModule;
15
+ var button_module_1 = require("./button/button.module");
16
+ exports.ButtonModule = button_module_1.ButtonModule;
17
+ var buttons_module_1 = require("./buttons.module");
18
+ exports.ButtonsModule = buttons_module_1.ButtonsModule;
19
+ var splitbutton_component_1 = require("./splitbutton/splitbutton.component");
20
+ exports.SplitButtonComponent = splitbutton_component_1.SplitButtonComponent;
21
+ exports.SplitButton = splitbutton_component_1.SplitButtonComponent;
22
+ var splitbutton_module_1 = require("./splitbutton/splitbutton.module");
23
+ exports.SplitButtonModule = splitbutton_module_1.SplitButtonModule;
24
+ var custom_messages_component_1 = require("./splitbutton/localization/custom-messages.component");
25
+ exports.SplitButtonCustomMessagesComponent = custom_messages_component_1.SplitButtonCustomMessagesComponent;
26
+ var dropdownbutton_component_1 = require("./dropdownbutton/dropdownbutton.component");
27
+ exports.DropDownButtonComponent = dropdownbutton_component_1.DropDownButtonComponent;
28
+ exports.DropDownButton = dropdownbutton_component_1.DropDownButtonComponent;
29
+ var dropdownbutton_module_1 = require("./dropdownbutton/dropdownbutton.module");
30
+ exports.DropDownButtonModule = dropdownbutton_module_1.DropDownButtonModule;
31
+ var chip_component_1 = require("./chip/chip.component");
32
+ exports.ChipComponent = chip_component_1.ChipComponent;
33
+ var chip_list_component_1 = require("./chip/chip-list.component");
34
+ exports.ChipListComponent = chip_list_component_1.ChipListComponent;
35
+ var chip_module_1 = require("./chip/chip.module");
36
+ exports.ChipModule = chip_module_1.ChipModule;
37
+ // Floating Action Button
38
+ var floatingactionbutton_module_1 = require("./floatingactionbutton/floatingactionbutton.module");
39
+ exports.FloatingActionButtonModule = floatingactionbutton_module_1.FloatingActionButtonModule;
40
+ var floatingactionbutton_component_1 = require("./floatingactionbutton/floatingactionbutton.component");
41
+ exports.FloatingActionButtonComponent = floatingactionbutton_component_1.FloatingActionButtonComponent;
42
+ var fab_template_directive_1 = require("./floatingactionbutton/templates/fab-template.directive");
43
+ exports.FloatingActionButtonTemplateDirective = fab_template_directive_1.FloatingActionButtonTemplateDirective;
44
+ var dial_item_template_directive_1 = require("./floatingactionbutton/templates/dial-item-template.directive");
45
+ exports.DialItemTemplateDirective = dial_item_template_directive_1.DialItemTemplateDirective;
@@ -0,0 +1,15 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ /**
8
+ * @hidden
9
+ */
10
+ var KeyEvents;
11
+ (function (KeyEvents) {
12
+ KeyEvents[KeyEvents["keydown"] = 0] = "keydown";
13
+ KeyEvents[KeyEvents["keypress"] = 1] = "keypress";
14
+ KeyEvents[KeyEvents["keyup"] = 2] = "keyup";
15
+ })(KeyEvents = exports.KeyEvents || (exports.KeyEvents = {}));
@@ -0,0 +1,21 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ /**
8
+ * @hidden
9
+ */
10
+ var NavigationAction;
11
+ (function (NavigationAction) {
12
+ NavigationAction[NavigationAction["Undefined"] = 0] = "Undefined";
13
+ NavigationAction[NavigationAction["Open"] = 1] = "Open";
14
+ NavigationAction[NavigationAction["Close"] = 2] = "Close";
15
+ NavigationAction[NavigationAction["Enter"] = 3] = "Enter";
16
+ NavigationAction[NavigationAction["EnterPress"] = 4] = "EnterPress";
17
+ NavigationAction[NavigationAction["EnterUp"] = 5] = "EnterUp";
18
+ NavigationAction[NavigationAction["Tab"] = 6] = "Tab";
19
+ NavigationAction[NavigationAction["Esc"] = 7] = "Esc";
20
+ NavigationAction[NavigationAction["Navigate"] = 8] = "Navigate";
21
+ })(NavigationAction = exports.NavigationAction || (exports.NavigationAction = {}));
@@ -0,0 +1,11 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ var core_1 = require("@angular/core");
8
+ /**
9
+ * @hidden
10
+ */
11
+ exports.NAVIGATION_CONFIG = new core_1.InjectionToken('navigation.config');
@@ -0,0 +1,116 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ var tslib_1 = require("tslib");
8
+ var core_1 = require("@angular/core");
9
+ var util_1 = require("./../util");
10
+ var key_events_1 = require("./key-events");
11
+ var kendo_angular_common_1 = require("@progress/kendo-angular-common");
12
+ var navigation_action_1 = require("./navigation-action");
13
+ var navigation_config_1 = require("./navigation-config");
14
+ /**
15
+ * @hidden
16
+ */
17
+ var NavigationService = /** @class */ (function () {
18
+ function NavigationService(config) {
19
+ this.navigate = new core_1.EventEmitter();
20
+ this.open = new core_1.EventEmitter();
21
+ this.close = new core_1.EventEmitter();
22
+ this.enter = new core_1.EventEmitter();
23
+ this.enterpress = new core_1.EventEmitter();
24
+ this.enterup = new core_1.EventEmitter();
25
+ this.tab = new core_1.EventEmitter();
26
+ this.esc = new core_1.EventEmitter();
27
+ this.useLeftRightArrows = config.useLeftRightArrows;
28
+ }
29
+ NavigationService.prototype.process = function (args) {
30
+ var keyCode = args.keyCode;
31
+ var keyEvent = args.keyEvent;
32
+ var index;
33
+ var action = navigation_action_1.NavigationAction.Undefined;
34
+ if (keyEvent === key_events_1.KeyEvents.keypress) {
35
+ if (this.isEnter(keyCode)) {
36
+ action = navigation_action_1.NavigationAction.EnterPress;
37
+ }
38
+ }
39
+ else if (keyEvent === key_events_1.KeyEvents.keyup) {
40
+ if (this.isEnter(keyCode)) {
41
+ action = navigation_action_1.NavigationAction.EnterUp;
42
+ }
43
+ }
44
+ else {
45
+ if (args.altKey && keyCode === kendo_angular_common_1.Keys.ArrowDown) {
46
+ action = navigation_action_1.NavigationAction.Open;
47
+ }
48
+ else if (args.altKey && keyCode === kendo_angular_common_1.Keys.ArrowUp) {
49
+ action = navigation_action_1.NavigationAction.Close;
50
+ }
51
+ else if (this.isEnter(keyCode)) {
52
+ action = navigation_action_1.NavigationAction.Enter;
53
+ }
54
+ else if (keyCode === kendo_angular_common_1.Keys.Escape) {
55
+ action = navigation_action_1.NavigationAction.Esc;
56
+ }
57
+ else if (keyCode === kendo_angular_common_1.Keys.Tab) {
58
+ action = navigation_action_1.NavigationAction.Tab;
59
+ }
60
+ else if (keyCode === kendo_angular_common_1.Keys.ArrowUp || (this.useLeftRightArrows && keyCode === kendo_angular_common_1.Keys.ArrowLeft)) {
61
+ var step = args.flipNavigation ? 1 : -1;
62
+ var start = args.flipNavigation ? args.min : args.max;
63
+ var end = args.flipNavigation ? args.max : args.min;
64
+ index = this.next({
65
+ current: args.current,
66
+ start: start,
67
+ end: end,
68
+ step: step
69
+ });
70
+ action = navigation_action_1.NavigationAction.Navigate;
71
+ }
72
+ else if (keyCode === kendo_angular_common_1.Keys.ArrowDown || (this.useLeftRightArrows && keyCode === kendo_angular_common_1.Keys.ArrowRight)) {
73
+ var step = args.flipNavigation ? -1 : 1;
74
+ var start = args.flipNavigation ? args.max : args.min;
75
+ var end = args.flipNavigation ? args.min : args.max;
76
+ index = this.next({
77
+ current: args.current,
78
+ start: start,
79
+ end: end,
80
+ step: step
81
+ });
82
+ action = navigation_action_1.NavigationAction.Navigate;
83
+ }
84
+ else if (keyCode === kendo_angular_common_1.Keys.Home) {
85
+ index = args.min;
86
+ action = navigation_action_1.NavigationAction.Navigate;
87
+ }
88
+ else if (keyCode === kendo_angular_common_1.Keys.End) {
89
+ index = args.max;
90
+ action = navigation_action_1.NavigationAction.Navigate;
91
+ }
92
+ }
93
+ if (action !== navigation_action_1.NavigationAction.Undefined) {
94
+ this[navigation_action_1.NavigationAction[action].toLowerCase()].emit(index);
95
+ }
96
+ return action;
97
+ };
98
+ NavigationService.prototype.isEnter = function (keyCode) {
99
+ return keyCode === kendo_angular_common_1.Keys.Enter || keyCode === kendo_angular_common_1.Keys.Space;
100
+ };
101
+ NavigationService.prototype.next = function (args) {
102
+ if (!util_1.isPresent(args.current)) {
103
+ return args.start;
104
+ }
105
+ else {
106
+ return args.current !== args.end ? args.current + args.step : args.end;
107
+ }
108
+ };
109
+ NavigationService = tslib_1.__decorate([
110
+ core_1.Injectable(),
111
+ tslib_1.__param(0, core_1.Inject(navigation_config_1.NAVIGATION_CONFIG)),
112
+ tslib_1.__metadata("design:paramtypes", [Object])
113
+ ], NavigationService);
114
+ return NavigationService;
115
+ }());
116
+ exports.NavigationService = NavigationService;
@@ -0,0 +1,17 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ /**
8
+ * @hidden
9
+ */
10
+ exports.packageMetadata = {
11
+ name: '@progress/kendo-angular-buttons',
12
+ productName: 'Kendo UI for Angular',
13
+ productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
14
+ publishDate: 1642682008,
15
+ version: '',
16
+ licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
17
+ };