@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.
Files changed (95) hide show
  1. package/dist/cdn/js/kendo-vue-data-tools.js +1 -1
  2. package/dist/es/cells/FilterCell.js +35 -21
  3. package/dist/es/columnmenu/ColumnMenu.js +5 -2
  4. package/dist/es/columnmenu/ColumnMenuCheckboxFilter.js +4 -1
  5. package/dist/es/columnmenu/ColumnMenuSort.js +8 -8
  6. package/dist/es/drag/ColumnDraggable.js +6 -2
  7. package/dist/es/filter/Expression.js +17 -8
  8. package/dist/es/filter/GroupToolbar.js +33 -8
  9. package/dist/es/header/FilterRow.d.ts +1 -0
  10. package/dist/es/header/FilterRow.js +9 -6
  11. package/dist/es/header/Header.d.ts +1 -0
  12. package/dist/es/header/Header.js +12 -2
  13. package/dist/es/header/HeaderRow.d.ts +1 -0
  14. package/dist/es/header/HeaderRow.js +12 -5
  15. package/dist/es/header/HeaderTdElement.d.ts +46 -0
  16. package/dist/es/header/HeaderTdElement.js +92 -0
  17. package/dist/es/header/HeaderThElement.d.ts +8 -1
  18. package/dist/es/header/HeaderThElement.js +10 -2
  19. package/dist/es/header/main.d.ts +1 -0
  20. package/dist/es/header/main.js +1 -0
  21. package/dist/es/interfaces/FilterCellProps.d.ts +12 -0
  22. package/dist/es/package-metadata.js +1 -1
  23. package/dist/es/pager/Pager.d.ts +13 -1
  24. package/dist/es/pager/Pager.js +66 -28
  25. package/dist/es/pager/PagerInput.d.ts +9 -1
  26. package/dist/es/pager/PagerInput.js +16 -2
  27. package/dist/es/pager/PagerNavigationButton.d.ts +13 -0
  28. package/dist/es/pager/PagerNavigationButton.js +30 -20
  29. package/dist/es/pager/PagerNumericButtons.d.ts +5 -1
  30. package/dist/es/pager/PagerNumericButtons.js +61 -27
  31. package/dist/es/pager/PagerPageSizes.d.ts +1 -0
  32. package/dist/es/pager/PagerPageSizes.js +3 -0
  33. package/dist/esm/cells/FilterCell.js +35 -21
  34. package/dist/esm/columnmenu/ColumnMenu.js +5 -2
  35. package/dist/esm/columnmenu/ColumnMenuCheckboxFilter.js +4 -1
  36. package/dist/esm/columnmenu/ColumnMenuSort.js +8 -8
  37. package/dist/esm/drag/ColumnDraggable.js +6 -2
  38. package/dist/esm/filter/Expression.js +17 -8
  39. package/dist/esm/filter/GroupToolbar.js +33 -8
  40. package/dist/esm/header/FilterRow.d.ts +1 -0
  41. package/dist/esm/header/FilterRow.js +9 -6
  42. package/dist/esm/header/Header.d.ts +1 -0
  43. package/dist/esm/header/Header.js +12 -2
  44. package/dist/esm/header/HeaderRow.d.ts +1 -0
  45. package/dist/esm/header/HeaderRow.js +12 -5
  46. package/dist/esm/header/HeaderTdElement.d.ts +46 -0
  47. package/dist/esm/header/HeaderTdElement.js +92 -0
  48. package/dist/esm/header/HeaderThElement.d.ts +8 -1
  49. package/dist/esm/header/HeaderThElement.js +10 -2
  50. package/dist/esm/header/main.d.ts +1 -0
  51. package/dist/esm/header/main.js +1 -0
  52. package/dist/esm/interfaces/FilterCellProps.d.ts +12 -0
  53. package/dist/esm/package-metadata.js +1 -1
  54. package/dist/esm/pager/Pager.d.ts +13 -1
  55. package/dist/esm/pager/Pager.js +66 -28
  56. package/dist/esm/pager/PagerInput.d.ts +9 -1
  57. package/dist/esm/pager/PagerInput.js +16 -2
  58. package/dist/esm/pager/PagerNavigationButton.d.ts +13 -0
  59. package/dist/esm/pager/PagerNavigationButton.js +30 -20
  60. package/dist/esm/pager/PagerNumericButtons.d.ts +5 -1
  61. package/dist/esm/pager/PagerNumericButtons.js +61 -27
  62. package/dist/esm/pager/PagerPageSizes.d.ts +1 -0
  63. package/dist/esm/pager/PagerPageSizes.js +3 -0
  64. package/dist/npm/cells/FilterCell.js +34 -20
  65. package/dist/npm/columnmenu/ColumnMenu.js +5 -2
  66. package/dist/npm/columnmenu/ColumnMenuCheckboxFilter.js +4 -1
  67. package/dist/npm/columnmenu/ColumnMenuSort.js +8 -8
  68. package/dist/npm/drag/ColumnDraggable.js +6 -2
  69. package/dist/npm/filter/Expression.js +17 -8
  70. package/dist/npm/filter/GroupToolbar.js +33 -8
  71. package/dist/npm/header/FilterRow.d.ts +1 -0
  72. package/dist/npm/header/FilterRow.js +9 -6
  73. package/dist/npm/header/Header.d.ts +1 -0
  74. package/dist/npm/header/Header.js +11 -1
  75. package/dist/npm/header/HeaderRow.d.ts +1 -0
  76. package/dist/npm/header/HeaderRow.js +12 -5
  77. package/dist/npm/header/HeaderTdElement.d.ts +46 -0
  78. package/dist/npm/header/HeaderTdElement.js +99 -0
  79. package/dist/npm/header/HeaderThElement.d.ts +8 -1
  80. package/dist/npm/header/HeaderThElement.js +10 -2
  81. package/dist/npm/header/main.d.ts +1 -0
  82. package/dist/npm/header/main.js +1 -0
  83. package/dist/npm/interfaces/FilterCellProps.d.ts +12 -0
  84. package/dist/npm/package-metadata.js +1 -1
  85. package/dist/npm/pager/Pager.d.ts +13 -1
  86. package/dist/npm/pager/Pager.js +65 -27
  87. package/dist/npm/pager/PagerInput.d.ts +9 -1
  88. package/dist/npm/pager/PagerInput.js +16 -2
  89. package/dist/npm/pager/PagerNavigationButton.d.ts +13 -0
  90. package/dist/npm/pager/PagerNavigationButton.js +30 -20
  91. package/dist/npm/pager/PagerNumericButtons.d.ts +5 -1
  92. package/dist/npm/pager/PagerNumericButtons.js +61 -27
  93. package/dist/npm/pager/PagerPageSizes.d.ts +1 -0
  94. package/dist/npm/pager/PagerPageSizes.js +3 -0
  95. 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 ".concat(locked ? 'k-grid-header-sticky' : '') + customClass;
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(this.$props.sort[iconSortIndex].dir, "-small"),
209
+ name: "sort-".concat(currentDir, "-small"),
206
210
  attrs: this.v3 ? undefined : {
207
- name: "sort-".concat(this.$props.sort[iconSortIndex].dir, "-small")
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": className,
96
+ "class": this.thClass,
89
97
  onKeydown: this.onKeyDown,
90
98
  on: this.v3 ? undefined : {
91
99
  "keydown": this.onKeyDown
@@ -8,3 +8,4 @@ export * from './HeaderSelectionCell';
8
8
  export * from '../interfaces/SortSettings';
9
9
  export * from './utils/main';
10
10
  export * from './HeaderThElement';
11
+ export * from './HeaderTdElement';
@@ -8,3 +8,4 @@ export * from './HeaderSelectionCell';
8
8
  export * from '../interfaces/SortSettings';
9
9
  export * from './utils/main';
10
10
  export * from './HeaderThElement';
11
+ export * from './HeaderTdElement';
@@ -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&mdash;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: 1672389924,
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
  };
@@ -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&mdash;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
- size: string;
95
+ currentSize: string;
84
96
  }
85
97
  /**
86
98
  * @hidden
@@ -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
- size: 'normal'
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
- return {
105
- 'k-pager': true,
106
- 'k-pager-sm': this.size === 'small',
107
- 'k-pager-md': this.size === 'medium'
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.size = 'small';
159
+ this.currentSize = 'small';
152
160
  } else if (width >= RESPONSIVE_BREAKPOINT_MEDIUM && width < RESPONSIVE_BREAKPOINT_LARGE) {
153
- this.size = 'medium';
161
+ this.currentSize = 'medium';
154
162
  } else {
155
- this.size = 'large';
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
- size: this.size,
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' + (this.currentPage === 1 ? ' k-disabled' : ''),
257
- page: 1,
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
- "class": this.currentPage === 1 ? ' k-disabled' : '',
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
- "class": this.currentPage === this.totalPages ? ' k-disabled' : '',
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' + (this.currentPage === this.totalPages ? ' k-disabled' : ''),
308
- page: this.totalPages,
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
- }, [first, prev, changer, next, last, renderPageSizes, infoElement]);
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 PagerInputAll extends PagerInputMethods, PagerInputState {
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": "k-textbox k-input k-input-md k-rounded-md k-input-solid"
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
  /**