| Server IP : 34.87.99.72 / Your IP : 216.73.217.31 Web Server : Apache/2.4.46 (Unix) OpenSSL/1.1.1n System : Linux zlock-bitnami-lamp-prod-v2-vm 4.19.0-16-cloud-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64 User : bitnami ( 1000) PHP Version : 7.4.18 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /lib/node_modules/npm/lib/utils/ |
Upload File : |
'use strict'
const validate = require('aproba')
const log = require('npmlog')
const Bluebird = require('bluebird')
let pulsers = 0
let pulse
function pulseStart (prefix) {
if (++pulsers > 1) return
pulse = setInterval(function () {
log.gauge.pulse(prefix)
}, 150)
}
function pulseStop () {
if (--pulsers > 0) return
clearInterval(pulse)
}
module.exports = function (prefix, cb) {
validate('SF', [prefix, cb])
if (!prefix) prefix = 'network'
pulseStart(prefix)
return function () {
pulseStop()
cb.apply(null, arguments)
}
}
module.exports.withPromise = pulseWhile
function pulseWhile (prefix, promise) {
if (!promise) {
promise = prefix
prefix = ''
}
pulseStart(prefix)
return Bluebird.resolve(promise).finally(() => pulseStop())
}