lingjing/node_modules/next/dist/esm/next-devtools/shared/deepmerge.js
2026-02-23 09:51:43 +00:00

25 lines
847 B
JavaScript

export function deepMerge(target, source) {
if (!source || typeof source !== 'object' || Array.isArray(source)) {
return source;
}
if (!target || typeof target !== 'object' || Array.isArray(target)) {
return source;
}
const result = {
...target
};
for(const key in source){
const sourceValue = source[key];
const targetValue = target[key];
if (sourceValue !== undefined) {
if (sourceValue && typeof sourceValue === 'object' && !Array.isArray(sourceValue) && targetValue && typeof targetValue === 'object' && !Array.isArray(targetValue)) {
result[key] = deepMerge(targetValue, sourceValue);
} else {
result[key] = sourceValue;
}
}
}
return result;
}
//# sourceMappingURL=deepmerge.js.map