moltres-utils
Version:
Utils for Moltres apps
52 lines (43 loc) • 1.58 kB
JavaScript
require("core-js/modules/es6.object.define-property");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
require("core-js/modules/es6.object.assign");
var _curryN = _interopRequireDefault(require("../common/curryN"));
var _isFunction = _interopRequireDefault(require("../lang/isFunction"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* The assign() method is used to copy the values of all enumerable own properties from one or more source objects to a target object. It will return the target object.
*
* Dispatches to the `assign` method of the first parameter if it exists.
*
* This method is auto curried to 2 args.
*
* @function
* @since v0.0.9
* @category data
* @param {Object} target The target object.
* @param {...Object} sources The source object(s).
* @returns {Object} The target object
* @example
*
* const o1 = { a: 1, b: 1, c: 1 }
* const o2 = { b: 2, c: 2 }
* const o3 = { c: 3 }
*
* assign({}, o1, o2, o3) //=> { a: 1, b: 2, c: 3 }
*/
var assign = (0, _curryN.default)(2, function (target) {
for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
sources[_key - 1] = arguments[_key];
}
if (!!target && (0, _isFunction.default)(target.assign)) {
return target.assign.apply(target, sources);
}
return Object.assign.apply(Object, [target].concat(sources));
});
var _default = assign;
exports.default = _default;
//# sourceMappingURL=assign.js.map
;