sharyn
Version:
Combines all the other packages under one.
51 lines (38 loc) • 1.35 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/typeof"));
var _isArray = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/array/is-array"));
var spread = function spread(param) {
// Arrays cases
if ((0, _isArray.default)(param)) {
return param.filter(function (x) {
return x !== undefined;
});
}
for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
rest[_key - 1] = arguments[_key];
}
if (rest.length > 0) {
return [param].concat(rest).filter(function (x) {
return x !== undefined;
});
} // Object case
if ((0, _typeof2.default)(param) === 'object' && param !== null) {
var keys = (0, _keys.default)(param);
var newObj = {};
keys.forEach(function (key) {
if (param[key] !== undefined) {
newObj[key] = param[key];
}
});
return newObj;
} // One param case
return param !== undefined ? [param] : [];
};
var _default = spread;
exports.default = _default;