index.js 467 B

12345678910111213141516171819
  1. 'use strict'
  2. module.exports = function () {
  3. if (!process.env.npm_config_user_agent) {
  4. return undefined
  5. }
  6. return pmFromUserAgent(process.env.npm_config_user_agent)
  7. }
  8. function pmFromUserAgent (userAgent) {
  9. const pmSpec = userAgent.split(' ')[0]
  10. const separatorPos = pmSpec.lastIndexOf('/')
  11. const name = pmSpec.substring(0, separatorPos)
  12. return {
  13. name: name === 'npminstall' ? 'cnpm' : name,
  14. version: pmSpec.substring(separatorPos + 1)
  15. }
  16. }