Linux altar53.supremepanel53.com 4.18.0-553.8.1.lve.el8.x86_64 #1 SMP Thu Jul 4 16:24:39 UTC 2024 x86_64
/ lib/ node_modules/ npm/ node_modules/ promise-inflight/ |
|
'use strict' module.exports = inflight let Bluebird try { Bluebird = require('bluebird') } catch (_) { Bluebird = Promise } const active = {} inflight.active = active function inflight (unique, doFly) { return Bluebird.all([unique, doFly]).then(function (args) { const unique = args[0] const doFly = args[1] if (Array.isArray(unique)) { return Bluebird.all(unique).then(function (uniqueArr) { return _inflight(uniqueArr.join(''), doFly) }) } else { return _inflight(unique, doFly) } }) function _inflight (unique, doFly) { if (!active[unique]) { active[unique] = (new Bluebird(function (resolve) { return resolve(doFly()) })) active[unique].then(cleanup, cleanup) function cleanup() { delete active[unique] } } return active[unique] } }