Socket
Socket
Sign inDemoInstall

rollup-plugin-node-resolve

Package Overview
Dependencies
13
Maintainers
2
Versions
34
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.1.1 to 3.0.0

5

CHANGELOG.md
# rollup-plugin-node-resolve changelog
## 3.0.0
* [BREAKING] Remove `options.skip` ([#90](https://github.com/rollup/rollup-plugin-node-resolve/pull/90))
* Add `modulesOnly` option ([#96](https://github.com/rollup/rollup-plugin-node-resolve/pull/96))
## 2.1.1

@@ -4,0 +9,0 @@

58

dist/rollup-plugin-node-resolve.cjs.js

@@ -9,2 +9,3 @@ 'use strict';

var browserResolve = _interopDefault(require('browser-resolve'));
var isModule = _interopDefault(require('is-module'));
var fs = _interopDefault(require('fs'));

@@ -24,6 +25,5 @@

var skip = options.skip || [];
var useJsnext = options.jsnext === true;
var useModule = options.module !== false;
var useMain = options.main !== false;
var useJsnext = options.jsnext === true;
var isPreferBuiltinsSet = options.preferBuiltins === true || options.preferBuiltins === false;

@@ -37,2 +37,10 @@ var preferBuiltins = isPreferBuiltinsSet ? options.preferBuiltins : true;

if ( options.skip ) {
throw new Error( 'options.skip is no longer supported — you should use the main Rollup `externals` option instead' );
}
if ( !useModule && !useMain && !useJsnext ) {
throw new Error( "At least one of options.module, options.main or options.jsnext must be true" );
}
return {

@@ -58,5 +66,5 @@ name: 'node-resolve',

if ( skip !== true && ~skip.indexOf( id ) ) { return null; }
return new Promise( function ( fulfil, reject ) {
var disregardResult = false;
return new Promise( function ( accept, reject ) {
resolveId(

@@ -67,6 +75,3 @@ importee,

packageFilter: function packageFilter ( pkg ) {
if ( !useJsnext && !useMain && !useModule ) {
if ( skip === true ) { accept( false ); }
else { reject( Error( ("To import from a package in node_modules (" + importee + "), either options.jsnext, options.module or options.main must be true") ) ); }
} else if ( useModule && pkg[ 'module' ] ) {
if ( useModule && pkg[ 'module' ] ) {
pkg[ 'main' ] = pkg[ 'module' ];

@@ -76,4 +81,3 @@ } else if ( useJsnext && pkg[ 'jsnext:main' ] ) {

} else if ( ( useJsnext || useModule ) && !useMain ) {
if ( skip === true ) { accept( false ); }
else { reject( Error( ("Package " + importee + " (imported by " + importer + ") does not have a module or jsnext:main field. You should either allow legacy modules with options.main, or skip it with options.skip = ['" + importee + "'])") ) ); }
disregardResult = true;
}

@@ -85,14 +89,11 @@ return pkg;

function ( err, resolved ) {
if ( resolved && fs.existsSync( resolved ) ) {
resolved = fs.realpathSync( resolved );
}
if ( !disregardResult && !err ) {
if ( resolved && fs.existsSync( resolved ) ) {
resolved = fs.realpathSync( resolved );
}
if ( err ) {
if ( skip === true ) { accept( false ); }
else { reject( Error( ("Could not resolve '" + importee + "' from " + (path.normalize( importer ))) ) ); }
} else {
if ( resolved === COMMONJS_BROWSER_EMPTY ) {
accept( ES6_BROWSER_EMPTY );
fulfil( ES6_BROWSER_EMPTY );
} else if ( ~builtins.indexOf( resolved ) ) {
accept( null );
fulfil( null );
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) {

@@ -106,9 +107,20 @@ if ( !isPreferBuiltinsSet ) {

}
accept( null );
fulfil( null );
} else if ( jail && resolved.indexOf( path.normalize( jail.trim( path.sep ) ) ) !== 0 ) {
accept( null );
} else {
accept( resolved );
fulfil( null );
}
}
if ( resolved && options.modulesOnly ) {
fs.readFile( resolved, 'utf-8', function ( err, code ) {
if ( err ) {
reject( err );
} else {
var valid = isModule( code );
fulfil( valid ? resolved : null );
}
});
} else {
fulfil( resolved );
}
}

@@ -115,0 +127,0 @@ );

@@ -5,2 +5,3 @@ import { dirname, normalize, resolve, sep } from 'path';

import browserResolve from 'browser-resolve';
import isModule from 'is-module';
import fs from 'fs';

@@ -20,6 +21,5 @@

var skip = options.skip || [];
var useJsnext = options.jsnext === true;
var useModule = options.module !== false;
var useMain = options.main !== false;
var useJsnext = options.jsnext === true;
var isPreferBuiltinsSet = options.preferBuiltins === true || options.preferBuiltins === false;

@@ -33,2 +33,10 @@ var preferBuiltins = isPreferBuiltinsSet ? options.preferBuiltins : true;

if ( options.skip ) {
throw new Error( 'options.skip is no longer supported — you should use the main Rollup `externals` option instead' );
}
if ( !useModule && !useMain && !useJsnext ) {
throw new Error( "At least one of options.module, options.main or options.jsnext must be true" );
}
return {

@@ -54,5 +62,5 @@ name: 'node-resolve',

if ( skip !== true && ~skip.indexOf( id ) ) { return null; }
return new Promise( function ( fulfil, reject ) {
var disregardResult = false;
return new Promise( function ( accept, reject ) {
resolveId(

@@ -63,6 +71,3 @@ importee,

packageFilter: function packageFilter ( pkg ) {
if ( !useJsnext && !useMain && !useModule ) {
if ( skip === true ) { accept( false ); }
else { reject( Error( ("To import from a package in node_modules (" + importee + "), either options.jsnext, options.module or options.main must be true") ) ); }
} else if ( useModule && pkg[ 'module' ] ) {
if ( useModule && pkg[ 'module' ] ) {
pkg[ 'main' ] = pkg[ 'module' ];

@@ -72,4 +77,3 @@ } else if ( useJsnext && pkg[ 'jsnext:main' ] ) {

} else if ( ( useJsnext || useModule ) && !useMain ) {
if ( skip === true ) { accept( false ); }
else { reject( Error( ("Package " + importee + " (imported by " + importer + ") does not have a module or jsnext:main field. You should either allow legacy modules with options.main, or skip it with options.skip = ['" + importee + "'])") ) ); }
disregardResult = true;
}

@@ -81,14 +85,11 @@ return pkg;

function ( err, resolved ) {
if ( resolved && fs.existsSync( resolved ) ) {
resolved = fs.realpathSync( resolved );
}
if ( !disregardResult && !err ) {
if ( resolved && fs.existsSync( resolved ) ) {
resolved = fs.realpathSync( resolved );
}
if ( err ) {
if ( skip === true ) { accept( false ); }
else { reject( Error( ("Could not resolve '" + importee + "' from " + (normalize( importer ))) ) ); }
} else {
if ( resolved === COMMONJS_BROWSER_EMPTY ) {
accept( ES6_BROWSER_EMPTY );
fulfil( ES6_BROWSER_EMPTY );
} else if ( ~builtins.indexOf( resolved ) ) {
accept( null );
fulfil( null );
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) {

@@ -102,9 +103,20 @@ if ( !isPreferBuiltinsSet ) {

}
accept( null );
fulfil( null );
} else if ( jail && resolved.indexOf( normalize( jail.trim( sep ) ) ) !== 0 ) {
accept( null );
} else {
accept( resolved );
fulfil( null );
}
}
if ( resolved && options.modulesOnly ) {
fs.readFile( resolved, 'utf-8', function ( err, code ) {
if ( err ) {
reject( err );
} else {
var valid = isModule( code );
fulfil( valid ? resolved : null );
}
});
} else {
fulfil( resolved );
}
}

@@ -111,0 +123,0 @@ );

{
"name": "rollup-plugin-node-resolve",
"description": "Bundle third-party dependencies in node_modules",
"version": "2.1.1",
"version": "3.0.0",
"devDependencies": {

@@ -20,3 +20,4 @@ "buble": "^0.15.2",

"scripts": {
"pretest": "rollup -c",
"build": "rollup -c",
"pretest": "npm run build",
"test": "mocha",

@@ -34,2 +35,3 @@ "posttest": "eslint src test/*.js",

"builtin-modules": "^1.1.0",
"is-module": "^1.0.0",
"resolve": "^1.1.6"

@@ -36,0 +38,0 @@ },

@@ -39,8 +39,2 @@ # rollup-plugin-node-resolve

// if there's something your bundle requires that you DON'T
// want to include, add it to 'skip'. Local and relative imports
// can be skipped by giving the full filepath. E.g.,
// `path.resolve('src/relative-dependency.js')`
skip: [ 'some-big-dependency' ], // Default: []
// some package.json files have a `browser` field which

@@ -63,2 +57,6 @@ // specifies alternative files to load for people bundling

// If true, inspect resolved files to check that they are
// ES2015 modules
modulesOnly: true, // Default: false
// Any additional options that should be passed through

@@ -65,0 +63,0 @@ // to node-resolve

@@ -5,2 +5,3 @@ import { dirname, resolve, normalize, sep } from 'path';

import browserResolve from 'browser-resolve';
import isModule from 'is-module';
import fs from 'fs';

@@ -13,6 +14,5 @@

export default function nodeResolve ( options = {} ) {
const skip = options.skip || [];
const useJsnext = options.jsnext === true;
const useModule = options.module !== false;
const useMain = options.main !== false;
const useJsnext = options.jsnext === true;
const isPreferBuiltinsSet = options.preferBuiltins === true || options.preferBuiltins === false;

@@ -26,2 +26,10 @@ const preferBuiltins = isPreferBuiltinsSet ? options.preferBuiltins : true;

if ( options.skip ) {
throw new Error( 'options.skip is no longer supported — you should use the main Rollup `externals` option instead' );
}
if ( !useModule && !useMain && !useJsnext ) {
throw new Error( `At least one of options.module, options.main or options.jsnext must be true` );
}
return {

@@ -47,5 +55,5 @@ name: 'node-resolve',

if ( skip !== true && ~skip.indexOf( id ) ) return null;
return new Promise( ( fulfil, reject ) => {
let disregardResult = false;
return new Promise( ( accept, reject ) => {
resolveId(

@@ -56,6 +64,3 @@ importee,

packageFilter ( pkg ) {
if ( !useJsnext && !useMain && !useModule ) {
if ( skip === true ) accept( false );
else reject( Error( `To import from a package in node_modules (${importee}), either options.jsnext, options.module or options.main must be true` ) );
} else if ( useModule && pkg[ 'module' ] ) {
if ( useModule && pkg[ 'module' ] ) {
pkg[ 'main' ] = pkg[ 'module' ];

@@ -65,4 +70,3 @@ } else if ( useJsnext && pkg[ 'jsnext:main' ] ) {

} else if ( ( useJsnext || useModule ) && !useMain ) {
if ( skip === true ) accept( false );
else reject( Error( `Package ${importee} (imported by ${importer}) does not have a module or jsnext:main field. You should either allow legacy modules with options.main, or skip it with options.skip = ['${importee}'])` ) );
disregardResult = true;
}

@@ -74,14 +78,11 @@ return pkg;

( err, resolved ) => {
if ( resolved && fs.existsSync( resolved ) ) {
resolved = fs.realpathSync( resolved );
}
if ( !disregardResult && !err ) {
if ( resolved && fs.existsSync( resolved ) ) {
resolved = fs.realpathSync( resolved );
}
if ( err ) {
if ( skip === true ) accept( false );
else reject( Error( `Could not resolve '${importee}' from ${normalize( importer )}` ) );
} else {
if ( resolved === COMMONJS_BROWSER_EMPTY ) {
accept( ES6_BROWSER_EMPTY );
fulfil( ES6_BROWSER_EMPTY );
} else if ( ~builtins.indexOf( resolved ) ) {
accept( null );
fulfil( null );
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) {

@@ -95,9 +96,20 @@ if ( !isPreferBuiltinsSet ) {

}
accept( null );
fulfil( null );
} else if ( jail && resolved.indexOf( normalize( jail.trim( sep ) ) ) !== 0 ) {
accept( null );
} else {
accept( resolved );
fulfil( null );
}
}
if ( resolved && options.modulesOnly ) {
fs.readFile( resolved, 'utf-8', ( err, code ) => {
if ( err ) {
reject( err );
} else {
const valid = isModule( code );
fulfil( valid ? resolved : null );
}
});
} else {
fulfil( resolved );
}
}

@@ -104,0 +116,0 @@ );

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