@progress/kendo-react-grid 14.4.1-develop.10 → 14.4.1-develop.12
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.
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
8
|
"use client";
|
|
9
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),w=require("@progress/kendo-data-query"),re=require("./GridColumnMenuItem.js"),ne=require("./GridColumnMenuItemGroup.js"),ie=require("./GridColumnMenuItemContent.js"),oe=require("@progress/kendo-react-intl"),i=require("../filterCommon.js"),u=require("../messages/index.js"),ae=require("./GridColumnMenuFilterUI.js"),R=require("@progress/kendo-react-buttons"),ue=require("@progress/kendo-svg-icons"),se=require("../utils/GridContext.js"),ce=require("./adaptiveContent/GridAdaptiveFilterMenu.js");function de(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const c in e)if(c!=="default"){const g=Object.getOwnPropertyDescriptor(e,c);Object.defineProperty(o,c,g.get?g:{enumerable:!0,get:()=>e[c]})}}return o.default=e,Object.freeze(o)}const l=de(le),E=e=>e||{filters:[],logic:"and"},h=(e,o)=>E(o).filters.filter(C=>w.isCompositeFilterDescriptor(C)?C.filters&&C.filters.length&&!C.filters.find(M=>w.isCompositeFilterDescriptor(M)||M.field!==e):!1)[0]||null,fe=(e,o)=>!!h(e,o),me=e=>{const o=l.useContext(se.GridContext),c=l.useCallback(()=>{let t;if(e.column&&e.column.field){const n=i.getFilterType(e.column.filter),r=i.getDefaultOperator(e.filterOperators,n);t=h(e.column.field,e.filter),t=t?{...t,filters:t.filters.map(a=>({...a}))}:{logic:"and",filters:[{field:e.column.field,operator:r,value:i.IsUnaryFilter(r)?null:void 0},{field:e.column.field,operator:r,value:i.IsUnaryFilter(r)?null:void 0}]},t.filters.filter(a=>a.field===e.column.field).length===1&&t.filters.splice(1,0,{field:e.column.field,operator:r})}return t},[e.column]),[g,C]=l.useState(e.expanded||!1),[M,b]=l.useState(!1),[d,
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),w=require("@progress/kendo-data-query"),re=require("./GridColumnMenuItem.js"),ne=require("./GridColumnMenuItemGroup.js"),ie=require("./GridColumnMenuItemContent.js"),oe=require("@progress/kendo-react-intl"),i=require("../filterCommon.js"),u=require("../messages/index.js"),ae=require("./GridColumnMenuFilterUI.js"),R=require("@progress/kendo-react-buttons"),ue=require("@progress/kendo-svg-icons"),se=require("../utils/GridContext.js"),ce=require("./adaptiveContent/GridAdaptiveFilterMenu.js");function de(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const c in e)if(c!=="default"){const g=Object.getOwnPropertyDescriptor(e,c);Object.defineProperty(o,c,g.get?g:{enumerable:!0,get:()=>e[c]})}}return o.default=e,Object.freeze(o)}const l=de(le),E=e=>e||{filters:[],logic:"and"},h=(e,o)=>E(o).filters.filter(C=>w.isCompositeFilterDescriptor(C)?C.filters&&C.filters.length&&!C.filters.find(M=>w.isCompositeFilterDescriptor(M)||M.field!==e):!1)[0]||null,fe=(e,o)=>!!h(e,o),me=e=>{const o=l.useContext(se.GridContext),c=l.useCallback(()=>{let t;if(e.column&&e.column.field){const n=i.getFilterType(e.column.filter),r=i.getDefaultOperator(e.filterOperators,n);t=h(e.column.field,e.filter),t=t?{...t,filters:t.filters.map(a=>({...a}))}:{logic:"and",filters:[{field:e.column.field,operator:r,value:i.IsUnaryFilter(r)?null:void 0},{field:e.column.field,operator:r,value:i.IsUnaryFilter(r)?null:void 0}]},t.filters.filter(a=>a.field===e.column.field).length===1&&t.filters.splice(1,0,{field:e.column.field,operator:r})}return t},[e.column]),[g,C]=l.useState(e.expanded||!1),[M,b]=l.useState(!1),[d,q]=l.useState(c()),O=()=>e.expanded!==void 0,z=()=>{const t=O(),n=!(t?e.expanded:g);e.onExpandChange&&e.onExpandChange(n),b(!M),!t&&!o.mobileMode&&C(n)},H=t=>{T(0,t)},$=t=>{T(1,t)},T=(t,n)=>{const r=d.filters.map((a,s)=>s===t?{...a,value:n.value,operator:n.operator}:a);q({...d,filters:r})},Q=t=>{let n=t.target.value;t.target.tagName==="SPAN"&&(n=t.target.parentElement.value),q({...d,logic:n})},D=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=e.column.field,r=E(e.filter),a=h(n,e.filter),s=r.filters.filter(v=>v!==a);s.length?e.onFilterChange({...r,filters:s},t):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},B=()=>({...d,filters:d.filters.filter(t=>t.value!==void 0&&t.value!==null&&t.value!==""||t.value===null&&t.operator)}),y=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=e.column.field,r=E(e.filter),a=h(n,e.filter),s=B();let v=null;if(a&&s.filters.length>0){const G=r.filters.map(x=>x===a?s:x);v={...r,filters:G}}else if(s.filters.length===0){const G=r.filters.filter(x=>x!==a);G.length&&(v={...r,filters:G})}else v={...r,filters:[...r.filters,s]};e.onFilterChange(v,t),e.onCloseMenu&&e.onCloseMenu()},{column:f,filterUI:J,hideSecondFilter:P,filterOperators:K}=e,m=oe.useLocalization();if(!f||!f.field)return l.createElement("div",null);const p=i.getFilterType(f.filter),W=P!==void 0?P:i.defaultHideSecondFilter[p],F=d.filters,L=i.operatorMap(K[p],m),U=i.operatorMap(i.booleanFilterValues,m),X={field:f.field,value:F[0].value,operator:F[0].operator,operators:L,booleanValues:U,onChange:H,filterType:p},Y={field:f.field,value:F[1].value,operator:F[1].operator,operators:L,booleanValues:U,onChange:$,filterType:p},A=d.logic,N=i.operatorMap(i.filterLogicList,m),S={value:N.find(t=>t.operator===(A===null?"":A)),onChange:Q,data:N},I=J,k={firstFilterProps:X,secondFilterProps:Y,logicData:S.data,logicValue:S.value,onLogicChange:S.onChange,hideSecondFilter:W},V=B().filters.length!==0||i.IsUnaryFilter(F[0].operator)||i.IsUnaryFilter(F[1].operator),_=O()?e.expanded:g,j=e.alwaysExpand&&!o.mobileMode,Z=()=>{b(!1)},ee=()=>{b(!1),e.onCloseMenu&&e.onCloseMenu()},te=`${m.toLanguageString(u.adaptiveColumnMenuFilterTitle,u.messages[u.adaptiveColumnMenuFilterTitle])} ${f.title||f.field}`;return l.createElement(ne.GridColumnMenuItemGroup,null,!j&&l.createElement("div",{className:"k-expander"},l.createElement(re.GridColumnMenuItem,{title:m.toLanguageString(u.filterTitle,u.messages[u.filterTitle]),iconClass:"k-i-filter",svgIcon:ue.filterIcon,expandable:!0,expanded:!!_,onClick:z})),o.mobileMode&&M?l.createElement(ce.GridAdaptiveFilterMenu,{FilterUI:I,filterUIProps:k,onBackView:Z,adaptiveTitle:te,handleClose:ee,submit:y,clear:D,isFilterValid:V}):l.createElement(ie.GridColumnMenuItemContent,{show:(j||!!_)&&!o.mobileMode},l.createElement("form",{className:"k-filter-menu",onSubmit:y,onReset:D},l.createElement("div",{className:"k-filter-menu-container"},I?l.createElement(I,{...k}):l.createElement(ae.GridColumnMenuFilterUI,{...k}),l.createElement("div",{className:"k-actions k-actions-stretched"},l.createElement(R.Button,{type:"button",themeColor:"primary",disabled:!V,onClick:y},m.toLanguageString(u.filterSubmitButton,u.messages[u.filterSubmitButton])),l.createElement(R.Button,{type:"reset"},m.toLanguageString(u.filterClearButton,u.messages[u.filterClearButton])))))))};exports.GridColumnMenuFilter=me;exports.filterGroupByField=h;exports.isColumnMenuFilterActive=fe;exports.rootFilterOrDefault=E;
|
|
@@ -8,23 +8,23 @@
|
|
|
8
8
|
"use client";
|
|
9
9
|
import * as l from "react";
|
|
10
10
|
import { isCompositeFilterDescriptor as R } from "@progress/kendo-data-query";
|
|
11
|
-
import { GridColumnMenuItem as
|
|
12
|
-
import { GridColumnMenuItemGroup as
|
|
11
|
+
import { GridColumnMenuItem as ce } from "./GridColumnMenuItem.mjs";
|
|
12
|
+
import { GridColumnMenuItemGroup as se } from "./GridColumnMenuItemGroup.mjs";
|
|
13
13
|
import { GridColumnMenuItemContent as ue } from "./GridColumnMenuItemContent.mjs";
|
|
14
14
|
import { useLocalization as fe } from "@progress/kendo-react-intl";
|
|
15
|
-
import { getFilterType as $, getDefaultOperator as de, IsUnaryFilter as v, operatorMap as
|
|
15
|
+
import { getFilterType as $, getDefaultOperator as de, IsUnaryFilter as v, operatorMap as y, defaultHideSecondFilter as me, filterLogicList as ge, booleanFilterValues as Ce } from "../filterCommon.mjs";
|
|
16
16
|
import { adaptiveColumnMenuFilterTitle as j, messages as E, filterTitle as q, filterSubmitButton as J, filterClearButton as K } from "../messages/index.mjs";
|
|
17
17
|
import { GridColumnMenuFilterUI as Fe } from "./GridColumnMenuFilterUI.mjs";
|
|
18
18
|
import { Button as Q } from "@progress/kendo-react-buttons";
|
|
19
19
|
import { filterIcon as he } from "@progress/kendo-svg-icons";
|
|
20
20
|
import { GridContext as ve } from "../utils/GridContext.mjs";
|
|
21
21
|
import { GridAdaptiveFilterMenu as Ee } from "./adaptiveContent/GridAdaptiveFilterMenu.mjs";
|
|
22
|
-
const
|
|
23
|
-
const a = l.useContext(ve),
|
|
22
|
+
const I = (e) => e || { filters: [], logic: "and" }, p = (e, a) => I(a).filters.filter((f) => R(f) ? f.filters && f.filters.length && !f.filters.find((g) => R(g) || g.field !== e) : !1)[0] || null, Ne = (e, a) => !!p(e, a), Oe = (e) => {
|
|
23
|
+
const a = l.useContext(ve), L = l.useCallback(() => {
|
|
24
24
|
let t;
|
|
25
25
|
if (e.column && e.column.field) {
|
|
26
26
|
const i = $(e.column.filter), r = de(e.filterOperators, i);
|
|
27
|
-
t =
|
|
27
|
+
t = p(e.column.field, e.filter), t = t ? {
|
|
28
28
|
...t,
|
|
29
29
|
filters: t.filters.map((n) => ({ ...n }))
|
|
30
30
|
} : {
|
|
@@ -44,38 +44,38 @@ const k = (e) => e || { filters: [], logic: "and" }, x = (e, a) => k(a).filters.
|
|
|
44
44
|
}, t.filters.filter((n) => n.field === e.column.field).length === 1 && t.filters.splice(1, 0, { field: e.column.field, operator: r });
|
|
45
45
|
}
|
|
46
46
|
return t;
|
|
47
|
-
}, [e.column]), [
|
|
48
|
-
const t =
|
|
47
|
+
}, [e.column]), [x, f] = l.useState(e.expanded || !1), [g, M] = l.useState(!1), [c, T] = l.useState(L()), D = () => e.expanded !== void 0, W = () => {
|
|
48
|
+
const t = D(), i = !(t ? e.expanded : x);
|
|
49
49
|
e.onExpandChange && e.onExpandChange(i), M(!g), !t && !a.mobileMode && f(i);
|
|
50
50
|
}, X = (t) => {
|
|
51
|
-
|
|
51
|
+
P(0, t);
|
|
52
52
|
}, Y = (t) => {
|
|
53
|
-
|
|
54
|
-
},
|
|
55
|
-
const r =
|
|
53
|
+
P(1, t);
|
|
54
|
+
}, P = (t, i) => {
|
|
55
|
+
const r = c.filters.map((n, o) => o === t ? {
|
|
56
56
|
...n,
|
|
57
57
|
value: i.value,
|
|
58
58
|
operator: i.operator
|
|
59
59
|
} : n);
|
|
60
|
-
|
|
61
|
-
...
|
|
60
|
+
T({
|
|
61
|
+
...c,
|
|
62
62
|
filters: r
|
|
63
63
|
});
|
|
64
64
|
}, Z = (t) => {
|
|
65
65
|
let i = t.target.value;
|
|
66
|
-
t.target.tagName === "SPAN" && (i = t.target.parentElement.value),
|
|
67
|
-
},
|
|
66
|
+
t.target.tagName === "SPAN" && (i = t.target.parentElement.value), T({ ...c, logic: i });
|
|
67
|
+
}, N = (t) => {
|
|
68
68
|
if (t.preventDefault(), !e.onFilterChange)
|
|
69
69
|
return;
|
|
70
|
-
const i = e.column.field, r =
|
|
70
|
+
const i = e.column.field, r = I(e.filter), n = p(i, e.filter), o = r.filters.filter((m) => m !== n);
|
|
71
71
|
o.length ? e.onFilterChange({ ...r, filters: o }, t) : e.onFilterChange(null, t), e.onCloseMenu && e.onCloseMenu();
|
|
72
|
-
},
|
|
73
|
-
...
|
|
74
|
-
filters:
|
|
75
|
-
}),
|
|
72
|
+
}, O = () => ({
|
|
73
|
+
...c,
|
|
74
|
+
filters: c.filters.filter((t) => t.value !== void 0 && t.value !== null && t.value !== "" || t.value === null && t.operator)
|
|
75
|
+
}), G = (t) => {
|
|
76
76
|
if (t.preventDefault(), !e.onFilterChange)
|
|
77
77
|
return;
|
|
78
|
-
const i = e.column.field, r =
|
|
78
|
+
const i = e.column.field, r = I(e.filter), n = p(i, e.filter), o = O();
|
|
79
79
|
let m = null;
|
|
80
80
|
if (n && o.filters.length > 0) {
|
|
81
81
|
const F = r.filters.map((h) => h === n ? o : h);
|
|
@@ -95,11 +95,11 @@ const k = (e) => e || { filters: [], logic: "and" }, x = (e, a) => k(a).filters.
|
|
|
95
95
|
filters: [...r.filters, o]
|
|
96
96
|
};
|
|
97
97
|
e.onFilterChange(m, t), e.onCloseMenu && e.onCloseMenu();
|
|
98
|
-
}, { column:
|
|
99
|
-
if (!
|
|
98
|
+
}, { column: s, filterUI: ee, hideSecondFilter: V, filterOperators: te } = e, u = fe();
|
|
99
|
+
if (!s || !s.field)
|
|
100
100
|
return /* @__PURE__ */ l.createElement("div", null);
|
|
101
|
-
const C = $(
|
|
102
|
-
field:
|
|
101
|
+
const C = $(s.filter), le = V !== void 0 ? V : me[C], d = c.filters, A = y(te[C], u), B = y(Ce, u), re = {
|
|
102
|
+
field: s.field,
|
|
103
103
|
value: d[0].value,
|
|
104
104
|
operator: d[0].operator,
|
|
105
105
|
operators: A,
|
|
@@ -107,34 +107,34 @@ const k = (e) => e || { filters: [], logic: "and" }, x = (e, a) => k(a).filters.
|
|
|
107
107
|
onChange: X,
|
|
108
108
|
filterType: C
|
|
109
109
|
}, ie = {
|
|
110
|
-
field:
|
|
110
|
+
field: s.field,
|
|
111
111
|
value: d[1].value,
|
|
112
112
|
operator: d[1].operator,
|
|
113
113
|
operators: A,
|
|
114
114
|
booleanValues: B,
|
|
115
115
|
onChange: Y,
|
|
116
116
|
filterType: C
|
|
117
|
-
}, U =
|
|
117
|
+
}, U = c.logic, w = y(ge, u), S = {
|
|
118
118
|
value: w.find((t) => t.operator === (U === null ? "" : U)),
|
|
119
119
|
onChange: Z,
|
|
120
120
|
data: w
|
|
121
|
-
},
|
|
121
|
+
}, b = ee, k = {
|
|
122
122
|
firstFilterProps: re,
|
|
123
123
|
secondFilterProps: ie,
|
|
124
|
-
logicData:
|
|
125
|
-
logicValue:
|
|
126
|
-
onLogicChange:
|
|
124
|
+
logicData: S.data,
|
|
125
|
+
logicValue: S.value,
|
|
126
|
+
onLogicChange: S.onChange,
|
|
127
127
|
hideSecondFilter: le
|
|
128
|
-
}, _ =
|
|
128
|
+
}, _ = O().filters.length !== 0 || v(d[0].operator) || v(d[1].operator), z = D() ? e.expanded : x, H = e.alwaysExpand && !a.mobileMode, ne = () => {
|
|
129
129
|
M(!1);
|
|
130
130
|
}, oe = () => {
|
|
131
131
|
M(!1), e.onCloseMenu && e.onCloseMenu();
|
|
132
132
|
}, ae = `${u.toLanguageString(
|
|
133
133
|
j,
|
|
134
134
|
E[j]
|
|
135
|
-
)} ${
|
|
136
|
-
return /* @__PURE__ */ l.createElement(
|
|
137
|
-
|
|
135
|
+
)} ${s.title || s.field}`;
|
|
136
|
+
return /* @__PURE__ */ l.createElement(se, null, !H && /* @__PURE__ */ l.createElement("div", { className: "k-expander" }, /* @__PURE__ */ l.createElement(
|
|
137
|
+
ce,
|
|
138
138
|
{
|
|
139
139
|
title: u.toLanguageString(q, E[q]),
|
|
140
140
|
iconClass: "k-i-filter",
|
|
@@ -146,20 +146,20 @@ const k = (e) => e || { filters: [], logic: "and" }, x = (e, a) => k(a).filters.
|
|
|
146
146
|
)), a.mobileMode && g ? /* @__PURE__ */ l.createElement(
|
|
147
147
|
Ee,
|
|
148
148
|
{
|
|
149
|
-
FilterUI:
|
|
150
|
-
filterUIProps:
|
|
149
|
+
FilterUI: b,
|
|
150
|
+
filterUIProps: k,
|
|
151
151
|
onBackView: ne,
|
|
152
152
|
adaptiveTitle: ae,
|
|
153
153
|
handleClose: oe,
|
|
154
|
-
submit:
|
|
155
|
-
clear:
|
|
154
|
+
submit: G,
|
|
155
|
+
clear: N,
|
|
156
156
|
isFilterValid: _
|
|
157
157
|
}
|
|
158
|
-
) : /* @__PURE__ */ l.createElement(ue, { show: (H || !!z) && !a.mobileMode }, /* @__PURE__ */ l.createElement("form", { className: "k-filter-menu", onSubmit:
|
|
158
|
+
) : /* @__PURE__ */ l.createElement(ue, { show: (H || !!z) && !a.mobileMode }, /* @__PURE__ */ l.createElement("form", { className: "k-filter-menu", onSubmit: G, onReset: N }, /* @__PURE__ */ l.createElement("div", { className: "k-filter-menu-container" }, b ? /* @__PURE__ */ l.createElement(b, { ...k }) : /* @__PURE__ */ l.createElement(Fe, { ...k }), /* @__PURE__ */ l.createElement("div", { className: "k-actions k-actions-stretched" }, /* @__PURE__ */ l.createElement(Q, { type: "button", themeColor: "primary", disabled: !_, onClick: G }, u.toLanguageString(J, E[J])), /* @__PURE__ */ l.createElement(Q, { type: "reset" }, u.toLanguageString(K, E[K])))))));
|
|
159
159
|
};
|
|
160
160
|
export {
|
|
161
161
|
Oe as GridColumnMenuFilter,
|
|
162
|
-
|
|
162
|
+
p as filterGroupByField,
|
|
163
163
|
Ne as isColumnMenuFilterActive,
|
|
164
|
-
|
|
164
|
+
I as rootFilterOrDefault
|
|
165
165
|
};
|