Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@mightyplow/jslib

Package Overview
Dependencies
Maintainers
1
Versions
47
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@mightyplow/jslib - npm Package Compare versions

Comparing version
0.15.0
to
0.16.0
+48
object/merge.js
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
/**
* Merges too objects deeply.
*
* @memberOf object
* @function
* @param {Object} targetObject
* @param {Object[]} objects
* @return {Object}
*/
var merge = function merge(targetObject) {
for (var _len = arguments.length, objects = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
objects[_key - 1] = arguments[_key];
}
return objects.reduce(function (targetObject, object) {
return Object.entries(object).reduce(function (targetObject, _ref) {
var _ref2 = _slicedToArray(_ref, 2),
key = _ref2[0],
value = _ref2[1];
if (key in targetObject) {
if (Array.isArray(value)) {
targetObject[key] = targetObject[key].concat(value);
} else if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object') {
merge(targetObject[key], value);
} else {
targetObject[key] = value;
}
} else {
targetObject[key] = value;
}
return targetObject;
}, targetObject);
}, targetObject);
};
exports.default = merge;
+6
-0

@@ -177,2 +177,8 @@ 'use strict';

});
Object.defineProperty(exports, 'merge', {
enumerable: true,
get: function get() {
return _object.merge;
}
});
Object.defineProperty(exports, 'prop', {

@@ -179,0 +185,0 @@ enumerable: true,

@@ -43,2 +43,11 @@ 'use strict';

var _merge = require('./merge');
Object.defineProperty(exports, 'merge', {
enumerable: true,
get: function get() {
return _interopRequireDefault(_merge).default;
}
});
var _prop = require('./prop');

@@ -45,0 +54,0 @@

+1
-1
{
"name": "@mightyplow/jslib",
"version": "0.15.0",
"version": "0.16.0",
"description": "js helpers library",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

@@ -238,2 +238,3 @@ ## Objects

* [.fromArray(array, key, keep)](#object.fromArray) ⇒ <code>\*</code>
* [.merge(targetObject, objects)](#object.merge) ⇒ <code>Object</code>
* [.prop(prop)](#object.prop) ⇒ [<code>function</code>](#function)

@@ -291,2 +292,14 @@ * [.removeProp(object)](#object.removeProp)

<a name="object.merge"></a>
### object.merge(targetObject, objects) ⇒ <code>Object</code>
Merges too objects deeply.
**Kind**: static method of [<code>object</code>](#object)
| Param | Type |
| --- | --- |
| targetObject | <code>Object</code> |
| objects | <code>Array.&lt;Object&gt;</code> |
<a name="object.prop"></a>

@@ -293,0 +306,0 @@