| 1234567891011121314151617181920212223242526272829303132333435 | 'use strict'const npm = require('../npm.js')const output = require('./output.js')const opener = require('opener')// attempt to open URL in web-browser, print address otherwise:module.exports = function open (url, errMsg, cb, browser = npm.config.get('browser')) {  function printAlternateMsg () {    const json = npm.config.get('json')    const alternateMsg = json      ? JSON.stringify({        title: errMsg,        url      }, null, 2)      : `${errMsg}:\n\n${url}`    output(alternateMsg)  }  const skipBrowser = process.argv.indexOf('--no-browser') > -1  if (skipBrowser) {    printAlternateMsg()    return cb()  }  opener(url, { command: browser }, (er) => {    if (er && er.code === 'ENOENT') {      printAlternateMsg()      return cb()    } else {      return cb(er)    }  })}
 |