@progress/kendo-vue-grid 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 (231) hide show
  1. package/dist/cdn/js/kendo-vue-grid.js +1 -1
  2. package/dist/es/Grid.js +20 -24
  3. package/dist/es/ScrollMode.js +1 -0
  4. package/dist/es/columnMenu/ColumnMenu.js +2 -2
  5. package/dist/es/columnMenu/GridColumnMenuCheckboxFilter.js +9 -13
  6. package/dist/es/columnMenu/GridColumnMenuFilter.js +423 -107
  7. package/dist/es/columnMenu/GridColumnMenuFilterCell.js +74 -97
  8. package/dist/es/columnMenu/GridColumnMenuFilterOperators.d.ts +36 -0
  9. package/dist/es/columnMenu/GridColumnMenuFilterOperators.js +68 -0
  10. package/dist/es/columnMenu/GridColumnMenuItem.js +2 -2
  11. package/dist/es/filterCommon.d.ts +1 -1
  12. package/dist/es/footer/Footer.js +1 -1
  13. package/dist/es/footer/FooterRow.js +1 -1
  14. package/dist/es/header/FilterRow.js +1 -1
  15. package/dist/es/header/Header.js +1 -1
  16. package/dist/es/header/HeaderRow.js +1 -1
  17. package/dist/es/interfaces/ExtendedColumnProps.js +1 -0
  18. package/dist/es/interfaces/GridCellProps.js +1 -0
  19. package/dist/es/interfaces/GridColumnMenuColumnProps.js +1 -0
  20. package/dist/es/interfaces/GridColumnMenuExtendedFilterProps.js +1 -0
  21. package/dist/es/interfaces/GridColumnMenuFilterBaseProps.js +1 -0
  22. package/dist/es/interfaces/GridColumnMenuFilterProps.js +1 -0
  23. package/dist/es/interfaces/GridColumnMenuFilterUIProps.js +1 -0
  24. package/dist/es/interfaces/GridColumnMenuProps.js +1 -0
  25. package/dist/es/interfaces/GridColumnMenuSortBaseProps.js +1 -0
  26. package/dist/es/interfaces/GridColumnProps.js +1 -0
  27. package/dist/es/interfaces/GridDetailRowProps.js +1 -0
  28. package/dist/es/interfaces/GridFilterCellProps.js +1 -0
  29. package/dist/es/interfaces/GridFilterOperator.js +1 -0
  30. package/dist/es/interfaces/GridFilterOperators.js +1 -0
  31. package/dist/es/interfaces/GridFooterCellProps.js +1 -0
  32. package/dist/es/interfaces/GridGroupableSettings.js +1 -0
  33. package/dist/es/interfaces/GridHeaderCellProps.js +1 -0
  34. package/dist/es/interfaces/GridHeaderSelectionCellProps.js +1 -0
  35. package/dist/es/interfaces/GridNoRecordsProps.js +1 -0
  36. package/dist/es/interfaces/GridProps.js +1 -0
  37. package/dist/es/interfaces/GridRowProps.js +1 -0
  38. package/dist/es/interfaces/GridRowType.js +1 -0
  39. package/dist/es/interfaces/GridSortSettings.js +9 -7
  40. package/dist/es/interfaces/GridToolbarProps.js +1 -0
  41. package/dist/es/interfaces/events.js +1 -0
  42. package/dist/es/package-metadata.js +1 -1
  43. package/dist/es/rows/GridDetailRow.d.ts +2 -1
  44. package/dist/es/utils/index.js +4 -4
  45. package/dist/esm/Grid.d.ts +180 -0
  46. package/dist/esm/Grid.js +2086 -0
  47. package/dist/esm/GridNav.d.ts +46 -0
  48. package/dist/esm/GridNav.js +112 -0
  49. package/dist/esm/GridNoRecords.d.ts +51 -0
  50. package/dist/esm/GridNoRecords.js +83 -0
  51. package/dist/esm/GridToolbar.d.ts +58 -0
  52. package/dist/esm/GridToolbar.js +77 -0
  53. package/dist/esm/ScrollMode.d.ts +1 -0
  54. package/dist/esm/ScrollMode.js +1 -0
  55. package/dist/esm/VirtualScroll.d.ts +41 -0
  56. package/dist/esm/VirtualScroll.js +217 -0
  57. package/dist/esm/additionalTypes.ts +21 -0
  58. package/dist/esm/cells/GridCell.d.ts +30 -0
  59. package/dist/esm/cells/GridCell.js +161 -0
  60. package/dist/esm/cells/GridDetailCell.d.ts +29 -0
  61. package/dist/esm/cells/GridDetailCell.js +82 -0
  62. package/dist/esm/cells/GridDetailHierarchyCell.d.ts +24 -0
  63. package/dist/esm/cells/GridDetailHierarchyCell.js +53 -0
  64. package/dist/esm/cells/GridEditCell.d.ts +40 -0
  65. package/dist/esm/cells/GridEditCell.js +312 -0
  66. package/dist/esm/cells/GridFilterCell.d.ts +26 -0
  67. package/dist/esm/cells/GridFilterCell.js +259 -0
  68. package/dist/esm/cells/GridGroupCell.d.ts +23 -0
  69. package/dist/esm/cells/GridGroupCell.js +179 -0
  70. package/dist/esm/cells/GridHierarchyCell.d.ts +23 -0
  71. package/dist/esm/cells/GridHierarchyCell.js +162 -0
  72. package/dist/esm/cells/GridSelectionCell.d.ts +34 -0
  73. package/dist/esm/cells/GridSelectionCell.js +138 -0
  74. package/dist/esm/columnMenu/ColumnMenu.d.ts +56 -0
  75. package/dist/esm/columnMenu/ColumnMenu.js +252 -0
  76. package/dist/esm/columnMenu/ColumnMenuContent.d.ts +33 -0
  77. package/dist/esm/columnMenu/ColumnMenuContent.js +123 -0
  78. package/dist/esm/columnMenu/GridColumnMenuCheckboxFilter.d.ts +86 -0
  79. package/dist/esm/columnMenu/GridColumnMenuCheckboxFilter.js +709 -0
  80. package/dist/esm/columnMenu/GridColumnMenuFilter.d.ts +339 -0
  81. package/dist/esm/columnMenu/GridColumnMenuFilter.js +1079 -0
  82. package/dist/esm/columnMenu/GridColumnMenuFilterCell.d.ts +45 -0
  83. package/dist/esm/columnMenu/GridColumnMenuFilterCell.js +152 -0
  84. package/dist/esm/columnMenu/GridColumnMenuFilterOperators.d.ts +36 -0
  85. package/dist/esm/columnMenu/GridColumnMenuFilterOperators.js +68 -0
  86. package/dist/esm/columnMenu/GridColumnMenuFilterUI.d.ts +24 -0
  87. package/dist/esm/columnMenu/GridColumnMenuFilterUI.js +155 -0
  88. package/dist/esm/columnMenu/GridColumnMenuItem.d.ts +42 -0
  89. package/dist/esm/columnMenu/GridColumnMenuItem.js +63 -0
  90. package/dist/esm/columnMenu/GridColumnMenuItemContent.d.ts +34 -0
  91. package/dist/esm/columnMenu/GridColumnMenuItemContent.js +51 -0
  92. package/dist/esm/columnMenu/GridColumnMenuItemGroup.d.ts +19 -0
  93. package/dist/esm/columnMenu/GridColumnMenuItemGroup.js +33 -0
  94. package/dist/esm/columnMenu/GridColumnMenuSort.d.ts +283 -0
  95. package/dist/esm/columnMenu/GridColumnMenuSort.js +375 -0
  96. package/dist/esm/drag/ColumnDraggable.d.ts +43 -0
  97. package/dist/esm/drag/ColumnDraggable.js +73 -0
  98. package/dist/esm/drag/ColumnResize.d.ts +31 -0
  99. package/dist/esm/drag/ColumnResize.js +126 -0
  100. package/dist/esm/drag/ColumnResizer.d.ts +40 -0
  101. package/dist/esm/drag/ColumnResizer.js +89 -0
  102. package/dist/esm/drag/CommonDragLogic.d.ts +35 -0
  103. package/dist/esm/drag/CommonDragLogic.js +177 -0
  104. package/dist/esm/drag/DragClue.d.ts +25 -0
  105. package/dist/esm/drag/DragClue.js +52 -0
  106. package/dist/esm/drag/DropClue.d.ts +24 -0
  107. package/dist/esm/drag/DropClue.js +46 -0
  108. package/dist/esm/drag/GroupingIndicator.d.ts +51 -0
  109. package/dist/esm/drag/GroupingIndicator.js +153 -0
  110. package/dist/esm/filterCommon.d.ts +75 -0
  111. package/dist/esm/filterCommon.js +156 -0
  112. package/dist/esm/footer/Footer.d.ts +52 -0
  113. package/dist/esm/footer/Footer.js +103 -0
  114. package/dist/esm/footer/FooterRow.d.ts +30 -0
  115. package/dist/esm/footer/FooterRow.js +73 -0
  116. package/dist/esm/header/FilterRow.d.ts +36 -0
  117. package/dist/esm/header/FilterRow.js +203 -0
  118. package/dist/esm/header/GridHeaderCell.d.ts +21 -0
  119. package/dist/esm/header/GridHeaderCell.js +60 -0
  120. package/dist/esm/header/GridHeaderSelectionCell.d.ts +32 -0
  121. package/dist/esm/header/GridHeaderSelectionCell.js +81 -0
  122. package/dist/esm/header/GroupPanel.d.ts +38 -0
  123. package/dist/esm/header/GroupPanel.js +108 -0
  124. package/dist/esm/header/Header.d.ts +64 -0
  125. package/dist/esm/header/Header.js +123 -0
  126. package/dist/esm/header/HeaderRow.d.ts +86 -0
  127. package/dist/esm/header/HeaderRow.js +517 -0
  128. package/dist/esm/interfaces/ExtendedColumnProps.d.ts +20 -0
  129. package/dist/esm/interfaces/ExtendedColumnProps.js +1 -0
  130. package/dist/esm/interfaces/GridCellProps.d.ts +156 -0
  131. package/dist/esm/interfaces/GridCellProps.js +1 -0
  132. package/dist/esm/interfaces/GridColumnMenuColumnProps.d.ts +13 -0
  133. package/dist/esm/interfaces/GridColumnMenuColumnProps.js +1 -0
  134. package/dist/esm/interfaces/GridColumnMenuExtendedFilterProps.d.ts +42 -0
  135. package/dist/esm/interfaces/GridColumnMenuExtendedFilterProps.js +1 -0
  136. package/dist/esm/interfaces/GridColumnMenuFilterBaseProps.d.ts +49 -0
  137. package/dist/esm/interfaces/GridColumnMenuFilterBaseProps.js +1 -0
  138. package/dist/esm/interfaces/GridColumnMenuFilterProps.d.ts +27 -0
  139. package/dist/esm/interfaces/GridColumnMenuFilterProps.js +1 -0
  140. package/dist/esm/interfaces/GridColumnMenuFilterUIProps.d.ts +55 -0
  141. package/dist/esm/interfaces/GridColumnMenuFilterUIProps.js +1 -0
  142. package/dist/esm/interfaces/GridColumnMenuProps.d.ts +19 -0
  143. package/dist/esm/interfaces/GridColumnMenuProps.js +1 -0
  144. package/dist/esm/interfaces/GridColumnMenuSortBaseProps.d.ts +28 -0
  145. package/dist/esm/interfaces/GridColumnMenuSortBaseProps.js +1 -0
  146. package/dist/esm/interfaces/GridColumnProps.d.ts +147 -0
  147. package/dist/esm/interfaces/GridColumnProps.js +1 -0
  148. package/dist/esm/interfaces/GridDetailRowProps.d.ts +9 -0
  149. package/dist/esm/interfaces/GridDetailRowProps.js +1 -0
  150. package/dist/esm/interfaces/GridFilterCellProps.d.ts +64 -0
  151. package/dist/esm/interfaces/GridFilterCellProps.js +1 -0
  152. package/dist/esm/interfaces/GridFilterOperator.d.ts +7 -0
  153. package/dist/esm/interfaces/GridFilterOperator.js +1 -0
  154. package/dist/esm/interfaces/GridFilterOperators.d.ts +49 -0
  155. package/dist/esm/interfaces/GridFilterOperators.js +1 -0
  156. package/dist/esm/interfaces/GridFooterCellProps.d.ts +7 -0
  157. package/dist/esm/interfaces/GridFooterCellProps.js +1 -0
  158. package/dist/esm/interfaces/GridGroupableSettings.d.ts +15 -0
  159. package/dist/esm/interfaces/GridGroupableSettings.js +1 -0
  160. package/dist/esm/interfaces/GridHeaderCellProps.d.ts +37 -0
  161. package/dist/esm/interfaces/GridHeaderCellProps.js +1 -0
  162. package/dist/esm/interfaces/GridHeaderSelectionCellProps.d.ts +17 -0
  163. package/dist/esm/interfaces/GridHeaderSelectionCellProps.js +1 -0
  164. package/dist/esm/interfaces/GridNoRecordsProps.d.ts +9 -0
  165. package/dist/esm/interfaces/GridNoRecordsProps.js +1 -0
  166. package/dist/esm/interfaces/GridProps.d.ts +311 -0
  167. package/dist/esm/interfaces/GridProps.js +1 -0
  168. package/dist/esm/interfaces/GridRowProps.d.ts +55 -0
  169. package/dist/esm/interfaces/GridRowProps.js +1 -0
  170. package/dist/esm/interfaces/GridRowType.d.ts +9 -0
  171. package/dist/esm/interfaces/GridRowType.js +1 -0
  172. package/dist/esm/interfaces/GridSortSettings.d.ts +26 -0
  173. package/dist/esm/interfaces/GridSortSettings.js +20 -0
  174. package/dist/esm/interfaces/GridToolbarProps.d.ts +9 -0
  175. package/dist/esm/interfaces/GridToolbarProps.js +1 -0
  176. package/dist/esm/interfaces/events.d.ts +248 -0
  177. package/dist/esm/interfaces/events.js +1 -0
  178. package/dist/esm/main.d.ts +38 -0
  179. package/dist/esm/main.js +31 -0
  180. package/dist/esm/messages/index.d.ts +150 -0
  181. package/dist/esm/messages/index.js +151 -0
  182. package/dist/esm/package-metadata.d.ts +5 -0
  183. package/dist/esm/package-metadata.js +11 -0
  184. package/dist/esm/package.json +3 -0
  185. package/dist/esm/rows/GridDetailRow.d.ts +16 -0
  186. package/dist/esm/rows/GridDetailRow.js +29 -0
  187. package/dist/esm/rows/GridRow.d.ts +28 -0
  188. package/dist/esm/rows/GridRow.js +84 -0
  189. package/dist/esm/utils/browser-support.service.d.ts +7 -0
  190. package/dist/esm/utils/browser-support.service.js +26 -0
  191. package/dist/esm/utils/index.d.ts +91 -0
  192. package/dist/esm/utils/index.js +393 -0
  193. package/dist/npm/Grid.js +66 -70
  194. package/dist/npm/GridNav.js +1 -1
  195. package/dist/npm/GridNoRecords.js +2 -2
  196. package/dist/npm/GridToolbar.js +1 -1
  197. package/dist/npm/cells/GridCell.js +2 -2
  198. package/dist/npm/cells/GridEditCell.js +2 -2
  199. package/dist/npm/cells/GridFilterCell.js +4 -4
  200. package/dist/npm/cells/GridHierarchyCell.js +1 -1
  201. package/dist/npm/cells/GridSelectionCell.js +2 -2
  202. package/dist/npm/columnMenu/ColumnMenu.js +5 -5
  203. package/dist/npm/columnMenu/GridColumnMenuCheckboxFilter.js +14 -18
  204. package/dist/npm/columnMenu/GridColumnMenuFilter.js +445 -125
  205. package/dist/npm/columnMenu/GridColumnMenuFilterCell.js +79 -102
  206. package/dist/npm/columnMenu/GridColumnMenuFilterOperators.d.ts +36 -0
  207. package/dist/npm/columnMenu/GridColumnMenuFilterOperators.js +79 -0
  208. package/dist/npm/columnMenu/GridColumnMenuItem.js +2 -2
  209. package/dist/npm/columnMenu/GridColumnMenuItemContent.js +1 -1
  210. package/dist/npm/columnMenu/GridColumnMenuItemGroup.js +1 -1
  211. package/dist/npm/columnMenu/GridColumnMenuSort.js +5 -4
  212. package/dist/npm/drag/ColumnDraggable.js +1 -1
  213. package/dist/npm/drag/CommonDragLogic.js +2 -2
  214. package/dist/npm/drag/GroupingIndicator.js +3 -3
  215. package/dist/npm/filterCommon.d.ts +1 -1
  216. package/dist/npm/filterCommon.js +19 -12
  217. package/dist/npm/footer/Footer.js +6 -6
  218. package/dist/npm/footer/FooterRow.js +2 -2
  219. package/dist/npm/header/FilterRow.js +7 -7
  220. package/dist/npm/header/GridHeaderCell.js +1 -1
  221. package/dist/npm/header/GridHeaderSelectionCell.js +1 -1
  222. package/dist/npm/header/GroupPanel.js +1 -1
  223. package/dist/npm/header/Header.js +8 -8
  224. package/dist/npm/header/HeaderRow.js +2 -2
  225. package/dist/npm/interfaces/GridSortSettings.js +11 -8
  226. package/dist/npm/main.js +6 -2
  227. package/dist/npm/package-metadata.js +1 -1
  228. package/dist/npm/rows/GridDetailRow.d.ts +2 -1
  229. package/dist/npm/rows/GridRow.js +2 -2
  230. package/dist/npm/utils/index.js +6 -5
  231. package/package.json +20 -14
@@ -0,0 +1,252 @@
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 inject = allVue.inject;
7
+ import { guid, setRef } from '@progress/kendo-vue-common';
8
+ import { Popup } from '@progress/kendo-vue-popup';
9
+ import { ColumnMenuContent } from './ColumnMenuContent.js';
10
+ import { tableKeyboardNavigationTools } from '@progress/kendo-vue-data-tools';
11
+ import { provideLocalizationService } from '@progress/kendo-vue-intl';
12
+ import { messages, columnMenu } from '../messages.js';
13
+ /**
14
+ * @hidden
15
+ */
16
+
17
+ var ColumnMenuVue2 = {
18
+ name: 'KendoColumnMenu',
19
+ props: {
20
+ animate: {
21
+ type: [Boolean, Object],
22
+ default: function _default() {
23
+ return true;
24
+ }
25
+ },
26
+ column: Object,
27
+ sortable: [Boolean, Object],
28
+ sort: {
29
+ type: Array
30
+ },
31
+ opened: Boolean,
32
+ filter: Object,
33
+ filterable: Boolean,
34
+ filterOperators: Object,
35
+ render: [Boolean, String, Function, Object]
36
+ },
37
+ inject: {
38
+ kendoIntlService: {
39
+ default: null
40
+ },
41
+ kendoLocalizationService: {
42
+ default: null
43
+ }
44
+ },
45
+ data: function data() {
46
+ return {
47
+ show: false,
48
+ blurTimeout: undefined
49
+ };
50
+ },
51
+ created: function created() {
52
+ this._anchor = guid();
53
+ },
54
+ computed: {
55
+ currentOpen: function currentOpen() {
56
+ return this.show || this.$props.opened;
57
+ }
58
+ },
59
+ watch: {
60
+ currentOpen: function currentOpen(newOpened) {
61
+ this.$nextTick(function () {
62
+ this._content = this.$refs.content;
63
+
64
+ if (newOpened && this._content) {
65
+ var focusableElements = tableKeyboardNavigationTools.getFocusableElements(this._content, {
66
+ focusable: true
67
+ });
68
+
69
+ if (focusableElements.length) {
70
+ focusableElements[0].focus();
71
+ } else {
72
+ this._content.focus();
73
+ }
74
+ }
75
+ });
76
+ }
77
+ },
78
+ methods: {
79
+ blur: function blur() {
80
+ var _this = this;
81
+
82
+ clearTimeout(this.blurTimeout);
83
+ this.blurTimeout = setTimeout(function () {
84
+ _this.closeMenu();
85
+ }, 200);
86
+ },
87
+ focus: function focus() {
88
+ clearTimeout(this.blurTimeout);
89
+ },
90
+ handleFocus: function handleFocus(_) {
91
+ clearTimeout(this.blurTimeout);
92
+ },
93
+ anchorClick: function anchorClick() {
94
+ var that = this;
95
+ this.show = !this.show;
96
+ },
97
+ closeMenu: function closeMenu() {
98
+ this.$emit('close');
99
+ this.show = false;
100
+ },
101
+ sortChange: function sortChange(newDescriptor, e) {
102
+ this.$emit('sortchange', newDescriptor, e);
103
+ },
104
+ filterChange: function filterChange(newDescriptor, e) {
105
+ this.$emit('filterchange', newDescriptor, e);
106
+ }
107
+ },
108
+ // @ts-ignore
109
+ setup: !isV3 ? undefined : function () {
110
+ var v3 = !!isV3;
111
+ var kendoLocalizationService = inject('kendoLocalizationService', {});
112
+ return {
113
+ v3: v3,
114
+ kendoLocalizationService: kendoLocalizationService
115
+ };
116
+ },
117
+ // @ts-ignore
118
+ render: function render(createElement) {
119
+ var _this2 = this;
120
+
121
+ var h = gh || createElement;
122
+ var renderTemplate = this.$props.render;
123
+ var ls = provideLocalizationService(this);
124
+ return h("div", {
125
+ style: {
126
+ display: 'inline'
127
+ }
128
+ }, [h("div", {
129
+ "class": 'k-grid-column-menu k-grid-filter',
130
+ tabindex: 0,
131
+ attrs: this.v3 ? undefined : {
132
+ tabindex: 0,
133
+ title: "".concat(this.$props.column.field, " ").concat(ls.toLanguageString(columnMenu, messages[columnMenu]))
134
+ },
135
+ title: "".concat(this.$props.column.field, " ").concat(ls.toLanguageString(columnMenu, messages[columnMenu])),
136
+ ref: setRef(this, 'kendoAnchor', this._anchor),
137
+ onClick: this.anchorClick,
138
+ on: this.v3 ? undefined : {
139
+ "click": this.anchorClick
140
+ }
141
+ }, [h("span", {
142
+ "class": 'k-icon k-i-more-vertical'
143
+ })]), // @ts-ignore function children
144
+ h(Popup, {
145
+ animate: this.$props.animate,
146
+ attrs: this.v3 ? undefined : {
147
+ animate: this.$props.animate,
148
+ anchor: this._anchor,
149
+ show: this.currentOpen
150
+ },
151
+ anchor: this._anchor,
152
+ show: this.currentOpen
153
+ }, this.v3 ? function () {
154
+ return [h("div", {
155
+ ref: 'content',
156
+ "class": 'k-grid-columnmenu-popup',
157
+ tabindex: 0,
158
+ attrs: _this2.v3 ? undefined : {
159
+ tabindex: 0
160
+ },
161
+ onFocusout: _this2.blur,
162
+ on: _this2.v3 ? undefined : {
163
+ "focusout": _this2.blur,
164
+ "focusin": _this2.focus
165
+ },
166
+ onFocusin: _this2.focus,
167
+ style: {
168
+ outline: 'none',
169
+ width: '230px'
170
+ }
171
+ }, [// @ts-ignore
172
+ h(ColumnMenuContent, {
173
+ column: _this2.$props.column,
174
+ attrs: _this2.v3 ? undefined : {
175
+ column: _this2.$props.column,
176
+ sortable: _this2.$props.sortable,
177
+ sort: _this2.$props.sort,
178
+ filter: _this2.$props.filter,
179
+ filterable: _this2.$props.filterable,
180
+ filterOperators: _this2.$props.filterOperators,
181
+ render: renderTemplate
182
+ },
183
+ sortable: _this2.$props.sortable,
184
+ sort: _this2.$props.sort,
185
+ filter: _this2.$props.filter,
186
+ filterable: _this2.$props.filterable,
187
+ filterOperators: _this2.$props.filterOperators,
188
+ render: renderTemplate,
189
+ onContentfocus: _this2.handleFocus,
190
+ on: _this2.v3 ? undefined : {
191
+ "contentfocus": _this2.handleFocus,
192
+ "closemenu": _this2.closeMenu,
193
+ "sortchange": _this2.sortChange,
194
+ "filterchange": _this2.filterChange
195
+ },
196
+ onClosemenu: _this2.closeMenu,
197
+ onSortchange: _this2.sortChange,
198
+ onFilterchange: _this2.filterChange
199
+ })])];
200
+ } : [h("div", {
201
+ ref: 'content',
202
+ "class": 'k-grid-columnmenu-popup',
203
+ tabindex: 0,
204
+ attrs: _this2.v3 ? undefined : {
205
+ tabindex: 0
206
+ },
207
+ onFocusout: _this2.blur,
208
+ on: _this2.v3 ? undefined : {
209
+ "focusout": _this2.blur,
210
+ "focusin": _this2.focus
211
+ },
212
+ onFocusin: _this2.focus,
213
+ style: {
214
+ outline: 'none',
215
+ width: '230px'
216
+ }
217
+ }, [h(ColumnMenuContent, {
218
+ column: _this2.$props.column,
219
+ attrs: _this2.v3 ? undefined : {
220
+ column: _this2.$props.column,
221
+ sortable: _this2.$props.sortable,
222
+ sort: _this2.$props.sort,
223
+ filter: _this2.$props.filter,
224
+ filterable: _this2.$props.filterable,
225
+ filterOperators: _this2.$props.filterOperators,
226
+ render: renderTemplate
227
+ },
228
+ sortable: _this2.$props.sortable,
229
+ sort: _this2.$props.sort,
230
+ filter: _this2.$props.filter,
231
+ filterable: _this2.$props.filterable,
232
+ filterOperators: _this2.$props.filterOperators,
233
+ render: renderTemplate,
234
+ onContentfocus: _this2.handleFocus,
235
+ on: _this2.v3 ? undefined : {
236
+ "contentfocus": _this2.handleFocus,
237
+ "closemenu": _this2.closeMenu,
238
+ "sortchange": _this2.sortChange,
239
+ "filterchange": _this2.filterChange
240
+ },
241
+ onClosemenu: _this2.closeMenu,
242
+ onSortchange: _this2.sortChange,
243
+ onFilterchange: _this2.filterChange
244
+ })])])]);
245
+ }
246
+ };
247
+ /**
248
+ * @hidden
249
+ */
250
+
251
+ var ColumnMenu = ColumnMenuVue2;
252
+ export { ColumnMenu, ColumnMenuVue2 };
@@ -0,0 +1,33 @@
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 { SortDescriptor, CompositeFilterDescriptor } from '@progress/kendo-data-query';
7
+ import { GridColumnMenuProps } from '../interfaces/GridColumnMenuProps';
8
+ /**
9
+ * @hidden
10
+ */
11
+ export interface ColumnMenuContentProps extends GridColumnMenuProps {
12
+ render: any;
13
+ }
14
+ /**
15
+ * @hidden
16
+ */
17
+ export interface ColumnMenuContentMethods extends Vue2type {
18
+ handleFocus: (e: any) => void;
19
+ closeMenu: () => void;
20
+ contentKeyDown: (e: any) => void;
21
+ expandChange: () => void;
22
+ sortChange: (newDescriptor: SortDescriptor[], e: any) => void;
23
+ filterChange: (newDescriptor: CompositeFilterDescriptor | null, e: any) => void;
24
+ }
25
+ /**
26
+ * @hidden
27
+ */
28
+ declare let ColumnMenuContentVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<ColumnMenuContentMethods>, {}, RecordPropsDefinition<ColumnMenuContentProps>>;
29
+ /**
30
+ * @hidden
31
+ */
32
+ declare const ColumnMenuContent: DefineComponent<ColumnMenuContentProps, any, {}, {}, ColumnMenuContentMethods, {}, {}, {}, string, ColumnMenuContentProps, ColumnMenuContentProps, {}>;
33
+ export { ColumnMenuContent, ColumnMenuContentVue2 };
@@ -0,0 +1,123 @@
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 { GridColumnMenuSort } from './GridColumnMenuSort.js';
7
+ import { GridColumnMenuFilter } from './GridColumnMenuFilter.js';
8
+ import { getTemplate, Keys } from '@progress/kendo-vue-common';
9
+ /**
10
+ * @hidden
11
+ */
12
+
13
+ var ColumnMenuContentVue2 = {
14
+ name: 'KendoColumnMenuContent',
15
+ props: {
16
+ column: Object,
17
+ sortable: [Boolean, Object],
18
+ sort: {
19
+ type: Array
20
+ },
21
+ filter: Object,
22
+ filterOperators: Object,
23
+ filterable: Boolean,
24
+ render: [Boolean, String, Function, Object]
25
+ },
26
+ methods: {
27
+ handleFocus: function handleFocus(e) {
28
+ this.$emit('contentfocus', e);
29
+ },
30
+ closeMenu: function closeMenu() {
31
+ this.$emit('closemenu');
32
+ },
33
+ expandChange: function expandChange() {
34
+ this.$emit('expandchange');
35
+ },
36
+ sortChange: function sortChange(newDescriptor, e) {
37
+ this.$emit('sortchange', newDescriptor, e);
38
+ },
39
+ filterChange: function filterChange(newDescriptor, e) {
40
+ this.$emit('filterchange', newDescriptor, e);
41
+ },
42
+ contentKeyDown: function contentKeyDown(event) {
43
+ if (event.keyCode === Keys.esc) {
44
+ this.$emit('closemenu');
45
+ }
46
+ }
47
+ },
48
+ // @ts-ignore
49
+ setup: !isV3 ? undefined : function () {
50
+ var v3 = !!isV3;
51
+ return {
52
+ v3: v3
53
+ };
54
+ },
55
+ // @ts-ignore
56
+ render: function render(createElement) {
57
+ var h = gh || createElement;
58
+ var renderTemplate = this.$props.render;
59
+ var defaultRendering = h("div", {
60
+ onKeydown: this.contentKeyDown,
61
+ on: this.v3 ? undefined : {
62
+ "keydown": this.contentKeyDown
63
+ }
64
+ }, [// @ts-ignore
65
+ h(GridColumnMenuSort, {
66
+ column: this.$props.column,
67
+ attrs: this.v3 ? undefined : {
68
+ column: this.$props.column,
69
+ sortable: this.$props.sortable,
70
+ sort: this.$props.sort
71
+ },
72
+ sortable: this.$props.sortable,
73
+ sort: this.$props.sort,
74
+ onClosemenu: this.closeMenu,
75
+ on: this.v3 ? undefined : {
76
+ "closemenu": this.closeMenu,
77
+ "sortchange": this.sortChange
78
+ },
79
+ onSortchange: this.sortChange
80
+ }), // @ts-ignore
81
+ h(GridColumnMenuFilter, {
82
+ column: this.$props.column,
83
+ attrs: this.v3 ? undefined : {
84
+ column: this.$props.column,
85
+ filterable: this.$props.filterable,
86
+ filter: this.$props.filter,
87
+ filterOperators: this.$props.filterOperators
88
+ },
89
+ filterable: this.$props.filterable,
90
+ filter: this.$props.filter,
91
+ filterOperators: this.$props.filterOperators,
92
+ onFilterfocus: this.handleFocus,
93
+ on: this.v3 ? undefined : {
94
+ "filterfocus": this.handleFocus,
95
+ "closemenu": this.closeMenu,
96
+ "expandchange": this.expandChange,
97
+ "filterchange": this.filterChange
98
+ },
99
+ onClosemenu: this.closeMenu,
100
+ onExpandchange: this.expandChange,
101
+ onFilterchange: this.filterChange
102
+ })]);
103
+ return getTemplate.call(this, {
104
+ h: h,
105
+ template: typeof renderTemplate !== 'boolean' && renderTemplate,
106
+ defaultRendering: defaultRendering,
107
+ additionalProps: this.$props,
108
+ additionalListeners: {
109
+ closemenu: this.closeMenu,
110
+ filterchange: this.filterChange,
111
+ sortchange: this.sortChange,
112
+ expandchange: this.expandChange,
113
+ contentfocus: this.handleFocus
114
+ }
115
+ });
116
+ }
117
+ };
118
+ /**
119
+ * @hidden
120
+ */
121
+
122
+ var ColumnMenuContent = ColumnMenuContentVue2;
123
+ export { ColumnMenuContent, ColumnMenuContentVue2 };
@@ -0,0 +1,86 @@
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 { CompositeFilterDescriptor } from '@progress/kendo-data-query';
7
+ import { GridColumnMenuFilterBaseProps } from '../interfaces/GridColumnMenuFilterBaseProps';
8
+ /**
9
+ * The props of the GridColumnMenuFilter component.
10
+ */
11
+ export interface GridColumnMenuCheckboxFilterProps extends GridColumnMenuFilterBaseProps {
12
+ /**
13
+ * Controls the expand state of the filter component.
14
+ */
15
+ expanded?: boolean;
16
+ /**
17
+ * Sets the items collection that will be rendered by the GridColumnMenuCheckboxFilter component.
18
+ */
19
+ dataItems: Array<string | object>;
20
+ /**
21
+ * Triggered on each subsequent expand state of the filter component.
22
+ */
23
+ expandchange?: (nextExpandState: boolean) => void;
24
+ /**
25
+ * Defines the component that will be rendered as a search box.
26
+ */
27
+ searchBox?: any;
28
+ /**
29
+ * Determines if the data in the component will be unique. By default the property is set to true.
30
+ */
31
+ uniqueData?: boolean;
32
+ }
33
+ /**
34
+ * @hidden
35
+ */
36
+ export interface GridColumnMenuFilterStateProps {
37
+ expanded: boolean;
38
+ value: string;
39
+ dataItems: Array<string | object>;
40
+ dataFromProps: Array<string | object>;
41
+ currentFilter: CompositeFilterDescriptor;
42
+ }
43
+ /**
44
+ * @hidden
45
+ */
46
+ export interface GridColumnMenuCheckboxFilterMethods extends Vue2type {
47
+ defaultFilter: () => CompositeFilterDescriptor;
48
+ parseData: (originalData: any, isUnique: any) => any;
49
+ getFilterIndex: () => number;
50
+ onFilterExpand: () => void;
51
+ handleSearchChange: (e: any) => void;
52
+ clear: (e: any) => void;
53
+ submit: (e: any) => void;
54
+ handleCheckBoxChange: (e: any, value: any) => void;
55
+ isAllSelected: () => void;
56
+ }
57
+ /**
58
+ * @hidden
59
+ */
60
+ export interface GridColumnMenuCheckboxFilterState {
61
+ compositeFilterIndex: number;
62
+ }
63
+ /**
64
+ * @hidden
65
+ */
66
+ export interface GridColumnMenuCheckboxFilterData {
67
+ currentExpanded: boolean;
68
+ currentValue: any;
69
+ currentData: any;
70
+ dataFromProps: any;
71
+ currentFilter: any;
72
+ }
73
+ /**
74
+ * @hidden
75
+ */
76
+ export interface GridColumnMenuCheckboxFilterAll extends GridColumnMenuCheckboxFilterMethods, GridColumnMenuCheckboxFilterData, GridColumnMenuCheckboxFilterState {
77
+ }
78
+ /**
79
+ * @hidden
80
+ */
81
+ declare let GridColumnMenuCheckboxFilterVue2: ComponentOptions<Vue2type, DefaultData<GridColumnMenuCheckboxFilterData>, DefaultMethods<GridColumnMenuCheckboxFilterAll>, {}, RecordPropsDefinition<GridColumnMenuCheckboxFilterProps>>;
82
+ /**
83
+ * @hidden
84
+ */
85
+ declare const GridColumnMenuCheckboxFilter: DefineComponent<GridColumnMenuCheckboxFilterProps, any, GridColumnMenuCheckboxFilterData, {}, GridColumnMenuCheckboxFilterMethods, {}, {}, {}, string, GridColumnMenuCheckboxFilterProps, GridColumnMenuCheckboxFilterProps, {}>;
86
+ export { GridColumnMenuCheckboxFilter, GridColumnMenuCheckboxFilterVue2 };