UNPKG

@sapphire/utilities

Version:
21 lines (19 loc) 824 B
import { __name } from '../chunk-PAWJFY3S.mjs'; import { deepClone } from './deepClone.mjs'; import { isObject } from './isObject.mjs'; function mergeDefault(base, overwrites) { if (!overwrites) return deepClone(base); for (const [baseKey, baseValue] of Object.entries(base)) { const overwritesValueAtBaseKey = Reflect.get(overwrites, baseKey); if (typeof overwritesValueAtBaseKey === "undefined") { Reflect.set(overwrites, baseKey, deepClone(baseValue)); } else if (isObject(overwritesValueAtBaseKey)) { Reflect.set(overwrites, baseKey, mergeDefault(baseValue != null ? baseValue : {}, overwritesValueAtBaseKey)); } } return overwrites; } __name(mergeDefault, "mergeDefault"); export { mergeDefault }; //# sourceMappingURL=mergeDefault.mjs.map //# sourceMappingURL=mergeDefault.mjs.map