bot/node_modules/npm/lib/utils/hosted-git-info-from-manife...

15 lines
588 B
JavaScript

// given a manifest, try to get the hosted git info from it based on
// repository (if a string) or repository.url (if an object)
// returns null if it's not a valid repo, or not a known hosted repo
const hostedGitInfo = require('hosted-git-info')
module.exports = mani => {
const r = mani.repository
const rurl = !r ? null
: typeof r === 'string' ? r
: typeof r === 'object' && typeof r.url === 'string' ? r.url
: null
// hgi returns undefined sometimes, but let's always return null here
return (rurl && hostedGitInfo.fromUrl(rurl.replace(/^git\+/, ''))) || null
}