{"_id":"@afitzek/rollup-plugin-node-globals","name":"@afitzek/rollup-plugin-node-globals","dist-tags":{"latest":"1.4.0"},"versions":{"1.4.0":{"name":"@afitzek/rollup-plugin-node-globals","main":"dist/rollup-plugin-node-globals.cjs.js","jsnext:main":"dist/rollup-plugin-node-globals.es6.js","version":"1.4.0","description":"insert the same globals browserify does","scripts":{"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","prepublish":"npm run build"},"author":{"name":"Calvin Metcalf","email":"calvin.metcalf@gmail.com"},"license":"MIT","dependencies":{"acorn":"^5.7.3","buffer-es6":"^4.9.3","estree-walker":"^0.5.2","magic-string":"^0.22.5","process-es6":"^0.11.6","rollup-pluginutils":"^2.3.1"},"keywords":["rollup-plugin"],"devDependencies":{"babel-core":"^6.26.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.64.1","rollup-plugin-babel":"^3.0.3","rollup-plugin-node-resolve":"^3.0.3"},"repository":{"type":"git","url":"git+ssh://git@github.com/calvinmetcalf/rollup-plugin-node-globals.git"},"_id":"@afitzek/rollup-plugin-node-globals@1.4.0","gitHead":"9ef911c16e33a43e306394d19b7066fa64629403","bugs":{"url":"https://github.com/calvinmetcalf/rollup-plugin-node-globals/issues"},"homepage":"https://github.com/calvinmetcalf/rollup-plugin-node-globals#readme","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-Ai8VzArMXjxK0+tWwSAuXfahOhzK6qpRfSMa+rBRQqFQZW9YBSFDQ2ernytA3h1d+FiF8/D3jgqMsgXy9PwUww==","shasum":"892c4b866a476eb25a8c0813c0214445be97aeec","tarball":"https://registry.npmjs.org/@afitzek/rollup-plugin-node-globals/-/rollup-plugin-node-globals-1.4.0.tgz","fileCount":9,"unpackedSize":29679,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmTLCmCgMkLpRJ8ulpEYvB043kDKVjmOE1lPitb/+LnwIhAIPFamvIUvReBYxLPlpUDOEAk5qi//0ea7NyvBadUXP3"}]},"_npmUser":{"name":"afitzek","email":"andreas.fitzek@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rollup-plugin-node-globals_1.4.0_1719829903878_0.1899281617235209"},"_hasShrinkwrap":false}},"time":{"created":"2024-07-01T10:31:43.775Z","1.4.0":"2024-07-01T10:31:44.046Z","modified":"2024-07-01T10:31:44.318Z"},"maintainers":[{"name":"afitzek","email":"andreas.fitzek@gmail.com"}],"description":"insert the same globals browserify does","homepage":"https://github.com/calvinmetcalf/rollup-plugin-node-globals#readme","keywords":["rollup-plugin"],"repository":{"type":"git","url":"git+ssh://git@github.com/calvinmetcalf/rollup-plugin-node-globals.git"},"author":{"name":"Calvin Metcalf","email":"calvin.metcalf@gmail.com"},"bugs":{"url":"https://github.com/calvinmetcalf/rollup-plugin-node-globals/issues"},"license":"MIT","readme":"rollup-plugin-node-globals\n===\n\nPlugin to insert node globals including so code that works with browserify should work even if it uses process or buffers. This is based on [rollup-plugin-inject\n](https://github.com/rollup/rollup-plugin-inject).\n\n- process\n- global\n- Buffer\n- `__dirname`\n- `__filename`\n\nPlus `process.nextTick` and `process.browser` are optimized to only pull in\nthemselves and `__dirname` and `__filename` point to the file on disk\n\nThere are a few options to control output\n- `process` - pass `false` to disable process polyfilling\n- `global` - pass `false` to disable global polyfilling\n- `buffer` - pass `false` to disable Buffer polyfilling\n- `dirname` - pass `false` to disable `__dirname` polyfilling\n- `filename` - pass `false` to disable `__filename` polyfilling\n- `baseDir` which is used for resolving `__dirname` and `__filename`.\n\n# examples\n\n```js\nvar foo;\nif (process.browser) {\n  foo = 'bar';\n} else {\n  foo = 'baz';\n}\n```\n\nturns into\n\n```js\nimport {browser} from 'path/to/process';\nvar foo;\nif (browser) {\n  foo = 'bar';\n} else {\n  foo = 'baz';\n}\n```\n\nbut with rollup that ends up being\n\n```js\nvar browser = true;\nvar foo;\nif (browser) {\n  foo = 'bar';\n} else {\n  foo = 'baz';\n}\n```\n\nor\n\n```js\nvar timeout;\nif (global.setImmediate) {\n  timeout = global.setImmediate;\n} else {\n  timeout = global.setTimeout;\n}\nexport default timeout;\n```\n\nturns into\n\n```js\nimport {_global} from 'path/to/global.js';\nvar timeout;\nif (_global.setImmediate) {\n  timeout = _global.setImmediate;\n} else {\n  timeout = _global.setTimeout;\n}\nexport default timeout;\n\n```\n\nwhich rollup turns into\n\n```js\nvar _global = typeof global !== \"undefined\" ? global :\n            typeof self !== \"undefined\" ? self :\n            typeof window !== \"undefined\" ? window : {}\n\nvar timeout;\nif (_global.setImmediate) {\n  timeout = _global.setImmediate;\n} else {\n  timeout = _global.setTimeout;\n}\nvar timeout$1 = timeout;\n\nexport default timeout$1;\n```\n\nWith that top piece only showing up once no matter how many times global was used.\n","readmeFilename":"readme.md"}