@progress/kendo-vue-data-tools 3.7.4-dev.202212020747 → 3.7.4-dev.202301091431

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 (123) hide show
  1. package/README.md +1 -1
  2. package/dist/cdn/js/kendo-vue-data-tools.js +1 -1
  3. package/dist/es/cells/FilterCell.js +35 -21
  4. package/dist/es/columnmenu/ColumnMenu.js +9 -3
  5. package/dist/es/columnmenu/ColumnMenuCheckboxFilter.js +10 -3
  6. package/dist/es/columnmenu/ColumnMenuItem.js +3 -3
  7. package/dist/es/columnmenu/ColumnMenuSort.js +8 -8
  8. package/dist/es/drag/ColumnDraggable.js +6 -2
  9. package/dist/es/drag/DragClue.js +6 -2
  10. package/dist/es/filter/Expression.js +17 -8
  11. package/dist/es/filter/Filter.js +20 -4
  12. package/dist/es/filter/GroupFilters.js +10 -2
  13. package/dist/es/filter/GroupToolbar.js +33 -8
  14. package/dist/es/header/FilterRow.d.ts +1 -0
  15. package/dist/es/header/FilterRow.js +9 -6
  16. package/dist/es/header/Header.d.ts +1 -0
  17. package/dist/es/header/Header.js +12 -2
  18. package/dist/es/header/HeaderRow.d.ts +2 -0
  19. package/dist/es/header/HeaderRow.js +78 -8
  20. package/dist/es/header/HeaderSelectionCell.d.ts +1 -0
  21. package/dist/es/header/HeaderSelectionCell.js +43 -13
  22. package/dist/es/header/HeaderTdElement.d.ts +46 -0
  23. package/dist/es/header/HeaderTdElement.js +92 -0
  24. package/dist/es/header/HeaderThElement.d.ts +8 -1
  25. package/dist/es/header/HeaderThElement.js +10 -2
  26. package/dist/es/header/main.d.ts +1 -0
  27. package/dist/es/header/main.js +1 -0
  28. package/dist/es/interfaces/FilterCellProps.d.ts +12 -0
  29. package/dist/es/messages/main.d.ts +5 -0
  30. package/dist/es/messages/main.js +5 -0
  31. package/dist/es/package-metadata.js +1 -1
  32. package/dist/es/pager/Pager.d.ts +13 -1
  33. package/dist/es/pager/Pager.js +66 -28
  34. package/dist/es/pager/PagerInput.d.ts +9 -1
  35. package/dist/es/pager/PagerInput.js +16 -2
  36. package/dist/es/pager/PagerNavigationButton.d.ts +13 -0
  37. package/dist/es/pager/PagerNavigationButton.js +31 -22
  38. package/dist/es/pager/PagerNumericButtons.d.ts +5 -1
  39. package/dist/es/pager/PagerNumericButtons.js +61 -27
  40. package/dist/es/pager/PagerPageSizes.d.ts +1 -0
  41. package/dist/es/pager/PagerPageSizes.js +3 -0
  42. package/dist/es/selection/utils.js +6 -8
  43. package/dist/esm/cells/FilterCell.js +35 -21
  44. package/dist/esm/columnmenu/ColumnMenu.js +9 -3
  45. package/dist/esm/columnmenu/ColumnMenuCheckboxFilter.js +10 -3
  46. package/dist/esm/columnmenu/ColumnMenuItem.js +3 -3
  47. package/dist/esm/columnmenu/ColumnMenuSort.js +8 -8
  48. package/dist/esm/drag/ColumnDraggable.js +6 -2
  49. package/dist/esm/drag/DragClue.js +6 -2
  50. package/dist/esm/filter/Expression.js +17 -8
  51. package/dist/esm/filter/Filter.js +20 -4
  52. package/dist/esm/filter/GroupFilters.js +10 -2
  53. package/dist/esm/filter/GroupToolbar.js +33 -8
  54. package/dist/esm/header/FilterRow.d.ts +1 -0
  55. package/dist/esm/header/FilterRow.js +9 -6
  56. package/dist/esm/header/Header.d.ts +1 -0
  57. package/dist/esm/header/Header.js +12 -2
  58. package/dist/esm/header/HeaderRow.d.ts +2 -0
  59. package/dist/esm/header/HeaderRow.js +78 -8
  60. package/dist/esm/header/HeaderSelectionCell.d.ts +1 -0
  61. package/dist/esm/header/HeaderSelectionCell.js +43 -13
  62. package/dist/esm/header/HeaderTdElement.d.ts +46 -0
  63. package/dist/esm/header/HeaderTdElement.js +92 -0
  64. package/dist/esm/header/HeaderThElement.d.ts +8 -1
  65. package/dist/esm/header/HeaderThElement.js +10 -2
  66. package/dist/esm/header/main.d.ts +1 -0
  67. package/dist/esm/header/main.js +1 -0
  68. package/dist/esm/interfaces/FilterCellProps.d.ts +12 -0
  69. package/dist/esm/messages/main.d.ts +5 -0
  70. package/dist/esm/messages/main.js +5 -0
  71. package/dist/esm/package-metadata.js +1 -1
  72. package/dist/esm/pager/Pager.d.ts +13 -1
  73. package/dist/esm/pager/Pager.js +66 -28
  74. package/dist/esm/pager/PagerInput.d.ts +9 -1
  75. package/dist/esm/pager/PagerInput.js +16 -2
  76. package/dist/esm/pager/PagerNavigationButton.d.ts +13 -0
  77. package/dist/esm/pager/PagerNavigationButton.js +31 -22
  78. package/dist/esm/pager/PagerNumericButtons.d.ts +5 -1
  79. package/dist/esm/pager/PagerNumericButtons.js +61 -27
  80. package/dist/esm/pager/PagerPageSizes.d.ts +1 -0
  81. package/dist/esm/pager/PagerPageSizes.js +3 -0
  82. package/dist/esm/selection/utils.js +6 -8
  83. package/dist/npm/cells/FilterCell.js +34 -20
  84. package/dist/npm/columnmenu/ColumnMenu.js +8 -2
  85. package/dist/npm/columnmenu/ColumnMenuCheckboxFilter.js +9 -2
  86. package/dist/npm/columnmenu/ColumnMenuItem.js +2 -2
  87. package/dist/npm/columnmenu/ColumnMenuSort.js +8 -8
  88. package/dist/npm/drag/ColumnDraggable.js +6 -2
  89. package/dist/npm/drag/DragClue.js +6 -2
  90. package/dist/npm/filter/Expression.js +17 -8
  91. package/dist/npm/filter/Filter.js +20 -4
  92. package/dist/npm/filter/GroupFilters.js +10 -2
  93. package/dist/npm/filter/GroupToolbar.js +33 -8
  94. package/dist/npm/header/FilterRow.d.ts +1 -0
  95. package/dist/npm/header/FilterRow.js +9 -6
  96. package/dist/npm/header/Header.d.ts +1 -0
  97. package/dist/npm/header/Header.js +11 -1
  98. package/dist/npm/header/HeaderRow.d.ts +2 -0
  99. package/dist/npm/header/HeaderRow.js +77 -7
  100. package/dist/npm/header/HeaderSelectionCell.d.ts +1 -0
  101. package/dist/npm/header/HeaderSelectionCell.js +42 -12
  102. package/dist/npm/header/HeaderTdElement.d.ts +46 -0
  103. package/dist/npm/header/HeaderTdElement.js +99 -0
  104. package/dist/npm/header/HeaderThElement.d.ts +8 -1
  105. package/dist/npm/header/HeaderThElement.js +10 -2
  106. package/dist/npm/header/main.d.ts +1 -0
  107. package/dist/npm/header/main.js +1 -0
  108. package/dist/npm/interfaces/FilterCellProps.d.ts +12 -0
  109. package/dist/npm/messages/main.d.ts +5 -0
  110. package/dist/npm/messages/main.js +6 -1
  111. package/dist/npm/package-metadata.js +1 -1
  112. package/dist/npm/pager/Pager.d.ts +13 -1
  113. package/dist/npm/pager/Pager.js +65 -27
  114. package/dist/npm/pager/PagerInput.d.ts +9 -1
  115. package/dist/npm/pager/PagerInput.js +16 -2
  116. package/dist/npm/pager/PagerNavigationButton.d.ts +13 -0
  117. package/dist/npm/pager/PagerNavigationButton.js +31 -22
  118. package/dist/npm/pager/PagerNumericButtons.d.ts +5 -1
  119. package/dist/npm/pager/PagerNumericButtons.js +61 -27
  120. package/dist/npm/pager/PagerPageSizes.d.ts +1 -0
  121. package/dist/npm/pager/PagerPageSizes.js +3 -0
  122. package/dist/npm/selection/utils.js +5 -7
  123. package/package.json +12 -11
@@ -25,6 +25,8 @@ var GroupFilters_1 = require("./GroupFilters");
25
25
  var GroupToolbar_1 = require("./GroupToolbar");
26
26
  var kendo_vue_common_1 = require("@progress/kendo-vue-common");
27
27
  var package_metadata_1 = require("../package-metadata");
28
+ var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
29
+ var main_1 = require("../messages/main");
28
30
  /**
29
31
  * @hidden
30
32
  */
@@ -51,6 +53,11 @@ var FilterVue2 = {
51
53
  value: Object,
52
54
  defaultGroupFilter: Object
53
55
  },
56
+ inject: {
57
+ kendoLocalizationService: {
58
+ default: null
59
+ }
60
+ },
54
61
  created: function created() {
55
62
  (0, kendo_vue_common_1.validatePackage)(package_metadata_1.packageMetadata);
56
63
  },
@@ -73,6 +80,7 @@ var FilterVue2 = {
73
80
  }
74
81
  },
75
82
  render: function render(createElement) {
83
+ var locService = (0, kendo_vue_intl_1.provideLocalizationService)(this);
76
84
  var h = gh || createElement;
77
85
  var fields = this.$props.fields.map(function (field) {
78
86
  return __assign(__assign({}, field), {
@@ -82,13 +90,22 @@ var FilterVue2 = {
82
90
  return h("div", {
83
91
  "class": 'k-widget k-filter'
84
92
  }, [h("ul", {
85
- "class": "k-filter-container"
93
+ "class": "k-filter-container",
94
+ role: "tree",
95
+ attrs: this.v3 ? undefined : {
96
+ role: "tree",
97
+ ariaLabel: locService.toLanguageString(main_1.filterAriaLabel, main_1.messages[main_1.filterAriaLabel])
98
+ },
99
+ ariaLabel: locService.toLanguageString(main_1.filterAriaLabel, main_1.messages[main_1.filterAriaLabel])
86
100
  }, [h("li", {
87
- "class": "k-filter-group-main"
101
+ "class": "k-filter-group-main",
102
+ role: "treeitem",
103
+ attrs: this.v3 ? undefined : {
104
+ role: "treeitem"
105
+ }
88
106
  }, [
89
107
  // @ts-ignore function children
90
108
  h(GroupToolbar_1.GroupToolbar, {
91
- "class": "k-filter-group-main",
92
109
  filter: this.computedValue,
93
110
  attrs: this.v3 ? undefined : {
94
111
  filter: this.computedValue,
@@ -112,7 +129,6 @@ var FilterVue2 = {
112
129
  }),
113
130
  // @ts-ignore function children
114
131
  h(GroupFilters_1.GroupFilter, {
115
- "class": "k-filter-group-main",
116
132
  filter: this.computedValue,
117
133
  attrs: this.v3 ? undefined : {
118
134
  filter: this.computedValue,
@@ -67,11 +67,19 @@ var GroupFilterVue2 = {
67
67
  filter = _a.filter,
68
68
  filterRender = _a.filterRender;
69
69
  return filter.filters.length > 0 ? h("ul", {
70
- "class": "k-filter-lines"
70
+ "class": "k-filter-lines",
71
+ role: "group",
72
+ attrs: this.v3 ? undefined : {
73
+ role: "group"
74
+ }
71
75
  }, [filter.filters.map(function (f, idx) {
72
76
  return h("li", {
73
77
  key: idx,
74
- "class": "k-filter-item"
78
+ "class": "k-filter-item",
79
+ role: "treeitem",
80
+ attrs: this.v3 ? undefined : {
81
+ role: "treeitem"
82
+ }
75
83
  }, [(0, kendo_data_query_1.isCompositeFilterDescriptor)(f) ? [
76
84
  // @ts-ignore
77
85
  h(GroupToolbar_1.GroupToolbar, {
@@ -34,6 +34,7 @@ var kendo_vue_buttons_1 = require("@progress/kendo-vue-buttons");
34
34
  var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
35
35
  var operators_1 = require("./operators");
36
36
  var main_1 = require("../messages/main");
37
+ var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
37
38
  /**
38
39
  * @hidden
39
40
  */
@@ -231,9 +232,11 @@ var GroupToolbarVue2 = {
231
232
  attrs: _this.v3 ? undefined : {
232
233
  title: locService.toLanguageString(main_1.filterAddExpression, main_1.messages[main_1.filterAddExpression]),
233
234
  icon: "filter-add-expression",
235
+ svgIcon: kendo_svg_icons_1.filterAddExpressionIcon,
234
236
  type: "button"
235
237
  },
236
238
  icon: "filter-add-expression",
239
+ svgIcon: kendo_svg_icons_1.filterAddExpressionIcon,
237
240
  type: "button",
238
241
  onClick: _this.onAddExpression,
239
242
  on: _this.v3 ? undefined : {
@@ -245,9 +248,11 @@ var GroupToolbarVue2 = {
245
248
  attrs: _this.v3 ? undefined : {
246
249
  title: locService.toLanguageString(main_1.filterAddExpression, main_1.messages[main_1.filterAddExpression]),
247
250
  icon: "filter-add-expression",
251
+ svgIcon: kendo_svg_icons_1.filterAddExpressionIcon,
248
252
  type: "button"
249
253
  },
250
254
  icon: "filter-add-expression",
255
+ svgIcon: kendo_svg_icons_1.filterAddExpressionIcon,
251
256
  type: "button",
252
257
  onClick: _this.onAddExpression,
253
258
  on: _this.v3 ? undefined : {
@@ -263,9 +268,11 @@ var GroupToolbarVue2 = {
263
268
  attrs: _this.v3 ? undefined : {
264
269
  title: locService.toLanguageString(main_1.filterAddGroup, main_1.messages[main_1.filterAddGroup]),
265
270
  icon: "filter-add-group",
271
+ svgIcon: kendo_svg_icons_1.filterAddGroupIcon,
266
272
  type: "button"
267
273
  },
268
274
  icon: "filter-add-group",
275
+ svgIcon: kendo_svg_icons_1.filterAddGroupIcon,
269
276
  type: "button",
270
277
  onClick: _this.onAddGroup,
271
278
  on: _this.v3 ? undefined : {
@@ -277,9 +284,11 @@ var GroupToolbarVue2 = {
277
284
  attrs: _this.v3 ? undefined : {
278
285
  title: locService.toLanguageString(main_1.filterAddGroup, main_1.messages[main_1.filterAddGroup]),
279
286
  icon: "filter-add-group",
287
+ svgIcon: kendo_svg_icons_1.filterAddGroupIcon,
280
288
  type: "button"
281
289
  },
282
290
  icon: "filter-add-group",
291
+ svgIcon: kendo_svg_icons_1.filterAddGroupIcon,
283
292
  type: "button",
284
293
  onClick: _this.onAddGroup,
285
294
  on: _this.v3 ? undefined : {
@@ -294,11 +303,13 @@ var GroupToolbarVue2 = {
294
303
  title: locService.toLanguageString(main_1.filterClose, main_1.messages[main_1.filterClose]),
295
304
  attrs: _this.v3 ? undefined : {
296
305
  title: locService.toLanguageString(main_1.filterClose, main_1.messages[main_1.filterClose]),
297
- icon: "close",
306
+ icon: "x",
307
+ svgIcon: kendo_svg_icons_1.xIcon,
298
308
  look: "flat",
299
309
  type: "button"
300
310
  },
301
- icon: "close",
311
+ icon: "x",
312
+ svgIcon: kendo_svg_icons_1.xIcon,
302
313
  look: "flat",
303
314
  type: "button",
304
315
  onClick: _this.onGroupRemove,
@@ -310,11 +321,13 @@ var GroupToolbarVue2 = {
310
321
  title: locService.toLanguageString(main_1.filterClose, main_1.messages[main_1.filterClose]),
311
322
  attrs: _this.v3 ? undefined : {
312
323
  title: locService.toLanguageString(main_1.filterClose, main_1.messages[main_1.filterClose]),
313
- icon: "close",
324
+ icon: "x",
325
+ svgIcon: kendo_svg_icons_1.xIcon,
314
326
  look: "flat",
315
327
  type: "button"
316
328
  },
317
- icon: "close",
329
+ icon: "x",
330
+ svgIcon: kendo_svg_icons_1.xIcon,
318
331
  look: "flat",
319
332
  type: "button",
320
333
  onClick: _this.onGroupRemove,
@@ -454,9 +467,11 @@ var GroupToolbarVue2 = {
454
467
  attrs: _this.v3 ? undefined : {
455
468
  title: locService.toLanguageString(main_1.filterAddExpression, main_1.messages[main_1.filterAddExpression]),
456
469
  icon: "filter-add-expression",
470
+ svgIcon: kendo_svg_icons_1.filterAddExpressionIcon,
457
471
  type: "button"
458
472
  },
459
473
  icon: "filter-add-expression",
474
+ svgIcon: kendo_svg_icons_1.filterAddExpressionIcon,
460
475
  type: "button",
461
476
  onClick: _this.onAddExpression,
462
477
  on: _this.v3 ? undefined : {
@@ -468,9 +483,11 @@ var GroupToolbarVue2 = {
468
483
  attrs: _this.v3 ? undefined : {
469
484
  title: locService.toLanguageString(main_1.filterAddExpression, main_1.messages[main_1.filterAddExpression]),
470
485
  icon: "filter-add-expression",
486
+ svgIcon: kendo_svg_icons_1.filterAddExpressionIcon,
471
487
  type: "button"
472
488
  },
473
489
  icon: "filter-add-expression",
490
+ svgIcon: kendo_svg_icons_1.filterAddExpressionIcon,
474
491
  type: "button",
475
492
  onClick: _this.onAddExpression,
476
493
  on: _this.v3 ? undefined : {
@@ -482,9 +499,11 @@ var GroupToolbarVue2 = {
482
499
  attrs: _this.v3 ? undefined : {
483
500
  title: locService.toLanguageString(main_1.filterAddGroup, main_1.messages[main_1.filterAddGroup]),
484
501
  icon: "filter-add-group",
502
+ svgIcon: kendo_svg_icons_1.filterAddGroupIcon,
485
503
  type: "button"
486
504
  },
487
505
  icon: "filter-add-group",
506
+ svgIcon: kendo_svg_icons_1.filterAddGroupIcon,
488
507
  type: "button",
489
508
  onClick: _this.onAddGroup,
490
509
  on: _this.v3 ? undefined : {
@@ -496,9 +515,11 @@ var GroupToolbarVue2 = {
496
515
  attrs: _this.v3 ? undefined : {
497
516
  title: locService.toLanguageString(main_1.filterAddGroup, main_1.messages[main_1.filterAddGroup]),
498
517
  icon: "filter-add-group",
518
+ svgIcon: kendo_svg_icons_1.filterAddGroupIcon,
499
519
  type: "button"
500
520
  },
501
521
  icon: "filter-add-group",
522
+ svgIcon: kendo_svg_icons_1.filterAddGroupIcon,
502
523
  type: "button",
503
524
  onClick: _this.onAddGroup,
504
525
  on: _this.v3 ? undefined : {
@@ -509,11 +530,13 @@ var GroupToolbarVue2 = {
509
530
  title: locService.toLanguageString(main_1.filterClose, main_1.messages[main_1.filterClose]),
510
531
  attrs: _this.v3 ? undefined : {
511
532
  title: locService.toLanguageString(main_1.filterClose, main_1.messages[main_1.filterClose]),
512
- icon: "close",
533
+ icon: "x",
534
+ svgIcon: kendo_svg_icons_1.xIcon,
513
535
  look: "flat",
514
536
  type: "button"
515
537
  },
516
- icon: "close",
538
+ icon: "x",
539
+ svgIcon: kendo_svg_icons_1.xIcon,
517
540
  look: "flat",
518
541
  type: "button",
519
542
  onClick: _this.onGroupRemove,
@@ -525,11 +548,13 @@ var GroupToolbarVue2 = {
525
548
  title: locService.toLanguageString(main_1.filterClose, main_1.messages[main_1.filterClose]),
526
549
  attrs: _this.v3 ? undefined : {
527
550
  title: locService.toLanguageString(main_1.filterClose, main_1.messages[main_1.filterClose]),
528
- icon: "close",
551
+ icon: "x",
552
+ svgIcon: kendo_svg_icons_1.xIcon,
529
553
  look: "flat",
530
554
  type: "button"
531
555
  },
532
- icon: "close",
556
+ icon: "x",
557
+ svgIcon: kendo_svg_icons_1.xIcon,
533
558
  look: "flat",
534
559
  type: "button",
535
560
  onClick: _this.onGroupRemove,
@@ -18,6 +18,7 @@ export interface FilterRowProps {
18
18
  cellRender?: any;
19
19
  isRtl?: boolean;
20
20
  ariaRowIndex?: number;
21
+ size?: string;
21
22
  }
22
23
  /**
23
24
  * @hidden
@@ -16,6 +16,7 @@ var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
16
16
  var main_1 = require("../messages/main");
17
17
  var utils_1 = require("../navigation/utils");
18
18
  var HeaderThElement_1 = require("./HeaderThElement");
19
+ var kendo_vue_common_1 = require("@progress/kendo-vue-common");
19
20
  /**
20
21
  * @hidden
21
22
  */
@@ -29,7 +30,8 @@ var FilterRowVue2 = {
29
30
  sort: [Object, Array],
30
31
  cellRender: [String, Function, Object],
31
32
  isRtl: Boolean,
32
- ariaRowIndex: Number
33
+ ariaRowIndex: Number,
34
+ size: String
33
35
  },
34
36
  inject: {
35
37
  kendoLocalizationService: {
@@ -38,7 +40,7 @@ var FilterRowVue2 = {
38
40
  },
39
41
  methods: {
40
42
  headerCellClassName: function headerCellClassName(field, locked) {
41
- var result = "".concat(locked ? 'k-grid-header-sticky' : '');
43
+ var result = "k-header" + (locked ? ' k-grid-header-sticky' : '');
42
44
  if (this.$props.sort && this.$props.sort.filter(function (descriptor) {
43
45
  return descriptor.field === field;
44
46
  }).length > 0) {
@@ -101,7 +103,6 @@ var FilterRowVue2 = {
101
103
  })[0];
102
104
  return found ? found.operator : null;
103
105
  };
104
- var filterCellProps;
105
106
  var serviceIndex = 0,
106
107
  index = -1;
107
108
  var filterCells = this.$props.columns.filter(function (c) {
@@ -118,6 +119,7 @@ var FilterRowVue2 = {
118
119
  attrs: this.v3 ? undefined : {
119
120
  grid: this.$props.grid,
120
121
  field: column.field,
122
+ size: this.$props.size,
121
123
  title: column.filterTitle,
122
124
  value: activeFilterValueFor(column.field, filterType === 'text' ? '' : null),
123
125
  operator: activeOperatorFor(column.field),
@@ -127,6 +129,7 @@ var FilterRowVue2 = {
127
129
  render: column.filterCell || this.$props.cellRender
128
130
  },
129
131
  field: column.field,
132
+ size: this.$props.size,
130
133
  title: column.filterTitle,
131
134
  value: activeFilterValueFor(column.field, filterType === 'text' ? '' : null),
132
135
  operator: activeOperatorFor(column.field),
@@ -164,7 +167,7 @@ var FilterRowVue2 = {
164
167
  },
165
168
  navigatable: column.navigatable,
166
169
  style: style,
167
- "class": this.headerCellClassName(column.field, column.locked) || undefined,
170
+ "class": (0, kendo_vue_common_1.classNames)('k-table-th', this.headerCellClassName(column.field, column.locked) || undefined),
168
171
  ariaLabel: ariaAttrs.ariaLabel,
169
172
  ariaColumnIndex: ariaAttrs.ariaColumnIndex
170
173
  }, this.v3 ? function () {
@@ -183,13 +186,13 @@ var FilterRowVue2 = {
183
186
  },
184
187
  navigatable: column.navigatable,
185
188
  style: style,
186
- "class": this.headerCellClassName(column.field, column.locked) || undefined,
189
+ "class": (0, kendo_vue_common_1.classNames)('k-table-th', this.headerCellClassName(column.field, column.locked) || undefined),
187
190
  ariaLabel: ariaAttrs.ariaLabel,
188
191
  ariaColumnIndex: ariaAttrs.ariaColumnIndex
189
192
  });
190
193
  }, this);
191
194
  return h("tr", {
192
- "class": "k-filter-row",
195
+ "class": "k-table-row k-filter-row",
193
196
  "aria-rowindex": this.ariaRowIndex,
194
197
  attrs: this.v3 ? undefined : {
195
198
  "aria-rowindex": this.ariaRowIndex,
@@ -16,6 +16,7 @@ export interface HeaderProps {
16
16
  };
17
17
  cols: Element[];
18
18
  draggable: boolean;
19
+ size?: string;
19
20
  }
20
21
  /**
21
22
  * @hidden
@@ -21,7 +21,8 @@ var HeaderVue2 = {
21
21
  headerRow: Object,
22
22
  columnResize: Object,
23
23
  cols: Array,
24
- draggable: Boolean
24
+ draggable: Boolean,
25
+ size: String
25
26
  },
26
27
  data: function data() {
27
28
  return {
@@ -37,6 +38,14 @@ var HeaderVue2 = {
37
38
  'k-grid-header': true,
38
39
  'k-grid-draggable-header': this.$props.draggable
39
40
  };
41
+ },
42
+ tableClass: function tableClass() {
43
+ var _a;
44
+ var size = this.$props.size;
45
+ return _a = {
46
+ 'k-table': true,
47
+ 'k-grid-header-table': true
48
+ }, _a["k-table-".concat(kendo_vue_common_1.kendoThemeMaps.sizeMap[size] || size)] = size, _a;
40
49
  }
41
50
  },
42
51
  mounted: function mounted() {
@@ -101,6 +110,7 @@ var HeaderVue2 = {
101
110
  role: "presentation"
102
111
  }
103
112
  }, [h("table", {
113
+ "class": this.tableClass,
104
114
  ref: (0, kendo_vue_common_1.setRef)(this, 'table'),
105
115
  role: "presentation",
106
116
  attrs: this.v3 ? undefined : {
@@ -21,6 +21,7 @@ export interface HeaderRowProps extends ColumnDraggableProps {
21
21
  reorderable?: boolean;
22
22
  onSortChange?: (descriptors: SortDescriptor[], e: any) => void;
23
23
  sort?: any;
24
+ selectedField?: string;
24
25
  filter?: CompositeFilterDescriptor;
25
26
  filterOperators: FilterOperators;
26
27
  filterable?: boolean | undefined;
@@ -35,6 +36,7 @@ export interface HeaderRowProps extends ColumnDraggableProps {
35
36
  columnMenuAnimate?: boolean | PopupAnimation;
36
37
  onFilterChange?: Function;
37
38
  isRtl?: boolean;
39
+ size: string;
38
40
  }
39
41
  /**
40
42
  * @hidden
@@ -14,7 +14,9 @@ var ColumnResizer_1 = require("../drag/ColumnResizer");
14
14
  var ColumnDraggable_1 = require("../drag/ColumnDraggable");
15
15
  var HeaderCell_1 = require("./HeaderCell");
16
16
  var ColumnMenu_1 = require("../columnmenu/ColumnMenu");
17
+ var HeaderSelectionCell_1 = require("./HeaderSelectionCell");
17
18
  var kendo_vue_common_1 = require("@progress/kendo-vue-common");
19
+ var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
18
20
  var HeaderThElement_1 = require("./HeaderThElement");
19
21
  /**
20
22
  * @hidden
@@ -53,6 +55,7 @@ var HeaderRowVue2 = {
53
55
  sort: {
54
56
  type: Array
55
57
  },
58
+ selectedField: String,
56
59
  filter: Object,
57
60
  filterable: Boolean,
58
61
  filterOperators: Object,
@@ -68,6 +71,7 @@ var HeaderRowVue2 = {
68
71
  return true;
69
72
  }
70
73
  },
74
+ size: String,
71
75
  isRtl: Boolean
72
76
  },
73
77
  inject: {
@@ -133,7 +137,7 @@ var HeaderRowVue2 = {
133
137
  },
134
138
  cellClass: function cellClass(field, headerClassName, locked) {
135
139
  var customClass = headerClassName ? ' ' + headerClassName : '';
136
- var result = "k-header ".concat(locked ? 'k-grid-header-sticky' : '') + customClass;
140
+ var result = "k-header" + (locked ? ' k-grid-header-sticky' : '') + customClass;
137
141
  if (this.$props.sort && this.$props.sort.filter(function (descriptor) {
138
142
  return descriptor.field === field;
139
143
  }).length > 0) {
@@ -173,6 +177,7 @@ var HeaderRowVue2 = {
173
177
  theadClasses: {
174
178
  get: function get() {
175
179
  return {
180
+ 'k-table-thead': true,
176
181
  'k-grid-header': true
177
182
  };
178
183
  }
@@ -201,20 +206,26 @@ var HeaderRowVue2 = {
201
206
  }) : -1;
202
207
  var sortDir = sortIndex >= 0 ? this.$props.sort[sortIndex].dir || 'none' : 'none';
203
208
  var sortIconRenderer = function sortIconRenderer(iconSortIndex) {
204
- if (!_this.$props.sort) {
209
+ if (!this.$props.sort) {
205
210
  return null;
206
211
  }
207
- return iconSortIndex >= 0 && [h("span", {
212
+ var currentDir = this.$props.sort[iconSortIndex].dir;
213
+ return iconSortIndex >= 0 && [h(kendo_vue_common_1.Icon, {
208
214
  key: 1,
209
- "class": 'k-icon k-i-sort-' + _this.$props.sort[iconSortIndex].dir + '-sm'
210
- }), _this.$props.sort.length > 1 && h("span", {
215
+ name: "sort-".concat(currentDir, "-small"),
216
+ attrs: this.v3 ? undefined : {
217
+ name: "sort-".concat(currentDir, "-small"),
218
+ icon: currentDir === 'asc' ? kendo_svg_icons_1.sortAscSmallIcon : kendo_svg_icons_1.sortDescSmallIcon
219
+ },
220
+ icon: currentDir === 'asc' ? kendo_svg_icons_1.sortAscSmallIcon : kendo_svg_icons_1.sortDescSmallIcon
221
+ }), this.$props.sort.length > 1 && h("span", {
211
222
  key: 2,
212
223
  "class": "k-sort-order"
213
224
  }, [iconSortIndex + 1])];
214
225
  };
215
- var sortIcon = sortIconRenderer(sortIndex);
216
- var className = (column.kFirst ? 'k-first ' : '') + this.cellClass(column.field, column.headerClassName, column.locked);
226
+ var sortIcon = sortIconRenderer.call(this, sortIndex);
217
227
  var columnMenu = column.columnMenu || column.columnMenu === false ? column.columnMenu : this.$props.columnMenu;
228
+ var className = (column.kFirst ? 'k-first ' : '') + this.cellClass(column.field, column.headerClassName, column.locked) + (columnMenu ? ' k-filterable' : '');
218
229
  var columnMenuRender = !columnMenu || typeof columnMenu === 'boolean' ? !!columnMenu : this.getTemplate(columnMenu);
219
230
  var style = column.left !== undefined ? !this.$props.isRtl ? {
220
231
  left: column.left + 'px',
@@ -333,6 +344,36 @@ var HeaderRowVue2 = {
333
344
  render: (column.headerCell || _this2.$props.cellRender) && _this2.getTemplate(column.headerCell || _this2.$props.cellRender)
334
345
  }, _this2.v3 ? function () {
335
346
  return [sortIcon];
347
+ } : [sortIcon])]) || column.field === _this2.$props.selectedField && h("span", {
348
+ "class": 'k-cell-inner'
349
+ }, [
350
+ // @ts-ignore function children
351
+ h(HeaderSelectionCell_1.HeaderSelectionCell, {
352
+ key: 1,
353
+ field: column.field,
354
+ attrs: _this2.v3 ? undefined : {
355
+ field: column.field,
356
+ sortable: sortable,
357
+ selectionValue: column.headerSelectionValue,
358
+ title: column.title,
359
+ render: (column.headerCell || _this2.$props.cellRender) && _this2.getTemplate(column.headerCell || _this2.$props.cellRender)
360
+ },
361
+ sortable: sortable,
362
+ onHeadercellclick: function onHeadercellclick(e) {
363
+ return _this.cellClick(e, column);
364
+ },
365
+ on: _this2.v3 ? undefined : {
366
+ "headercellclick": function onHeadercellclick(e) {
367
+ return _this.cellClick(e, column);
368
+ },
369
+ "selectionchange": _this2.selectionChangeHandler
370
+ },
371
+ onSelectionchange: _this2.selectionChangeHandler,
372
+ selectionValue: column.headerSelectionValue,
373
+ title: column.title,
374
+ render: (column.headerCell || _this2.$props.cellRender) && _this2.getTemplate(column.headerCell || _this2.$props.cellRender)
375
+ }, _this2.v3 ? function () {
376
+ return [sortIcon];
336
377
  } : [sortIcon])]) || h("span", {
337
378
  "class": 'k-cell-inner'
338
379
  }, [
@@ -438,6 +479,34 @@ var HeaderRowVue2 = {
438
479
  render: (column.headerCell || _this2.$props.cellRender) && _this2.getTemplate(column.headerCell || _this2.$props.cellRender)
439
480
  }, _this2.v3 ? function () {
440
481
  return [sortIcon];
482
+ } : [sortIcon])]) || column.field === _this2.$props.selectedField && h("span", {
483
+ "class": 'k-cell-inner'
484
+ }, [h(HeaderSelectionCell_1.HeaderSelectionCell, {
485
+ key: 1,
486
+ field: column.field,
487
+ attrs: _this2.v3 ? undefined : {
488
+ field: column.field,
489
+ sortable: sortable,
490
+ selectionValue: column.headerSelectionValue,
491
+ title: column.title,
492
+ render: (column.headerCell || _this2.$props.cellRender) && _this2.getTemplate(column.headerCell || _this2.$props.cellRender)
493
+ },
494
+ sortable: sortable,
495
+ onHeadercellclick: function onHeadercellclick(e) {
496
+ return _this.cellClick(e, column);
497
+ },
498
+ on: _this2.v3 ? undefined : {
499
+ "headercellclick": function onHeadercellclick(e) {
500
+ return _this.cellClick(e, column);
501
+ },
502
+ "selectionchange": _this2.selectionChangeHandler
503
+ },
504
+ onSelectionchange: _this2.selectionChangeHandler,
505
+ selectionValue: column.headerSelectionValue,
506
+ title: column.title,
507
+ render: (column.headerCell || _this2.$props.cellRender) && _this2.getTemplate(column.headerCell || _this2.$props.cellRender)
508
+ }, _this2.v3 ? function () {
509
+ return [sortIcon];
441
510
  } : [sortIcon])]) || h("span", {
442
511
  "class": 'k-cell-inner'
443
512
  }, [h(HeaderCell_1.HeaderCell, {
@@ -503,6 +572,7 @@ var HeaderRowVue2 = {
503
572
  }, this.v3 ? function () {
504
573
  return [cells.call(_this3, rowIndexes)];
505
574
  } : [cells.call(_this3, rowIndexes)]) || h("tr", {
575
+ "class": 'k-table-row',
506
576
  role: 'row',
507
577
  attrs: this.v3 ? undefined : {
508
578
  role: 'row'
@@ -9,6 +9,7 @@ import { DefineComponent, RecordPropsDefinition, ComponentOptions, Vue2type } fr
9
9
  */
10
10
  export interface HeaderSelectionCellMethods extends Vue2type {
11
11
  changeHandle: (e: any) => void;
12
+ clickHandler: (e: any) => void;
12
13
  }
13
14
  /**
14
15
  * @hidden
@@ -10,6 +10,8 @@ var allVue = Vue;
10
10
  var gh = allVue.h;
11
11
  var isV3 = allVue.version && allVue.version[0] === '3';
12
12
  var kendo_vue_common_1 = require("@progress/kendo-vue-common");
13
+ var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
14
+ var main_1 = require("../messages/main");
13
15
  /**
14
16
  * @hidden
15
17
  */
@@ -17,9 +19,20 @@ var HeaderSelectionCellVue2 = {
17
19
  props: {
18
20
  field: String,
19
21
  title: String,
22
+ sortable: [Boolean, Object],
20
23
  selectionValue: Boolean,
21
24
  render: [Object, Function, String]
22
25
  },
26
+ // @ts-ignore
27
+ emits: {
28
+ selectionchange: null,
29
+ headercellclick: null
30
+ },
31
+ inject: {
32
+ kendoLocalizationService: {
33
+ default: null
34
+ }
35
+ },
23
36
  created: function created() {
24
37
  this.inputId = (0, kendo_vue_common_1.guid)();
25
38
  },
@@ -29,6 +42,11 @@ var HeaderSelectionCellVue2 = {
29
42
  field: this.$props.field,
30
43
  event: e
31
44
  });
45
+ },
46
+ clickHandler: function clickHandler(event) {
47
+ if (this.$props.sortable) {
48
+ this.$emit('headercellclick', event);
49
+ }
32
50
  }
33
51
  },
34
52
  // @ts-ignore
@@ -41,8 +59,11 @@ var HeaderSelectionCellVue2 = {
41
59
  // @ts-ignore
42
60
  render: function render(createElement) {
43
61
  var h = gh || createElement;
62
+ var defaultSlot = (0, kendo_vue_common_1.getDefaultSlots)(this);
44
63
  var renderTemplate = this.$props.render;
45
- var defaultRendering = h("span", [[h("input", {
64
+ var ls = (0, kendo_vue_intl_1.provideLocalizationService)(this);
65
+ var selectAllRowsMessage = ls.toLanguageString(main_1.selectAllRows, main_1.messages[main_1.selectAllRows]);
66
+ var input = h("input", {
46
67
  key: 0,
47
68
  checked: this.v3 ? this.$props.selectionValue : null,
48
69
  domProps: this.v3 ? undefined : {
@@ -51,31 +72,40 @@ var HeaderSelectionCellVue2 = {
51
72
  id: this.inputId,
52
73
  attrs: this.v3 ? undefined : {
53
74
  id: this.inputId,
54
- type: "checkbox"
75
+ type: "checkbox",
76
+ "aria-label": selectAllRowsMessage
55
77
  },
56
78
  type: "checkbox",
57
79
  "class": "k-checkbox k-checkbox-md k-rounded-md",
80
+ "aria-label": selectAllRowsMessage,
58
81
  onChange: this.changeHandle,
59
82
  on: this.v3 ? undefined : {
60
83
  "change": this.changeHandle
61
84
  }
62
- }), h("label", {
63
- key: 1,
64
- "class": "k-checkbox-label",
65
- "for": this.inputId,
66
- attrs: this.v3 ? undefined : {
67
- "for": this.inputId
68
- }
69
- })]]);
70
- return kendo_vue_common_1.getTemplate.call(this, {
85
+ });
86
+ var defaultRendering = kendo_vue_common_1.getTemplate.call(this, {
71
87
  h: h,
72
88
  template: renderTemplate,
73
- defaultRendering: defaultRendering,
89
+ defaultRendering: input,
74
90
  additionalProps: this.$props,
75
91
  additionalListeners: {
92
+ click: this.clickHandler,
76
93
  selectionchange: this.changeHandle
77
94
  }
78
95
  });
96
+ return h("span", {
97
+ "class": "k-link",
98
+ onClick: this.clickHandler,
99
+ on: this.v3 ? undefined : {
100
+ "click": this.clickHandler
101
+ }
102
+ }, [h("span", {
103
+ "class": "k-column-title",
104
+ title: this.$props.title,
105
+ attrs: this.v3 ? undefined : {
106
+ title: this.$props.title
107
+ }
108
+ }, [defaultRendering]), defaultSlot]);
79
109
  }
80
110
  };
81
111
  exports.HeaderSelectionCellVue2 = HeaderSelectionCellVue2;