rollup-plugin-node-globals
Advanced tools
Comparing version 1.2.1 to 1.3.0
@@ -193,30 +193,52 @@ 'use strict'; | ||
} | ||
var _mods1 = { | ||
'process.nextTick': [PROCESS_PATH, 'nextTick'], | ||
'process.browser': [BROWSER_PATH, 'browser'], | ||
'Buffer.isBuffer': [BUFFER_PATH, 'isBuffer'] | ||
var getMods = function getMods(options) { | ||
var _mods1 = {}; | ||
var _mods2 = {}; | ||
if (options.global !== false || options.process !== false) { | ||
_mods2.global = GLOBAL_PATH; | ||
} | ||
if (options.process !== false) { | ||
_mods1['process.nextTick'] = [PROCESS_PATH, 'nextTick']; | ||
_mods1['process.browser'] = [BROWSER_PATH, 'browser']; | ||
_mods2.process = PROCESS_PATH; | ||
} | ||
if (options.buffer !== false) { | ||
_mods1['Buffer.isBuffer'] = [BUFFER_PATH, 'isBuffer']; | ||
_mods2.Buffer = [BUFFER_PATH, 'Buffer']; | ||
} | ||
if (options.filename !== false) { | ||
_mods2.__filename = FILENAME; | ||
} | ||
if (options.dirname !== false) { | ||
_mods2.__dirname = DIRNAME; | ||
} | ||
var mods1 = new Map(); | ||
var mods2 = new Map(); | ||
Object.keys(_mods1).forEach(function (key) { | ||
mods1.set(key, _mods1[key]); | ||
}); | ||
Object.keys(_mods2).forEach(function (key) { | ||
mods2.set(key, _mods2[key]); | ||
}); | ||
var mods = Object.keys(_mods1).concat(Object.keys(_mods2)); | ||
var firstpass = new RegExp('(?:' + mods.map(escape).join('|') + ')', 'g'); | ||
return { mods1: mods1, mods2: mods2, firstpass: firstpass }; | ||
}; | ||
var _mods2 = { | ||
process: PROCESS_PATH, | ||
Buffer: [BUFFER_PATH, 'Buffer'], | ||
global: GLOBAL_PATH, | ||
__filename: FILENAME, | ||
__dirname: DIRNAME | ||
var escape = function escape(str) { | ||
return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&'); | ||
}; | ||
var mods1 = new Map(); | ||
var mods2 = new Map(); | ||
var buf = new Map(); | ||
buf.set('global', GLOBAL_PATH); | ||
Object.keys(_mods1).forEach(function (key) { | ||
mods1.set(key, _mods1[key]); | ||
}); | ||
Object.keys(_mods2).forEach(function (key) { | ||
mods2.set(key, _mods2[key]); | ||
}); | ||
var mods = Object.keys(_mods1).concat(Object.keys(_mods2)); | ||
function escape(str) { | ||
return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&'); | ||
} | ||
var firstpass = new RegExp('(?:' + mods.map(escape).join('|') + ')', 'g'); | ||
var index = (function (options) { | ||
function nodeGlobals(options) { | ||
options = options || {}; | ||
@@ -229,2 +251,11 @@ var basedir = options.baseDir || '/'; | ||
var sourceMap = options.sourceMap !== false; | ||
var _getMods = getMods(options), | ||
mods1 = _getMods.mods1, | ||
mods2 = _getMods.mods2, | ||
firstpass = _getMods.firstpass; | ||
var buf = new Map(); | ||
buf.set('global', GLOBAL_PATH); | ||
return { | ||
@@ -260,4 +291,4 @@ load: function load(id) { | ||
}; | ||
}); | ||
} | ||
module.exports = index; | ||
module.exports = nodeGlobals; |
@@ -189,30 +189,52 @@ import { attachScopes, createFilter } from 'rollup-pluginutils'; | ||
} | ||
var _mods1 = { | ||
'process.nextTick': [PROCESS_PATH, 'nextTick'], | ||
'process.browser': [BROWSER_PATH, 'browser'], | ||
'Buffer.isBuffer': [BUFFER_PATH, 'isBuffer'] | ||
var getMods = function getMods(options) { | ||
var _mods1 = {}; | ||
var _mods2 = {}; | ||
if (options.global !== false || options.process !== false) { | ||
_mods2.global = GLOBAL_PATH; | ||
} | ||
if (options.process !== false) { | ||
_mods1['process.nextTick'] = [PROCESS_PATH, 'nextTick']; | ||
_mods1['process.browser'] = [BROWSER_PATH, 'browser']; | ||
_mods2.process = PROCESS_PATH; | ||
} | ||
if (options.buffer !== false) { | ||
_mods1['Buffer.isBuffer'] = [BUFFER_PATH, 'isBuffer']; | ||
_mods2.Buffer = [BUFFER_PATH, 'Buffer']; | ||
} | ||
if (options.filename !== false) { | ||
_mods2.__filename = FILENAME; | ||
} | ||
if (options.dirname !== false) { | ||
_mods2.__dirname = DIRNAME; | ||
} | ||
var mods1 = new Map(); | ||
var mods2 = new Map(); | ||
Object.keys(_mods1).forEach(function (key) { | ||
mods1.set(key, _mods1[key]); | ||
}); | ||
Object.keys(_mods2).forEach(function (key) { | ||
mods2.set(key, _mods2[key]); | ||
}); | ||
var mods = Object.keys(_mods1).concat(Object.keys(_mods2)); | ||
var firstpass = new RegExp('(?:' + mods.map(escape).join('|') + ')', 'g'); | ||
return { mods1: mods1, mods2: mods2, firstpass: firstpass }; | ||
}; | ||
var _mods2 = { | ||
process: PROCESS_PATH, | ||
Buffer: [BUFFER_PATH, 'Buffer'], | ||
global: GLOBAL_PATH, | ||
__filename: FILENAME, | ||
__dirname: DIRNAME | ||
var escape = function escape(str) { | ||
return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&'); | ||
}; | ||
var mods1 = new Map(); | ||
var mods2 = new Map(); | ||
var buf = new Map(); | ||
buf.set('global', GLOBAL_PATH); | ||
Object.keys(_mods1).forEach(function (key) { | ||
mods1.set(key, _mods1[key]); | ||
}); | ||
Object.keys(_mods2).forEach(function (key) { | ||
mods2.set(key, _mods2[key]); | ||
}); | ||
var mods = Object.keys(_mods1).concat(Object.keys(_mods2)); | ||
function escape(str) { | ||
return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&'); | ||
} | ||
var firstpass = new RegExp('(?:' + mods.map(escape).join('|') + ')', 'g'); | ||
var index = (function (options) { | ||
function nodeGlobals(options) { | ||
options = options || {}; | ||
@@ -225,2 +247,11 @@ var basedir = options.baseDir || '/'; | ||
var sourceMap = options.sourceMap !== false; | ||
var _getMods = getMods(options), | ||
mods1 = _getMods.mods1, | ||
mods2 = _getMods.mods2, | ||
firstpass = _getMods.firstpass; | ||
var buf = new Map(); | ||
buf.set('global', GLOBAL_PATH); | ||
return { | ||
@@ -256,4 +287,4 @@ load: function load(id) { | ||
}; | ||
}); | ||
} | ||
export default index; | ||
export default nodeGlobals; |
@@ -5,3 +5,3 @@ { | ||
"jsnext:main": "dist/rollup-plugin-node-globals.es6.js", | ||
"version": "1.2.1", | ||
"version": "1.3.0", | ||
"description": "insert the same globals browserify does", | ||
@@ -14,6 +14,7 @@ "files": [ | ||
"scripts": { | ||
"test": "mocha", | ||
"test": "mocha test/index.js && jest", | ||
"pretest": "npm run build", | ||
"build": "rollup -c -f cjs -o dist/rollup-plugin-node-globals.cjs.js && rollup -c -f es -o dist/rollup-plugin-node-globals.es6.js", | ||
"prebuild": "rimraf dist && mkdirp dist" | ||
"prebuild": "rimraf dist", | ||
"prepublish": "npm run build" | ||
}, | ||
@@ -35,8 +36,9 @@ "author": "Calvin Metcalf <calvin.metcalf@gmail.com>", | ||
"babel-core": "^6.26.0", | ||
"babel-preset-es2015-rollup": "^3.0.0", | ||
"babel-preset-env": "^1.7.0", | ||
"browserify": "^16.1.0", | ||
"jest": "^23.5.0", | ||
"mkdirp": "^0.5.1", | ||
"mocha": "^5.0.1", | ||
"rimraf": "^2.6.2", | ||
"rollup": "^0.56.3", | ||
"rollup": "^0.64.1", | ||
"rollup-plugin-babel": "^3.0.3", | ||
@@ -43,0 +45,0 @@ "rollup-plugin-node-resolve": "^3.0.3" |
@@ -10,9 +10,15 @@ rollup-plugin-node-globals | ||
- Buffer | ||
- __dirname | ||
- __filename | ||
- `__dirname` | ||
- `__filename` | ||
Plus `process.nextTick` and `process.browser` are optimized to only pull in | ||
themselves and __dirname and __filename point to the file on disk | ||
themselves and `__dirname` and `__filename` point to the file on disk | ||
Only option beyond the default plugin ones is an optional basedir which is used for resolving __dirname and __filename. | ||
There are a few options to control output | ||
- `process` - pass `false` to disable process polyfilling | ||
- `global` - pass `false` to disable global polyfilling | ||
- `buffer` - pass `false` to disable Buffer polyfilling | ||
- `dirname` - pass `false` to disable `__dirname` polyfilling | ||
- `filename` - pass `false` to disable `__filename` polyfilling | ||
- `baseDir` which is used for resolving `__dirname` and `__filename`. | ||
@@ -19,0 +25,0 @@ # examples |
@@ -24,37 +24,65 @@ import inject from './inject/index'; | ||
} | ||
var _mods1 = { | ||
'process.nextTick': [PROCESS_PATH, 'nextTick'], | ||
'process.browser': [BROWSER_PATH, 'browser'], | ||
'Buffer.isBuffer': [BUFFER_PATH, 'isBuffer'] | ||
}; | ||
var _mods2 = { | ||
process: PROCESS_PATH, | ||
Buffer: [BUFFER_PATH, 'Buffer'], | ||
global: GLOBAL_PATH, | ||
__filename: FILENAME, | ||
__dirname: DIRNAME | ||
}; | ||
var mods1 = new Map(); | ||
var mods2 = new Map(); | ||
var buf = new Map(); | ||
buf.set('global', GLOBAL_PATH); | ||
Object.keys(_mods1).forEach(key=>{ | ||
mods1.set(key, _mods1[key]); | ||
}); | ||
Object.keys(_mods2).forEach(key=>{ | ||
mods2.set(key, _mods2[key]); | ||
}); | ||
var mods = Object.keys(_mods1).concat(Object.keys(_mods2)); | ||
function escape ( str ) { | ||
const getMods = options => { | ||
const _mods1 = {}; | ||
const _mods2 = {}; | ||
if (options.global !== false || options.process !== false) { | ||
_mods2.global = GLOBAL_PATH; | ||
} | ||
if (options.process !== false) { | ||
_mods1['process.nextTick'] = [PROCESS_PATH, 'nextTick']; | ||
_mods1['process.browser'] = [BROWSER_PATH, 'browser']; | ||
_mods2.process = PROCESS_PATH; | ||
} | ||
if (options.buffer !== false) { | ||
_mods1['Buffer.isBuffer'] = [BUFFER_PATH, 'isBuffer']; | ||
_mods2.Buffer = [BUFFER_PATH, 'Buffer']; | ||
} | ||
if (options.filename !== false) { | ||
_mods2.__filename = FILENAME; | ||
} | ||
if (options.dirname !== false) { | ||
_mods2.__dirname = DIRNAME; | ||
} | ||
var mods1 = new Map(); | ||
var mods2 = new Map(); | ||
Object.keys(_mods1).forEach(key=>{ | ||
mods1.set(key, _mods1[key]); | ||
}); | ||
Object.keys(_mods2).forEach(key=>{ | ||
mods2.set(key, _mods2[key]); | ||
}); | ||
const mods = Object.keys(_mods1).concat(Object.keys(_mods2)); | ||
const firstpass = new RegExp(`(?:${ mods.map( escape ).join( '|')})`, 'g'); | ||
return { mods1, mods2, firstpass }; | ||
} | ||
const escape = ( str ) => { | ||
return str.replace( /[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&' ); | ||
} | ||
const firstpass = new RegExp(`(?:${ mods.map( escape ).join( '|')})`, 'g'); | ||
export default options => { | ||
export default function nodeGlobals(options) { | ||
options = options || {}; | ||
var basedir = options.baseDir || '/'; | ||
var dirs = new Map(); | ||
var opts = clone(options); | ||
var exclude = (opts.exclude || []).concat(GLOBAL_PATH); | ||
const basedir = options.baseDir || '/'; | ||
const dirs = new Map(); | ||
const opts = clone(options); | ||
const exclude = (opts.exclude || []).concat(GLOBAL_PATH); | ||
const filter = createFilter(options.include, exclude); | ||
const sourceMap = options.sourceMap !== false; | ||
const { mods1, mods2, firstpass } = getMods(options); | ||
const buf = new Map(); | ||
buf.set('global', GLOBAL_PATH); | ||
return { | ||
@@ -61,0 +89,0 @@ load(id) { |
29599
718
104
10