From 4e87195739f2a5d9a05451b48773c8afdc680765 Mon Sep 17 00:00:00 2001 From: akiyamn Date: Sun, 24 Sep 2023 23:22:21 +1000 Subject: Initial commit (by create-cloudflare CLI) --- .../rollup-plugin-node-polyfills/readme.md | 96 ++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 node_modules/rollup-plugin-node-polyfills/readme.md (limited to 'node_modules/rollup-plugin-node-polyfills/readme.md') 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. -- cgit v1.2.3