(key: string, target: AnyObject, source: AnyObject, options: AnyObject)
| 218 | * @private |
| 219 | */ |
| 220 | export function _merger(key: string, target: AnyObject, source: AnyObject, options: AnyObject) { |
| 221 | if (!isValidKey(key)) { |
| 222 | return; |
| 223 | } |
| 224 | |
| 225 | const tval = target[key]; |
| 226 | const sval = source[key]; |
| 227 | |
| 228 | if (isObject(tval) && isObject(sval)) { |
| 229 | // eslint-disable-next-line @typescript-eslint/no-use-before-define |
| 230 | merge(tval, sval, options); |
| 231 | } else { |
| 232 | target[key] = clone(sval); |
| 233 | } |
| 234 | } |
| 235 | |
| 236 | export interface MergeOptions { |
| 237 | merger?: (key: string, target: AnyObject, source: AnyObject, options?: AnyObject) => void; |
nothing calls this directly
no test coverage detected