@progress/kendo-vue-data-tools 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-data-tools.js +1 -1
- package/dist/es/cells/FilterCell.js +35 -21
- package/dist/es/columnmenu/ColumnMenu.js +5 -2
- package/dist/es/columnmenu/ColumnMenuCheckboxFilter.js +4 -1
- package/dist/es/columnmenu/ColumnMenuSort.js +8 -8
- package/dist/es/drag/ColumnDraggable.js +6 -2
- package/dist/es/filter/Expression.js +17 -8
- package/dist/es/filter/GroupToolbar.js +33 -8
- package/dist/es/header/FilterRow.d.ts +1 -0
- package/dist/es/header/FilterRow.js +9 -6
- package/dist/es/header/Header.d.ts +1 -0
- package/dist/es/header/Header.js +12 -2
- package/dist/es/header/HeaderRow.d.ts +1 -0
- package/dist/es/header/HeaderRow.js +12 -5
- package/dist/es/header/HeaderTdElement.d.ts +46 -0
- package/dist/es/header/HeaderTdElement.js +92 -0
- package/dist/es/header/HeaderThElement.d.ts +8 -1
- package/dist/es/header/HeaderThElement.js +10 -2
- package/dist/es/header/main.d.ts +1 -0
- package/dist/es/header/main.js +1 -0
- package/dist/es/interfaces/FilterCellProps.d.ts +12 -0
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/pager/Pager.d.ts +13 -1
- package/dist/es/pager/Pager.js +66 -28
- package/dist/es/pager/PagerInput.d.ts +9 -1
- package/dist/es/pager/PagerInput.js +16 -2
- package/dist/es/pager/PagerNavigationButton.d.ts +13 -0
- package/dist/es/pager/PagerNavigationButton.js +30 -20
- package/dist/es/pager/PagerNumericButtons.d.ts +5 -1
- package/dist/es/pager/PagerNumericButtons.js +61 -27
- package/dist/es/pager/PagerPageSizes.d.ts +1 -0
- package/dist/es/pager/PagerPageSizes.js +3 -0
- package/dist/esm/cells/FilterCell.js +35 -21
- package/dist/esm/columnmenu/ColumnMenu.js +5 -2
- package/dist/esm/columnmenu/ColumnMenuCheckboxFilter.js +4 -1
- package/dist/esm/columnmenu/ColumnMenuSort.js +8 -8
- package/dist/esm/drag/ColumnDraggable.js +6 -2
- package/dist/esm/filter/Expression.js +17 -8
- package/dist/esm/filter/GroupToolbar.js +33 -8
- package/dist/esm/header/FilterRow.d.ts +1 -0
- package/dist/esm/header/FilterRow.js +9 -6
- package/dist/esm/header/Header.d.ts +1 -0
- package/dist/esm/header/Header.js +12 -2
- package/dist/esm/header/HeaderRow.d.ts +1 -0
- package/dist/esm/header/HeaderRow.js +12 -5
- package/dist/esm/header/HeaderTdElement.d.ts +46 -0
- package/dist/esm/header/HeaderTdElement.js +92 -0
- package/dist/esm/header/HeaderThElement.d.ts +8 -1
- package/dist/esm/header/HeaderThElement.js +10 -2
- package/dist/esm/header/main.d.ts +1 -0
- package/dist/esm/header/main.js +1 -0
- package/dist/esm/interfaces/FilterCellProps.d.ts +12 -0
- package/dist/esm/package-metadata.js +1 -1
- package/dist/esm/pager/Pager.d.ts +13 -1
- package/dist/esm/pager/Pager.js +66 -28
- package/dist/esm/pager/PagerInput.d.ts +9 -1
- package/dist/esm/pager/PagerInput.js +16 -2
- package/dist/esm/pager/PagerNavigationButton.d.ts +13 -0
- package/dist/esm/pager/PagerNavigationButton.js +30 -20
- package/dist/esm/pager/PagerNumericButtons.d.ts +5 -1
- package/dist/esm/pager/PagerNumericButtons.js +61 -27
- package/dist/esm/pager/PagerPageSizes.d.ts +1 -0
- package/dist/esm/pager/PagerPageSizes.js +3 -0
- package/dist/npm/cells/FilterCell.js +34 -20
- package/dist/npm/columnmenu/ColumnMenu.js +5 -2
- package/dist/npm/columnmenu/ColumnMenuCheckboxFilter.js +4 -1
- package/dist/npm/columnmenu/ColumnMenuSort.js +8 -8
- package/dist/npm/drag/ColumnDraggable.js +6 -2
- package/dist/npm/filter/Expression.js +17 -8
- package/dist/npm/filter/GroupToolbar.js +33 -8
- package/dist/npm/header/FilterRow.d.ts +1 -0
- package/dist/npm/header/FilterRow.js +9 -6
- package/dist/npm/header/Header.d.ts +1 -0
- package/dist/npm/header/Header.js +11 -1
- package/dist/npm/header/HeaderRow.d.ts +1 -0
- package/dist/npm/header/HeaderRow.js +12 -5
- package/dist/npm/header/HeaderTdElement.d.ts +46 -0
- package/dist/npm/header/HeaderTdElement.js +99 -0
- package/dist/npm/header/HeaderThElement.d.ts +8 -1
- package/dist/npm/header/HeaderThElement.js +10 -2
- package/dist/npm/header/main.d.ts +1 -0
- package/dist/npm/header/main.js +1 -0
- package/dist/npm/interfaces/FilterCellProps.d.ts +12 -0
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/pager/Pager.d.ts +13 -1
- package/dist/npm/pager/Pager.js +65 -27
- package/dist/npm/pager/PagerInput.d.ts +9 -1
- package/dist/npm/pager/PagerInput.js +16 -2
- package/dist/npm/pager/PagerNavigationButton.d.ts +13 -0
- package/dist/npm/pager/PagerNavigationButton.js +30 -20
- package/dist/npm/pager/PagerNumericButtons.d.ts +5 -1
- package/dist/npm/pager/PagerNumericButtons.js +61 -27
- package/dist/npm/pager/PagerPageSizes.d.ts +1 -0
- package/dist/npm/pager/PagerPageSizes.js +3 -0
- package/package.json +12 -11
|
@@ -10,6 +10,7 @@ import { HeaderCell } from './HeaderCell';
|
|
|
10
10
|
import { ColumnMenu } from '../columnmenu/ColumnMenu';
|
|
11
11
|
import { HeaderSelectionCell } from './HeaderSelectionCell';
|
|
12
12
|
import { templateRendering, hasListener, getListeners, Keys, noop, Icon } from '@progress/kendo-vue-common';
|
|
13
|
+
import { sortDescSmallIcon, sortAscSmallIcon } from '@progress/kendo-svg-icons';
|
|
13
14
|
import { HeaderThElement } from './HeaderThElement';
|
|
14
15
|
/**
|
|
15
16
|
* @hidden
|
|
@@ -64,6 +65,7 @@ var HeaderRowVue2 = {
|
|
|
64
65
|
return true;
|
|
65
66
|
}
|
|
66
67
|
},
|
|
68
|
+
size: String,
|
|
67
69
|
isRtl: Boolean
|
|
68
70
|
},
|
|
69
71
|
inject: {
|
|
@@ -129,7 +131,7 @@ var HeaderRowVue2 = {
|
|
|
129
131
|
},
|
|
130
132
|
cellClass: function cellClass(field, headerClassName, locked) {
|
|
131
133
|
var customClass = headerClassName ? ' ' + headerClassName : '';
|
|
132
|
-
var result = "k-header
|
|
134
|
+
var result = "k-header" + (locked ? ' k-grid-header-sticky' : '') + customClass;
|
|
133
135
|
if (this.$props.sort && this.$props.sort.filter(function (descriptor) {
|
|
134
136
|
return descriptor.field === field;
|
|
135
137
|
}).length > 0) {
|
|
@@ -169,6 +171,7 @@ var HeaderRowVue2 = {
|
|
|
169
171
|
theadClasses: {
|
|
170
172
|
get: function get() {
|
|
171
173
|
return {
|
|
174
|
+
'k-table-thead': true,
|
|
172
175
|
'k-grid-header': true
|
|
173
176
|
};
|
|
174
177
|
}
|
|
@@ -200,20 +203,23 @@ var HeaderRowVue2 = {
|
|
|
200
203
|
if (!this.$props.sort) {
|
|
201
204
|
return null;
|
|
202
205
|
}
|
|
206
|
+
var currentDir = this.$props.sort[iconSortIndex].dir;
|
|
203
207
|
return iconSortIndex >= 0 && [h(Icon, {
|
|
204
208
|
key: 1,
|
|
205
|
-
name: "sort-".concat(
|
|
209
|
+
name: "sort-".concat(currentDir, "-small"),
|
|
206
210
|
attrs: this.v3 ? undefined : {
|
|
207
|
-
name: "sort-".concat(
|
|
208
|
-
|
|
211
|
+
name: "sort-".concat(currentDir, "-small"),
|
|
212
|
+
icon: currentDir === 'asc' ? sortAscSmallIcon : sortDescSmallIcon
|
|
213
|
+
},
|
|
214
|
+
icon: currentDir === 'asc' ? sortAscSmallIcon : sortDescSmallIcon
|
|
209
215
|
}), this.$props.sort.length > 1 && h("span", {
|
|
210
216
|
key: 2,
|
|
211
217
|
"class": "k-sort-order"
|
|
212
218
|
}, [iconSortIndex + 1])];
|
|
213
219
|
};
|
|
214
220
|
var sortIcon = sortIconRenderer.call(this, sortIndex);
|
|
215
|
-
var className = (column.kFirst ? 'k-first ' : '') + this.cellClass(column.field, column.headerClassName, column.locked);
|
|
216
221
|
var columnMenu = column.columnMenu || column.columnMenu === false ? column.columnMenu : this.$props.columnMenu;
|
|
222
|
+
var className = (column.kFirst ? 'k-first ' : '') + this.cellClass(column.field, column.headerClassName, column.locked) + (columnMenu ? ' k-filterable' : '');
|
|
217
223
|
var columnMenuRender = !columnMenu || typeof columnMenu === 'boolean' ? !!columnMenu : this.getTemplate(columnMenu);
|
|
218
224
|
var style = column.left !== undefined ? !this.$props.isRtl ? {
|
|
219
225
|
left: column.left + 'px',
|
|
@@ -560,6 +566,7 @@ var HeaderRowVue2 = {
|
|
|
560
566
|
}, this.v3 ? function () {
|
|
561
567
|
return [cells.call(_this3, rowIndexes)];
|
|
562
568
|
} : [cells.call(_this3, rowIndexes)]) || h("tr", {
|
|
569
|
+
"class": 'k-table-row',
|
|
563
570
|
role: 'row',
|
|
564
571
|
attrs: this.v3 ? undefined : {
|
|
565
572
|
role: 'row'
|
|
@@ -0,0 +1,46 @@
|
|
|
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
|
+
export interface HeaderTdElementProps {
|
|
7
|
+
ariaColumnIndex?: number;
|
|
8
|
+
colSpan?: number;
|
|
9
|
+
rowSpan?: number;
|
|
10
|
+
role?: string;
|
|
11
|
+
columnId: string;
|
|
12
|
+
navigatable?: boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* @hidden
|
|
16
|
+
*/
|
|
17
|
+
export interface HeaderTdElementMethods extends Vue2type {
|
|
18
|
+
onKeydown: (event: any) => void;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* @hidden
|
|
22
|
+
*/
|
|
23
|
+
export interface HeaderTdElementComputed {
|
|
24
|
+
[key: string]: any;
|
|
25
|
+
tdClass: object;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @hidden
|
|
29
|
+
*/
|
|
30
|
+
export interface HeaderTdElementState {
|
|
31
|
+
_text: string | undefined;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @hidden
|
|
35
|
+
*/
|
|
36
|
+
export interface HeaderTdElementAll extends HeaderTdElementMethods, HeaderTdElementState, HeaderTdElementComputed {
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* @hidden
|
|
40
|
+
*/
|
|
41
|
+
declare let HeaderTdElementVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<HeaderTdElementAll>, {}, RecordPropsDefinition<HeaderTdElementProps>>;
|
|
42
|
+
/**
|
|
43
|
+
* @hidden
|
|
44
|
+
*/
|
|
45
|
+
declare const HeaderTdElement: DefineComponent<HeaderTdElementProps, any, {}, {}, HeaderTdElementMethods, {}, {}, {}, string, HeaderTdElementProps, HeaderTdElementProps, {}>;
|
|
46
|
+
export { HeaderTdElement, HeaderTdElementVue2 };
|
|
@@ -0,0 +1,92 @@
|
|
|
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 { getDefaultSlots, noop } from '@progress/kendo-vue-common';
|
|
8
|
+
import { KEYBOARD_NAV_DATA_ID, KEYBOARD_NAV_DATA_LEVEL } from '../navigation/constants';
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
var HeaderTdElementVue2 = {
|
|
13
|
+
name: 'KendoHeaderTdElement',
|
|
14
|
+
// @ts-ignore
|
|
15
|
+
emits: {
|
|
16
|
+
keydown: null
|
|
17
|
+
},
|
|
18
|
+
props: {
|
|
19
|
+
ariaColumnIndex: Number,
|
|
20
|
+
role: String,
|
|
21
|
+
columnId: String,
|
|
22
|
+
navigatable: Boolean
|
|
23
|
+
},
|
|
24
|
+
computed: {
|
|
25
|
+
tdClass: function tdClass() {
|
|
26
|
+
var _a;
|
|
27
|
+
var className = this.$props.className;
|
|
28
|
+
return _a = {
|
|
29
|
+
'k-table-td': true
|
|
30
|
+
}, _a[className] = className, _a;
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
inject: {
|
|
34
|
+
getKeyboardNavigationAttributes: {
|
|
35
|
+
default: noop
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
// @ts-ignore
|
|
39
|
+
setup: !isV3 ? undefined : function () {
|
|
40
|
+
var v3 = !!isV3;
|
|
41
|
+
var kendoIntlService = inject('kendoIntlService', {});
|
|
42
|
+
var kendoLocalizationService = inject('kendoLocalizationService', {});
|
|
43
|
+
return {
|
|
44
|
+
v3: v3,
|
|
45
|
+
kendoIntlService: kendoIntlService,
|
|
46
|
+
kendoLocalizationService: kendoLocalizationService
|
|
47
|
+
};
|
|
48
|
+
},
|
|
49
|
+
// @ts-ignore
|
|
50
|
+
render: function render(createElement) {
|
|
51
|
+
var h = gh || createElement;
|
|
52
|
+
var _a = this.$props,
|
|
53
|
+
columnId = _a.columnId,
|
|
54
|
+
navigatable = _a.navigatable,
|
|
55
|
+
ariaColumnIndex = _a.ariaColumnIndex,
|
|
56
|
+
role = _a.role;
|
|
57
|
+
var navAttrs = this.getKeyboardNavigationAttributes(columnId, navigatable);
|
|
58
|
+
var defaultSlot = getDefaultSlots(this);
|
|
59
|
+
return h("td", {
|
|
60
|
+
style: {
|
|
61
|
+
top: '0px'
|
|
62
|
+
},
|
|
63
|
+
"aria-colindex": ariaColumnIndex,
|
|
64
|
+
attrs: this.v3 ? undefined : {
|
|
65
|
+
"aria-colindex": ariaColumnIndex,
|
|
66
|
+
role: role,
|
|
67
|
+
tabindex: navAttrs.tabIndex,
|
|
68
|
+
"data-keyboardnavlevel": navAttrs[KEYBOARD_NAV_DATA_LEVEL],
|
|
69
|
+
"data-keyboardnavid": navAttrs[KEYBOARD_NAV_DATA_ID]
|
|
70
|
+
},
|
|
71
|
+
"class": this.tdClass,
|
|
72
|
+
onKeydown: this.onKeyDown,
|
|
73
|
+
on: this.v3 ? undefined : {
|
|
74
|
+
"keydown": this.onKeyDown
|
|
75
|
+
},
|
|
76
|
+
role: role,
|
|
77
|
+
tabindex: navAttrs.tabIndex,
|
|
78
|
+
"data-keyboardnavlevel": navAttrs[KEYBOARD_NAV_DATA_LEVEL],
|
|
79
|
+
"data-keyboardnavid": navAttrs[KEYBOARD_NAV_DATA_ID]
|
|
80
|
+
}, [defaultSlot]);
|
|
81
|
+
},
|
|
82
|
+
methods: {
|
|
83
|
+
onKeyDown: function onKeyDown(e) {
|
|
84
|
+
this.$emit('keydown', e);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* @hidden
|
|
90
|
+
*/
|
|
91
|
+
var HeaderTdElement = HeaderTdElementVue2;
|
|
92
|
+
export { HeaderTdElement, HeaderTdElementVue2 };
|
|
@@ -20,6 +20,13 @@ export interface HeaderThElementProps {
|
|
|
20
20
|
export interface HeaderThElementMethods extends Vue2type {
|
|
21
21
|
onKeydown: (event: any) => void;
|
|
22
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* @hidden
|
|
25
|
+
*/
|
|
26
|
+
export interface HeaderThElementComputed {
|
|
27
|
+
[key: string]: any;
|
|
28
|
+
thClass: object;
|
|
29
|
+
}
|
|
23
30
|
/**
|
|
24
31
|
* @hidden
|
|
25
32
|
*/
|
|
@@ -29,7 +36,7 @@ export interface HeaderThElementState {
|
|
|
29
36
|
/**
|
|
30
37
|
* @hidden
|
|
31
38
|
*/
|
|
32
|
-
export interface HeaderThElementAll extends HeaderThElementMethods, HeaderThElementState {
|
|
39
|
+
export interface HeaderThElementAll extends HeaderThElementMethods, HeaderThElementState, HeaderThElementComputed {
|
|
33
40
|
}
|
|
34
41
|
/**
|
|
35
42
|
* @hidden
|
|
@@ -31,6 +31,15 @@ var HeaderThElementVue2 = {
|
|
|
31
31
|
columnId: String,
|
|
32
32
|
navigatable: Boolean
|
|
33
33
|
},
|
|
34
|
+
computed: {
|
|
35
|
+
thClass: function thClass() {
|
|
36
|
+
var _a;
|
|
37
|
+
var className = this.$props.className;
|
|
38
|
+
return _a = {
|
|
39
|
+
'k-table-th': true
|
|
40
|
+
}, _a[className] = className, _a;
|
|
41
|
+
}
|
|
42
|
+
},
|
|
34
43
|
inject: {
|
|
35
44
|
getKeyboardNavigationAttributes: {
|
|
36
45
|
default: noop
|
|
@@ -54,7 +63,6 @@ var HeaderThElementVue2 = {
|
|
|
54
63
|
ariaSort = _a.ariaSort,
|
|
55
64
|
colSpan = _a.colSpan,
|
|
56
65
|
rowSpan = _a.rowSpan,
|
|
57
|
-
className = _a.className,
|
|
58
66
|
columnId = _a.columnId,
|
|
59
67
|
navigatable = _a.navigatable,
|
|
60
68
|
ariaColumnIndex = _a.ariaColumnIndex,
|
|
@@ -85,7 +93,7 @@ var HeaderThElementVue2 = {
|
|
|
85
93
|
"aria-selected": ariaSelected,
|
|
86
94
|
colspan: colSpan,
|
|
87
95
|
rowspan: rowSpan,
|
|
88
|
-
"class":
|
|
96
|
+
"class": this.thClass,
|
|
89
97
|
onKeydown: this.onKeyDown,
|
|
90
98
|
on: this.v3 ? undefined : {
|
|
91
99
|
"keydown": this.onKeyDown
|
package/dist/es/header/main.d.ts
CHANGED
package/dist/es/header/main.js
CHANGED
|
@@ -69,4 +69,16 @@ export interface FilterCellProps {
|
|
|
69
69
|
* The ariaLabel of the filter editor.
|
|
70
70
|
*/
|
|
71
71
|
ariaLabel?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Configures the `size` of the cell.
|
|
74
|
+
*
|
|
75
|
+
* The available options are:
|
|
76
|
+
* - small
|
|
77
|
+
* - medium
|
|
78
|
+
* - large
|
|
79
|
+
* - null—Does not set a size `class`.
|
|
80
|
+
*
|
|
81
|
+
* @default `medium`
|
|
82
|
+
*/
|
|
83
|
+
size?: null | 'small' | 'medium' | 'large' | string;
|
|
72
84
|
}
|
|
@@ -5,7 +5,7 @@ export var packageMetadata = {
|
|
|
5
5
|
name: '@progress/kendo-vue-data-tools',
|
|
6
6
|
productName: 'Kendo UI for Vue',
|
|
7
7
|
productCodes: ['KENDOUIVUE', 'KENDOUICOMPLETE'],
|
|
8
|
-
publishDate:
|
|
8
|
+
publishDate: 1673273869,
|
|
9
9
|
version: '',
|
|
10
10
|
licensingDocsUrl: 'https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning'
|
|
11
11
|
};
|
package/dist/es/pager/Pager.d.ts
CHANGED
|
@@ -34,6 +34,18 @@ export interface PagerProps extends GridPagerSettings {
|
|
|
34
34
|
responsive?: boolean;
|
|
35
35
|
pagerRender?: any;
|
|
36
36
|
width?: number | string;
|
|
37
|
+
/**
|
|
38
|
+
* Configures the `size` of the Pager.
|
|
39
|
+
*
|
|
40
|
+
* The available options are:
|
|
41
|
+
* - small
|
|
42
|
+
* - medium
|
|
43
|
+
* - large
|
|
44
|
+
* - null—Does not set a size `class`.
|
|
45
|
+
*
|
|
46
|
+
* @default `medium`
|
|
47
|
+
*/
|
|
48
|
+
size?: null | 'small' | 'medium' | 'large' | string;
|
|
37
49
|
/**
|
|
38
50
|
* A map with the messages.
|
|
39
51
|
*/
|
|
@@ -80,7 +92,7 @@ export interface PagerComputed {
|
|
|
80
92
|
* @hidden
|
|
81
93
|
*/
|
|
82
94
|
export interface PagerData {
|
|
83
|
-
|
|
95
|
+
currentSize: string;
|
|
84
96
|
}
|
|
85
97
|
/**
|
|
86
98
|
* @hidden
|
package/dist/es/pager/Pager.js
CHANGED
|
@@ -23,7 +23,8 @@ import { PagerInfo } from './PagerInfo';
|
|
|
23
23
|
import { PagerNavigationButton } from './PagerNavigationButton';
|
|
24
24
|
import { messages, pagerFirstPage, pagerLastPage, pagerNextPage, pagerPreviousPage } from '../messages/main';
|
|
25
25
|
import { provideLocalizationService } from '@progress/kendo-vue-intl';
|
|
26
|
-
import { getListeners, getTemplate, hasListener, templateRendering } from '@progress/kendo-vue-common';
|
|
26
|
+
import { getListeners, getTemplate, hasListener, kendoThemeMaps, templateRendering } from '@progress/kendo-vue-common';
|
|
27
|
+
import { caretAltLeftIcon, caretAltRightIcon, caretAltToLeftIcon, caretAltToRightIcon } from '@progress/kendo-svg-icons';
|
|
27
28
|
/**
|
|
28
29
|
* @hidden
|
|
29
30
|
*/
|
|
@@ -68,12 +69,19 @@ var PagerVue2 = {
|
|
|
68
69
|
type: Boolean,
|
|
69
70
|
default: true
|
|
70
71
|
},
|
|
72
|
+
size: {
|
|
73
|
+
type: String,
|
|
74
|
+
default: 'medium',
|
|
75
|
+
validator: function validator(value) {
|
|
76
|
+
return [null, 'small', 'medium', 'large'].includes(value);
|
|
77
|
+
}
|
|
78
|
+
},
|
|
71
79
|
pagerRender: [String, Function, Object],
|
|
72
80
|
width: [Number, String]
|
|
73
81
|
},
|
|
74
82
|
data: function data() {
|
|
75
83
|
return {
|
|
76
|
-
|
|
84
|
+
currentSize: 'medium'
|
|
77
85
|
};
|
|
78
86
|
},
|
|
79
87
|
mounted: function mounted() {
|
|
@@ -101,11 +109,11 @@ var PagerVue2 = {
|
|
|
101
109
|
computed: {
|
|
102
110
|
wrapperClass: {
|
|
103
111
|
get: function get() {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
'k-pager
|
|
108
|
-
};
|
|
112
|
+
var _a;
|
|
113
|
+
var size = this.$props.size;
|
|
114
|
+
return _a = {
|
|
115
|
+
'k-pager': true
|
|
116
|
+
}, _a["k-pager-".concat(kendoThemeMaps.sizeMap[size] || size)] = size, _a["k-pager-mobile-".concat(kendoThemeMaps.sizeMap[this.currentSize])] = this.currentSize, _a;
|
|
109
117
|
}
|
|
110
118
|
},
|
|
111
119
|
totalPages: {
|
|
@@ -148,11 +156,11 @@ var PagerVue2 = {
|
|
|
148
156
|
}
|
|
149
157
|
var width = element.offsetWidth;
|
|
150
158
|
if (width < RESPONSIVE_BREAKPOINT_MEDIUM) {
|
|
151
|
-
this.
|
|
159
|
+
this.currentSize = 'small';
|
|
152
160
|
} else if (width >= RESPONSIVE_BREAKPOINT_MEDIUM && width < RESPONSIVE_BREAKPOINT_LARGE) {
|
|
153
|
-
this.
|
|
161
|
+
this.currentSize = 'medium';
|
|
154
162
|
} else {
|
|
155
|
-
this.
|
|
163
|
+
this.currentSize = 'large';
|
|
156
164
|
}
|
|
157
165
|
},
|
|
158
166
|
transformDimesion: function transformDimesion(initialValue) {
|
|
@@ -218,13 +226,15 @@ var PagerVue2 = {
|
|
|
218
226
|
var changer = settings.type === 'numeric' ?
|
|
219
227
|
// @ts-ignore
|
|
220
228
|
h(PagerNumericButtons, {
|
|
221
|
-
|
|
229
|
+
responsiveSize: this.currentSize,
|
|
222
230
|
attrs: this.v3 ? undefined : {
|
|
231
|
+
responsiveSize: this.currentSize,
|
|
223
232
|
size: this.size,
|
|
224
233
|
buttonCount: settings.buttonCount || 0,
|
|
225
234
|
totalPages: this.totalPages,
|
|
226
235
|
currentPage: this.currentPage
|
|
227
236
|
},
|
|
237
|
+
size: this.size,
|
|
228
238
|
buttonCount: settings.buttonCount || 0,
|
|
229
239
|
totalPages: this.totalPages,
|
|
230
240
|
currentPage: this.currentPage,
|
|
@@ -239,29 +249,37 @@ var PagerVue2 = {
|
|
|
239
249
|
attrs: this.v3 ? undefined : {
|
|
240
250
|
currentPage: this.currentPage,
|
|
241
251
|
totalPages: this.totalPages,
|
|
242
|
-
messagesMap: messagesMap
|
|
252
|
+
messagesMap: messagesMap,
|
|
253
|
+
size: this.size
|
|
243
254
|
},
|
|
244
255
|
totalPages: this.totalPages,
|
|
245
256
|
onPagechange: this.changePage,
|
|
246
257
|
on: this.v3 ? undefined : {
|
|
247
258
|
"pagechange": this.changePage
|
|
248
259
|
},
|
|
249
|
-
messagesMap: messagesMap
|
|
260
|
+
messagesMap: messagesMap,
|
|
261
|
+
size: this.size
|
|
250
262
|
});
|
|
251
263
|
var first, prev, next, last;
|
|
252
264
|
if (settings.previousNext) {
|
|
253
265
|
first =
|
|
254
266
|
// @ts-ignore function children
|
|
255
267
|
h(PagerNavigationButton, {
|
|
256
|
-
"class": 'k-pager-first'
|
|
257
|
-
|
|
268
|
+
"class": 'k-pager-first',
|
|
269
|
+
size: this.size,
|
|
258
270
|
attrs: this.v3 ? undefined : {
|
|
271
|
+
size: this.size,
|
|
272
|
+
disabled: this.currentPage === 1,
|
|
259
273
|
page: 1,
|
|
260
274
|
title: localizationService.toLanguageString(firstPageMessage.messageKey, firstPageMessage.defaultMessage),
|
|
261
|
-
icon: 'caret-alt-to-left'
|
|
275
|
+
icon: 'caret-alt-to-left',
|
|
276
|
+
svgIcon: caretAltToLeftIcon
|
|
262
277
|
},
|
|
278
|
+
disabled: this.currentPage === 1,
|
|
279
|
+
page: 1,
|
|
263
280
|
title: localizationService.toLanguageString(firstPageMessage.messageKey, firstPageMessage.defaultMessage),
|
|
264
281
|
icon: 'caret-alt-to-left',
|
|
282
|
+
svgIcon: caretAltToLeftIcon,
|
|
265
283
|
onPagechange: this.changePage,
|
|
266
284
|
on: this.v3 ? undefined : {
|
|
267
285
|
"pagechange": this.changePage
|
|
@@ -270,15 +288,20 @@ var PagerVue2 = {
|
|
|
270
288
|
prev =
|
|
271
289
|
// @ts-ignore function children
|
|
272
290
|
h(PagerNavigationButton, {
|
|
273
|
-
|
|
274
|
-
page: this.currentPage - 1,
|
|
291
|
+
disabled: this.currentPage === 1,
|
|
275
292
|
attrs: this.v3 ? undefined : {
|
|
293
|
+
disabled: this.currentPage === 1,
|
|
294
|
+
size: this.size,
|
|
276
295
|
page: this.currentPage - 1,
|
|
277
296
|
title: localizationService.toLanguageString(previousPageMessage.messageKey, previousPageMessage.defaultMessage),
|
|
278
|
-
icon: 'caret-alt-left'
|
|
297
|
+
icon: 'caret-alt-left',
|
|
298
|
+
svgIcon: caretAltLeftIcon
|
|
279
299
|
},
|
|
300
|
+
size: this.size,
|
|
301
|
+
page: this.currentPage - 1,
|
|
280
302
|
title: localizationService.toLanguageString(previousPageMessage.messageKey, previousPageMessage.defaultMessage),
|
|
281
303
|
icon: 'caret-alt-left',
|
|
304
|
+
svgIcon: caretAltLeftIcon,
|
|
282
305
|
onPagechange: this.changePage,
|
|
283
306
|
on: this.v3 ? undefined : {
|
|
284
307
|
"pagechange": this.changePage
|
|
@@ -287,15 +310,20 @@ var PagerVue2 = {
|
|
|
287
310
|
next =
|
|
288
311
|
// @ts-ignore function children
|
|
289
312
|
h(PagerNavigationButton, {
|
|
290
|
-
|
|
291
|
-
page: this.currentPage + 1,
|
|
313
|
+
disabled: this.currentPage === this.totalPages,
|
|
292
314
|
attrs: this.v3 ? undefined : {
|
|
315
|
+
disabled: this.currentPage === this.totalPages,
|
|
316
|
+
size: this.size,
|
|
293
317
|
page: this.currentPage + 1,
|
|
294
318
|
title: localizationService.toLanguageString(nextPageMessage.messageKey, nextPageMessage.defaultMessage),
|
|
295
|
-
icon: 'caret-alt-right'
|
|
319
|
+
icon: 'caret-alt-right',
|
|
320
|
+
svgIcon: caretAltRightIcon
|
|
296
321
|
},
|
|
322
|
+
size: this.size,
|
|
323
|
+
page: this.currentPage + 1,
|
|
297
324
|
title: localizationService.toLanguageString(nextPageMessage.messageKey, nextPageMessage.defaultMessage),
|
|
298
325
|
icon: 'caret-alt-right',
|
|
326
|
+
svgIcon: caretAltRightIcon,
|
|
299
327
|
onPagechange: this.changePage,
|
|
300
328
|
on: this.v3 ? undefined : {
|
|
301
329
|
"pagechange": this.changePage
|
|
@@ -304,15 +332,21 @@ var PagerVue2 = {
|
|
|
304
332
|
last =
|
|
305
333
|
// @ts-ignore function children
|
|
306
334
|
h(PagerNavigationButton, {
|
|
307
|
-
"class": 'k-pager-last'
|
|
308
|
-
|
|
335
|
+
"class": 'k-pager-last',
|
|
336
|
+
disabled: this.currentPage === this.totalPages,
|
|
309
337
|
attrs: this.v3 ? undefined : {
|
|
338
|
+
disabled: this.currentPage === this.totalPages,
|
|
339
|
+
size: this.size,
|
|
310
340
|
page: this.totalPages,
|
|
311
341
|
title: localizationService.toLanguageString(lastPageMessage.messageKey, lastPageMessage.defaultMessage),
|
|
312
|
-
icon: 'caret-alt-to-right'
|
|
342
|
+
icon: 'caret-alt-to-right',
|
|
343
|
+
svgIcon: caretAltToRightIcon
|
|
313
344
|
},
|
|
345
|
+
size: this.size,
|
|
346
|
+
page: this.totalPages,
|
|
314
347
|
title: localizationService.toLanguageString(lastPageMessage.messageKey, lastPageMessage.defaultMessage),
|
|
315
348
|
icon: 'caret-alt-to-right',
|
|
349
|
+
svgIcon: caretAltToRightIcon,
|
|
316
350
|
onPagechange: this.changePage,
|
|
317
351
|
on: this.v3 ? undefined : {
|
|
318
352
|
"pagechange": this.changePage
|
|
@@ -331,11 +365,13 @@ var PagerVue2 = {
|
|
|
331
365
|
pageSize: this.currentTake,
|
|
332
366
|
pageSizes: settings.pageSizes,
|
|
333
367
|
value: settings.pageSizeValue,
|
|
334
|
-
messagesMap: messagesMap
|
|
368
|
+
messagesMap: messagesMap,
|
|
369
|
+
size: this.size
|
|
335
370
|
},
|
|
336
371
|
pageSizes: settings.pageSizes,
|
|
337
372
|
value: settings.pageSizeValue,
|
|
338
|
-
messagesMap: messagesMap
|
|
373
|
+
messagesMap: messagesMap,
|
|
374
|
+
size: this.size
|
|
339
375
|
});
|
|
340
376
|
var infoElement = !settings.info ? '' :
|
|
341
377
|
// @ts-ignore function children
|
|
@@ -380,7 +416,9 @@ var PagerVue2 = {
|
|
|
380
416
|
attrs: this.v3 ? undefined : {
|
|
381
417
|
role: "navigation"
|
|
382
418
|
}
|
|
383
|
-
}, [
|
|
419
|
+
}, [h("div", {
|
|
420
|
+
"class": 'k-pager-numbers-wrap'
|
|
421
|
+
}, [first, prev, changer, next, last]), renderPageSizes, infoElement]);
|
|
384
422
|
}
|
|
385
423
|
};
|
|
386
424
|
/**
|
|
@@ -12,6 +12,7 @@ export interface PagerInputProps {
|
|
|
12
12
|
* The current page.
|
|
13
13
|
*/
|
|
14
14
|
currentPage: number;
|
|
15
|
+
size?: null | 'small' | 'medium' | 'large' | string;
|
|
15
16
|
/**
|
|
16
17
|
* @hidden
|
|
17
18
|
*/
|
|
@@ -37,7 +38,14 @@ export interface PagerInputState {
|
|
|
37
38
|
/**
|
|
38
39
|
* @hidden
|
|
39
40
|
*/
|
|
40
|
-
export interface
|
|
41
|
+
export interface PagerInputComputed {
|
|
42
|
+
[key: string]: any;
|
|
43
|
+
inputClass: object;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* @hidden
|
|
47
|
+
*/
|
|
48
|
+
export interface PagerInputAll extends PagerInputMethods, PagerInputState, PagerInputComputed {
|
|
41
49
|
}
|
|
42
50
|
/**
|
|
43
51
|
* @hidden
|
|
@@ -6,6 +6,7 @@ var isV3 = allVue.version && allVue.version[0] === '3';
|
|
|
6
6
|
var inject = allVue.inject;
|
|
7
7
|
import { messages, pagerOf, pagerPage, pagerTotalPages } from '../messages/main';
|
|
8
8
|
import { provideIntlService, provideLocalizationService } from '@progress/kendo-vue-intl';
|
|
9
|
+
import { kendoThemeMaps } from '@progress/kendo-vue-common';
|
|
9
10
|
/**
|
|
10
11
|
* @hidden
|
|
11
12
|
*/
|
|
@@ -14,7 +15,8 @@ var PagerInputVue2 = {
|
|
|
14
15
|
props: {
|
|
15
16
|
totalPages: Number,
|
|
16
17
|
currentPage: Number,
|
|
17
|
-
messagesMap: Function
|
|
18
|
+
messagesMap: Function,
|
|
19
|
+
size: String
|
|
18
20
|
},
|
|
19
21
|
inject: {
|
|
20
22
|
kendoIntlService: {
|
|
@@ -27,6 +29,18 @@ var PagerInputVue2 = {
|
|
|
27
29
|
created: function created() {
|
|
28
30
|
this._text = undefined;
|
|
29
31
|
},
|
|
32
|
+
computed: {
|
|
33
|
+
inputClass: function inputClass() {
|
|
34
|
+
var _a;
|
|
35
|
+
var size = this.$props.size;
|
|
36
|
+
return _a = {
|
|
37
|
+
'k-textbox': true,
|
|
38
|
+
'k-input': true,
|
|
39
|
+
'k-rounded-md': true,
|
|
40
|
+
'k-input-solid': true
|
|
41
|
+
}, _a["k-input-".concat(kendoThemeMaps.sizeMap[size] || size)] = size, _a;
|
|
42
|
+
}
|
|
43
|
+
},
|
|
30
44
|
methods: {
|
|
31
45
|
changeHangler: function changeHangler(e) {
|
|
32
46
|
var text = this._text = e.target.value.replace(/\D/g, '');
|
|
@@ -75,7 +89,7 @@ var PagerInputVue2 = {
|
|
|
75
89
|
return h("span", {
|
|
76
90
|
"class": "k-pager-input k-label"
|
|
77
91
|
}, [localizationService.toLanguageString(pageMessage.messageKey, pageMessage.defaultMessage), h("span", {
|
|
78
|
-
"class":
|
|
92
|
+
"class": this.inputClass
|
|
79
93
|
}, [h("input", {
|
|
80
94
|
"class": "k-input-inner",
|
|
81
95
|
value: this.v3 ? this.value() : null,
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DefineComponent, RecordPropsDefinition, ComponentOptions, Vue2type } from '../additionalTypes';
|
|
2
|
+
import { SVGIcon } from '@progress/kendo-svg-icons';
|
|
2
3
|
declare type DefaultData<V> = object | ((this: V) => {});
|
|
3
4
|
declare type DefaultMethods<V> = {
|
|
4
5
|
[key: string]: (this: V, ...args: any[]) => any;
|
|
@@ -12,10 +13,22 @@ export interface PagerNavigationButtonProps {
|
|
|
12
13
|
* The class responsible for the icon of the button.
|
|
13
14
|
*/
|
|
14
15
|
icon: string;
|
|
16
|
+
/**
|
|
17
|
+
* The svg icon responsible for the icon of the button.
|
|
18
|
+
*/
|
|
19
|
+
svgIcon: SVGIcon;
|
|
15
20
|
/**
|
|
16
21
|
* The page number returned when the button is clicked.
|
|
17
22
|
*/
|
|
18
23
|
page: number;
|
|
24
|
+
/**
|
|
25
|
+
* The disabled state of the button.
|
|
26
|
+
*/
|
|
27
|
+
disabled: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* The size of the button.
|
|
30
|
+
*/
|
|
31
|
+
size: string;
|
|
19
32
|
}
|
|
20
33
|
export interface PagerNavigationButtonEmits {
|
|
21
34
|
/**
|