HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/.nvm/versions/node/v20.10.0/lib/node_modules/npm/lib/utils/pulse-till-done.js
const log = require('./log-shim.js')

let pulseTimer = null
const withPromise = async (promise) => {
  pulseStart()
  try {
    return await promise
  } finally {
    pulseStop()
  }
}

const pulseStart = () => {
  pulseTimer = pulseTimer || setInterval(() => {
    log.gauge.pulse('')
  }, 150)
}

const pulseStop = () => {
  clearInterval(pulseTimer)
  pulseTimer = null
}

module.exports = {
  withPromise,
}