@progress/kendo-vue-grid 8.1.0-develop.5 → 8.1.0-develop.7

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 (79) hide show
  1. package/Grid.d.ts +32 -17
  2. package/Grid.js +1 -1
  3. package/Grid.mjs +568 -449
  4. package/GridState.d.ts +17 -1
  5. package/GridState.js +1 -1
  6. package/GridState.mjs +84 -71
  7. package/RootGrid.d.ts +29 -0
  8. package/RootGrid.js +1 -1
  9. package/RootGrid.mjs +23 -8
  10. package/cells/GridCell.d.ts +2 -0
  11. package/cells/GridCell.js +1 -1
  12. package/cells/GridCell.mjs +35 -30
  13. package/cells/GridDetailCell.js +1 -1
  14. package/cells/GridDetailCell.mjs +20 -20
  15. package/cells/GridFilterCell.js +1 -1
  16. package/cells/GridFilterCell.mjs +42 -37
  17. package/cells/GridGroupCell.d.ts +2 -0
  18. package/cells/GridGroupCell.js +1 -1
  19. package/cells/GridGroupCell.mjs +69 -55
  20. package/cells/GridHierarchyCell.d.ts +2 -0
  21. package/cells/GridHierarchyCell.js +1 -1
  22. package/cells/GridHierarchyCell.mjs +51 -41
  23. package/cells/GridSelectionCell.d.ts +2 -0
  24. package/cells/GridSelectionCell.js +1 -1
  25. package/cells/GridSelectionCell.mjs +35 -24
  26. package/cells/pincell/GridPinCell.d.ts +72 -0
  27. package/cells/pincell/GridPinCell.js +8 -0
  28. package/cells/pincell/GridPinCell.mjs +111 -0
  29. package/cells/pincell/GridPinDropdownButton.d.ts +27 -0
  30. package/cells/pincell/GridPinDropdownButton.js +8 -0
  31. package/cells/pincell/GridPinDropdownButton.mjs +111 -0
  32. package/common.d.ts +6 -0
  33. package/common.js +1 -1
  34. package/common.mjs +8 -2
  35. package/components/PinnedRowsTable.d.ts +62 -0
  36. package/components/PinnedRowsTable.js +8 -0
  37. package/components/PinnedRowsTable.mjs +135 -0
  38. package/components/StickyGroupTable.d.ts +0 -1
  39. package/components/StickyGroupTable.js +1 -1
  40. package/components/StickyGroupTable.mjs +24 -30
  41. package/constants/main.d.ts +15 -0
  42. package/dist/cdn/js/kendo-vue-grid.js +1 -1
  43. package/drag/ColumnResize.d.ts +2 -0
  44. package/drag/ColumnResize.js +1 -1
  45. package/drag/ColumnResize.mjs +139 -123
  46. package/footer/FooterCell.js +1 -1
  47. package/footer/FooterCell.mjs +22 -20
  48. package/getRowContents.js +1 -1
  49. package/getRowContents.mjs +50 -48
  50. package/header/FilterRow.d.ts +4 -0
  51. package/header/FilterRow.js +1 -1
  52. package/header/FilterRow.mjs +52 -50
  53. package/header/HeaderRow.d.ts +4 -0
  54. package/header/HeaderRow.js +1 -1
  55. package/header/HeaderRow.mjs +114 -105
  56. package/index.js +1 -1
  57. package/index.mjs +15 -14
  58. package/interfaces/ColumnType.d.ts +1 -1
  59. package/interfaces/GridCellProps.d.ts +5 -0
  60. package/interfaces/GridCellsSettings.d.ts +23 -0
  61. package/interfaces/GridColumnProps.d.ts +2 -2
  62. package/interfaces/GridProps.d.ts +102 -31
  63. package/interfaces/GridRowProps.d.ts +13 -4
  64. package/interfaces/GridRowsSettings.d.ts +48 -0
  65. package/interfaces/events.d.ts +19 -2
  66. package/messages/main.d.ts +30 -0
  67. package/messages/main.js +2 -2
  68. package/messages/main.mjs +108 -96
  69. package/package-metadata.js +1 -1
  70. package/package-metadata.mjs +2 -2
  71. package/package.json +13 -12
  72. package/rows/GridRow.d.ts +6 -10
  73. package/rows/GridRow.js +1 -1
  74. package/rows/GridRow.mjs +31 -26
  75. package/utils/main.d.ts +5 -0
  76. package/utils/main.js +1 -1
  77. package/utils/main.mjs +199 -167
  78. package/utils/virtualColumns.js +1 -1
  79. package/utils/virtualColumns.mjs +121 -105
package/GridState.d.ts CHANGED
@@ -6,7 +6,7 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  import { GridProps } from './interfaces/GridProps';
9
- import { GridDataStateChangeEvent, GridDetailExpandChangeEvent, GridFilterChangeEvent, GridGroupChangeEvent, GridGroupExpandChangeEvent, GridPageChangeEvent, GridSearchChangeEvent, GridSortChangeEvent, GridSelectionChangeEvent, GridHeaderSelectionChangeEvent } from './interfaces/events';
9
+ import { GridDataStateChangeEvent, GridDetailExpandChangeEvent, GridFilterChangeEvent, GridGroupChangeEvent, GridGroupExpandChangeEvent, GridPageChangeEvent, GridSearchChangeEvent, GridSortChangeEvent, GridSelectionChangeEvent, GridHeaderSelectionChangeEvent, GridRowPinChangeEvent } from './interfaces/events';
10
10
  /** @hidden */
11
11
  export type GridState = {
12
12
  filter?: GridProps['filter'];
@@ -20,6 +20,8 @@ export type GridState = {
20
20
  detailExpand?: GridProps['detailExpand'];
21
21
  groupExpand?: GridProps['groupExpand'];
22
22
  columnsState?: GridProps['columnsState'];
23
+ pinnedTopRows?: GridProps['pinnedTopRows'];
24
+ pinnedBottomRows?: GridProps['pinnedBottomRows'];
23
25
  };
24
26
  declare const GridStateProvider: import('vue').DefineComponent<{
25
27
  id?: string;
@@ -35,10 +37,17 @@ declare const GridStateProvider: import('vue').DefineComponent<{
35
37
  columns?: import('.').GridColumnProps[];
36
38
  dataItems?: any[] | import('@progress/kendo-data-query').DataResult;
37
39
  cells?: import('.').GridCellsSettings;
40
+ rows?: import('./interfaces/GridRowsSettings').GridRowsSettings;
38
41
  sortable?: import('.').GridSortSettings;
39
42
  onSortchange?: (event: GridSortChangeEvent) => void;
40
43
  defaultSort?: import('@progress/kendo-data-query').SortDescriptor[];
41
44
  sort?: import('@progress/kendo-data-query').SortDescriptor[];
45
+ pinnable?: boolean;
46
+ pinnedTopRows?: any[];
47
+ pinnedBottomRows?: any[];
48
+ defaultPinnedTopRows?: any[];
49
+ defaultPinnedBottomRows?: any[];
50
+ onRowpinchange?: (event: GridRowPinChangeEvent) => void;
42
51
  filterable?: boolean;
43
52
  search?: import('@progress/kendo-data-query').CompositeFilterDescriptor;
44
53
  defaultSearch?: import('@progress/kendo-data-query').CompositeFilterDescriptor;
@@ -140,10 +149,17 @@ declare const GridStateProvider: import('vue').DefineComponent<{
140
149
  columns?: import('.').GridColumnProps[];
141
150
  dataItems?: any[] | import('@progress/kendo-data-query').DataResult;
142
151
  cells?: import('.').GridCellsSettings;
152
+ rows?: import('./interfaces/GridRowsSettings').GridRowsSettings;
143
153
  sortable?: import('.').GridSortSettings;
144
154
  onSortchange?: (event: GridSortChangeEvent) => void;
145
155
  defaultSort?: import('@progress/kendo-data-query').SortDescriptor[];
146
156
  sort?: import('@progress/kendo-data-query').SortDescriptor[];
157
+ pinnable?: boolean;
158
+ pinnedTopRows?: any[];
159
+ pinnedBottomRows?: any[];
160
+ defaultPinnedTopRows?: any[];
161
+ defaultPinnedBottomRows?: any[];
162
+ onRowpinchange?: (event: GridRowPinChangeEvent) => void;
147
163
  filterable?: boolean;
148
164
  search?: import('@progress/kendo-data-query').CompositeFilterDescriptor;
149
165
  defaultSearch?: import('@progress/kendo-data-query').CompositeFilterDescriptor;
package/GridState.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue"),H=require("./key.js"),M=require("./common.js"),O=require("@progress/kendo-vue-common"),z=l.defineComponent({name:"KendoVueGridStateProvider",inheritAttrs:!1,props:M.gridProps,setup(a,{emit:n}){var c,u,d,o,h,g,r,s,i,f;const t=l.ref({filter:(c=a.defaultFilter)!=null?c:a.filter,highlight:a.highlight,select:(u=a.defaultSelect)!=null?u:a.select,search:(d=a.defaultSearch)!=null?d:a.search,sort:(o=a.defaultSort)!=null?o:a.sort,take:(h=a.defaultTake)!=null?h:a.take,skip:(g=a.defaultSkip)!=null?g:a.skip,group:(r=a.defaultGroup)!=null?r:a.group,detailExpand:(s=a.defaultDetailExpand)!=null?s:a.detailExpand,groupExpand:(i=a.defaultGroupExpand)!=null?i:a.groupExpand,columnsState:(f=a.defaultColumnsState)!=null?f:a.columnsState}),S=e=>{t.value={...t.value,...e.data},n("datastatechange",e)},v=l.computed(()=>a.filter||t.value.filter||null),x=e=>{t.value.filter=e.filter,n("filterchange",e)};l.watch(()=>a.filter,e=>{t.value.filter=e});const k=l.computed(()=>a.search||t.value.search||null),E=e=>{t.value.search=e.search,t.value.skip=0,n("searchchange",e)};l.watch(()=>a.search,e=>{t.value.search=e});const m=l.computed(()=>a.select||t.value.select||null),C=e=>{t.value.select=e.select,n("selectionchange",e)},w=e=>{t.value.select=e.select,n("headerselectionchange",e)},G=l.computed(()=>a.sort||t.value.sort||[]),P=e=>{t.value.sort=e.sort,n("sortchange",e)};l.watch(()=>a.sort,e=>{t.value.sort=e});const p=l.computed(()=>a.skip||t.value.skip),q=l.computed(()=>a.take||t.value.take),y=e=>{t.value.skip=e.page.skip,t.value.take=e.page.take,n("pagechange",e)};l.watch(()=>a.skip,e=>{t.value.skip=e}),l.watch(()=>a.take,e=>{t.value.take=e});const D=l.computed(()=>a.group||t.value.group||[]),K=e=>{t.value.group=e.group,n("groupchange",e)};l.watch(()=>a.group,e=>{t.value.group=e});const b=l.computed(()=>a.detailExpand||t.value.detailExpand||{}),F=e=>{t.value.detailExpand=e.detailExpand,n("detailexpandchange",e)};l.watch(()=>a.detailExpand,e=>{t.value.detailExpand=e});const T=l.computed(()=>a.groupExpand||t.value.groupExpand||[]),V=e=>{t.value.groupExpand=e.groupExpand,n("groupexpandchange",e)};l.watch(()=>a.groupExpand,e=>{t.value.groupExpand=e});const j=l.computed(()=>a.columnsState||a.defaultColumnsState||[]),A=e=>{t.value.columnsState=e.columnsState,n("columnsstatechange",e)};l.watch(()=>a.columnsState,e=>{t.value.columnsState=e}),l.provide(H.KendoKey,{sort:G,sortchange:P,filter:v,filterchange:x,search:k,searchchange:E,skip:p,take:q,pagechange:y,select:m,selectionchange:C,headerselectionchange:w,group:D,groupchange:K,detailExpand:b,detailexpandchange:F,groupExpand:T,groupexpandchange:V,columnsState:j,columnsstatechange:A,datastatechange:S})},render(){return O.getDefaultSlots(this)}});exports.GridStateProvider=z;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),z=require("./key.js"),I=require("./common.js"),J=require("@progress/kendo-vue-common"),L=n.defineComponent({name:"KendoVueGridStateProvider",inheritAttrs:!1,props:I.gridProps,setup(a,{emit:l}){var o,c,u,d,h,i,s,g,r,w,v,m;const t=n.ref({filter:(o=a.defaultFilter)!=null?o:a.filter,highlight:a.highlight,select:(c=a.defaultSelect)!=null?c:a.select,search:(u=a.defaultSearch)!=null?u:a.search,sort:(d=a.defaultSort)!=null?d:a.sort,take:(h=a.defaultTake)!=null?h:a.take,skip:(i=a.defaultSkip)!=null?i:a.skip,group:(s=a.defaultGroup)!=null?s:a.group,detailExpand:(g=a.defaultDetailExpand)!=null?g:a.detailExpand,groupExpand:(r=a.defaultGroupExpand)!=null?r:a.groupExpand,columnsState:(w=a.defaultColumnsState)!=null?w:a.columnsState,pinnedTopRows:(v=a.defaultPinnedTopRows)!=null?v:a.pinnedTopRows,pinnedBottomRows:(m=a.defaultPinnedBottomRows)!=null?m:a.pinnedBottomRows}),f=e=>{t.value={...t.value,...e.data},l("datastatechange",e)},S=n.computed(()=>a.filter||t.value.filter||null),x=e=>{t.value.filter=e.filter,l("filterchange",e)};n.watch(()=>a.filter,e=>{t.value.filter=e});const k=n.computed(()=>a.search||t.value.search||null),p=e=>{t.value.search=e.search,t.value.skip=0,l("searchchange",e)};n.watch(()=>a.search,e=>{t.value.search=e});const E=n.computed(()=>a.select||t.value.select||null),R=e=>{t.value.select=e.select,l("selectionchange",e)},C=e=>{t.value.select=e.select,l("headerselectionchange",e)},T=n.computed(()=>a.sort||t.value.sort||[]),B=e=>{t.value.sort=e.sort,l("sortchange",e)};n.watch(()=>a.sort,e=>{t.value.sort=e});const P=n.computed(()=>a.skip||t.value.skip),G=n.computed(()=>a.take||t.value.take),q=e=>{t.value.skip=e.page.skip,t.value.take=e.page.take,l("pagechange",e)};n.watch(()=>a.skip,e=>{t.value.skip=e}),n.watch(()=>a.take,e=>{t.value.take=e});const y=n.computed(()=>a.group||t.value.group||[]),D=e=>{t.value.group=e.group,l("groupchange",e)};n.watch(()=>a.group,e=>{t.value.group=e});const K=n.computed(()=>a.detailExpand||t.value.detailExpand||{}),b=e=>{t.value.detailExpand=e.detailExpand,l("detailexpandchange",e)};n.watch(()=>a.detailExpand,e=>{t.value.detailExpand=e});const F=n.computed(()=>a.groupExpand||t.value.groupExpand||[]),V=e=>{t.value.groupExpand=e.groupExpand,l("groupexpandchange",e)};n.watch(()=>a.groupExpand,e=>{t.value.groupExpand=e});const j=n.computed(()=>a.columnsState||t.value.columnsState||[]),A=e=>{t.value.columnsState=e.columnsState,l("columnsstatechange",e)};n.watch(()=>a.columnsState,e=>{t.value.columnsState=e});const H=n.computed(()=>a.pinnedTopRows||t.value.pinnedTopRows||[]),M=n.computed(()=>a.pinnedBottomRows||t.value.pinnedBottomRows||[]),O=e=>{t.value.pinnedTopRows=e.pinnedTopRows,t.value.pinnedBottomRows=e.pinnedBottomRows,l("rowpinchange",e)};n.watch(()=>a.pinnedTopRows,e=>{t.value.pinnedTopRows=e}),n.watch(()=>a.pinnedBottomRows,e=>{t.value.pinnedBottomRows=e}),n.provide(z.KendoKey,{sort:T,sortchange:B,filter:S,filterchange:x,search:k,searchchange:p,skip:P,take:G,pagechange:q,select:E,selectionchange:R,headerselectionchange:C,group:y,groupchange:D,detailExpand:K,detailexpandchange:b,groupExpand:F,groupexpandchange:V,columnsState:j,columnsstatechange:A,datastatechange:f,pinnedTopRows:H,pinnedBottomRows:M,rowpinchange:O})},render(){return J.getDefaultSlots(this)}});exports.GridStateProvider=L;
package/GridState.mjs CHANGED
@@ -5,117 +5,130 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { defineComponent as B, ref as I, computed as n, watch as u, provide as J } from "vue";
9
- import { KendoKey as L } from "./key.mjs";
10
- import { gridProps as M } from "./common.mjs";
11
- import { getDefaultSlots as N } from "@progress/kendo-vue-common";
12
- const W = /* @__PURE__ */ B({
8
+ import { defineComponent as L, ref as M, computed as l, watch as o, provide as N } from "vue";
9
+ import { KendoKey as O } from "./key.mjs";
10
+ import { gridProps as Q } from "./common.mjs";
11
+ import { getDefaultSlots as U } from "@progress/kendo-vue-common";
12
+ const _ = /* @__PURE__ */ L({
13
13
  name: "KendoVueGridStateProvider",
14
14
  inheritAttrs: !1,
15
- props: M,
15
+ props: Q,
16
16
  setup(a, {
17
- emit: l
17
+ emit: n
18
18
  }) {
19
- var c, d, h, o, g, r, i, s, f, x;
20
- const t = I({
19
+ var d, u, c, i, h, g, s, r, f, v, x, S;
20
+ const t = M({
21
21
  // edit: props.defaultEdit ?? props.edit,
22
- filter: (c = a.defaultFilter) != null ? c : a.filter,
22
+ filter: (d = a.defaultFilter) != null ? d : a.filter,
23
23
  highlight: a.highlight,
24
- select: (d = a.defaultSelect) != null ? d : a.select,
25
- search: (h = a.defaultSearch) != null ? h : a.search,
26
- sort: (o = a.defaultSort) != null ? o : a.sort,
27
- take: (g = a.defaultTake) != null ? g : a.take,
28
- skip: (r = a.defaultSkip) != null ? r : a.skip,
29
- group: (i = a.defaultGroup) != null ? i : a.group,
30
- detailExpand: (s = a.defaultDetailExpand) != null ? s : a.detailExpand,
24
+ select: (u = a.defaultSelect) != null ? u : a.select,
25
+ search: (c = a.defaultSearch) != null ? c : a.search,
26
+ sort: (i = a.defaultSort) != null ? i : a.sort,
27
+ take: (h = a.defaultTake) != null ? h : a.take,
28
+ skip: (g = a.defaultSkip) != null ? g : a.skip,
29
+ group: (s = a.defaultGroup) != null ? s : a.group,
30
+ detailExpand: (r = a.defaultDetailExpand) != null ? r : a.detailExpand,
31
31
  groupExpand: (f = a.defaultGroupExpand) != null ? f : a.groupExpand,
32
- columnsState: (x = a.defaultColumnsState) != null ? x : a.columnsState
33
- }), S = (e) => {
32
+ columnsState: (v = a.defaultColumnsState) != null ? v : a.columnsState,
33
+ pinnedTopRows: (x = a.defaultPinnedTopRows) != null ? x : a.pinnedTopRows,
34
+ pinnedBottomRows: (S = a.defaultPinnedBottomRows) != null ? S : a.pinnedBottomRows
35
+ }), w = (e) => {
34
36
  t.value = {
35
37
  ...t.value,
36
38
  ...e.data
37
- }, l("datastatechange", e);
38
- }, v = n(() => a.filter || t.value.filter || null), E = (e) => {
39
- t.value.filter = e.filter, l("filterchange", e);
39
+ }, n("datastatechange", e);
40
+ }, m = l(() => a.filter || t.value.filter || null), E = (e) => {
41
+ t.value.filter = e.filter, n("filterchange", e);
40
42
  };
41
- u(() => a.filter, (e) => {
43
+ o(() => a.filter, (e) => {
42
44
  t.value.filter = e;
43
45
  });
44
- const k = n(() => a.search || t.value.search || null), C = (e) => {
45
- t.value.search = e.search, t.value.skip = 0, l("searchchange", e);
46
+ const k = l(() => a.search || t.value.search || null), R = (e) => {
47
+ t.value.search = e.search, t.value.skip = 0, n("searchchange", e);
46
48
  };
47
- u(() => a.search, (e) => {
49
+ o(() => a.search, (e) => {
48
50
  t.value.search = e;
49
51
  });
50
- const m = n(() => a.select || t.value.select || null), G = (e) => {
51
- t.value.select = e.select, l("selectionchange", e);
52
- }, D = (e) => {
53
- t.value.select = e.select, l("headerselectionchange", e);
54
- }, P = n(() => a.sort || t.value.sort || []), K = (e) => {
55
- t.value.sort = e.sort, l("sortchange", e);
52
+ const p = l(() => a.select || t.value.select || null), C = (e) => {
53
+ t.value.select = e.select, n("selectionchange", e);
54
+ }, T = (e) => {
55
+ t.value.select = e.select, n("headerselectionchange", e);
56
+ }, B = l(() => a.sort || t.value.sort || []), P = (e) => {
57
+ t.value.sort = e.sort, n("sortchange", e);
56
58
  };
57
- u(() => a.sort, (e) => {
59
+ o(() => a.sort, (e) => {
58
60
  t.value.sort = e;
59
61
  });
60
- const F = n(() => a.skip || t.value.skip), w = n(() => a.take || t.value.take), y = (e) => {
61
- t.value.skip = e.page.skip, t.value.take = e.page.take, l("pagechange", e);
62
+ const G = l(() => a.skip || t.value.skip), D = l(() => a.take || t.value.take), K = (e) => {
63
+ t.value.skip = e.page.skip, t.value.take = e.page.take, n("pagechange", e);
62
64
  };
63
- u(() => a.skip, (e) => {
65
+ o(() => a.skip, (e) => {
64
66
  t.value.skip = e;
65
- }), u(() => a.take, (e) => {
67
+ }), o(() => a.take, (e) => {
66
68
  t.value.take = e;
67
69
  });
68
- const A = n(() => a.group || t.value.group || []), H = (e) => {
69
- t.value.group = e.group, l("groupchange", e);
70
+ const F = l(() => a.group || t.value.group || []), y = (e) => {
71
+ t.value.group = e.group, n("groupchange", e);
70
72
  };
71
- u(() => a.group, (e) => {
73
+ o(() => a.group, (e) => {
72
74
  t.value.group = e;
73
75
  });
74
- const T = n(() => a.detailExpand || t.value.detailExpand || {}), V = (e) => {
75
- t.value.detailExpand = e.detailExpand, l("detailexpandchange", e);
76
+ const A = l(() => a.detailExpand || t.value.detailExpand || {}), H = (e) => {
77
+ t.value.detailExpand = e.detailExpand, n("detailexpandchange", e);
76
78
  };
77
- u(() => a.detailExpand, (e) => {
79
+ o(() => a.detailExpand, (e) => {
78
80
  t.value.detailExpand = e;
79
81
  });
80
- const b = n(() => a.groupExpand || t.value.groupExpand || []), j = (e) => {
81
- t.value.groupExpand = e.groupExpand, l("groupexpandchange", e);
82
+ const V = l(() => a.groupExpand || t.value.groupExpand || []), b = (e) => {
83
+ t.value.groupExpand = e.groupExpand, n("groupexpandchange", e);
82
84
  };
83
- u(() => a.groupExpand, (e) => {
85
+ o(() => a.groupExpand, (e) => {
84
86
  t.value.groupExpand = e;
85
87
  });
86
- const q = n(() => a.columnsState || a.defaultColumnsState || []), z = (e) => {
87
- t.value.columnsState = e.columnsState, l("columnsstatechange", e);
88
+ const j = l(() => a.columnsState || t.value.columnsState || []), q = (e) => {
89
+ t.value.columnsState = e.columnsState, n("columnsstatechange", e);
88
90
  };
89
- u(() => a.columnsState, (e) => {
91
+ o(() => a.columnsState, (e) => {
90
92
  t.value.columnsState = e;
91
- }), J(L, {
92
- sort: P,
93
- sortchange: K,
94
- filter: v,
93
+ });
94
+ const z = l(() => a.pinnedTopRows || t.value.pinnedTopRows || []), I = l(() => a.pinnedBottomRows || t.value.pinnedBottomRows || []), J = (e) => {
95
+ t.value.pinnedTopRows = e.pinnedTopRows, t.value.pinnedBottomRows = e.pinnedBottomRows, n("rowpinchange", e);
96
+ };
97
+ o(() => a.pinnedTopRows, (e) => {
98
+ t.value.pinnedTopRows = e;
99
+ }), o(() => a.pinnedBottomRows, (e) => {
100
+ t.value.pinnedBottomRows = e;
101
+ }), N(O, {
102
+ sort: B,
103
+ sortchange: P,
104
+ filter: m,
95
105
  filterchange: E,
96
106
  search: k,
97
- searchchange: C,
98
- skip: F,
99
- take: w,
100
- pagechange: y,
101
- select: m,
102
- selectionchange: G,
103
- headerselectionchange: D,
104
- group: A,
105
- groupchange: H,
106
- detailExpand: T,
107
- detailexpandchange: V,
108
- groupExpand: b,
109
- groupexpandchange: j,
110
- columnsState: q,
111
- columnsstatechange: z,
112
- datastatechange: S
107
+ searchchange: R,
108
+ skip: G,
109
+ take: D,
110
+ pagechange: K,
111
+ select: p,
112
+ selectionchange: C,
113
+ headerselectionchange: T,
114
+ group: F,
115
+ groupchange: y,
116
+ detailExpand: A,
117
+ detailexpandchange: H,
118
+ groupExpand: V,
119
+ groupexpandchange: b,
120
+ columnsState: j,
121
+ columnsstatechange: q,
122
+ datastatechange: w,
123
+ pinnedTopRows: z,
124
+ pinnedBottomRows: I,
125
+ rowpinchange: J
113
126
  });
114
127
  },
115
128
  render() {
116
- return N(this);
129
+ return U(this);
117
130
  }
118
131
  });
119
132
  export {
120
- W as GridStateProvider
133
+ _ as GridStateProvider
121
134
  };
package/RootGrid.d.ts CHANGED
@@ -83,11 +83,17 @@ export declare const RootGrid: import('vue').DefineComponent<import('vue').Extra
83
83
  default: () => any;
84
84
  };
85
85
  cells: import('vue').PropType<import('.').GridCellsSettings>;
86
+ rows: import('vue').PropType<import('./interfaces/GridRowsSettings').GridRowsSettings>;
86
87
  defaultColumnsState: {
87
88
  type: import('vue').PropType<import('.').GridColumnState[]>;
88
89
  default: () => any;
89
90
  };
90
91
  columnVirtualization: import('vue').PropType<boolean>;
92
+ /**
93
+ * Method to fit columns according to their content.
94
+ *
95
+ * @param columnIds - Array of column ids to be fitted.
96
+ */
91
97
  dataItems: import('vue').PropType<any[] | import('@progress/kendo-data-query').DataResult>;
92
98
  sortable: import('vue').PropType<import('.').GridSortSettings>;
93
99
  defaultSort: import('vue').PropType<import('@progress/kendo-data-query').SortDescriptor[]>;
@@ -102,6 +108,11 @@ export declare const RootGrid: import('vue').DefineComponent<import('vue').Extra
102
108
  };
103
109
  loader: import('vue').PropType<string | Object | Function>;
104
110
  lockGroups: import('vue').PropType<boolean>;
111
+ pinnable: import('vue').PropType<boolean>;
112
+ defaultPinnedTopRows: import('vue').PropType<any[]>;
113
+ defaultPinnedBottomRows: import('vue').PropType<any[]>;
114
+ pinnedTopRows: import('vue').PropType<any[]>;
115
+ pinnedBottomRows: import('vue').PropType<any[]>;
105
116
  defaultFilter: import('vue').PropType<import('@progress/kendo-data-query').CompositeFilterDescriptor>;
106
117
  filter: import('vue').PropType<import('@progress/kendo-data-query').CompositeFilterDescriptor>;
107
118
  defaultSearch: import('vue').PropType<import('@progress/kendo-data-query').CompositeFilterDescriptor>;
@@ -238,6 +249,7 @@ export declare const RootGrid: import('vue').DefineComponent<import('vue').Extra
238
249
  }>, void, {}, {
239
250
  columnsWithTemplates(): any[];
240
251
  cellsWithTemplates(): any;
252
+ rowsWithTemplates(): any;
241
253
  }, {
242
254
  transformTemplate(template: any, listeners: any): any;
243
255
  transformGroupTemplates(group: any, listeners: any): {
@@ -262,6 +274,12 @@ export declare const RootGrid: import('vue').DefineComponent<import('vue').Extra
262
274
  date: any;
263
275
  };
264
276
  };
277
+ transformRowTemplates(rows: any, listeners: any): {
278
+ groupHeader: any;
279
+ data: any;
280
+ groupFooter: any;
281
+ pinnedData: any;
282
+ };
265
283
  }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
266
284
  id: import('vue').PropType<string>;
267
285
  autoProcessData: import('vue').PropType<boolean | {
@@ -291,11 +309,17 @@ export declare const RootGrid: import('vue').DefineComponent<import('vue').Extra
291
309
  default: () => any;
292
310
  };
293
311
  cells: import('vue').PropType<import('.').GridCellsSettings>;
312
+ rows: import('vue').PropType<import('./interfaces/GridRowsSettings').GridRowsSettings>;
294
313
  defaultColumnsState: {
295
314
  type: import('vue').PropType<import('.').GridColumnState[]>;
296
315
  default: () => any;
297
316
  };
298
317
  columnVirtualization: import('vue').PropType<boolean>;
318
+ /**
319
+ * Method to fit columns according to their content.
320
+ *
321
+ * @param columnIds - Array of column ids to be fitted.
322
+ */
299
323
  dataItems: import('vue').PropType<any[] | import('@progress/kendo-data-query').DataResult>;
300
324
  sortable: import('vue').PropType<import('.').GridSortSettings>;
301
325
  defaultSort: import('vue').PropType<import('@progress/kendo-data-query').SortDescriptor[]>;
@@ -310,6 +334,11 @@ export declare const RootGrid: import('vue').DefineComponent<import('vue').Extra
310
334
  };
311
335
  loader: import('vue').PropType<string | Object | Function>;
312
336
  lockGroups: import('vue').PropType<boolean>;
337
+ pinnable: import('vue').PropType<boolean>;
338
+ defaultPinnedTopRows: import('vue').PropType<any[]>;
339
+ defaultPinnedBottomRows: import('vue').PropType<any[]>;
340
+ pinnedTopRows: import('vue').PropType<any[]>;
341
+ pinnedBottomRows: import('vue').PropType<any[]>;
313
342
  defaultFilter: import('vue').PropType<import('@progress/kendo-data-query').CompositeFilterDescriptor>;
314
343
  filter: import('vue').PropType<import('@progress/kendo-data-query').CompositeFilterDescriptor>;
315
344
  defaultSearch: import('vue').PropType<import('@progress/kendo-data-query').CompositeFilterDescriptor>;
package/RootGrid.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("vue"),g=require("./Grid.js"),C=require("./GridState.js"),G=require("./common.js"),n=require("@progress/kendo-vue-common"),O=i.defineComponent({name:"KendoVueGrid",props:G.gridProps,setup(e,{expose:t}){const r=i.ref(null);t({get element(){var a;return((a=r.value)==null?void 0:a.element)||null},get props(){return e},get columns(){var a;return((a=r.value)==null?void 0:a.columns)||[]},scrollIntoView:a=>{var s;(s=r.value)==null||s.scrollIntoView(a)},fitColumns:a=>{var s;(s=r.value)==null||s.fitColumns(a)},exportAsPdf:()=>{var a;(a=r.value)==null||a.exportAsPdf()}})},methods:{transformTemplate(e,t){return e?n.templateRendering.call(this,e,t):void 0},transformGroupTemplates(e,t){if(e)return{groupHeader:this.transformTemplate(e.groupHeader,t),data:this.transformTemplate(e.data,t),groupFooter:this.transformTemplate(e.groupFooter,t)}},transformCellTemplates(e,t){if(e)return{headerCell:this.transformTemplate(e.headerCell,t),filterCell:this.transformTemplate(e.filterCell,t),footerCell:this.transformTemplate(e.footerCell,t),groupHeader:this.transformTemplate(e.groupHeader,t),data:this.transformTemplate(e.data,t),groupFooter:this.transformTemplate(e.groupFooter,t),select:this.transformGroupTemplates(e.select,t),hierarchy:this.transformGroupTemplates(e.hierarchy,t),group:this.transformGroupTemplates(e.group,t),edit:e.edit?{text:this.transformTemplate(e.edit.text,t),numeric:this.transformTemplate(e.edit.numeric,t),boolean:this.transformTemplate(e.edit.boolean,t),date:this.transformTemplate(e.edit.date,t)}:void 0}}},computed:{columnsWithTemplates(){const e=n.getListeners.call(this);return n.mapTree(this.$props.columns||[],"children",t=>{const r={...t};return{...r,cell:this.transformTemplate(r.cell,e),headerCell:this.transformTemplate(r.headerCell,e),filterCell:this.transformTemplate(r.filterCell,e),footerCell:this.transformTemplate(r.footerCell,e),columnMenu:r.columnMenu===!1?!1:this.transformTemplate(r.columnMenu,e),cells:this.transformCellTemplates(r.cells,e)}})},cellsWithTemplates(){const e=n.getListeners.call(this);return this.transformCellTemplates(this.$props.cells,e)}},render(){const e=n.getDefaultSlots(this)||[],t=n.getListeners.call(this),r=e.filter(o=>{var l,m;return o.tag&&o.tag.toLowerCase().indexOf("toolbar")!==-1||o.componentOptions&&((l=o.componentOptions.tag)==null?void 0:l.toLowerCase().indexOf("toolbar"))!==-1||((m=o==null?void 0:o.type)==null?void 0:m.name.toLowerCase().indexOf("toolbar"))!==-1}),a=e.filter(o=>{var l,m;return o.tag&&o.tag.toLowerCase().indexOf("records")!==-1||o.componentOptions&&((l=o.componentOptions.tag)==null?void 0:l.toLowerCase().indexOf("records"))!==-1||((m=o==null?void 0:o.type)==null?void 0:m.name.toLowerCase().indexOf("records"))!==-1}),{cellRender:s,detail:u,columns:w,rowRender:f,pager:d,loader:h,...p}=this.$props,c=this.columnsWithTemplates,T=this.cellsWithTemplates;return i.createVNode(C.GridStateProvider,p,{default:()=>[i.createVNode(g.Grid,i.mergeProps(p,t,{class:this.$attrs.class,style:this.$attrs.style,columns:c,cells:T,cellRender:this.transformTemplate(s,t),rowRender:this.transformTemplate(f,t),pager:this.transformTemplate(d,t),loader:this.transformTemplate(h,t),detail:this.transformTemplate(u,t),toolbar:r,noRecords:a}),null)]})}});exports.RootGrid=O;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("vue"),C=require("./Grid.js"),w=require("./GridState.js"),R=require("./common.js"),n=require("@progress/kendo-vue-common"),G=p.defineComponent({name:"KendoVueGrid",props:R.gridProps,setup(e,{expose:t}){const r=p.ref(null);t({get element(){var a;return((a=r.value)==null?void 0:a.element)||null},get props(){return e},get columns(){var a;return((a=r.value)==null?void 0:a.columns)||[]},scrollIntoView:a=>{var s;(s=r.value)==null||s.scrollIntoView(a)},fitColumns:a=>{var s;(s=r.value)==null||s.fitColumns(a)},exportAsPdf:()=>{var a;(a=r.value)==null||a.exportAsPdf()}})},methods:{transformTemplate(e,t){return e?n.templateRendering.call(this,e,t):void 0},transformGroupTemplates(e,t){if(e)return{groupHeader:this.transformTemplate(e.groupHeader,t),data:this.transformTemplate(e.data,t),groupFooter:this.transformTemplate(e.groupFooter,t)}},transformCellTemplates(e,t){if(e)return{headerCell:this.transformTemplate(e.headerCell,t),filterCell:this.transformTemplate(e.filterCell,t),footerCell:this.transformTemplate(e.footerCell,t),groupHeader:this.transformTemplate(e.groupHeader,t),data:this.transformTemplate(e.data,t),groupFooter:this.transformTemplate(e.groupFooter,t),select:this.transformGroupTemplates(e.select,t),hierarchy:this.transformGroupTemplates(e.hierarchy,t),group:this.transformGroupTemplates(e.group,t),edit:e.edit?{text:this.transformTemplate(e.edit.text,t),numeric:this.transformTemplate(e.edit.numeric,t),boolean:this.transformTemplate(e.edit.boolean,t),date:this.transformTemplate(e.edit.date,t)}:void 0}},transformRowTemplates(e,t){if(e)return{groupHeader:this.transformTemplate(e.groupHeader,t),data:this.transformTemplate(e.data,t),groupFooter:this.transformTemplate(e.groupFooter,t),pinnedData:this.transformTemplate(e.pinnedData,t)}}},computed:{columnsWithTemplates(){const e=n.getListeners.call(this);return n.mapTree(this.$props.columns||[],"children",t=>{const r={...t};return{...r,cell:this.transformTemplate(r.cell,e),headerCell:this.transformTemplate(r.headerCell,e),filterCell:this.transformTemplate(r.filterCell,e),footerCell:this.transformTemplate(r.footerCell,e),columnMenu:r.columnMenu===!1?!1:this.transformTemplate(r.columnMenu,e),cells:this.transformCellTemplates(r.cells,e)}})},cellsWithTemplates(){const e=n.getListeners.call(this);return this.transformCellTemplates(this.$props.cells,e)},rowsWithTemplates(){const e=n.getListeners.call(this);return this.transformRowTemplates(this.$props.rows,e)}},render(){const e=n.getDefaultSlots(this)||[],t=n.getListeners.call(this),r=e.filter(o=>{var m,l;return o.tag&&o.tag.toLowerCase().indexOf("toolbar")!==-1||o.componentOptions&&((m=o.componentOptions.tag)==null?void 0:m.toLowerCase().indexOf("toolbar"))!==-1||((l=o==null?void 0:o.type)==null?void 0:l.name.toLowerCase().indexOf("toolbar"))!==-1}),a=e.filter(o=>{var m,l;return o.tag&&o.tag.toLowerCase().indexOf("records")!==-1||o.componentOptions&&((m=o.componentOptions.tag)==null?void 0:m.toLowerCase().indexOf("records"))!==-1||((l=o==null?void 0:o.type)==null?void 0:l.name.toLowerCase().indexOf("records"))!==-1}),{cellRender:s,detail:u,columns:O,rowRender:f,pager:d,loader:h,rows:x,...i}=this.$props,T=this.columnsWithTemplates,c=this.cellsWithTemplates,g=this.rowsWithTemplates;return p.createVNode(w.GridStateProvider,i,{default:()=>[p.createVNode(C.Grid,p.mergeProps(i,t,{class:this.$attrs.class,style:this.$attrs.style,columns:T,cells:c,rows:g,cellRender:this.transformTemplate(s,t),rowRender:this.transformTemplate(f,t),pager:this.transformTemplate(d,t),loader:this.transformTemplate(h,t),detail:this.transformTemplate(u,t),toolbar:r,noRecords:a}),null)]})}});exports.RootGrid=G;
package/RootGrid.mjs CHANGED
@@ -5,14 +5,14 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { defineComponent as g, createVNode as i, mergeProps as C, ref as x } from "vue";
9
- import { Grid as w } from "./Grid.mjs";
8
+ import { defineComponent as C, createVNode as i, mergeProps as w, ref as x } from "vue";
9
+ import { Grid as R } from "./Grid.mjs";
10
10
  import { GridStateProvider as O } from "./GridState.mjs";
11
- import { gridProps as R } from "./common.mjs";
11
+ import { gridProps as W } from "./common.mjs";
12
12
  import { getDefaultSlots as G, getListeners as l, mapTree as b, templateRendering as L } from "@progress/kendo-vue-common";
13
- const H = /* @__PURE__ */ g({
13
+ const D = /* @__PURE__ */ C({
14
14
  name: "KendoVueGrid",
15
- props: R,
15
+ props: W,
16
16
  setup(e, {
17
17
  expose: t
18
18
  }) {
@@ -74,6 +74,15 @@ const H = /* @__PURE__ */ g({
74
74
  date: this.transformTemplate(e.edit.date, t)
75
75
  } : void 0
76
76
  };
77
+ },
78
+ transformRowTemplates(e, t) {
79
+ if (e)
80
+ return {
81
+ groupHeader: this.transformTemplate(e.groupHeader, t),
82
+ data: this.transformTemplate(e.data, t),
83
+ groupFooter: this.transformTemplate(e.groupFooter, t),
84
+ pinnedData: this.transformTemplate(e.pinnedData, t)
85
+ };
77
86
  }
78
87
  },
79
88
  computed: {
@@ -97,6 +106,10 @@ const H = /* @__PURE__ */ g({
97
106
  cellsWithTemplates() {
98
107
  const e = l.call(this);
99
108
  return this.transformCellTemplates(this.$props.cells, e);
109
+ },
110
+ rowsWithTemplates() {
111
+ const e = l.call(this);
112
+ return this.transformRowTemplates(this.$props.rows, e);
100
113
  }
101
114
  },
102
115
  render() {
@@ -113,14 +126,16 @@ const H = /* @__PURE__ */ g({
113
126
  rowRender: u,
114
127
  pager: d,
115
128
  loader: h,
129
+ rows: v,
116
130
  ...p
117
- } = this.$props, T = this.columnsWithTemplates, c = this.cellsWithTemplates;
131
+ } = this.$props, T = this.columnsWithTemplates, c = this.cellsWithTemplates, g = this.rowsWithTemplates;
118
132
  return i(O, p, {
119
- default: () => [i(w, C(p, t, {
133
+ default: () => [i(R, w(p, t, {
120
134
  class: this.$attrs.class,
121
135
  style: this.$attrs.style,
122
136
  columns: T,
123
137
  cells: c,
138
+ rows: g,
124
139
  cellRender: this.transformTemplate(s, t),
125
140
  rowRender: this.transformTemplate(u, t),
126
141
  pager: this.transformTemplate(d, t),
@@ -133,5 +148,5 @@ const H = /* @__PURE__ */ g({
133
148
  }
134
149
  });
135
150
  export {
136
- H as RootGrid
151
+ D as RootGrid
137
152
  };
@@ -54,6 +54,7 @@ declare const GridCell: import('vue').DefineComponent<import('vue').ExtractPropT
54
54
  value?: any;
55
55
  }) => void>;
56
56
  onSelectionchange: PropType<(event: any, dataItem: any) => void>;
57
+ cells: PropType<import('../interfaces/GridCellsSettings').GridCellsSettings>;
57
58
  }>, {
58
59
  kendoIntlService: {};
59
60
  }, {}, {
@@ -119,6 +120,7 @@ declare const GridCell: import('vue').DefineComponent<import('vue').ExtractPropT
119
120
  value?: any;
120
121
  }) => void>;
121
122
  onSelectionchange: PropType<(event: any, dataItem: any) => void>;
123
+ cells: PropType<import('../interfaces/GridCellsSettings').GridCellsSettings>;
122
124
  }>> & Readonly<{
123
125
  onCellkeydown?: (...args: any[] | unknown[]) => any;
124
126
  onCellclick?: (...args: any[] | unknown[]) => any;
package/cells/GridCell.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),c=require("../utils/main.js"),g=require("@progress/kendo-vue-intl"),p=require("@progress/kendo-vue-common"),o=require("@progress/kendo-vue-data-tools"),h=n.defineComponent({name:"GridCell",inheritAttrs:!1,emits:{cellclick:null,cellkeydown:null},props:{id:String,field:String,dataItem:Object,format:String,readFormat:String,className:String,columnType:String,colSpan:Number,columnIndex:Number,columnsCount:Number,dataIndex:Number,rowType:String,level:Number,expanded:Boolean,type:String,editor:String,rowSpan:[Number,Object],isSelected:Boolean,isHighlighted:Boolean,ariaColumnIndex:Number,render:[String,Function,Object],isRtl:Boolean,onEdit:Function,onSave:Function,onRemove:Function,onCancel:Function,onChange:Function,onSelectionchange:Function},inject:{kendoIntlService:{default:null},getKeyboardNavigationAttributes:{default:p.noop}},methods:{triggerClick(){this.$emit("cellclick",{dataItem:this.$props.dataItem,field:this.$props.field})},triggerKeydown(e){this.$emit("cellkeydown",{event:e,dataItem:this.$props.dataItem,field:this.$props.field})},triggerEdit(e){this.$emit("edit",e)},triggerAdd(e){this.$emit("add",e)},triggerCancel(e){this.$emit("cancel",e)},triggerSave(e){this.$emit("save",e)},triggerRemove(e){this.$emit("remove",e)}},created(){this._intl=g.provideIntlService(this)},computed:{tdClass(){const{className:e,isSelected:t,isHighlighted:i}=this.$props;return{"k-table-td":!0,"k-selected":t,"k-highlighted":i,[e]:e}}},setup(){return{kendoIntlService:n.inject("kendoIntlService",{})}},render(){var s,a,d;let e=null;const t=this.getKeyboardNavigationAttributes(this.$props.id);let i={};if(((s=this.$props.rowSpan)==null?void 0:s.count)===null)return null;if(this.$props.rowType==="groupFooter")i={class:this.tdClass,onKeydown:this.triggerKeydown,onClick:this.triggerClick,tabindex:t.tabIndex,"data-keyboardnavlevel":t[o.KEYBOARD_NAV_DATA_LEVEL],"data-keyboardnavid":t[o.KEYBOARD_NAV_DATA_ID]},e=n.createVNode("td",i,null);else if(this.$props.field!==void 0&&this.$props.rowType!=="groupHeader"){const r=c.getNestedValue(this.$props.field,this.$props.dataItem);let l="";r!=null&&(l=this.$props.format?this.$props.type?this._intl.format(this.$props.format,c.parsers[this.$props.type](r,this._intl,this.$props.readFormat)):this._intl.format(this.$props.format,r):r.toString()),i={style:this.$attrs.style,colspan:this.$props.colSpan,rowspan:(d=(a=this.$props.rowSpan)==null?void 0:a.count)!=null?d:void 0,class:this.tdClass,onKeydown:this.triggerKeydown,onClick:this.triggerClick,role:"gridcell","aria-colindex":this.$props.ariaColumnIndex,"aria-selected":this.$props.isSelected,"data-grid-col-index":this.$props.columnIndex,tabindex:t.tabIndex,"data-keyboardnavlevel":t[o.KEYBOARD_NAV_DATA_LEVEL],"data-keyboardnavid":t[o.KEYBOARD_NAV_DATA_ID]},e=n.createVNode("td",i,[l])}return p.getTemplate.call(this,{h:n.h,template:this.$props.render,defaultRendering:e,additionalProps:{...this.$props,tdProps:i},additionalListeners:{click:this.triggerClick,keydown:this.triggerKeydown,edit:this.triggerEdit,add:this.triggerAdd,cancel:this.triggerCancel,save:this.triggerSave,remove:this.triggerRemove}})}});exports.GridCell=h;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("vue"),p=require("../utils/main.js"),h=require("@progress/kendo-vue-intl"),g=require("@progress/kendo-vue-common"),s=require("@progress/kendo-vue-data-tools"),u=r.defineComponent({name:"GridCell",inheritAttrs:!1,emits:{cellclick:null,cellkeydown:null},props:{id:String,field:String,dataItem:Object,format:String,readFormat:String,className:String,columnType:String,colSpan:Number,columnIndex:Number,columnsCount:Number,dataIndex:Number,rowType:String,level:Number,expanded:Boolean,type:String,editor:String,rowSpan:[Number,Object],isSelected:Boolean,isHighlighted:Boolean,ariaColumnIndex:Number,render:[String,Function,Object],isRtl:Boolean,onEdit:Function,onSave:Function,onRemove:Function,onCancel:Function,onChange:Function,onSelectionchange:Function,cells:Object},inject:{kendoIntlService:{default:null},getKeyboardNavigationAttributes:{default:g.noop}},methods:{triggerClick(){this.$emit("cellclick",{dataItem:this.$props.dataItem,field:this.$props.field})},triggerKeydown(e){this.$emit("cellkeydown",{event:e,dataItem:this.$props.dataItem,field:this.$props.field})},triggerEdit(e){this.$emit("edit",e)},triggerAdd(e){this.$emit("add",e)},triggerCancel(e){this.$emit("cancel",e)},triggerSave(e){this.$emit("save",e)},triggerRemove(e){this.$emit("remove",e)}},created(){this._intl=h.provideIntlService(this)},computed:{tdClass(){const{className:e,isSelected:t,isHighlighted:i}=this.$props;return{"k-table-td":!0,"k-selected":t,"k-highlighted":i,[e]:e}}},setup(){return{kendoIntlService:r.inject("kendoIntlService",{})}},render(){var l,a,d;let e=null;const t=this.getKeyboardNavigationAttributes(this.$props.id);let i={},o=null;if(((l=this.$props.rowSpan)==null?void 0:l.count)===null)return null;if(this.$props.rowType==="groupFooter")i={class:this.tdClass,tabindex:t.tabIndex,"data-keyboardnavlevel":t[s.KEYBOARD_NAV_DATA_LEVEL],"data-keyboardnavid":t[s.KEYBOARD_NAV_DATA_ID]},e=r.createVNode("td",r.mergeProps(i,{onKeydown:this.triggerKeydown,onClick:this.triggerClick}),[o]);else if(this.$props.field!==void 0&&this.$props.rowType!=="groupHeader"){const n=p.getNestedValue(this.$props.field,this.$props.dataItem);let c="";n!=null&&(c=this.$props.format?this.$props.type?this._intl.format(this.$props.format,p.parsers[this.$props.type](n,this._intl,this.$props.readFormat)):this._intl.format(this.$props.format,n):n.toString()),i={style:this.$attrs.style,colspan:this.$props.colSpan,rowspan:(d=(a=this.$props.rowSpan)==null?void 0:a.count)!=null?d:void 0,class:this.tdClass,role:"gridcell","aria-colindex":this.$props.ariaColumnIndex,"aria-selected":this.$props.isSelected,"data-grid-col-index":this.$props.columnIndex,tabindex:t.tabIndex,"data-keyboardnavlevel":t[s.KEYBOARD_NAV_DATA_LEVEL],"data-keyboardnavid":t[s.KEYBOARD_NAV_DATA_ID]},o=c,e=r.createVNode("td",r.mergeProps(i,{onKeydown:this.triggerKeydown,onClick:this.triggerClick}),[o])}return g.getTemplate.call(this,{h:r.h,template:this.$props.render,defaultRendering:e,additionalProps:{...this.$props,tdProps:i},additionalListeners:{click:this.triggerClick,keydown:this.triggerKeydown,edit:this.triggerEdit,add:this.triggerAdd,cancel:this.triggerCancel,save:this.triggerSave,remove:this.triggerRemove},defaultSlots:o,swapDefaultSlots:!0})}});exports.GridCell=u;
@@ -5,12 +5,12 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { defineComponent as c, createVNode as d, h as g, inject as h } from "vue";
9
- import { getNestedValue as m, parsers as u } from "../utils/main.mjs";
10
- import { provideIntlService as $ } from "@progress/kendo-vue-intl";
11
- import { noop as f, getTemplate as S } from "@progress/kendo-vue-common";
12
- import { KEYBOARD_NAV_DATA_ID as l, KEYBOARD_NAV_DATA_LEVEL as p } from "@progress/kendo-vue-data-tools";
13
- const I = /* @__PURE__ */ c({
8
+ import { defineComponent as h, createVNode as d, mergeProps as p, h as m, inject as u } from "vue";
9
+ import { getNestedValue as f, parsers as $ } from "../utils/main.mjs";
10
+ import { provideIntlService as S } from "@progress/kendo-vue-intl";
11
+ import { noop as v, getTemplate as b } from "@progress/kendo-vue-common";
12
+ import { KEYBOARD_NAV_DATA_ID as c, KEYBOARD_NAV_DATA_LEVEL as g } from "@progress/kendo-vue-data-tools";
13
+ const A = /* @__PURE__ */ h({
14
14
  name: "GridCell",
15
15
  inheritAttrs: !1,
16
16
  emits: {
@@ -45,14 +45,15 @@ const I = /* @__PURE__ */ c({
45
45
  onRemove: Function,
46
46
  onCancel: Function,
47
47
  onChange: Function,
48
- onSelectionchange: Function
48
+ onSelectionchange: Function,
49
+ cells: Object
49
50
  },
50
51
  inject: {
51
52
  kendoIntlService: {
52
53
  default: null
53
54
  },
54
55
  getKeyboardNavigationAttributes: {
55
- default: f
56
+ default: v
56
57
  }
57
58
  },
58
59
  methods: {
@@ -86,7 +87,7 @@ const I = /* @__PURE__ */ c({
86
87
  }
87
88
  },
88
89
  created() {
89
- this._intl = $(this);
90
+ this._intl = S(this);
90
91
  },
91
92
  computed: {
92
93
  tdClass() {
@@ -105,46 +106,48 @@ const I = /* @__PURE__ */ c({
105
106
  },
106
107
  setup() {
107
108
  return {
108
- kendoIntlService: h("kendoIntlService", {})
109
+ kendoIntlService: u("kendoIntlService", {})
109
110
  };
110
111
  },
111
112
  render() {
112
- var n, o, s;
113
+ var o, s, l;
113
114
  let e = null;
114
115
  const t = this.getKeyboardNavigationAttributes(this.$props.id);
115
- let i = {};
116
- if (((n = this.$props.rowSpan) == null ? void 0 : n.count) === null)
116
+ let i = {}, n = null;
117
+ if (((o = this.$props.rowSpan) == null ? void 0 : o.count) === null)
117
118
  return null;
118
119
  if (this.$props.rowType === "groupFooter")
119
120
  i = {
120
121
  class: this.tdClass,
121
- onKeydown: this.triggerKeydown,
122
- onClick: this.triggerClick,
123
122
  tabindex: t.tabIndex,
124
- "data-keyboardnavlevel": t[p],
125
- "data-keyboardnavid": t[l]
126
- }, e = d("td", i, null);
123
+ "data-keyboardnavlevel": t[g],
124
+ "data-keyboardnavid": t[c]
125
+ }, e = d("td", p(i, {
126
+ onKeydown: this.triggerKeydown,
127
+ onClick: this.triggerClick
128
+ }), [n]);
127
129
  else if (this.$props.field !== void 0 && this.$props.rowType !== "groupHeader") {
128
- const r = m(this.$props.field, this.$props.dataItem);
130
+ const r = f(this.$props.field, this.$props.dataItem);
129
131
  let a = "";
130
- r != null && (a = this.$props.format ? this.$props.type ? this._intl.format(this.$props.format, u[this.$props.type](r, this._intl, this.$props.readFormat)) : this._intl.format(this.$props.format, r) : r.toString()), i = {
132
+ r != null && (a = this.$props.format ? this.$props.type ? this._intl.format(this.$props.format, $[this.$props.type](r, this._intl, this.$props.readFormat)) : this._intl.format(this.$props.format, r) : r.toString()), i = {
131
133
  style: this.$attrs.style,
132
134
  colspan: this.$props.colSpan,
133
- rowspan: (s = (o = this.$props.rowSpan) == null ? void 0 : o.count) != null ? s : void 0,
135
+ rowspan: (l = (s = this.$props.rowSpan) == null ? void 0 : s.count) != null ? l : void 0,
134
136
  class: this.tdClass,
135
- onKeydown: this.triggerKeydown,
136
- onClick: this.triggerClick,
137
137
  role: "gridcell",
138
138
  "aria-colindex": this.$props.ariaColumnIndex,
139
139
  "aria-selected": this.$props.isSelected,
140
140
  "data-grid-col-index": this.$props.columnIndex,
141
141
  tabindex: t.tabIndex,
142
- "data-keyboardnavlevel": t[p],
143
- "data-keyboardnavid": t[l]
144
- }, e = d("td", i, [a]);
142
+ "data-keyboardnavlevel": t[g],
143
+ "data-keyboardnavid": t[c]
144
+ }, n = a, e = d("td", p(i, {
145
+ onKeydown: this.triggerKeydown,
146
+ onClick: this.triggerClick
147
+ }), [n]);
145
148
  }
146
- return S.call(this, {
147
- h: g,
149
+ return b.call(this, {
150
+ h: m,
148
151
  template: this.$props.render,
149
152
  defaultRendering: e,
150
153
  additionalProps: {
@@ -159,10 +162,12 @@ const I = /* @__PURE__ */ c({
159
162
  cancel: this.triggerCancel,
160
163
  save: this.triggerSave,
161
164
  remove: this.triggerRemove
162
- }
165
+ },
166
+ defaultSlots: n,
167
+ swapDefaultSlots: !0
163
168
  });
164
169
  }
165
170
  });
166
171
  export {
167
- I as GridCell
172
+ A as GridCell
168
173
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),n=require("@progress/kendo-vue-common"),r=require("@progress/kendo-vue-data-tools"),u=e.defineComponent({props:{colSpan:Number,ariaColIndex:Number,dataItem:[Object,String,Number],dataIndex:Number,detail:[String,Function,Object],id:String},inject:{getKeyboardNavigationAttributes:{default:n.noop}},setup(){return{kendoIntlService:e.inject("kendoIntlService",{})}},render(){const{colSpan:a,ariaColIndex:i,dataItem:d,dataIndex:o,id:l}=this.$props,t=this.getKeyboardNavigationAttributes(l),c=function(s){return n.getTemplate.call(this,{h:e.h,template:this.$props.detail,additionalProps:s})};return e.createVNode("td",{class:"k-table-td k-detail-cell",colspan:a,"aria-colindex":i,role:"gridcell",tabindex:t.tabIndex,"data-keyboardnavlevel":t[r.KEYBOARD_NAV_DATA_LEVEL],"data-keyboardnavid":t[r.KEYBOARD_NAV_DATA_ID]},[c.call(this,{dataItem:d,dataIndex:o})])}});exports.GridDetailCell=u;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),n=require("@progress/kendo-vue-common"),o=require("@progress/kendo-vue-data-tools"),b=e.defineComponent({props:{colSpan:Number,ariaColIndex:Number,dataItem:[Object,String,Number],dataIndex:Number,detail:[String,Function,Object],id:String},inject:{getKeyboardNavigationAttributes:{default:n.noop}},setup(){return{kendoIntlService:e.inject("kendoIntlService",{})}},render(){const{colSpan:a,ariaColIndex:r,dataItem:d,dataIndex:i,id:l}=this.$props,t=this.getKeyboardNavigationAttributes(l),c={class:"k-table-td k-detail-cell",colspan:a,"aria-colindex":r,role:"gridcell",tabindex:t.tabIndex,"data-keyboardnavlevel":t[o.KEYBOARD_NAV_DATA_LEVEL],"data-keyboardnavid":t[o.KEYBOARD_NAV_DATA_ID]},s=function(u){return n.getTemplate.call(this,{h:e.h,template:this.$props.detail,additionalProps:u})}.call(this,{dataItem:d,dataIndex:i});return e.createVNode("td",c,[s])}});exports.GridDetailCell=b;