diff options
author | grant-kun <[email protected]> | 2022-09-26 11:32:15 -0500 |
---|---|---|
committer | grant-kun <[email protected]> | 2022-09-26 11:32:15 -0500 |
commit | fb1a557749b7b83e9e732df7c65cdb3f17d0400a (patch) | |
tree | 681d83ad203c94e322aa84a7e2e65d5cc679370e /node_modules/ee-first/index.js | |
parent | 34e9facde87cac19e7d68f6ffce28546d92c9979 (diff) | |
parent | 4b237cd7f3d9ebffdfc60d987c4df3c2595c3b7c (diff) |
Merge branch 'main' of https://github.com/squiresgrant/kanna-site
Diffstat (limited to 'node_modules/ee-first/index.js')
-rw-r--r-- | node_modules/ee-first/index.js | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/node_modules/ee-first/index.js b/node_modules/ee-first/index.js deleted file mode 100644 index 501287c..0000000 --- a/node_modules/ee-first/index.js +++ /dev/null @@ -1,95 +0,0 @@ -/*! - * ee-first - * Copyright(c) 2014 Jonathan Ong - * MIT Licensed - */ - -'use strict' - -/** - * Module exports. - * @public - */ - -module.exports = first - -/** - * Get the first event in a set of event emitters and event pairs. - * - * @param {array} stuff - * @param {function} done - * @public - */ - -function first(stuff, done) { - if (!Array.isArray(stuff)) - throw new TypeError('arg must be an array of [ee, events...] arrays') - - var cleanups = [] - - for (var i = 0; i < stuff.length; i++) { - var arr = stuff[i] - - if (!Array.isArray(arr) || arr.length < 2) - throw new TypeError('each array member must be [ee, events...]') - - var ee = arr[0] - - for (var j = 1; j < arr.length; j++) { - var event = arr[j] - var fn = listener(event, callback) - - // listen to the event - ee.on(event, fn) - // push this listener to the list of cleanups - cleanups.push({ - ee: ee, - event: event, - fn: fn, - }) - } - } - - function callback() { - cleanup() - done.apply(null, arguments) - } - - function cleanup() { - var x - for (var i = 0; i < cleanups.length; i++) { - x = cleanups[i] - x.ee.removeListener(x.event, x.fn) - } - } - - function thunk(fn) { - done = fn - } - - thunk.cancel = cleanup - - return thunk -} - -/** - * Create the event listener. - * @private - */ - -function listener(event, done) { - return function onevent(arg1) { - var args = new Array(arguments.length) - var ee = this - var err = event === 'error' - ? arg1 - : null - - // copy args to prevent arguments escaping scope - for (var i = 0; i < args.length; i++) { - args[i] = arguments[i] - } - - done(err, ee, event, args) - } -} |