diff options
| author | akiyamn | 2023-09-24 23:22:21 +1000 |
|---|---|---|
| committer | akiyamn | 2023-09-24 23:22:21 +1000 |
| commit | 4e87195739f2a5d9a05451b48773c8afdc680765 (patch) | |
| tree | 9cba501844a4a11dcbdffc4050ed8189561c55ed /node_modules/rollup-plugin-node-polyfills/readme.md | |
| download | price-tracker-worker-4e87195739f2a5d9a05451b48773c8afdc680765.tar.gz price-tracker-worker-4e87195739f2a5d9a05451b48773c8afdc680765.zip | |
Initial commit (by create-cloudflare CLI)
Diffstat (limited to 'node_modules/rollup-plugin-node-polyfills/readme.md')
| -rw-r--r-- | node_modules/rollup-plugin-node-polyfills/readme.md | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/node_modules/rollup-plugin-node-polyfills/readme.md b/node_modules/rollup-plugin-node-polyfills/readme.md new file mode 100644 index 0000000..d0815f2 --- /dev/null +++ b/node_modules/rollup-plugin-node-polyfills/readme.md @@ -0,0 +1,96 @@ +rollup-plugin-node-polyfills +=== + +``` +npm install --save-dev rollup-plugin-node-polyfills +``` + +Allows the node builtins to be `require`d/`import`ed. + +The following modules include ES6 specific version which allow you to do named imports in addition to the default import and should work fine if you only use this plugin. + +- process* +- events +- stream* +- util* +- path +- buffer* +- querystring +- url* +- string_decoder* +- punycode +- http*† +- https*† +- os* +- assert* +- constants +- timers* +- console*‡ +- vm*§ +- zlib* +- tty +- domain +- dns∆ +- dgram∆ +- child_process∆ +- cluster∆ +- module∆ +- net∆ +- readline∆ +- repl∆ +- tls∆ +- fs˚ +- crypto˚ + + +† the http and https modules are actually the same and don't differentiate based on protocol + +‡ default export only, because it's console, seriously just use the global + +§ vm does not have all corner cases and has less of them in a web worker + +∆ not shimmed, just returns mock + +˚ optional, add option to enable browserified shim + +Crypto is not shimmed and and we just provide the commonjs one from browserify and it will likely not work, if you really want it please pass `{crypto: true}` as an option. + +Not all included modules rollup equally, streams (and by extension anything that requires it like http) are a mess of circular references that are pretty much impossible to tree-shake out, similarly url methods are actually a shortcut to a url object so those methods don't tree shake out very well, punycode, path, querystring, events, util, and process tree shake very well especially if you do named imports. + +config for using this with something simple like events or querystring + +```js +import nodePolyfills from 'rollup-plugin-node-polyfills'; +rollup({ + entry: 'main.js', + plugins: [ + nodePolyfills() + ] +}) +``` + +and now if main contains this, it should just work + +```js +import EventEmitter from 'events'; +import {inherits} from 'util'; + +// etc +``` + +Config for something more complicated like http + +```js +import nodePolyfills from 'rollup-plugin-node-polyfills'; +rollup({ + entry: 'main.js', + plugins: [ + nodePolyfills() + ] +}) +``` + +License +=== + +MIT except ES6 ports of browserify modules which are whatever the original library was. |
