@hitachivantara/uikit-react-core
Version:
Core React components for the NEXT Design System.
20 lines (19 loc) • 500 B
JavaScript
const isObject = (val) => val && typeof val === "object" && !Array.isArray(val);
function merge(target, source) {
Object.keys(source || {}).forEach((keyProp) => {
const key = keyProp;
if (isObject(target[key]) && isObject(source?.[key])) {
merge(target[key], source?.[key]);
} else {
target[key] = source?.[key];
}
});
}
function deepMerge(target, source) {
const result = structuredClone(target);
merge(result, source);
return result;
}
export {
deepMerge
};