├── .gitignore ├── .idea ├── .gitignore ├── modules.xml ├── node-stubs.iml └── vcs.xml ├── .npmignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── index.js ├── map.json ├── package-lock.json ├── package.json ├── scripts └── build-deps.js └── wrappers ├── crypto.js └── module.js /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | 6 | # Runtime data 7 | pids 8 | *.pid 9 | *.seed 10 | 11 | # Directory for instrumented libs generated by jscoverage/JSCover 12 | lib-cov 13 | 14 | # Coverage directory used by tools like istanbul 15 | coverage 16 | 17 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 18 | .grunt 19 | 20 | # node-waf configuration 21 | .lock-wscript 22 | 23 | # Compiled binary addons (http://nodejs.org/api/addons.html) 24 | build/Release 25 | 26 | # Dependency directory 27 | node_modules 28 | 29 | # Optional npm cache directory 30 | .npm 31 | 32 | # Optional REPL history 33 | .node_repl_history 34 | 35 | # Output directory for npm install script build-deps.js. 36 | deps 37 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Editor-based HTTP Client requests 5 | /httpRequests/ 6 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/node-stubs.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | v1.1.0 - 2021-07-19 2 | 3 | * Updated dependencies to their latest versions 4 | - `assert@2.0.0` 5 | - `buffer@6.0.3` 6 | - `console-browserify@1.2.0` 7 | - `domain-browser@4.19.0` 8 | - `events@3.3.0` 9 | - `readable-stream@3.6.0` 10 | - `stream-browserify@3.0.0` 11 | - `stream-http@3.2.0` 12 | - `string_decoder@1.3.0` 13 | - `timers-browserify@2.0.12` 14 | - `util@0.12.4` 15 | - `vm-browserify@1.1.2` 16 | 17 | v1.0.3 - 2021-03-25 18 | 19 | * Add elliptic@6.5.4 as a direct dependency to force upgrade due to a security vulnerability. It was not possible to upgrade indirectly as [crypto-browserify]( https://www.npmjs.com/package/crypto-browserify) is not updated. 20 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Ben Newman 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # node-stubs 2 | Stub implementations of Node built-in modules, a la Browserify 3 | 4 | THIS REPOSITORY HAS BEEN [MERGED INTO THE MAIN METEOR REPOSITORY](https://github.com/meteor/meteor/tree/devel/npm-packages/meteor-node-stubs). You will find the up to date code there. 5 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | var map = require("./map.json"); 2 | var meteorAliases = {}; 3 | 4 | Object.keys(map).forEach(function (id) { 5 | if (typeof map[id] === "string") { 6 | var aliasParts = module.id.split("/"); 7 | aliasParts.pop(); 8 | aliasParts.push("node_modules", map[id]); 9 | exports[id] = meteorAliases[id + ".js"] = 10 | aliasParts.join("/"); 11 | } else { 12 | exports[id] = map[id]; 13 | meteorAliases[id + ".js"] = function(){}; 14 | } 15 | }); 16 | 17 | if (typeof meteorInstall === "function") { 18 | meteorInstall({ 19 | // Install the aliases into a node_modules directory one level up from 20 | // the root directory, so that they do not clutter the namespace 21 | // available to apps and packages. 22 | "..": { 23 | node_modules: meteorAliases 24 | } 25 | }); 26 | } 27 | 28 | // If Buffer is not defined globally, but the "buffer" built-in stub is 29 | // installed and can be imported, use it to define global.Buffer so that 30 | // modules like core-util-is/lib/util.js can refer to Buffer without 31 | // crashing application startup. 32 | if (typeof global.Buffer !== "function") { 33 | try { 34 | // Use (0, require)(...) to avoid registering a dependency on the 35 | // "buffer" stub, in case it is not otherwise bundled. 36 | global.Buffer = (0, require)("buffer").Buffer; 37 | } catch (ok) { 38 | // Failure to import "buffer" is fine as long as the Buffer global 39 | // variable is not used. 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /map.json: -------------------------------------------------------------------------------- 1 | { 2 | "assert": "assert/", 3 | "buffer": "buffer/", 4 | "child_process": null, 5 | "cluster": null, 6 | "console": "console-browserify", 7 | "constants": "constants-browserify", 8 | "crypto": "../wrappers/crypto.js", 9 | "dgram": null, 10 | "dns": null, 11 | "domain": "domain-browser", 12 | "events": "events/", 13 | "fs": null, 14 | "http": "stream-http", 15 | "https": "https-browserify", 16 | "module": "../wrappers/module.js", 17 | "net": null, 18 | "os": "os-browserify/browser.js", 19 | "path": "path-browserify", 20 | "process": "process/browser.js", 21 | "punycode": "punycode/", 22 | "querystring": "querystring-es3/", 23 | "readline": null, 24 | "repl": null, 25 | "stream": "stream-browserify", 26 | "_stream_duplex": "readable-stream/lib/_stream_duplex.js", 27 | "_stream_passthrough": "readable-stream/lib/_stream_passthrough.js", 28 | "_stream_readable": "readable-stream/lib/_stream_readable.js", 29 | "_stream_transform": "readable-stream/lib/_stream_transform.js", 30 | "_stream_writable": "readable-stream/lib/_stream_writable.js", 31 | "string_decoder": "string_decoder/", 32 | "sys": "util/util.js", 33 | "timers": "timers-browserify", 34 | "tls": null, 35 | "tty": "tty-browserify", 36 | "url": "url/", 37 | "util": "util/util.js", 38 | "vm": "vm-browserify", 39 | "zlib": "browserify-zlib" 40 | } 41 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "meteor-node-stubs", 3 | "version": "1.1.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "asn1.js": { 8 | "version": "5.4.1", 9 | "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", 10 | "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", 11 | "requires": { 12 | "bn.js": "^4.0.0", 13 | "inherits": "^2.0.1", 14 | "minimalistic-assert": "^1.0.0", 15 | "safer-buffer": "^2.1.0" 16 | }, 17 | "dependencies": { 18 | "bn.js": { 19 | "version": "4.12.0", 20 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", 21 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 22 | } 23 | } 24 | }, 25 | "assert": { 26 | "version": "2.0.0", 27 | "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", 28 | "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", 29 | "requires": { 30 | "es6-object-assign": "^1.1.0", 31 | "is-nan": "^1.2.1", 32 | "object-is": "^1.0.1", 33 | "util": "^0.12.0" 34 | } 35 | }, 36 | "available-typed-arrays": { 37 | "version": "1.0.4", 38 | "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.4.tgz", 39 | "integrity": "sha512-SA5mXJWrId1TaQjfxUYghbqQ/hYioKmLJvPJyDuYRtXXenFNMjj4hSSt1Cf1xsuXSXrtxrVC5Ot4eU6cOtBDdA==" 40 | }, 41 | "balanced-match": { 42 | "version": "1.0.2", 43 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 44 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 45 | "dev": true 46 | }, 47 | "base64-js": { 48 | "version": "1.5.1", 49 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", 50 | "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" 51 | }, 52 | "bn.js": { 53 | "version": "5.2.0", 54 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", 55 | "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" 56 | }, 57 | "brace-expansion": { 58 | "version": "1.1.11", 59 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 60 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 61 | "dev": true, 62 | "requires": { 63 | "balanced-match": "^1.0.0", 64 | "concat-map": "0.0.1" 65 | } 66 | }, 67 | "brorand": { 68 | "version": "1.1.0", 69 | "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", 70 | "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" 71 | }, 72 | "browserify-aes": { 73 | "version": "1.2.0", 74 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", 75 | "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", 76 | "requires": { 77 | "buffer-xor": "^1.0.3", 78 | "cipher-base": "^1.0.0", 79 | "create-hash": "^1.1.0", 80 | "evp_bytestokey": "^1.0.3", 81 | "inherits": "^2.0.1", 82 | "safe-buffer": "^5.0.1" 83 | } 84 | }, 85 | "browserify-cipher": { 86 | "version": "1.0.1", 87 | "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", 88 | "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", 89 | "requires": { 90 | "browserify-aes": "^1.0.4", 91 | "browserify-des": "^1.0.0", 92 | "evp_bytestokey": "^1.0.0" 93 | } 94 | }, 95 | "browserify-des": { 96 | "version": "1.0.2", 97 | "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", 98 | "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", 99 | "requires": { 100 | "cipher-base": "^1.0.1", 101 | "des.js": "^1.0.0", 102 | "inherits": "^2.0.1", 103 | "safe-buffer": "^5.1.2" 104 | } 105 | }, 106 | "browserify-rsa": { 107 | "version": "4.1.0", 108 | "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", 109 | "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", 110 | "requires": { 111 | "bn.js": "^5.0.0", 112 | "randombytes": "^2.0.1" 113 | } 114 | }, 115 | "browserify-sign": { 116 | "version": "4.2.1", 117 | "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", 118 | "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", 119 | "requires": { 120 | "bn.js": "^5.1.1", 121 | "browserify-rsa": "^4.0.1", 122 | "create-hash": "^1.2.0", 123 | "create-hmac": "^1.1.7", 124 | "elliptic": "^6.5.3", 125 | "inherits": "^2.0.4", 126 | "parse-asn1": "^5.1.5", 127 | "readable-stream": "^3.6.0", 128 | "safe-buffer": "^5.2.0" 129 | } 130 | }, 131 | "browserify-zlib": { 132 | "version": "0.2.0", 133 | "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", 134 | "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", 135 | "requires": { 136 | "pako": "~1.0.5" 137 | } 138 | }, 139 | "buffer": { 140 | "version": "6.0.3", 141 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", 142 | "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", 143 | "requires": { 144 | "base64-js": "^1.3.1", 145 | "ieee754": "^1.2.1" 146 | } 147 | }, 148 | "buffer-xor": { 149 | "version": "1.0.3", 150 | "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", 151 | "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" 152 | }, 153 | "builtin-status-codes": { 154 | "version": "3.0.0", 155 | "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", 156 | "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" 157 | }, 158 | "call-bind": { 159 | "version": "1.0.2", 160 | "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", 161 | "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", 162 | "requires": { 163 | "function-bind": "^1.1.1", 164 | "get-intrinsic": "^1.0.2" 165 | } 166 | }, 167 | "cipher-base": { 168 | "version": "1.0.4", 169 | "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", 170 | "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", 171 | "requires": { 172 | "inherits": "^2.0.1", 173 | "safe-buffer": "^5.0.1" 174 | } 175 | }, 176 | "concat-map": { 177 | "version": "0.0.1", 178 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 179 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 180 | "dev": true 181 | }, 182 | "console-browserify": { 183 | "version": "1.2.0", 184 | "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", 185 | "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" 186 | }, 187 | "constants-browserify": { 188 | "version": "1.0.0", 189 | "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", 190 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" 191 | }, 192 | "create-ecdh": { 193 | "version": "4.0.4", 194 | "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", 195 | "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", 196 | "requires": { 197 | "bn.js": "^4.1.0", 198 | "elliptic": "^6.5.3" 199 | }, 200 | "dependencies": { 201 | "bn.js": { 202 | "version": "4.12.0", 203 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", 204 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 205 | } 206 | } 207 | }, 208 | "create-hash": { 209 | "version": "1.2.0", 210 | "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", 211 | "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", 212 | "requires": { 213 | "cipher-base": "^1.0.1", 214 | "inherits": "^2.0.1", 215 | "md5.js": "^1.3.4", 216 | "ripemd160": "^2.0.1", 217 | "sha.js": "^2.4.0" 218 | } 219 | }, 220 | "create-hmac": { 221 | "version": "1.1.7", 222 | "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", 223 | "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", 224 | "requires": { 225 | "cipher-base": "^1.0.3", 226 | "create-hash": "^1.1.0", 227 | "inherits": "^2.0.1", 228 | "ripemd160": "^2.0.0", 229 | "safe-buffer": "^5.0.1", 230 | "sha.js": "^2.4.8" 231 | } 232 | }, 233 | "crypto-browserify": { 234 | "version": "3.12.0", 235 | "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", 236 | "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", 237 | "requires": { 238 | "browserify-cipher": "^1.0.0", 239 | "browserify-sign": "^4.0.0", 240 | "create-ecdh": "^4.0.0", 241 | "create-hash": "^1.1.0", 242 | "create-hmac": "^1.1.0", 243 | "diffie-hellman": "^5.0.0", 244 | "inherits": "^2.0.1", 245 | "pbkdf2": "^3.0.3", 246 | "public-encrypt": "^4.0.0", 247 | "randombytes": "^2.0.0", 248 | "randomfill": "^1.0.3" 249 | } 250 | }, 251 | "define-properties": { 252 | "version": "1.1.3", 253 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", 254 | "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", 255 | "requires": { 256 | "object-keys": "^1.0.12" 257 | } 258 | }, 259 | "des.js": { 260 | "version": "1.0.1", 261 | "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", 262 | "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", 263 | "requires": { 264 | "inherits": "^2.0.1", 265 | "minimalistic-assert": "^1.0.0" 266 | } 267 | }, 268 | "diffie-hellman": { 269 | "version": "5.0.3", 270 | "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", 271 | "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", 272 | "requires": { 273 | "bn.js": "^4.1.0", 274 | "miller-rabin": "^4.0.0", 275 | "randombytes": "^2.0.0" 276 | }, 277 | "dependencies": { 278 | "bn.js": { 279 | "version": "4.12.0", 280 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", 281 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 282 | } 283 | } 284 | }, 285 | "domain-browser": { 286 | "version": "4.19.0", 287 | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.19.0.tgz", 288 | "integrity": "sha512-fRA+BaAWOR/yr/t7T9E9GJztHPeFjj8U35ajyAjCDtAAnTn1Rc1f6W6VGPJrO1tkQv9zWu+JRof7z6oQtiYVFQ==" 289 | }, 290 | "elliptic": { 291 | "version": "6.5.4", 292 | "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", 293 | "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", 294 | "requires": { 295 | "bn.js": "^4.11.9", 296 | "brorand": "^1.1.0", 297 | "hash.js": "^1.0.0", 298 | "hmac-drbg": "^1.0.1", 299 | "inherits": "^2.0.4", 300 | "minimalistic-assert": "^1.0.1", 301 | "minimalistic-crypto-utils": "^1.0.1" 302 | }, 303 | "dependencies": { 304 | "bn.js": { 305 | "version": "4.12.0", 306 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", 307 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 308 | } 309 | } 310 | }, 311 | "es-abstract": { 312 | "version": "1.18.3", 313 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", 314 | "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", 315 | "requires": { 316 | "call-bind": "^1.0.2", 317 | "es-to-primitive": "^1.2.1", 318 | "function-bind": "^1.1.1", 319 | "get-intrinsic": "^1.1.1", 320 | "has": "^1.0.3", 321 | "has-symbols": "^1.0.2", 322 | "is-callable": "^1.2.3", 323 | "is-negative-zero": "^2.0.1", 324 | "is-regex": "^1.1.3", 325 | "is-string": "^1.0.6", 326 | "object-inspect": "^1.10.3", 327 | "object-keys": "^1.1.1", 328 | "object.assign": "^4.1.2", 329 | "string.prototype.trimend": "^1.0.4", 330 | "string.prototype.trimstart": "^1.0.4", 331 | "unbox-primitive": "^1.0.1" 332 | } 333 | }, 334 | "es-to-primitive": { 335 | "version": "1.2.1", 336 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", 337 | "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", 338 | "requires": { 339 | "is-callable": "^1.1.4", 340 | "is-date-object": "^1.0.1", 341 | "is-symbol": "^1.0.2" 342 | } 343 | }, 344 | "es6-object-assign": { 345 | "version": "1.1.0", 346 | "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", 347 | "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=" 348 | }, 349 | "events": { 350 | "version": "3.3.0", 351 | "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", 352 | "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" 353 | }, 354 | "evp_bytestokey": { 355 | "version": "1.0.3", 356 | "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", 357 | "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", 358 | "requires": { 359 | "md5.js": "^1.3.4", 360 | "safe-buffer": "^5.1.1" 361 | } 362 | }, 363 | "foreach": { 364 | "version": "2.0.5", 365 | "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", 366 | "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" 367 | }, 368 | "fs.realpath": { 369 | "version": "1.0.0", 370 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 371 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 372 | "dev": true 373 | }, 374 | "function-bind": { 375 | "version": "1.1.1", 376 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 377 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 378 | }, 379 | "get-intrinsic": { 380 | "version": "1.1.1", 381 | "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", 382 | "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", 383 | "requires": { 384 | "function-bind": "^1.1.1", 385 | "has": "^1.0.3", 386 | "has-symbols": "^1.0.1" 387 | } 388 | }, 389 | "glob": { 390 | "version": "7.1.7", 391 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", 392 | "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", 393 | "dev": true, 394 | "requires": { 395 | "fs.realpath": "^1.0.0", 396 | "inflight": "^1.0.4", 397 | "inherits": "2", 398 | "minimatch": "^3.0.4", 399 | "once": "^1.3.0", 400 | "path-is-absolute": "^1.0.0" 401 | } 402 | }, 403 | "has": { 404 | "version": "1.0.3", 405 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 406 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 407 | "requires": { 408 | "function-bind": "^1.1.1" 409 | } 410 | }, 411 | "has-bigints": { 412 | "version": "1.0.1", 413 | "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", 414 | "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" 415 | }, 416 | "has-symbols": { 417 | "version": "1.0.2", 418 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", 419 | "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" 420 | }, 421 | "hash-base": { 422 | "version": "3.1.0", 423 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", 424 | "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", 425 | "requires": { 426 | "inherits": "^2.0.4", 427 | "readable-stream": "^3.6.0", 428 | "safe-buffer": "^5.2.0" 429 | } 430 | }, 431 | "hash.js": { 432 | "version": "1.1.7", 433 | "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", 434 | "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", 435 | "requires": { 436 | "inherits": "^2.0.3", 437 | "minimalistic-assert": "^1.0.1" 438 | } 439 | }, 440 | "hmac-drbg": { 441 | "version": "1.0.1", 442 | "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", 443 | "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", 444 | "requires": { 445 | "hash.js": "^1.0.3", 446 | "minimalistic-assert": "^1.0.0", 447 | "minimalistic-crypto-utils": "^1.0.1" 448 | } 449 | }, 450 | "https-browserify": { 451 | "version": "1.0.0", 452 | "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", 453 | "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" 454 | }, 455 | "ieee754": { 456 | "version": "1.2.1", 457 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", 458 | "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" 459 | }, 460 | "inflight": { 461 | "version": "1.0.6", 462 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 463 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 464 | "dev": true, 465 | "requires": { 466 | "once": "^1.3.0", 467 | "wrappy": "1" 468 | } 469 | }, 470 | "inherits": { 471 | "version": "2.0.4", 472 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 473 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 474 | }, 475 | "is-arguments": { 476 | "version": "1.1.0", 477 | "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", 478 | "integrity": "sha512-1Ij4lOMPl/xB5kBDn7I+b2ttPMKa8szhEIrXDuXQD/oe3HJLTLhqhgGspwgyGd6MOywBUqVvYicF72lkgDnIHg==", 479 | "requires": { 480 | "call-bind": "^1.0.0" 481 | } 482 | }, 483 | "is-bigint": { 484 | "version": "1.0.2", 485 | "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", 486 | "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==" 487 | }, 488 | "is-boolean-object": { 489 | "version": "1.1.1", 490 | "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", 491 | "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", 492 | "requires": { 493 | "call-bind": "^1.0.2" 494 | } 495 | }, 496 | "is-callable": { 497 | "version": "1.2.3", 498 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", 499 | "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==" 500 | }, 501 | "is-date-object": { 502 | "version": "1.0.4", 503 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", 504 | "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==" 505 | }, 506 | "is-generator-function": { 507 | "version": "1.0.9", 508 | "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.9.tgz", 509 | "integrity": "sha512-ZJ34p1uvIfptHCN7sFTjGibB9/oBg17sHqzDLfuwhvmN/qLVvIQXRQ8licZQ35WJ8KuEQt/etnnzQFI9C9Ue/A==" 510 | }, 511 | "is-nan": { 512 | "version": "1.3.2", 513 | "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", 514 | "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", 515 | "requires": { 516 | "call-bind": "^1.0.0", 517 | "define-properties": "^1.1.3" 518 | } 519 | }, 520 | "is-negative-zero": { 521 | "version": "2.0.1", 522 | "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", 523 | "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" 524 | }, 525 | "is-number-object": { 526 | "version": "1.0.5", 527 | "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", 528 | "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==" 529 | }, 530 | "is-regex": { 531 | "version": "1.1.3", 532 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", 533 | "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", 534 | "requires": { 535 | "call-bind": "^1.0.2", 536 | "has-symbols": "^1.0.2" 537 | } 538 | }, 539 | "is-string": { 540 | "version": "1.0.6", 541 | "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", 542 | "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==" 543 | }, 544 | "is-symbol": { 545 | "version": "1.0.4", 546 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", 547 | "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", 548 | "requires": { 549 | "has-symbols": "^1.0.2" 550 | } 551 | }, 552 | "is-typed-array": { 553 | "version": "1.1.5", 554 | "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.5.tgz", 555 | "integrity": "sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug==", 556 | "requires": { 557 | "available-typed-arrays": "^1.0.2", 558 | "call-bind": "^1.0.2", 559 | "es-abstract": "^1.18.0-next.2", 560 | "foreach": "^2.0.5", 561 | "has-symbols": "^1.0.1" 562 | } 563 | }, 564 | "md5.js": { 565 | "version": "1.3.5", 566 | "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", 567 | "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", 568 | "requires": { 569 | "hash-base": "^3.0.0", 570 | "inherits": "^2.0.1", 571 | "safe-buffer": "^5.1.2" 572 | } 573 | }, 574 | "miller-rabin": { 575 | "version": "4.0.1", 576 | "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", 577 | "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", 578 | "requires": { 579 | "bn.js": "^4.0.0", 580 | "brorand": "^1.0.1" 581 | }, 582 | "dependencies": { 583 | "bn.js": { 584 | "version": "4.12.0", 585 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", 586 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 587 | } 588 | } 589 | }, 590 | "minimalistic-assert": { 591 | "version": "1.0.1", 592 | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", 593 | "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" 594 | }, 595 | "minimalistic-crypto-utils": { 596 | "version": "1.0.1", 597 | "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", 598 | "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" 599 | }, 600 | "minimatch": { 601 | "version": "3.0.4", 602 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 603 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 604 | "dev": true, 605 | "requires": { 606 | "brace-expansion": "^1.1.7" 607 | } 608 | }, 609 | "object-inspect": { 610 | "version": "1.10.3", 611 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", 612 | "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==" 613 | }, 614 | "object-is": { 615 | "version": "1.1.5", 616 | "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", 617 | "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", 618 | "requires": { 619 | "call-bind": "^1.0.2", 620 | "define-properties": "^1.1.3" 621 | } 622 | }, 623 | "object-keys": { 624 | "version": "1.1.1", 625 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", 626 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" 627 | }, 628 | "object.assign": { 629 | "version": "4.1.2", 630 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", 631 | "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", 632 | "requires": { 633 | "call-bind": "^1.0.0", 634 | "define-properties": "^1.1.3", 635 | "has-symbols": "^1.0.1", 636 | "object-keys": "^1.1.1" 637 | } 638 | }, 639 | "once": { 640 | "version": "1.4.0", 641 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 642 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 643 | "dev": true, 644 | "requires": { 645 | "wrappy": "1" 646 | } 647 | }, 648 | "os-browserify": { 649 | "version": "0.3.0", 650 | "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", 651 | "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" 652 | }, 653 | "pako": { 654 | "version": "1.0.11", 655 | "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", 656 | "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" 657 | }, 658 | "parse-asn1": { 659 | "version": "5.1.6", 660 | "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", 661 | "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", 662 | "requires": { 663 | "asn1.js": "^5.2.0", 664 | "browserify-aes": "^1.0.0", 665 | "evp_bytestokey": "^1.0.0", 666 | "pbkdf2": "^3.0.3", 667 | "safe-buffer": "^5.1.1" 668 | } 669 | }, 670 | "path-browserify": { 671 | "version": "1.0.1", 672 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", 673 | "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" 674 | }, 675 | "path-is-absolute": { 676 | "version": "1.0.1", 677 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 678 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 679 | "dev": true 680 | }, 681 | "pbkdf2": { 682 | "version": "3.1.2", 683 | "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", 684 | "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", 685 | "requires": { 686 | "create-hash": "^1.1.2", 687 | "create-hmac": "^1.1.4", 688 | "ripemd160": "^2.0.1", 689 | "safe-buffer": "^5.0.1", 690 | "sha.js": "^2.4.8" 691 | } 692 | }, 693 | "process": { 694 | "version": "0.11.10", 695 | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", 696 | "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" 697 | }, 698 | "public-encrypt": { 699 | "version": "4.0.3", 700 | "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", 701 | "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", 702 | "requires": { 703 | "bn.js": "^4.1.0", 704 | "browserify-rsa": "^4.0.0", 705 | "create-hash": "^1.1.0", 706 | "parse-asn1": "^5.0.0", 707 | "randombytes": "^2.0.1", 708 | "safe-buffer": "^5.1.2" 709 | }, 710 | "dependencies": { 711 | "bn.js": { 712 | "version": "4.12.0", 713 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", 714 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 715 | } 716 | } 717 | }, 718 | "punycode": { 719 | "version": "2.1.1", 720 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 721 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" 722 | }, 723 | "querystring": { 724 | "version": "0.2.0", 725 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", 726 | "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" 727 | }, 728 | "querystring-es3": { 729 | "version": "0.2.1", 730 | "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", 731 | "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" 732 | }, 733 | "randombytes": { 734 | "version": "2.1.0", 735 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", 736 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", 737 | "requires": { 738 | "safe-buffer": "^5.1.0" 739 | } 740 | }, 741 | "randomfill": { 742 | "version": "1.0.4", 743 | "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", 744 | "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", 745 | "requires": { 746 | "randombytes": "^2.0.5", 747 | "safe-buffer": "^5.1.0" 748 | } 749 | }, 750 | "readable-stream": { 751 | "version": "3.6.0", 752 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 753 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", 754 | "requires": { 755 | "inherits": "^2.0.3", 756 | "string_decoder": "^1.1.1", 757 | "util-deprecate": "^1.0.1" 758 | } 759 | }, 760 | "rimraf": { 761 | "version": "2.7.1", 762 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", 763 | "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", 764 | "dev": true, 765 | "requires": { 766 | "glob": "^7.1.3" 767 | } 768 | }, 769 | "ripemd160": { 770 | "version": "2.0.2", 771 | "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", 772 | "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", 773 | "requires": { 774 | "hash-base": "^3.0.0", 775 | "inherits": "^2.0.1" 776 | } 777 | }, 778 | "safe-buffer": { 779 | "version": "5.2.1", 780 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 781 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" 782 | }, 783 | "safer-buffer": { 784 | "version": "2.1.2", 785 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 786 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 787 | }, 788 | "setimmediate": { 789 | "version": "1.0.5", 790 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", 791 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" 792 | }, 793 | "sha.js": { 794 | "version": "2.4.11", 795 | "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", 796 | "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", 797 | "requires": { 798 | "inherits": "^2.0.1", 799 | "safe-buffer": "^5.0.1" 800 | } 801 | }, 802 | "stream-browserify": { 803 | "version": "3.0.0", 804 | "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", 805 | "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", 806 | "requires": { 807 | "inherits": "~2.0.4", 808 | "readable-stream": "^3.5.0" 809 | } 810 | }, 811 | "stream-http": { 812 | "version": "3.2.0", 813 | "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", 814 | "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", 815 | "requires": { 816 | "builtin-status-codes": "^3.0.0", 817 | "inherits": "^2.0.4", 818 | "readable-stream": "^3.6.0", 819 | "xtend": "^4.0.2" 820 | } 821 | }, 822 | "string.prototype.trimend": { 823 | "version": "1.0.4", 824 | "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", 825 | "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", 826 | "requires": { 827 | "call-bind": "^1.0.2", 828 | "define-properties": "^1.1.3" 829 | } 830 | }, 831 | "string.prototype.trimstart": { 832 | "version": "1.0.4", 833 | "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", 834 | "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", 835 | "requires": { 836 | "call-bind": "^1.0.2", 837 | "define-properties": "^1.1.3" 838 | } 839 | }, 840 | "string_decoder": { 841 | "version": "1.3.0", 842 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", 843 | "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", 844 | "requires": { 845 | "safe-buffer": "~5.2.0" 846 | } 847 | }, 848 | "timers-browserify": { 849 | "version": "2.0.12", 850 | "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", 851 | "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", 852 | "requires": { 853 | "setimmediate": "^1.0.4" 854 | } 855 | }, 856 | "tty-browserify": { 857 | "version": "0.0.1", 858 | "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", 859 | "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" 860 | }, 861 | "unbox-primitive": { 862 | "version": "1.0.1", 863 | "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", 864 | "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", 865 | "requires": { 866 | "function-bind": "^1.1.1", 867 | "has-bigints": "^1.0.1", 868 | "has-symbols": "^1.0.2", 869 | "which-boxed-primitive": "^1.0.2" 870 | } 871 | }, 872 | "url": { 873 | "version": "0.11.0", 874 | "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", 875 | "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", 876 | "requires": { 877 | "punycode": "1.3.2", 878 | "querystring": "0.2.0" 879 | }, 880 | "dependencies": { 881 | "punycode": { 882 | "version": "1.3.2", 883 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", 884 | "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" 885 | } 886 | } 887 | }, 888 | "util": { 889 | "version": "0.12.4", 890 | "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", 891 | "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", 892 | "requires": { 893 | "inherits": "^2.0.3", 894 | "is-arguments": "^1.0.4", 895 | "is-generator-function": "^1.0.7", 896 | "is-typed-array": "^1.1.3", 897 | "safe-buffer": "^5.1.2", 898 | "which-typed-array": "^1.1.2" 899 | } 900 | }, 901 | "util-deprecate": { 902 | "version": "1.0.2", 903 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 904 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 905 | }, 906 | "vm-browserify": { 907 | "version": "1.1.2", 908 | "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", 909 | "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" 910 | }, 911 | "which-boxed-primitive": { 912 | "version": "1.0.2", 913 | "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", 914 | "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", 915 | "requires": { 916 | "is-bigint": "^1.0.1", 917 | "is-boolean-object": "^1.1.0", 918 | "is-number-object": "^1.0.4", 919 | "is-string": "^1.0.5", 920 | "is-symbol": "^1.0.3" 921 | } 922 | }, 923 | "which-typed-array": { 924 | "version": "1.1.4", 925 | "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz", 926 | "integrity": "sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA==", 927 | "requires": { 928 | "available-typed-arrays": "^1.0.2", 929 | "call-bind": "^1.0.0", 930 | "es-abstract": "^1.18.0-next.1", 931 | "foreach": "^2.0.5", 932 | "function-bind": "^1.1.1", 933 | "has-symbols": "^1.0.1", 934 | "is-typed-array": "^1.1.3" 935 | } 936 | }, 937 | "wrappy": { 938 | "version": "1.0.2", 939 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 940 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 941 | "dev": true 942 | }, 943 | "xtend": { 944 | "version": "4.0.2", 945 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 946 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" 947 | } 948 | } 949 | } 950 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "meteor-node-stubs", 3 | "author": "Ben Newman ", 4 | "description": "Stub implementations of Node built-in modules, a la Browserify", 5 | "version": "1.1.0", 6 | "main": "index.js", 7 | "license": "MIT", 8 | "scripts": { 9 | "prepare": "node scripts/build-deps.js" 10 | }, 11 | "dependencies": { 12 | "assert": "^2.0.0", 13 | "browserify-zlib": "^0.2.0", 14 | "buffer": "^6.0.3", 15 | "console-browserify": "^1.2.0", 16 | "constants-browserify": "^1.0.0", 17 | "crypto-browserify": "^3.12.0", 18 | "domain-browser": "^4.19.0", 19 | "elliptic": "^6.5.4", 20 | "events": "^3.3.0", 21 | "https-browserify": "^1.0.0", 22 | "os-browserify": "^0.3.0", 23 | "path-browserify": "^1.0.0", 24 | "process": "^0.11.10", 25 | "punycode": "^2.1.1", 26 | "querystring-es3": "^0.2.1", 27 | "readable-stream": "^3.6.0", 28 | "stream-browserify": "^3.0.0", 29 | "stream-http": "^3.2.0", 30 | "string_decoder": "^1.3.0", 31 | "timers-browserify": "^2.0.12", 32 | "tty-browserify": "0.0.1", 33 | "url": "^0.11.0", 34 | "util": "^0.12.4", 35 | "vm-browserify": "^1.1.2" 36 | }, 37 | "bundledDependencies": [ 38 | "assert", 39 | "browserify-zlib", 40 | "buffer", 41 | "console-browserify", 42 | "constants-browserify", 43 | "crypto-browserify", 44 | "domain-browser", 45 | "events", 46 | "https-browserify", 47 | "os-browserify", 48 | "path-browserify", 49 | "process", 50 | "punycode", 51 | "querystring-es3", 52 | "readable-stream", 53 | "stream-browserify", 54 | "stream-http", 55 | "string_decoder", 56 | "timers-browserify", 57 | "tty-browserify", 58 | "url", 59 | "util", 60 | "vm-browserify" 61 | ], 62 | "devDependencies": { 63 | "rimraf": "^2.5.2" 64 | }, 65 | "repository": { 66 | "type": "git", 67 | "url": "git+https://github.com/meteor/node-stubs.git" 68 | }, 69 | "keywords": [ 70 | "stubs", 71 | "shims", 72 | "node", 73 | "builtins", 74 | "core", 75 | "modules", 76 | "browserify", 77 | "webpack", 78 | "meteor" 79 | ], 80 | "bugs": { 81 | "url": "https://github.com/meteor/node-stubs/issues" 82 | }, 83 | "homepage": "https://github.com/meteor/node-stubs#readme" 84 | } 85 | -------------------------------------------------------------------------------- /scripts/build-deps.js: -------------------------------------------------------------------------------- 1 | var fs = require("fs"); 2 | var path = require("path"); 3 | var depsDir = path.join(__dirname, "..", "deps"); 4 | var map = require("../map.json"); 5 | 6 | // Each file in the `deps` directory expresses the dependencies of a stub. 7 | // For example, `deps/http.js` calls `require("http-browserify")` to 8 | // indicate that the `http` stub depends on the `http-browserify` package. 9 | // This makes it easy for a bundling tool like Browserify, Webpack, or 10 | // Meteor to include the appropriate package dependencies by depending on 11 | // `meteor-node-stubs/deps/http` rather than having to know how the `http` 12 | // stub is implemented. Some modules in the `deps` directory are empty, 13 | // such as `deps/fs.js`, which indicates that no dependencies need to be 14 | // bundled. Note that these modules should not be `require`d at runtime, 15 | // but merely scanned at bundling time. 16 | 17 | fs.mkdir(depsDir, function () { 18 | require("rimraf")("deps/*.js", function (error) { 19 | if (error) throw error; 20 | Object.keys(map).forEach(function (id) { 21 | fs.writeFileSync( 22 | path.join(depsDir, id + ".js"), 23 | typeof map[id] === "string" 24 | ? "require(" + JSON.stringify(map[id]) + ");\n" 25 | : "" 26 | ); 27 | }); 28 | }); 29 | }); 30 | -------------------------------------------------------------------------------- /wrappers/crypto.js: -------------------------------------------------------------------------------- 1 | global.Buffer = global.Buffer || require("buffer").Buffer; 2 | module.exports = require("crypto-browserify"); 3 | -------------------------------------------------------------------------------- /wrappers/module.js: -------------------------------------------------------------------------------- 1 | module.exports = module.constructor; 2 | --------------------------------------------------------------------------------