fix(compose): dont mutate passed functions array
This commit is contained in:
parent
26d0ff3c9a
commit
ed252276cb
@ -4,11 +4,13 @@ const defaultOpts = { async: false, right: false }
|
|||||||
|
|
||||||
exports.compose = function compose(opts, fns) {
|
exports.compose = function compose(opts, fns) {
|
||||||
if (Array.isArray(opts)) {
|
if (Array.isArray(opts)) {
|
||||||
fns = opts
|
fns = opts.slice() // don't mutate passed array
|
||||||
opts = defaultOpts
|
opts = defaultOpts
|
||||||
} else if (typeof opts === 'object') {
|
} else if (typeof opts === 'object') {
|
||||||
opts = Object.assign({}, defaultOpts, opts)
|
opts = Object.assign({}, defaultOpts, opts)
|
||||||
if (!Array.isArray(fns)) {
|
if (Array.isArray(fns)) {
|
||||||
|
fns = fns.slice() // don't mutate passed array
|
||||||
|
} else {
|
||||||
fns = Array.prototype.slice.call(arguments, 1)
|
fns = Array.prototype.slice.call(arguments, 1)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user