rollup-plugin-node-resolve
Advanced tools
Comparing version 3.3.0 to 3.4.0
@@ -18,3 +18,5 @@ 'use strict'; | ||
}; // eslint-disable-line no-console | ||
var exts = [ '.js', '.json', '.node' ]; | ||
// It is important that .mjs occur before .js so that Rollup will interpret npm modules | ||
// which deploy both ESM .mjs and CommonJS .js files as ESM. | ||
var DEFAULT_EXTS = [ '.mjs', '.js', '.json', '.node' ]; | ||
@@ -49,2 +51,4 @@ var readFileCache = {}; | ||
var resolveIdAsync = function (file, opts) { return new Promise(function (fulfil, reject) { return resolveId(file, opts, function (err, contents) { return err ? reject(err) : fulfil(contents); }); }); }; | ||
function nodeResolve ( options ) { | ||
@@ -92,3 +96,3 @@ if ( options === void 0 ) options = {}; | ||
resolveId: function resolveId$1 ( importee, importer ) { | ||
resolveId: function resolveId$$1 ( importee, importer ) { | ||
if ( /\0/.test( importee ) ) { return null; } // ignore IDs with null character, these belong to other plugins | ||
@@ -124,95 +128,88 @@ | ||
return new Promise( function ( fulfil, reject ) { | ||
var disregardResult = false; | ||
var packageBrowserField = false; | ||
var disregardResult = false; | ||
var packageBrowserField = false; | ||
var extensions = options.extensions || DEFAULT_EXTS; | ||
var resolveOptions = { | ||
basedir: path.dirname( importer ), | ||
packageFilter: function packageFilter ( pkg, pkgPath ) { | ||
var pkgRoot = path.dirname( pkgPath ); | ||
if (options.browser && typeof pkg[ 'browser' ] === 'object') { | ||
packageBrowserField = Object.keys(pkg[ 'browser' ]).reduce(function (browser, key) { | ||
var resolved = pkg[ 'browser' ][ key ] === false ? false : path.resolve( pkgRoot, pkg[ 'browser' ][ key ] ); | ||
browser[ key ] = resolved; | ||
if ( key[0] === '.' ) { | ||
var absoluteKey = path.resolve( pkgRoot, key ); | ||
browser[ absoluteKey ] = resolved; | ||
if ( !path.extname(key) ) { | ||
exts.reduce( function ( browser, ext ) { | ||
browser[ absoluteKey + ext ] = browser[ key ]; | ||
return browser; | ||
}, browser ); | ||
} | ||
var resolveOptions = { | ||
basedir: path.dirname( importer ), | ||
packageFilter: function packageFilter ( pkg, pkgPath ) { | ||
var pkgRoot = path.dirname( pkgPath ); | ||
if (options.browser && typeof pkg[ 'browser' ] === 'object') { | ||
packageBrowserField = Object.keys(pkg[ 'browser' ]).reduce(function (browser, key) { | ||
var resolved = pkg[ 'browser' ][ key ] === false ? false : path.resolve( pkgRoot, pkg[ 'browser' ][ key ] ); | ||
browser[ key ] = resolved; | ||
if ( key[0] === '.' ) { | ||
var absoluteKey = path.resolve( pkgRoot, key ); | ||
browser[ absoluteKey ] = resolved; | ||
if ( !path.extname(key) ) { | ||
extensions.reduce( function ( browser, ext ) { | ||
browser[ absoluteKey + ext ] = browser[ key ]; | ||
return browser; | ||
}, browser ); | ||
} | ||
return browser; | ||
}, {}); | ||
} | ||
} | ||
return browser; | ||
}, {}); | ||
} | ||
if (options.browser && typeof pkg[ 'browser' ] === 'string') { | ||
pkg[ 'main' ] = pkg[ 'browser' ]; | ||
} else if ( useModule && pkg[ 'module' ] ) { | ||
pkg[ 'main' ] = pkg[ 'module' ]; | ||
} else if ( useJsnext && pkg[ 'jsnext:main' ] ) { | ||
pkg[ 'main' ] = pkg[ 'jsnext:main' ]; | ||
} else if ( ( useJsnext || useModule ) && !useMain ) { | ||
disregardResult = true; | ||
} | ||
return pkg; | ||
}, | ||
readFile: cachedReadFile, | ||
isFile: cachedIsFile, | ||
extensions: options.extensions | ||
}; | ||
if (options.browser && typeof pkg[ 'browser' ] === 'string') { | ||
pkg[ 'main' ] = pkg[ 'browser' ]; | ||
} else if ( useModule && pkg[ 'module' ] ) { | ||
pkg[ 'main' ] = pkg[ 'module' ]; | ||
} else if ( useJsnext && pkg[ 'jsnext:main' ] ) { | ||
pkg[ 'main' ] = pkg[ 'jsnext:main' ]; | ||
} else if ( ( useJsnext || useModule ) && !useMain ) { | ||
disregardResult = true; | ||
} | ||
return pkg; | ||
}, | ||
readFile: cachedReadFile, | ||
isFile: cachedIsFile, | ||
extensions: extensions | ||
}; | ||
if (preserveSymlinks !== undefined) { | ||
resolveOptions.preserveSymlinks = preserveSymlinks; | ||
} | ||
if (preserveSymlinks !== undefined) { | ||
resolveOptions.preserveSymlinks = preserveSymlinks; | ||
} | ||
resolveId( | ||
importee, | ||
Object.assign( resolveOptions, customResolveOptions ), | ||
function ( err, resolved ) { | ||
if (options.browser && packageBrowserField) { | ||
if (packageBrowserField[ resolved ]) { | ||
resolved = packageBrowserField[ resolved ]; | ||
} | ||
browserMapCache[resolved] = packageBrowserField; | ||
return resolveIdAsync( | ||
importee, | ||
Object.assign( resolveOptions, customResolveOptions ) | ||
) | ||
.catch(function () { return false; }) | ||
.then(function (resolved) { | ||
if (options.browser && packageBrowserField) { | ||
if (packageBrowserField[ resolved ]) { | ||
resolved = packageBrowserField[ resolved ]; | ||
} | ||
browserMapCache[resolved] = packageBrowserField; | ||
} | ||
if ( !disregardResult && !err ) { | ||
if ( !preserveSymlinks && resolved && fs.existsSync( resolved ) ) { | ||
resolved = fs.realpathSync( resolved ); | ||
} | ||
if ( !disregardResult && resolved !== false ) { | ||
if ( !preserveSymlinks && resolved && fs.existsSync( resolved ) ) { | ||
resolved = fs.realpathSync( resolved ); | ||
} | ||
if ( ~builtins.indexOf( resolved ) ) { | ||
fulfil( null ); | ||
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) { | ||
if ( !isPreferBuiltinsSet ) { | ||
onwarn( | ||
"preferring built-in module '" + importee + "' over local alternative " + | ||
"at '" + resolved + "', pass 'preferBuiltins: false' to disable this " + | ||
"behavior or 'preferBuiltins: true' to disable this warning" | ||
); | ||
} | ||
fulfil( null ); | ||
} else if ( jail && resolved.indexOf( path.normalize( jail.trim( path.sep ) ) ) !== 0 ) { | ||
fulfil( null ); | ||
if ( ~builtins.indexOf( resolved ) ) { | ||
return null; | ||
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) { | ||
if ( !isPreferBuiltinsSet ) { | ||
onwarn( | ||
"preferring built-in module '" + importee + "' over local alternative " + | ||
"at '" + resolved + "', pass 'preferBuiltins: false' to disable this " + | ||
"behavior or 'preferBuiltins: true' to disable this warning" | ||
); | ||
} | ||
return null; | ||
} else if ( jail && resolved.indexOf( path.normalize( jail.trim( path.sep ) ) ) !== 0 ) { | ||
return 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 ); | ||
} | ||
if ( resolved && options.modulesOnly ) { | ||
return readFileAsync( resolved, 'utf-8').then(function (code) { return isModule( code ) ? resolved : null; }); | ||
} else { | ||
return resolved === false ? null : resolved; | ||
} | ||
); | ||
}); | ||
}); | ||
} | ||
@@ -219,0 +216,0 @@ }; |
@@ -14,3 +14,5 @@ import { dirname, resolve, extname, normalize, sep } from 'path'; | ||
}; // eslint-disable-line no-console | ||
var exts = [ '.js', '.json', '.node' ]; | ||
// It is important that .mjs occur before .js so that Rollup will interpret npm modules | ||
// which deploy both ESM .mjs and CommonJS .js files as ESM. | ||
var DEFAULT_EXTS = [ '.mjs', '.js', '.json', '.node' ]; | ||
@@ -45,2 +47,4 @@ var readFileCache = {}; | ||
var resolveIdAsync = function (file, opts) { return new Promise(function (fulfil, reject) { return resolveId(file, opts, function (err, contents) { return err ? reject(err) : fulfil(contents); }); }); }; | ||
function nodeResolve ( options ) { | ||
@@ -88,3 +92,3 @@ if ( options === void 0 ) options = {}; | ||
resolveId: function resolveId$1 ( importee, importer ) { | ||
resolveId: function resolveId$$1 ( importee, importer ) { | ||
if ( /\0/.test( importee ) ) { return null; } // ignore IDs with null character, these belong to other plugins | ||
@@ -120,95 +124,88 @@ | ||
return new Promise( function ( fulfil, reject ) { | ||
var disregardResult = false; | ||
var packageBrowserField = false; | ||
var disregardResult = false; | ||
var packageBrowserField = false; | ||
var extensions = options.extensions || DEFAULT_EXTS; | ||
var resolveOptions = { | ||
basedir: dirname( importer ), | ||
packageFilter: function packageFilter ( pkg, pkgPath ) { | ||
var pkgRoot = dirname( pkgPath ); | ||
if (options.browser && typeof pkg[ 'browser' ] === 'object') { | ||
packageBrowserField = Object.keys(pkg[ 'browser' ]).reduce(function (browser, key) { | ||
var resolved = pkg[ 'browser' ][ key ] === false ? false : resolve( pkgRoot, pkg[ 'browser' ][ key ] ); | ||
browser[ key ] = resolved; | ||
if ( key[0] === '.' ) { | ||
var absoluteKey = resolve( pkgRoot, key ); | ||
browser[ absoluteKey ] = resolved; | ||
if ( !extname(key) ) { | ||
exts.reduce( function ( browser, ext ) { | ||
browser[ absoluteKey + ext ] = browser[ key ]; | ||
return browser; | ||
}, browser ); | ||
} | ||
var resolveOptions = { | ||
basedir: dirname( importer ), | ||
packageFilter: function packageFilter ( pkg, pkgPath ) { | ||
var pkgRoot = dirname( pkgPath ); | ||
if (options.browser && typeof pkg[ 'browser' ] === 'object') { | ||
packageBrowserField = Object.keys(pkg[ 'browser' ]).reduce(function (browser, key) { | ||
var resolved = pkg[ 'browser' ][ key ] === false ? false : resolve( pkgRoot, pkg[ 'browser' ][ key ] ); | ||
browser[ key ] = resolved; | ||
if ( key[0] === '.' ) { | ||
var absoluteKey = resolve( pkgRoot, key ); | ||
browser[ absoluteKey ] = resolved; | ||
if ( !extname(key) ) { | ||
extensions.reduce( function ( browser, ext ) { | ||
browser[ absoluteKey + ext ] = browser[ key ]; | ||
return browser; | ||
}, browser ); | ||
} | ||
return browser; | ||
}, {}); | ||
} | ||
} | ||
return browser; | ||
}, {}); | ||
} | ||
if (options.browser && typeof pkg[ 'browser' ] === 'string') { | ||
pkg[ 'main' ] = pkg[ 'browser' ]; | ||
} else if ( useModule && pkg[ 'module' ] ) { | ||
pkg[ 'main' ] = pkg[ 'module' ]; | ||
} else if ( useJsnext && pkg[ 'jsnext:main' ] ) { | ||
pkg[ 'main' ] = pkg[ 'jsnext:main' ]; | ||
} else if ( ( useJsnext || useModule ) && !useMain ) { | ||
disregardResult = true; | ||
} | ||
return pkg; | ||
}, | ||
readFile: cachedReadFile, | ||
isFile: cachedIsFile, | ||
extensions: options.extensions | ||
}; | ||
if (options.browser && typeof pkg[ 'browser' ] === 'string') { | ||
pkg[ 'main' ] = pkg[ 'browser' ]; | ||
} else if ( useModule && pkg[ 'module' ] ) { | ||
pkg[ 'main' ] = pkg[ 'module' ]; | ||
} else if ( useJsnext && pkg[ 'jsnext:main' ] ) { | ||
pkg[ 'main' ] = pkg[ 'jsnext:main' ]; | ||
} else if ( ( useJsnext || useModule ) && !useMain ) { | ||
disregardResult = true; | ||
} | ||
return pkg; | ||
}, | ||
readFile: cachedReadFile, | ||
isFile: cachedIsFile, | ||
extensions: extensions | ||
}; | ||
if (preserveSymlinks !== undefined) { | ||
resolveOptions.preserveSymlinks = preserveSymlinks; | ||
} | ||
if (preserveSymlinks !== undefined) { | ||
resolveOptions.preserveSymlinks = preserveSymlinks; | ||
} | ||
resolveId( | ||
importee, | ||
Object.assign( resolveOptions, customResolveOptions ), | ||
function ( err, resolved ) { | ||
if (options.browser && packageBrowserField) { | ||
if (packageBrowserField[ resolved ]) { | ||
resolved = packageBrowserField[ resolved ]; | ||
} | ||
browserMapCache[resolved] = packageBrowserField; | ||
return resolveIdAsync( | ||
importee, | ||
Object.assign( resolveOptions, customResolveOptions ) | ||
) | ||
.catch(function () { return false; }) | ||
.then(function (resolved) { | ||
if (options.browser && packageBrowserField) { | ||
if (packageBrowserField[ resolved ]) { | ||
resolved = packageBrowserField[ resolved ]; | ||
} | ||
browserMapCache[resolved] = packageBrowserField; | ||
} | ||
if ( !disregardResult && !err ) { | ||
if ( !preserveSymlinks && resolved && fs.existsSync( resolved ) ) { | ||
resolved = fs.realpathSync( resolved ); | ||
} | ||
if ( !disregardResult && resolved !== false ) { | ||
if ( !preserveSymlinks && resolved && fs.existsSync( resolved ) ) { | ||
resolved = fs.realpathSync( resolved ); | ||
} | ||
if ( ~builtins.indexOf( resolved ) ) { | ||
fulfil( null ); | ||
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) { | ||
if ( !isPreferBuiltinsSet ) { | ||
onwarn( | ||
"preferring built-in module '" + importee + "' over local alternative " + | ||
"at '" + resolved + "', pass 'preferBuiltins: false' to disable this " + | ||
"behavior or 'preferBuiltins: true' to disable this warning" | ||
); | ||
} | ||
fulfil( null ); | ||
} else if ( jail && resolved.indexOf( normalize( jail.trim( sep ) ) ) !== 0 ) { | ||
fulfil( null ); | ||
if ( ~builtins.indexOf( resolved ) ) { | ||
return null; | ||
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) { | ||
if ( !isPreferBuiltinsSet ) { | ||
onwarn( | ||
"preferring built-in module '" + importee + "' over local alternative " + | ||
"at '" + resolved + "', pass 'preferBuiltins: false' to disable this " + | ||
"behavior or 'preferBuiltins: true' to disable this warning" | ||
); | ||
} | ||
return null; | ||
} else if ( jail && resolved.indexOf( normalize( jail.trim( sep ) ) ) !== 0 ) { | ||
return 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 ); | ||
} | ||
if ( resolved && options.modulesOnly ) { | ||
return readFileAsync( resolved, 'utf-8').then(function (code) { return isModule( code ) ? resolved : null; }); | ||
} else { | ||
return resolved === false ? null : resolved; | ||
} | ||
); | ||
}); | ||
}); | ||
} | ||
@@ -215,0 +212,0 @@ }; |
{ | ||
"name": "rollup-plugin-node-resolve", | ||
"description": "Bundle third-party dependencies in node_modules", | ||
"version": "3.3.0", | ||
"version": "3.4.0", | ||
"devDependencies": { | ||
@@ -6,0 +6,0 @@ "buble": "^0.19.3", |
@@ -47,3 +47,3 @@ # rollup-plugin-node-resolve | ||
// not all files you want to resolve are .js files | ||
extensions: [ '.js', '.json' ], // Default: ['.js'] | ||
extensions: [ '.mjs', '.js', '.jsx', '.json' ], // Default: [ '.mjs', '.js', '.json', '.node' ] | ||
@@ -57,3 +57,3 @@ // whether to prefer built-in modules (e.g. `fs`, `path`) or | ||
jail: '/my/jail/path', // Default: '/' | ||
// Set to an array of strings and/or regexps to lock the module search | ||
@@ -60,0 +60,0 @@ // to modules that match at least one entry. Modules not matching any |
161
src/index.js
@@ -9,3 +9,5 @@ import { dirname, resolve, extname, normalize, sep } from 'path'; | ||
const CONSOLE_WARN = ( ...args ) => console.warn( ...args ); // eslint-disable-line no-console | ||
const exts = [ '.js', '.json', '.node' ]; | ||
// It is important that .mjs occur before .js so that Rollup will interpret npm modules | ||
// which deploy both ESM .mjs and CommonJS .js files as ESM. | ||
const DEFAULT_EXTS = [ '.mjs', '.js', '.json', '.node' ]; | ||
@@ -40,2 +42,4 @@ let readFileCache = {}; | ||
const resolveIdAsync = (file, opts) => new Promise((fulfil, reject) => resolveId(file, opts, (err, contents) => err ? reject(err) : fulfil(contents))); | ||
export default function nodeResolve ( options = {} ) { | ||
@@ -112,97 +116,90 @@ const useModule = options.module !== false; | ||
return new Promise( ( fulfil, reject ) => { | ||
let disregardResult = false; | ||
let packageBrowserField = false; | ||
let disregardResult = false; | ||
let packageBrowserField = false; | ||
const extensions = options.extensions || DEFAULT_EXTS; | ||
const resolveOptions = { | ||
basedir: dirname( importer ), | ||
packageFilter ( pkg, pkgPath ) { | ||
const pkgRoot = dirname( pkgPath ); | ||
if (options.browser && typeof pkg[ 'browser' ] === 'object') { | ||
packageBrowserField = Object.keys(pkg[ 'browser' ]).reduce((browser, key) => { | ||
const resolved = pkg[ 'browser' ][ key ] === false ? false : resolve( pkgRoot, pkg[ 'browser' ][ key ] ); | ||
browser[ key ] = resolved; | ||
if ( key[0] === '.' ) { | ||
const absoluteKey = resolve( pkgRoot, key ); | ||
browser[ absoluteKey ] = resolved; | ||
if ( !extname(key) ) { | ||
exts.reduce( ( browser, ext ) => { | ||
browser[ absoluteKey + ext ] = browser[ key ]; | ||
return browser; | ||
}, browser ); | ||
} | ||
const resolveOptions = { | ||
basedir: dirname( importer ), | ||
packageFilter ( pkg, pkgPath ) { | ||
const pkgRoot = dirname( pkgPath ); | ||
if (options.browser && typeof pkg[ 'browser' ] === 'object') { | ||
packageBrowserField = Object.keys(pkg[ 'browser' ]).reduce((browser, key) => { | ||
const resolved = pkg[ 'browser' ][ key ] === false ? false : resolve( pkgRoot, pkg[ 'browser' ][ key ] ); | ||
browser[ key ] = resolved; | ||
if ( key[0] === '.' ) { | ||
const absoluteKey = resolve( pkgRoot, key ); | ||
browser[ absoluteKey ] = resolved; | ||
if ( !extname(key) ) { | ||
extensions.reduce( ( browser, ext ) => { | ||
browser[ absoluteKey + ext ] = browser[ key ]; | ||
return browser; | ||
}, browser ); | ||
} | ||
return browser; | ||
}, {}); | ||
} | ||
} | ||
return browser; | ||
}, {}); | ||
} | ||
if (options.browser && typeof pkg[ 'browser' ] === 'string') { | ||
pkg[ 'main' ] = pkg[ 'browser' ]; | ||
} else if ( useModule && pkg[ 'module' ] ) { | ||
pkg[ 'main' ] = pkg[ 'module' ]; | ||
} else if ( useJsnext && pkg[ 'jsnext:main' ] ) { | ||
pkg[ 'main' ] = pkg[ 'jsnext:main' ]; | ||
} else if ( ( useJsnext || useModule ) && !useMain ) { | ||
disregardResult = true; | ||
} | ||
return pkg; | ||
}, | ||
readFile: cachedReadFile, | ||
isFile: cachedIsFile, | ||
extensions: options.extensions | ||
}; | ||
if (options.browser && typeof pkg[ 'browser' ] === 'string') { | ||
pkg[ 'main' ] = pkg[ 'browser' ]; | ||
} else if ( useModule && pkg[ 'module' ] ) { | ||
pkg[ 'main' ] = pkg[ 'module' ]; | ||
} else if ( useJsnext && pkg[ 'jsnext:main' ] ) { | ||
pkg[ 'main' ] = pkg[ 'jsnext:main' ]; | ||
} else if ( ( useJsnext || useModule ) && !useMain ) { | ||
disregardResult = true; | ||
} | ||
return pkg; | ||
}, | ||
readFile: cachedReadFile, | ||
isFile: cachedIsFile, | ||
extensions: extensions | ||
}; | ||
if (preserveSymlinks !== undefined) { | ||
resolveOptions.preserveSymlinks = preserveSymlinks; | ||
} | ||
if (preserveSymlinks !== undefined) { | ||
resolveOptions.preserveSymlinks = preserveSymlinks; | ||
} | ||
resolveId( | ||
importee, | ||
Object.assign( resolveOptions, customResolveOptions ), | ||
( err, resolved ) => { | ||
if (options.browser && packageBrowserField) { | ||
if (packageBrowserField[ resolved ]) { | ||
resolved = packageBrowserField[ resolved ]; | ||
} | ||
browserMapCache[resolved] = packageBrowserField; | ||
return resolveIdAsync( | ||
importee, | ||
Object.assign( resolveOptions, customResolveOptions ) | ||
) | ||
.catch(() => false) | ||
.then(resolved => { | ||
if (options.browser && packageBrowserField) { | ||
if (packageBrowserField[ resolved ]) { | ||
resolved = packageBrowserField[ resolved ]; | ||
} | ||
browserMapCache[resolved] = packageBrowserField; | ||
} | ||
if ( !disregardResult && !err ) { | ||
if ( !preserveSymlinks && resolved && fs.existsSync( resolved ) ) { | ||
resolved = fs.realpathSync( resolved ); | ||
} | ||
if ( !disregardResult && resolved !== false ) { | ||
if ( !preserveSymlinks && resolved && fs.existsSync( resolved ) ) { | ||
resolved = fs.realpathSync( resolved ); | ||
} | ||
if ( ~builtins.indexOf( resolved ) ) { | ||
fulfil( null ); | ||
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) { | ||
if ( !isPreferBuiltinsSet ) { | ||
onwarn( | ||
`preferring built-in module '${importee}' over local alternative ` + | ||
`at '${resolved}', pass 'preferBuiltins: false' to disable this ` + | ||
`behavior or 'preferBuiltins: true' to disable this warning` | ||
); | ||
} | ||
fulfil( null ); | ||
} else if ( jail && resolved.indexOf( normalize( jail.trim( sep ) ) ) !== 0 ) { | ||
fulfil( null ); | ||
if ( ~builtins.indexOf( resolved ) ) { | ||
return null; | ||
} else if ( ~builtins.indexOf( importee ) && preferBuiltins ) { | ||
if ( !isPreferBuiltinsSet ) { | ||
onwarn( | ||
`preferring built-in module '${importee}' over local alternative ` + | ||
`at '${resolved}', pass 'preferBuiltins: false' to disable this ` + | ||
`behavior or 'preferBuiltins: true' to disable this warning` | ||
); | ||
} | ||
return null; | ||
} else if ( jail && resolved.indexOf( normalize( jail.trim( sep ) ) ) !== 0 ) { | ||
return 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 ); | ||
} | ||
if ( resolved && options.modulesOnly ) { | ||
return readFileAsync( resolved, 'utf-8').then(code => isModule( code ) ? resolved : null); | ||
} else { | ||
return resolved === false ? null : resolved; | ||
} | ||
); | ||
}); | ||
}); | ||
} | ||
}; | ||
} |
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
29074
540