@progress/kendo-vue-grid 3.7.4-dev.202212300853 → 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.
- package/dist/cdn/js/kendo-vue-grid.js +1 -1
- package/dist/es/Grid.js +234 -72
- package/dist/es/GridToolbar.js +5 -1
- package/dist/es/cells/GridCell.d.ts +8 -1
- package/dist/es/cells/GridCell.js +11 -2
- package/dist/es/cells/GridDetailCell.js +1 -1
- package/dist/es/cells/GridDetailHierarchyCell.js +1 -1
- package/dist/es/cells/GridEditCell.d.ts +8 -1
- package/dist/es/cells/GridEditCell.js +13 -4
- package/dist/es/cells/GridFilterCell.js +34 -22
- package/dist/es/cells/GridGroupCell.d.ts +14 -2
- package/dist/es/cells/GridGroupCell.js +26 -3
- package/dist/es/cells/GridHierarchyCell.js +15 -2
- package/dist/es/cells/GridSelectionCell.d.ts +8 -1
- package/dist/es/cells/GridSelectionCell.js +10 -1
- package/dist/es/columnMenu/ColumnMenu.js +10 -5
- package/dist/es/columnMenu/GridColumnMenuCheckboxFilter.js +4 -1
- package/dist/es/columnMenu/GridColumnMenuSort.js +8 -8
- package/dist/es/drag/ColumnDraggable.js +15 -2
- package/dist/es/drag/GroupingIndicator.js +25 -24
- package/dist/es/filterCommon.d.ts +4 -0
- package/dist/es/filterCommon.js +17 -1
- package/dist/es/footer/Footer.js +12 -2
- package/dist/es/footer/FooterRow.d.ts +1 -0
- package/dist/es/footer/FooterRow.js +12 -6
- package/dist/es/header/FilterRow.d.ts +1 -0
- package/dist/es/header/FilterRow.js +30 -30
- package/dist/es/header/GroupPanel.d.ts +1 -0
- package/dist/es/header/GroupPanel.js +18 -5
- package/dist/es/header/Header.js +4 -12
- package/dist/es/header/HeaderRow.d.ts +2 -0
- package/dist/es/header/HeaderRow.js +45 -15
- package/dist/es/interfaces/GridFilterCellProps.d.ts +12 -0
- package/dist/es/messages/main.d.ts +60 -0
- package/dist/es/messages/main.js +60 -0
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/rows/GridRow.js +2 -2
- package/dist/es/utils/main.js +1 -1
- package/dist/esm/Grid.js +234 -72
- package/dist/esm/GridToolbar.js +5 -1
- package/dist/esm/cells/GridCell.d.ts +8 -1
- package/dist/esm/cells/GridCell.js +11 -2
- package/dist/esm/cells/GridDetailCell.js +1 -1
- package/dist/esm/cells/GridDetailHierarchyCell.js +1 -1
- package/dist/esm/cells/GridEditCell.d.ts +8 -1
- package/dist/esm/cells/GridEditCell.js +13 -4
- package/dist/esm/cells/GridFilterCell.js +34 -22
- package/dist/esm/cells/GridGroupCell.d.ts +14 -2
- package/dist/esm/cells/GridGroupCell.js +26 -3
- package/dist/esm/cells/GridHierarchyCell.js +15 -2
- package/dist/esm/cells/GridSelectionCell.d.ts +8 -1
- package/dist/esm/cells/GridSelectionCell.js +10 -1
- package/dist/esm/columnMenu/ColumnMenu.js +10 -5
- package/dist/esm/columnMenu/GridColumnMenuCheckboxFilter.js +4 -1
- package/dist/esm/columnMenu/GridColumnMenuSort.js +8 -8
- package/dist/esm/drag/ColumnDraggable.js +15 -2
- package/dist/esm/drag/GroupingIndicator.js +25 -24
- package/dist/esm/filterCommon.d.ts +4 -0
- package/dist/esm/filterCommon.js +17 -1
- package/dist/esm/footer/Footer.js +12 -2
- package/dist/esm/footer/FooterRow.d.ts +1 -0
- package/dist/esm/footer/FooterRow.js +12 -6
- package/dist/esm/header/FilterRow.d.ts +1 -0
- package/dist/esm/header/FilterRow.js +30 -30
- package/dist/esm/header/GroupPanel.d.ts +1 -0
- package/dist/esm/header/GroupPanel.js +18 -5
- package/dist/esm/header/Header.js +4 -12
- package/dist/esm/header/HeaderRow.d.ts +2 -0
- package/dist/esm/header/HeaderRow.js +45 -15
- package/dist/esm/interfaces/GridFilterCellProps.d.ts +12 -0
- package/dist/esm/messages/main.d.ts +60 -0
- package/dist/esm/messages/main.js +60 -0
- package/dist/esm/package-metadata.js +1 -1
- package/dist/esm/rows/GridRow.js +2 -2
- package/dist/esm/utils/main.js +1 -1
- package/dist/npm/Grid.js +234 -72
- package/dist/npm/GridToolbar.js +5 -1
- package/dist/npm/cells/GridCell.d.ts +8 -1
- package/dist/npm/cells/GridCell.js +11 -2
- package/dist/npm/cells/GridDetailCell.js +1 -1
- package/dist/npm/cells/GridDetailHierarchyCell.js +1 -1
- package/dist/npm/cells/GridEditCell.d.ts +8 -1
- package/dist/npm/cells/GridEditCell.js +13 -4
- package/dist/npm/cells/GridFilterCell.js +33 -21
- package/dist/npm/cells/GridGroupCell.d.ts +14 -2
- package/dist/npm/cells/GridGroupCell.js +26 -3
- package/dist/npm/cells/GridHierarchyCell.js +15 -2
- package/dist/npm/cells/GridSelectionCell.d.ts +8 -1
- package/dist/npm/cells/GridSelectionCell.js +10 -1
- package/dist/npm/columnMenu/ColumnMenu.js +10 -5
- package/dist/npm/columnMenu/GridColumnMenuCheckboxFilter.js +4 -1
- package/dist/npm/columnMenu/GridColumnMenuSort.js +8 -8
- package/dist/npm/drag/ColumnDraggable.js +15 -2
- package/dist/npm/drag/GroupingIndicator.js +25 -24
- package/dist/npm/filterCommon.d.ts +4 -0
- package/dist/npm/filterCommon.js +18 -1
- package/dist/npm/footer/Footer.js +12 -2
- package/dist/npm/footer/FooterRow.d.ts +1 -0
- package/dist/npm/footer/FooterRow.js +12 -6
- package/dist/npm/header/FilterRow.d.ts +1 -0
- package/dist/npm/header/FilterRow.js +28 -28
- package/dist/npm/header/GroupPanel.d.ts +1 -0
- package/dist/npm/header/GroupPanel.js +17 -4
- package/dist/npm/header/Header.js +4 -12
- package/dist/npm/header/HeaderRow.d.ts +2 -0
- package/dist/npm/header/HeaderRow.js +45 -15
- package/dist/npm/interfaces/GridFilterCellProps.d.ts +12 -0
- package/dist/npm/messages/main.d.ts +60 -0
- package/dist/npm/messages/main.js +61 -1
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/rows/GridRow.js +2 -2
- package/dist/npm/utils/main.js +1 -1
- package/package.json +18 -16
|
@@ -11,6 +11,7 @@ var gh = allVue.h;
|
|
|
11
11
|
var isV3 = allVue.version && allVue.version[0] === '3';
|
|
12
12
|
var ref = allVue.ref;
|
|
13
13
|
var kendo_vue_common_1 = require("@progress/kendo-vue-common");
|
|
14
|
+
var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
|
|
14
15
|
/**
|
|
15
16
|
* @hidden
|
|
16
17
|
*/
|
|
@@ -79,16 +80,16 @@ var GroupingIndicatorVue2 = {
|
|
|
79
80
|
ref: 'draggable'
|
|
80
81
|
}, this.v3 ? function () {
|
|
81
82
|
return [h("div", {
|
|
82
|
-
"class": "k-
|
|
83
|
+
"class": "k-chip k-chip-md k-chip-solid k-chip-solid-base k-rounded-md",
|
|
83
84
|
ref: (0, kendo_vue_common_1.setRef)(_this, 'indicatorContainer')
|
|
84
|
-
}, [h("div", {
|
|
85
|
-
"class": "k-chip k-chip-lg k-rounded-md k-chip-solid k-chip-solid-base"
|
|
86
85
|
}, [h(kendo_vue_common_1.Icon, {
|
|
87
86
|
name: 'sort-' + _this.$props.dir + '-small',
|
|
88
87
|
attrs: _this.v3 ? undefined : {
|
|
89
|
-
name: 'sort-' + _this.$props.dir + '-small'
|
|
88
|
+
name: 'sort-' + _this.$props.dir + '-small',
|
|
89
|
+
icon: _this.$props.dir === 'asc' ? kendo_svg_icons_1.sortAscSmallIcon : kendo_svg_icons_1.sortDescSmallIcon
|
|
90
90
|
},
|
|
91
|
-
"class": 'k-chip-icon'
|
|
91
|
+
"class": 'k-chip-icon',
|
|
92
|
+
icon: _this.$props.dir === 'asc' ? kendo_svg_icons_1.sortAscSmallIcon : kendo_svg_icons_1.sortDescSmallIcon
|
|
92
93
|
}), h("span", {
|
|
93
94
|
"class": "k-chip-content",
|
|
94
95
|
tabindex: -1,
|
|
@@ -99,9 +100,7 @@ var GroupingIndicatorVue2 = {
|
|
|
99
100
|
on: _this.v3 ? undefined : {
|
|
100
101
|
"click": _this.sortChange
|
|
101
102
|
}
|
|
102
|
-
}, [h("span", {
|
|
103
|
-
"class": "k-chip-text"
|
|
104
|
-
}, [_this.$props.title])]), h("span", {
|
|
103
|
+
}, [_this.$props.title]), h("span", {
|
|
105
104
|
"class": "k-chip-actions"
|
|
106
105
|
}, [h("span", {
|
|
107
106
|
"class": "k-chip-action k-chip-remove-action",
|
|
@@ -114,22 +113,24 @@ var GroupingIndicatorVue2 = {
|
|
|
114
113
|
"click": _this.groupRemove
|
|
115
114
|
}
|
|
116
115
|
}, [h(kendo_vue_common_1.Icon, {
|
|
117
|
-
name: "x",
|
|
116
|
+
name: "x-circle",
|
|
118
117
|
attrs: _this.v3 ? undefined : {
|
|
119
|
-
name: "x"
|
|
120
|
-
|
|
121
|
-
|
|
118
|
+
name: "x-circle",
|
|
119
|
+
icon: kendo_svg_icons_1.xCircleIcon
|
|
120
|
+
},
|
|
121
|
+
icon: kendo_svg_icons_1.xCircleIcon
|
|
122
|
+
})])])])];
|
|
122
123
|
} : [h("div", {
|
|
123
|
-
"class": "k-
|
|
124
|
+
"class": "k-chip k-chip-md k-chip-solid k-chip-solid-base k-rounded-md",
|
|
124
125
|
ref: (0, kendo_vue_common_1.setRef)(_this, 'indicatorContainer')
|
|
125
|
-
}, [h("div", {
|
|
126
|
-
"class": "k-chip k-chip-lg k-rounded-md k-chip-solid k-chip-solid-base"
|
|
127
126
|
}, [h(kendo_vue_common_1.Icon, {
|
|
128
127
|
name: 'sort-' + _this.$props.dir + '-small',
|
|
129
128
|
attrs: _this.v3 ? undefined : {
|
|
130
|
-
name: 'sort-' + _this.$props.dir + '-small'
|
|
129
|
+
name: 'sort-' + _this.$props.dir + '-small',
|
|
130
|
+
icon: _this.$props.dir === 'asc' ? kendo_svg_icons_1.sortAscSmallIcon : kendo_svg_icons_1.sortDescSmallIcon
|
|
131
131
|
},
|
|
132
|
-
"class": 'k-chip-icon'
|
|
132
|
+
"class": 'k-chip-icon',
|
|
133
|
+
icon: _this.$props.dir === 'asc' ? kendo_svg_icons_1.sortAscSmallIcon : kendo_svg_icons_1.sortDescSmallIcon
|
|
133
134
|
}), h("span", {
|
|
134
135
|
"class": "k-chip-content",
|
|
135
136
|
tabindex: -1,
|
|
@@ -140,9 +141,7 @@ var GroupingIndicatorVue2 = {
|
|
|
140
141
|
on: _this.v3 ? undefined : {
|
|
141
142
|
"click": _this.sortChange
|
|
142
143
|
}
|
|
143
|
-
}, [h("span", {
|
|
144
|
-
"class": "k-chip-text"
|
|
145
|
-
}, [_this.$props.title])]), h("span", {
|
|
144
|
+
}, [_this.$props.title]), h("span", {
|
|
146
145
|
"class": "k-chip-actions"
|
|
147
146
|
}, [h("span", {
|
|
148
147
|
"class": "k-chip-action k-chip-remove-action",
|
|
@@ -155,11 +154,13 @@ var GroupingIndicatorVue2 = {
|
|
|
155
154
|
"click": _this.groupRemove
|
|
156
155
|
}
|
|
157
156
|
}, [h(kendo_vue_common_1.Icon, {
|
|
158
|
-
name: "x",
|
|
157
|
+
name: "x-circle",
|
|
159
158
|
attrs: _this.v3 ? undefined : {
|
|
160
|
-
name: "x"
|
|
161
|
-
|
|
162
|
-
|
|
159
|
+
name: "x-circle",
|
|
160
|
+
icon: kendo_svg_icons_1.xCircleIcon
|
|
161
|
+
},
|
|
162
|
+
icon: kendo_svg_icons_1.xCircleIcon
|
|
163
|
+
})])])])])
|
|
163
164
|
);
|
|
164
165
|
}
|
|
165
166
|
};
|
package/dist/npm/filterCommon.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.cellOperatorChange = exports.cellBoolDropdownChange = exports.getFilterType = exports.getDefaultOperator = exports.cellInputChange = exports.defaultHideSecondFilter = exports.booleanFilterValues = exports.defaultBooleanOperator = exports.operatorMap = exports.IsUnaryFilter = exports.operators = exports.filterLogicList = void 0;
|
|
3
|
+
exports.getAriaLabel = exports.cellOperatorChange = exports.cellBoolDropdownChange = exports.getFilterType = exports.getDefaultOperator = exports.cellInputChange = exports.defaultHideSecondFilter = exports.booleanFilterValues = exports.defaultBooleanOperator = exports.operatorMap = exports.IsUnaryFilter = exports.operators = exports.filterLogicList = void 0;
|
|
4
4
|
var main_1 = require("./messages/main");
|
|
5
5
|
/**
|
|
6
6
|
* @hidden
|
|
@@ -164,3 +164,20 @@ var cellOperatorChange = function (operator, e, value) {
|
|
|
164
164
|
return { value: value, operator: operator, event: e };
|
|
165
165
|
};
|
|
166
166
|
exports.cellOperatorChange = cellOperatorChange;
|
|
167
|
+
/**
|
|
168
|
+
* @hidden
|
|
169
|
+
*/
|
|
170
|
+
var getAriaLabel = function (filterType, service) {
|
|
171
|
+
switch (filterType) {
|
|
172
|
+
case 'text':
|
|
173
|
+
return service.toLanguageString(main_1.textFilterAriaLabel, main_1.messages[main_1.textFilterAriaLabel]);
|
|
174
|
+
case 'numeric':
|
|
175
|
+
return service.toLanguageString(main_1.numericFilterAriaLabel, main_1.messages[main_1.numericFilterAriaLabel]);
|
|
176
|
+
case 'boolean':
|
|
177
|
+
return service.toLanguageString(main_1.booleanFilterAriaLabel, main_1.messages[main_1.booleanFilterAriaLabel]);
|
|
178
|
+
case 'date':
|
|
179
|
+
return service.toLanguageString(main_1.dateFilterAriaLabel, main_1.messages[main_1.dateFilterAriaLabel]);
|
|
180
|
+
default: return;
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
exports.getAriaLabel = getAriaLabel;
|
|
@@ -91,7 +91,11 @@ var FooterVue2 = {
|
|
|
91
91
|
var h = gh || createElement;
|
|
92
92
|
if (!this.$props.staticHeaders) {
|
|
93
93
|
return h("tfoot", {
|
|
94
|
-
"class": "k-grid-footer"
|
|
94
|
+
"class": "k-table-tfoot k-grid-footer",
|
|
95
|
+
role: "rowgroup",
|
|
96
|
+
attrs: this.v3 ? undefined : {
|
|
97
|
+
role: "rowgroup"
|
|
98
|
+
}
|
|
95
99
|
}, [this.$props.row]);
|
|
96
100
|
}
|
|
97
101
|
return h("div", {
|
|
@@ -105,7 +109,13 @@ var FooterVue2 = {
|
|
|
105
109
|
style: this.tableStyle
|
|
106
110
|
}, [h("colgroup", {
|
|
107
111
|
ref: (0, kendo_vue_common_1.setRef)(this, 'colGroupHeader')
|
|
108
|
-
}, [this.$props.cols]), h("tfoot",
|
|
112
|
+
}, [this.$props.cols]), h("tfoot", {
|
|
113
|
+
"class": 'k-table-tfoot',
|
|
114
|
+
role: "rowgroup",
|
|
115
|
+
attrs: this.v3 ? undefined : {
|
|
116
|
+
role: "rowgroup"
|
|
117
|
+
}
|
|
118
|
+
}, [this.$props.row])])])]);
|
|
109
119
|
}
|
|
110
120
|
};
|
|
111
121
|
exports.FooterVue2 = FooterVue2;
|
|
@@ -18,7 +18,8 @@ var FooterRowVue2 = {
|
|
|
18
18
|
name: 'FooterRow',
|
|
19
19
|
props: {
|
|
20
20
|
isRtl: Boolean,
|
|
21
|
-
columns: Array
|
|
21
|
+
columns: Array,
|
|
22
|
+
rowIndex: Number
|
|
22
23
|
},
|
|
23
24
|
methods: {
|
|
24
25
|
columnStyles: function columnStyles(column) {
|
|
@@ -44,7 +45,7 @@ var FooterRowVue2 = {
|
|
|
44
45
|
var renderCell = function renderCell(column, index) {
|
|
45
46
|
var footerCellRendering = null;
|
|
46
47
|
var stickyClassName = column.locked && column.left !== undefined ? 'k-grid-footer-sticky' : '';
|
|
47
|
-
var tdClassName = column.footerClassName ? "".concat(column.footerClassName, " ").concat(stickyClassName) : stickyClassName;
|
|
48
|
+
var tdClassName = column.footerClassName ? "k-table-td ".concat(column.footerClassName, " ").concat(stickyClassName) : 'k-table-td' + stickyClassName;
|
|
48
49
|
footerCellRendering = kendo_vue_common_1.getTemplate.call(this, {
|
|
49
50
|
h: h,
|
|
50
51
|
template: column.footerCell,
|
|
@@ -59,17 +60,22 @@ var FooterRowVue2 = {
|
|
|
59
60
|
key: index,
|
|
60
61
|
colspan: column.colSpan !== 1 ? column.colSpan : undefined,
|
|
61
62
|
attrs: this.v3 ? undefined : {
|
|
62
|
-
colspan: column.colSpan !== 1 ? column.colSpan : undefined
|
|
63
|
+
colspan: column.colSpan !== 1 ? column.colSpan : undefined,
|
|
64
|
+
role: 'gridcell'
|
|
63
65
|
},
|
|
64
66
|
style: this.columnStyles(column),
|
|
65
|
-
"class": tdClassName
|
|
67
|
+
"class": tdClassName,
|
|
68
|
+
role: 'gridcell'
|
|
66
69
|
}, [footerCellRendering]);
|
|
67
70
|
};
|
|
68
71
|
return h("tr", {
|
|
72
|
+
"class": 'k-table-row',
|
|
69
73
|
role: 'row',
|
|
70
74
|
attrs: this.v3 ? undefined : {
|
|
71
|
-
role: 'row'
|
|
72
|
-
|
|
75
|
+
role: 'row',
|
|
76
|
+
"aria-rowIndex": this.$props.rowIndex
|
|
77
|
+
},
|
|
78
|
+
"aria-rowIndex": this.$props.rowIndex
|
|
73
79
|
}, [(0, main_1.footerColumns)(this.$props.columns).map(renderCell, this)]);
|
|
74
80
|
}
|
|
75
81
|
};
|
|
@@ -29,7 +29,8 @@ var FilterRowVue2 = {
|
|
|
29
29
|
sort: [Object, Array],
|
|
30
30
|
cellRender: [String, Function, Object],
|
|
31
31
|
isRtl: Boolean,
|
|
32
|
-
ariaRowIndex: Number
|
|
32
|
+
ariaRowIndex: Number,
|
|
33
|
+
size: String
|
|
33
34
|
},
|
|
34
35
|
inject: {
|
|
35
36
|
kendoLocalizationService: {
|
|
@@ -37,15 +38,6 @@ var FilterRowVue2 = {
|
|
|
37
38
|
}
|
|
38
39
|
},
|
|
39
40
|
methods: {
|
|
40
|
-
headerCellClassName: function headerCellClassName(field, locked) {
|
|
41
|
-
var result = "".concat(locked ? 'k-grid-header-sticky' : '');
|
|
42
|
-
if (this.$props.sort && this.$props.sort.filter(function (descriptor) {
|
|
43
|
-
return descriptor.field === field;
|
|
44
|
-
}).length > 0) {
|
|
45
|
-
result += ' k-sorted';
|
|
46
|
-
}
|
|
47
|
-
return result;
|
|
48
|
-
},
|
|
49
41
|
setFilter: function setFilter(value, operator, field, e) {
|
|
50
42
|
var filters = [];
|
|
51
43
|
if (value !== '' && value !== null || operator !== '') {
|
|
@@ -100,7 +92,6 @@ var FilterRowVue2 = {
|
|
|
100
92
|
})[0];
|
|
101
93
|
return found ? found.operator : null;
|
|
102
94
|
};
|
|
103
|
-
var filterCellProps;
|
|
104
95
|
var serviceIndex = 0,
|
|
105
96
|
index = -1;
|
|
106
97
|
var filterCells = this.$props.columns.filter(function (c) {
|
|
@@ -111,6 +102,7 @@ var FilterRowVue2 = {
|
|
|
111
102
|
_this.setFilter(e.value, e.operator, column.field, e);
|
|
112
103
|
};
|
|
113
104
|
var filterType = (0, filterCommon_1.getFilterType)(column.filter);
|
|
105
|
+
var ariaLabelFilter = column.field + ' ' + (0, filterCommon_1.getAriaLabel)(filterType, intl);
|
|
114
106
|
// @ts-ignore
|
|
115
107
|
var filterRender = h(GridFilterCell_1.GridFilterCell, {
|
|
116
108
|
grid: this.$props.grid,
|
|
@@ -123,7 +115,9 @@ var FilterRowVue2 = {
|
|
|
123
115
|
operators: (0, filterCommon_1.operatorMap)(this.$props.filterOperators[filterType] || [], intl),
|
|
124
116
|
booleanValues: (0, filterCommon_1.operatorMap)(filterCommon_1.booleanFilterValues, intl),
|
|
125
117
|
filterType: filterType,
|
|
126
|
-
render: column.filterCell || this.$props.cellRender
|
|
118
|
+
render: column.filterCell || this.$props.cellRender,
|
|
119
|
+
ariaLabel: ariaLabelFilter,
|
|
120
|
+
size: this.$props.size
|
|
127
121
|
},
|
|
128
122
|
field: column.field,
|
|
129
123
|
title: column.filterTitle,
|
|
@@ -136,7 +130,9 @@ var FilterRowVue2 = {
|
|
|
136
130
|
on: this.v3 ? undefined : {
|
|
137
131
|
"change": onChangeFn
|
|
138
132
|
},
|
|
139
|
-
render: column.filterCell || this.$props.cellRender
|
|
133
|
+
render: column.filterCell || this.$props.cellRender,
|
|
134
|
+
ariaLabel: ariaLabelFilter,
|
|
135
|
+
size: this.$props.size
|
|
140
136
|
});
|
|
141
137
|
var key = column.declarationIndex >= 0 ? ++index : --serviceIndex;
|
|
142
138
|
var ariaAttrs = {
|
|
@@ -152,43 +148,47 @@ var FilterRowVue2 = {
|
|
|
152
148
|
} : {};
|
|
153
149
|
var filterCell =
|
|
154
150
|
// @ts-ignore function children
|
|
155
|
-
h(kendo_vue_data_tools_1.
|
|
151
|
+
h(kendo_vue_data_tools_1.HeaderTdElement, {
|
|
156
152
|
key: key,
|
|
157
|
-
|
|
153
|
+
role: 'gridcell',
|
|
158
154
|
attrs: this.v3 ? undefined : {
|
|
155
|
+
role: 'gridcell',
|
|
159
156
|
columnId: kendo_vue_data_tools_1.tableKeyboardNavigationTools.getFilterColumnId(column.id),
|
|
160
157
|
navigatable: column.navigatable,
|
|
161
|
-
|
|
162
|
-
|
|
158
|
+
ariaColumnIndex: ariaAttrs.ariaColumnIndex,
|
|
159
|
+
ariaLabel: ariaLabelFilter
|
|
163
160
|
},
|
|
161
|
+
columnId: kendo_vue_data_tools_1.tableKeyboardNavigationTools.getFilterColumnId(column.id),
|
|
164
162
|
navigatable: column.navigatable,
|
|
165
163
|
style: style,
|
|
166
|
-
"class": (0, kendo_vue_common_1.classNames)('k-
|
|
167
|
-
|
|
168
|
-
|
|
164
|
+
"class": (0, kendo_vue_common_1.classNames)('k-table-th', this.headerCellClassName(column.field, column.locked) || undefined),
|
|
165
|
+
ariaColumnIndex: ariaAttrs.ariaColumnIndex,
|
|
166
|
+
ariaLabel: ariaLabelFilter
|
|
169
167
|
}, this.v3 ? function () {
|
|
170
168
|
return [filterRender];
|
|
171
169
|
} : [filterRender]);
|
|
172
170
|
return column.filterable && filterCell ||
|
|
173
171
|
// @ts-ignore function children
|
|
174
|
-
h(kendo_vue_data_tools_1.
|
|
172
|
+
h(kendo_vue_data_tools_1.HeaderTdElement, {
|
|
175
173
|
key: key,
|
|
176
|
-
|
|
174
|
+
role: 'gridcell',
|
|
177
175
|
attrs: this.v3 ? undefined : {
|
|
176
|
+
role: 'gridcell',
|
|
178
177
|
columnId: kendo_vue_data_tools_1.tableKeyboardNavigationTools.getFilterColumnId(column.id),
|
|
179
178
|
navigatable: column.navigatable,
|
|
180
|
-
|
|
181
|
-
|
|
179
|
+
ariaColumnIndex: ariaAttrs.ariaColumnIndex,
|
|
180
|
+
ariaLabel: ariaLabelFilter
|
|
182
181
|
},
|
|
182
|
+
columnId: kendo_vue_data_tools_1.tableKeyboardNavigationTools.getFilterColumnId(column.id),
|
|
183
183
|
navigatable: column.navigatable,
|
|
184
184
|
style: style,
|
|
185
|
-
"class": (0, kendo_vue_common_1.classNames)('k-
|
|
186
|
-
|
|
187
|
-
|
|
185
|
+
"class": (0, kendo_vue_common_1.classNames)('k-table-th', this.headerCellClassName(column.field, column.locked) || undefined),
|
|
186
|
+
ariaColumnIndex: ariaAttrs.ariaColumnIndex,
|
|
187
|
+
ariaLabel: ariaLabelFilter
|
|
188
188
|
});
|
|
189
189
|
}, this);
|
|
190
190
|
return h("tr", {
|
|
191
|
-
"class": "k-filter-row",
|
|
191
|
+
"class": "k-table-row k-filter-row",
|
|
192
192
|
"aria-rowindex": this.ariaRowIndex,
|
|
193
193
|
attrs: this.v3 ? undefined : {
|
|
194
194
|
"aria-rowindex": this.ariaRowIndex,
|
|
@@ -11,6 +11,7 @@ declare type DefaultMethods<V> = {
|
|
|
11
11
|
export interface GroupPanelProps extends ColumnDraggableProps {
|
|
12
12
|
ref?: any;
|
|
13
13
|
group: GroupDescriptor[];
|
|
14
|
+
ariaControls: String;
|
|
14
15
|
onGroupChange?: (groups: GroupDescriptor[], event: any) => void;
|
|
15
16
|
resolveTitle: (field: string) => string;
|
|
16
17
|
onPressHandler?: (draggableEvent: any, element: HTMLElement) => void;
|
|
@@ -19,7 +19,8 @@ var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
|
|
|
19
19
|
var GroupPanelVue2 = {
|
|
20
20
|
props: {
|
|
21
21
|
group: Array,
|
|
22
|
-
resolveTitle: Function
|
|
22
|
+
resolveTitle: Function,
|
|
23
|
+
ariaControls: String
|
|
23
24
|
},
|
|
24
25
|
inject: {
|
|
25
26
|
kendoLocalizationService: {
|
|
@@ -63,6 +64,7 @@ var GroupPanelVue2 = {
|
|
|
63
64
|
render: function render(createElement) {
|
|
64
65
|
var h = gh || createElement;
|
|
65
66
|
var groupsProp = this.$props.group || [];
|
|
67
|
+
var ariaControls = this.$props.ariaControls;
|
|
66
68
|
var groups = groupsProp.map(function (groupDesc, index) {
|
|
67
69
|
var _this = this;
|
|
68
70
|
return (
|
|
@@ -98,10 +100,21 @@ var GroupPanelVue2 = {
|
|
|
98
100
|
})
|
|
99
101
|
);
|
|
100
102
|
}, this);
|
|
103
|
+
var groupHeaderAriaLabelValue = (0, kendo_vue_intl_1.provideLocalizationService)(this).toLanguageString(main_1.groupHeaderAriaLabel, main_1.messages[main_1.groupHeaderAriaLabel]);
|
|
101
104
|
return h("div", {
|
|
102
|
-
"class": "k-grouping-header
|
|
103
|
-
|
|
104
|
-
|
|
105
|
+
"class": "k-grouping-header",
|
|
106
|
+
role: 'toolbar',
|
|
107
|
+
attrs: this.v3 ? undefined : {
|
|
108
|
+
role: 'toolbar',
|
|
109
|
+
"aria-label": groupHeaderAriaLabelValue,
|
|
110
|
+
"aria-controls": ariaControls
|
|
111
|
+
},
|
|
112
|
+
"aria-label": groupHeaderAriaLabelValue,
|
|
113
|
+
"aria-controls": ariaControls
|
|
114
|
+
}, [!!groups.length && h("div", {
|
|
115
|
+
"class": "k-chip-list k-chip-list-md"
|
|
116
|
+
}, [groups]), h("div", {
|
|
117
|
+
"class": "k-grouping-drop-container"
|
|
105
118
|
}, [!groups.length && (0, kendo_vue_intl_1.provideLocalizationService)(this).toLanguageString(main_1.groupPanelEmpty, main_1.messages[main_1.groupPanelEmpty])])]);
|
|
106
119
|
}
|
|
107
120
|
};
|
|
@@ -98,24 +98,16 @@ var HeaderVue2 = {
|
|
|
98
98
|
}
|
|
99
99
|
return h("div", {
|
|
100
100
|
"class": this.wrapperClass,
|
|
101
|
-
style: this.divStyle
|
|
102
|
-
role: "presentation",
|
|
103
|
-
attrs: this.v3 ? undefined : {
|
|
104
|
-
role: "presentation"
|
|
105
|
-
}
|
|
101
|
+
style: this.divStyle
|
|
106
102
|
}, [h("div", {
|
|
107
103
|
ref: (0, kendo_vue_common_1.setRef)(this, 'headerWrap'),
|
|
108
|
-
"class": "k-grid-header-wrap"
|
|
109
|
-
role: "presentation",
|
|
110
|
-
attrs: this.v3 ? undefined : {
|
|
111
|
-
role: "presentation"
|
|
112
|
-
}
|
|
104
|
+
"class": "k-grid-header-wrap"
|
|
113
105
|
}, [h("table", {
|
|
114
106
|
"class": this.tableClass,
|
|
115
107
|
ref: (0, kendo_vue_common_1.setRef)(this, 'table'),
|
|
116
|
-
role: "
|
|
108
|
+
role: "none",
|
|
117
109
|
attrs: this.v3 ? undefined : {
|
|
118
|
-
role: "
|
|
110
|
+
role: "none"
|
|
119
111
|
}
|
|
120
112
|
}, [h("colgroup", {
|
|
121
113
|
ref: (0, kendo_vue_common_1.setRef)(this, 'colGroupHeader')
|
|
@@ -35,6 +35,8 @@ export interface HeaderRowProps extends ColumnDraggableProps {
|
|
|
35
35
|
columnMenuAnimate?: boolean | PopupAnimation;
|
|
36
36
|
onFilterChange?: Function;
|
|
37
37
|
isRtl?: boolean;
|
|
38
|
+
isColCountDefined?: boolean;
|
|
39
|
+
columnsInitial?: ExtendedColumnProps[];
|
|
38
40
|
}
|
|
39
41
|
/**
|
|
40
42
|
* @hidden
|
|
@@ -16,6 +16,9 @@ var GridHeaderCell_1 = require("./GridHeaderCell");
|
|
|
16
16
|
var ColumnMenu_1 = require("../columnMenu/ColumnMenu");
|
|
17
17
|
var kendo_vue_common_1 = require("@progress/kendo-vue-common");
|
|
18
18
|
var kendo_vue_data_tools_1 = require("@progress/kendo-vue-data-tools"); // from '../../../datatools/src/main';
|
|
19
|
+
var main_1 = require("../messages/main");
|
|
20
|
+
var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
|
|
21
|
+
var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
|
|
19
22
|
/**
|
|
20
23
|
* @hidden
|
|
21
24
|
*/
|
|
@@ -68,11 +71,18 @@ var HeaderRowVue2 = {
|
|
|
68
71
|
return true;
|
|
69
72
|
}
|
|
70
73
|
},
|
|
71
|
-
isRtl: Boolean
|
|
74
|
+
isRtl: Boolean,
|
|
75
|
+
isColCountDefined: Boolean,
|
|
76
|
+
// columnsInitial prop:
|
|
77
|
+
// Needed for hidden column scenarios. By this value we can define correct aria-colindex attribute
|
|
78
|
+
columnsInitial: Array
|
|
72
79
|
},
|
|
73
80
|
inject: {
|
|
74
81
|
onNavFocus: {
|
|
75
82
|
default: kendo_vue_common_1.noop
|
|
83
|
+
},
|
|
84
|
+
kendoLocalizationService: {
|
|
85
|
+
default: null
|
|
76
86
|
}
|
|
77
87
|
},
|
|
78
88
|
data: function data() {
|
|
@@ -133,7 +143,7 @@ var HeaderRowVue2 = {
|
|
|
133
143
|
},
|
|
134
144
|
cellClass: function cellClass(field, headerClassName, locked) {
|
|
135
145
|
var customClass = headerClassName ? ' ' + headerClassName : '';
|
|
136
|
-
var result = "k-header
|
|
146
|
+
var result = "k-header" + (locked ? ' k-grid-header-sticky' : '') + customClass;
|
|
137
147
|
if (this.$props.sort && this.$props.sort.filter(function (descriptor) {
|
|
138
148
|
return descriptor.field === field;
|
|
139
149
|
}).length > 0) {
|
|
@@ -173,6 +183,7 @@ var HeaderRowVue2 = {
|
|
|
173
183
|
theadClasses: {
|
|
174
184
|
get: function get() {
|
|
175
185
|
return {
|
|
186
|
+
'k-table-thead': true,
|
|
176
187
|
'k-grid-header': true
|
|
177
188
|
};
|
|
178
189
|
}
|
|
@@ -188,6 +199,10 @@ var HeaderRowVue2 = {
|
|
|
188
199
|
// @ts-ignore
|
|
189
200
|
render: function render(createElement) {
|
|
190
201
|
var h = gh || createElement;
|
|
202
|
+
var localizationService = (0, kendo_vue_intl_1.provideLocalizationService)(this);
|
|
203
|
+
var ariaLabelSortableColumn = localizationService.toLanguageString(main_1.sortableColumnAriaLabel, main_1.messages[main_1.sortableColumnAriaLabel]);
|
|
204
|
+
var ariaLabelAscendingSort = localizationService.toLanguageString(main_1.sortableColumnAscendingAriaLabel, main_1.messages[main_1.sortableColumnAscendingAriaLabel]);
|
|
205
|
+
var ariaLabelDescendingSort = localizationService.toLanguageString(main_1.sortableColumnDescendingAriaLabel, main_1.messages[main_1.sortableColumnDescendingAriaLabel]);
|
|
191
206
|
this.serviceIndex = 0;
|
|
192
207
|
this.index = -1;
|
|
193
208
|
var cells = function cells(rowIndexes) {
|
|
@@ -204,14 +219,17 @@ var HeaderRowVue2 = {
|
|
|
204
219
|
if (!this.$props.sort) {
|
|
205
220
|
return null;
|
|
206
221
|
}
|
|
222
|
+
var currentDir = iconSortIndex >= 0 ? this.$props.sort[iconSortIndex].dir : '';
|
|
207
223
|
return iconSortIndex >= 0 && [h("span", {
|
|
208
224
|
key: 1,
|
|
209
225
|
"class": 'k-sort-icon'
|
|
210
226
|
}, [h(kendo_vue_common_1.Icon, {
|
|
211
|
-
name: 'sort-' +
|
|
227
|
+
name: 'sort-' + currentDir + '-small',
|
|
212
228
|
attrs: this.v3 ? undefined : {
|
|
213
|
-
name: 'sort-' +
|
|
214
|
-
|
|
229
|
+
name: 'sort-' + currentDir + '-small',
|
|
230
|
+
icon: currentDir === 'asc' ? kendo_svg_icons_1.sortAscSmallIcon : kendo_svg_icons_1.sortDescSmallIcon
|
|
231
|
+
},
|
|
232
|
+
icon: currentDir === 'asc' ? kendo_svg_icons_1.sortAscSmallIcon : kendo_svg_icons_1.sortDescSmallIcon
|
|
215
233
|
})]), this.$props.sort.length > 1 && h("span", {
|
|
216
234
|
key: 2,
|
|
217
235
|
"class": 'k-sort-icon'
|
|
@@ -220,8 +238,8 @@ var HeaderRowVue2 = {
|
|
|
220
238
|
}, [iconSortIndex + 1])])];
|
|
221
239
|
};
|
|
222
240
|
var sortIcon = sortIconRenderer.call(this, sortIndex);
|
|
223
|
-
var className = (column.kFirst ? 'k-first ' : '') + this.cellClass(column.field, column.headerClassName, column.locked);
|
|
224
241
|
var columnMenu = column.columnMenu || column.columnMenu === false ? column.columnMenu : this.$props.columnMenu;
|
|
242
|
+
var className = (column.kFirst ? 'k-first ' : '') + this.cellClass(column.field, column.headerClassName, column.locked) + (columnMenu ? ' k-filterable' : '');
|
|
225
243
|
var columnMenuRender = !columnMenu || typeof columnMenu === 'boolean' ? !!columnMenu : this.getTemplate(columnMenu);
|
|
226
244
|
var style = column.left !== undefined ? !this.$props.isRtl ? {
|
|
227
245
|
left: column.left + 'px',
|
|
@@ -230,32 +248,41 @@ var HeaderRowVue2 = {
|
|
|
230
248
|
left: column.right + 'px',
|
|
231
249
|
right: column.left + 'px'
|
|
232
250
|
} : {};
|
|
251
|
+
var getAriaLabel = ariaSortMap[sortDir] === 'none' ? ariaLabelSortableColumn : ariaSortMap[sortDir] === 'ascending' ? ariaLabelAscendingSort : ariaLabelDescendingSort;
|
|
233
252
|
var ariaAttrs = column.isAccessible ? {
|
|
234
253
|
ariaSort: ariaSortMap[sortDir],
|
|
254
|
+
ariaLabel: getAriaLabel,
|
|
235
255
|
role: 'columnheader',
|
|
236
|
-
ariaColumnIndex:
|
|
237
|
-
|
|
256
|
+
ariaColumnIndex: this.$props.isColCountDefined ? this.$props.columnsInitial.findIndex(function (col) {
|
|
257
|
+
return col.field === column.field;
|
|
258
|
+
}) + 1 : undefined,
|
|
259
|
+
ariaSelected: false,
|
|
260
|
+
ariaHaspopup: columnMenu ? 'menu' : this.$props.filterable && column.filterable ? 'dialog' : undefined
|
|
238
261
|
} : {
|
|
239
|
-
|
|
262
|
+
role: 'columnheader'
|
|
240
263
|
};
|
|
241
264
|
var key = column.declarationIndex >= 0 ? ++this.index : --this.serviceIndex;
|
|
242
265
|
return (
|
|
243
266
|
// @ts-ignore function children
|
|
244
267
|
h(kendo_vue_data_tools_1.HeaderThElement, {
|
|
245
|
-
ariaSort: ariaAttrs.ariaSort,
|
|
268
|
+
ariaSort: sortable ? ariaAttrs.ariaSort : undefined,
|
|
246
269
|
attrs: this.v3 ? undefined : {
|
|
247
|
-
ariaSort: ariaAttrs.ariaSort,
|
|
270
|
+
ariaSort: sortable ? ariaAttrs.ariaSort : undefined,
|
|
271
|
+
ariaLabel: sortable ? ariaAttrs.ariaLabel : undefined,
|
|
248
272
|
role: ariaAttrs.role,
|
|
249
273
|
ariaColumnIndex: ariaAttrs.ariaColumnIndex,
|
|
250
274
|
ariaSelected: ariaAttrs.ariaSelected,
|
|
275
|
+
ariaHaspopup: ariaAttrs.ariaHaspopup,
|
|
251
276
|
colSpan: column.colSpan,
|
|
252
277
|
rowSpan: column.rowSpan,
|
|
253
278
|
columnId: column.id,
|
|
254
279
|
navigatable: column.navigatable
|
|
255
280
|
},
|
|
281
|
+
ariaLabel: sortable ? ariaAttrs.ariaLabel : undefined,
|
|
256
282
|
role: ariaAttrs.role,
|
|
257
283
|
ariaColumnIndex: ariaAttrs.ariaColumnIndex,
|
|
258
284
|
ariaSelected: ariaAttrs.ariaSelected,
|
|
285
|
+
ariaHaspopup: ariaAttrs.ariaHaspopup,
|
|
259
286
|
key: key,
|
|
260
287
|
colSpan: column.colSpan,
|
|
261
288
|
rowSpan: column.rowSpan,
|
|
@@ -486,9 +513,9 @@ var HeaderRowVue2 = {
|
|
|
486
513
|
}, this);
|
|
487
514
|
};
|
|
488
515
|
return h("thead", {
|
|
489
|
-
role: "
|
|
516
|
+
role: "rowgroup",
|
|
490
517
|
attrs: this.v3 ? undefined : {
|
|
491
|
-
role: "
|
|
518
|
+
role: "rowgroup",
|
|
492
519
|
"data-keyboardnavheader": true
|
|
493
520
|
},
|
|
494
521
|
"class": this.theadClasses,
|
|
@@ -510,10 +537,13 @@ var HeaderRowVue2 = {
|
|
|
510
537
|
}, this.v3 ? function () {
|
|
511
538
|
return [cells.call(_this3, rowIndexes)];
|
|
512
539
|
} : [cells.call(_this3, rowIndexes)]) || h("tr", {
|
|
540
|
+
"class": 'k-table-row',
|
|
513
541
|
role: 'row',
|
|
514
542
|
attrs: this.v3 ? undefined : {
|
|
515
|
-
role: 'row'
|
|
516
|
-
|
|
543
|
+
role: 'row',
|
|
544
|
+
"aria-rowindex": this.columnsMap.length
|
|
545
|
+
},
|
|
546
|
+
"aria-rowindex": this.columnsMap.length
|
|
517
547
|
}, [cells.call(this, rowIndexes)]);
|
|
518
548
|
}, this), this.$props.filterRow]);
|
|
519
549
|
}
|
|
@@ -65,4 +65,16 @@ export interface GridFilterCellProps {
|
|
|
65
65
|
* The ariaLabel of the filter editor.
|
|
66
66
|
*/
|
|
67
67
|
ariaLabel?: string;
|
|
68
|
+
/**
|
|
69
|
+
* Configures the `size` of the cell.
|
|
70
|
+
*
|
|
71
|
+
* The available options are:
|
|
72
|
+
* - small
|
|
73
|
+
* - medium
|
|
74
|
+
* - large
|
|
75
|
+
* - null—Does not set a size `class`.
|
|
76
|
+
*
|
|
77
|
+
* @default `medium`
|
|
78
|
+
*/
|
|
79
|
+
size?: null | 'small' | 'medium' | 'large' | string;
|
|
68
80
|
}
|