£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyʦ•ꎅȮFÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~芩ÊǍí`ÔÑ©ú뙵'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶êםӼ㞪éUWŸÈË%DÒÕ¬ï‘]/Åcx ‰ï2ß]ä6G[]S£Ôϯrs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ ¯¹ægƒÛowЍø^d™ý½ßB7áyMä9ÜÖUã !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! '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] } }