mirror of
https://github.com/JonasunderscoreJones/jonas_jones-api.git
synced 2025-10-23 17:19:18 +02:00
some progress
This commit is contained in:
parent
aea93a5527
commit
e3c15bd288
1388 changed files with 306946 additions and 68323 deletions
60
node_modules/merge-descriptors/index.js
generated
vendored
Normal file
60
node_modules/merge-descriptors/index.js
generated
vendored
Normal file
|
@ -0,0 +1,60 @@
|
|||
/*!
|
||||
* merge-descriptors
|
||||
* Copyright(c) 2014 Jonathan Ong
|
||||
* Copyright(c) 2015 Douglas Christopher Wilson
|
||||
* MIT Licensed
|
||||
*/
|
||||
|
||||
'use strict'
|
||||
|
||||
/**
|
||||
* Module exports.
|
||||
* @public
|
||||
*/
|
||||
|
||||
module.exports = merge
|
||||
|
||||
/**
|
||||
* Module variables.
|
||||
* @private
|
||||
*/
|
||||
|
||||
var hasOwnProperty = Object.prototype.hasOwnProperty
|
||||
|
||||
/**
|
||||
* Merge the property descriptors of `src` into `dest`
|
||||
*
|
||||
* @param {object} dest Object to add descriptors to
|
||||
* @param {object} src Object to clone descriptors from
|
||||
* @param {boolean} [redefine=true] Redefine `dest` properties with `src` properties
|
||||
* @returns {object} Reference to dest
|
||||
* @public
|
||||
*/
|
||||
|
||||
function merge(dest, src, redefine) {
|
||||
if (!dest) {
|
||||
throw new TypeError('argument dest is required')
|
||||
}
|
||||
|
||||
if (!src) {
|
||||
throw new TypeError('argument src is required')
|
||||
}
|
||||
|
||||
if (redefine === undefined) {
|
||||
// Default to true
|
||||
redefine = true
|
||||
}
|
||||
|
||||
Object.getOwnPropertyNames(src).forEach(function forEachOwnPropertyName(name) {
|
||||
if (!redefine && hasOwnProperty.call(dest, name)) {
|
||||
// Skip desriptor
|
||||
return
|
||||
}
|
||||
|
||||
// Copy descriptor
|
||||
var descriptor = Object.getOwnPropertyDescriptor(src, name)
|
||||
Object.defineProperty(dest, name, descriptor)
|
||||
})
|
||||
|
||||
return dest
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue