Files
jsowell-charger-web/jsowell-ui/node_modules/promise-inflight/inflight.js
Lemon f5e6e29f00 Merge branch 'dev-zza' into dev
# Conflicts:
#	jsowell-ui/.env.development
#	jsowell-ui/.env.staging
#	jsowell-ui/bin/build-sit.bat
#	jsowell-ui/bin/build.bat
#	jsowell-ui/src/api/adapayMember/adapayMember.js
#	jsowell-ui/src/api/pile/merchant.js
#	jsowell-ui/src/router/index.js
#	jsowell-ui/src/views/financial/financeDetail.vue
#	jsowell-ui/src/views/financial/merchant.vue
#	jsowell-ui/src/views/homeIndex/homeIndex.vue
#	jsowell-ui/src/views/login.vue
#	jsowell-ui/src/views/pile/basic/detail.vue
#	jsowell-ui/src/views/pile/station/components/SiteInfo.vue
#	jsowell-ui/src/views/pile/station/detail.vue
#	jsowell-ui/src/views/pile/station/orderReport.vue
2025-06-03 14:26:37 +08:00

37 lines
842 B
JavaScript

'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]
}
}