Socket
Socket
Sign inDemoInstall

package-json

Package Overview
Dependencies
22
Maintainers
2
Versions
34
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.4.0 to 3.0.0

39

index.js
'use strict';
var url = require('url');
var got = require('got');
var registryUrl = require('registry-url');
var registryAuthToken = require('registry-auth-token');
var semver = require('semver');
const url = require('url');
const got = require('got');
const registryUrl = require('registry-url');
const registryAuthToken = require('registry-auth-token');
const semver = require('semver');
module.exports = function (name, version) {
var scope = name.split('/')[0];
var regUrl = registryUrl(scope);
var pkgUrl = url.resolve(regUrl, encodeURIComponent(name).replace(/^%40/, '@'));
var authInfo = registryAuthToken(regUrl);
var headers = {};
module.exports = (name, version) => {
const scope = name.split('/')[0];
const regUrl = registryUrl(scope);
const pkgUrl = url.resolve(regUrl, encodeURIComponent(name).replace(/^%40/, '@'));
const authInfo = registryAuthToken(regUrl);
const headers = {};
if (authInfo) {
headers.authorization = authInfo.type + ' ' + authInfo.token;
headers.authorization = `${authInfo.type} ${authInfo.token}`;
}
return got(pkgUrl, {
json: true,
headers: headers
})
.then(function (res) {
var data = res.body;
return got(pkgUrl, {json: true, headers})
.then(res => {
let data = res.body;

@@ -30,3 +27,3 @@ if (version === 'latest') {

if (!data.versions[version]) {
var versions = Object.keys(data.versions);
const versions = Object.keys(data.versions);
version = semver.maxSatisfying(versions, version);

@@ -48,5 +45,5 @@

})
.catch(function (err) {
.catch(err => {
if (err.statusCode === 404) {
throw new Error('Package `' + name + '` doesn\'t exist');
throw new Error(`Package \`${name}\` doesn't exist`);
}

@@ -53,0 +50,0 @@

{
"name": "package-json",
"version": "2.4.0",
"version": "3.0.0",
"description": "Get the package.json of a package from the npm registry",

@@ -13,3 +13,3 @@ "license": "MIT",

"engines": {
"node": ">=0.10.0"
"node": ">=4"
},

@@ -34,3 +34,3 @@ "scripts": {

"dependencies": {
"got": "^5.0.0",
"got": "^6.7.1",
"registry-auth-token": "^3.0.1",

@@ -37,0 +37,0 @@ "registry-url": "^3.0.3",

@@ -23,3 +23,3 @@ # package-json [![Build Status](https://travis-ci.org/sindresorhus/package-json.svg?branch=master)](https://travis-ci.org/sindresorhus/package-json)

// also works with scoped packages
// Also works with scoped packages
packageJson('@company/package', 'latest').then(json => {

@@ -36,4 +36,3 @@ console.log(json);

You can optionally specify a version (e.g. `1.0.0`) or `latest`.
If you don't specify a version you'll get the [main entry](http://registry.npmjs.org/pageres/) containing all versions.
You can optionally specify a version (e.g. `1.0.0`) or `latest`. If you don't specify a version you'll get the [main entry](http://registry.npmjs.org/pageres/) containing all versions.

@@ -65,2 +64,2 @@ The version can also be in any format supported by the [semver](https://www.npmjs.com/package/semver) module. For example:

MIT © [Sindre Sorhus](http://sindresorhus.com)
MIT © [Sindre Sorhus](https://sindresorhus.com)
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc