@progress/kendo-react-map
Version:
KendoReact Map package
46 lines (45 loc) • 1.44 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 p = (t, e) => e.mapCollectionIdxKey ? a.collectionConfigurationItem(t, e) : e.mapKey ? a.configurationItem(t, e) : {}, c = (t, e) => {
if (e.type)
switch (e.type) {
case "add":
return [...t, e.payload];
case "remove":
return t.filter((l) => l !== e.payload);
default:
return t;
}
else
return [];
}, a = {
configurationItem(t, e) {
return Object.assign(t, {
[e.mapKey]: e.payload
});
},
collectionConfigurationItem(t, e) {
let l = !1;
const [s, n] = e.mapCollectionIdxKey.split("_"), i = t[s].map((r, o) => parseInt(n, 10) === o ? (l = !0, e.payload) : r);
return l === !1 && i.splice(parseInt(n, 10), 0, e.payload), Object.assign(t, {
[s]: i
});
},
themeItem(t, e) {
let l = {};
const s = Object.assign(l, t), { field: n, value: i } = e.payload, r = n.split(".");
let o = r.shift();
for (; r.length > 0; )
l = l[o] = l[o] || {}, o = r.shift();
return l[o] = i, s;
}
};
export {
c as observersReducer,
p as optionsReducer
};