HEX
Server: LiteSpeed
System: Linux cluster02.load-balancer.x2.network 4.18.0-553.51.1.lve.1.el8.x86_64 #1 SMP Wed May 14 14:34:57 UTC 2025 x86_64
User: kbdhpghp (1098)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: //proc/thread-self/root/opt/alt/alt-nodejs16/root/usr/lib/node_modules/npm/lib/utils/web-auth.js
const EventEmitter = require('events')
const { webAuthCheckLogin } = require('npm-profile')

async function webAuth (opener, initialUrl, doneUrl, opts) {
  const doneEmitter = new EventEmitter()

  const openPromise = opener(initialUrl, doneEmitter)
  const webAuthCheckPromise = webAuthCheckLogin(doneUrl, { ...opts, cache: false })
    .then(authResult => {
      // cancel open prompt if it's present
      doneEmitter.emit('abort')

      return authResult.token
    })

  await openPromise
  return await webAuthCheckPromise
}

module.exports = webAuth