registry-auth-token
Advanced tools
Comparing version 3.1.2 to 3.2.0
24
index.js
@@ -11,6 +11,20 @@ var url = require('url') | ||
module.exports = function getRegistryAuthInfo(registryUrl, opts) { | ||
var options = opts || {} | ||
var npmrc = require('rc')('npm', {registry: 'https://registry.npmjs.org/'}) | ||
var checkUrl = registryUrl || npmrc.registry | ||
module.exports = function () { | ||
var checkUrl | ||
var options | ||
if (arguments.length >= 2) { | ||
checkUrl = arguments[0] | ||
options = arguments[1] | ||
} else if (typeof arguments[0] === 'string') { | ||
checkUrl = arguments[0] | ||
} else { | ||
options = arguments[0] | ||
} | ||
options = options || {} | ||
options.npmrc = options.npmrc || require('rc')('npm', {registry: 'https://registry.npmjs.org/'}) | ||
checkUrl = checkUrl || options.npmrc.registry | ||
return getRegistryAuthInfo(checkUrl, options) | ||
} | ||
function getRegistryAuthInfo(checkUrl, options) { | ||
var parsed = url.parse(checkUrl, false, true) | ||
@@ -23,3 +37,3 @@ var pathname | ||
var regUrl = '//' + parsed.host + pathname.replace(/\/$/, '') | ||
var authInfo = getAuthInfoForUrl(regUrl, npmrc) | ||
var authInfo = getAuthInfoForUrl(regUrl, options.npmrc) | ||
if (authInfo) { | ||
@@ -26,0 +40,0 @@ return authInfo |
{ | ||
"name": "registry-auth-token", | ||
"version": "3.1.2", | ||
"version": "3.2.0", | ||
"description": "Get the auth token set for an npm registry (if any)", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -36,2 +36,10 @@ # registry-auth-token | ||
console.log(getRegistryUrl('@foobar')) | ||
// Use the npm config that is passed in | ||
console.log(getRegistryUrl('http://registry.foobar.eu/', { | ||
npmrc: { | ||
'registry': 'http://registry.foobar.eu/', | ||
'//registry.foobar.eu/:_authToken': 'qar' | ||
} | ||
})) | ||
``` | ||
@@ -38,0 +46,0 @@ |
@@ -1,5 +0,5 @@ | ||
module.exports = function (scope) { | ||
var rc = require('rc')('npm', {registry: 'https://registry.npmjs.org/'}) | ||
module.exports = function (scope, npmrc) { | ||
var rc = npmrc || require('rc')('npm', {registry: 'https://registry.npmjs.org/'}) | ||
var url = rc[scope + ':registry'] || rc.registry | ||
return url.slice(-1) === '/' ? url : url + '/' | ||
} |
@@ -55,2 +55,20 @@ var fs = require('fs') | ||
it('should use npmrc passed in', function (done) { | ||
var content = [ | ||
'registry=http://registry.foobar.eu/', | ||
'//registry.foobar.eu/:_authToken=foobar', '' | ||
].join('\n') | ||
fs.writeFile(npmRcPath, content, function (err) { | ||
var getAuthToken = requireUncached('../index') | ||
assert(!err, err) | ||
const npmrc = { | ||
'registry': 'http://registry.foobar.eu/', | ||
'//registry.foobar.eu/:_authToken': 'qar' | ||
} | ||
assert.deepEqual(getAuthToken({npmrc: npmrc}), {token: 'qar', type: 'Bearer'}) | ||
done() | ||
}) | ||
}) | ||
it('should return auth token if registry url has port specified', function (done) { | ||
@@ -57,0 +75,0 @@ var content = [ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
24337
481
66