"use strict";
|
|
exports.__esModule = true;
|
exports.deepAssign = deepAssign;
|
|
var _ = require(".");
|
|
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
function assignKey(to, from, key) {
|
var val = from[key];
|
|
if (!(0, _.isDef)(val)) {
|
return;
|
}
|
|
if (!hasOwnProperty.call(to, key) || !(0, _.isObject)(val)) {
|
to[key] = val;
|
} else {
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
to[key] = deepAssign(Object(to[key]), from[key]);
|
}
|
}
|
|
function deepAssign(to, from) {
|
Object.keys(from).forEach(function (key) {
|
assignKey(to, from, key);
|
});
|
return to;
|
}
|