@progress/kendo-angular-menu 3.0.6-dev.202203091409 → 4.0.0-dev.202204191048

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 (199) hide show
  1. package/bundles/kendo-angular-menu.umd.js +5 -0
  2. package/{dist/es2015/constants.d.ts → constants.d.ts} +0 -0
  3. package/{dist/es2015/context-menu → context-menu}/context-menu-event.d.ts +0 -0
  4. package/{dist/es2015/context-menu → context-menu}/context-menu-items.service.d.ts +3 -0
  5. package/{dist/es2015/context-menu → context-menu}/context-menu-popup-event.d.ts +0 -0
  6. package/{dist/es2015/context-menu → context-menu}/context-menu-select-event.d.ts +0 -0
  7. package/{dist/es2015/context-menu → context-menu}/context-menu-target-container.directive.d.ts +3 -0
  8. package/{dist/es2015/context-menu → context-menu}/context-menu-target.directive.d.ts +3 -0
  9. package/{dist/es2015/context-menu → context-menu}/context-menu-target.service.d.ts +3 -0
  10. package/{dist/es2015/context-menu → context-menu}/context-menu-template.directive.d.ts +3 -0
  11. package/{dist/es2015/context-menu → context-menu}/context-menu.component.d.ts +4 -1
  12. package/{dist/es2015/context-menu → context-menu}/context-menu.module.d.ts +11 -0
  13. package/{dist/es2015/context-menu → context-menu}/context-menu.service.d.ts +3 -0
  14. package/{dist/es2015/data-binding → data-binding}/binding-directive-base.d.ts +3 -0
  15. package/{dist/es2015/data-binding → data-binding}/flat-binding.directive.d.ts +3 -0
  16. package/{dist/es2015/data-binding → data-binding}/hierachy-binding.directive.d.ts +3 -0
  17. package/{dist/es2015/data-binding → data-binding}/utils.d.ts +0 -0
  18. package/{dist/es2015/dom-queries.d.ts → dom-queries.d.ts} +0 -0
  19. package/{dist/es2015 → esm2015}/constants.js +0 -0
  20. package/{dist/es2015 → esm2015}/context-menu/context-menu-event.js +0 -0
  21. package/esm2015/context-menu/context-menu-items.service.js +25 -0
  22. package/{dist/es2015 → esm2015}/context-menu/context-menu-popup-event.js +0 -0
  23. package/{dist/es2015 → esm2015}/context-menu/context-menu-select-event.js +0 -0
  24. package/esm2015/context-menu/context-menu-target-container.directive.js +32 -0
  25. package/esm2015/context-menu/context-menu-target.directive.js +46 -0
  26. package/{dist/es2015 → esm2015}/context-menu/context-menu-target.service.js +8 -10
  27. package/esm2015/context-menu/context-menu-template.directive.js +32 -0
  28. package/{dist/es2015 → esm2015}/context-menu/context-menu.component.js +107 -113
  29. package/{dist/es2015 → esm2015}/context-menu/context-menu.module.js +20 -11
  30. package/{dist/es2015 → esm2015}/context-menu/context-menu.service.js +8 -10
  31. package/{dist/es2015 → esm2015}/data-binding/binding-directive-base.js +12 -0
  32. package/esm2015/data-binding/flat-binding.directive.js +82 -0
  33. package/esm2015/data-binding/hierachy-binding.directive.js +71 -0
  34. package/{dist/es2015 → esm2015}/data-binding/utils.js +0 -1
  35. package/{dist/es2015 → esm2015}/dom-queries.js +0 -3
  36. package/{dist/es/constants.js → esm2015/kendo-angular-menu.js} +2 -2
  37. package/{dist/es → esm2015}/main.js +3 -2
  38. package/{dist/es → esm2015}/menu-animation.interface.js +1 -0
  39. package/esm2015/menu-base.js +69 -0
  40. package/{dist/es2015 → esm2015}/menu-event.js +0 -0
  41. package/{dist/es2015 → esm2015}/menu-item.component.js +41 -60
  42. package/{dist/es → esm2015}/menu-item.interface.js +1 -0
  43. package/{dist/es2015 → esm2015}/menu-select-event.js +0 -0
  44. package/{dist/es2015 → esm2015}/menu.component.js +76 -63
  45. package/{dist/es2015 → esm2015}/menu.module.js +32 -13
  46. package/{dist/es2015 → esm2015}/menus.module.js +12 -9
  47. package/{dist/es2015 → esm2015}/open-on-click-settings.js +0 -1
  48. package/{dist/es2015 → esm2015}/package-metadata.js +1 -1
  49. package/{dist/es2015 → esm2015}/preventable-event.js +0 -0
  50. package/esm2015/rendering/arrow.directive.js +62 -0
  51. package/esm2015/rendering/link.directive.js +54 -0
  52. package/esm2015/rendering/list.component.js +546 -0
  53. package/{dist/es2015 → esm2015}/rendering/popup-settings.js +0 -0
  54. package/{dist/es2015 → esm2015}/services/actions.service.js +21 -14
  55. package/{dist/es2015 → esm2015}/services/hover.service.js +10 -10
  56. package/{dist/es2015 → esm2015}/services/items.service.js +8 -13
  57. package/{dist/es2015 → esm2015}/services/navigation.service.js +12 -15
  58. package/{dist/es2015 → esm2015}/templates/item-content-template.directive.js +14 -12
  59. package/{dist/es2015 → esm2015}/templates/item-link-template.directive.js +14 -12
  60. package/{dist/es2015 → esm2015}/templates/item-template.directive.js +14 -12
  61. package/{dist/es2015 → esm2015}/utils.js +0 -0
  62. package/{dist/fesm2015/index.js → fesm2015/kendo-angular-menu.js} +1113 -1113
  63. package/kendo-angular-menu.d.ts +9 -0
  64. package/{dist/es2015/main.d.ts → main.d.ts} +3 -2
  65. package/{dist/es2015/menu-animation.interface.d.ts → menu-animation.interface.d.ts} +0 -0
  66. package/{dist/es2015/menu-base.d.ts → menu-base.d.ts} +4 -1
  67. package/{dist/es2015/menu-event.d.ts → menu-event.d.ts} +0 -0
  68. package/{dist/es2015/menu-item.component.d.ts → menu-item.component.d.ts} +7 -4
  69. package/{dist/es2015/menu-item.interface.d.ts → menu-item.interface.d.ts} +0 -0
  70. package/{dist/es2015/menu-select-event.d.ts → menu-select-event.d.ts} +0 -0
  71. package/{dist/es2015/menu.component.d.ts → menu.component.d.ts} +7 -4
  72. package/menu.module.d.ts +54 -0
  73. package/{dist/es2015/menus.module.d.ts → menus.module.d.ts} +6 -0
  74. package/{dist/es2015/open-on-click-settings.d.ts → open-on-click-settings.d.ts} +0 -0
  75. package/{dist/es2015/package-metadata.d.ts → package-metadata.d.ts} +0 -0
  76. package/package.json +31 -108
  77. package/{dist/es2015/preventable-event.d.ts → preventable-event.d.ts} +0 -0
  78. package/{dist/es2015/rendering → rendering}/arrow.directive.d.ts +6 -3
  79. package/{dist/es2015/rendering → rendering}/link.directive.d.ts +4 -1
  80. package/rendering/list.component.d.ts +104 -0
  81. package/{dist/es2015/rendering → rendering}/popup-settings.d.ts +0 -0
  82. package/schematics/ngAdd/index.js +5 -2
  83. package/schematics/ngAdd/index.js.map +1 -1
  84. package/{dist/es2015/services → services}/actions.service.d.ts +24 -1
  85. package/{dist/es2015/services → services}/hover.service.d.ts +7 -2
  86. package/{dist/es2015/services → services}/items.service.d.ts +4 -1
  87. package/{dist/es2015/services → services}/navigation.service.d.ts +6 -3
  88. package/{dist/es2015/templates → templates}/item-content-template.directive.d.ts +3 -0
  89. package/{dist/es2015/templates → templates}/item-link-template.directive.d.ts +3 -0
  90. package/{dist/es2015/templates → templates}/item-template.directive.d.ts +3 -0
  91. package/{dist/es2015/utils.d.ts → utils.d.ts} +1 -1
  92. package/dist/cdn/js/kendo-angular-menu.js +0 -20
  93. package/dist/cdn/main.js +0 -5
  94. package/dist/es/context-menu/context-menu-event.js +0 -13
  95. package/dist/es/context-menu/context-menu-items.service.js +0 -26
  96. package/dist/es/context-menu/context-menu-popup-event.js +0 -17
  97. package/dist/es/context-menu/context-menu-select-event.js +0 -17
  98. package/dist/es/context-menu/context-menu-target-container.directive.js +0 -31
  99. package/dist/es/context-menu/context-menu-target.directive.js +0 -48
  100. package/dist/es/context-menu/context-menu-target.service.js +0 -29
  101. package/dist/es/context-menu/context-menu-template.directive.js +0 -31
  102. package/dist/es/context-menu/context-menu.component.js +0 -456
  103. package/dist/es/context-menu/context-menu.module.js +0 -64
  104. package/dist/es/context-menu/context-menu.service.js +0 -30
  105. package/dist/es/data-binding/binding-directive-base.js +0 -32
  106. package/dist/es/data-binding/flat-binding.directive.js +0 -104
  107. package/dist/es/data-binding/hierachy-binding.directive.js +0 -94
  108. package/dist/es/data-binding/utils.js +0 -32
  109. package/dist/es/dom-queries.js +0 -107
  110. package/dist/es/index.js +0 -21
  111. package/dist/es/menu-base.js +0 -79
  112. package/dist/es/menu-event.js +0 -17
  113. package/dist/es/menu-item.component.js +0 -165
  114. package/dist/es/menu-select-event.js +0 -17
  115. package/dist/es/menu.component.js +0 -256
  116. package/dist/es/menu.module.js +0 -79
  117. package/dist/es/menus.module.js +0 -41
  118. package/dist/es/open-on-click-settings.js +0 -13
  119. package/dist/es/package-metadata.js +0 -15
  120. package/dist/es/preventable-event.js +0 -36
  121. package/dist/es/rendering/arrow.directive.js +0 -81
  122. package/dist/es/rendering/item.component.js +0 -337
  123. package/dist/es/rendering/link.directive.js +0 -62
  124. package/dist/es/rendering/list.component.js +0 -219
  125. package/dist/es/rendering/popup-settings.js +0 -66
  126. package/dist/es/services/actions.service.js +0 -178
  127. package/dist/es/services/hover.service.js +0 -136
  128. package/dist/es/services/items.service.js +0 -140
  129. package/dist/es/services/navigation.service.js +0 -274
  130. package/dist/es/templates/item-content-template.directive.js +0 -50
  131. package/dist/es/templates/item-link-template.directive.js +0 -52
  132. package/dist/es/templates/item-template.directive.js +0 -51
  133. package/dist/es/utils.js +0 -18
  134. package/dist/es2015/context-menu/context-menu-items.service.js +0 -25
  135. package/dist/es2015/context-menu/context-menu-target-container.directive.js +0 -30
  136. package/dist/es2015/context-menu/context-menu-target.directive.js +0 -47
  137. package/dist/es2015/context-menu/context-menu-template.directive.js +0 -30
  138. package/dist/es2015/data-binding/flat-binding.directive.js +0 -101
  139. package/dist/es2015/data-binding/hierachy-binding.directive.js +0 -90
  140. package/dist/es2015/index.d.ts +0 -21
  141. package/dist/es2015/index.js +0 -21
  142. package/dist/es2015/index.metadata.json +0 -1
  143. package/dist/es2015/main.js +0 -26
  144. package/dist/es2015/menu-animation.interface.js +0 -4
  145. package/dist/es2015/menu-base.js +0 -73
  146. package/dist/es2015/menu-item.interface.js +0 -4
  147. package/dist/es2015/menu.module.d.ts +0 -38
  148. package/dist/es2015/rendering/arrow.directive.js +0 -68
  149. package/dist/es2015/rendering/item.component.d.ts +0 -64
  150. package/dist/es2015/rendering/item.component.js +0 -327
  151. package/dist/es2015/rendering/link.directive.js +0 -57
  152. package/dist/es2015/rendering/list.component.d.ts +0 -41
  153. package/dist/es2015/rendering/list.component.js +0 -233
  154. package/dist/fesm5/index.js +0 -3222
  155. package/dist/npm/constants.js +0 -10
  156. package/dist/npm/context-menu/context-menu-event.js +0 -15
  157. package/dist/npm/context-menu/context-menu-items.service.js +0 -28
  158. package/dist/npm/context-menu/context-menu-popup-event.js +0 -19
  159. package/dist/npm/context-menu/context-menu-select-event.js +0 -19
  160. package/dist/npm/context-menu/context-menu-target-container.directive.js +0 -33
  161. package/dist/npm/context-menu/context-menu-target.directive.js +0 -50
  162. package/dist/npm/context-menu/context-menu-target.service.js +0 -31
  163. package/dist/npm/context-menu/context-menu-template.directive.js +0 -33
  164. package/dist/npm/context-menu/context-menu.component.js +0 -459
  165. package/dist/npm/context-menu/context-menu.module.js +0 -66
  166. package/dist/npm/context-menu/context-menu.service.js +0 -32
  167. package/dist/npm/data-binding/binding-directive-base.js +0 -34
  168. package/dist/npm/data-binding/flat-binding.directive.js +0 -106
  169. package/dist/npm/data-binding/hierachy-binding.directive.js +0 -96
  170. package/dist/npm/data-binding/utils.js +0 -34
  171. package/dist/npm/dom-queries.js +0 -110
  172. package/dist/npm/index.js +0 -37
  173. package/dist/npm/main.js +0 -50
  174. package/dist/npm/menu-animation.interface.js +0 -6
  175. package/dist/npm/menu-base.js +0 -81
  176. package/dist/npm/menu-event.js +0 -19
  177. package/dist/npm/menu-item.component.js +0 -167
  178. package/dist/npm/menu-item.interface.js +0 -6
  179. package/dist/npm/menu-select-event.js +0 -19
  180. package/dist/npm/menu.component.js +0 -258
  181. package/dist/npm/menu.module.js +0 -81
  182. package/dist/npm/menus.module.js +0 -43
  183. package/dist/npm/open-on-click-settings.js +0 -15
  184. package/dist/npm/package-metadata.js +0 -17
  185. package/dist/npm/preventable-event.js +0 -38
  186. package/dist/npm/rendering/arrow.directive.js +0 -83
  187. package/dist/npm/rendering/item.component.js +0 -339
  188. package/dist/npm/rendering/link.directive.js +0 -64
  189. package/dist/npm/rendering/list.component.js +0 -221
  190. package/dist/npm/rendering/popup-settings.js +0 -68
  191. package/dist/npm/services/actions.service.js +0 -180
  192. package/dist/npm/services/hover.service.js +0 -138
  193. package/dist/npm/services/items.service.js +0 -143
  194. package/dist/npm/services/navigation.service.js +0 -276
  195. package/dist/npm/templates/item-content-template.directive.js +0 -52
  196. package/dist/npm/templates/item-link-template.directive.js +0 -54
  197. package/dist/npm/templates/item-template.directive.js +0 -53
  198. package/dist/npm/utils.js +0 -20
  199. package/dist/systemjs/kendo-angular-menu.js +0 -5
@@ -1,83 +0,0 @@
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 items_service_1 = require("../services/items.service");
10
- /**
11
- * Represents a directive that can be used in the [`linkTemplate`]({% slug api_menu_itemlinktemplatedirective %})
12
- * of the items to render the default expand arrow.
13
- */
14
- var ExpandArrowDirective = /** @class */ (function () {
15
- function ExpandArrowDirective(itemsService) {
16
- this.itemsService = itemsService;
17
- this.hostClasses = true;
18
- this.role = 'presentation';
19
- }
20
- Object.defineProperty(ExpandArrowDirective.prototype, "arrowDown", {
21
- get: function () {
22
- return !this.item.horizontal;
23
- },
24
- enumerable: true,
25
- configurable: true
26
- });
27
- Object.defineProperty(ExpandArrowDirective.prototype, "arrowRight", {
28
- get: function () {
29
- return this.item.horizontal && !this.item.rtl;
30
- },
31
- enumerable: true,
32
- configurable: true
33
- });
34
- Object.defineProperty(ExpandArrowDirective.prototype, "arrowLeft", {
35
- get: function () {
36
- return this.item.horizontal && this.item.rtl;
37
- },
38
- enumerable: true,
39
- configurable: true
40
- });
41
- ExpandArrowDirective.prototype.ngOnInit = function () {
42
- if (core_1.isDevMode() && !this.index) {
43
- throw new Error('The kendoMenuExpandArrow directive requires the item index to be set.');
44
- }
45
- this.item = this.itemsService.get(this.index) || {};
46
- };
47
- tslib_1.__decorate([
48
- core_1.Input('kendoMenuExpandArrow'),
49
- tslib_1.__metadata("design:type", String)
50
- ], ExpandArrowDirective.prototype, "index", void 0);
51
- tslib_1.__decorate([
52
- core_1.HostBinding('class.k-icon'),
53
- core_1.HostBinding('class.k-menu-expand-arrow'),
54
- tslib_1.__metadata("design:type", Boolean)
55
- ], ExpandArrowDirective.prototype, "hostClasses", void 0);
56
- tslib_1.__decorate([
57
- core_1.HostBinding('attr.role'),
58
- tslib_1.__metadata("design:type", String)
59
- ], ExpandArrowDirective.prototype, "role", void 0);
60
- tslib_1.__decorate([
61
- core_1.HostBinding('class.k-i-arrow-60-down'),
62
- tslib_1.__metadata("design:type", Boolean),
63
- tslib_1.__metadata("design:paramtypes", [])
64
- ], ExpandArrowDirective.prototype, "arrowDown", null);
65
- tslib_1.__decorate([
66
- core_1.HostBinding('class.k-i-arrow-60-right'),
67
- tslib_1.__metadata("design:type", Boolean),
68
- tslib_1.__metadata("design:paramtypes", [])
69
- ], ExpandArrowDirective.prototype, "arrowRight", null);
70
- tslib_1.__decorate([
71
- core_1.HostBinding('class.k-i-arrow-60-left'),
72
- tslib_1.__metadata("design:type", Boolean),
73
- tslib_1.__metadata("design:paramtypes", [])
74
- ], ExpandArrowDirective.prototype, "arrowLeft", null);
75
- ExpandArrowDirective = tslib_1.__decorate([
76
- core_1.Directive({
77
- selector: '[kendoMenuExpandArrow]'
78
- }),
79
- tslib_1.__metadata("design:paramtypes", [items_service_1.ItemsService])
80
- ], ExpandArrowDirective);
81
- return ExpandArrowDirective;
82
- }());
83
- exports.ExpandArrowDirective = ExpandArrowDirective;
@@ -1,339 +0,0 @@
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 items_service_1 = require("../services/items.service");
10
- var navigation_service_1 = require("../services/navigation.service");
11
- var popup_settings_1 = require("./popup-settings");
12
- var kendo_angular_popup_1 = require("@progress/kendo-angular-popup");
13
- var utils_1 = require("../utils");
14
- var ɵ0 = utils_1.bodyFactory;
15
- exports.ɵ0 = ɵ0;
16
- /* tslint:disable:component-selector */
17
- /**
18
- * @hidden
19
- */
20
- var ItemComponent = /** @class */ (function () {
21
- function ItemComponent(itemsService, navigation, changeDetector, renderer, popupService, element) {
22
- this.itemsService = itemsService;
23
- this.navigation = navigation;
24
- this.changeDetector = changeDetector;
25
- this.renderer = renderer;
26
- this.popupService = popupService;
27
- this.element = element;
28
- this.animate = true;
29
- this.openOnClick = false;
30
- this.opened = false;
31
- this.navigating = false;
32
- this.destroyed = false;
33
- }
34
- Object.defineProperty(ItemComponent.prototype, "index", {
35
- get: function () {
36
- return this._index;
37
- },
38
- set: function (index) {
39
- if (this._index && this._index !== index) {
40
- this.itemsService.remove(this);
41
- this._index = index;
42
- this.itemsService.add(this);
43
- }
44
- else {
45
- this._index = index;
46
- }
47
- this.childId = this.itemsService.childId(index);
48
- },
49
- enumerable: true,
50
- configurable: true
51
- });
52
- Object.defineProperty(ItemComponent.prototype, "disabled", {
53
- get: function () {
54
- return this.item.disabled;
55
- },
56
- enumerable: true,
57
- configurable: true
58
- });
59
- Object.defineProperty(ItemComponent.prototype, "hasPopup", {
60
- get: function () {
61
- return this.hasContent ? true : null;
62
- },
63
- enumerable: true,
64
- configurable: true
65
- });
66
- Object.defineProperty(ItemComponent.prototype, "expanded", {
67
- get: function () {
68
- return this.hasContent ? this.opened : null;
69
- },
70
- enumerable: true,
71
- configurable: true
72
- });
73
- Object.defineProperty(ItemComponent.prototype, "label", {
74
- get: function () {
75
- return this.item.text ? this.item.text : null;
76
- },
77
- enumerable: true,
78
- configurable: true
79
- });
80
- Object.defineProperty(ItemComponent.prototype, "activeId", {
81
- get: function () {
82
- return this.index === this.navigation.activeIndex ? '0' : '-1';
83
- },
84
- enumerable: true,
85
- configurable: true
86
- });
87
- Object.defineProperty(ItemComponent.prototype, "popupSettings", {
88
- get: function () {
89
- var settings = this.rtl ? popup_settings_1.POPUP_SETTINGS_RTL : popup_settings_1.POPUP_SETTINGS;
90
- return this.horizontal ? settings.horizontal : settings.vertical;
91
- },
92
- enumerable: true,
93
- configurable: true
94
- });
95
- Object.defineProperty(ItemComponent.prototype, "horizontal", {
96
- get: function () {
97
- return this.vertical || this.level > 0;
98
- },
99
- enumerable: true,
100
- configurable: true
101
- });
102
- Object.defineProperty(ItemComponent.prototype, "hasLink", {
103
- get: function () {
104
- return Boolean(this.item.url);
105
- },
106
- enumerable: true,
107
- configurable: true
108
- });
109
- Object.defineProperty(ItemComponent.prototype, "linkTemplate", {
110
- get: function () {
111
- return this.item.linkTemplate || this.itemLinkTemplate;
112
- },
113
- enumerable: true,
114
- configurable: true
115
- });
116
- Object.defineProperty(ItemComponent.prototype, "hasContent", {
117
- get: function () {
118
- var items = this.item.items;
119
- return items && items.length || this.item.contentTemplate;
120
- },
121
- enumerable: true,
122
- configurable: true
123
- });
124
- Object.defineProperty(ItemComponent.prototype, "isContent", {
125
- get: function () {
126
- return Boolean(this.item.content);
127
- },
128
- enumerable: true,
129
- configurable: true
130
- });
131
- Object.defineProperty(ItemComponent.prototype, "iconClass", {
132
- get: function () {
133
- return "k-i-" + this.item.icon;
134
- },
135
- enumerable: true,
136
- configurable: true
137
- });
138
- Object.defineProperty(ItemComponent.prototype, "children", {
139
- get: function () {
140
- var item = this.item;
141
- if (item.contentTemplate) {
142
- if (!this.contentItems) {
143
- this.contentItems = [{
144
- content: item.contentTemplate,
145
- owner: item,
146
- ownerIndex: this.index
147
- }];
148
- }
149
- return this.contentItems;
150
- }
151
- return item.items;
152
- },
153
- enumerable: true,
154
- configurable: true
155
- });
156
- Object.defineProperty(ItemComponent.prototype, "template", {
157
- get: function () {
158
- return this.item.template || this.itemTemplate;
159
- },
160
- enumerable: true,
161
- configurable: true
162
- });
163
- ItemComponent.prototype.hasContentTemplates = function () {
164
- var item = this.item;
165
- return this.itemTemplate || item.contentTemplate || this.itemLinkTemplate ||
166
- (item.items && item.items.find(function (current) { return current.template || current.linkTemplate; }));
167
- };
168
- ItemComponent.prototype.ngOnInit = function () {
169
- this.itemsService.add(this);
170
- };
171
- ItemComponent.prototype.ngOnDestroy = function () {
172
- this.itemsService.remove(this);
173
- this.destroyed = true;
174
- if (this.popupRef) {
175
- this.popupRef.close();
176
- this.popupRef = null;
177
- }
178
- };
179
- ItemComponent.prototype.focus = function () {
180
- this.element.nativeElement.focus();
181
- };
182
- ItemComponent.prototype.blur = function () {
183
- this.element.nativeElement.blur();
184
- };
185
- ItemComponent.prototype.toggleActive = function (isActive) {
186
- if (isActive) {
187
- this.setAttribute('tabindex', '0');
188
- }
189
- else {
190
- this.setAttribute('tabindex', '-1');
191
- }
192
- };
193
- ItemComponent.prototype.open = function () {
194
- if (!this.destroyed && this.hasContent && !this.opened) {
195
- var popupSettings = this.popupSettings;
196
- var animate = this.animate ? Object.assign({}, this.animate, {
197
- direction: popupSettings.animate
198
- }) : false;
199
- this.opened = true;
200
- this.popupRef = this.popupService.open({
201
- popupAlign: popupSettings.popup,
202
- anchorAlign: popupSettings.anchor,
203
- collision: popupSettings.collision,
204
- anchor: this.element,
205
- positionMode: 'absolute',
206
- content: this.popupTemplate,
207
- popupClass: {
208
- 'k-rtl': this.rtl,
209
- 'k-menu-popup': true
210
- },
211
- animate: animate
212
- });
213
- this.setAttribute('aria-expanded', 'true');
214
- this.setAttribute('aria-owns', this.childId);
215
- this.changeDetector.detectChanges();
216
- }
217
- };
218
- ItemComponent.prototype.close = function () {
219
- if (!this.destroyed && this.opened) {
220
- this.opened = false;
221
- if (this.popupRef) {
222
- this.popupRef.close();
223
- this.popupRef = null;
224
- }
225
- this.changeDetector.detectChanges();
226
- this.setAttribute('aria-expanded', 'false');
227
- this.renderer.removeAttribute(this.element.nativeElement, 'aria-owns');
228
- }
229
- };
230
- ItemComponent.prototype.navigate = function () {
231
- var link;
232
- if (this.linkTemplate) {
233
- link = this.element.nativeElement.querySelector('a.k-menu-link');
234
- }
235
- else if (this.hasLink) {
236
- link = this.link.nativeElement;
237
- }
238
- if (link) {
239
- this.navigating = true;
240
- link.click();
241
- this.navigating = false;
242
- }
243
- };
244
- ItemComponent.prototype.setAttribute = function (name, value) {
245
- this.renderer.setAttribute(this.element.nativeElement, name, value);
246
- };
247
- tslib_1.__decorate([
248
- core_1.Input(),
249
- tslib_1.__metadata("design:type", Object)
250
- ], ItemComponent.prototype, "item", void 0);
251
- tslib_1.__decorate([
252
- core_1.Input(),
253
- tslib_1.__metadata("design:type", Number)
254
- ], ItemComponent.prototype, "level", void 0);
255
- tslib_1.__decorate([
256
- core_1.Input(),
257
- tslib_1.__metadata("design:type", String),
258
- tslib_1.__metadata("design:paramtypes", [String])
259
- ], ItemComponent.prototype, "index", null);
260
- tslib_1.__decorate([
261
- core_1.Input(),
262
- tslib_1.__metadata("design:type", Number)
263
- ], ItemComponent.prototype, "siblingIndex", void 0);
264
- tslib_1.__decorate([
265
- core_1.Input(),
266
- tslib_1.__metadata("design:type", Object)
267
- ], ItemComponent.prototype, "animate", void 0);
268
- tslib_1.__decorate([
269
- core_1.Input(),
270
- tslib_1.__metadata("design:type", Boolean)
271
- ], ItemComponent.prototype, "vertical", void 0);
272
- tslib_1.__decorate([
273
- core_1.Input(),
274
- tslib_1.__metadata("design:type", Boolean)
275
- ], ItemComponent.prototype, "rtl", void 0);
276
- tslib_1.__decorate([
277
- core_1.Input(),
278
- tslib_1.__metadata("design:type", Boolean)
279
- ], ItemComponent.prototype, "openOnClick", void 0);
280
- tslib_1.__decorate([
281
- core_1.Input(),
282
- tslib_1.__metadata("design:type", core_1.TemplateRef)
283
- ], ItemComponent.prototype, "itemTemplate", void 0);
284
- tslib_1.__decorate([
285
- core_1.Input(),
286
- tslib_1.__metadata("design:type", core_1.TemplateRef)
287
- ], ItemComponent.prototype, "itemLinkTemplate", void 0);
288
- tslib_1.__decorate([
289
- core_1.ViewChild('link', { static: false }),
290
- tslib_1.__metadata("design:type", core_1.ElementRef)
291
- ], ItemComponent.prototype, "link", void 0);
292
- tslib_1.__decorate([
293
- core_1.ViewChild('popupTemplate', { static: true }),
294
- tslib_1.__metadata("design:type", core_1.TemplateRef)
295
- ], ItemComponent.prototype, "popupTemplate", void 0);
296
- tslib_1.__decorate([
297
- core_1.HostBinding('attr.aria-disabled'),
298
- tslib_1.__metadata("design:type", Boolean),
299
- tslib_1.__metadata("design:paramtypes", [])
300
- ], ItemComponent.prototype, "disabled", null);
301
- tslib_1.__decorate([
302
- core_1.HostBinding('attr.aria-haspopup'),
303
- tslib_1.__metadata("design:type", Boolean),
304
- tslib_1.__metadata("design:paramtypes", [])
305
- ], ItemComponent.prototype, "hasPopup", null);
306
- tslib_1.__decorate([
307
- core_1.HostBinding('attr.aria-expanded'),
308
- tslib_1.__metadata("design:type", Boolean),
309
- tslib_1.__metadata("design:paramtypes", [])
310
- ], ItemComponent.prototype, "expanded", null);
311
- tslib_1.__decorate([
312
- core_1.HostBinding('attr.aria-label'),
313
- tslib_1.__metadata("design:type", Boolean),
314
- tslib_1.__metadata("design:paramtypes", [])
315
- ], ItemComponent.prototype, "label", null);
316
- tslib_1.__decorate([
317
- core_1.HostBinding('attr.tabindex'),
318
- tslib_1.__metadata("design:type", String),
319
- tslib_1.__metadata("design:paramtypes", [])
320
- ], ItemComponent.prototype, "activeId", null);
321
- ItemComponent = tslib_1.__decorate([
322
- core_1.Component({
323
- providers: [kendo_angular_popup_1.PopupService, {
324
- provide: kendo_angular_popup_1.POPUP_CONTAINER,
325
- useFactory: ɵ0
326
- }],
327
- selector: '[kendoMenuItem]',
328
- template: "\n <span *ngIf=\"!hasLink && !item.content && !linkTemplate\" class=\"k-link k-menu-link\" #link\n [class.k-state-active]=\"opened\" role=\"presentation\">\n <ng-template [ngTemplateOutlet]=\"itemcontent\">\n </ng-template>\n </span>\n <a *ngIf=\"item.url && !linkTemplate\" class=\"k-link k-menu-link\" #link [attr.href]=\"item.url\"\n [class.k-state-active]=\"opened\" tabindex=\"-1\" role=\"presentation\">\n <ng-template [ngTemplateOutlet]=\"itemcontent\">\n </ng-template>\n </a>\n <ng-template *ngIf=\"linkTemplate && !item.content\" [ngTemplateOutlet]=\"linkTemplate\"\n [ngTemplateOutletContext]=\"{ item: item, index: index }\">\n </ng-template>\n\n <div class=\"k-content\" *ngIf=\"item.content\" role=\"presentation\">\n <ng-template [ngTemplateOutlet]=\"item.content\" [ngTemplateOutletContext]=\"{ item: item.owner, index: item.ownerIndex }\">\n </ng-template>\n </div>\n\n <ng-template #popupTemplate>\n <ul kendoMenuList\n [attr.id]=\"childId\"\n [animate]=\"animate\"\n [rtl]=\"rtl\"\n [vertical]=\"vertical\"\n [openOnClick]=\"openOnClick\"\n [items]=\"children\"\n [level]=\"level + 1\"\n [index]=\"index\"\n [itemTemplate]=\"itemTemplate\"\n [itemLinkTemplate]=\"itemLinkTemplate\"\n role=\"menu\"\n class=\"k-group k-menu-group k-reset\">\n </ul>\n </ng-template>\n\n <ng-template #itemcontent>\n <span *ngIf=\"item.icon\" class=\"k-icon\" [ngClass]=\"iconClass\" role=\"presentation\"></span>\n <ng-container *ngIf=\"!template\">\n <span class=\"k-menu-link-text\">{{ item.text }}</span>\n </ng-container>\n <ng-template *ngIf=\"template\" [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ item: item, index: index }\">\n </ng-template>\n <span class=\"k-icon k-menu-expand-arrow\" *ngIf=\"hasContent\"\n role=\"presentation\"\n [class.k-i-arrow-60-down]=\"!horizontal\"\n [class.k-i-arrow-60-right]=\"horizontal && !rtl\"\n [class.k-i-arrow-60-left]=\"horizontal && rtl\">\n </span>\n </ng-template>\n "
329
- }),
330
- tslib_1.__metadata("design:paramtypes", [items_service_1.ItemsService,
331
- navigation_service_1.NavigationService,
332
- core_1.ChangeDetectorRef,
333
- core_1.Renderer2,
334
- kendo_angular_popup_1.PopupService,
335
- core_1.ElementRef])
336
- ], ItemComponent);
337
- return ItemComponent;
338
- }());
339
- exports.ItemComponent = ItemComponent;
@@ -1,64 +0,0 @@
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 items_service_1 = require("../services/items.service");
10
- /**
11
- * Represents a directive that can be used in the [`linkTemplate`]({% slug api_menu_itemlinktemplatedirective %})
12
- * of the items to apply the default styling and behavior.
13
- */
14
- var LinkDirective = /** @class */ (function () {
15
- function LinkDirective(itemsService) {
16
- this.itemsService = itemsService;
17
- this.hostClasses = true;
18
- this.role = 'presentation';
19
- this.tabindex = '-1';
20
- }
21
- Object.defineProperty(LinkDirective.prototype, "activeClass", {
22
- get: function () {
23
- return this.item.opened;
24
- },
25
- enumerable: true,
26
- configurable: true
27
- });
28
- LinkDirective.prototype.ngOnInit = function () {
29
- if (core_1.isDevMode() && !this.index) {
30
- throw new Error('The kendoMenuItemLink directive requires the item index to be set.');
31
- }
32
- this.item = this.itemsService.get(this.index) || {};
33
- };
34
- tslib_1.__decorate([
35
- core_1.Input('kendoMenuItemLink'),
36
- tslib_1.__metadata("design:type", String)
37
- ], LinkDirective.prototype, "index", void 0);
38
- tslib_1.__decorate([
39
- core_1.HostBinding('class.k-link'),
40
- core_1.HostBinding('class.k-menu-link'),
41
- tslib_1.__metadata("design:type", Boolean)
42
- ], LinkDirective.prototype, "hostClasses", void 0);
43
- tslib_1.__decorate([
44
- core_1.HostBinding('attr.role'),
45
- tslib_1.__metadata("design:type", String)
46
- ], LinkDirective.prototype, "role", void 0);
47
- tslib_1.__decorate([
48
- core_1.HostBinding('attr.tabindex'),
49
- tslib_1.__metadata("design:type", String)
50
- ], LinkDirective.prototype, "tabindex", void 0);
51
- tslib_1.__decorate([
52
- core_1.HostBinding('class.k-state-active'),
53
- tslib_1.__metadata("design:type", Boolean),
54
- tslib_1.__metadata("design:paramtypes", [])
55
- ], LinkDirective.prototype, "activeClass", null);
56
- LinkDirective = tslib_1.__decorate([
57
- core_1.Directive({
58
- selector: '[kendoMenuItemLink]'
59
- }),
60
- tslib_1.__metadata("design:paramtypes", [items_service_1.ItemsService])
61
- ], LinkDirective);
62
- return LinkDirective;
63
- }());
64
- exports.LinkDirective = LinkDirective;