@progress/kendo-vue-layout 3.5.0 → 3.5.1-dev.202208150613

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 (254) hide show
  1. package/dist/cdn/js/kendo-vue-layout.js +1 -1
  2. package/dist/es/card/Avatar.js +2 -2
  3. package/dist/es/card/Card.js +1 -1
  4. package/dist/es/card/CardActions.js +1 -1
  5. package/dist/es/card/interfaces/AvatarProps.js +1 -0
  6. package/dist/es/card/interfaces/CardActionsProps.js +1 -0
  7. package/dist/es/card/interfaces/CardBodyProps.js +1 -0
  8. package/dist/es/card/interfaces/CardFooterProps.js +1 -0
  9. package/dist/es/card/interfaces/CardHeaderProps.js +1 -0
  10. package/dist/es/card/interfaces/CardImageProps.js +1 -0
  11. package/dist/es/card/interfaces/CardProps.js +1 -0
  12. package/dist/es/card/interfaces/CardSubtitleProps.js +1 -0
  13. package/dist/es/card/interfaces/CardTitleProps.js +1 -0
  14. package/dist/es/drawer/context/DrawerContext.js +1 -0
  15. package/dist/es/drawer/interfaces/DrawerAnimation.js +1 -0
  16. package/dist/es/drawer/interfaces/DrawerContentProps.js +1 -0
  17. package/dist/es/drawer/interfaces/DrawerItemHandle.js +1 -0
  18. package/dist/es/drawer/interfaces/DrawerItemProps.js +1 -0
  19. package/dist/es/drawer/interfaces/DrawerNavigationProps.js +1 -0
  20. package/dist/es/drawer/interfaces/DrawerProps.js +1 -0
  21. package/dist/es/drawer/interfaces/DrawerSelectEvent.js +1 -0
  22. package/dist/es/menu/BaseMenuItemInternalProps.js +1 -0
  23. package/dist/es/menu/MenuProps.js +1 -1
  24. package/dist/es/menu/components/MenuItemInternal.js +1 -1
  25. package/dist/es/menu/events.js +1 -0
  26. package/dist/es/menu/models/BaseMenuItem.js +1 -0
  27. package/dist/es/menu/models/MenuItemModel.js +1 -0
  28. package/dist/es/menu/utils/misc.js +1 -1
  29. package/dist/es/package-metadata.js +1 -1
  30. package/dist/es/panelbar/PanelBar.js +8 -12
  31. package/dist/es/panelbar/PanelBarItem.js +1 -1
  32. package/dist/es/panelbar/interfaces/PanelBarItemClickEventArguments.js +1 -0
  33. package/dist/es/panelbar/interfaces/PanelBarItemProps.js +1 -0
  34. package/dist/es/panelbar/interfaces/PanelBarProps.js +1 -0
  35. package/dist/es/panelbar/interfaces/PanelBarSelectEventArguments.js +1 -0
  36. package/dist/es/panelbar/interfaces/RenderPanelBarItem.js +1 -0
  37. package/dist/es/panelbar/util.js +10 -14
  38. package/dist/es/splitter/Splitter.js +3 -3
  39. package/dist/es/stepper/Step.js +3 -3
  40. package/dist/es/stepper/context/StepperContext.js +1 -0
  41. package/dist/es/stepper/interfaces/StepChangeEvent.js +1 -0
  42. package/dist/es/stepper/interfaces/StepFocusEvent.js +1 -0
  43. package/dist/es/stepper/interfaces/StepHandle.js +1 -0
  44. package/dist/es/stepper/interfaces/StepProps.js +1 -0
  45. package/dist/es/stepper/interfaces/StepperChangeEvent.js +1 -0
  46. package/dist/es/stepper/interfaces/StepperFocusEvent.js +1 -0
  47. package/dist/es/stepper/interfaces/StepperHandle.js +1 -0
  48. package/dist/es/stepper/interfaces/StepperProps.js +1 -0
  49. package/dist/esm/additionalTypes.ts +21 -0
  50. package/dist/esm/card/Avatar.d.ts +43 -0
  51. package/dist/esm/card/Avatar.js +100 -0
  52. package/dist/esm/card/Card.d.ts +43 -0
  53. package/dist/esm/card/Card.js +70 -0
  54. package/dist/esm/card/CardActions.d.ts +43 -0
  55. package/dist/esm/card/CardActions.js +59 -0
  56. package/dist/esm/card/CardBody.d.ts +43 -0
  57. package/dist/esm/card/CardBody.js +33 -0
  58. package/dist/esm/card/CardFooter.d.ts +43 -0
  59. package/dist/esm/card/CardFooter.js +33 -0
  60. package/dist/esm/card/CardHeader.d.ts +43 -0
  61. package/dist/esm/card/CardHeader.js +33 -0
  62. package/dist/esm/card/CardImage.d.ts +43 -0
  63. package/dist/esm/card/CardImage.js +40 -0
  64. package/dist/esm/card/CardSubtitle.d.ts +43 -0
  65. package/dist/esm/card/CardSubtitle.js +33 -0
  66. package/dist/esm/card/CardTitle.d.ts +43 -0
  67. package/dist/esm/card/CardTitle.js +33 -0
  68. package/dist/esm/card/interfaces/AvatarProps.d.ts +72 -0
  69. package/dist/esm/card/interfaces/AvatarProps.js +1 -0
  70. package/dist/esm/card/interfaces/CardActionsProps.d.ts +22 -0
  71. package/dist/esm/card/interfaces/CardActionsProps.js +1 -0
  72. package/dist/esm/card/interfaces/CardBodyProps.d.ts +2 -0
  73. package/dist/esm/card/interfaces/CardBodyProps.js +1 -0
  74. package/dist/esm/card/interfaces/CardFooterProps.d.ts +2 -0
  75. package/dist/esm/card/interfaces/CardFooterProps.js +1 -0
  76. package/dist/esm/card/interfaces/CardHeaderProps.d.ts +2 -0
  77. package/dist/esm/card/interfaces/CardHeaderProps.js +1 -0
  78. package/dist/esm/card/interfaces/CardImageProps.d.ts +6 -0
  79. package/dist/esm/card/interfaces/CardImageProps.js +1 -0
  80. package/dist/esm/card/interfaces/CardProps.d.ts +28 -0
  81. package/dist/esm/card/interfaces/CardProps.js +1 -0
  82. package/dist/esm/card/interfaces/CardSubtitleProps.d.ts +2 -0
  83. package/dist/esm/card/interfaces/CardSubtitleProps.js +1 -0
  84. package/dist/esm/card/interfaces/CardTitleProps.d.ts +2 -0
  85. package/dist/esm/card/interfaces/CardTitleProps.js +1 -0
  86. package/dist/esm/card/interfaces/Enums.d.ts +32 -0
  87. package/dist/esm/card/interfaces/Enums.js +46 -0
  88. package/dist/esm/drawer/Drawer.d.ts +51 -0
  89. package/dist/esm/drawer/Drawer.js +204 -0
  90. package/dist/esm/drawer/DrawerContent.d.ts +110 -0
  91. package/dist/esm/drawer/DrawerContent.js +103 -0
  92. package/dist/esm/drawer/DrawerItem.d.ts +75 -0
  93. package/dist/esm/drawer/DrawerItem.js +164 -0
  94. package/dist/esm/drawer/DrawerNavigation.d.ts +50 -0
  95. package/dist/esm/drawer/DrawerNavigation.js +216 -0
  96. package/dist/esm/drawer/context/DrawerContext.d.ts +17 -0
  97. package/dist/esm/drawer/context/DrawerContext.js +14 -0
  98. package/dist/esm/drawer/interfaces/DrawerAnimation.d.ts +14 -0
  99. package/dist/esm/drawer/interfaces/DrawerAnimation.js +1 -0
  100. package/dist/esm/drawer/interfaces/DrawerContentProps.d.ts +5 -0
  101. package/dist/esm/drawer/interfaces/DrawerContentProps.js +1 -0
  102. package/dist/esm/drawer/interfaces/DrawerItemHandle.d.ts +17 -0
  103. package/dist/esm/drawer/interfaces/DrawerItemHandle.js +1 -0
  104. package/dist/esm/drawer/interfaces/DrawerItemProps.d.ts +43 -0
  105. package/dist/esm/drawer/interfaces/DrawerItemProps.js +1 -0
  106. package/dist/esm/drawer/interfaces/DrawerNavigationProps.d.ts +5 -0
  107. package/dist/esm/drawer/interfaces/DrawerNavigationProps.js +1 -0
  108. package/dist/esm/drawer/interfaces/DrawerProps.d.ts +69 -0
  109. package/dist/esm/drawer/interfaces/DrawerProps.js +1 -0
  110. package/dist/esm/drawer/interfaces/DrawerSelectEvent.d.ts +13 -0
  111. package/dist/esm/drawer/interfaces/DrawerSelectEvent.js +1 -0
  112. package/dist/esm/main.d.ts +49 -0
  113. package/dist/esm/main.js +49 -0
  114. package/dist/esm/menu/BaseMenuItemInternalProps.d.ts +20 -0
  115. package/dist/esm/menu/BaseMenuItemInternalProps.js +1 -0
  116. package/dist/esm/menu/MenuProps.d.ts +51 -0
  117. package/dist/esm/menu/MenuProps.js +1 -0
  118. package/dist/esm/menu/components/Menu.d.ts +79 -0
  119. package/dist/esm/menu/components/Menu.js +322 -0
  120. package/dist/esm/menu/components/MenuItemArrow.d.ts +70 -0
  121. package/dist/esm/menu/components/MenuItemArrow.js +68 -0
  122. package/dist/esm/menu/components/MenuItemInternal.d.ts +61 -0
  123. package/dist/esm/menu/components/MenuItemInternal.js +454 -0
  124. package/dist/esm/menu/components/MenuItemInternalsList.d.ts +49 -0
  125. package/dist/esm/menu/components/MenuItemInternalsList.js +152 -0
  126. package/dist/esm/menu/components/MenuItemLink.d.ts +58 -0
  127. package/dist/esm/menu/components/MenuItemLink.js +67 -0
  128. package/dist/esm/menu/consts.d.ts +54 -0
  129. package/dist/esm/menu/consts.js +70 -0
  130. package/dist/esm/menu/events.d.ts +14 -0
  131. package/dist/esm/menu/events.js +2 -0
  132. package/dist/esm/menu/models/BaseMenuItem.d.ts +45 -0
  133. package/dist/esm/menu/models/BaseMenuItem.js +2 -0
  134. package/dist/esm/menu/models/MenuItemModel.d.ts +19 -0
  135. package/dist/esm/menu/models/MenuItemModel.js +1 -0
  136. package/dist/esm/menu/utils/DirectionHolder.d.ts +11 -0
  137. package/dist/esm/menu/utils/DirectionHolder.js +24 -0
  138. package/dist/esm/menu/utils/MouseOverHandler.d.ts +17 -0
  139. package/dist/esm/menu/utils/MouseOverHandler.js +64 -0
  140. package/dist/esm/menu/utils/getNewItemIdUponKeyboardNavigation.d.ts +7 -0
  141. package/dist/esm/menu/utils/getNewItemIdUponKeyboardNavigation.js +202 -0
  142. package/dist/esm/menu/utils/hoverDelay.d.ts +9 -0
  143. package/dist/esm/menu/utils/hoverDelay.js +17 -0
  144. package/dist/esm/menu/utils/itemsIdsUtils.d.ts +64 -0
  145. package/dist/esm/menu/utils/itemsIdsUtils.js +119 -0
  146. package/dist/esm/menu/utils/misc.d.ts +16 -0
  147. package/dist/esm/menu/utils/misc.js +42 -0
  148. package/dist/esm/menu/utils/prepareInputItemsForInternalWork.d.ts +5 -0
  149. package/dist/esm/menu/utils/prepareInputItemsForInternalWork.js +80 -0
  150. package/dist/esm/package-metadata.d.ts +5 -0
  151. package/dist/esm/package-metadata.js +11 -0
  152. package/dist/esm/package.json +3 -0
  153. package/dist/esm/panelbar/PanelBar.d.ts +48 -0
  154. package/dist/esm/panelbar/PanelBar.js +318 -0
  155. package/dist/esm/panelbar/PanelBarGroup.d.ts +53 -0
  156. package/dist/esm/panelbar/PanelBarGroup.js +139 -0
  157. package/dist/esm/panelbar/PanelBarItem.d.ts +40 -0
  158. package/dist/esm/panelbar/PanelBarItem.js +217 -0
  159. package/dist/esm/panelbar/interfaces/NavigationAction.d.ts +8 -0
  160. package/dist/esm/panelbar/interfaces/NavigationAction.js +9 -0
  161. package/dist/esm/panelbar/interfaces/PanelBarItemClickEventArguments.d.ts +7 -0
  162. package/dist/esm/panelbar/interfaces/PanelBarItemClickEventArguments.js +1 -0
  163. package/dist/esm/panelbar/interfaces/PanelBarItemProps.d.ts +85 -0
  164. package/dist/esm/panelbar/interfaces/PanelBarItemProps.js +1 -0
  165. package/dist/esm/panelbar/interfaces/PanelBarProps.d.ts +58 -0
  166. package/dist/esm/panelbar/interfaces/PanelBarProps.js +1 -0
  167. package/dist/esm/panelbar/interfaces/PanelBarSelectEventArguments.d.ts +13 -0
  168. package/dist/esm/panelbar/interfaces/PanelBarSelectEventArguments.js +1 -0
  169. package/dist/esm/panelbar/interfaces/RenderPanelBarItem.d.ts +14 -0
  170. package/dist/esm/panelbar/interfaces/RenderPanelBarItem.js +1 -0
  171. package/dist/esm/panelbar/util.d.ts +35 -0
  172. package/dist/esm/panelbar/util.js +232 -0
  173. package/dist/esm/splitter/Splitter.d.ts +139 -0
  174. package/dist/esm/splitter/Splitter.js +466 -0
  175. package/dist/esm/splitter/SplitterBar.d.ts +56 -0
  176. package/dist/esm/splitter/SplitterBar.js +289 -0
  177. package/dist/esm/splitter/SplitterPane.d.ts +93 -0
  178. package/dist/esm/splitter/SplitterPane.js +79 -0
  179. package/dist/esm/stepper/Step.d.ts +54 -0
  180. package/dist/esm/stepper/Step.js +227 -0
  181. package/dist/esm/stepper/Stepper.d.ts +97 -0
  182. package/dist/esm/stepper/Stepper.js +463 -0
  183. package/dist/esm/stepper/contants.d.ts +8 -0
  184. package/dist/esm/stepper/contants.js +8 -0
  185. package/dist/esm/stepper/context/StepperContext.d.ts +16 -0
  186. package/dist/esm/stepper/context/StepperContext.js +9 -0
  187. package/dist/esm/stepper/interfaces/StepChangeEvent.d.ts +9 -0
  188. package/dist/esm/stepper/interfaces/StepChangeEvent.js +1 -0
  189. package/dist/esm/stepper/interfaces/StepFocusEvent.d.ts +5 -0
  190. package/dist/esm/stepper/interfaces/StepFocusEvent.js +1 -0
  191. package/dist/esm/stepper/interfaces/StepHandle.d.ts +13 -0
  192. package/dist/esm/stepper/interfaces/StepHandle.js +4 -0
  193. package/dist/esm/stepper/interfaces/StepProps.d.ts +67 -0
  194. package/dist/esm/stepper/interfaces/StepProps.js +1 -0
  195. package/dist/esm/stepper/interfaces/StepperChangeEvent.d.ts +9 -0
  196. package/dist/esm/stepper/interfaces/StepperChangeEvent.js +1 -0
  197. package/dist/esm/stepper/interfaces/StepperFocusEvent.d.ts +5 -0
  198. package/dist/esm/stepper/interfaces/StepperFocusEvent.js +1 -0
  199. package/dist/esm/stepper/interfaces/StepperHandle.d.ts +13 -0
  200. package/dist/esm/stepper/interfaces/StepperHandle.js +4 -0
  201. package/dist/esm/stepper/interfaces/StepperOnNavigateEvent.d.ts +23 -0
  202. package/dist/esm/stepper/interfaces/StepperOnNavigateEvent.js +15 -0
  203. package/dist/esm/stepper/interfaces/StepperProps.d.ts +84 -0
  204. package/dist/esm/stepper/interfaces/StepperProps.js +1 -0
  205. package/dist/esm/stepper/messages/index.d.ts +10 -0
  206. package/dist/esm/stepper/messages/index.js +11 -0
  207. package/dist/esm/tabstrip/TabStrip.d.ts +114 -0
  208. package/dist/esm/tabstrip/TabStrip.js +333 -0
  209. package/dist/esm/tabstrip/TabStripContent.d.ts +79 -0
  210. package/dist/esm/tabstrip/TabStripContent.js +141 -0
  211. package/dist/esm/tabstrip/TabStripNavigation.d.ts +79 -0
  212. package/dist/esm/tabstrip/TabStripNavigation.js +127 -0
  213. package/dist/esm/tabstrip/TabStripNavigationItem.d.ts +85 -0
  214. package/dist/esm/tabstrip/TabStripNavigationItem.js +101 -0
  215. package/dist/esm/tabstrip/TabStripTab.d.ts +74 -0
  216. package/dist/esm/tabstrip/TabStripTab.js +71 -0
  217. package/dist/esm/tabstrip/utils.d.ts +1 -0
  218. package/dist/esm/tabstrip/utils.js +14 -0
  219. package/dist/npm/card/Avatar.js +4 -4
  220. package/dist/npm/card/Card.js +3 -3
  221. package/dist/npm/card/CardActions.js +2 -2
  222. package/dist/npm/card/CardBody.js +1 -1
  223. package/dist/npm/card/CardFooter.js +1 -1
  224. package/dist/npm/card/CardHeader.js +1 -1
  225. package/dist/npm/card/CardImage.js +1 -1
  226. package/dist/npm/card/CardSubtitle.js +1 -1
  227. package/dist/npm/card/CardTitle.js +1 -1
  228. package/dist/npm/drawer/Drawer.js +3 -3
  229. package/dist/npm/drawer/DrawerContent.js +1 -1
  230. package/dist/npm/drawer/DrawerItem.js +3 -3
  231. package/dist/npm/drawer/DrawerNavigation.js +1 -1
  232. package/dist/npm/main.js +6 -2
  233. package/dist/npm/menu/components/Menu.js +14 -14
  234. package/dist/npm/menu/components/MenuItemArrow.js +1 -1
  235. package/dist/npm/menu/components/MenuItemInternal.js +13 -13
  236. package/dist/npm/menu/components/MenuItemInternalsList.js +2 -2
  237. package/dist/npm/menu/components/MenuItemLink.js +1 -1
  238. package/dist/npm/menu/utils/getNewItemIdUponKeyboardNavigation.js +24 -24
  239. package/dist/npm/menu/utils/misc.js +2 -2
  240. package/dist/npm/menu/utils/prepareInputItemsForInternalWork.js +2 -2
  241. package/dist/npm/package-metadata.js +1 -1
  242. package/dist/npm/panelbar/PanelBar.js +15 -19
  243. package/dist/npm/panelbar/PanelBarItem.js +5 -5
  244. package/dist/npm/panelbar/util.js +26 -24
  245. package/dist/npm/splitter/Splitter.js +4 -4
  246. package/dist/npm/splitter/SplitterBar.js +3 -3
  247. package/dist/npm/splitter/SplitterPane.js +1 -1
  248. package/dist/npm/stepper/Step.js +6 -6
  249. package/dist/npm/stepper/Stepper.js +4 -4
  250. package/dist/npm/tabstrip/TabStrip.js +3 -3
  251. package/dist/npm/tabstrip/TabStripContent.js +3 -3
  252. package/dist/npm/tabstrip/TabStripTab.js +2 -2
  253. package/dist/npm/tabstrip/utils.js +2 -1
  254. package/package.json +16 -10
@@ -0,0 +1,68 @@
1
+ // @ts-ignore
2
+ import * as Vue from 'vue';
3
+ var allVue = Vue;
4
+ var gh = allVue.h;
5
+ var isV3 = allVue.version && allVue.version[0] === '3';
6
+ import { getChildrenPosition } from '../utils/misc.js';
7
+ /**
8
+ * @hidden
9
+ */
10
+
11
+ export var downArrowClass = 'k-i-arrow-60-down';
12
+ /**
13
+ * @hidden
14
+ */
15
+
16
+ export var rightArrowClass = 'k-i-arrow-60-right';
17
+ /**
18
+ * @hidden
19
+ */
20
+
21
+ export var leftArrowClass = 'k-i-arrow-60-left';
22
+ /**
23
+ * @hidden
24
+ */
25
+
26
+ var MenuItemArrowVue2 = {
27
+ name: 'KendoMenuItemArrow',
28
+ props: {
29
+ itemId: String,
30
+ dir: String,
31
+ verticalMenu: Boolean
32
+ },
33
+ // @ts-ignore
34
+ setup: !isV3 ? undefined : function () {
35
+ var v3 = !!isV3;
36
+ return {
37
+ v3: v3
38
+ };
39
+ },
40
+ render: function render(createElement) {
41
+ var h = gh || createElement;
42
+ return h("span", {
43
+ "class": "k-menu-expand-arrow"
44
+ }, [h("span", {
45
+ "class": this.getArrowClassName(),
46
+ role: "presentation",
47
+ attrs: this.v3 ? undefined : {
48
+ role: "presentation"
49
+ }
50
+ })]);
51
+ },
52
+ methods: {
53
+ getArrowClassName: function getArrowClassName() {
54
+ var _a;
55
+
56
+ var childrenPosition = getChildrenPosition(this.$props.itemId, this.$props.verticalMenu === true, this.$props.dir === 'rtl');
57
+ return _a = {
58
+ 'k-icon': true
59
+ }, _a[downArrowClass] = childrenPosition === 'downward', _a[rightArrowClass] = childrenPosition === 'rightward', _a[leftArrowClass] = childrenPosition === 'leftward', _a;
60
+ }
61
+ }
62
+ };
63
+ /**
64
+ * @hidden
65
+ */
66
+
67
+ var MenuItemArrow = MenuItemArrowVue2;
68
+ export { MenuItemArrow, MenuItemArrowVue2 };
@@ -0,0 +1,61 @@
1
+ import { DefineComponent, RecordPropsDefinition, ComponentOptions, Vue2type } from '../../additionalTypes';
2
+ declare type DefaultData<V> = object | ((this: V) => {});
3
+ declare type DefaultMethods<V> = {
4
+ [key: string]: (this: V, ...args: any[]) => any;
5
+ };
6
+ import { MenuItemInternalModel } from '../models/MenuItemModel';
7
+ import { BaseMenuItemInternalProps } from './../BaseMenuItemInternalProps';
8
+ /**
9
+ * @hidden
10
+ */
11
+ export interface MenuItemInternalProps extends BaseMenuItemInternalProps {
12
+ item: MenuItemInternalModel;
13
+ }
14
+ /**
15
+ * @hidden
16
+ */
17
+ export interface MenuItemInternalState {
18
+ itemElement: any;
19
+ isFirstRender: boolean;
20
+ prevFocusedItemId?: string;
21
+ kendoAnchorRef: any;
22
+ _anchor: string;
23
+ }
24
+ /**
25
+ * @hidden
26
+ */
27
+ export interface MenuItemInternalComputed {
28
+ currentItemRender: any;
29
+ currentLinkRender: any;
30
+ contentRender: any;
31
+ currentOpened: boolean;
32
+ currentFocused: boolean;
33
+ popupClassName: string;
34
+ menuItemClassName: object;
35
+ }
36
+ /**
37
+ * @hidden
38
+ */
39
+ export interface MenuItemInternalMethods {
40
+ [key: string]: any;
41
+ }
42
+ /**
43
+ * @hidden
44
+ */
45
+ export interface MenuItemInternalData {
46
+ opened: boolean;
47
+ }
48
+ /**
49
+ * @hidden
50
+ */
51
+ export interface MenuItemInternalAll extends Vue2type, MenuItemInternalMethods, MenuItemInternalData, MenuItemInternalComputed, MenuItemInternalState {
52
+ }
53
+ /**
54
+ * @hidden
55
+ */
56
+ declare let MenuItemInternalVue2: ComponentOptions<MenuItemInternalAll, DefaultData<MenuItemInternalData>, DefaultMethods<MenuItemInternalAll>, MenuItemInternalComputed, RecordPropsDefinition<MenuItemInternalProps>>;
57
+ /**
58
+ * @hidden
59
+ */
60
+ declare const MenuItemInternal: DefineComponent<MenuItemInternalProps, any, MenuItemInternalData, MenuItemInternalComputed, MenuItemInternalMethods, {}, {}, {}, string, MenuItemInternalProps, MenuItemInternalProps, {}>;
61
+ export { MenuItemInternal, MenuItemInternalVue2 };
@@ -0,0 +1,454 @@
1
+ // @ts-ignore
2
+ import * as Vue from 'vue';
3
+ var allVue = Vue;
4
+ var gh = allVue.h;
5
+ var isV3 = allVue.version && allVue.version[0] === '3';
6
+ var ref = allVue.ref;
7
+ import { classNames, guid, getTemplate, setRef, getRef } from '@progress/kendo-vue-common';
8
+ import { Popup } from '@progress/kendo-vue-popup';
9
+ import { shouldOpenItem, isFirstItemFromSiblings } from '../utils/itemsIdsUtils.js';
10
+ import { getPopupSettings, convertBoolDirectionToString, getDOMElementId } from '../utils/misc.js';
11
+ import { MenuItemLink } from './MenuItemLink.js';
12
+ import { MenuItemInternalsList } from './MenuItemInternalsList.js';
13
+ import { MenuItemArrow } from './MenuItemArrow.js';
14
+ /**
15
+ * @hidden
16
+ */
17
+
18
+ var MenuItemInternalVue2 = {
19
+ name: 'KendoMenuItemInternal',
20
+ // @ts-ignore
21
+ emits: {
22
+ 'keydown': null,
23
+ 'mouseover': null,
24
+ 'mouseleave': null,
25
+ 'blur': null,
26
+ 'focus': null,
27
+ 'click': null,
28
+ 'mousedown': null
29
+ },
30
+ props: {
31
+ item: Object,
32
+ focusedItemId: String,
33
+ lastItemIdToBeOpened: String,
34
+ tabbableItemId: String,
35
+ itemRender: [String, Object, Function],
36
+ linkRender: [String, Object, Function],
37
+ isMenuVertical: Boolean,
38
+ isDirectionRightToLeft: Boolean,
39
+ menuGuid: String,
40
+ originalItemNeeded: Function
41
+ },
42
+ created: function created() {
43
+ this.itemElement = null;
44
+ this.prevFocusedItemId = this.$props.focusedItemId;
45
+ this.isFirstRender = true;
46
+ this._anchor = guid();
47
+ },
48
+ data: function data() {
49
+ return {
50
+ opened: false
51
+ };
52
+ },
53
+ mounted: function mounted() {
54
+ this.itemElement = getRef(this, 'kendoAnchor', this._anchor);
55
+ var focusedItemId = this.$props.focusedItemId;
56
+ var currentItemId = this.$props.item.id; // If the menu item component has been just mounted due to
57
+ // keyboard navigation and it is the selected one.
58
+
59
+ if (focusedItemId && focusedItemId === currentItemId && this.itemElement) {
60
+ this.itemElement.focus();
61
+ }
62
+
63
+ this.isFirstRender = false;
64
+ },
65
+ watch: {
66
+ focusedItemId: function focusedItemId(_, oldValue) {
67
+ this.prevFocusedItemId = oldValue;
68
+ }
69
+ },
70
+ updated: function updated() {
71
+ var focusedItemId = this.$props.focusedItemId;
72
+ var currentItemId = this.$props.item.id;
73
+
74
+ if (focusedItemId) {
75
+ // If the item has been navigated to via the keyboard navigation
76
+ // (Clicking and focusing an item also come here).
77
+ if (this.prevFocusedItemId !== focusedItemId && focusedItemId === currentItemId // No need to focus the wrapping menu item DOM element
78
+ // when a child DOM element was clicked.
79
+ && !this.itemElement.contains(document.activeElement)) {
80
+ this.itemElement.focus();
81
+ }
82
+ } else if (document.activeElement === this.itemElement) {
83
+ this.itemElement.blur();
84
+ }
85
+ },
86
+ computed: {
87
+ currentItemRender: function currentItemRender() {
88
+ return this.$props.item.render || this.$props.itemRender;
89
+ },
90
+ currentLinkRender: function currentLinkRender() {
91
+ return this.$props.item.linkRender || this.$props.linkRender;
92
+ },
93
+ contentRender: function contentRender() {
94
+ return this.$props.item.contentParentItemId ? this.$props.item.contentRender : null;
95
+ },
96
+ currentOpened: function currentOpened() {
97
+ var props = this.$props;
98
+ return props.item.items.length > 0 && shouldOpenItem(props.item.id, props.lastItemIdToBeOpened) && // HACK: Wait for the second render because otherwise the scenario of
99
+ // popup inside popup throws an error (for example, hover of item with id '0_0').
100
+ !this.isFirstRender;
101
+ },
102
+ currentFocused: function currentFocused() {
103
+ var focusedItemId = this.$props.focusedItemId;
104
+ var currentItemId = this.$props.item.id;
105
+ return focusedItemId === currentItemId;
106
+ },
107
+ popupClassName: function popupClassName() {
108
+ return classNames({
109
+ 'k-menu-popup': true,
110
+ 'k-rtl': this.$props.isDirectionRightToLeft
111
+ });
112
+ },
113
+ menuItemClassName: function menuItemClassName() {
114
+ var _a;
115
+
116
+ var item = this.$props.item;
117
+ return _a = {
118
+ 'k-item': true,
119
+ 'k-menu-item': true,
120
+ 'k-first': isFirstItemFromSiblings(item.id),
121
+ 'k-last': item.isLastFromSiblings,
122
+ 'k-disabled': item.disabled
123
+ }, _a[item.cssClass ? item.cssClass : ''] = item.cssClass, _a;
124
+ }
125
+ },
126
+ // @ts-ignore
127
+ setup: !isV3 ? undefined : function () {
128
+ var v3 = !!isV3;
129
+ var kendoAnchorRef = ref(null);
130
+ return {
131
+ v3: v3,
132
+ kendoAnchorRef: kendoAnchorRef
133
+ };
134
+ },
135
+ render: function render(createElement) {
136
+ var _this = this;
137
+
138
+ var h = gh || createElement;
139
+ var item = this.$props.item;
140
+ var itemId = item.id;
141
+
142
+ var renderContent = function renderContent() {
143
+ var parentItemId = this.$props.item.contentParentItemId;
144
+
145
+ var contentRender = function contentRender(args) {
146
+ return getTemplate.call(this, {
147
+ h: h,
148
+ template: this.contentRender,
149
+ additionalProps: args
150
+ });
151
+ };
152
+
153
+ return h("div", {
154
+ "class": "k-content",
155
+ role: "presentation",
156
+ attrs: this.v3 ? undefined : {
157
+ role: "presentation"
158
+ }
159
+ }, [contentRender.call(this, {
160
+ item: this.handleOriginalItemNeeded(parentItemId),
161
+ itemId: parentItemId
162
+ })]);
163
+ };
164
+
165
+ var renderMenuIconIfApplicable = function renderMenuIconIfApplicable() {
166
+ return this.$props.item.icon ? h("span", {
167
+ "class": "k-icon k-i-".concat(this.$props.item.icon),
168
+ role: "presentation",
169
+ attrs: this.v3 ? undefined : {
170
+ role: "presentation"
171
+ },
172
+ key: "0"
173
+ }) : null;
174
+ };
175
+
176
+ var renderArrowIfApplicable = function renderArrowIfApplicable() {
177
+ return this.$props.item.items.length > 0 ? // @ts-ignore
178
+ h(MenuItemArrow, {
179
+ itemId: this.$props.item.id,
180
+ attrs: this.v3 ? undefined : {
181
+ itemId: this.$props.item.id,
182
+ verticalMenu: this.$props.isMenuVertical,
183
+ dir: convertBoolDirectionToString(this.$props.isDirectionRightToLeft)
184
+ },
185
+ verticalMenu: this.$props.isMenuVertical,
186
+ dir: convertBoolDirectionToString(this.$props.isDirectionRightToLeft),
187
+ key: "2"
188
+ }) : null;
189
+ };
190
+
191
+ var originalItem = this.$props.originalItemNeeded(item.id);
192
+
193
+ var renderMenuItemLink = function renderMenuItemLink() {
194
+ var _this2 = this;
195
+
196
+ var defaultItemRender = h("span", {
197
+ "class": "k-menu-link-text"
198
+ }, [item.text]);
199
+ var textOrItemRender = getTemplate.call(this, {
200
+ h: h,
201
+ template: this.currentItemRender,
202
+ defaultRendering: defaultItemRender,
203
+ additionalProps: {
204
+ item: originalItem,
205
+ itemId: item.id,
206
+ key: '1'
207
+ }
208
+ });
209
+ var defaultLink = // @ts-ignore function children
210
+ h(MenuItemLink, {
211
+ url: item.url,
212
+ attrs: this.v3 ? undefined : {
213
+ url: item.url,
214
+ opened: this.currentOpened,
215
+ focused: this.currentFocused
216
+ },
217
+ opened: this.currentOpened,
218
+ focused: this.currentFocused
219
+ }, this.v3 ? function () {
220
+ return [[renderMenuIconIfApplicable.call(_this2), textOrItemRender, renderArrowIfApplicable.call(_this2)]];
221
+ } : [[renderMenuIconIfApplicable.call(_this2), textOrItemRender, renderArrowIfApplicable.call(_this2)]]);
222
+ return getTemplate.call(this, {
223
+ h: h,
224
+ template: this.currentLinkRender,
225
+ defaultRendering: defaultLink,
226
+ additionalProps: {
227
+ item: originalItem,
228
+ itemId: item.id,
229
+ opened: this.currentOpened,
230
+ dir: convertBoolDirectionToString(this.$props.isDirectionRightToLeft)
231
+ }
232
+ });
233
+ };
234
+
235
+ var renderPopupIfOpened = function renderPopupIfOpened() {
236
+ var _this3 = this;
237
+
238
+ var _a = getPopupSettings(itemId, this.$props.isMenuVertical, this.$props.isDirectionRightToLeft),
239
+ anchorAlign = _a.anchorAlign,
240
+ popupAlign = _a.popupAlign,
241
+ collision = _a.collision;
242
+
243
+ return (// @ts-ignore function children
244
+ h(Popup, {
245
+ anchor: this._anchor,
246
+ attrs: this.v3 ? undefined : {
247
+ anchor: this._anchor,
248
+ show: this.currentOpened,
249
+ popupClass: this.popupClassName,
250
+ anchorAlign: anchorAlign,
251
+ popupAlign: popupAlign,
252
+ collision: collision,
253
+ animate: false
254
+ },
255
+ show: this.currentOpened,
256
+ popupClass: this.popupClassName,
257
+ anchorAlign: anchorAlign,
258
+ popupAlign: popupAlign,
259
+ collision: collision,
260
+ animate: false,
261
+ key: "1"
262
+ }, this.v3 ? function () {
263
+ return [// @ts-ignore
264
+ h(MenuItemInternalsList, {
265
+ parentItemId: itemId,
266
+ attrs: _this3.v3 ? undefined : {
267
+ parentItemId: itemId,
268
+ items: _this3.$props.item.items,
269
+ menuGuid: _this3.$props.menuGuid,
270
+ focusedItemId: _this3.$props.focusedItemId,
271
+ lastItemIdToBeOpened: _this3.$props.lastItemIdToBeOpened,
272
+ tabbableItemId: _this3.$props.tabbableItemId,
273
+ itemRender: _this3.$props.itemRender,
274
+ linkRender: _this3.$props.linkRender,
275
+ isMenuVertical: _this3.$props.isMenuVertical,
276
+ isDirectionRightToLeft: _this3.$props.isDirectionRightToLeft,
277
+ originalItemNeeded: _this3.handleOriginalItemNeeded
278
+ },
279
+ items: _this3.$props.item.items,
280
+ menuGuid: _this3.$props.menuGuid,
281
+ focusedItemId: _this3.$props.focusedItemId,
282
+ lastItemIdToBeOpened: _this3.$props.lastItemIdToBeOpened,
283
+ tabbableItemId: _this3.$props.tabbableItemId,
284
+ itemRender: _this3.$props.itemRender,
285
+ linkRender: _this3.$props.linkRender,
286
+ isMenuVertical: _this3.$props.isMenuVertical,
287
+ isDirectionRightToLeft: _this3.$props.isDirectionRightToLeft,
288
+ "class": "k-group k-menu-group k-reset",
289
+ onMouseover: _this3.handleItemMouseOver,
290
+ on: _this3.v3 ? undefined : {
291
+ "mouseover": _this3.handleItemMouseOver,
292
+ "mouseleave": _this3.handleItemMouseLeave,
293
+ "mousedown": _this3.handleMouseDown,
294
+ "blur": _this3.handleItemMouseBlur,
295
+ "focus": _this3.handleItemMouseFocus,
296
+ "click": _this3.handleClick,
297
+ "keydown": _this3.handleKeyDown
298
+ },
299
+ onMouseleave: _this3.handleItemMouseLeave,
300
+ onMousedown: _this3.handleMouseDown,
301
+ onBlur: _this3.handleItemMouseBlur,
302
+ onFocus: _this3.handleItemMouseFocus,
303
+ onClick: _this3.handleClick,
304
+ onKeydown: _this3.handleKeyDown,
305
+ originalItemNeeded: _this3.handleOriginalItemNeeded
306
+ })];
307
+ } : [h(MenuItemInternalsList, {
308
+ parentItemId: itemId,
309
+ attrs: _this3.v3 ? undefined : {
310
+ parentItemId: itemId,
311
+ items: _this3.$props.item.items,
312
+ menuGuid: _this3.$props.menuGuid,
313
+ focusedItemId: _this3.$props.focusedItemId,
314
+ lastItemIdToBeOpened: _this3.$props.lastItemIdToBeOpened,
315
+ tabbableItemId: _this3.$props.tabbableItemId,
316
+ itemRender: _this3.$props.itemRender,
317
+ linkRender: _this3.$props.linkRender,
318
+ isMenuVertical: _this3.$props.isMenuVertical,
319
+ isDirectionRightToLeft: _this3.$props.isDirectionRightToLeft,
320
+ originalItemNeeded: _this3.handleOriginalItemNeeded
321
+ },
322
+ items: _this3.$props.item.items,
323
+ menuGuid: _this3.$props.menuGuid,
324
+ focusedItemId: _this3.$props.focusedItemId,
325
+ lastItemIdToBeOpened: _this3.$props.lastItemIdToBeOpened,
326
+ tabbableItemId: _this3.$props.tabbableItemId,
327
+ itemRender: _this3.$props.itemRender,
328
+ linkRender: _this3.$props.linkRender,
329
+ isMenuVertical: _this3.$props.isMenuVertical,
330
+ isDirectionRightToLeft: _this3.$props.isDirectionRightToLeft,
331
+ "class": "k-group k-menu-group k-reset",
332
+ onMouseover: _this3.handleItemMouseOver,
333
+ on: _this3.v3 ? undefined : {
334
+ "mouseover": _this3.handleItemMouseOver,
335
+ "mouseleave": _this3.handleItemMouseLeave,
336
+ "mousedown": _this3.handleMouseDown,
337
+ "blur": _this3.handleItemMouseBlur,
338
+ "focus": _this3.handleItemMouseFocus,
339
+ "click": _this3.handleClick,
340
+ "keydown": _this3.handleKeyDown
341
+ },
342
+ onMouseleave: _this3.handleItemMouseLeave,
343
+ onMousedown: _this3.handleMouseDown,
344
+ onBlur: _this3.handleItemMouseBlur,
345
+ onFocus: _this3.handleItemMouseFocus,
346
+ onClick: _this3.handleClick,
347
+ onKeydown: _this3.handleKeyDown,
348
+ originalItemNeeded: _this3.handleOriginalItemNeeded
349
+ })])
350
+ );
351
+ };
352
+
353
+ return h("li", {
354
+ "class": this.menuItemClassName,
355
+ style: item.cssStyle,
356
+ tabindex: itemId === this.$props.tabbableItemId ? 0 : -1,
357
+ attrs: this.v3 ? undefined : {
358
+ tabindex: itemId === this.$props.tabbableItemId ? 0 : -1,
359
+ role: "menuitem",
360
+ "aria-disabled": item.disabled ? true : undefined,
361
+ "aria-haspopup": item.items.length > 0 ? true : undefined,
362
+ "aria-expanded": item.items.length > 0 ? this.currentOpened : undefined,
363
+ "aria-label": item.text,
364
+ "aria-owns": this.currentOpened ? getDOMElementId(this.$props.menuGuid, itemId) : undefined
365
+ },
366
+ onMouseover: this.onMouseOver,
367
+ on: this.v3 ? undefined : {
368
+ "mouseover": this.onMouseOver,
369
+ "mouseleave": this.onMouseLeave,
370
+ "mousedown": function mousedown(event) {
371
+ return _this.handleMouseDown(event);
372
+ },
373
+ "focusout": function focusout() {
374
+ return _this.handleBlur(itemId);
375
+ },
376
+ "focusin": function focusin() {
377
+ return _this.handleFocus(itemId);
378
+ },
379
+ "click": function click(event) {
380
+ return _this.handleClick(event, itemId);
381
+ },
382
+ "keydown": this.handleKeyDown
383
+ },
384
+ onMouseleave: this.onMouseLeave,
385
+ onMousedown: function mousedown(event) {
386
+ return _this.handleMouseDown(event);
387
+ },
388
+ onFocusout: function focusout() {
389
+ return _this.handleBlur(itemId);
390
+ },
391
+ onFocusin: function focusin() {
392
+ return _this.handleFocus(itemId);
393
+ },
394
+ onClick: function click(event) {
395
+ return _this.handleClick(event, itemId);
396
+ },
397
+ onKeydown: this.handleKeyDown,
398
+ role: "menuitem",
399
+ "aria-disabled": item.disabled ? true : undefined,
400
+ "aria-haspopup": item.items.length > 0 ? true : undefined,
401
+ "aria-expanded": item.items.length > 0 ? this.currentOpened : undefined,
402
+ "aria-label": item.text,
403
+ "aria-owns": this.currentOpened ? getDOMElementId(this.$props.menuGuid, itemId) : undefined,
404
+ ref: setRef(this, 'kendoAnchor', this._anchor),
405
+ key: "0"
406
+ }, [this.contentRender ? renderContent.call(this) : renderMenuItemLink.call(this), renderPopupIfOpened.call(this)]);
407
+ },
408
+ methods: {
409
+ handleKeyDown: function handleKeyDown(event) {
410
+ this.$emit('keydown', event);
411
+ },
412
+ handleItemMouseOver: function handleItemMouseOver(event) {
413
+ this.$emit('mouseover', event);
414
+ },
415
+ handleItemMouseLeave: function handleItemMouseLeave(event) {
416
+ this.$emit('mouseleave', event);
417
+ },
418
+ handleItemMouseBlur: function handleItemMouseBlur(event) {
419
+ this.$emit('blur', event);
420
+ },
421
+ handleItemMouseFocus: function handleItemMouseFocus(event) {
422
+ this.$emit('focus', event);
423
+ },
424
+ handleClick: function handleClick(event, itemId) {
425
+ this.$emit('click', event, itemId);
426
+ },
427
+ handleBlur: function handleBlur(itemId) {
428
+ this.$emit('blur', itemId);
429
+ },
430
+ handleFocus: function handleFocus(itemId) {
431
+ this.$emit('focus', itemId);
432
+ },
433
+ handleMouseDown: function handleMouseDown(event) {
434
+ this.$emit('mousedown', event);
435
+ },
436
+ handleOriginalItemNeeded: function handleOriginalItemNeeded(event) {
437
+ return this.$props.originalItemNeeded(event);
438
+ },
439
+ onMouseOver: function onMouseOver(event) {
440
+ this.$emit('mouseover', this.$props.item.id);
441
+ event.stopPropagation();
442
+ },
443
+ onMouseLeave: function onMouseLeave(event) {
444
+ this.$emit('mouseleave', this.$props.item.id);
445
+ event.stopPropagation();
446
+ }
447
+ }
448
+ };
449
+ /**
450
+ * @hidden
451
+ */
452
+
453
+ var MenuItemInternal = MenuItemInternalVue2;
454
+ export { MenuItemInternal, MenuItemInternalVue2 };
@@ -0,0 +1,49 @@
1
+ import { DefineComponent, RecordPropsDefinition, ComponentOptions, Vue2type } from '../../additionalTypes';
2
+ declare type DefaultData<V> = object | ((this: V) => {});
3
+ declare type DefaultMethods<V> = {
4
+ [key: string]: (this: V, ...args: any[]) => any;
5
+ };
6
+ import { MenuItemInternalModel } from './../models/MenuItemModel';
7
+ import { BaseMenuItemInternalProps } from './../BaseMenuItemInternalProps';
8
+ /**
9
+ * @hidden
10
+ */
11
+ export interface MenuItemInternalsListProps extends BaseMenuItemInternalProps {
12
+ items: MenuItemInternalModel[];
13
+ parentItemId?: string;
14
+ }
15
+ /**
16
+ * @hidden
17
+ */
18
+ export interface MenuItemInternalsListState {
19
+ }
20
+ /**
21
+ * @hidden
22
+ */
23
+ export interface MenuItemInternalsListComputed {
24
+ }
25
+ /**
26
+ * @hidden
27
+ */
28
+ export interface MenuItemInternalsListMethods {
29
+ [key: string]: any;
30
+ }
31
+ /**
32
+ * @hidden
33
+ */
34
+ export interface MenuItemInternalsListData {
35
+ }
36
+ /**
37
+ * @hidden
38
+ */
39
+ export interface MenuItemInternalsListAll extends Vue2type, MenuItemInternalsListMethods, MenuItemInternalsListData, MenuItemInternalsListComputed, MenuItemInternalsListState {
40
+ }
41
+ /**
42
+ * @hidden
43
+ */
44
+ declare let MenuItemInternalsListVue2: ComponentOptions<MenuItemInternalsListAll, DefaultData<MenuItemInternalsListData>, DefaultMethods<MenuItemInternalsListAll>, MenuItemInternalsListComputed, RecordPropsDefinition<MenuItemInternalsListProps>>;
45
+ /**
46
+ * @hidden
47
+ */
48
+ declare const MenuItemInternalsList: DefineComponent<MenuItemInternalsListProps, any, MenuItemInternalsListData, MenuItemInternalsListComputed, MenuItemInternalsListMethods, {}, {}, {}, string, MenuItemInternalsListProps, MenuItemInternalsListProps, {}>;
49
+ export { MenuItemInternalsList, MenuItemInternalsListVue2 };