@progress/kendo-react-grid 15.1.0-develop.3 → 15.1.0-develop.5

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.
@@ -5,270 +5,283 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import * as t from "react";
9
- import Oe from "react-dom";
10
- import { useDocument as Ve, SvgIcon as Ue, useAsyncFocusBlur as ze, classNames as Ke, getActiveElement as _e } from "@progress/kendo-react-common";
11
- import { GridColumnMenuItem as He } from "../columnMenu/GridColumnMenuItem.mjs";
12
- import { GridColumnMenuItemContent as je } from "../columnMenu/GridColumnMenuItemContent.mjs";
13
- import { GridColumnMenuItemGroup as qe } from "../columnMenu/GridColumnMenuItemGroup.mjs";
14
- import { GridContext as Je } from "../utils/GridContext.mjs";
15
- import { filterIcon as me, filterClearIcon as Qe } from "@progress/kendo-svg-icons";
16
- import { getFilterType as de, operatorMap as V, defaultHideSecondFilter as We, IsUnaryFilter as b, getDefaultOperator as Xe, filterLogicList as Ye, booleanFilterValues as Ze } from "../filterCommon.mjs";
17
- import { Button as k } from "@progress/kendo-react-buttons";
18
- import { GridColumnMenuFilterUI as $e } from "../columnMenu/GridColumnMenuFilterUI.mjs";
19
- import { toolbarFilter as M, messages as F, filterSubmitButton as ge, filterClearButton as pe, filterClearAllButton as he } from "../messages/index.mjs";
20
- import { useLocalization as xe } from "@progress/kendo-react-intl";
21
- import { rootFilterOrDefault as w, filterGroupByField as Re } from "../columnMenu/GridColumnMenuFilter.mjs";
22
- import { Popup as et } from "@progress/kendo-react-popup";
23
- import { BadgeContainer as tt, Badge as rt } from "@progress/kendo-react-indicators";
24
- import { GridToolbarAdaptiveProvider as ot } from "./adaptiveContext/GridToolbarAdaptiveContext.mjs";
25
- import { GridAdaptiveToolbarFilter as lt } from "./adaptiveContent/GridAdaptiveToolbarFilter.mjs";
26
- const nt = (c) => {
27
- var re, oe, le, ne, ie, ae, se;
28
- const n = t.useContext(Je), m = n.columnsRef, U = n.filter, p = n.defaultFilter, [S, E] = t.useState(!1), [ve, h] = t.useState(!1), [d, D] = t.useState(
29
- (m == null ? void 0 : m.map((e) => ({ column: e, expanded: !1 }))) || []
30
- ), [Fe, z] = t.useState(!1), g = t.useRef(null), y = t.useRef(null), K = t.useRef(null), I = t.useRef(0), r = t.useRef(null), f = xe(), Ee = Ve(g), _ = t.useMemo(
31
- () => (m == null ? void 0 : m.filter((e) => {
32
- var o;
33
- return (o = e.title || e.field) == null ? void 0 : o.toLowerCase();
8
+ import * as r from "react";
9
+ import Pe from "react-dom";
10
+ import { useDocument as Ae, SvgIcon as Ge, classNames as Oe } from "@progress/kendo-react-common";
11
+ import { GridColumnMenuItem as Te } from "../columnMenu/GridColumnMenuItem.mjs";
12
+ import { GridColumnMenuItemContent as Ve } from "../columnMenu/GridColumnMenuItemContent.mjs";
13
+ import { GridColumnMenuItemGroup as Ue } from "../columnMenu/GridColumnMenuItemGroup.mjs";
14
+ import { GridContext as ze } from "../utils/GridContext.mjs";
15
+ import { filterIcon as fe, filterClearIcon as Ke } from "@progress/kendo-svg-icons";
16
+ import { getFilterType as me, operatorMap as z, defaultHideSecondFilter as _e, IsUnaryFilter as D, getDefaultOperator as He, filterLogicList as je, booleanFilterValues as qe } from "../filterCommon.mjs";
17
+ import { Button as y } from "@progress/kendo-react-buttons";
18
+ import { GridColumnMenuFilterUI as Je } from "../columnMenu/GridColumnMenuFilterUI.mjs";
19
+ import { toolbarFilter as I, messages as k, filterSubmitButton as de, filterClearButton as ge, filterClearAllButton as pe } from "../messages/index.mjs";
20
+ import { useLocalization as Qe } from "@progress/kendo-react-intl";
21
+ import { rootFilterOrDefault as N, filterGroupByField as We } from "../columnMenu/GridColumnMenuFilter.mjs";
22
+ import { Popup as Xe } from "@progress/kendo-react-popup";
23
+ import { BadgeContainer as Ye, Badge as Ze } from "@progress/kendo-react-indicators";
24
+ import { GridToolbarAdaptiveProvider as $e } from "./adaptiveContext/GridToolbarAdaptiveContext.mjs";
25
+ import { GridAdaptiveToolbarFilter as xe } from "./adaptiveContent/GridAdaptiveToolbarFilter.mjs";
26
+ const Re = (u) => {
27
+ var re, le, oe, ie, ne, ae, se, ce;
28
+ const i = r.useContext(ze), d = i.columnsRef, g = i.filter, he = !!((re = g == null ? void 0 : g.filters) != null && re.length), [B, L] = r.useState(!1), [p, C] = r.useState(
29
+ (d == null ? void 0 : d.map((e) => ({ column: e, expanded: !1 }))) || []
30
+ ), [ve, K] = r.useState(!1), F = r.useRef(null), Fe = r.useRef(null), _ = r.useRef(null), t = r.useRef(null), m = Qe(), Ee = Ae(F), H = r.useMemo(
31
+ () => (d == null ? void 0 : d.filter((e) => {
32
+ var l;
33
+ return (l = e.title || e.field) == null ? void 0 : l.toLowerCase();
34
34
  })) || [],
35
- [m]
36
- );
37
- t.useEffect(() => {
38
- h(!!(p || U));
39
- }, [p, U]);
40
- const H = t.useCallback(
35
+ [d]
36
+ ), j = r.useCallback(
41
37
  (e) => {
42
- const o = p && p.filters.some((i) => i.field === e.field);
43
- return /* @__PURE__ */ t.createElement(t.Fragment, null, e.title || e.field, o && /* @__PURE__ */ t.createElement("span", { className: "k-columnmenu-indicators" }, /* @__PURE__ */ t.createElement(Ue, { key: 1, icon: me })));
38
+ var n;
39
+ const l = (n = g == null ? void 0 : g.filters) == null ? void 0 : n.some(
40
+ (o) => {
41
+ var a;
42
+ return o.field === e.field || ((a = o.filters) == null ? void 0 : a.some((f) => f.field === e.field));
43
+ }
44
+ );
45
+ return /* @__PURE__ */ r.createElement(r.Fragment, null, e.title || e.field, l && /* @__PURE__ */ r.createElement("span", { className: "k-columnmenu-indicators" }, /* @__PURE__ */ r.createElement(Ge, { key: 1, icon: fe })));
44
46
  },
45
- [p]
46
- ), j = (e, o) => {
47
- D((i) => (r.current = o, i.map((l) => l.column.field === o.field ? { ...l, expanded: !l.expanded } : { ...l, expanded: !1 }))), B(q()), z(!Fe);
48
- }, q = () => {
49
- var o, i, l, s, ce, ue;
47
+ [g]
48
+ ), q = (e, l) => {
49
+ t.current = l, C((n) => n.map((o) => o.column.field === l.field ? { ...o, expanded: !o.expanded } : { ...o, expanded: !1 })), P(J()), K(!ve);
50
+ }, J = () => {
51
+ var l, n, o, a, f, v;
50
52
  let e;
51
- if (r != null && r.current && ((o = r == null ? void 0 : r.current) != null && o.field)) {
52
- const Ge = de((i = r == null ? void 0 : r.current) == null ? void 0 : i.filter), v = Xe(n.filterOperators, Ge);
53
- e = Re((l = r == null ? void 0 : r.current) == null ? void 0 : l.field, n.filter), e = e ? {
53
+ if (t != null && t.current && ((l = t == null ? void 0 : t.current) != null && l.field)) {
54
+ const h = me((n = t == null ? void 0 : t.current) == null ? void 0 : n.filter), E = He(i.filterOperators, h);
55
+ if (e = We((o = t == null ? void 0 : t.current) == null ? void 0 : o.field, i.filter), !e) {
56
+ const b = N(i.filter).filters.filter(
57
+ (w) => {
58
+ var ue;
59
+ return !w.filters && w.field === ((ue = t == null ? void 0 : t.current) == null ? void 0 : ue.field);
60
+ }
61
+ );
62
+ b.length && (e = { logic: "and", filters: b.map((w) => ({ ...w })) });
63
+ }
64
+ e = e ? {
54
65
  ...e,
55
- filters: e.filters.map((O) => ({ ...O }))
66
+ filters: e.filters.map((S) => ({ ...S }))
56
67
  } : {
57
68
  logic: "and",
58
69
  filters: [
59
70
  {
60
- field: (s = r == null ? void 0 : r.current) == null ? void 0 : s.field,
61
- operator: v,
62
- value: b(v) ? null : void 0
71
+ field: (a = t == null ? void 0 : t.current) == null ? void 0 : a.field,
72
+ operator: E,
73
+ value: D(E) ? null : void 0
63
74
  },
64
75
  {
65
- field: (ce = r == null ? void 0 : r.current) == null ? void 0 : ce.field,
66
- operator: v,
67
- value: b(v) ? null : void 0
76
+ field: (f = t == null ? void 0 : t.current) == null ? void 0 : f.field,
77
+ operator: E,
78
+ value: D(E) ? null : void 0
68
79
  }
69
80
  ]
70
- }, e.filters.filter((O) => {
71
- var fe;
72
- return O.field === ((fe = r == null ? void 0 : r.current) == null ? void 0 : fe.field);
81
+ }, e.filters.filter((S) => {
82
+ var b;
83
+ return S.field === ((b = t == null ? void 0 : t.current) == null ? void 0 : b.field);
73
84
  }).length === 1 && e.filters.splice(1, 0, {
74
- field: (ue = r == null ? void 0 : r.current) == null ? void 0 : ue.field,
75
- operator: v
85
+ field: (v = t == null ? void 0 : t.current) == null ? void 0 : v.field,
86
+ operator: E
76
87
  });
77
88
  }
78
89
  return e;
79
- }, Ce = (e) => {
80
- J(0, e);
81
90
  }, be = (e) => {
82
- J(1, e);
83
- }, J = (e, o) => {
84
- const i = u.filters.map((l, s) => s === e ? {
85
- ...l,
86
- value: o.value || "",
87
- operator: o.operator || A[s].operator
88
- } : l);
89
- B({
90
- ...u,
91
- filters: i
91
+ Q(0, e);
92
+ }, ke = (e) => {
93
+ Q(1, e);
94
+ }, Q = (e, l) => {
95
+ const n = c.filters.map((o, a) => a === e ? {
96
+ ...o,
97
+ value: l.value || "",
98
+ operator: l.operator || A[a].operator
99
+ } : o);
100
+ P({
101
+ ...c,
102
+ filters: n
92
103
  });
93
- }, [u, B] = t.useState(q()), a = u == null ? void 0 : u.filters, C = de((re = r == null ? void 0 : r.current) == null ? void 0 : re.filter), A = V(n.filterOperators[C], f), Q = V(Ze, f), ke = {
94
- field: (oe = r == null ? void 0 : r.current) == null ? void 0 : oe.field,
95
- value: a == null ? void 0 : a[0].value,
96
- operator: a == null ? void 0 : a[0].operator,
104
+ }, [c, P] = r.useState(J()), s = c == null ? void 0 : c.filters, M = me((le = t == null ? void 0 : t.current) == null ? void 0 : le.filter), A = z(i.filterOperators[M], m), W = z(qe, m), Ce = {
105
+ field: (oe = t == null ? void 0 : t.current) == null ? void 0 : oe.field,
106
+ value: s == null ? void 0 : s[0].value,
107
+ operator: s == null ? void 0 : s[0].operator,
97
108
  operators: A,
98
- booleanValues: Q,
99
- onChange: Ce,
100
- filterType: C
109
+ booleanValues: W,
110
+ onChange: be,
111
+ filterType: M
101
112
  }, Me = {
102
- field: (le = r == null ? void 0 : r.current) == null ? void 0 : le.field,
103
- value: a == null ? void 0 : a[1].value,
104
- operator: a == null ? void 0 : a[1].operator,
113
+ field: (ie = t == null ? void 0 : t.current) == null ? void 0 : ie.field,
114
+ value: s == null ? void 0 : s[1].value,
115
+ operator: s == null ? void 0 : s[1].operator,
105
116
  operators: A,
106
- booleanValues: Q,
107
- onChange: be,
108
- filterType: C
109
- }, we = (e) => {
110
- let o = e.target.value;
111
- e.target.tagName === "SPAN" && (o = e.target.parentElement.value), B({ ...u, logic: o });
112
- }, W = u == null ? void 0 : u.logic, X = V(Ye, f), T = {
113
- value: X.find((e) => e.operator === (W === null ? "" : W)),
114
- onChange: we,
115
- data: X
116
- }, Se = c.hideSecondFilter !== void 0 ? c.hideSecondFilter : We[C], N = c.filterUI, L = {
117
- firstFilterProps: ke,
117
+ booleanValues: W,
118
+ onChange: ke,
119
+ filterType: M
120
+ }, Se = (e) => {
121
+ let l = e.target.value;
122
+ e.target.tagName === "SPAN" && (l = e.target.parentElement.value), P({ ...c, logic: l });
123
+ }, X = c == null ? void 0 : c.logic, Y = z(je, m), G = {
124
+ value: Y.find((e) => e.operator === (X === null ? "" : X)),
125
+ onChange: Se,
126
+ data: Y
127
+ }, we = u.hideSecondFilter !== void 0 ? u.hideSecondFilter : _e[M], O = u.filterUI, T = {
128
+ firstFilterProps: Ce,
118
129
  secondFilterProps: Me,
119
- logicData: T.data,
120
- logicValue: T.value,
121
- onLogicChange: T.onChange,
122
- hideSecondFilter: Se
123
- }, Y = () => ({
124
- ...u,
125
- filters: u == null ? void 0 : u.filters.filter((e) => e.value !== void 0 && e.value !== null && e.value !== "" || e.value === null && e.operator)
126
- }), P = ((ie = (ne = Y()) == null ? void 0 : ne.filters) == null ? void 0 : ie.length) !== 0 || b(a == null ? void 0 : a[0].operator) || b(a == null ? void 0 : a[1].operator), Z = (e) => {
127
- if (e.preventDefault(), !n.filterChange)
130
+ logicData: G.data,
131
+ logicValue: G.value,
132
+ onLogicChange: G.onChange,
133
+ hideSecondFilter: we
134
+ }, Z = () => ({
135
+ ...c,
136
+ filters: c == null ? void 0 : c.filters.filter((e) => e.value !== void 0 && e.value !== null && e.value !== "" || e.value === null && e.operator)
137
+ }), V = ((ae = (ne = Z()) == null ? void 0 : ne.filters) == null ? void 0 : ae.length) !== 0 || D(s == null ? void 0 : s[0].operator) || D(s == null ? void 0 : s[1].operator), $ = (e) => {
138
+ if (e.preventDefault(), !i.filterChange)
128
139
  return;
129
- const o = w(n.filter), i = {
130
- ...o,
131
- filters: o.filters.filter((l) => {
132
- var s;
133
- return l.field !== ((s = r == null ? void 0 : r.current) == null ? void 0 : s.field);
140
+ const l = N(i.filter), n = {
141
+ ...l,
142
+ filters: l.filters.filter((o) => {
143
+ var a, f;
144
+ return !(o.field === ((a = t == null ? void 0 : t.current) == null ? void 0 : a.field) || (f = o.filters) != null && f.some((v) => {
145
+ var h;
146
+ return v.field === ((h = t == null ? void 0 : t.current) == null ? void 0 : h.field);
147
+ }));
134
148
  })
135
149
  };
136
- P && i.filters.push(Y()), n.filterChange(i, e), h(!0), E(!1);
137
- }, $ = (e) => {
138
- if (e.preventDefault(), !n.filterChange)
150
+ V && n.filters.push(Z()), i.filterChange(n, e), C(
151
+ (o) => o.map((a) => ({
152
+ ...a,
153
+ expanded: !1
154
+ }))
155
+ );
156
+ }, x = (e) => {
157
+ if (e.preventDefault(), !i.filterChange)
139
158
  return;
140
- const o = w(n.filter), i = o.filters.filter((l) => {
141
- var s;
142
- return l.field !== ((s = r == null ? void 0 : r.current) == null ? void 0 : s.field);
159
+ const l = N(i.filter), n = l.filters.filter((o) => {
160
+ var a, f;
161
+ return !(o.field === ((a = t == null ? void 0 : t.current) == null ? void 0 : a.field) || (f = o.filters) != null && f.some((v) => {
162
+ var h;
163
+ return v.field === ((h = t == null ? void 0 : t.current) == null ? void 0 : h.field);
164
+ }));
143
165
  });
144
- i.length === 0 ? n.filterChange(null, e) : n.filterChange({ ...o, filters: i }, e), c.onCloseMenu && c.onCloseMenu(), h(!1), D(
145
- (l) => l.map((s) => ({
146
- ...s,
166
+ n.length === 0 ? i.filterChange(null, e) : i.filterChange({ ...l, filters: n }, e), C(
167
+ (o) => o.map((a) => ({
168
+ ...a,
147
169
  expanded: !1
148
170
  }))
149
171
  );
150
172
  }, De = () => {
151
- z(!1);
173
+ K(!1);
152
174
  }, ye = (e) => {
153
- e.preventDefault(), E(!S);
175
+ e.preventDefault(), L(!B);
154
176
  }, Ie = (e) => {
155
- !e.isAnchorClicked && E(!1);
156
- }, G = t.useMemo(() => c.show !== void 0 ? c.show : S, [c.show, S]), Be = (e) => {
157
- const o = _e(document);
158
- clearTimeout(I.current), I.current = window.setTimeout(() => {
159
- !n.mobileMode && o && e.relatedTarget !== g.current && y.current && !y.current.contains(o) && x();
160
- });
161
- }, x = () => {
177
+ !e.isAnchorClicked && L(!1);
178
+ }, U = r.useMemo(() => u.show !== void 0 ? u.show : B, [u.show, B]), R = () => {
162
179
  var e;
163
- c.onCloseMenu && c.onCloseMenu(), E(!1), g.current && ((e = g.current.element) == null || e.focus());
164
- }, Ae = () => {
165
- clearTimeout(I.current);
166
- }, { onFocus: Te, onBlur: Ne } = ze({
167
- onFocus: (e) => Ae(),
168
- onBlur: (e) => Be(e)
169
- }), Le = (e) => {
170
- var o;
171
- (o = K.current) == null || o.triggerMouseEvent(e);
172
- }, Pe = (e) => {
173
- var o;
174
- (o = K.current) == null || o.triggerKeyboardEvent(e);
175
- }, R = t.useCallback(
180
+ u.onCloseMenu && u.onCloseMenu(), L(!1), F.current && ((e = F.current.element) == null || e.focus());
181
+ }, Ne = (e) => {
182
+ var l;
183
+ (l = _.current) == null || l.triggerMouseEvent(e);
184
+ }, Be = (e) => {
185
+ var l;
186
+ (l = _.current) == null || l.triggerKeyboardEvent(e);
187
+ }, ee = r.useCallback(
176
188
  (e) => {
177
- if (e.preventDefault(), !n.filterChange)
189
+ if (e.preventDefault(), !i.filterChange)
190
+ return;
191
+ const l = N(i.filter);
192
+ if (!l.filters.length)
178
193
  return;
179
- const o = w(n.filter), i = o.filters.filter(() => !1);
180
- i.length === 0 ? n.filterChange(null, e) : n.filterChange({ ...o, filters: i }, e), h(!1), D(
181
- (l) => l.map((s) => ({
182
- ...s,
194
+ const n = l.filters.filter(() => !1);
195
+ n.length === 0 ? i.filterChange(null, e) : i.filterChange({ ...l, filters: n }, e), R(), C(
196
+ (o) => o.map((a) => ({
197
+ ...a,
183
198
  expanded: !1
184
199
  }))
185
200
  );
186
201
  },
187
- [n, w]
188
- ), ee = /* @__PURE__ */ t.createElement(
189
- k,
202
+ [i]
203
+ ), Le = /* @__PURE__ */ r.createElement(
204
+ y,
190
205
  {
191
- ref: g,
206
+ ref: F,
192
207
  togglable: !0,
193
- selected: G,
194
- svgIcon: c.svgIcon ? c.svgIcon : c.icon ? void 0 : me,
195
- icon: c.icon,
196
- size: n.mobileMode ? "large" : "medium",
197
- className: Ke("k-toolbar-button", {
198
- "k-icon-button": n.mobileMode
208
+ selected: U,
209
+ svgIcon: u.svgIcon ? u.svgIcon : u.icon ? void 0 : fe,
210
+ icon: u.icon,
211
+ size: i.mobileMode ? "large" : "medium",
212
+ className: Oe("k-toolbar-button", {
213
+ "k-icon-button": i.mobileMode
199
214
  }),
200
- title: f.toLanguageString(M, F[M]),
215
+ title: m.toLanguageString(I, k[I]),
201
216
  onClick: ye
202
217
  },
203
- !n.mobileMode && f.toLanguageString(M, F[M])
204
- ), te = /* @__PURE__ */ t.createElement(t.Fragment, null, _.map((e) => {
205
- var o, i;
206
- return e.filterable && /* @__PURE__ */ t.createElement(qe, { key: e.id }, /* @__PURE__ */ t.createElement("div", { className: "k-expander" }, /* @__PURE__ */ t.createElement(
207
- He,
218
+ !i.mobileMode && m.toLanguageString(I, k[I])
219
+ ), te = /* @__PURE__ */ r.createElement(r.Fragment, null, H.map((e) => {
220
+ var l, n;
221
+ return e.filterable && /* @__PURE__ */ r.createElement(Ue, { key: e.id }, /* @__PURE__ */ r.createElement("div", { className: "k-expander" }, /* @__PURE__ */ r.createElement(
222
+ Te,
208
223
  {
209
- title: H(e),
224
+ title: j(e),
210
225
  expandable: !0,
211
- expanded: !!((o = d == null ? void 0 : d.find((l) => l.column.field === e.field)) != null && o.expanded),
212
- onClick: (l) => j(l, e)
226
+ expanded: !!((l = p == null ? void 0 : p.find((o) => o.column.field === e.field)) != null && l.expanded),
227
+ onClick: (o) => q(o, e)
213
228
  }
214
- )), /* @__PURE__ */ t.createElement(
215
- je,
229
+ )), /* @__PURE__ */ r.createElement(
230
+ Ve,
216
231
  {
217
- show: !!((i = d == null ? void 0 : d.find((l) => l.column.field === e.field)) != null && i.expanded)
232
+ show: !!((n = p == null ? void 0 : p.find((o) => o.column.field === e.field)) != null && n.expanded)
218
233
  },
219
- /* @__PURE__ */ t.createElement("form", { className: "k-filter-menu", onSubmit: Z, onReset: $ }, /* @__PURE__ */ t.createElement("div", { className: "k-filter-menu-container" }, N ? /* @__PURE__ */ t.createElement(N, { ...L }) : /* @__PURE__ */ t.createElement($e, { ...L }), /* @__PURE__ */ t.createElement("div", { className: "k-actions k-actions-stretched" }, /* @__PURE__ */ t.createElement(k, { themeColor: "primary", disabled: !P }, f.toLanguageString(
234
+ /* @__PURE__ */ r.createElement("form", { className: "k-filter-menu", onSubmit: $, onReset: x }, /* @__PURE__ */ r.createElement("div", { className: "k-filter-menu-container" }, O ? /* @__PURE__ */ r.createElement(O, { ...T }) : /* @__PURE__ */ r.createElement(Je, { ...T }), /* @__PURE__ */ r.createElement("div", { className: "k-actions k-actions-stretched" }, /* @__PURE__ */ r.createElement(y, { themeColor: "primary", disabled: !V }, m.toLanguageString(
235
+ de,
236
+ k[de]
237
+ )), /* @__PURE__ */ r.createElement(y, { type: "reset" }, m.toLanguageString(
220
238
  ge,
221
- F[ge]
222
- )), /* @__PURE__ */ t.createElement(k, { type: "reset" }, f.toLanguageString(
223
- pe,
224
- F[pe]
239
+ k[ge]
225
240
  )))))
226
241
  ));
227
- }), /* @__PURE__ */ t.createElement("div", { className: "k-actions k-actions-stretched k-actions-horizontal k-column-menu-footer" }, /* @__PURE__ */ t.createElement(k, { svgIcon: Qe, onClick: R }, f.toLanguageString(he, F[he]))));
228
- return /* @__PURE__ */ t.createElement(t.Fragment, null, ve ? /* @__PURE__ */ t.createElement(tt, null, ee, /* @__PURE__ */ t.createElement(rt, { themeColor: "primary" })) : ee, n.mobileMode ? /* @__PURE__ */ t.createElement(ot, null, Oe.createPortal(
229
- /* @__PURE__ */ t.createElement(
230
- lt,
242
+ }), /* @__PURE__ */ r.createElement("div", { className: "k-actions k-actions-stretched k-actions-horizontal k-column-menu-footer" }, /* @__PURE__ */ r.createElement(y, { svgIcon: Ke, onClick: ee }, m.toLanguageString(pe, k[pe]))));
243
+ return /* @__PURE__ */ r.createElement(r.Fragment, null, /* @__PURE__ */ r.createElement(Ye, null, Le, he && /* @__PURE__ */ r.createElement(Ze, { themeColor: "primary" })), i.mobileMode ? /* @__PURE__ */ r.createElement($e, null, Pe.createPortal(
244
+ /* @__PURE__ */ r.createElement(
245
+ xe,
231
246
  {
232
- filtered: _,
233
- computedShow: G,
234
- expandState: d,
235
- FilterUI: N,
236
- filterUIProps: L,
237
- isFilterValid: P,
238
- renderTitle: H,
247
+ filtered: H,
248
+ computedShow: U,
249
+ expandState: p,
250
+ FilterUI: O,
251
+ filterUIProps: T,
252
+ isFilterValid: V,
253
+ renderTitle: j,
239
254
  onBackView: De,
240
- clear: $,
241
- submit: Z,
242
- onClose: x,
243
- onFilterExpand: j,
244
- handleClearAllFilters: R
255
+ clear: x,
256
+ submit: $,
257
+ onClose: R,
258
+ onFilterExpand: q,
259
+ handleClearAllFilters: ee
245
260
  },
246
261
  te
247
262
  ),
248
- (ae = Ee()) == null ? void 0 : ae.body
249
- )) : /* @__PURE__ */ t.createElement(
250
- et,
263
+ (se = Ee()) == null ? void 0 : se.body
264
+ )) : /* @__PURE__ */ r.createElement(
265
+ Xe,
251
266
  {
252
- anchor: (se = g.current) == null ? void 0 : se.element,
253
- show: G,
267
+ anchor: (ce = F.current) == null ? void 0 : ce.element,
268
+ show: U,
254
269
  popupClass: "k-grid-columnmenu-popup",
255
270
  onMouseDownOutside: Ie
256
271
  },
257
- /* @__PURE__ */ t.createElement(
272
+ /* @__PURE__ */ r.createElement(
258
273
  "div",
259
274
  {
260
- ref: y,
261
- onBlur: Ne,
262
- onFocus: Te,
263
- onMouseDown: Le,
264
- onKeyDown: Pe,
275
+ ref: Fe,
276
+ onMouseDown: Ne,
277
+ onKeyDown: Be,
265
278
  className: "k-column-menu k-column-menu-md"
266
279
  },
267
280
  te
268
281
  )
269
282
  ));
270
283
  };
271
- nt.displayName = "KendoReactGridToolbarFilter";
284
+ Re.displayName = "KendoReactGridToolbarFilter";
272
285
  export {
273
- nt as GridToolbarFilter
286
+ Re as GridToolbarFilter
274
287
  };
@@ -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 J=require("react"),Q=require("react-dom"),U=require("../columnMenu/GridColumnMenuItemGroup.js"),W=require("../columnMenu/GridColumnMenuItem.js"),X=require("../utils/GridContext.js"),R=require("@progress/kendo-react-buttons"),m=require("@progress/kendo-svg-icons"),Y=require("@progress/kendo-react-intl"),s=require("../messages/index.js"),u=require("@progress/kendo-react-common"),x=require("@progress/kendo-react-indicators"),Z=require("@progress/kendo-react-popup"),$=require("./adaptiveContext/GridToolbarAdaptiveContext.js"),ee=require("./adaptiveContent/GridAdaptiveToolbarSort.js");function te(r){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const l in r)if(l!=="default"){const i=Object.getOwnPropertyDescriptor(r,l);Object.defineProperty(n,l,i.get?i:{enumerable:!0,get:()=>r[l]})}}return n.default=r,Object.freeze(n)}const e=te(J),A=r=>{var q,B;const n=e.useContext(X.GridContext),l=n.columnsState,i=n.sortable,a=n.sort,h=n.defaultSort,[v,E]=e.useState(!0),[O,d]=e.useState(!1),[g,f]=e.useState(!1),c=e.useRef(null),b=e.useRef(null),M=e.useRef(null),C=e.useRef(0),S=Y.useLocalization(),N=u.useDocument(c);e.useEffect(()=>{h||a!=null&&a.length?(d(!0),E(!1)):d(!1)},[h,a]);const p=e.useMemo(()=>(l==null?void 0:l.filter(t=>{var o;return(o=t.title||t.field)==null?void 0:o.toLowerCase()}))||[],[l]),w=e.useCallback((t,o)=>{n.headerCellClick(t,o),E(!1),d(!0)},[n]),I=e.useCallback(t=>{n.sortChange([],t),d(!1)},[n]),D=e.useCallback(t=>{const o=a?a.findIndex(H=>H.field===t.field):-1;return e.createElement(e.Fragment,null,t.title||t.field,e.createElement("span",{className:"k-columnmenu-indicators"},o>=0&&[e.createElement(u.SvgIcon,{key:1,icon:a[o].dir==="asc"?m.sortAscSmallIcon:m.sortDescSmallIcon}),a.length>1&&e.createElement("span",{key:2,className:"k-sort-index"},o+1)]))},[a]),P=t=>{t.preventDefault(),f(!g)},k=e.useMemo(()=>r.show!==void 0?r.show:g,[r.show,g]),y=()=>{var t;r.onCloseMenu&&r.onCloseMenu(),f(!1),c.current&&((t=c.current.element)==null||t.focus())},F=t=>{const o=u.getActiveElement(document);clearTimeout(C.current),C.current=window.setTimeout(()=>{!n.mobileMode&&o&&t.relatedTarget!==c.current&&b.current&&!b.current.contains(o)&&y()})},j=()=>{clearTimeout(C.current)},{onFocus:z,onBlur:L}=u.useAsyncFocusBlur({onFocus:t=>j(),onBlur:t=>F(t)}),K=t=>{var o;(o=M.current)==null||o.triggerMouseEvent(t)},_=t=>{var o;(o=M.current)==null||o.triggerKeyboardEvent(t)},V=t=>{!t.isAnchorClicked&&f(!1)},G=e.createElement(e.Fragment,null,e.createElement(U.GridColumnMenuItemGroup,null,p.map(t=>e.createElement(W.GridColumnMenuItem,{key:t.id,title:D(t),onClick:o=>w(o,t)}))),e.createElement("div",{className:"k-actions k-actions-stretched k-actions-horizontal k-column-menu-footer"},e.createElement(R.Button,{svgIcon:m.xIcon,onClick:I,disabled:v},S.toLanguageString(s.sortClearButton,s.messages[s.sortClearButton])))),T=e.createElement(R.Button,{ref:c,togglable:!0,selected:k,svgIcon:r.svgIcon?r.svgIcon:r.icon?void 0:m.arrowsSwapIcon,icon:r.icon,size:n.mobileMode?"large":"medium",className:u.classNames("k-toolbar-button",{"k-icon-button":n.mobileMode}),title:S.toLanguageString(s.toolbarSort,s.messages[s.toolbarSort]),onClick:P},!n.mobileMode&&S.toLanguageString(s.toolbarSort,s.messages[s.toolbarSort]));return i&&e.createElement(e.Fragment,null,O?e.createElement(x.BadgeContainer,null,T,e.createElement(x.Badge,{themeColor:"primary"})):T,n.mobileMode?e.createElement($.GridToolbarAdaptiveProvider,null,Q.createPortal(e.createElement(ee.GridAdaptiveToolbarSort,{filtered:p,computedShow:k,isDisabledButton:v,renderTitle:D,onClose:y,onClear:I,handleSorting:w},G),(q=N())==null?void 0:q.body)):e.createElement(Z.Popup,{anchor:(B=c.current)==null?void 0:B.element,show:k,popupClass:"k-grid-columnmenu-popup",onMouseDownOutside:V},e.createElement("div",{ref:b,onBlur:L,onFocus:z,onMouseDown:K,onKeyDown:_,className:"k-column-menu k-column-menu-md"},G)))};A.displayName="KendoReactGridToolbarSort";exports.GridToolbarSort=A;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const j=require("react"),z=require("react-dom"),L=require("../columnMenu/GridColumnMenuItemGroup.js"),K=require("../columnMenu/GridColumnMenuItem.js"),F=require("../utils/GridContext.js"),p=require("@progress/kendo-react-buttons"),d=require("@progress/kendo-svg-icons"),_=require("@progress/kendo-react-intl"),a=require("../messages/index.js"),C=require("@progress/kendo-react-common"),w=require("@progress/kendo-react-indicators"),V=require("@progress/kendo-react-popup"),H=require("./adaptiveContext/GridToolbarAdaptiveContext.js"),J=require("./adaptiveContent/GridAdaptiveToolbarSort.js");function Q(o){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const n in o)if(n!=="default"){const s=Object.getOwnPropertyDescriptor(o,n);Object.defineProperty(c,n,s.get?s:{enumerable:!0,get:()=>o[n]})}}return c.default=o,Object.freeze(c)}const e=Q(j),G=o=>{var E,I;const{onCloseMenu:c}=o,n=e.useContext(F.GridContext),s=n.columnsState,q=n.sortable,l=n.sort,y=!!(l!=null&&l.length),[m,i]=e.useState(!1),u=e.useRef(null),D=e.useRef(null),f=e.useRef(null),g=_.useLocalization(),R=C.useDocument(u),k=e.useMemo(()=>(s==null?void 0:s.filter(t=>{var r;return(r=t.title||t.field)==null?void 0:r.toLowerCase()}))||[],[s]),S=e.useCallback((t,r)=>{n.headerCellClick(t,r)},[n]),h=e.useCallback(t=>{l!=null&&l.length&&(n.sortChange([],t),i(!1),c&&c())},[n,l,c]),M=e.useCallback(t=>{const r=l?l.findIndex(A=>A.field===t.field):-1;return e.createElement(e.Fragment,null,t.title||t.field,e.createElement("span",{className:"k-columnmenu-indicators"},r>=0&&[e.createElement(C.SvgIcon,{key:1,icon:l[r].dir==="asc"?d.sortAscSmallIcon:d.sortDescSmallIcon}),l.length>1&&e.createElement("span",{key:2,className:"k-sort-index"},r+1)]))},[l]),x=t=>{t.preventDefault(),i(!m)},b=e.useMemo(()=>o.show!==void 0?o.show:m,[o.show,m]),B=()=>{var t;o.onCloseMenu&&o.onCloseMenu(),i(!1),u.current&&((t=u.current.element)==null||t.focus())},T=t=>{var r;(r=f.current)==null||r.triggerMouseEvent(t)},O=t=>{var r;(r=f.current)==null||r.triggerKeyboardEvent(t)},N=t=>{!t.isAnchorClicked&&i(!1)},v=e.createElement(e.Fragment,null,e.createElement(L.GridColumnMenuItemGroup,null,k.map(t=>e.createElement(K.GridColumnMenuItem,{key:t.id,title:M(t),onClick:r=>S(r,t)}))),e.createElement("div",{className:"k-actions k-actions-stretched k-actions-horizontal k-column-menu-footer"},e.createElement(p.Button,{svgIcon:d.xIcon,onClick:h},g.toLanguageString(a.sortClearButton,a.messages[a.sortClearButton])))),P=e.createElement(p.Button,{ref:u,togglable:!0,selected:b,svgIcon:o.svgIcon?o.svgIcon:o.icon?void 0:d.arrowsSwapIcon,icon:o.icon,size:n.mobileMode?"large":"medium",className:C.classNames("k-toolbar-button",{"k-icon-button":n.mobileMode}),title:g.toLanguageString(a.toolbarSort,a.messages[a.toolbarSort]),onClick:x},!n.mobileMode&&g.toLanguageString(a.toolbarSort,a.messages[a.toolbarSort]));return q&&e.createElement(e.Fragment,null,e.createElement(w.BadgeContainer,null,P,y&&e.createElement(w.Badge,{themeColor:"primary"})),n.mobileMode?e.createElement(H.GridToolbarAdaptiveProvider,null,z.createPortal(e.createElement(J.GridAdaptiveToolbarSort,{filtered:k,computedShow:b,renderTitle:M,onClose:B,onClear:h,handleSorting:S},v),(E=R())==null?void 0:E.body)):e.createElement(V.Popup,{anchor:(I=u.current)==null?void 0:I.element,show:b,popupClass:"k-grid-columnmenu-popup",onMouseDownOutside:N},e.createElement("div",{ref:D,onMouseDown:T,onKeyDown:O,className:"k-column-menu k-column-menu-md"},v)))};G.displayName="KendoReactGridToolbarSort";exports.GridToolbarSort=G;