* Used by `_.defaultsDeep` to customize its `_.merge` use to merge source * objects into destination objects that are passed thru. * * @private * @param {*} objValue The destination value. * @param {*} srcValue The source value. * @param {string} key The key of the prop
(objValue, srcValue, key, object, source, stack)
| 5668 | * @returns {*} Returns the value to assign. |
| 5669 | */ |
| 5670 | function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { |
| 5671 | if (isObject(objValue) && isObject(srcValue)) { |
| 5672 | // Recursively merge objects and arrays (susceptible to call stack limits). |
| 5673 | stack.set(srcValue, objValue); |
| 5674 | baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack); |
| 5675 | stack['delete'](srcValue); |
| 5676 | } |
| 5677 | return objValue; |
| 5678 | } |
| 5679 | |
| 5680 | /** |
| 5681 | * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain |