Sha256: 791efa6c65e11a64d286415b1b0ea46dec48c9a619e2090ce53a093f54d3e6a5
Contents?: true
Size: 740 Bytes
Versions: 26
Compression:
Stored size: 740 Bytes
Contents
import { isObject } from './isObject' /** * Deeply merges two given objects with the right one * having a priority during property assignment. */ export function mergeRight( left: Record<string, any>, right: Record<string, any>, ) { return Object.entries(right).reduce( (result, [key, rightValue]) => { const leftValue = result[key] if (Array.isArray(leftValue) && Array.isArray(rightValue)) { result[key] = leftValue.concat(rightValue) return result } if (isObject(leftValue) && isObject(rightValue)) { result[key] = mergeRight(leftValue, rightValue) return result } result[key] = rightValue return result }, Object.assign({}, left), ) }
Version data entries
26 entries across 26 versions & 1 rubygems