@progress/kendo-react-grid 15.1.0-develop.1 → 15.1.0-develop.10
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/GridClientWrapper.js +1 -1
- package/GridClientWrapper.mjs +411 -407
- package/GridComponent.js +1 -1
- package/GridComponent.mjs +305 -290
- package/VirtualScroll.d.ts +4 -0
- package/VirtualScroll.js +1 -1
- package/VirtualScroll.mjs +32 -27
- package/cells/groupcell/useGroupCellClientTdProps.js +1 -1
- package/cells/groupcell/useGroupCellClientTdProps.mjs +7 -7
- package/cells/hierarchycell/GridHierarchyCellToggle.js +1 -1
- package/cells/hierarchycell/GridHierarchyCellToggle.mjs +15 -15
- package/columnMenu/GridColumnMenuWrapper.js +1 -1
- package/columnMenu/GridColumnMenuWrapper.mjs +118 -82
- package/components/GridEditDialog.js +1 -1
- package/components/GridEditDialog.mjs +19 -19
- package/components/VirtualScrollOverlay.d.ts +12 -0
- package/components/VirtualScrollOverlay.js +16 -0
- package/components/VirtualScrollOverlay.mjs +65 -0
- package/components/noRecords/GridNoRecordsContainer.js +1 -1
- package/components/noRecords/GridNoRecordsContainer.mjs +10 -9
- package/dist/cdn/js/kendo-react-grid.js +1 -1
- package/drag/ColumnResize.js +1 -1
- package/drag/ColumnResize.mjs +84 -84
- package/getRowContents.js +1 -1
- package/getRowContents.mjs +12 -12
- package/index.d.mts +2 -1
- package/index.d.ts +2 -1
- package/interfaces/GridProps.d.ts +2 -1
- package/interfaces/GridScrollableSettings.d.ts +33 -0
- package/interfaces/VirtualScrollInterface.d.ts +2 -0
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +2 -2
- package/package.json +17 -17
- package/toolbar-tools/GridToolbarColumnsChooser.js +1 -1
- package/toolbar-tools/GridToolbarColumnsChooser.mjs +33 -33
- package/toolbar-tools/GridToolbarFilter.js +1 -1
- package/toolbar-tools/GridToolbarFilter.mjs +207 -194
- package/toolbar-tools/GridToolbarSort.js +1 -1
- package/toolbar-tools/GridToolbarSort.mjs +84 -101
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarFilter.js +1 -1
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarFilter.mjs +50 -46
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.d.ts +0 -1
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.js +1 -1
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.mjs +10 -19
- package/utils/index.js +1 -1
- package/utils/index.mjs +161 -161
package/drag/ColumnResize.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 p=require("../utils/index.js"),
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("../utils/index.js"),W=1,x=20;class S{constructor(a){this.columns=[],this.columnsState=[],this.resizable=!1,this.isRtl=!1,this.setIsRtl=c=>{this.isRtl=c},this.initWidths=()=>{var l;const c=((l=this.colGroupMain)==null?void 0:l.children)||[],o=p.getFlatColumnsState(this.columnsState),n=this.columns.filter(e=>{var r;return!((r=e.children)!=null&&r.length)});for(let e=0;e<c.length;e++){const r=n[e];let t="";const i=o.find(d=>d.id===n[e].id);i&&(t=this.applyWidthConstraints(i,r)),this.colGroups.forEach(d=>{d.children[e].width=t})}},this.dragHandler=(c,o,n,l)=>{const e=c.originalEvent;l||(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation());const r=n.closest("th");if(!r)return;const t=r.clientWidth;let i=t;if(this.isRtl?i+=n.getBoundingClientRect().right-n.offsetWidth/2-c.clientX:i+=c.clientX-n.getBoundingClientRect().left-n.offsetWidth/2,!l&&Math.abs(i-t)<1)return;this.fixateInitialWidths(r.parentElement.clientWidth),this.setWidths(o,Math.floor(i)/t);const d=this.columns.filter(s=>!s.children.length).findIndex(s=>s.id===o.id);this.onResize(d,t,i,e,l,this.columnsState,o.id)},this.dblClickHandler=(c,o)=>{const n=this.columns.filter(h=>o.indexOf(h.id)>-1),l=p.getFlatColumnsState(this.columnsState);if(!this.colGroupMain||!n.length)return;const e={},r=n;for(;r.length>0;){const h=r.pop();if(!h)break;h.children.length?r.push(...h.children):e[h.id]=h}const t=this.columns.filter(h=>!h.children.length),i=[];t.forEach((h,u)=>{e[h.id]&&i.push(u)});const d=this.colGroups,s=d.map(h=>h.parentElement);s.forEach(h=>h.classList.add("k-autofitting"));const f=[];d.forEach(h=>{i.forEach(u=>{h.children[u]&&(h.children[u].width="",f[u]=Math.max(f[u]||0,h.children[u].offsetWidth+W))})}),d.forEach(h=>{i.forEach(u=>{if(h.children[u]){h.children[u].width=f[u]+"px";const g=l.find(m=>m.id===t[u].id);g&&(g.width=f[u])}})}),s.forEach(h=>h.classList.remove("k-autofitting")),this.onResize(i[0],0,0,c,!0,this.columnsState,o[0])},this.updateColElements=c=>{const o=this.columns.filter(l=>!l.hidden&&!l.children.length);let n=1e-10;for(let l=0;l<c.length;l++){const e=c[l],r=o.findIndex(f=>f.id===e.id),t=parseFloat((e.width||0).toString()),i=Math.floor(t);n+=t-i;const d=i+Math.floor(n);n-=Math.floor(n);const s=o.find(f=>f.id===e.id);if(!s)return;this.colGroups.forEach(f=>{if(f.children[r]){const h=parseInt(f.children[r].width,10);f.children[r].width=d+"px",this.updateNextLockedCol(f.parentElement,s,h-d)}})}},this.onResize=a}get colGroups(){return[this.colGroupMain,this.colGroupHeader,this.colGroupFooter,this.colGroupStickyHeader,this.colGroupStickyFooter,this.colGroupPinnedTop,this.colGroupPinnedBottom].filter(Boolean)}applyWidthConstraints(a,c,o=1){if(!a.width)return a.width||"";const n=a.width.toString();if(n.includes("%")){const f=parseFloat(n)*o,h=Math.max(0,Math.min(100,f));return a.width=h+"%",a.width}let e=parseFloat(n)*o;const r=c.minResizableWidth===void 0?10:c.minResizableWidth,t=c.minWidth,i=t!==void 0?Math.max(r,t):r,d=c.maxWidth;return e<i&&(e=i),d!==void 0&&e>d&&(e=d),a.width=e,e}fixateInitialWidths(a){var r;let c=0;const o=((r=this.colGroupMain)==null?void 0:r.children)||[];for(let t=0;t<o.length;t++)o[t].width?a-=o[t].clientWidth:c++;if(c===0)return;const n=Math.floor(a/c),l=p.getFlatColumnsState(this.columnsState),e=this.columns.filter(t=>!t.children.length);for(let t=0;t<o.length;t++){const i=o[t],d=i.width?i.clientWidth:n,s=l.find(f=>f.id===e[t].id);s&&(s.width=d.toString()),this.colGroups.forEach(f=>{f.children[t].width=d})}}setWidths(a,c){const o=p.getFlatColumnsState(this.columnsState),n=this.columns.findIndex(t=>t.id===a.id),l=[];let e=a.children.filter(t=>!t.hidden).length;for(let t=n+1;t<this.columns.length&&!(e<=0);t++){const i=this.columns[t];i.children.length?e+=i.children.filter(d=>!d.hidden).length:l.push(i),e--}l.length===0&&l.push(a);const r=[];l.forEach(t=>{const i=o.find(d=>d.id===t.id);i&&(this.applyWidthConstraints(i,t,c),r.push(i))}),this.updateColElements(r)}updateNextLockedCol(a,c,o){const n=c.index,l=this.colGroupMain.parentElement.closest(".k-grid"),e=l==null?void 0:l.clientWidth,r=this.columns.filter(t=>t.locked).map(t=>parseInt(t.width+"",10)).reduce((t,i)=>t+i,0);!c.locked||e<=r+x||this.columns.forEach(t=>{if(t!=null&&t.locked&&o){const i=a==null?void 0:a.querySelectorAll('[aria-colindex="'+t.ariaColumnIndex+'"]');i==null||i.forEach(d=>{const s=d.style;this.isRtl?(t.index>n&&s&&s.right&&(s.right=parseInt(s.right,10)-o+"px"),t.index<n&&s&&s.left&&(s.left=parseInt(s.left,10)-o+"px")):(t.index>n&&s&&s.left&&(s.left=parseInt(s.left,10)-o+"px"),t.index<n&&s&&s.right&&(s.right=parseInt(s.right,10)-o+"px"))})}})}}exports.ColumnResize=S;
|
package/drag/ColumnResize.mjs
CHANGED
|
@@ -5,88 +5,88 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
import { getFlatColumnsState as
|
|
9
|
-
const
|
|
8
|
+
import { getFlatColumnsState as p } from "../utils/index.mjs";
|
|
9
|
+
const W = 1, x = 20;
|
|
10
10
|
class S {
|
|
11
11
|
constructor(a) {
|
|
12
|
-
this.columns = [], this.columnsState = [], this.resizable = !1, this.isRtl = !1, this.setIsRtl = (
|
|
13
|
-
this.isRtl =
|
|
12
|
+
this.columns = [], this.columnsState = [], this.resizable = !1, this.isRtl = !1, this.setIsRtl = (c) => {
|
|
13
|
+
this.isRtl = c;
|
|
14
14
|
}, this.initWidths = () => {
|
|
15
|
-
var
|
|
16
|
-
const
|
|
15
|
+
var l;
|
|
16
|
+
const c = ((l = this.colGroupMain) == null ? void 0 : l.children) || [], o = p(this.columnsState), n = this.columns.filter((e) => {
|
|
17
17
|
var r;
|
|
18
18
|
return !((r = e.children) != null && r.length);
|
|
19
19
|
});
|
|
20
|
-
for (let e = 0; e <
|
|
21
|
-
const r =
|
|
20
|
+
for (let e = 0; e < c.length; e++) {
|
|
21
|
+
const r = n[e];
|
|
22
22
|
let t = "";
|
|
23
|
-
const i =
|
|
23
|
+
const i = o.find((d) => d.id === n[e].id);
|
|
24
24
|
i && (t = this.applyWidthConstraints(i, r)), this.colGroups.forEach((d) => {
|
|
25
25
|
d.children[e].width = t;
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
|
-
}, this.dragHandler = (
|
|
29
|
-
const e =
|
|
30
|
-
|
|
31
|
-
const r =
|
|
32
|
-
if (!r
|
|
28
|
+
}, this.dragHandler = (c, o, n, l) => {
|
|
29
|
+
const e = c.originalEvent;
|
|
30
|
+
l || (e.preventDefault(), e.stopPropagation(), e.stopImmediatePropagation());
|
|
31
|
+
const r = n.closest("th");
|
|
32
|
+
if (!r)
|
|
33
33
|
return;
|
|
34
34
|
const t = r.clientWidth;
|
|
35
35
|
let i = t;
|
|
36
|
-
if (this.isRtl ? i +=
|
|
36
|
+
if (this.isRtl ? i += n.getBoundingClientRect().right - n.offsetWidth / 2 - c.clientX : i += c.clientX - n.getBoundingClientRect().left - n.offsetWidth / 2, !l && Math.abs(i - t) < 1)
|
|
37
37
|
return;
|
|
38
|
-
this.fixateInitialWidths(r.parentElement.clientWidth), this.setWidths(
|
|
39
|
-
const d = this.columns.filter((
|
|
40
|
-
this.onResize(d, t, i, e,
|
|
41
|
-
}, this.dblClickHandler = (
|
|
42
|
-
const
|
|
43
|
-
if (!this.colGroupMain || !
|
|
38
|
+
this.fixateInitialWidths(r.parentElement.clientWidth), this.setWidths(o, Math.floor(i) / t);
|
|
39
|
+
const d = this.columns.filter((s) => !s.children.length).findIndex((s) => s.id === o.id);
|
|
40
|
+
this.onResize(d, t, i, e, l, this.columnsState, o.id);
|
|
41
|
+
}, this.dblClickHandler = (c, o) => {
|
|
42
|
+
const n = this.columns.filter((h) => o.indexOf(h.id) > -1), l = p(this.columnsState);
|
|
43
|
+
if (!this.colGroupMain || !n.length)
|
|
44
44
|
return;
|
|
45
|
-
const e = {}, r =
|
|
45
|
+
const e = {}, r = n;
|
|
46
46
|
for (; r.length > 0; ) {
|
|
47
|
-
const
|
|
48
|
-
if (!
|
|
47
|
+
const h = r.pop();
|
|
48
|
+
if (!h)
|
|
49
49
|
break;
|
|
50
|
-
|
|
50
|
+
h.children.length ? r.push(...h.children) : e[h.id] = h;
|
|
51
51
|
}
|
|
52
|
-
const t = this.columns.filter((
|
|
53
|
-
t.forEach((
|
|
54
|
-
e[
|
|
52
|
+
const t = this.columns.filter((h) => !h.children.length), i = [];
|
|
53
|
+
t.forEach((h, u) => {
|
|
54
|
+
e[h.id] && i.push(u);
|
|
55
55
|
});
|
|
56
|
-
const d = this.colGroups,
|
|
57
|
-
|
|
56
|
+
const d = this.colGroups, s = d.map((h) => h.parentElement);
|
|
57
|
+
s.forEach((h) => h.classList.add("k-autofitting"));
|
|
58
58
|
const f = [];
|
|
59
|
-
d.forEach((
|
|
60
|
-
i.forEach((
|
|
61
|
-
|
|
62
|
-
f[
|
|
63
|
-
|
|
59
|
+
d.forEach((h) => {
|
|
60
|
+
i.forEach((u) => {
|
|
61
|
+
h.children[u] && (h.children[u].width = "", f[u] = Math.max(
|
|
62
|
+
f[u] || 0,
|
|
63
|
+
h.children[u].offsetWidth + W
|
|
64
64
|
));
|
|
65
65
|
});
|
|
66
|
-
}), d.forEach((
|
|
67
|
-
i.forEach((
|
|
68
|
-
if (
|
|
69
|
-
|
|
70
|
-
const g =
|
|
71
|
-
g && (g.width = f[
|
|
66
|
+
}), d.forEach((h) => {
|
|
67
|
+
i.forEach((u) => {
|
|
68
|
+
if (h.children[u]) {
|
|
69
|
+
h.children[u].width = f[u] + "px";
|
|
70
|
+
const g = l.find((m) => m.id === t[u].id);
|
|
71
|
+
g && (g.width = f[u]);
|
|
72
72
|
}
|
|
73
73
|
});
|
|
74
|
-
}),
|
|
75
|
-
}, this.updateColElements = (
|
|
76
|
-
const
|
|
77
|
-
let
|
|
78
|
-
for (let
|
|
79
|
-
const e =
|
|
80
|
-
|
|
81
|
-
const d = i + Math.floor(
|
|
82
|
-
|
|
83
|
-
const
|
|
84
|
-
if (!
|
|
74
|
+
}), s.forEach((h) => h.classList.remove("k-autofitting")), this.onResize(i[0], 0, 0, c, !0, this.columnsState, o[0]);
|
|
75
|
+
}, this.updateColElements = (c) => {
|
|
76
|
+
const o = this.columns.filter((l) => !l.hidden && !l.children.length);
|
|
77
|
+
let n = 1e-10;
|
|
78
|
+
for (let l = 0; l < c.length; l++) {
|
|
79
|
+
const e = c[l], r = o.findIndex((f) => f.id === e.id), t = parseFloat((e.width || 0).toString()), i = Math.floor(t);
|
|
80
|
+
n += t - i;
|
|
81
|
+
const d = i + Math.floor(n);
|
|
82
|
+
n -= Math.floor(n);
|
|
83
|
+
const s = o.find((f) => f.id === e.id);
|
|
84
|
+
if (!s)
|
|
85
85
|
return;
|
|
86
86
|
this.colGroups.forEach((f) => {
|
|
87
87
|
if (f.children[r]) {
|
|
88
|
-
const
|
|
89
|
-
f.children[r].width = d + "px", this.updateNextLockedCol(f.parentElement,
|
|
88
|
+
const h = parseInt(f.children[r].width, 10);
|
|
89
|
+
f.children[r].width = d + "px", this.updateNextLockedCol(f.parentElement, s, h - d);
|
|
90
90
|
}
|
|
91
91
|
});
|
|
92
92
|
}
|
|
@@ -103,56 +103,56 @@ class S {
|
|
|
103
103
|
this.colGroupPinnedBottom
|
|
104
104
|
].filter(Boolean);
|
|
105
105
|
}
|
|
106
|
-
applyWidthConstraints(a,
|
|
106
|
+
applyWidthConstraints(a, c, o = 1) {
|
|
107
107
|
if (!a.width)
|
|
108
108
|
return a.width || "";
|
|
109
|
-
const
|
|
110
|
-
if (
|
|
111
|
-
const f = parseFloat(
|
|
112
|
-
return a.width =
|
|
109
|
+
const n = a.width.toString();
|
|
110
|
+
if (n.includes("%")) {
|
|
111
|
+
const f = parseFloat(n) * o, h = Math.max(0, Math.min(100, f));
|
|
112
|
+
return a.width = h + "%", a.width;
|
|
113
113
|
}
|
|
114
|
-
let e = parseFloat(
|
|
115
|
-
const r =
|
|
114
|
+
let e = parseFloat(n) * o;
|
|
115
|
+
const r = c.minResizableWidth === void 0 ? 10 : c.minResizableWidth, t = c.minWidth, i = t !== void 0 ? Math.max(r, t) : r, d = c.maxWidth;
|
|
116
116
|
return e < i && (e = i), d !== void 0 && e > d && (e = d), a.width = e, e;
|
|
117
117
|
}
|
|
118
118
|
fixateInitialWidths(a) {
|
|
119
119
|
var r;
|
|
120
|
-
let
|
|
121
|
-
const
|
|
122
|
-
for (let t = 0; t <
|
|
123
|
-
|
|
124
|
-
if (
|
|
120
|
+
let c = 0;
|
|
121
|
+
const o = ((r = this.colGroupMain) == null ? void 0 : r.children) || [];
|
|
122
|
+
for (let t = 0; t < o.length; t++)
|
|
123
|
+
o[t].width ? a -= o[t].clientWidth : c++;
|
|
124
|
+
if (c === 0)
|
|
125
125
|
return;
|
|
126
|
-
const
|
|
127
|
-
for (let t = 0; t <
|
|
128
|
-
const i =
|
|
129
|
-
|
|
126
|
+
const n = Math.floor(a / c), l = p(this.columnsState), e = this.columns.filter((t) => !t.children.length);
|
|
127
|
+
for (let t = 0; t < o.length; t++) {
|
|
128
|
+
const i = o[t], d = i.width ? i.clientWidth : n, s = l.find((f) => f.id === e[t].id);
|
|
129
|
+
s && (s.width = d.toString()), this.colGroups.forEach((f) => {
|
|
130
130
|
f.children[t].width = d;
|
|
131
131
|
});
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
|
-
setWidths(a,
|
|
135
|
-
const
|
|
134
|
+
setWidths(a, c) {
|
|
135
|
+
const o = p(this.columnsState), n = this.columns.findIndex((t) => t.id === a.id), l = [];
|
|
136
136
|
let e = a.children.filter((t) => !t.hidden).length;
|
|
137
|
-
for (let t =
|
|
137
|
+
for (let t = n + 1; t < this.columns.length && !(e <= 0); t++) {
|
|
138
138
|
const i = this.columns[t];
|
|
139
|
-
i.children.length ? e += i.children.filter((d) => !d.hidden).length :
|
|
139
|
+
i.children.length ? e += i.children.filter((d) => !d.hidden).length : l.push(i), e--;
|
|
140
140
|
}
|
|
141
|
-
|
|
141
|
+
l.length === 0 && l.push(a);
|
|
142
142
|
const r = [];
|
|
143
|
-
|
|
144
|
-
const i =
|
|
145
|
-
i && (this.applyWidthConstraints(i, t,
|
|
143
|
+
l.forEach((t) => {
|
|
144
|
+
const i = o.find((d) => d.id === t.id);
|
|
145
|
+
i && (this.applyWidthConstraints(i, t, c), r.push(i));
|
|
146
146
|
}), this.updateColElements(r);
|
|
147
147
|
}
|
|
148
|
-
updateNextLockedCol(a,
|
|
149
|
-
const
|
|
150
|
-
!
|
|
151
|
-
if (t != null && t.locked &&
|
|
148
|
+
updateNextLockedCol(a, c, o) {
|
|
149
|
+
const n = c.index, l = this.colGroupMain.parentElement.closest(".k-grid"), e = l == null ? void 0 : l.clientWidth, r = this.columns.filter((t) => t.locked).map((t) => parseInt(t.width + "", 10)).reduce((t, i) => t + i, 0);
|
|
150
|
+
!c.locked || e <= r + x || this.columns.forEach((t) => {
|
|
151
|
+
if (t != null && t.locked && o) {
|
|
152
152
|
const i = a == null ? void 0 : a.querySelectorAll('[aria-colindex="' + t.ariaColumnIndex + '"]');
|
|
153
153
|
i == null || i.forEach((d) => {
|
|
154
|
-
const
|
|
155
|
-
this.isRtl ? (t.index >
|
|
154
|
+
const s = d.style;
|
|
155
|
+
this.isRtl ? (t.index > n && s && s.right && (s.right = parseInt(s.right, 10) - o + "px"), t.index < n && s && s.left && (s.left = parseInt(s.left, 10) - o + "px")) : (t.index > n && s && s.left && (s.left = parseInt(s.left, 10) - o + "px"), t.index < n && s && s.right && (s.right = parseInt(s.right, 10) - o + "px"));
|
|
156
156
|
});
|
|
157
157
|
}
|
|
158
158
|
});
|
package/getRowContents.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 U=require("react"),s=require("@progress/kendo-react-common"),W=require("@progress/kendo-react-data-tools"),G=require("./utils/index.js"),X=require("./cells/datacell/GridCell.js"),Y=require("./cells/datacell/GridCellServer.js"),Z=require("./cells/editcell/GridEditCell.js"),ee=require("./cells/editcell/GridEditCellServer.js");function te(l){const d=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(l){for(const t in l)if(t!=="default"){const g=Object.getOwnPropertyDescriptor(l,t);Object.defineProperty(d,t,g.get?g:{enumerable:!0,get:()=>l[t]})}}return d.default=l,Object.freeze(d)}const le=te(U);function oe(l,d,t,g,O,q,i){const{leafColumns:C,columnsState:R,idPrefix:_,gridClasses:A,unstyled:D,localization:N,intl:P,cells:j,isRowReorderable:x,sort:H,editable:K,isClient:v,isEditDialog:V,dataItemKey:o,select:b,highlight:S}=l;let T=!1;const c=b&&o&&s.getter(o)(t.dataItem)!==void 0?b[s.getter(o)(t.dataItem)]:void 0,f=S&&o&&s.getter(o)(t.dataItem)!==void 0?S[s.getter(o)(t.dataItem)]:void 0;return{row:(l.hasDynamicColSpan?l.getCellsToRender(t.dataItem):l.cellsToRender).map(({columnIndex:a,colSpan:z})=>{var h,I,k,
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const U=require("react"),s=require("@progress/kendo-react-common"),W=require("@progress/kendo-react-data-tools"),G=require("./utils/index.js"),X=require("./cells/datacell/GridCell.js"),Y=require("./cells/datacell/GridCellServer.js"),Z=require("./cells/editcell/GridEditCell.js"),ee=require("./cells/editcell/GridEditCellServer.js");function te(l){const d=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(l){for(const t in l)if(t!=="default"){const g=Object.getOwnPropertyDescriptor(l,t);Object.defineProperty(d,t,g.get?g:{enumerable:!0,get:()=>l[t]})}}return d.default=l,Object.freeze(d)}const le=te(U);function oe(l,d,t,g,O,q,i){const{leafColumns:C,columnsState:R,idPrefix:_,gridClasses:A,unstyled:D,localization:N,intl:P,cells:j,isRowReorderable:x,sort:H,editable:K,isClient:v,isEditDialog:V,dataItemKey:o,select:b,highlight:S}=l;let T=!1;const c=b&&o&&s.getter(o)(t.dataItem)!==void 0?b[s.getter(o)(t.dataItem)]:void 0,f=S&&o&&s.getter(o)(t.dataItem)!==void 0?S[s.getter(o)(t.dataItem)]:void 0;return{row:(l.hasDynamicColSpan?l.getCellsToRender(t.dataItem):l.cellsToRender).map(({columnIndex:a,colSpan:z})=>{var m,h,I,k,E,w;const e=C[a],y=R[a],B=(h=(m=e.locked)!=null?m:y==null?void 0:y.locked)!=null?h:!1;let u;if((I=e.rowSpannable)!=null&&I.enabled&&t.rowType==="data"&&e.field&&i){const r=e.field?(E=(k=e.rowSpannable).valueGetter)==null?void 0:E.call(k,t.dataItem,e.field):null;u={value:r,count:1},i[e.field]&&((w=i[e.field])==null?void 0:w.value)===r&&i[e.field]!==null?(i[e.field].count++,u.count=null):i[e.field]=u}const M=e.id?e.id:a,$=s.classNames(A.contentSticky({locked:B}),e.className),F=e.left!==void 0?{left:e.left,right:e.right}:{};let p=!1;if(e.editable&&K){const r=d&&o?d[s.getter(o)(t.dataItem)]:void 0;let n;typeof r=="boolean"?n=r:Array.isArray(r)?n=e.field?r.indexOf(e.field)>-1:!1:n=e.field!==void 0&&r===e.field,n&&e.columnType==="data"&&(n===!0||n===e.field)&&(T=!0,V||(p=!0))}const L=e._type==="expand",J={locked:e.locked,id:W.tableKeyboardNavigationTools.generateNavigatableId(`${g}-${String(a)}`,_,L||t.rowType==="groupHeader"||t.rowType==="groupFooter"||e.field==="value"?"nodata":"cell"),colSpan:z,dataItem:t.dataItem,field:e.field,editor:e.editor,format:e.format,columnType:e.columnType,rowReorderable:x,className:$,cells:G.resolveCells(j,e.cells),columnIndex:a,columnsCount:C.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:O,columnPosition:F,style:{},ariaColumnIndex:e.ariaColumnIndex,isSelected:!!(e._type==="edit"?c:Array.isArray(c)&&c.indexOf(a)>-1),isHighlighted:!!(e._type==="edit"?f:Array.isArray(f)&&f.indexOf(a)>-1),isSorted:!!G.isSorted(e.field,H),isInEdit:p,isAlt:q,unstyled:D,group:t.group,localization:N,intl:P,_rowSpan:u},Q=e.defaultCell||p&&(v?Z.GridEditCell:ee.GridEditCellServer)||(v?X.GridCell:Y.GridCellServer);return le.createElement(Q,{key:M,cellProps:J})}),isInEdit:T,isSelected:typeof c=="boolean"&&c,isHighlighted:typeof f=="boolean"&&f}}exports.getRowContents=oe;
|
package/getRowContents.mjs
CHANGED
|
@@ -33,22 +33,22 @@ function ce(c, y, l, w, A, G, a) {
|
|
|
33
33
|
highlight: C
|
|
34
34
|
} = c;
|
|
35
35
|
let h = !1;
|
|
36
|
-
const d = v && t && f(t)(l.dataItem) !== void 0 ? v[f(t)(l.dataItem)] : void 0,
|
|
36
|
+
const d = v && t && f(t)(l.dataItem) !== void 0 ? v[f(t)(l.dataItem)] : void 0, n = C && t && f(t)(l.dataItem) !== void 0 ? C[f(t)(l.dataItem)] : void 0;
|
|
37
37
|
return {
|
|
38
38
|
row: (c.hasDynamicColSpan ? c.getCellsToRender(l.dataItem) : c.cellsToRender).map(({ columnIndex: i, colSpan: $ }) => {
|
|
39
39
|
var b, I, S, T, k, E;
|
|
40
|
-
const e = g[i],
|
|
41
|
-
let
|
|
40
|
+
const e = g[i], u = N[i], z = (I = (b = e.locked) != null ? b : u == null ? void 0 : u.locked) != null ? I : !1;
|
|
41
|
+
let s;
|
|
42
42
|
if ((S = e.rowSpannable) != null && S.enabled && l.rowType === "data" && e.field && a) {
|
|
43
43
|
const o = e.field ? (k = (T = e.rowSpannable).valueGetter) == null ? void 0 : k.call(T, l.dataItem, e.field) : null;
|
|
44
|
-
|
|
44
|
+
s = { value: o, count: 1 }, a[e.field] && ((E = a[e.field]) == null ? void 0 : E.value) === o && a[e.field] !== null ? (a[e.field].count++, s.count = null) : a[e.field] = s;
|
|
45
45
|
}
|
|
46
46
|
const F = e.id ? e.id : i, L = U(_.contentSticky({ locked: z }), e.className), j = e.left !== void 0 ? { left: e.left, right: e.right } : {};
|
|
47
|
-
let
|
|
47
|
+
let p = !1;
|
|
48
48
|
if (e.editable && V) {
|
|
49
49
|
const o = y && t ? y[f(t)(l.dataItem)] : void 0;
|
|
50
50
|
let r;
|
|
51
|
-
typeof o == "boolean" ? r = o : Array.isArray(o) ? r = e.field ? o.indexOf(e.field) > -1 : !1 : r = e.field !== void 0 && o === e.field, r && e.columnType === "data" && (r === !0 || r === e.field) && (h = !0, B || (
|
|
51
|
+
typeof o == "boolean" ? r = o : Array.isArray(o) ? r = e.field ? o.indexOf(e.field) > -1 : !1 : r = e.field !== void 0 && o === e.field, r && e.columnType === "data" && (r === !0 || r === e.field) && (h = !0, B || (p = !0));
|
|
52
52
|
}
|
|
53
53
|
const q = e._type === "expand", J = {
|
|
54
54
|
locked: e.locked,
|
|
@@ -76,22 +76,22 @@ function ce(c, y, l, w, A, G, a) {
|
|
|
76
76
|
columnPosition: j,
|
|
77
77
|
style: {},
|
|
78
78
|
ariaColumnIndex: e.ariaColumnIndex,
|
|
79
|
-
isSelected: !!(
|
|
80
|
-
isHighlighted: !!(
|
|
79
|
+
isSelected: !!(e._type === "edit" ? d : Array.isArray(d) && d.indexOf(i) > -1),
|
|
80
|
+
isHighlighted: !!(e._type === "edit" ? n : Array.isArray(n) && n.indexOf(i) > -1),
|
|
81
81
|
isSorted: !!X(e.field, R),
|
|
82
|
-
isInEdit:
|
|
82
|
+
isInEdit: p,
|
|
83
83
|
isAlt: G,
|
|
84
84
|
unstyled: D,
|
|
85
85
|
group: l.group,
|
|
86
86
|
localization: H,
|
|
87
87
|
intl: K,
|
|
88
|
-
_rowSpan:
|
|
89
|
-
}, M = e.defaultCell ||
|
|
88
|
+
_rowSpan: s
|
|
89
|
+
}, M = e.defaultCell || p && (m ? le : te) || (m ? Z : ee);
|
|
90
90
|
return /* @__PURE__ */ Q.createElement(M, { key: F, cellProps: J });
|
|
91
91
|
}),
|
|
92
92
|
isInEdit: h,
|
|
93
93
|
isSelected: typeof d == "boolean" && d,
|
|
94
|
-
isHighlighted: typeof
|
|
94
|
+
isHighlighted: typeof n == "boolean" && n
|
|
95
95
|
};
|
|
96
96
|
}
|
|
97
97
|
export {
|
package/index.d.mts
CHANGED
|
@@ -63,6 +63,7 @@ import { GridAIPrompt, GridAIPromptProps } from './toolbar-tools/ai-tool/GridAIP
|
|
|
63
63
|
import { GridNoRecords } from './components/noRecords/GridNoRecords.js';
|
|
64
64
|
import { GridNoRecordsProps } from './interfaces/GridNoRecordsProps';
|
|
65
65
|
import { GridSortSettings } from './interfaces/GridSortSettings';
|
|
66
|
+
import { GridScrollableSettings } from './interfaces/GridScrollableSettings';
|
|
66
67
|
import { GridPagerSettings } from './paging/GridPagerSettings.js';
|
|
67
68
|
import { GridGroupableSettings } from './interfaces/GridGroupableSettings';
|
|
68
69
|
import { GridColumnMenuItem } from './columnMenu/GridColumnMenuItem.js';
|
|
@@ -94,6 +95,6 @@ export * from './GridSearchBox.js';
|
|
|
94
95
|
export * from './GridPdfExportButton.js';
|
|
95
96
|
export * from './GridCsvExportButton.js';
|
|
96
97
|
export * from './toolbar-tools/smartbox/index.js';
|
|
97
|
-
export { CompositeHighlightDescriptor, Grid, GridHandle, GridHighlightDescriptor, GridProps, GridColumn, GridColumnProps, GridColSpanProps, GridEditDialogProps, GridColumnChildrenProps, GridCellProps, GridColumnType, GridRowReorderEvent, GridDataType, GridRowReorderSettings, GridCell, GridEditCell, GridGroupCell, GridHierarchyCell, GridDetailRow, GridDetailRowProps, GridRow, GridRowProps, GridFilterCell, GridFilterCellProps, GridHeaderCell, GridHeaderCellProps, GridSelectionCell, GridColumnMenuProps, GridReorderDropPosition, GridColumnMenuSort, GridColumnMenuFilter, GridColumnMenuGroup, GridColumnMenuItem, GridColumnMenuItemContent, GridColumnMenuItemGroup, GridColumnMenuFilterUI, GridColumnMenuFilterUIProps, GridColumnMenuFilterCell, GridColumnMenuFilterCellProps, GridColumnMenuCheckboxFilter, GridColumnMenuCheckboxFilterProps, GridColumnMenuColumnsList, GridColumnMenuColumnsListProps, GridColumnMenuColumnsChooser, GridColumnMenuColumnsChooserProps, GridColumnMenuColumnProps, GridColumnState, GridRowType, GridToolbar, GridToolbarProps, GridToolbarAIAssistant, GridToolbarAIAssistantHandle, GridToolbarAIAssistantProps, GridToolbarAIAssistantRequestData, GridAIAssistantCommand, GridAICommands, GridAIPrompt, GridAIPromptProps, GridToolbarSpacer, GridToolbarSpacerProps, GridToolbarSeparator, GridToolbarSeparatorProps, GridToolbarCheckboxFilter, GridToolbarCheckboxFilterProps, GridToolbarColumnsChooser, GridToolbarColumnsChooserProps, GridToolbarFilter, GridToolbarFilterProps, GridToolbarSort, GridToolbarSortProps, GridToolbarGroup, GridToolbarGroupProps, GridNoRecords, GridNoRecordsProps, GridSortSettings, GridPagerSettings, GridGroupableSettings, GridFooterCellProps, GridSelectableMode, GridSelectableSettings, GridFilterOperators, GridFilterOperator, GridColumnMenuWrapper, GridColumnMenuWrapperProps, getSelectedState, setSelectedState, getSelectedStateFromKeyDown, GRID_COL_INDEX_ATTRIBUTE, GRID_ROW_INDEX_ATTRIBUTE, GRID_PREVENT_SELECTION_ELEMENT, GridCommonDragLogic, rootFilterOrDefault, filterGroupByField, isColumnMenuSortActive, isColumnMenuFilterActive, GridColumnMenuFilterProps, cellBoolDropdownChange, cellInputChange, cellOperatorChange, booleanFilterValues, operators, combineSmartFilters, parseFilterDates, GridRowSpannableSettings, handleAIResponse, GridAIState, GridAIResponseResult, GridCSVExportOptions, useGridAIRequest, GridAIRequestData, UseGridAIRequestOptions, UseGridAIRequestReturn, GridRowPinChangeEvent, GridWebMcpProps, GridWebMcpToolsCallback, GridWebMcpToolsHelpers, McpToolOption, GridAIRequestConfig, GridAIResponse, GridAIHttpClient, createAxiosAIClient };
|
|
98
|
+
export { CompositeHighlightDescriptor, Grid, GridHandle, GridHighlightDescriptor, GridProps, GridColumn, GridColumnProps, GridColSpanProps, GridEditDialogProps, GridColumnChildrenProps, GridCellProps, GridColumnType, GridRowReorderEvent, GridDataType, GridRowReorderSettings, GridCell, GridEditCell, GridGroupCell, GridHierarchyCell, GridDetailRow, GridDetailRowProps, GridRow, GridRowProps, GridFilterCell, GridFilterCellProps, GridHeaderCell, GridHeaderCellProps, GridSelectionCell, GridColumnMenuProps, GridReorderDropPosition, GridColumnMenuSort, GridColumnMenuFilter, GridColumnMenuGroup, GridColumnMenuItem, GridColumnMenuItemContent, GridColumnMenuItemGroup, GridColumnMenuFilterUI, GridColumnMenuFilterUIProps, GridColumnMenuFilterCell, GridColumnMenuFilterCellProps, GridColumnMenuCheckboxFilter, GridColumnMenuCheckboxFilterProps, GridColumnMenuColumnsList, GridColumnMenuColumnsListProps, GridColumnMenuColumnsChooser, GridColumnMenuColumnsChooserProps, GridColumnMenuColumnProps, GridColumnState, GridRowType, GridToolbar, GridToolbarProps, GridToolbarAIAssistant, GridToolbarAIAssistantHandle, GridToolbarAIAssistantProps, GridToolbarAIAssistantRequestData, GridAIAssistantCommand, GridAICommands, GridAIPrompt, GridAIPromptProps, GridToolbarSpacer, GridToolbarSpacerProps, GridToolbarSeparator, GridToolbarSeparatorProps, GridToolbarCheckboxFilter, GridToolbarCheckboxFilterProps, GridToolbarColumnsChooser, GridToolbarColumnsChooserProps, GridToolbarFilter, GridToolbarFilterProps, GridToolbarSort, GridToolbarSortProps, GridToolbarGroup, GridToolbarGroupProps, GridNoRecords, GridNoRecordsProps, GridSortSettings, GridScrollableSettings, GridPagerSettings, GridGroupableSettings, GridFooterCellProps, GridSelectableMode, GridSelectableSettings, GridFilterOperators, GridFilterOperator, GridColumnMenuWrapper, GridColumnMenuWrapperProps, getSelectedState, setSelectedState, getSelectedStateFromKeyDown, GRID_COL_INDEX_ATTRIBUTE, GRID_ROW_INDEX_ATTRIBUTE, GRID_PREVENT_SELECTION_ELEMENT, GridCommonDragLogic, rootFilterOrDefault, filterGroupByField, isColumnMenuSortActive, isColumnMenuFilterActive, GridColumnMenuFilterProps, cellBoolDropdownChange, cellInputChange, cellOperatorChange, booleanFilterValues, operators, combineSmartFilters, parseFilterDates, GridRowSpannableSettings, handleAIResponse, GridAIState, GridAIResponseResult, GridCSVExportOptions, useGridAIRequest, GridAIRequestData, UseGridAIRequestOptions, UseGridAIRequestReturn, GridRowPinChangeEvent, GridWebMcpProps, GridWebMcpToolsCallback, GridWebMcpToolsHelpers, McpToolOption, GridAIRequestConfig, GridAIResponse, GridAIHttpClient, createAxiosAIClient };
|
|
98
99
|
export { GridPinCell, GridHeaderPinCell };
|
|
99
100
|
export * from './interfaces/GridStackedLayoutSettings';
|
package/index.d.ts
CHANGED
|
@@ -63,6 +63,7 @@ import { GridAIPrompt, GridAIPromptProps } from './toolbar-tools/ai-tool/GridAIP
|
|
|
63
63
|
import { GridNoRecords } from './components/noRecords/GridNoRecords.js';
|
|
64
64
|
import { GridNoRecordsProps } from './interfaces/GridNoRecordsProps';
|
|
65
65
|
import { GridSortSettings } from './interfaces/GridSortSettings';
|
|
66
|
+
import { GridScrollableSettings } from './interfaces/GridScrollableSettings';
|
|
66
67
|
import { GridPagerSettings } from './paging/GridPagerSettings.js';
|
|
67
68
|
import { GridGroupableSettings } from './interfaces/GridGroupableSettings';
|
|
68
69
|
import { GridColumnMenuItem } from './columnMenu/GridColumnMenuItem.js';
|
|
@@ -94,6 +95,6 @@ export * from './GridSearchBox.js';
|
|
|
94
95
|
export * from './GridPdfExportButton.js';
|
|
95
96
|
export * from './GridCsvExportButton.js';
|
|
96
97
|
export * from './toolbar-tools/smartbox/index.js';
|
|
97
|
-
export { CompositeHighlightDescriptor, Grid, GridHandle, GridHighlightDescriptor, GridProps, GridColumn, GridColumnProps, GridColSpanProps, GridEditDialogProps, GridColumnChildrenProps, GridCellProps, GridColumnType, GridRowReorderEvent, GridDataType, GridRowReorderSettings, GridCell, GridEditCell, GridGroupCell, GridHierarchyCell, GridDetailRow, GridDetailRowProps, GridRow, GridRowProps, GridFilterCell, GridFilterCellProps, GridHeaderCell, GridHeaderCellProps, GridSelectionCell, GridColumnMenuProps, GridReorderDropPosition, GridColumnMenuSort, GridColumnMenuFilter, GridColumnMenuGroup, GridColumnMenuItem, GridColumnMenuItemContent, GridColumnMenuItemGroup, GridColumnMenuFilterUI, GridColumnMenuFilterUIProps, GridColumnMenuFilterCell, GridColumnMenuFilterCellProps, GridColumnMenuCheckboxFilter, GridColumnMenuCheckboxFilterProps, GridColumnMenuColumnsList, GridColumnMenuColumnsListProps, GridColumnMenuColumnsChooser, GridColumnMenuColumnsChooserProps, GridColumnMenuColumnProps, GridColumnState, GridRowType, GridToolbar, GridToolbarProps, GridToolbarAIAssistant, GridToolbarAIAssistantHandle, GridToolbarAIAssistantProps, GridToolbarAIAssistantRequestData, GridAIAssistantCommand, GridAICommands, GridAIPrompt, GridAIPromptProps, GridToolbarSpacer, GridToolbarSpacerProps, GridToolbarSeparator, GridToolbarSeparatorProps, GridToolbarCheckboxFilter, GridToolbarCheckboxFilterProps, GridToolbarColumnsChooser, GridToolbarColumnsChooserProps, GridToolbarFilter, GridToolbarFilterProps, GridToolbarSort, GridToolbarSortProps, GridToolbarGroup, GridToolbarGroupProps, GridNoRecords, GridNoRecordsProps, GridSortSettings, GridPagerSettings, GridGroupableSettings, GridFooterCellProps, GridSelectableMode, GridSelectableSettings, GridFilterOperators, GridFilterOperator, GridColumnMenuWrapper, GridColumnMenuWrapperProps, getSelectedState, setSelectedState, getSelectedStateFromKeyDown, GRID_COL_INDEX_ATTRIBUTE, GRID_ROW_INDEX_ATTRIBUTE, GRID_PREVENT_SELECTION_ELEMENT, GridCommonDragLogic, rootFilterOrDefault, filterGroupByField, isColumnMenuSortActive, isColumnMenuFilterActive, GridColumnMenuFilterProps, cellBoolDropdownChange, cellInputChange, cellOperatorChange, booleanFilterValues, operators, combineSmartFilters, parseFilterDates, GridRowSpannableSettings, handleAIResponse, GridAIState, GridAIResponseResult, GridCSVExportOptions, useGridAIRequest, GridAIRequestData, UseGridAIRequestOptions, UseGridAIRequestReturn, GridRowPinChangeEvent, GridWebMcpProps, GridWebMcpToolsCallback, GridWebMcpToolsHelpers, McpToolOption, GridAIRequestConfig, GridAIResponse, GridAIHttpClient, createAxiosAIClient };
|
|
98
|
+
export { CompositeHighlightDescriptor, Grid, GridHandle, GridHighlightDescriptor, GridProps, GridColumn, GridColumnProps, GridColSpanProps, GridEditDialogProps, GridColumnChildrenProps, GridCellProps, GridColumnType, GridRowReorderEvent, GridDataType, GridRowReorderSettings, GridCell, GridEditCell, GridGroupCell, GridHierarchyCell, GridDetailRow, GridDetailRowProps, GridRow, GridRowProps, GridFilterCell, GridFilterCellProps, GridHeaderCell, GridHeaderCellProps, GridSelectionCell, GridColumnMenuProps, GridReorderDropPosition, GridColumnMenuSort, GridColumnMenuFilter, GridColumnMenuGroup, GridColumnMenuItem, GridColumnMenuItemContent, GridColumnMenuItemGroup, GridColumnMenuFilterUI, GridColumnMenuFilterUIProps, GridColumnMenuFilterCell, GridColumnMenuFilterCellProps, GridColumnMenuCheckboxFilter, GridColumnMenuCheckboxFilterProps, GridColumnMenuColumnsList, GridColumnMenuColumnsListProps, GridColumnMenuColumnsChooser, GridColumnMenuColumnsChooserProps, GridColumnMenuColumnProps, GridColumnState, GridRowType, GridToolbar, GridToolbarProps, GridToolbarAIAssistant, GridToolbarAIAssistantHandle, GridToolbarAIAssistantProps, GridToolbarAIAssistantRequestData, GridAIAssistantCommand, GridAICommands, GridAIPrompt, GridAIPromptProps, GridToolbarSpacer, GridToolbarSpacerProps, GridToolbarSeparator, GridToolbarSeparatorProps, GridToolbarCheckboxFilter, GridToolbarCheckboxFilterProps, GridToolbarColumnsChooser, GridToolbarColumnsChooserProps, GridToolbarFilter, GridToolbarFilterProps, GridToolbarSort, GridToolbarSortProps, GridToolbarGroup, GridToolbarGroupProps, GridNoRecords, GridNoRecordsProps, GridSortSettings, GridScrollableSettings, GridPagerSettings, GridGroupableSettings, GridFooterCellProps, GridSelectableMode, GridSelectableSettings, GridFilterOperators, GridFilterOperator, GridColumnMenuWrapper, GridColumnMenuWrapperProps, getSelectedState, setSelectedState, getSelectedStateFromKeyDown, GRID_COL_INDEX_ATTRIBUTE, GRID_ROW_INDEX_ATTRIBUTE, GRID_PREVENT_SELECTION_ELEMENT, GridCommonDragLogic, rootFilterOrDefault, filterGroupByField, isColumnMenuSortActive, isColumnMenuFilterActive, GridColumnMenuFilterProps, cellBoolDropdownChange, cellInputChange, cellOperatorChange, booleanFilterValues, operators, combineSmartFilters, parseFilterDates, GridRowSpannableSettings, handleAIResponse, GridAIState, GridAIResponseResult, GridCSVExportOptions, useGridAIRequest, GridAIRequestData, UseGridAIRequestOptions, UseGridAIRequestReturn, GridRowPinChangeEvent, GridWebMcpProps, GridWebMcpToolsCallback, GridWebMcpToolsHelpers, McpToolOption, GridAIRequestConfig, GridAIResponse, GridAIHttpClient, createAxiosAIClient };
|
|
98
99
|
export { GridPinCell, GridHeaderPinCell };
|
|
99
100
|
export * from './interfaces/GridStackedLayoutSettings';
|
|
@@ -12,6 +12,7 @@ import { GridGroupableSettings } from './GridGroupableSettings';
|
|
|
12
12
|
import { GridWebMcpProps } from '../GridWebMcpProps';
|
|
13
13
|
import { GridSortChangeEvent, GridFilterChangeEvent, GridPageChangeEvent, GridSelectionChangeEvent, GridHeaderSelectionChangeEvent, GridRowClickEvent, GridItemChangeEvent, GridDataStateChangeEvent, GridColumnResizeEvent, GridColumnReorderEvent, GridGroupChangeEvent, GridEvent, GridRowDoubleClickEvent, GridNavigationActionEvent, GridKeyDownEvent, GridContextMenuEvent, GridContextMenuItemClickEvent, GridEditChangeEvent, GridDetailExpandChangeEvent, GridGroupExpandChangeEvent, GridRowReorderEvent, GridSearchChangeEvent, GridColumnsStateChangeEvent, GridHighlightChangeEvent, GridRowPinChangeEvent } from './events';
|
|
14
14
|
import { ScrollMode } from '../ScrollMode';
|
|
15
|
+
import { GridScrollableSettings } from './GridScrollableSettings';
|
|
15
16
|
import { GridSortSettings } from './GridSortSettings';
|
|
16
17
|
import { GridPagerSettings } from '../paging/GridPagerSettings.js';
|
|
17
18
|
import { GridDetailRowProps } from '../interfaces/GridDetailRowProps';
|
|
@@ -807,7 +808,7 @@ export interface GridProps extends KendoReactComponentBaseProps {
|
|
|
807
808
|
* <Grid scrollable="virtual" />
|
|
808
809
|
* ```
|
|
809
810
|
*/
|
|
810
|
-
scrollable?: ScrollMode;
|
|
811
|
+
scrollable?: ScrollMode | GridScrollableSettings;
|
|
811
812
|
/**
|
|
812
813
|
* Defines the row height and forces an equal height to all rows ([see example](https://www.telerik.com/kendo-react-ui/components/grid/scroll-modes)).
|
|
813
814
|
*
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ScrollMode } from '../ScrollMode';
|
|
9
|
+
/**
|
|
10
|
+
* Defines the scrollable settings for the Grid.
|
|
11
|
+
*/
|
|
12
|
+
export interface GridScrollableSettings {
|
|
13
|
+
/**
|
|
14
|
+
* Specifies the scroll mode.
|
|
15
|
+
*
|
|
16
|
+
* The available options are:
|
|
17
|
+
* - `none`—Renders no scrollbar.
|
|
18
|
+
* - `scrollable`—Default scroll mode. Requires the `height` option.
|
|
19
|
+
* - `virtual`—Renders a portion of the data while the user scrolls.
|
|
20
|
+
*/
|
|
21
|
+
mode?: ScrollMode;
|
|
22
|
+
/**
|
|
23
|
+
* Controls the scrollbar rendering style.
|
|
24
|
+
*
|
|
25
|
+
* - `default`—Uses the native browser scrollbar (default).
|
|
26
|
+
* - `proxied`—Renders a custom overlay scrollbar on top of the content area.
|
|
27
|
+
* The overlay appears on hover or scroll and hides when idle,
|
|
28
|
+
* eliminating the white-space flash during virtual scrolling jumps.
|
|
29
|
+
*
|
|
30
|
+
* @default 'default'
|
|
31
|
+
*/
|
|
32
|
+
scrollbar?: 'default' | 'proxied';
|
|
33
|
+
}
|
|
@@ -23,7 +23,9 @@ export interface VirtualScrollInterface {
|
|
|
23
23
|
fixedScroll: boolean;
|
|
24
24
|
tableTransform: string;
|
|
25
25
|
rowHeightService?: RowHeightService;
|
|
26
|
+
scrollbarOverlaySpacerElement: HTMLDivElement | null;
|
|
26
27
|
reset: () => void;
|
|
27
28
|
scrollHandler(e: SyntheticEvent<HTMLDivElement>): void;
|
|
29
|
+
scrollToPosition(scrollTop: number, e: SyntheticEvent<HTMLDivElement>, deferTranslate?: boolean): void;
|
|
28
30
|
update(): void;
|
|
29
31
|
}
|
package/package-metadata.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 e=Object.freeze({name:"@progress/kendo-react-grid",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate:
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=Object.freeze({name:"@progress/kendo-react-grid",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate: 1783504177,version:"15.1.0-develop.10",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"});exports.packageMetadata=e;
|
package/package-metadata.mjs
CHANGED
|
@@ -7,7 +7,7 @@ export const packageMetadata = Object.freeze({
|
|
|
7
7
|
productName: 'KendoReact',
|
|
8
8
|
productCode: 'KENDOUIREACT',
|
|
9
9
|
productCodes: ['KENDOUIREACT'],
|
|
10
|
-
publishDate:
|
|
11
|
-
version: '15.1.0-develop.
|
|
10
|
+
publishDate: 1783504177,
|
|
11
|
+
version: '15.1.0-develop.10',
|
|
12
12
|
licensingDocsUrl: 'https://www.telerik.com/kendo-react-ui/components/my-license/'
|
|
13
13
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-react-grid",
|
|
3
|
-
"version": "15.1.0-develop.
|
|
3
|
+
"version": "15.1.0-develop.10",
|
|
4
4
|
"description": "React Data Grid (Table) provides 100+ ready-to-use data grid features. KendoReact Grid package",
|
|
5
5
|
"author": "Progress",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
@@ -30,21 +30,21 @@
|
|
|
30
30
|
"@progress/kendo-drawing": "^1.21.2",
|
|
31
31
|
"@progress/kendo-file-saver": "^1.1.1",
|
|
32
32
|
"@progress/kendo-licensing": "^1.7.2",
|
|
33
|
-
"@progress/kendo-react-animation": "15.1.0-develop.
|
|
34
|
-
"@progress/kendo-react-buttons": "15.1.0-develop.
|
|
35
|
-
"@progress/kendo-react-common": "15.1.0-develop.
|
|
36
|
-
"@progress/kendo-react-data-tools": "15.1.0-develop.
|
|
37
|
-
"@progress/kendo-react-dateinputs": "15.1.0-develop.
|
|
38
|
-
"@progress/kendo-react-indicators": "15.1.0-develop.
|
|
39
|
-
"@progress/kendo-react-form": "15.1.0-develop.
|
|
40
|
-
"@progress/kendo-react-labels": "15.1.0-develop.
|
|
41
|
-
"@progress/kendo-react-dialogs": "15.1.0-develop.
|
|
42
|
-
"@progress/kendo-react-dropdowns": "15.1.0-develop.
|
|
43
|
-
"@progress/kendo-react-inputs": "15.1.0-develop.
|
|
44
|
-
"@progress/kendo-react-intl": "15.1.0-develop.
|
|
45
|
-
"@progress/kendo-react-popup": "15.1.0-develop.
|
|
46
|
-
"@progress/kendo-react-layout": "15.1.0-develop.
|
|
47
|
-
"@progress/kendo-react-conversational-ui": "15.1.0-develop.
|
|
33
|
+
"@progress/kendo-react-animation": "15.1.0-develop.10",
|
|
34
|
+
"@progress/kendo-react-buttons": "15.1.0-develop.10",
|
|
35
|
+
"@progress/kendo-react-common": "15.1.0-develop.10",
|
|
36
|
+
"@progress/kendo-react-data-tools": "15.1.0-develop.10",
|
|
37
|
+
"@progress/kendo-react-dateinputs": "15.1.0-develop.10",
|
|
38
|
+
"@progress/kendo-react-indicators": "15.1.0-develop.10",
|
|
39
|
+
"@progress/kendo-react-form": "15.1.0-develop.10",
|
|
40
|
+
"@progress/kendo-react-labels": "15.1.0-develop.10",
|
|
41
|
+
"@progress/kendo-react-dialogs": "15.1.0-develop.10",
|
|
42
|
+
"@progress/kendo-react-dropdowns": "15.1.0-develop.10",
|
|
43
|
+
"@progress/kendo-react-inputs": "15.1.0-develop.10",
|
|
44
|
+
"@progress/kendo-react-intl": "15.1.0-develop.10",
|
|
45
|
+
"@progress/kendo-react-popup": "15.1.0-develop.10",
|
|
46
|
+
"@progress/kendo-react-layout": "15.1.0-develop.10",
|
|
47
|
+
"@progress/kendo-react-conversational-ui": "15.1.0-develop.10",
|
|
48
48
|
"@progress/kendo-svg-icons": "^4.9.0 || ^5.0.0",
|
|
49
49
|
"react": "^18.0.0 || ^19.0.0",
|
|
50
50
|
"react-dom": "^18.0.0 || ^19.0.0"
|
|
@@ -148,7 +148,7 @@
|
|
|
148
148
|
"package": {
|
|
149
149
|
"productName": "KendoReact",
|
|
150
150
|
"productCode": "KENDOUIREACT",
|
|
151
|
-
"publishDate":
|
|
151
|
+
"publishDate": 1783504177,
|
|
152
152
|
"licensingDocsUrl": "https://www.telerik.com/kendo-react-ui/components/my-license/"
|
|
153
153
|
}
|
|
154
154
|
},
|
|
@@ -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 le=require("react"),re=require("react-dom"),T=require("@progress/kendo-react-buttons"),f=require("@progress/kendo-react-common"),E=require("@progress/kendo-react-inputs"),
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),re=require("react-dom"),T=require("@progress/kendo-react-buttons"),f=require("@progress/kendo-react-common"),E=require("@progress/kendo-react-inputs"),K=require("@progress/kendo-svg-icons"),se=require("../columnMenu/GridColumnMenuItemContent.js"),l=require("../messages/index.js"),ce=require("../utils/GridContext.js"),ae=require("@progress/kendo-react-intl"),ue=require("./adaptiveContent/GridAdaptiveToolbarColumnChooser.js"),ie=require("@progress/kendo-react-popup"),_=require("@progress/kendo-react-indicators"),me=require("./adaptiveContext/GridToolbarAdaptiveContext.js");function de(r){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const n in r)if(n!=="default"){const s=Object.getOwnPropertyDescriptor(r,n);Object.defineProperty(c,n,s.get?s:{enumerable:!0,get:()=>r[n]})}}return c.default=r,Object.freeze(c)}const e=de(le),H=r=>{const c={};for(const n of r)c[n.id||""]=!n.hidden;return c},V=r=>{var z,F;const{onCloseMenu:c}=r,n=e.useContext(ce.GridContext),s=n.columnsState,M=n.onColumnsStateChange,b=s||[],[y,k]=e.useState(!1),[d,$]=e.useState(""),[w,p]=e.useState(!1),[a,S]=e.useState(()=>H(b)),W=e.useMemo(()=>b.map(t=>`${t.id}:${!!t.hidden}`).join(","),[b]),B=e.useMemo(()=>H(b),[W]);e.useEffect(()=>{w||S(B)},[w,B]);const i=e.useRef(null),R=e.useRef(null),q=e.useRef(null),A=e.useRef(0),m=ae.useLocalization(),J=f.useDocument(i),x=e.useMemo(()=>(s==null?void 0:s.filter(t=>{var o;return(o=t.title||t.field)==null?void 0:o.toLowerCase().includes(d.toLowerCase())}))||[],[s,d]),g=e.useMemo(()=>Object.values(a).filter(t=>t).length,[a]),C=e.useMemo(()=>g===(s==null?void 0:s.length),[s,g]),D=e.useCallback(t=>{t.preventDefault();const u=(h=>(h==null?void 0:h.map(v=>({...v,hidden:!a[v.id||""]})))||[])(s);M&&M(u),c==null||c(),k(!1),p(!1)},[s,M,c,a]),N=t=>{t.preventDefault(),S(B),p(!1)},G=e.useCallback(()=>{S(t=>{const o={...t};return Object.keys(o).forEach((h,v)=>o[h]=C&&v===0?!0:!C),o}),p(!0)},[C]),O=e.useCallback((t,o)=>{S(u=>({...u,[o||""]:t})),p(!0)},[]),L=t=>{$(String(t.target.value))},Q=t=>{t.preventDefault(),k(!y)},I=e.useMemo(()=>r.show!==void 0?r.show:y,[r.show,y]),P=()=>{var t;c&&c(),k(!1),i.current&&((t=i.current.element)==null||t.focus())},U=t=>{const o=f.getActiveElement(document);clearTimeout(A.current),A.current=window.setTimeout(()=>{!n.mobileMode&&o&&t.relatedTarget!==i.current&&R.current&&!R.current.contains(o)&&P()})},X=()=>{clearTimeout(A.current)},{onFocus:Y,onBlur:Z}=f.useAsyncFocusBlur({onFocus:t=>X(),onBlur:t=>U(t)}),ee=t=>{var o;(o=q.current)==null||o.triggerMouseEvent(t)},te=t=>{var o;(o=q.current)==null||o.triggerKeyboardEvent(t)},oe=t=>{!t.isAnchorClicked&&k(!1)},j=e.createElement(se.GridColumnMenuItemContent,{show:!0},e.createElement("form",{onSubmit:D,onReset:N,className:"k-filter-menu"},e.createElement("div",{className:"k-filter-menu-container"},e.createElement(E.TextBox,{className:"k-searchbox",value:d,onChange:L,size:n.mobileMode?"large":"medium",prefix:()=>e.createElement(E.InputPrefix,null,e.createElement(f.IconWrap,{name:"search",icon:K.searchIcon}))}),e.createElement("ul",{className:"k-reset k-multicheck-wrap"},!d&&e.createElement("li",{className:"k-item k-check-all-wrap"},e.createElement(E.Checkbox,{checked:C,onChange:G,label:m.toLanguageString(l.filterSelectAll,l.messages[l.filterSelectAll]),size:n.mobileMode?"large":"medium"})),x.map(t=>e.createElement("li",{key:t.id,className:"k-item"},e.createElement(E.Checkbox,{disabled:a[t.id||""]&&g===1,checked:a[t.id||""],onChange:o=>{var u;return O(!!((u=o.target.element)!=null&&u.checked),t.id)},label:t.title||t.field,size:n.mobileMode?"large":"medium"})))),e.createElement("div",{className:"k-filter-selected-items"},g," ",m.toLanguageString(l.columnMenuColumnChooserSelectedItems,l.messages[l.columnMenuColumnChooserSelectedItems])),e.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},e.createElement(T.Button,{type:"submit",themeColor:"primary"},m.toLanguageString(l.filterApplyButton,l.messages[l.filterApplyButton])),e.createElement(T.Button,{type:"reset"},m.toLanguageString(l.filterResetButton,l.messages[l.filterResetButton])))))),ne=e.createElement(T.Button,{ref:i,togglable:!0,selected:I,svgIcon:r.svgIcon?r.svgIcon:r.icon?void 0:K.columnsIcon,icon:r.icon,size:n.mobileMode?"large":"medium",className:f.classNames("k-toolbar-button",{"k-icon-button":n.mobileMode}),title:m.toLanguageString(l.toolbarColumnsChooser,l.messages[l.toolbarColumnsChooser]),onClick:Q},!n.mobileMode&&m.toLanguageString(l.toolbarColumnsChooser,l.messages[l.toolbarColumnsChooser]));return e.createElement(e.Fragment,null,e.createElement(_.BadgeContainer,null,ne,w&&e.createElement(_.Badge,{themeColor:"primary"})),n.mobileMode?e.createElement(me.GridToolbarAdaptiveProvider,null,re.createPortal(e.createElement(ue.GridAdaptiveToolbarColumnChooser,{computedShow:I,filter:d,filtered:x,selectedColumns:a,allSelected:C,checkedCount:g,onClose:P,onApply:D,onReset:N,onFilter:L,onCheckChange:O,onSelectAll:G},j),(z=J())==null?void 0:z.body)):e.createElement(ie.Popup,{anchor:(F=i.current)==null?void 0:F.element,show:I,popupClass:"k-grid-columnmenu-popup",onMouseDownOutside:oe},e.createElement("div",{ref:R,onBlur:Z,onFocus:Y,onMouseDown:ee,onKeyDown:te,className:"k-column-menu k-column-menu-md"},j)))};V.displayName="KendoReactGridToolbarColumnsChooser";exports.GridToolbarColumnsChooser=V;
|