fix: deepMerge
							parent
							
								
									477a658645
								
							
						
					
					
						commit
						e960ac6419
					
				|  | @ -58,26 +58,26 @@ export function deepMerge<T extends object | null | undefined, U extends object | |||
|   if (!source) { | ||||
|     return target as T & U | ||||
|   } | ||||
|   if (isArray(target) && isArray(source)) { | ||||
|     switch (mergeArrays) { | ||||
|       case 'union': | ||||
|         return unionWith(target, source, isEqual) as T & U | ||||
|       case 'intersection': | ||||
|         return intersectionWith(target, source, isEqual) as T & U | ||||
|       case 'concat': | ||||
|         return target.concat(source) as T & U | ||||
|       case 'replace': | ||||
|         return source as T & U | ||||
|       default: | ||||
|         throw new Error(`Unknown merge array strategy: ${mergeArrays}`) | ||||
|   return mergeWith({}, source, target, (sourceValue, targetValue) => { | ||||
|     if (isArray(targetValue) && isArray(sourceValue)) { | ||||
|       switch (mergeArrays) { | ||||
|         case 'union': | ||||
|           return unionWith(sourceValue, targetValue, isEqual) | ||||
|         case 'intersection': | ||||
|           return intersectionWith(sourceValue, targetValue, isEqual) | ||||
|         case 'concat': | ||||
|           return sourceValue.concat(targetValue) | ||||
|         case 'replace': | ||||
|           return targetValue | ||||
|         default: | ||||
|           throw new Error(`Unknown merge array strategy: ${mergeArrays as string}`) | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|   if (isObject(target) && isObject(source)) { | ||||
|     return mergeWith({}, target, source, (targetValue, sourceValue) => { | ||||
|       return deepMerge(targetValue, sourceValue, mergeArrays) | ||||
|     }) as T & U | ||||
|   } | ||||
|   return source as T & U | ||||
|     if (isObject(targetValue) && isObject(sourceValue)) { | ||||
|       return deepMerge(sourceValue, targetValue, mergeArrays) | ||||
|     } | ||||
|     return undefined | ||||
|   }) | ||||
| } | ||||
| 
 | ||||
| export function openWindow(url: string, opt?: { target?: TargetContext | string; noopener?: boolean; noreferrer?: boolean }) { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 xingyu
						xingyu