1export function deepMerge(target: any, source: any) { 2 if (typeof target !== 'object') { 3 return source; 4 } 5 if (Array.isArray(target) && Array.isArray(source)) { 6 return target.concat(source); 7 } 8 Object.keys(source).forEach((key) => { 9 if (typeof source[key] === 'object' && source[key] !== null) { 10 target[key] = deepMerge(target[key], source[key]); 11 } else { 12 target[key] = source[key]; 13 } 14 }); 15 return target; 16} 17