You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.0 KiB
35 lines
1.0 KiB
import defineProperty from "./defineProperty"; |
|
|
|
function ownKeys(object, enumerableOnly) { |
|
var keys = Object.keys(object); |
|
|
|
if (Object.getOwnPropertySymbols) { |
|
var symbols = Object.getOwnPropertySymbols(object); |
|
if (enumerableOnly) symbols = symbols.filter(function (sym) { |
|
return Object.getOwnPropertyDescriptor(object, sym).enumerable; |
|
}); |
|
keys.push.apply(keys, symbols); |
|
} |
|
|
|
return keys; |
|
} |
|
|
|
export default function _objectSpread2(target) { |
|
for (var i = 1; i < arguments.length; i++) { |
|
var source = arguments[i] != null ? arguments[i] : {}; |
|
|
|
if (i % 2) { |
|
ownKeys(Object(source), true).forEach(function (key) { |
|
defineProperty(target, key, source[key]); |
|
}); |
|
} else if (Object.getOwnPropertyDescriptors) { |
|
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); |
|
} else { |
|
ownKeys(Object(source)).forEach(function (key) { |
|
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); |
|
}); |
|
} |
|
} |
|
|
|
return target; |
|
} |