@progress/kendo-react-data-tools 9.0.0-develop.2 → 9.0.0-develop.3
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/README.md +27 -27
- package/columnmenu/ColumnMenu.js +1 -1
- package/columnmenu/ColumnMenu.mjs +83 -98
- package/columnmenu/ColumnMenuFilterForm.mjs +2 -22
- package/columnmenu/ColumnMenuFilterLogic.mjs +8 -2
- package/columnmenu/ColumnMenuFilters.mjs +5 -8
- package/columnmenu/ColumnMenuOperators.mjs +1 -3
- package/dist/cdn/js/kendo-react-datatools.js +1 -1
- package/drag/DragClue.mjs +8 -1
- package/filter/Expression.mjs +21 -4
- package/filter/Filter.mjs +6 -5
- package/filter/Group.mjs +43 -25
- package/filter/filters/BooleanFilter.mjs +4 -1
- package/filter/filters/EnumFilter.mjs +4 -1
- package/filter/filters/NumericFilter.mjs +4 -1
- package/filter/filters/TextFilter.mjs +3 -1
- package/filteringCells/BooleanFilter.js +1 -1
- package/filteringCells/BooleanFilter.mjs +9 -9
- package/header/HeaderRow.js +1 -1
- package/header/HeaderRow.mjs +20 -18
- package/header/utils/index.js +1 -1
- package/header/utils/index.mjs +55 -57
- package/index.d.mts +3 -3
- package/index.d.ts +3 -3
- package/navigation/TableKeyboardNavigation.js +1 -1
- package/navigation/TableKeyboardNavigation.mjs +25 -13
- package/navigation/TableKeyboardNavigationContext.mjs +3 -1
- package/navigation/utils.mjs +2 -8
- package/package-metadata.mjs +1 -1
- package/package.json +9 -9
- package/pager/PagerInput.mjs +14 -4
- package/pager/PagerNumericButtons.mjs +16 -19
- package/pager/PagerPageSizes.mjs +8 -2
- package/selection/TableSelection.mjs +17 -20
|
@@ -38,7 +38,16 @@ const M = (e) => {
|
|
|
38
38
|
f && f === l.current.activeId && (o.current.activeElementIsFocused = !0);
|
|
39
39
|
}
|
|
40
40
|
}, Z = (e) => {
|
|
41
|
-
const {
|
|
41
|
+
const {
|
|
42
|
+
scope: l,
|
|
43
|
+
contextStateRef: o,
|
|
44
|
+
navigationStateRef: n,
|
|
45
|
+
focusFirst: i,
|
|
46
|
+
newEditableRow: f,
|
|
47
|
+
singleEditRow: c,
|
|
48
|
+
lastActiveElement: v,
|
|
49
|
+
navigatable: a
|
|
50
|
+
} = e;
|
|
42
51
|
if (i && (M(e), L(e), w(e)), (!a || a && a.mode === D.inline) && (f && !c || f && c && !v) ? q(f) : a && a.mode === D.inline && f && c && v && v.focus(), h(e), o.current && n.current && l) {
|
|
43
52
|
if (!t.getActiveNavDataElement(l, o.current.activeId)) {
|
|
44
53
|
const E = l.className.indexOf("k-treelist") === -1 ? T(n.current.navigationMatrix) : n.current.navigationMatrix[0][0], I = t.getActiveNavDataElement(l, E);
|
|
@@ -63,12 +72,7 @@ const M = (e) => {
|
|
|
63
72
|
}
|
|
64
73
|
}, te = async (e, l) => {
|
|
65
74
|
var N, p, R, A;
|
|
66
|
-
const {
|
|
67
|
-
contextStateRef: o,
|
|
68
|
-
navigationStateRef: n,
|
|
69
|
-
onNavigationAction: i,
|
|
70
|
-
columns: f
|
|
71
|
-
} = l;
|
|
75
|
+
const { contextStateRef: o, navigationStateRef: n, onNavigationAction: i, columns: f } = l;
|
|
72
76
|
if (e.isDefaultPrevented() || !o.current || !n.current)
|
|
73
77
|
return;
|
|
74
78
|
let c;
|
|
@@ -105,7 +109,10 @@ const M = (e) => {
|
|
|
105
109
|
const d = (R = a.closest(".k-table-td")) == null ? void 0 : R.classList.contains("k-grid-edit-cell");
|
|
106
110
|
if (e.keyCode === s.esc) {
|
|
107
111
|
a.focus(), a.blur();
|
|
108
|
-
const r = v && v.parentElement && v.parentElement.closest(".k-grid-edit-row"), g = t.getClosestCellNavId(a), b = await t.waitForElementToBeVisible(
|
|
112
|
+
const r = v && v.parentElement && v.parentElement.closest(".k-grid-edit-row"), g = t.getClosestCellNavId(a), b = await t.waitForElementToBeVisible(
|
|
113
|
+
`[data-keyboardnavid='${g}']:not(.k-grid-edit-cell)`,
|
|
114
|
+
r
|
|
115
|
+
);
|
|
109
116
|
b && b.focus();
|
|
110
117
|
} else if (e.keyCode === s.enter) {
|
|
111
118
|
let r;
|
|
@@ -166,10 +173,9 @@ const M = (e) => {
|
|
|
166
173
|
prevElement: a
|
|
167
174
|
});
|
|
168
175
|
return;
|
|
169
|
-
} else {
|
|
170
|
-
a.querySelector(".k-filtercell") && l.navigatable && S(a), c = t.getFocusableElements(a)[0], t.focusElement({ elementForFocus: c, event: e, contextStateRef: o, prevElement: a });
|
|
171
|
-
return;
|
|
172
176
|
}
|
|
177
|
+
a.querySelector(".k-filtercell") && l.navigatable && S(a), c = t.getFocusableElements(a)[0], t.focusElement({ elementForFocus: c, event: e, contextStateRef: o, prevElement: a });
|
|
178
|
+
return;
|
|
173
179
|
}
|
|
174
180
|
if (e.keyCode === s.home && u)
|
|
175
181
|
if (k)
|
|
@@ -182,7 +188,10 @@ const M = (e) => {
|
|
|
182
188
|
e
|
|
183
189
|
);
|
|
184
190
|
else {
|
|
185
|
-
const d = W(
|
|
191
|
+
const d = W(
|
|
192
|
+
n.current.navigationMatrix,
|
|
193
|
+
u[0]
|
|
194
|
+
);
|
|
186
195
|
c = t.getActiveNavDataElement(x, d), t.focusElement({ elementForFocus: c, event: e, contextStateRef: o });
|
|
187
196
|
}
|
|
188
197
|
if (e.keyCode === s.end && u)
|
|
@@ -190,7 +199,10 @@ const M = (e) => {
|
|
|
190
199
|
const d = $(n.current.navigationMatrix);
|
|
191
200
|
c = t.getActiveNavDataElement(x, d), t.focusElement({ elementForFocus: c, event: e, contextStateRef: o });
|
|
192
201
|
} else {
|
|
193
|
-
const d = _(
|
|
202
|
+
const d = _(
|
|
203
|
+
n.current.navigationMatrix,
|
|
204
|
+
u[0]
|
|
205
|
+
);
|
|
194
206
|
c = t.getActiveNavDataElement(x, d), t.focusElement({ elementForFocus: c, event: e, contextStateRef: o });
|
|
195
207
|
}
|
|
196
208
|
if (e.keyCode === s.up || e.keyCode === s.down || e.keyCode === s.left || e.keyCode === s.right) {
|
package/navigation/utils.mjs
CHANGED
|
@@ -51,11 +51,7 @@ const K = async (e) => {
|
|
|
51
51
|
const t = e.querySelector(".k-grid-edit-cell"), r = t && t.querySelector("input");
|
|
52
52
|
r ? r.focus() : t && t.firstChild.focus();
|
|
53
53
|
}, U = (e, t) => {
|
|
54
|
-
const {
|
|
55
|
-
scope: r,
|
|
56
|
-
navigationStateRef: n,
|
|
57
|
-
contextStateRef: o
|
|
58
|
-
} = e;
|
|
54
|
+
const { scope: r, navigationStateRef: n, contextStateRef: o } = e;
|
|
59
55
|
if (!n.current || !r)
|
|
60
56
|
return;
|
|
61
57
|
const l = Q(n.current.navigationMatrix), s = p(r, l);
|
|
@@ -69,9 +65,7 @@ const K = async (e) => {
|
|
|
69
65
|
const r = b.map((n) => n + `[${f}='${t.level}']`).join(",");
|
|
70
66
|
return Array.from(e.querySelectorAll(r));
|
|
71
67
|
}, H = (e = { level: 0 }) => {
|
|
72
|
-
const t = b.map(
|
|
73
|
-
(r) => r + `[${f}='${e.level}']`
|
|
74
|
-
).join(",");
|
|
68
|
+
const t = b.map((r) => r + `[${f}='${e.level}']`).join(",");
|
|
75
69
|
return (r) => r.matches(t);
|
|
76
70
|
}, x = (e) => {
|
|
77
71
|
const { elementForFocus: t, event: r, contextStateRef: n, prevElement: o } = e;
|
package/package-metadata.mjs
CHANGED
|
@@ -10,7 +10,7 @@ const e = {
|
|
|
10
10
|
name: "@progress/kendo-react-data-tools",
|
|
11
11
|
productName: "KendoReact",
|
|
12
12
|
productCodes: ["KENDOUIREACT", "KENDOUICOMPLETE"],
|
|
13
|
-
publishDate:
|
|
13
|
+
publishDate: 1729494685,
|
|
14
14
|
version: "",
|
|
15
15
|
licensingDocsUrl: "https://www.telerik.com/kendo-react-ui/components/my-license/"
|
|
16
16
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-react-data-tools",
|
|
3
|
-
"version": "9.0.0-develop.
|
|
3
|
+
"version": "9.0.0-develop.3",
|
|
4
4
|
"description": "Includes React Pager & React Filter component, an intuitive interface to create complex filter descriptions. KendoReact Data Tools package",
|
|
5
5
|
"author": "Progress",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
@@ -25,14 +25,14 @@
|
|
|
25
25
|
"@progress/kendo-data-query": "^1.0.0",
|
|
26
26
|
"@progress/kendo-drawing": "^1.20.4",
|
|
27
27
|
"@progress/kendo-licensing": "^1.3.4",
|
|
28
|
-
"@progress/kendo-react-animation": "9.0.0-develop.
|
|
29
|
-
"@progress/kendo-react-buttons": "9.0.0-develop.
|
|
30
|
-
"@progress/kendo-react-common": "9.0.0-develop.
|
|
31
|
-
"@progress/kendo-react-dateinputs": "9.0.0-develop.
|
|
32
|
-
"@progress/kendo-react-dropdowns": "9.0.0-develop.
|
|
33
|
-
"@progress/kendo-react-inputs": "9.0.0-develop.
|
|
34
|
-
"@progress/kendo-react-intl": "9.0.0-develop.
|
|
35
|
-
"@progress/kendo-react-popup": "9.0.0-develop.
|
|
28
|
+
"@progress/kendo-react-animation": "9.0.0-develop.3",
|
|
29
|
+
"@progress/kendo-react-buttons": "9.0.0-develop.3",
|
|
30
|
+
"@progress/kendo-react-common": "9.0.0-develop.3",
|
|
31
|
+
"@progress/kendo-react-dateinputs": "9.0.0-develop.3",
|
|
32
|
+
"@progress/kendo-react-dropdowns": "9.0.0-develop.3",
|
|
33
|
+
"@progress/kendo-react-inputs": "9.0.0-develop.3",
|
|
34
|
+
"@progress/kendo-react-intl": "9.0.0-develop.3",
|
|
35
|
+
"@progress/kendo-react-popup": "9.0.0-develop.3",
|
|
36
36
|
"@progress/kendo-svg-icons": "^3.0.0",
|
|
37
37
|
"react": "^16.8.2 || ^17.0.0 || ^18.0.0",
|
|
38
38
|
"react-dom": "^16.8.2 || ^17.0.0 || ^18.0.0"
|
package/pager/PagerInput.mjs
CHANGED
|
@@ -25,12 +25,22 @@ class d extends s.Component {
|
|
|
25
25
|
onChange: this.handleOnChange,
|
|
26
26
|
min: 1,
|
|
27
27
|
spinners: !1,
|
|
28
|
-
ariaLabel: a.toLanguageString(
|
|
28
|
+
ariaLabel: a.toLanguageString(
|
|
29
|
+
l.messageKey,
|
|
30
|
+
l.defaultMessage
|
|
31
|
+
),
|
|
29
32
|
tabIndex: this.props.navigatable ? -1 : void 0
|
|
30
33
|
}
|
|
31
|
-
), /* @__PURE__ */ s.createElement("span", null, `${a.toLanguageString(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
+
), /* @__PURE__ */ s.createElement("span", null, `${a.toLanguageString(
|
|
35
|
+
o.messageKey,
|
|
36
|
+
o.defaultMessage
|
|
37
|
+
)} ${e.format(
|
|
38
|
+
a.toLanguageString(
|
|
39
|
+
i.messageKey,
|
|
40
|
+
i.defaultMessage
|
|
41
|
+
),
|
|
42
|
+
[this.props.totalPages]
|
|
43
|
+
)}`));
|
|
34
44
|
}
|
|
35
45
|
}
|
|
36
46
|
h(d);
|
|
@@ -21,7 +21,10 @@ class I extends n.Component {
|
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
render() {
|
|
24
|
-
const e = z(this), { messagesMap: s, size: a, totalPages: g, currentPage: r, type: c, navigatable: v } = this.props, u = s ? s(i) : { messageKey: i, defaultMessage: l[i] }, m = s ? s(p) : { messageKey: p, defaultMessage: l[p] }, h = s ? s(d) : { messageKey: d, defaultMessage: l[d] }, b = e.toLanguageString(
|
|
24
|
+
const e = z(this), { messagesMap: s, size: a, totalPages: g, currentPage: r, type: c, navigatable: v } = this.props, u = s ? s(i) : { messageKey: i, defaultMessage: l[i] }, m = s ? s(p) : { messageKey: p, defaultMessage: l[p] }, h = s ? s(d) : { messageKey: d, defaultMessage: l[d] }, b = e.toLanguageString(
|
|
25
|
+
h.messageKey,
|
|
26
|
+
h.defaultMessage
|
|
27
|
+
), C = this.start > 1 && this.renderDots(this.start - 1, b), y = this.end < g && this.renderDots(this.end + 1, b), D = this.start > 1 && this.renderOptionDots(this.start - 1), P = this.end < g && this.renderOptionDots(this.end + 1), o = [];
|
|
25
28
|
for (let t = this.start; t <= this.end; t++)
|
|
26
29
|
o.push(t);
|
|
27
30
|
const S = o.map((t) => /* @__PURE__ */ n.createElement(
|
|
@@ -34,7 +37,10 @@ class I extends n.Component {
|
|
|
34
37
|
size: a,
|
|
35
38
|
rounded: null,
|
|
36
39
|
role: "button",
|
|
37
|
-
"aria-label": e.toLanguageString(
|
|
40
|
+
"aria-label": e.toLanguageString(
|
|
41
|
+
m.messageKey,
|
|
42
|
+
m.defaultMessage
|
|
43
|
+
) + " " + t,
|
|
38
44
|
"aria-current": r === t ? !0 : void 0,
|
|
39
45
|
onClick: (x) => this.handlePageChange(x, t),
|
|
40
46
|
tabIndex: v ? -1 : void 0
|
|
@@ -45,30 +51,21 @@ class I extends n.Component {
|
|
|
45
51
|
"select",
|
|
46
52
|
{
|
|
47
53
|
style: { width: "5em", margin: "0px 1em", display: "inline-flex" },
|
|
48
|
-
className: f(
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
+
className: f("k-picker k-dropdown-list k-dropdown k-rounded-md k-picker-solid", {
|
|
55
|
+
[`k-picker-${E.sizeMap[a] || a}`]: a,
|
|
56
|
+
"k-hidden": c !== "dropdown"
|
|
57
|
+
}),
|
|
58
|
+
"aria-label": e.toLanguageString(
|
|
59
|
+
u.messageKey,
|
|
60
|
+
u.defaultMessage
|
|
54
61
|
),
|
|
55
|
-
"aria-label": e.toLanguageString(u.messageKey, u.defaultMessage),
|
|
56
62
|
value: r,
|
|
57
63
|
onChange: (t) => this.handleSelectPageChange(t)
|
|
58
64
|
},
|
|
59
65
|
D,
|
|
60
66
|
L,
|
|
61
67
|
P
|
|
62
|
-
), /* @__PURE__ */ n.createElement(
|
|
63
|
-
"div",
|
|
64
|
-
{
|
|
65
|
-
className: "k-pager-numbers",
|
|
66
|
-
style: { display: c === "numbers" ? "" : "none" }
|
|
67
|
-
},
|
|
68
|
-
C,
|
|
69
|
-
S,
|
|
70
|
-
y
|
|
71
|
-
));
|
|
68
|
+
), /* @__PURE__ */ n.createElement("div", { className: "k-pager-numbers", style: { display: c === "numbers" ? "" : "none" } }, C, S, y));
|
|
72
69
|
}
|
|
73
70
|
get end() {
|
|
74
71
|
return Math.min(this.start + this.props.buttonCount - 1, this.props.totalPages);
|
package/pager/PagerPageSizes.mjs
CHANGED
|
@@ -26,11 +26,17 @@ class z extends s.Component {
|
|
|
26
26
|
value: e !== void 0 ? e : t,
|
|
27
27
|
data: i,
|
|
28
28
|
onChange: this.pageSizeChange,
|
|
29
|
-
ariaLabel: p(this).toLanguageString(
|
|
29
|
+
ariaLabel: p(this).toLanguageString(
|
|
30
|
+
o.messageKey,
|
|
31
|
+
o.defaultMessage
|
|
32
|
+
),
|
|
30
33
|
size: c,
|
|
31
34
|
tabIndex: u ? -1 : void 0
|
|
32
35
|
}
|
|
33
|
-
), /* @__PURE__ */ s.createElement("span", null, p(this).toLanguageString(
|
|
36
|
+
), /* @__PURE__ */ s.createElement("span", null, p(this).toLanguageString(
|
|
37
|
+
n.messageKey,
|
|
38
|
+
n.defaultMessage
|
|
39
|
+
)));
|
|
34
40
|
}
|
|
35
41
|
}
|
|
36
42
|
d(z);
|
|
@@ -17,26 +17,23 @@ const ce = (u) => {
|
|
|
17
17
|
drag: M,
|
|
18
18
|
mode: o,
|
|
19
19
|
cell: X
|
|
20
|
-
} = $(u.selectable), r = t.useRef(null), Y = t.useRef(null), d = t.useRef({ clientX: 0, clientY: 0, scrollX: 0, scrollY: 0, pressedElement: null }), [T, f] = t.useState(null), C = t.useRef(), g = t.useRef(!1), y = t.useRef(!1), j = t.useCallback(
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
},
|
|
38
|
-
[]
|
|
39
|
-
), z = t.useCallback(
|
|
20
|
+
} = $(u.selectable), r = t.useRef(null), Y = t.useRef(null), d = t.useRef({ clientX: 0, clientY: 0, scrollX: 0, scrollY: 0, pressedElement: null }), [T, f] = t.useState(null), C = t.useRef(), g = t.useRef(!1), y = t.useRef(!1), j = t.useCallback((s) => {
|
|
21
|
+
const { event: e } = s;
|
|
22
|
+
if (y.current = ee(e.originalEvent.target), y.current || !r.current)
|
|
23
|
+
return;
|
|
24
|
+
C.current = te(r.current.element);
|
|
25
|
+
const n = r.current.element && r.current.element.ownerDocument;
|
|
26
|
+
if (!n)
|
|
27
|
+
return;
|
|
28
|
+
const l = n.elementFromPoint(e.clientX, e.clientY);
|
|
29
|
+
d.current = {
|
|
30
|
+
clientY: e.clientY,
|
|
31
|
+
clientX: e.clientX,
|
|
32
|
+
scrollX: e.scrollX,
|
|
33
|
+
scrollY: e.scrollY,
|
|
34
|
+
pressedElement: l
|
|
35
|
+
};
|
|
36
|
+
}, []), z = t.useCallback(
|
|
40
37
|
(s) => {
|
|
41
38
|
const { event: e } = s, { clientX: n, clientY: l } = d.current;
|
|
42
39
|
if (!y.current && !(!M || o === "single") && ((Math.abs(l - e.clientY) > 5 || Math.abs(n - e.clientX) > 5) && (g.current = !0), g.current)) {
|