@progress/kendo-react-charts
Version:
React Chart renders a wide range of high-quality data visualizations. KendoReact Charts package
59 lines (58 loc) • 1.7 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
const a = (t, e) => e.chartCollectionIdxKey ? c.collectionConfigurationItem(t, e) : e.chartKey ? c.configurationItem(t, e) : {}, u = (t, e) => {
if (e.type)
switch (e.type) {
case "set":
return c.themeItem(t, e);
case "push":
return Object.assign(t, e.payload);
default:
return t;
}
else
return {};
}, p = (t, e) => {
if (e.type)
switch (e.type) {
case "add":
return [...t, e.payload];
case "remove":
return t.filter((r) => r !== e.payload);
default:
return t;
}
else
return [];
}, c = {
configurationItem(t, e) {
return Object.assign(t, {
[e.chartKey]: e.payload
});
},
collectionConfigurationItem(t, e) {
let r = !1;
const [o, n] = e.chartCollectionIdxKey.split("_"), i = t[o].map((l, s) => parseInt(n, 10) === s ? (r = !0, e.payload) : l);
return r === !1 && i.splice(parseInt(n, 10), 0, e.payload), Object.assign(t, {
[o]: i
});
},
themeItem(t, e) {
let r = {};
const o = Object.assign(r, t), { field: n, value: i } = e.payload, l = n.split(".");
let s = l.shift();
for (; l.length > 0; )
r = r[s] = r[s] || {}, s = l.shift();
return r[s] = i, o;
}
};
export {
p as observersReducer,
a as optionsReducer,
u as themeReducer
};