├── .github └── workflows │ └── npm-publish.yml ├── .gitignore ├── .travis.yml ├── LICENSE ├── README.md ├── demo └── index.html ├── dist └── md5.min.js ├── md5.js ├── package-lock.json ├── package.json ├── test.js └── webpack.config.js /.github/workflows/npm-publish.yml: -------------------------------------------------------------------------------- 1 | # This workflow will run tests using node and then publish a package to GitHub Packages when a release is created 2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages 3 | 4 | name: Node.js Package 5 | 6 | on: 7 | release: 8 | types: [created] 9 | 10 | jobs: 11 | build: 12 | runs-on: ubuntu-latest 13 | steps: 14 | - uses: actions/checkout@v2 15 | - uses: actions/setup-node@v2 16 | with: 17 | node-version: 14 18 | - run: npm ci 19 | - run: npm test 20 | 21 | publish-npm: 22 | needs: build 23 | runs-on: ubuntu-latest 24 | steps: 25 | - uses: actions/checkout@v2 26 | - uses: actions/setup-node@v2 27 | with: 28 | node-version: 14 29 | registry-url: https://registry.npmjs.org/ 30 | - run: npm ci 31 | - run: npm publish 32 | env: 33 | NODE_AUTH_TOKEN: ${{secrets.npm_token}} 34 | 35 | publish-gpr: 36 | needs: build 37 | runs-on: ubuntu-latest 38 | permissions: 39 | contents: read 40 | packages: write 41 | steps: 42 | - uses: actions/checkout@v2 43 | - uses: actions/setup-node@v2 44 | with: 45 | node-version: 14 46 | registry-url: https://npm.pkg.github.com/ 47 | - run: npm ci 48 | - run: npm publish 49 | env: 50 | NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}} 51 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/* 2 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 0.12 4 | - 4 5 | - 5 6 | - 6 7 | - 7 8 | - 12 9 | - 14 10 | - 16 11 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright © 2011-2012, Paul Vorbach. 2 | Copyright © 2009, Jeff Mott. 3 | 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without modification, 7 | are permitted provided that the following conditions are met: 8 | 9 | * Redistributions of source code must retain the above copyright notice, this 10 | list of conditions and the following disclaimer. 11 | * Redistributions in binary form must reproduce the above copyright notice, this 12 | list of conditions and the following disclaimer in the documentation and/or 13 | other materials provided with the distribution. 14 | * Neither the name Crypto-JS nor the names of its contributors may be used to 15 | endorse or promote products derived from this software without specific prior 16 | written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 19 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 22 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 23 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 24 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 25 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 27 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # MD5 2 | 3 | [![build status](https://secure.travis-ci.org/pvorb/node-md5.png)](http://travis-ci.org/pvorb/node-md5) [![info badge](https://img.shields.io/npm/dt/md5.svg)](http://npm-stat.com/charts.html?package=md5) 4 | 5 | a JavaScript function for hashing messages with MD5. 6 | 7 | node-md5 is being sponsored by the following tool; please help to support us by taking a look and signing up to a free trial 8 | GitAds 9 | 10 | ## Installation 11 | 12 | You can use this package on the server side as well as the client side. 13 | 14 | ### [Node.js](http://nodejs.org/): 15 | 16 | ~~~ 17 | npm install md5 18 | ~~~ 19 | 20 | 21 | ## API 22 | 23 | ~~~ javascript 24 | md5(message) 25 | ~~~ 26 | 27 | * `message` -- `String`, `Buffer`, `Array` or `Uint8Array` 28 | * returns `String` 29 | 30 | 31 | ## Usage 32 | 33 | ~~~ javascript 34 | const md5 = require('md5'); 35 | 36 | console.log(md5('message')); 37 | ~~~ 38 | 39 | This will print the following 40 | 41 | ~~~ 42 | 78e731027d8fd50ed642340b7c9a63b3 43 | ~~~ 44 | 45 | It supports buffers, too 46 | 47 | ~~~ javascript 48 | const fs = require('fs'); 49 | const md5 = require('md5'); 50 | 51 | fs.readFile('example.txt', function(err, buf) { 52 | console.log(md5(buf)); 53 | }); 54 | ~~~ 55 | 56 | ## Versions 57 | 58 | Before version 2.0.0 there were two packages called md5 on npm, one lowercase, 59 | one uppercase (the one you're looking at). As of version 2.0.0, all new versions 60 | of this module will go to lowercase [md5](https://www.npmjs.com/package/md5) on 61 | npm. To use the correct version, users of this module will have to change their 62 | code from `require('MD5')` to `require('md5')` if they want to use versions >= 63 | 2.0.0. 64 | 65 | 66 | ## Bugs and Issues 67 | 68 | If you encounter any bugs or issues, feel free to open an issue at 69 | [github](https://github.com/pvorb/node-md5/issues). 70 | 71 | 72 | ## Credits 73 | 74 | This package is based on the work of Jeff Mott, who did a pure JS implementation 75 | of the MD5 algorithm that was published by Ronald L. Rivest in 1991. I needed a 76 | npm package of the algorithm, so I used Jeff’s implementation for this package. 77 | The original implementation can be found in the 78 | [CryptoJS](http://code.google.com/p/crypto-js/) project. 79 | 80 | 81 | ## License 82 | 83 | ~~~ 84 | Copyright © 2011-2015, Paul Vorbach. 85 | Copyright © 2009, Jeff Mott. 86 | 87 | All rights reserved. 88 | 89 | Redistribution and use in source and binary forms, with or without modification, 90 | are permitted provided that the following conditions are met: 91 | 92 | * Redistributions of source code must retain the above copyright notice, this 93 | list of conditions and the following disclaimer. 94 | * Redistributions in binary form must reproduce the above copyright notice, this 95 | list of conditions and the following disclaimer in the documentation and/or 96 | other materials provided with the distribution. 97 | * Neither the name Crypto-JS nor the names of its contributors may be used to 98 | endorse or promote products derived from this software without specific prior 99 | written permission. 100 | 101 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 102 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 103 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 104 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 105 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 106 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 107 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 108 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 109 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 110 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 111 | ~~~ 112 | -------------------------------------------------------------------------------- /demo/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 15 | 16 | 50 | -------------------------------------------------------------------------------- /dist/md5.min.js: -------------------------------------------------------------------------------- 1 | var MD5=function(r){function n(o){if(t[o])return t[o].exports;var e=t[o]={i:o,l:!1,exports:{}};return r[o].call(e.exports,e,e.exports,n),e.l=!0,e.exports}var t={};return n.m=r,n.c=t,n.i=function(r){return r},n.d=function(r,t,o){n.o(r,t)||Object.defineProperty(r,t,{configurable:!1,enumerable:!0,get:o})},n.n=function(r){var t=r&&r.__esModule?function(){return r.default}:function(){return r};return n.d(t,"a",t),t},n.o=function(r,n){return Object.prototype.hasOwnProperty.call(r,n)},n.p="",n(n.s=4)}([function(r,n){var t={utf8:{stringToBytes:function(r){return t.bin.stringToBytes(unescape(encodeURIComponent(r)))},bytesToString:function(r){return decodeURIComponent(escape(t.bin.bytesToString(r)))}},bin:{stringToBytes:function(r){for(var n=[],t=0;t>>24)|4278255360&(f[h]<<24|f[h]>>>8);f[s>>>5]|=128<>>9<<4)]=s;for(var p=i._ff,y=i._gg,v=i._hh,d=i._ii,h=0;h>>0,a=a+T>>>0,l=l+x>>>0,g=g+B>>>0}return n.endian([c,a,l,g])};i._ff=function(r,n,t,o,e,u,i){var f=r+(n&t|~n&o)+(e>>>0)+i;return(f<>>32-u)+n},i._gg=function(r,n,t,o,e,u,i){var f=r+(n&o|t&~o)+(e>>>0)+i;return(f<>>32-u)+n},i._hh=function(r,n,t,o,e,u,i){var f=r+(n^t^o)+(e>>>0)+i;return(f<>>32-u)+n},i._ii=function(r,n,t,o,e,u,i){var f=r+(t^(n|~o))+(e>>>0)+i;return(f<>>32-u)+n},i._blocksize=16,i._digestsize=16,r.exports=function(r,t){if(void 0===r||null===r)throw new Error("Illegal argument "+r);var o=n.wordsToBytes(i(r,t));return t&&t.asBytes?o:t&&t.asString?u.bytesToString(o):n.bytesToHex(o)}}()},function(r,n){!function(){var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t={rotl:function(r,n){return r<>>32-n},rotr:function(r,n){return r<<32-n|r>>>n},endian:function(r){if(r.constructor==Number)return 16711935&t.rotl(r,8)|4278255360&t.rotl(r,24);for(var n=0;n0;r--)n.push(Math.floor(256*Math.random()));return n},bytesToWords:function(r){for(var n=[],t=0,o=0;t>>5]|=r[t]<<24-o%32;return n},wordsToBytes:function(r){for(var n=[],t=0;t<32*r.length;t+=8)n.push(r[t>>>5]>>>24-t%32&255);return n},bytesToHex:function(r){for(var n=[],t=0;t>>4).toString(16)),n.push((15&r[t]).toString(16));return n.join("")},hexToBytes:function(r){for(var n=[],t=0;t>>6*(3-u)&63)):t.push("=");return t.join("")},base64ToBytes:function(r){r=r.replace(/[^A-Z0-9+\/]/gi,"");for(var t=[],o=0,e=0;o>>6-2*e);return t}};r.exports=t}()},function(r,n){function t(r){return!!r.constructor&&"function"==typeof r.constructor.isBuffer&&r.constructor.isBuffer(r)}function o(r){return"function"==typeof r.readFloatLE&&"function"==typeof r.slice&&t(r.slice(0,0))}/*! 2 | * Determine if an object is a Buffer 3 | * 4 | * @author Feross Aboukhadijeh 5 | * @license MIT 6 | */ 7 | r.exports=function(r){return null!=r&&(t(r)||o(r)||!!r._isBuffer)}},function(r,n,t){r.exports=t(1)}]); -------------------------------------------------------------------------------- /md5.js: -------------------------------------------------------------------------------- 1 | (function(){ 2 | var crypt = require('crypt'), 3 | utf8 = require('charenc').utf8, 4 | isBuffer = require('is-buffer'), 5 | bin = require('charenc').bin, 6 | 7 | // The core 8 | md5 = function (message, options) { 9 | // Convert to byte array 10 | if (message.constructor == String) 11 | if (options && options.encoding === 'binary') 12 | message = bin.stringToBytes(message); 13 | else 14 | message = utf8.stringToBytes(message); 15 | else if (isBuffer(message)) 16 | message = Array.prototype.slice.call(message, 0); 17 | else if (!Array.isArray(message) && message.constructor !== Uint8Array) 18 | message = message.toString(); 19 | // else, assume byte array already 20 | 21 | var m = crypt.bytesToWords(message), 22 | l = message.length * 8, 23 | a = 1732584193, 24 | b = -271733879, 25 | c = -1732584194, 26 | d = 271733878; 27 | 28 | // Swap endian 29 | for (var i = 0; i < m.length; i++) { 30 | m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF | 31 | ((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00; 32 | } 33 | 34 | // Padding 35 | m[l >>> 5] |= 0x80 << (l % 32); 36 | m[(((l + 64) >>> 9) << 4) + 14] = l; 37 | 38 | // Method shortcuts 39 | var FF = md5._ff, 40 | GG = md5._gg, 41 | HH = md5._hh, 42 | II = md5._ii; 43 | 44 | for (var i = 0; i < m.length; i += 16) { 45 | 46 | var aa = a, 47 | bb = b, 48 | cc = c, 49 | dd = d; 50 | 51 | a = FF(a, b, c, d, m[i+ 0], 7, -680876936); 52 | d = FF(d, a, b, c, m[i+ 1], 12, -389564586); 53 | c = FF(c, d, a, b, m[i+ 2], 17, 606105819); 54 | b = FF(b, c, d, a, m[i+ 3], 22, -1044525330); 55 | a = FF(a, b, c, d, m[i+ 4], 7, -176418897); 56 | d = FF(d, a, b, c, m[i+ 5], 12, 1200080426); 57 | c = FF(c, d, a, b, m[i+ 6], 17, -1473231341); 58 | b = FF(b, c, d, a, m[i+ 7], 22, -45705983); 59 | a = FF(a, b, c, d, m[i+ 8], 7, 1770035416); 60 | d = FF(d, a, b, c, m[i+ 9], 12, -1958414417); 61 | c = FF(c, d, a, b, m[i+10], 17, -42063); 62 | b = FF(b, c, d, a, m[i+11], 22, -1990404162); 63 | a = FF(a, b, c, d, m[i+12], 7, 1804603682); 64 | d = FF(d, a, b, c, m[i+13], 12, -40341101); 65 | c = FF(c, d, a, b, m[i+14], 17, -1502002290); 66 | b = FF(b, c, d, a, m[i+15], 22, 1236535329); 67 | 68 | a = GG(a, b, c, d, m[i+ 1], 5, -165796510); 69 | d = GG(d, a, b, c, m[i+ 6], 9, -1069501632); 70 | c = GG(c, d, a, b, m[i+11], 14, 643717713); 71 | b = GG(b, c, d, a, m[i+ 0], 20, -373897302); 72 | a = GG(a, b, c, d, m[i+ 5], 5, -701558691); 73 | d = GG(d, a, b, c, m[i+10], 9, 38016083); 74 | c = GG(c, d, a, b, m[i+15], 14, -660478335); 75 | b = GG(b, c, d, a, m[i+ 4], 20, -405537848); 76 | a = GG(a, b, c, d, m[i+ 9], 5, 568446438); 77 | d = GG(d, a, b, c, m[i+14], 9, -1019803690); 78 | c = GG(c, d, a, b, m[i+ 3], 14, -187363961); 79 | b = GG(b, c, d, a, m[i+ 8], 20, 1163531501); 80 | a = GG(a, b, c, d, m[i+13], 5, -1444681467); 81 | d = GG(d, a, b, c, m[i+ 2], 9, -51403784); 82 | c = GG(c, d, a, b, m[i+ 7], 14, 1735328473); 83 | b = GG(b, c, d, a, m[i+12], 20, -1926607734); 84 | 85 | a = HH(a, b, c, d, m[i+ 5], 4, -378558); 86 | d = HH(d, a, b, c, m[i+ 8], 11, -2022574463); 87 | c = HH(c, d, a, b, m[i+11], 16, 1839030562); 88 | b = HH(b, c, d, a, m[i+14], 23, -35309556); 89 | a = HH(a, b, c, d, m[i+ 1], 4, -1530992060); 90 | d = HH(d, a, b, c, m[i+ 4], 11, 1272893353); 91 | c = HH(c, d, a, b, m[i+ 7], 16, -155497632); 92 | b = HH(b, c, d, a, m[i+10], 23, -1094730640); 93 | a = HH(a, b, c, d, m[i+13], 4, 681279174); 94 | d = HH(d, a, b, c, m[i+ 0], 11, -358537222); 95 | c = HH(c, d, a, b, m[i+ 3], 16, -722521979); 96 | b = HH(b, c, d, a, m[i+ 6], 23, 76029189); 97 | a = HH(a, b, c, d, m[i+ 9], 4, -640364487); 98 | d = HH(d, a, b, c, m[i+12], 11, -421815835); 99 | c = HH(c, d, a, b, m[i+15], 16, 530742520); 100 | b = HH(b, c, d, a, m[i+ 2], 23, -995338651); 101 | 102 | a = II(a, b, c, d, m[i+ 0], 6, -198630844); 103 | d = II(d, a, b, c, m[i+ 7], 10, 1126891415); 104 | c = II(c, d, a, b, m[i+14], 15, -1416354905); 105 | b = II(b, c, d, a, m[i+ 5], 21, -57434055); 106 | a = II(a, b, c, d, m[i+12], 6, 1700485571); 107 | d = II(d, a, b, c, m[i+ 3], 10, -1894986606); 108 | c = II(c, d, a, b, m[i+10], 15, -1051523); 109 | b = II(b, c, d, a, m[i+ 1], 21, -2054922799); 110 | a = II(a, b, c, d, m[i+ 8], 6, 1873313359); 111 | d = II(d, a, b, c, m[i+15], 10, -30611744); 112 | c = II(c, d, a, b, m[i+ 6], 15, -1560198380); 113 | b = II(b, c, d, a, m[i+13], 21, 1309151649); 114 | a = II(a, b, c, d, m[i+ 4], 6, -145523070); 115 | d = II(d, a, b, c, m[i+11], 10, -1120210379); 116 | c = II(c, d, a, b, m[i+ 2], 15, 718787259); 117 | b = II(b, c, d, a, m[i+ 9], 21, -343485551); 118 | 119 | a = (a + aa) >>> 0; 120 | b = (b + bb) >>> 0; 121 | c = (c + cc) >>> 0; 122 | d = (d + dd) >>> 0; 123 | } 124 | 125 | return crypt.endian([a, b, c, d]); 126 | }; 127 | 128 | // Auxiliary functions 129 | md5._ff = function (a, b, c, d, x, s, t) { 130 | var n = a + (b & c | ~b & d) + (x >>> 0) + t; 131 | return ((n << s) | (n >>> (32 - s))) + b; 132 | }; 133 | md5._gg = function (a, b, c, d, x, s, t) { 134 | var n = a + (b & d | c & ~d) + (x >>> 0) + t; 135 | return ((n << s) | (n >>> (32 - s))) + b; 136 | }; 137 | md5._hh = function (a, b, c, d, x, s, t) { 138 | var n = a + (b ^ c ^ d) + (x >>> 0) + t; 139 | return ((n << s) | (n >>> (32 - s))) + b; 140 | }; 141 | md5._ii = function (a, b, c, d, x, s, t) { 142 | var n = a + (c ^ (b | ~d)) + (x >>> 0) + t; 143 | return ((n << s) | (n >>> (32 - s))) + b; 144 | }; 145 | 146 | // Package private blocksize 147 | md5._blocksize = 16; 148 | md5._digestsize = 16; 149 | 150 | module.exports = function (message, options) { 151 | if (message === undefined || message === null) 152 | throw new Error('Illegal argument ' + message); 153 | 154 | var digestbytes = crypt.wordsToBytes(md5(message, options)); 155 | return options && options.asBytes ? digestbytes : 156 | options && options.asString ? bin.bytesToString(digestbytes) : 157 | crypt.bytesToHex(digestbytes); 158 | }; 159 | 160 | })(); 161 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "md5", 3 | "version": "2.3.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "acorn": { 8 | "version": "5.7.4", 9 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", 10 | "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", 11 | "dev": true 12 | }, 13 | "acorn-dynamic-import": { 14 | "version": "2.0.2", 15 | "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz", 16 | "integrity": "sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ=", 17 | "dev": true, 18 | "requires": { 19 | "acorn": "^4.0.3" 20 | }, 21 | "dependencies": { 22 | "acorn": { 23 | "version": "4.0.13", 24 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", 25 | "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", 26 | "dev": true 27 | } 28 | } 29 | }, 30 | "ajv": { 31 | "version": "4.11.8", 32 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", 33 | "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", 34 | "dev": true, 35 | "requires": { 36 | "co": "^4.6.0", 37 | "json-stable-stringify": "^1.0.1" 38 | } 39 | }, 40 | "ajv-keywords": { 41 | "version": "1.5.1", 42 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", 43 | "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", 44 | "dev": true 45 | }, 46 | "align-text": { 47 | "version": "0.1.4", 48 | "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", 49 | "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", 50 | "dev": true, 51 | "requires": { 52 | "kind-of": "^3.0.2", 53 | "longest": "^1.0.1", 54 | "repeat-string": "^1.5.2" 55 | } 56 | }, 57 | "ansi-regex": { 58 | "version": "2.1.1", 59 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 60 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 61 | "dev": true 62 | }, 63 | "anymatch": { 64 | "version": "3.1.1", 65 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", 66 | "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", 67 | "dev": true, 68 | "optional": true, 69 | "requires": { 70 | "normalize-path": "^3.0.0", 71 | "picomatch": "^2.0.4" 72 | } 73 | }, 74 | "arr-diff": { 75 | "version": "4.0.0", 76 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 77 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 78 | "dev": true, 79 | "optional": true 80 | }, 81 | "arr-flatten": { 82 | "version": "1.1.0", 83 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", 84 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", 85 | "dev": true, 86 | "optional": true 87 | }, 88 | "arr-union": { 89 | "version": "3.1.0", 90 | "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", 91 | "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", 92 | "dev": true, 93 | "optional": true 94 | }, 95 | "array-unique": { 96 | "version": "0.3.2", 97 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 98 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 99 | "dev": true, 100 | "optional": true 101 | }, 102 | "asn1.js": { 103 | "version": "4.10.1", 104 | "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", 105 | "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", 106 | "dev": true, 107 | "requires": { 108 | "bn.js": "^4.0.0", 109 | "inherits": "^2.0.1", 110 | "minimalistic-assert": "^1.0.0" 111 | }, 112 | "dependencies": { 113 | "bn.js": { 114 | "version": "4.11.9", 115 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", 116 | "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", 117 | "dev": true 118 | } 119 | } 120 | }, 121 | "assert": { 122 | "version": "1.5.0", 123 | "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", 124 | "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", 125 | "dev": true, 126 | "requires": { 127 | "object-assign": "^4.1.1", 128 | "util": "0.10.3" 129 | }, 130 | "dependencies": { 131 | "util": { 132 | "version": "0.10.3", 133 | "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", 134 | "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", 135 | "dev": true, 136 | "requires": { 137 | "inherits": "2.0.1" 138 | } 139 | } 140 | } 141 | }, 142 | "assign-symbols": { 143 | "version": "1.0.0", 144 | "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", 145 | "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", 146 | "dev": true, 147 | "optional": true 148 | }, 149 | "async": { 150 | "version": "2.6.3", 151 | "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", 152 | "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", 153 | "dev": true, 154 | "requires": { 155 | "lodash": "^4.17.14" 156 | } 157 | }, 158 | "async-each": { 159 | "version": "1.0.3", 160 | "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", 161 | "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", 162 | "dev": true, 163 | "optional": true 164 | }, 165 | "atob": { 166 | "version": "2.1.2", 167 | "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", 168 | "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", 169 | "dev": true, 170 | "optional": true 171 | }, 172 | "base": { 173 | "version": "0.11.2", 174 | "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", 175 | "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", 176 | "dev": true, 177 | "optional": true, 178 | "requires": { 179 | "cache-base": "^1.0.1", 180 | "class-utils": "^0.3.5", 181 | "component-emitter": "^1.2.1", 182 | "define-property": "^1.0.0", 183 | "isobject": "^3.0.1", 184 | "mixin-deep": "^1.2.0", 185 | "pascalcase": "^0.1.1" 186 | }, 187 | "dependencies": { 188 | "define-property": { 189 | "version": "1.0.0", 190 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 191 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 192 | "dev": true, 193 | "optional": true, 194 | "requires": { 195 | "is-descriptor": "^1.0.0" 196 | } 197 | }, 198 | "is-accessor-descriptor": { 199 | "version": "1.0.0", 200 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 201 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 202 | "dev": true, 203 | "optional": true, 204 | "requires": { 205 | "kind-of": "^6.0.0" 206 | } 207 | }, 208 | "is-data-descriptor": { 209 | "version": "1.0.0", 210 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 211 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 212 | "dev": true, 213 | "optional": true, 214 | "requires": { 215 | "kind-of": "^6.0.0" 216 | } 217 | }, 218 | "is-descriptor": { 219 | "version": "1.0.2", 220 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 221 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 222 | "dev": true, 223 | "optional": true, 224 | "requires": { 225 | "is-accessor-descriptor": "^1.0.0", 226 | "is-data-descriptor": "^1.0.0", 227 | "kind-of": "^6.0.2" 228 | } 229 | }, 230 | "kind-of": { 231 | "version": "6.0.3", 232 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 233 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 234 | "dev": true, 235 | "optional": true 236 | } 237 | } 238 | }, 239 | "base64-js": { 240 | "version": "1.3.1", 241 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", 242 | "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", 243 | "dev": true 244 | }, 245 | "big.js": { 246 | "version": "3.2.0", 247 | "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", 248 | "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", 249 | "dev": true 250 | }, 251 | "binary-extensions": { 252 | "version": "2.1.0", 253 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", 254 | "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", 255 | "dev": true, 256 | "optional": true 257 | }, 258 | "bn.js": { 259 | "version": "5.1.2", 260 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", 261 | "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", 262 | "dev": true 263 | }, 264 | "braces": { 265 | "version": "3.0.2", 266 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 267 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 268 | "dev": true, 269 | "optional": true, 270 | "requires": { 271 | "fill-range": "^7.0.1" 272 | } 273 | }, 274 | "brorand": { 275 | "version": "1.1.0", 276 | "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", 277 | "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", 278 | "dev": true 279 | }, 280 | "browserify-aes": { 281 | "version": "1.2.0", 282 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", 283 | "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", 284 | "dev": true, 285 | "requires": { 286 | "buffer-xor": "^1.0.3", 287 | "cipher-base": "^1.0.0", 288 | "create-hash": "^1.1.0", 289 | "evp_bytestokey": "^1.0.3", 290 | "inherits": "^2.0.1", 291 | "safe-buffer": "^5.0.1" 292 | } 293 | }, 294 | "browserify-cipher": { 295 | "version": "1.0.1", 296 | "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", 297 | "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", 298 | "dev": true, 299 | "requires": { 300 | "browserify-aes": "^1.0.4", 301 | "browserify-des": "^1.0.0", 302 | "evp_bytestokey": "^1.0.0" 303 | } 304 | }, 305 | "browserify-des": { 306 | "version": "1.0.2", 307 | "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", 308 | "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", 309 | "dev": true, 310 | "requires": { 311 | "cipher-base": "^1.0.1", 312 | "des.js": "^1.0.0", 313 | "inherits": "^2.0.1", 314 | "safe-buffer": "^5.1.2" 315 | } 316 | }, 317 | "browserify-rsa": { 318 | "version": "4.0.1", 319 | "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", 320 | "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", 321 | "dev": true, 322 | "requires": { 323 | "bn.js": "^4.1.0", 324 | "randombytes": "^2.0.1" 325 | }, 326 | "dependencies": { 327 | "bn.js": { 328 | "version": "4.11.9", 329 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", 330 | "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", 331 | "dev": true 332 | } 333 | } 334 | }, 335 | "browserify-sign": { 336 | "version": "4.2.0", 337 | "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.0.tgz", 338 | "integrity": "sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==", 339 | "dev": true, 340 | "requires": { 341 | "bn.js": "^5.1.1", 342 | "browserify-rsa": "^4.0.1", 343 | "create-hash": "^1.2.0", 344 | "create-hmac": "^1.1.7", 345 | "elliptic": "^6.5.2", 346 | "inherits": "^2.0.4", 347 | "parse-asn1": "^5.1.5", 348 | "readable-stream": "^3.6.0", 349 | "safe-buffer": "^5.2.0" 350 | }, 351 | "dependencies": { 352 | "inherits": { 353 | "version": "2.0.4", 354 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 355 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 356 | "dev": true 357 | }, 358 | "readable-stream": { 359 | "version": "3.6.0", 360 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 361 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", 362 | "dev": true, 363 | "requires": { 364 | "inherits": "^2.0.3", 365 | "string_decoder": "^1.1.1", 366 | "util-deprecate": "^1.0.1" 367 | } 368 | }, 369 | "safe-buffer": { 370 | "version": "5.2.1", 371 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 372 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 373 | "dev": true 374 | } 375 | } 376 | }, 377 | "browserify-zlib": { 378 | "version": "0.2.0", 379 | "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", 380 | "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", 381 | "dev": true, 382 | "requires": { 383 | "pako": "~1.0.5" 384 | } 385 | }, 386 | "buffer": { 387 | "version": "4.9.2", 388 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", 389 | "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", 390 | "dev": true, 391 | "requires": { 392 | "base64-js": "^1.0.2", 393 | "ieee754": "^1.1.4", 394 | "isarray": "^1.0.0" 395 | } 396 | }, 397 | "buffer-xor": { 398 | "version": "1.0.3", 399 | "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", 400 | "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", 401 | "dev": true 402 | }, 403 | "builtin-status-codes": { 404 | "version": "3.0.0", 405 | "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", 406 | "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", 407 | "dev": true 408 | }, 409 | "cache-base": { 410 | "version": "1.0.1", 411 | "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", 412 | "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", 413 | "dev": true, 414 | "optional": true, 415 | "requires": { 416 | "collection-visit": "^1.0.0", 417 | "component-emitter": "^1.2.1", 418 | "get-value": "^2.0.6", 419 | "has-value": "^1.0.0", 420 | "isobject": "^3.0.1", 421 | "set-value": "^2.0.0", 422 | "to-object-path": "^0.3.0", 423 | "union-value": "^1.0.0", 424 | "unset-value": "^1.0.0" 425 | } 426 | }, 427 | "camelcase": { 428 | "version": "1.2.1", 429 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", 430 | "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", 431 | "dev": true 432 | }, 433 | "center-align": { 434 | "version": "0.1.3", 435 | "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", 436 | "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", 437 | "dev": true, 438 | "requires": { 439 | "align-text": "^0.1.3", 440 | "lazy-cache": "^1.0.3" 441 | } 442 | }, 443 | "charenc": { 444 | "version": "0.0.2", 445 | "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", 446 | "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=" 447 | }, 448 | "chokidar": { 449 | "version": "3.4.1", 450 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", 451 | "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", 452 | "dev": true, 453 | "optional": true, 454 | "requires": { 455 | "anymatch": "~3.1.1", 456 | "braces": "~3.0.2", 457 | "fsevents": "~2.1.2", 458 | "glob-parent": "~5.1.0", 459 | "is-binary-path": "~2.1.0", 460 | "is-glob": "~4.0.1", 461 | "normalize-path": "~3.0.0", 462 | "readdirp": "~3.4.0" 463 | } 464 | }, 465 | "cipher-base": { 466 | "version": "1.0.4", 467 | "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", 468 | "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", 469 | "dev": true, 470 | "requires": { 471 | "inherits": "^2.0.1", 472 | "safe-buffer": "^5.0.1" 473 | } 474 | }, 475 | "class-utils": { 476 | "version": "0.3.6", 477 | "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", 478 | "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", 479 | "dev": true, 480 | "optional": true, 481 | "requires": { 482 | "arr-union": "^3.1.0", 483 | "define-property": "^0.2.5", 484 | "isobject": "^3.0.0", 485 | "static-extend": "^0.1.1" 486 | }, 487 | "dependencies": { 488 | "define-property": { 489 | "version": "0.2.5", 490 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 491 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 492 | "dev": true, 493 | "optional": true, 494 | "requires": { 495 | "is-descriptor": "^0.1.0" 496 | } 497 | } 498 | } 499 | }, 500 | "cliui": { 501 | "version": "2.1.0", 502 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", 503 | "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", 504 | "dev": true, 505 | "requires": { 506 | "center-align": "^0.1.1", 507 | "right-align": "^0.1.1", 508 | "wordwrap": "0.0.2" 509 | } 510 | }, 511 | "co": { 512 | "version": "4.6.0", 513 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", 514 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", 515 | "dev": true 516 | }, 517 | "code-point-at": { 518 | "version": "1.1.0", 519 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", 520 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", 521 | "dev": true 522 | }, 523 | "collection-visit": { 524 | "version": "1.0.0", 525 | "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", 526 | "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", 527 | "dev": true, 528 | "optional": true, 529 | "requires": { 530 | "map-visit": "^1.0.0", 531 | "object-visit": "^1.0.0" 532 | } 533 | }, 534 | "commander": { 535 | "version": "2.3.0", 536 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.3.0.tgz", 537 | "integrity": "sha1-/UMOiJgy7DU7ms0d4hfBHLPu+HM=", 538 | "dev": true 539 | }, 540 | "component-emitter": { 541 | "version": "1.3.0", 542 | "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", 543 | "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", 544 | "dev": true, 545 | "optional": true 546 | }, 547 | "console-browserify": { 548 | "version": "1.2.0", 549 | "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", 550 | "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", 551 | "dev": true 552 | }, 553 | "constants-browserify": { 554 | "version": "1.0.0", 555 | "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", 556 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", 557 | "dev": true 558 | }, 559 | "copy-descriptor": { 560 | "version": "0.1.1", 561 | "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", 562 | "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", 563 | "dev": true, 564 | "optional": true 565 | }, 566 | "core-util-is": { 567 | "version": "1.0.2", 568 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 569 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", 570 | "dev": true 571 | }, 572 | "create-ecdh": { 573 | "version": "4.0.3", 574 | "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", 575 | "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", 576 | "dev": true, 577 | "requires": { 578 | "bn.js": "^4.1.0", 579 | "elliptic": "^6.0.0" 580 | }, 581 | "dependencies": { 582 | "bn.js": { 583 | "version": "4.11.9", 584 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", 585 | "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", 586 | "dev": true 587 | } 588 | } 589 | }, 590 | "create-hash": { 591 | "version": "1.2.0", 592 | "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", 593 | "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", 594 | "dev": true, 595 | "requires": { 596 | "cipher-base": "^1.0.1", 597 | "inherits": "^2.0.1", 598 | "md5.js": "^1.3.4", 599 | "ripemd160": "^2.0.1", 600 | "sha.js": "^2.4.0" 601 | } 602 | }, 603 | "create-hmac": { 604 | "version": "1.1.7", 605 | "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", 606 | "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", 607 | "dev": true, 608 | "requires": { 609 | "cipher-base": "^1.0.3", 610 | "create-hash": "^1.1.0", 611 | "inherits": "^2.0.1", 612 | "ripemd160": "^2.0.0", 613 | "safe-buffer": "^5.0.1", 614 | "sha.js": "^2.4.8" 615 | } 616 | }, 617 | "crypt": { 618 | "version": "0.0.2", 619 | "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", 620 | "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=" 621 | }, 622 | "crypto-browserify": { 623 | "version": "3.12.0", 624 | "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", 625 | "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", 626 | "dev": true, 627 | "requires": { 628 | "browserify-cipher": "^1.0.0", 629 | "browserify-sign": "^4.0.0", 630 | "create-ecdh": "^4.0.0", 631 | "create-hash": "^1.1.0", 632 | "create-hmac": "^1.1.0", 633 | "diffie-hellman": "^5.0.0", 634 | "inherits": "^2.0.1", 635 | "pbkdf2": "^3.0.3", 636 | "public-encrypt": "^4.0.0", 637 | "randombytes": "^2.0.0", 638 | "randomfill": "^1.0.3" 639 | } 640 | }, 641 | "debug": { 642 | "version": "2.6.9", 643 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 644 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 645 | "dev": true, 646 | "optional": true, 647 | "requires": { 648 | "ms": "2.0.0" 649 | }, 650 | "dependencies": { 651 | "ms": { 652 | "version": "2.0.0", 653 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 654 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 655 | "dev": true, 656 | "optional": true 657 | } 658 | } 659 | }, 660 | "decamelize": { 661 | "version": "1.2.0", 662 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 663 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", 664 | "dev": true 665 | }, 666 | "decode-uri-component": { 667 | "version": "0.2.0", 668 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", 669 | "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", 670 | "dev": true, 671 | "optional": true 672 | }, 673 | "define-property": { 674 | "version": "2.0.2", 675 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", 676 | "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", 677 | "dev": true, 678 | "optional": true, 679 | "requires": { 680 | "is-descriptor": "^1.0.2", 681 | "isobject": "^3.0.1" 682 | }, 683 | "dependencies": { 684 | "is-accessor-descriptor": { 685 | "version": "1.0.0", 686 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 687 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 688 | "dev": true, 689 | "optional": true, 690 | "requires": { 691 | "kind-of": "^6.0.0" 692 | } 693 | }, 694 | "is-data-descriptor": { 695 | "version": "1.0.0", 696 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 697 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 698 | "dev": true, 699 | "optional": true, 700 | "requires": { 701 | "kind-of": "^6.0.0" 702 | } 703 | }, 704 | "is-descriptor": { 705 | "version": "1.0.2", 706 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 707 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 708 | "dev": true, 709 | "optional": true, 710 | "requires": { 711 | "is-accessor-descriptor": "^1.0.0", 712 | "is-data-descriptor": "^1.0.0", 713 | "kind-of": "^6.0.2" 714 | } 715 | }, 716 | "kind-of": { 717 | "version": "6.0.3", 718 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 719 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 720 | "dev": true, 721 | "optional": true 722 | } 723 | } 724 | }, 725 | "des.js": { 726 | "version": "1.0.1", 727 | "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", 728 | "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", 729 | "dev": true, 730 | "requires": { 731 | "inherits": "^2.0.1", 732 | "minimalistic-assert": "^1.0.0" 733 | } 734 | }, 735 | "diff": { 736 | "version": "1.4.0", 737 | "resolved": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", 738 | "integrity": "sha1-fyjS657nsVqX79ic5j3P2qPMur8=", 739 | "dev": true 740 | }, 741 | "diffie-hellman": { 742 | "version": "5.0.3", 743 | "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", 744 | "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", 745 | "dev": true, 746 | "requires": { 747 | "bn.js": "^4.1.0", 748 | "miller-rabin": "^4.0.0", 749 | "randombytes": "^2.0.0" 750 | }, 751 | "dependencies": { 752 | "bn.js": { 753 | "version": "4.11.9", 754 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", 755 | "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", 756 | "dev": true 757 | } 758 | } 759 | }, 760 | "domain-browser": { 761 | "version": "1.2.0", 762 | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", 763 | "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", 764 | "dev": true 765 | }, 766 | "elliptic": { 767 | "version": "6.5.4", 768 | "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", 769 | "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", 770 | "dev": true, 771 | "requires": { 772 | "bn.js": "^4.11.9", 773 | "brorand": "^1.1.0", 774 | "hash.js": "^1.0.0", 775 | "hmac-drbg": "^1.0.1", 776 | "inherits": "^2.0.4", 777 | "minimalistic-assert": "^1.0.1", 778 | "minimalistic-crypto-utils": "^1.0.1" 779 | }, 780 | "dependencies": { 781 | "bn.js": { 782 | "version": "4.12.0", 783 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", 784 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", 785 | "dev": true 786 | }, 787 | "inherits": { 788 | "version": "2.0.4", 789 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 790 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 791 | "dev": true 792 | } 793 | } 794 | }, 795 | "emojis-list": { 796 | "version": "2.1.0", 797 | "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", 798 | "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", 799 | "dev": true 800 | }, 801 | "enhanced-resolve": { 802 | "version": "3.4.1", 803 | "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", 804 | "integrity": "sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24=", 805 | "dev": true, 806 | "requires": { 807 | "graceful-fs": "^4.1.2", 808 | "memory-fs": "^0.4.0", 809 | "object-assign": "^4.0.1", 810 | "tapable": "^0.2.7" 811 | }, 812 | "dependencies": { 813 | "graceful-fs": { 814 | "version": "4.2.4", 815 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 816 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", 817 | "dev": true 818 | } 819 | } 820 | }, 821 | "errno": { 822 | "version": "0.1.7", 823 | "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", 824 | "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", 825 | "dev": true, 826 | "requires": { 827 | "prr": "~1.0.1" 828 | } 829 | }, 830 | "error-ex": { 831 | "version": "1.3.2", 832 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", 833 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", 834 | "dev": true, 835 | "requires": { 836 | "is-arrayish": "^0.2.1" 837 | } 838 | }, 839 | "escape-string-regexp": { 840 | "version": "1.0.2", 841 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz", 842 | "integrity": "sha1-Tbwv5nTnGUnK8/smlc5/LcHZqNE=", 843 | "dev": true 844 | }, 845 | "events": { 846 | "version": "3.2.0", 847 | "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", 848 | "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", 849 | "dev": true 850 | }, 851 | "evp_bytestokey": { 852 | "version": "1.0.3", 853 | "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", 854 | "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", 855 | "dev": true, 856 | "requires": { 857 | "md5.js": "^1.3.4", 858 | "safe-buffer": "^5.1.1" 859 | } 860 | }, 861 | "expand-brackets": { 862 | "version": "2.1.4", 863 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", 864 | "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", 865 | "dev": true, 866 | "optional": true, 867 | "requires": { 868 | "debug": "^2.3.3", 869 | "define-property": "^0.2.5", 870 | "extend-shallow": "^2.0.1", 871 | "posix-character-classes": "^0.1.0", 872 | "regex-not": "^1.0.0", 873 | "snapdragon": "^0.8.1", 874 | "to-regex": "^3.0.1" 875 | }, 876 | "dependencies": { 877 | "debug": { 878 | "version": "2.6.9", 879 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 880 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 881 | "dev": true, 882 | "optional": true, 883 | "requires": { 884 | "ms": "2.0.0" 885 | } 886 | }, 887 | "define-property": { 888 | "version": "0.2.5", 889 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 890 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 891 | "dev": true, 892 | "optional": true, 893 | "requires": { 894 | "is-descriptor": "^0.1.0" 895 | } 896 | }, 897 | "extend-shallow": { 898 | "version": "2.0.1", 899 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 900 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 901 | "dev": true, 902 | "optional": true, 903 | "requires": { 904 | "is-extendable": "^0.1.0" 905 | } 906 | }, 907 | "ms": { 908 | "version": "2.0.0", 909 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 910 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 911 | "dev": true, 912 | "optional": true 913 | } 914 | } 915 | }, 916 | "extend-shallow": { 917 | "version": "3.0.2", 918 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", 919 | "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", 920 | "dev": true, 921 | "optional": true, 922 | "requires": { 923 | "assign-symbols": "^1.0.0", 924 | "is-extendable": "^1.0.1" 925 | }, 926 | "dependencies": { 927 | "is-extendable": { 928 | "version": "1.0.1", 929 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 930 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 931 | "dev": true, 932 | "optional": true, 933 | "requires": { 934 | "is-plain-object": "^2.0.4" 935 | } 936 | } 937 | } 938 | }, 939 | "extglob": { 940 | "version": "2.0.4", 941 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", 942 | "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", 943 | "dev": true, 944 | "optional": true, 945 | "requires": { 946 | "array-unique": "^0.3.2", 947 | "define-property": "^1.0.0", 948 | "expand-brackets": "^2.1.4", 949 | "extend-shallow": "^2.0.1", 950 | "fragment-cache": "^0.2.1", 951 | "regex-not": "^1.0.0", 952 | "snapdragon": "^0.8.1", 953 | "to-regex": "^3.0.1" 954 | }, 955 | "dependencies": { 956 | "define-property": { 957 | "version": "1.0.0", 958 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 959 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 960 | "dev": true, 961 | "optional": true, 962 | "requires": { 963 | "is-descriptor": "^1.0.0" 964 | } 965 | }, 966 | "extend-shallow": { 967 | "version": "2.0.1", 968 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 969 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 970 | "dev": true, 971 | "optional": true, 972 | "requires": { 973 | "is-extendable": "^0.1.0" 974 | } 975 | }, 976 | "is-accessor-descriptor": { 977 | "version": "1.0.0", 978 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 979 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 980 | "dev": true, 981 | "optional": true, 982 | "requires": { 983 | "kind-of": "^6.0.0" 984 | } 985 | }, 986 | "is-data-descriptor": { 987 | "version": "1.0.0", 988 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 989 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 990 | "dev": true, 991 | "optional": true, 992 | "requires": { 993 | "kind-of": "^6.0.0" 994 | } 995 | }, 996 | "is-descriptor": { 997 | "version": "1.0.2", 998 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 999 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 1000 | "dev": true, 1001 | "optional": true, 1002 | "requires": { 1003 | "is-accessor-descriptor": "^1.0.0", 1004 | "is-data-descriptor": "^1.0.0", 1005 | "kind-of": "^6.0.2" 1006 | } 1007 | }, 1008 | "kind-of": { 1009 | "version": "6.0.3", 1010 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 1011 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 1012 | "dev": true, 1013 | "optional": true 1014 | } 1015 | } 1016 | }, 1017 | "fill-range": { 1018 | "version": "7.0.1", 1019 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 1020 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 1021 | "dev": true, 1022 | "optional": true, 1023 | "requires": { 1024 | "to-regex-range": "^5.0.1" 1025 | } 1026 | }, 1027 | "find-up": { 1028 | "version": "1.1.2", 1029 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", 1030 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", 1031 | "dev": true, 1032 | "requires": { 1033 | "path-exists": "^2.0.0", 1034 | "pinkie-promise": "^2.0.0" 1035 | } 1036 | }, 1037 | "for-in": { 1038 | "version": "1.0.2", 1039 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", 1040 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", 1041 | "dev": true, 1042 | "optional": true 1043 | }, 1044 | "fragment-cache": { 1045 | "version": "0.2.1", 1046 | "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", 1047 | "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", 1048 | "dev": true, 1049 | "optional": true, 1050 | "requires": { 1051 | "map-cache": "^0.2.2" 1052 | } 1053 | }, 1054 | "fsevents": { 1055 | "version": "2.1.3", 1056 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", 1057 | "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", 1058 | "dev": true, 1059 | "optional": true 1060 | }, 1061 | "get-caller-file": { 1062 | "version": "1.0.3", 1063 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", 1064 | "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", 1065 | "dev": true 1066 | }, 1067 | "get-value": { 1068 | "version": "2.0.6", 1069 | "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", 1070 | "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", 1071 | "dev": true, 1072 | "optional": true 1073 | }, 1074 | "glob": { 1075 | "version": "3.2.3", 1076 | "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.3.tgz", 1077 | "integrity": "sha1-4xPusknHr/qlxHUoaw4RW1mDlGc=", 1078 | "dev": true, 1079 | "requires": { 1080 | "graceful-fs": "~2.0.0", 1081 | "inherits": "2", 1082 | "minimatch": "~0.2.11" 1083 | } 1084 | }, 1085 | "glob-parent": { 1086 | "version": "5.1.1", 1087 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", 1088 | "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", 1089 | "dev": true, 1090 | "optional": true, 1091 | "requires": { 1092 | "is-glob": "^4.0.1" 1093 | } 1094 | }, 1095 | "graceful-fs": { 1096 | "version": "2.0.3", 1097 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz", 1098 | "integrity": "sha1-fNLNsiiko/Nule+mzBQt59GhNtA=", 1099 | "dev": true 1100 | }, 1101 | "growl": { 1102 | "version": "1.8.1", 1103 | "resolved": "https://registry.npmjs.org/growl/-/growl-1.8.1.tgz", 1104 | "integrity": "sha1-Sy3sjZB+k9szZiTc7AGDUC+MlCg=", 1105 | "dev": true 1106 | }, 1107 | "has-flag": { 1108 | "version": "1.0.0", 1109 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", 1110 | "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", 1111 | "dev": true 1112 | }, 1113 | "has-value": { 1114 | "version": "1.0.0", 1115 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", 1116 | "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", 1117 | "dev": true, 1118 | "optional": true, 1119 | "requires": { 1120 | "get-value": "^2.0.6", 1121 | "has-values": "^1.0.0", 1122 | "isobject": "^3.0.0" 1123 | } 1124 | }, 1125 | "has-values": { 1126 | "version": "1.0.0", 1127 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", 1128 | "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", 1129 | "dev": true, 1130 | "optional": true, 1131 | "requires": { 1132 | "is-number": "^3.0.0", 1133 | "kind-of": "^4.0.0" 1134 | }, 1135 | "dependencies": { 1136 | "is-number": { 1137 | "version": "3.0.0", 1138 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 1139 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 1140 | "dev": true, 1141 | "optional": true, 1142 | "requires": { 1143 | "kind-of": "^3.0.2" 1144 | }, 1145 | "dependencies": { 1146 | "kind-of": { 1147 | "version": "3.2.2", 1148 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1149 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1150 | "dev": true, 1151 | "optional": true, 1152 | "requires": { 1153 | "is-buffer": "^1.1.5" 1154 | } 1155 | } 1156 | } 1157 | }, 1158 | "kind-of": { 1159 | "version": "4.0.0", 1160 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", 1161 | "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", 1162 | "dev": true, 1163 | "optional": true, 1164 | "requires": { 1165 | "is-buffer": "^1.1.5" 1166 | } 1167 | } 1168 | } 1169 | }, 1170 | "hash-base": { 1171 | "version": "3.1.0", 1172 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", 1173 | "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", 1174 | "dev": true, 1175 | "requires": { 1176 | "inherits": "^2.0.4", 1177 | "readable-stream": "^3.6.0", 1178 | "safe-buffer": "^5.2.0" 1179 | }, 1180 | "dependencies": { 1181 | "inherits": { 1182 | "version": "2.0.4", 1183 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1184 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 1185 | "dev": true 1186 | }, 1187 | "readable-stream": { 1188 | "version": "3.6.0", 1189 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 1190 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", 1191 | "dev": true, 1192 | "requires": { 1193 | "inherits": "^2.0.3", 1194 | "string_decoder": "^1.1.1", 1195 | "util-deprecate": "^1.0.1" 1196 | } 1197 | }, 1198 | "safe-buffer": { 1199 | "version": "5.2.1", 1200 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 1201 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 1202 | "dev": true 1203 | } 1204 | } 1205 | }, 1206 | "hash.js": { 1207 | "version": "1.1.7", 1208 | "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", 1209 | "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", 1210 | "dev": true, 1211 | "requires": { 1212 | "inherits": "^2.0.3", 1213 | "minimalistic-assert": "^1.0.1" 1214 | }, 1215 | "dependencies": { 1216 | "inherits": { 1217 | "version": "2.0.4", 1218 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1219 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 1220 | "dev": true 1221 | } 1222 | } 1223 | }, 1224 | "hmac-drbg": { 1225 | "version": "1.0.1", 1226 | "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", 1227 | "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", 1228 | "dev": true, 1229 | "requires": { 1230 | "hash.js": "^1.0.3", 1231 | "minimalistic-assert": "^1.0.0", 1232 | "minimalistic-crypto-utils": "^1.0.1" 1233 | } 1234 | }, 1235 | "hosted-git-info": { 1236 | "version": "2.8.9", 1237 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", 1238 | "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", 1239 | "dev": true 1240 | }, 1241 | "https-browserify": { 1242 | "version": "1.0.0", 1243 | "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", 1244 | "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", 1245 | "dev": true 1246 | }, 1247 | "ieee754": { 1248 | "version": "1.1.13", 1249 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", 1250 | "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", 1251 | "dev": true 1252 | }, 1253 | "inherits": { 1254 | "version": "2.0.1", 1255 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", 1256 | "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", 1257 | "dev": true 1258 | }, 1259 | "interpret": { 1260 | "version": "1.4.0", 1261 | "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", 1262 | "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", 1263 | "dev": true 1264 | }, 1265 | "invert-kv": { 1266 | "version": "1.0.0", 1267 | "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", 1268 | "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", 1269 | "dev": true 1270 | }, 1271 | "is-accessor-descriptor": { 1272 | "version": "0.1.6", 1273 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 1274 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 1275 | "dev": true, 1276 | "optional": true, 1277 | "requires": { 1278 | "kind-of": "^3.0.2" 1279 | } 1280 | }, 1281 | "is-arrayish": { 1282 | "version": "0.2.1", 1283 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 1284 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 1285 | "dev": true 1286 | }, 1287 | "is-binary-path": { 1288 | "version": "2.1.0", 1289 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 1290 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 1291 | "dev": true, 1292 | "optional": true, 1293 | "requires": { 1294 | "binary-extensions": "^2.0.0" 1295 | } 1296 | }, 1297 | "is-buffer": { 1298 | "version": "1.1.6", 1299 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 1300 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" 1301 | }, 1302 | "is-data-descriptor": { 1303 | "version": "0.1.4", 1304 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 1305 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 1306 | "dev": true, 1307 | "optional": true, 1308 | "requires": { 1309 | "kind-of": "^3.0.2" 1310 | } 1311 | }, 1312 | "is-descriptor": { 1313 | "version": "0.1.6", 1314 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 1315 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 1316 | "dev": true, 1317 | "optional": true, 1318 | "requires": { 1319 | "is-accessor-descriptor": "^0.1.6", 1320 | "is-data-descriptor": "^0.1.4", 1321 | "kind-of": "^5.0.0" 1322 | }, 1323 | "dependencies": { 1324 | "kind-of": { 1325 | "version": "5.1.0", 1326 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 1327 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 1328 | "dev": true, 1329 | "optional": true 1330 | } 1331 | } 1332 | }, 1333 | "is-extendable": { 1334 | "version": "0.1.1", 1335 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", 1336 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", 1337 | "dev": true, 1338 | "optional": true 1339 | }, 1340 | "is-extglob": { 1341 | "version": "2.1.1", 1342 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1343 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 1344 | "dev": true, 1345 | "optional": true 1346 | }, 1347 | "is-fullwidth-code-point": { 1348 | "version": "1.0.0", 1349 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", 1350 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", 1351 | "dev": true, 1352 | "requires": { 1353 | "number-is-nan": "^1.0.0" 1354 | } 1355 | }, 1356 | "is-glob": { 1357 | "version": "4.0.1", 1358 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 1359 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 1360 | "dev": true, 1361 | "optional": true, 1362 | "requires": { 1363 | "is-extglob": "^2.1.1" 1364 | } 1365 | }, 1366 | "is-number": { 1367 | "version": "7.0.0", 1368 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1369 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 1370 | "dev": true, 1371 | "optional": true 1372 | }, 1373 | "is-plain-object": { 1374 | "version": "2.0.4", 1375 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", 1376 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", 1377 | "dev": true, 1378 | "optional": true, 1379 | "requires": { 1380 | "isobject": "^3.0.1" 1381 | } 1382 | }, 1383 | "is-utf8": { 1384 | "version": "0.2.1", 1385 | "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", 1386 | "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", 1387 | "dev": true 1388 | }, 1389 | "is-windows": { 1390 | "version": "1.0.2", 1391 | "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", 1392 | "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", 1393 | "dev": true, 1394 | "optional": true 1395 | }, 1396 | "isarray": { 1397 | "version": "1.0.0", 1398 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 1399 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 1400 | "dev": true 1401 | }, 1402 | "isobject": { 1403 | "version": "3.0.1", 1404 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 1405 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 1406 | "dev": true, 1407 | "optional": true 1408 | }, 1409 | "jade": { 1410 | "version": "0.26.3", 1411 | "resolved": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz", 1412 | "integrity": "sha1-jxDXl32NefL2/4YqgbBRPMslaGw=", 1413 | "dev": true, 1414 | "requires": { 1415 | "commander": "0.6.1", 1416 | "mkdirp": "0.3.0" 1417 | }, 1418 | "dependencies": { 1419 | "commander": { 1420 | "version": "0.6.1", 1421 | "resolved": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz", 1422 | "integrity": "sha1-+mihT2qUXVTbvlDYzbMyDp47GgY=", 1423 | "dev": true 1424 | }, 1425 | "mkdirp": { 1426 | "version": "0.3.0", 1427 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz", 1428 | "integrity": "sha1-G79asbqCevI1dRQ0kEJkVfSB/h4=", 1429 | "dev": true 1430 | } 1431 | } 1432 | }, 1433 | "json-loader": { 1434 | "version": "0.5.7", 1435 | "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", 1436 | "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==", 1437 | "dev": true 1438 | }, 1439 | "json-stable-stringify": { 1440 | "version": "1.0.1", 1441 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", 1442 | "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", 1443 | "dev": true, 1444 | "requires": { 1445 | "jsonify": "~0.0.0" 1446 | } 1447 | }, 1448 | "json5": { 1449 | "version": "0.5.1", 1450 | "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", 1451 | "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", 1452 | "dev": true 1453 | }, 1454 | "jsonify": { 1455 | "version": "0.0.0", 1456 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", 1457 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", 1458 | "dev": true 1459 | }, 1460 | "kind-of": { 1461 | "version": "3.2.2", 1462 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1463 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1464 | "dev": true, 1465 | "requires": { 1466 | "is-buffer": "^1.1.5" 1467 | } 1468 | }, 1469 | "lazy-cache": { 1470 | "version": "1.0.4", 1471 | "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", 1472 | "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", 1473 | "dev": true 1474 | }, 1475 | "lcid": { 1476 | "version": "1.0.0", 1477 | "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", 1478 | "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", 1479 | "dev": true, 1480 | "requires": { 1481 | "invert-kv": "^1.0.0" 1482 | } 1483 | }, 1484 | "load-json-file": { 1485 | "version": "1.1.0", 1486 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", 1487 | "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", 1488 | "dev": true, 1489 | "requires": { 1490 | "graceful-fs": "^4.1.2", 1491 | "parse-json": "^2.2.0", 1492 | "pify": "^2.0.0", 1493 | "pinkie-promise": "^2.0.0", 1494 | "strip-bom": "^2.0.0" 1495 | }, 1496 | "dependencies": { 1497 | "graceful-fs": { 1498 | "version": "4.2.4", 1499 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 1500 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", 1501 | "dev": true 1502 | } 1503 | } 1504 | }, 1505 | "loader-runner": { 1506 | "version": "2.4.0", 1507 | "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", 1508 | "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", 1509 | "dev": true 1510 | }, 1511 | "loader-utils": { 1512 | "version": "0.2.17", 1513 | "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", 1514 | "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", 1515 | "dev": true, 1516 | "requires": { 1517 | "big.js": "^3.1.3", 1518 | "emojis-list": "^2.0.0", 1519 | "json5": "^0.5.0", 1520 | "object-assign": "^4.0.1" 1521 | } 1522 | }, 1523 | "lodash": { 1524 | "version": "4.17.21", 1525 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", 1526 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", 1527 | "dev": true 1528 | }, 1529 | "longest": { 1530 | "version": "1.0.1", 1531 | "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", 1532 | "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", 1533 | "dev": true 1534 | }, 1535 | "lru-cache": { 1536 | "version": "2.7.3", 1537 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", 1538 | "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=", 1539 | "dev": true 1540 | }, 1541 | "map-cache": { 1542 | "version": "0.2.2", 1543 | "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", 1544 | "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", 1545 | "dev": true, 1546 | "optional": true 1547 | }, 1548 | "map-visit": { 1549 | "version": "1.0.0", 1550 | "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", 1551 | "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", 1552 | "dev": true, 1553 | "optional": true, 1554 | "requires": { 1555 | "object-visit": "^1.0.0" 1556 | } 1557 | }, 1558 | "md5.js": { 1559 | "version": "1.3.5", 1560 | "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", 1561 | "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", 1562 | "dev": true, 1563 | "requires": { 1564 | "hash-base": "^3.0.0", 1565 | "inherits": "^2.0.1", 1566 | "safe-buffer": "^5.1.2" 1567 | } 1568 | }, 1569 | "memory-fs": { 1570 | "version": "0.4.1", 1571 | "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", 1572 | "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", 1573 | "dev": true, 1574 | "requires": { 1575 | "errno": "^0.1.3", 1576 | "readable-stream": "^2.0.1" 1577 | } 1578 | }, 1579 | "micromatch": { 1580 | "version": "3.1.10", 1581 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", 1582 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", 1583 | "dev": true, 1584 | "optional": true, 1585 | "requires": { 1586 | "arr-diff": "^4.0.0", 1587 | "array-unique": "^0.3.2", 1588 | "braces": "^2.3.1", 1589 | "define-property": "^2.0.2", 1590 | "extend-shallow": "^3.0.2", 1591 | "extglob": "^2.0.4", 1592 | "fragment-cache": "^0.2.1", 1593 | "kind-of": "^6.0.2", 1594 | "nanomatch": "^1.2.9", 1595 | "object.pick": "^1.3.0", 1596 | "regex-not": "^1.0.0", 1597 | "snapdragon": "^0.8.1", 1598 | "to-regex": "^3.0.2" 1599 | }, 1600 | "dependencies": { 1601 | "braces": { 1602 | "version": "2.3.2", 1603 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", 1604 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", 1605 | "dev": true, 1606 | "optional": true, 1607 | "requires": { 1608 | "arr-flatten": "^1.1.0", 1609 | "array-unique": "^0.3.2", 1610 | "extend-shallow": "^2.0.1", 1611 | "fill-range": "^4.0.0", 1612 | "isobject": "^3.0.1", 1613 | "repeat-element": "^1.1.2", 1614 | "snapdragon": "^0.8.1", 1615 | "snapdragon-node": "^2.0.1", 1616 | "split-string": "^3.0.2", 1617 | "to-regex": "^3.0.1" 1618 | }, 1619 | "dependencies": { 1620 | "extend-shallow": { 1621 | "version": "2.0.1", 1622 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 1623 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 1624 | "dev": true, 1625 | "optional": true, 1626 | "requires": { 1627 | "is-extendable": "^0.1.0" 1628 | } 1629 | } 1630 | } 1631 | }, 1632 | "fill-range": { 1633 | "version": "4.0.0", 1634 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", 1635 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", 1636 | "dev": true, 1637 | "optional": true, 1638 | "requires": { 1639 | "extend-shallow": "^2.0.1", 1640 | "is-number": "^3.0.0", 1641 | "repeat-string": "^1.6.1", 1642 | "to-regex-range": "^2.1.0" 1643 | }, 1644 | "dependencies": { 1645 | "extend-shallow": { 1646 | "version": "2.0.1", 1647 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 1648 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 1649 | "dev": true, 1650 | "optional": true, 1651 | "requires": { 1652 | "is-extendable": "^0.1.0" 1653 | } 1654 | } 1655 | } 1656 | }, 1657 | "is-number": { 1658 | "version": "3.0.0", 1659 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 1660 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 1661 | "dev": true, 1662 | "optional": true, 1663 | "requires": { 1664 | "kind-of": "^3.0.2" 1665 | }, 1666 | "dependencies": { 1667 | "kind-of": { 1668 | "version": "3.2.2", 1669 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1670 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1671 | "dev": true, 1672 | "optional": true, 1673 | "requires": { 1674 | "is-buffer": "^1.1.5" 1675 | } 1676 | } 1677 | } 1678 | }, 1679 | "kind-of": { 1680 | "version": "6.0.3", 1681 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 1682 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 1683 | "dev": true, 1684 | "optional": true 1685 | }, 1686 | "to-regex-range": { 1687 | "version": "2.1.1", 1688 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", 1689 | "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", 1690 | "dev": true, 1691 | "optional": true, 1692 | "requires": { 1693 | "is-number": "^3.0.0", 1694 | "repeat-string": "^1.6.1" 1695 | } 1696 | } 1697 | } 1698 | }, 1699 | "miller-rabin": { 1700 | "version": "4.0.1", 1701 | "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", 1702 | "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", 1703 | "dev": true, 1704 | "requires": { 1705 | "bn.js": "^4.0.0", 1706 | "brorand": "^1.0.1" 1707 | }, 1708 | "dependencies": { 1709 | "bn.js": { 1710 | "version": "4.11.9", 1711 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", 1712 | "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", 1713 | "dev": true 1714 | } 1715 | } 1716 | }, 1717 | "minimalistic-assert": { 1718 | "version": "1.0.1", 1719 | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", 1720 | "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", 1721 | "dev": true 1722 | }, 1723 | "minimalistic-crypto-utils": { 1724 | "version": "1.0.1", 1725 | "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", 1726 | "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", 1727 | "dev": true 1728 | }, 1729 | "minimatch": { 1730 | "version": "0.2.14", 1731 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", 1732 | "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=", 1733 | "dev": true, 1734 | "requires": { 1735 | "lru-cache": "2", 1736 | "sigmund": "~1.0.0" 1737 | } 1738 | }, 1739 | "minimist": { 1740 | "version": "0.0.8", 1741 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 1742 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 1743 | "dev": true 1744 | }, 1745 | "mixin-deep": { 1746 | "version": "1.3.2", 1747 | "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", 1748 | "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", 1749 | "dev": true, 1750 | "optional": true, 1751 | "requires": { 1752 | "for-in": "^1.0.2", 1753 | "is-extendable": "^1.0.1" 1754 | }, 1755 | "dependencies": { 1756 | "is-extendable": { 1757 | "version": "1.0.1", 1758 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 1759 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 1760 | "dev": true, 1761 | "optional": true, 1762 | "requires": { 1763 | "is-plain-object": "^2.0.4" 1764 | } 1765 | } 1766 | } 1767 | }, 1768 | "mkdirp": { 1769 | "version": "0.5.5", 1770 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", 1771 | "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", 1772 | "dev": true, 1773 | "requires": { 1774 | "minimist": "^1.2.5" 1775 | }, 1776 | "dependencies": { 1777 | "minimist": { 1778 | "version": "1.2.5", 1779 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", 1780 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", 1781 | "dev": true 1782 | } 1783 | } 1784 | }, 1785 | "mocha": { 1786 | "version": "2.3.4", 1787 | "resolved": "https://registry.npmjs.org/mocha/-/mocha-2.3.4.tgz", 1788 | "integrity": "sha1-himm+wRPLSJapLgaKuLQAWmesmY=", 1789 | "dev": true, 1790 | "requires": { 1791 | "commander": "2.3.0", 1792 | "debug": "2.2.0", 1793 | "diff": "1.4.0", 1794 | "escape-string-regexp": "1.0.2", 1795 | "glob": "3.2.3", 1796 | "growl": "1.8.1", 1797 | "jade": "0.26.3", 1798 | "mkdirp": "0.5.0", 1799 | "supports-color": "1.2.0" 1800 | }, 1801 | "dependencies": { 1802 | "debug": { 1803 | "version": "2.2.0", 1804 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", 1805 | "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", 1806 | "dev": true, 1807 | "requires": { 1808 | "ms": "0.7.1" 1809 | } 1810 | }, 1811 | "mkdirp": { 1812 | "version": "0.5.0", 1813 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", 1814 | "integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=", 1815 | "dev": true, 1816 | "requires": { 1817 | "minimist": "0.0.8" 1818 | } 1819 | } 1820 | } 1821 | }, 1822 | "ms": { 1823 | "version": "0.7.1", 1824 | "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", 1825 | "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", 1826 | "dev": true 1827 | }, 1828 | "nanomatch": { 1829 | "version": "1.2.13", 1830 | "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", 1831 | "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", 1832 | "dev": true, 1833 | "optional": true, 1834 | "requires": { 1835 | "arr-diff": "^4.0.0", 1836 | "array-unique": "^0.3.2", 1837 | "define-property": "^2.0.2", 1838 | "extend-shallow": "^3.0.2", 1839 | "fragment-cache": "^0.2.1", 1840 | "is-windows": "^1.0.2", 1841 | "kind-of": "^6.0.2", 1842 | "object.pick": "^1.3.0", 1843 | "regex-not": "^1.0.0", 1844 | "snapdragon": "^0.8.1", 1845 | "to-regex": "^3.0.1" 1846 | }, 1847 | "dependencies": { 1848 | "kind-of": { 1849 | "version": "6.0.3", 1850 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 1851 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 1852 | "dev": true, 1853 | "optional": true 1854 | } 1855 | } 1856 | }, 1857 | "neo-async": { 1858 | "version": "2.6.2", 1859 | "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", 1860 | "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", 1861 | "dev": true 1862 | }, 1863 | "node-libs-browser": { 1864 | "version": "2.2.1", 1865 | "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", 1866 | "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", 1867 | "dev": true, 1868 | "requires": { 1869 | "assert": "^1.1.1", 1870 | "browserify-zlib": "^0.2.0", 1871 | "buffer": "^4.3.0", 1872 | "console-browserify": "^1.1.0", 1873 | "constants-browserify": "^1.0.0", 1874 | "crypto-browserify": "^3.11.0", 1875 | "domain-browser": "^1.1.1", 1876 | "events": "^3.0.0", 1877 | "https-browserify": "^1.0.0", 1878 | "os-browserify": "^0.3.0", 1879 | "path-browserify": "0.0.1", 1880 | "process": "^0.11.10", 1881 | "punycode": "^1.2.4", 1882 | "querystring-es3": "^0.2.0", 1883 | "readable-stream": "^2.3.3", 1884 | "stream-browserify": "^2.0.1", 1885 | "stream-http": "^2.7.2", 1886 | "string_decoder": "^1.0.0", 1887 | "timers-browserify": "^2.0.4", 1888 | "tty-browserify": "0.0.0", 1889 | "url": "^0.11.0", 1890 | "util": "^0.11.0", 1891 | "vm-browserify": "^1.0.1" 1892 | } 1893 | }, 1894 | "normalize-package-data": { 1895 | "version": "2.5.0", 1896 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", 1897 | "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", 1898 | "dev": true, 1899 | "requires": { 1900 | "hosted-git-info": "^2.1.4", 1901 | "resolve": "^1.10.0", 1902 | "semver": "2 || 3 || 4 || 5", 1903 | "validate-npm-package-license": "^3.0.1" 1904 | } 1905 | }, 1906 | "normalize-path": { 1907 | "version": "3.0.0", 1908 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1909 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 1910 | "dev": true, 1911 | "optional": true 1912 | }, 1913 | "number-is-nan": { 1914 | "version": "1.0.1", 1915 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 1916 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 1917 | "dev": true 1918 | }, 1919 | "object-assign": { 1920 | "version": "4.1.1", 1921 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 1922 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", 1923 | "dev": true 1924 | }, 1925 | "object-copy": { 1926 | "version": "0.1.0", 1927 | "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", 1928 | "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", 1929 | "dev": true, 1930 | "optional": true, 1931 | "requires": { 1932 | "copy-descriptor": "^0.1.0", 1933 | "define-property": "^0.2.5", 1934 | "kind-of": "^3.0.3" 1935 | }, 1936 | "dependencies": { 1937 | "define-property": { 1938 | "version": "0.2.5", 1939 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 1940 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 1941 | "dev": true, 1942 | "optional": true, 1943 | "requires": { 1944 | "is-descriptor": "^0.1.0" 1945 | } 1946 | } 1947 | } 1948 | }, 1949 | "object-visit": { 1950 | "version": "1.0.1", 1951 | "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", 1952 | "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", 1953 | "dev": true, 1954 | "optional": true, 1955 | "requires": { 1956 | "isobject": "^3.0.0" 1957 | } 1958 | }, 1959 | "object.pick": { 1960 | "version": "1.3.0", 1961 | "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", 1962 | "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", 1963 | "dev": true, 1964 | "optional": true, 1965 | "requires": { 1966 | "isobject": "^3.0.1" 1967 | } 1968 | }, 1969 | "os-browserify": { 1970 | "version": "0.3.0", 1971 | "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", 1972 | "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", 1973 | "dev": true 1974 | }, 1975 | "os-locale": { 1976 | "version": "1.4.0", 1977 | "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", 1978 | "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", 1979 | "dev": true, 1980 | "requires": { 1981 | "lcid": "^1.0.0" 1982 | } 1983 | }, 1984 | "pako": { 1985 | "version": "1.0.11", 1986 | "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", 1987 | "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", 1988 | "dev": true 1989 | }, 1990 | "parse-asn1": { 1991 | "version": "5.1.5", 1992 | "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", 1993 | "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", 1994 | "dev": true, 1995 | "requires": { 1996 | "asn1.js": "^4.0.0", 1997 | "browserify-aes": "^1.0.0", 1998 | "create-hash": "^1.1.0", 1999 | "evp_bytestokey": "^1.0.0", 2000 | "pbkdf2": "^3.0.3", 2001 | "safe-buffer": "^5.1.1" 2002 | } 2003 | }, 2004 | "parse-json": { 2005 | "version": "2.2.0", 2006 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 2007 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 2008 | "dev": true, 2009 | "requires": { 2010 | "error-ex": "^1.2.0" 2011 | } 2012 | }, 2013 | "pascalcase": { 2014 | "version": "0.1.1", 2015 | "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", 2016 | "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", 2017 | "dev": true, 2018 | "optional": true 2019 | }, 2020 | "path-browserify": { 2021 | "version": "0.0.1", 2022 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", 2023 | "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", 2024 | "dev": true 2025 | }, 2026 | "path-dirname": { 2027 | "version": "1.0.2", 2028 | "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", 2029 | "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", 2030 | "dev": true, 2031 | "optional": true 2032 | }, 2033 | "path-exists": { 2034 | "version": "2.1.0", 2035 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", 2036 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", 2037 | "dev": true, 2038 | "requires": { 2039 | "pinkie-promise": "^2.0.0" 2040 | } 2041 | }, 2042 | "path-is-absolute": { 2043 | "version": "1.0.1", 2044 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 2045 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 2046 | "dev": true, 2047 | "optional": true 2048 | }, 2049 | "path-parse": { 2050 | "version": "1.0.7", 2051 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 2052 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 2053 | "dev": true 2054 | }, 2055 | "path-type": { 2056 | "version": "1.1.0", 2057 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", 2058 | "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", 2059 | "dev": true, 2060 | "requires": { 2061 | "graceful-fs": "^4.1.2", 2062 | "pify": "^2.0.0", 2063 | "pinkie-promise": "^2.0.0" 2064 | }, 2065 | "dependencies": { 2066 | "graceful-fs": { 2067 | "version": "4.2.4", 2068 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 2069 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", 2070 | "dev": true 2071 | } 2072 | } 2073 | }, 2074 | "pbkdf2": { 2075 | "version": "3.1.1", 2076 | "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", 2077 | "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", 2078 | "dev": true, 2079 | "requires": { 2080 | "create-hash": "^1.1.2", 2081 | "create-hmac": "^1.1.4", 2082 | "ripemd160": "^2.0.1", 2083 | "safe-buffer": "^5.0.1", 2084 | "sha.js": "^2.4.8" 2085 | } 2086 | }, 2087 | "picomatch": { 2088 | "version": "2.2.2", 2089 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", 2090 | "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", 2091 | "dev": true, 2092 | "optional": true 2093 | }, 2094 | "pify": { 2095 | "version": "2.3.0", 2096 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 2097 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 2098 | "dev": true 2099 | }, 2100 | "pinkie": { 2101 | "version": "2.0.4", 2102 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 2103 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 2104 | "dev": true 2105 | }, 2106 | "pinkie-promise": { 2107 | "version": "2.0.1", 2108 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 2109 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 2110 | "dev": true, 2111 | "requires": { 2112 | "pinkie": "^2.0.0" 2113 | } 2114 | }, 2115 | "posix-character-classes": { 2116 | "version": "0.1.1", 2117 | "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", 2118 | "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", 2119 | "dev": true, 2120 | "optional": true 2121 | }, 2122 | "process": { 2123 | "version": "0.11.10", 2124 | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", 2125 | "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", 2126 | "dev": true 2127 | }, 2128 | "process-nextick-args": { 2129 | "version": "2.0.1", 2130 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 2131 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", 2132 | "dev": true 2133 | }, 2134 | "prr": { 2135 | "version": "1.0.1", 2136 | "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", 2137 | "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", 2138 | "dev": true 2139 | }, 2140 | "public-encrypt": { 2141 | "version": "4.0.3", 2142 | "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", 2143 | "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", 2144 | "dev": true, 2145 | "requires": { 2146 | "bn.js": "^4.1.0", 2147 | "browserify-rsa": "^4.0.0", 2148 | "create-hash": "^1.1.0", 2149 | "parse-asn1": "^5.0.0", 2150 | "randombytes": "^2.0.1", 2151 | "safe-buffer": "^5.1.2" 2152 | }, 2153 | "dependencies": { 2154 | "bn.js": { 2155 | "version": "4.11.9", 2156 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", 2157 | "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", 2158 | "dev": true 2159 | } 2160 | } 2161 | }, 2162 | "punycode": { 2163 | "version": "1.4.1", 2164 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", 2165 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", 2166 | "dev": true 2167 | }, 2168 | "querystring": { 2169 | "version": "0.2.0", 2170 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", 2171 | "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", 2172 | "dev": true 2173 | }, 2174 | "querystring-es3": { 2175 | "version": "0.2.1", 2176 | "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", 2177 | "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", 2178 | "dev": true 2179 | }, 2180 | "randombytes": { 2181 | "version": "2.1.0", 2182 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", 2183 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", 2184 | "dev": true, 2185 | "requires": { 2186 | "safe-buffer": "^5.1.0" 2187 | } 2188 | }, 2189 | "randomfill": { 2190 | "version": "1.0.4", 2191 | "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", 2192 | "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", 2193 | "dev": true, 2194 | "requires": { 2195 | "randombytes": "^2.0.5", 2196 | "safe-buffer": "^5.1.0" 2197 | } 2198 | }, 2199 | "read-pkg": { 2200 | "version": "1.1.0", 2201 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", 2202 | "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", 2203 | "dev": true, 2204 | "requires": { 2205 | "load-json-file": "^1.0.0", 2206 | "normalize-package-data": "^2.3.2", 2207 | "path-type": "^1.0.0" 2208 | } 2209 | }, 2210 | "read-pkg-up": { 2211 | "version": "1.0.1", 2212 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", 2213 | "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", 2214 | "dev": true, 2215 | "requires": { 2216 | "find-up": "^1.0.0", 2217 | "read-pkg": "^1.0.0" 2218 | } 2219 | }, 2220 | "readable-stream": { 2221 | "version": "2.3.7", 2222 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", 2223 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", 2224 | "dev": true, 2225 | "requires": { 2226 | "core-util-is": "~1.0.0", 2227 | "inherits": "~2.0.3", 2228 | "isarray": "~1.0.0", 2229 | "process-nextick-args": "~2.0.0", 2230 | "safe-buffer": "~5.1.1", 2231 | "string_decoder": "~1.1.1", 2232 | "util-deprecate": "~1.0.1" 2233 | }, 2234 | "dependencies": { 2235 | "inherits": { 2236 | "version": "2.0.4", 2237 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 2238 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 2239 | "dev": true 2240 | } 2241 | } 2242 | }, 2243 | "readdirp": { 2244 | "version": "3.4.0", 2245 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", 2246 | "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", 2247 | "dev": true, 2248 | "optional": true, 2249 | "requires": { 2250 | "picomatch": "^2.2.1" 2251 | } 2252 | }, 2253 | "regex-not": { 2254 | "version": "1.0.2", 2255 | "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", 2256 | "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", 2257 | "dev": true, 2258 | "optional": true, 2259 | "requires": { 2260 | "extend-shallow": "^3.0.2", 2261 | "safe-regex": "^1.1.0" 2262 | } 2263 | }, 2264 | "remove-trailing-separator": { 2265 | "version": "1.1.0", 2266 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", 2267 | "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", 2268 | "dev": true, 2269 | "optional": true 2270 | }, 2271 | "repeat-element": { 2272 | "version": "1.1.3", 2273 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", 2274 | "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", 2275 | "dev": true, 2276 | "optional": true 2277 | }, 2278 | "repeat-string": { 2279 | "version": "1.6.1", 2280 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 2281 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", 2282 | "dev": true 2283 | }, 2284 | "require-directory": { 2285 | "version": "2.1.1", 2286 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 2287 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", 2288 | "dev": true 2289 | }, 2290 | "require-main-filename": { 2291 | "version": "1.0.1", 2292 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", 2293 | "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", 2294 | "dev": true 2295 | }, 2296 | "resolve": { 2297 | "version": "1.17.0", 2298 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", 2299 | "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", 2300 | "dev": true, 2301 | "requires": { 2302 | "path-parse": "^1.0.6" 2303 | } 2304 | }, 2305 | "resolve-url": { 2306 | "version": "0.2.1", 2307 | "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", 2308 | "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", 2309 | "dev": true, 2310 | "optional": true 2311 | }, 2312 | "ret": { 2313 | "version": "0.1.15", 2314 | "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", 2315 | "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", 2316 | "dev": true, 2317 | "optional": true 2318 | }, 2319 | "right-align": { 2320 | "version": "0.1.3", 2321 | "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", 2322 | "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", 2323 | "dev": true, 2324 | "requires": { 2325 | "align-text": "^0.1.1" 2326 | } 2327 | }, 2328 | "ripemd160": { 2329 | "version": "2.0.2", 2330 | "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", 2331 | "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", 2332 | "dev": true, 2333 | "requires": { 2334 | "hash-base": "^3.0.0", 2335 | "inherits": "^2.0.1" 2336 | } 2337 | }, 2338 | "safe-buffer": { 2339 | "version": "5.1.2", 2340 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 2341 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 2342 | "dev": true 2343 | }, 2344 | "safe-regex": { 2345 | "version": "1.1.0", 2346 | "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", 2347 | "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", 2348 | "dev": true, 2349 | "optional": true, 2350 | "requires": { 2351 | "ret": "~0.1.10" 2352 | } 2353 | }, 2354 | "semver": { 2355 | "version": "5.7.1", 2356 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 2357 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 2358 | "dev": true 2359 | }, 2360 | "set-blocking": { 2361 | "version": "2.0.0", 2362 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 2363 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", 2364 | "dev": true 2365 | }, 2366 | "set-value": { 2367 | "version": "2.0.1", 2368 | "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", 2369 | "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", 2370 | "dev": true, 2371 | "optional": true, 2372 | "requires": { 2373 | "extend-shallow": "^2.0.1", 2374 | "is-extendable": "^0.1.1", 2375 | "is-plain-object": "^2.0.3", 2376 | "split-string": "^3.0.1" 2377 | }, 2378 | "dependencies": { 2379 | "extend-shallow": { 2380 | "version": "2.0.1", 2381 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 2382 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 2383 | "dev": true, 2384 | "optional": true, 2385 | "requires": { 2386 | "is-extendable": "^0.1.0" 2387 | } 2388 | } 2389 | } 2390 | }, 2391 | "setimmediate": { 2392 | "version": "1.0.5", 2393 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", 2394 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", 2395 | "dev": true 2396 | }, 2397 | "sha.js": { 2398 | "version": "2.4.11", 2399 | "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", 2400 | "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", 2401 | "dev": true, 2402 | "requires": { 2403 | "inherits": "^2.0.1", 2404 | "safe-buffer": "^5.0.1" 2405 | } 2406 | }, 2407 | "sigmund": { 2408 | "version": "1.0.1", 2409 | "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", 2410 | "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", 2411 | "dev": true 2412 | }, 2413 | "snapdragon": { 2414 | "version": "0.8.2", 2415 | "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", 2416 | "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", 2417 | "dev": true, 2418 | "optional": true, 2419 | "requires": { 2420 | "base": "^0.11.1", 2421 | "debug": "^2.2.0", 2422 | "define-property": "^0.2.5", 2423 | "extend-shallow": "^2.0.1", 2424 | "map-cache": "^0.2.2", 2425 | "source-map": "^0.5.6", 2426 | "source-map-resolve": "^0.5.0", 2427 | "use": "^3.1.0" 2428 | }, 2429 | "dependencies": { 2430 | "define-property": { 2431 | "version": "0.2.5", 2432 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 2433 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 2434 | "dev": true, 2435 | "optional": true, 2436 | "requires": { 2437 | "is-descriptor": "^0.1.0" 2438 | } 2439 | }, 2440 | "extend-shallow": { 2441 | "version": "2.0.1", 2442 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 2443 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 2444 | "dev": true, 2445 | "optional": true, 2446 | "requires": { 2447 | "is-extendable": "^0.1.0" 2448 | } 2449 | } 2450 | } 2451 | }, 2452 | "snapdragon-node": { 2453 | "version": "2.1.1", 2454 | "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", 2455 | "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", 2456 | "dev": true, 2457 | "optional": true, 2458 | "requires": { 2459 | "define-property": "^1.0.0", 2460 | "isobject": "^3.0.0", 2461 | "snapdragon-util": "^3.0.1" 2462 | }, 2463 | "dependencies": { 2464 | "define-property": { 2465 | "version": "1.0.0", 2466 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 2467 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 2468 | "dev": true, 2469 | "optional": true, 2470 | "requires": { 2471 | "is-descriptor": "^1.0.0" 2472 | } 2473 | }, 2474 | "is-accessor-descriptor": { 2475 | "version": "1.0.0", 2476 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 2477 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 2478 | "dev": true, 2479 | "optional": true, 2480 | "requires": { 2481 | "kind-of": "^6.0.0" 2482 | } 2483 | }, 2484 | "is-data-descriptor": { 2485 | "version": "1.0.0", 2486 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 2487 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 2488 | "dev": true, 2489 | "optional": true, 2490 | "requires": { 2491 | "kind-of": "^6.0.0" 2492 | } 2493 | }, 2494 | "is-descriptor": { 2495 | "version": "1.0.2", 2496 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 2497 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 2498 | "dev": true, 2499 | "optional": true, 2500 | "requires": { 2501 | "is-accessor-descriptor": "^1.0.0", 2502 | "is-data-descriptor": "^1.0.0", 2503 | "kind-of": "^6.0.2" 2504 | } 2505 | }, 2506 | "kind-of": { 2507 | "version": "6.0.3", 2508 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 2509 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 2510 | "dev": true, 2511 | "optional": true 2512 | } 2513 | } 2514 | }, 2515 | "snapdragon-util": { 2516 | "version": "3.0.1", 2517 | "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", 2518 | "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", 2519 | "dev": true, 2520 | "optional": true, 2521 | "requires": { 2522 | "kind-of": "^3.2.0" 2523 | } 2524 | }, 2525 | "source-list-map": { 2526 | "version": "1.1.2", 2527 | "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-1.1.2.tgz", 2528 | "integrity": "sha1-mIkBnRAkzOVc3AaUmDN+9hhqEaE=", 2529 | "dev": true 2530 | }, 2531 | "source-map": { 2532 | "version": "0.5.7", 2533 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 2534 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 2535 | "dev": true 2536 | }, 2537 | "source-map-resolve": { 2538 | "version": "0.5.3", 2539 | "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", 2540 | "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", 2541 | "dev": true, 2542 | "optional": true, 2543 | "requires": { 2544 | "atob": "^2.1.2", 2545 | "decode-uri-component": "^0.2.0", 2546 | "resolve-url": "^0.2.1", 2547 | "source-map-url": "^0.4.0", 2548 | "urix": "^0.1.0" 2549 | } 2550 | }, 2551 | "source-map-url": { 2552 | "version": "0.4.0", 2553 | "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", 2554 | "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", 2555 | "dev": true, 2556 | "optional": true 2557 | }, 2558 | "spdx-correct": { 2559 | "version": "3.1.1", 2560 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", 2561 | "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", 2562 | "dev": true, 2563 | "requires": { 2564 | "spdx-expression-parse": "^3.0.0", 2565 | "spdx-license-ids": "^3.0.0" 2566 | } 2567 | }, 2568 | "spdx-exceptions": { 2569 | "version": "2.3.0", 2570 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", 2571 | "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", 2572 | "dev": true 2573 | }, 2574 | "spdx-expression-parse": { 2575 | "version": "3.0.1", 2576 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", 2577 | "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", 2578 | "dev": true, 2579 | "requires": { 2580 | "spdx-exceptions": "^2.1.0", 2581 | "spdx-license-ids": "^3.0.0" 2582 | } 2583 | }, 2584 | "spdx-license-ids": { 2585 | "version": "3.0.5", 2586 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", 2587 | "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", 2588 | "dev": true 2589 | }, 2590 | "split-string": { 2591 | "version": "3.1.0", 2592 | "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", 2593 | "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", 2594 | "dev": true, 2595 | "optional": true, 2596 | "requires": { 2597 | "extend-shallow": "^3.0.0" 2598 | } 2599 | }, 2600 | "static-extend": { 2601 | "version": "0.1.2", 2602 | "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", 2603 | "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", 2604 | "dev": true, 2605 | "optional": true, 2606 | "requires": { 2607 | "define-property": "^0.2.5", 2608 | "object-copy": "^0.1.0" 2609 | }, 2610 | "dependencies": { 2611 | "define-property": { 2612 | "version": "0.2.5", 2613 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 2614 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 2615 | "dev": true, 2616 | "optional": true, 2617 | "requires": { 2618 | "is-descriptor": "^0.1.0" 2619 | } 2620 | } 2621 | } 2622 | }, 2623 | "stream-browserify": { 2624 | "version": "2.0.2", 2625 | "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", 2626 | "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", 2627 | "dev": true, 2628 | "requires": { 2629 | "inherits": "~2.0.1", 2630 | "readable-stream": "^2.0.2" 2631 | } 2632 | }, 2633 | "stream-http": { 2634 | "version": "2.8.3", 2635 | "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", 2636 | "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", 2637 | "dev": true, 2638 | "requires": { 2639 | "builtin-status-codes": "^3.0.0", 2640 | "inherits": "^2.0.1", 2641 | "readable-stream": "^2.3.6", 2642 | "to-arraybuffer": "^1.0.0", 2643 | "xtend": "^4.0.0" 2644 | } 2645 | }, 2646 | "string-width": { 2647 | "version": "1.0.2", 2648 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 2649 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 2650 | "dev": true, 2651 | "requires": { 2652 | "code-point-at": "^1.0.0", 2653 | "is-fullwidth-code-point": "^1.0.0", 2654 | "strip-ansi": "^3.0.0" 2655 | } 2656 | }, 2657 | "string_decoder": { 2658 | "version": "1.1.1", 2659 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 2660 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 2661 | "dev": true, 2662 | "requires": { 2663 | "safe-buffer": "~5.1.0" 2664 | } 2665 | }, 2666 | "strip-ansi": { 2667 | "version": "3.0.1", 2668 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 2669 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 2670 | "dev": true, 2671 | "requires": { 2672 | "ansi-regex": "^2.0.0" 2673 | } 2674 | }, 2675 | "strip-bom": { 2676 | "version": "2.0.0", 2677 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", 2678 | "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", 2679 | "dev": true, 2680 | "requires": { 2681 | "is-utf8": "^0.2.0" 2682 | } 2683 | }, 2684 | "supports-color": { 2685 | "version": "1.2.0", 2686 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-1.2.0.tgz", 2687 | "integrity": "sha1-/x7R5hFp0Gs88tWI4YixjYhH4X4=", 2688 | "dev": true 2689 | }, 2690 | "tapable": { 2691 | "version": "0.2.9", 2692 | "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.9.tgz", 2693 | "integrity": "sha512-2wsvQ+4GwBvLPLWsNfLCDYGsW6xb7aeC6utq2Qh0PFwgEy7K7dsma9Jsmb2zSQj7GvYAyUGSntLtsv++GmgL1A==", 2694 | "dev": true 2695 | }, 2696 | "timers-browserify": { 2697 | "version": "2.0.11", 2698 | "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", 2699 | "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", 2700 | "dev": true, 2701 | "requires": { 2702 | "setimmediate": "^1.0.4" 2703 | } 2704 | }, 2705 | "to-arraybuffer": { 2706 | "version": "1.0.1", 2707 | "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", 2708 | "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", 2709 | "dev": true 2710 | }, 2711 | "to-object-path": { 2712 | "version": "0.3.0", 2713 | "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", 2714 | "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", 2715 | "dev": true, 2716 | "optional": true, 2717 | "requires": { 2718 | "kind-of": "^3.0.2" 2719 | } 2720 | }, 2721 | "to-regex": { 2722 | "version": "3.0.2", 2723 | "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", 2724 | "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", 2725 | "dev": true, 2726 | "optional": true, 2727 | "requires": { 2728 | "define-property": "^2.0.2", 2729 | "extend-shallow": "^3.0.2", 2730 | "regex-not": "^1.0.2", 2731 | "safe-regex": "^1.1.0" 2732 | } 2733 | }, 2734 | "to-regex-range": { 2735 | "version": "5.0.1", 2736 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 2737 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 2738 | "dev": true, 2739 | "optional": true, 2740 | "requires": { 2741 | "is-number": "^7.0.0" 2742 | } 2743 | }, 2744 | "tty-browserify": { 2745 | "version": "0.0.0", 2746 | "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", 2747 | "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", 2748 | "dev": true 2749 | }, 2750 | "uglify-js": { 2751 | "version": "2.8.29", 2752 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", 2753 | "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", 2754 | "dev": true, 2755 | "requires": { 2756 | "source-map": "~0.5.1", 2757 | "uglify-to-browserify": "~1.0.0", 2758 | "yargs": "~3.10.0" 2759 | }, 2760 | "dependencies": { 2761 | "yargs": { 2762 | "version": "3.10.0", 2763 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", 2764 | "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", 2765 | "dev": true, 2766 | "requires": { 2767 | "camelcase": "^1.0.2", 2768 | "cliui": "^2.1.0", 2769 | "decamelize": "^1.0.0", 2770 | "window-size": "0.1.0" 2771 | } 2772 | } 2773 | } 2774 | }, 2775 | "uglify-to-browserify": { 2776 | "version": "1.0.2", 2777 | "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", 2778 | "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", 2779 | "dev": true, 2780 | "optional": true 2781 | }, 2782 | "union-value": { 2783 | "version": "1.0.1", 2784 | "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", 2785 | "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", 2786 | "dev": true, 2787 | "optional": true, 2788 | "requires": { 2789 | "arr-union": "^3.1.0", 2790 | "get-value": "^2.0.6", 2791 | "is-extendable": "^0.1.1", 2792 | "set-value": "^2.0.1" 2793 | } 2794 | }, 2795 | "unset-value": { 2796 | "version": "1.0.0", 2797 | "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", 2798 | "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", 2799 | "dev": true, 2800 | "optional": true, 2801 | "requires": { 2802 | "has-value": "^0.3.1", 2803 | "isobject": "^3.0.0" 2804 | }, 2805 | "dependencies": { 2806 | "has-value": { 2807 | "version": "0.3.1", 2808 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", 2809 | "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", 2810 | "dev": true, 2811 | "optional": true, 2812 | "requires": { 2813 | "get-value": "^2.0.3", 2814 | "has-values": "^0.1.4", 2815 | "isobject": "^2.0.0" 2816 | }, 2817 | "dependencies": { 2818 | "isobject": { 2819 | "version": "2.1.0", 2820 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 2821 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 2822 | "dev": true, 2823 | "optional": true, 2824 | "requires": { 2825 | "isarray": "1.0.0" 2826 | } 2827 | } 2828 | } 2829 | }, 2830 | "has-values": { 2831 | "version": "0.1.4", 2832 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", 2833 | "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", 2834 | "dev": true, 2835 | "optional": true 2836 | } 2837 | } 2838 | }, 2839 | "upath": { 2840 | "version": "1.2.0", 2841 | "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", 2842 | "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", 2843 | "dev": true, 2844 | "optional": true 2845 | }, 2846 | "urix": { 2847 | "version": "0.1.0", 2848 | "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", 2849 | "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", 2850 | "dev": true, 2851 | "optional": true 2852 | }, 2853 | "url": { 2854 | "version": "0.11.0", 2855 | "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", 2856 | "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", 2857 | "dev": true, 2858 | "requires": { 2859 | "punycode": "1.3.2", 2860 | "querystring": "0.2.0" 2861 | }, 2862 | "dependencies": { 2863 | "punycode": { 2864 | "version": "1.3.2", 2865 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", 2866 | "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", 2867 | "dev": true 2868 | } 2869 | } 2870 | }, 2871 | "use": { 2872 | "version": "3.1.1", 2873 | "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", 2874 | "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", 2875 | "dev": true, 2876 | "optional": true 2877 | }, 2878 | "util": { 2879 | "version": "0.11.1", 2880 | "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", 2881 | "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", 2882 | "dev": true, 2883 | "requires": { 2884 | "inherits": "2.0.3" 2885 | }, 2886 | "dependencies": { 2887 | "inherits": { 2888 | "version": "2.0.3", 2889 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 2890 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", 2891 | "dev": true 2892 | } 2893 | } 2894 | }, 2895 | "util-deprecate": { 2896 | "version": "1.0.2", 2897 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 2898 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", 2899 | "dev": true 2900 | }, 2901 | "validate-npm-package-license": { 2902 | "version": "3.0.4", 2903 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", 2904 | "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", 2905 | "dev": true, 2906 | "requires": { 2907 | "spdx-correct": "^3.0.0", 2908 | "spdx-expression-parse": "^3.0.0" 2909 | } 2910 | }, 2911 | "vm-browserify": { 2912 | "version": "1.1.2", 2913 | "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", 2914 | "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", 2915 | "dev": true 2916 | }, 2917 | "watchpack": { 2918 | "version": "1.7.4", 2919 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", 2920 | "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", 2921 | "dev": true, 2922 | "requires": { 2923 | "chokidar": "^3.4.1", 2924 | "graceful-fs": "^4.1.2", 2925 | "neo-async": "^2.5.0", 2926 | "watchpack-chokidar2": "^2.0.0" 2927 | }, 2928 | "dependencies": { 2929 | "graceful-fs": { 2930 | "version": "4.2.4", 2931 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 2932 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", 2933 | "dev": true 2934 | } 2935 | } 2936 | }, 2937 | "watchpack-chokidar2": { 2938 | "version": "2.0.0", 2939 | "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", 2940 | "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", 2941 | "dev": true, 2942 | "optional": true, 2943 | "requires": { 2944 | "chokidar": "^2.1.8" 2945 | }, 2946 | "dependencies": { 2947 | "anymatch": { 2948 | "version": "2.0.0", 2949 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", 2950 | "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", 2951 | "dev": true, 2952 | "optional": true, 2953 | "requires": { 2954 | "micromatch": "^3.1.4", 2955 | "normalize-path": "^2.1.1" 2956 | }, 2957 | "dependencies": { 2958 | "normalize-path": { 2959 | "version": "2.1.1", 2960 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", 2961 | "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", 2962 | "dev": true, 2963 | "optional": true, 2964 | "requires": { 2965 | "remove-trailing-separator": "^1.0.1" 2966 | } 2967 | } 2968 | } 2969 | }, 2970 | "binary-extensions": { 2971 | "version": "1.13.1", 2972 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", 2973 | "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", 2974 | "dev": true, 2975 | "optional": true 2976 | }, 2977 | "braces": { 2978 | "version": "2.3.2", 2979 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", 2980 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", 2981 | "dev": true, 2982 | "optional": true, 2983 | "requires": { 2984 | "arr-flatten": "^1.1.0", 2985 | "array-unique": "^0.3.2", 2986 | "extend-shallow": "^2.0.1", 2987 | "fill-range": "^4.0.0", 2988 | "isobject": "^3.0.1", 2989 | "repeat-element": "^1.1.2", 2990 | "snapdragon": "^0.8.1", 2991 | "snapdragon-node": "^2.0.1", 2992 | "split-string": "^3.0.2", 2993 | "to-regex": "^3.0.1" 2994 | } 2995 | }, 2996 | "chokidar": { 2997 | "version": "2.1.8", 2998 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", 2999 | "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", 3000 | "dev": true, 3001 | "optional": true, 3002 | "requires": { 3003 | "anymatch": "^2.0.0", 3004 | "async-each": "^1.0.1", 3005 | "braces": "^2.3.2", 3006 | "fsevents": "^1.2.7", 3007 | "glob-parent": "^3.1.0", 3008 | "inherits": "^2.0.3", 3009 | "is-binary-path": "^1.0.0", 3010 | "is-glob": "^4.0.0", 3011 | "normalize-path": "^3.0.0", 3012 | "path-is-absolute": "^1.0.0", 3013 | "readdirp": "^2.2.1", 3014 | "upath": "^1.1.1" 3015 | } 3016 | }, 3017 | "extend-shallow": { 3018 | "version": "2.0.1", 3019 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3020 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3021 | "dev": true, 3022 | "optional": true, 3023 | "requires": { 3024 | "is-extendable": "^0.1.0" 3025 | } 3026 | }, 3027 | "fill-range": { 3028 | "version": "4.0.0", 3029 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", 3030 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", 3031 | "dev": true, 3032 | "optional": true, 3033 | "requires": { 3034 | "extend-shallow": "^2.0.1", 3035 | "is-number": "^3.0.0", 3036 | "repeat-string": "^1.6.1", 3037 | "to-regex-range": "^2.1.0" 3038 | } 3039 | }, 3040 | "fsevents": { 3041 | "version": "1.2.13", 3042 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", 3043 | "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", 3044 | "dev": true, 3045 | "optional": true 3046 | }, 3047 | "glob-parent": { 3048 | "version": "3.1.0", 3049 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", 3050 | "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", 3051 | "dev": true, 3052 | "optional": true, 3053 | "requires": { 3054 | "is-glob": "^3.1.0", 3055 | "path-dirname": "^1.0.0" 3056 | }, 3057 | "dependencies": { 3058 | "is-glob": { 3059 | "version": "3.1.0", 3060 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", 3061 | "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", 3062 | "dev": true, 3063 | "optional": true, 3064 | "requires": { 3065 | "is-extglob": "^2.1.0" 3066 | } 3067 | } 3068 | } 3069 | }, 3070 | "graceful-fs": { 3071 | "version": "4.2.4", 3072 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 3073 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", 3074 | "dev": true, 3075 | "optional": true 3076 | }, 3077 | "inherits": { 3078 | "version": "2.0.4", 3079 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 3080 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 3081 | "dev": true, 3082 | "optional": true 3083 | }, 3084 | "is-binary-path": { 3085 | "version": "1.0.1", 3086 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", 3087 | "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", 3088 | "dev": true, 3089 | "optional": true, 3090 | "requires": { 3091 | "binary-extensions": "^1.0.0" 3092 | } 3093 | }, 3094 | "is-number": { 3095 | "version": "3.0.0", 3096 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 3097 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 3098 | "dev": true, 3099 | "optional": true, 3100 | "requires": { 3101 | "kind-of": "^3.0.2" 3102 | } 3103 | }, 3104 | "readdirp": { 3105 | "version": "2.2.1", 3106 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", 3107 | "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", 3108 | "dev": true, 3109 | "optional": true, 3110 | "requires": { 3111 | "graceful-fs": "^4.1.11", 3112 | "micromatch": "^3.1.10", 3113 | "readable-stream": "^2.0.2" 3114 | } 3115 | }, 3116 | "to-regex-range": { 3117 | "version": "2.1.1", 3118 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", 3119 | "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", 3120 | "dev": true, 3121 | "optional": true, 3122 | "requires": { 3123 | "is-number": "^3.0.0", 3124 | "repeat-string": "^1.6.1" 3125 | } 3126 | } 3127 | } 3128 | }, 3129 | "webpack": { 3130 | "version": "2.4.1", 3131 | "resolved": "https://registry.npmjs.org/webpack/-/webpack-2.4.1.tgz", 3132 | "integrity": "sha1-FakdvjSWbYpLmcfWVu/ZKi5ab2o=", 3133 | "dev": true, 3134 | "requires": { 3135 | "acorn": "^5.0.0", 3136 | "acorn-dynamic-import": "^2.0.0", 3137 | "ajv": "^4.7.0", 3138 | "ajv-keywords": "^1.1.1", 3139 | "async": "^2.1.2", 3140 | "enhanced-resolve": "^3.0.0", 3141 | "interpret": "^1.0.0", 3142 | "json-loader": "^0.5.4", 3143 | "json5": "^0.5.1", 3144 | "loader-runner": "^2.3.0", 3145 | "loader-utils": "^0.2.16", 3146 | "memory-fs": "~0.4.1", 3147 | "mkdirp": "~0.5.0", 3148 | "node-libs-browser": "^2.0.0", 3149 | "source-map": "^0.5.3", 3150 | "supports-color": "^3.1.0", 3151 | "tapable": "~0.2.5", 3152 | "uglify-js": "^2.8.5", 3153 | "watchpack": "^1.3.1", 3154 | "webpack-sources": "^0.2.3", 3155 | "yargs": "^6.0.0" 3156 | }, 3157 | "dependencies": { 3158 | "supports-color": { 3159 | "version": "3.2.3", 3160 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", 3161 | "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", 3162 | "dev": true, 3163 | "requires": { 3164 | "has-flag": "^1.0.0" 3165 | } 3166 | } 3167 | } 3168 | }, 3169 | "webpack-sources": { 3170 | "version": "0.2.3", 3171 | "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-0.2.3.tgz", 3172 | "integrity": "sha1-F8Yr+vE8cH+dAsR54Nzd6DgGl/s=", 3173 | "dev": true, 3174 | "requires": { 3175 | "source-list-map": "^1.1.1", 3176 | "source-map": "~0.5.3" 3177 | } 3178 | }, 3179 | "which-module": { 3180 | "version": "1.0.0", 3181 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", 3182 | "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", 3183 | "dev": true 3184 | }, 3185 | "window-size": { 3186 | "version": "0.1.0", 3187 | "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", 3188 | "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", 3189 | "dev": true 3190 | }, 3191 | "wordwrap": { 3192 | "version": "0.0.2", 3193 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", 3194 | "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", 3195 | "dev": true 3196 | }, 3197 | "wrap-ansi": { 3198 | "version": "2.1.0", 3199 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", 3200 | "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", 3201 | "dev": true, 3202 | "requires": { 3203 | "string-width": "^1.0.1", 3204 | "strip-ansi": "^3.0.1" 3205 | } 3206 | }, 3207 | "xtend": { 3208 | "version": "4.0.2", 3209 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 3210 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", 3211 | "dev": true 3212 | }, 3213 | "y18n": { 3214 | "version": "3.2.2", 3215 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", 3216 | "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", 3217 | "dev": true 3218 | }, 3219 | "yargs": { 3220 | "version": "6.6.0", 3221 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", 3222 | "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", 3223 | "dev": true, 3224 | "requires": { 3225 | "camelcase": "^3.0.0", 3226 | "cliui": "^3.2.0", 3227 | "decamelize": "^1.1.1", 3228 | "get-caller-file": "^1.0.1", 3229 | "os-locale": "^1.4.0", 3230 | "read-pkg-up": "^1.0.1", 3231 | "require-directory": "^2.1.1", 3232 | "require-main-filename": "^1.0.1", 3233 | "set-blocking": "^2.0.0", 3234 | "string-width": "^1.0.2", 3235 | "which-module": "^1.0.0", 3236 | "y18n": "^3.2.1", 3237 | "yargs-parser": "^4.2.0" 3238 | }, 3239 | "dependencies": { 3240 | "camelcase": { 3241 | "version": "3.0.0", 3242 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", 3243 | "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", 3244 | "dev": true 3245 | }, 3246 | "cliui": { 3247 | "version": "3.2.0", 3248 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", 3249 | "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", 3250 | "dev": true, 3251 | "requires": { 3252 | "string-width": "^1.0.1", 3253 | "strip-ansi": "^3.0.1", 3254 | "wrap-ansi": "^2.0.0" 3255 | } 3256 | } 3257 | } 3258 | }, 3259 | "yargs-parser": { 3260 | "version": "4.2.1", 3261 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", 3262 | "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", 3263 | "dev": true, 3264 | "requires": { 3265 | "camelcase": "^3.0.0" 3266 | }, 3267 | "dependencies": { 3268 | "camelcase": { 3269 | "version": "3.0.0", 3270 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", 3271 | "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", 3272 | "dev": true 3273 | } 3274 | } 3275 | } 3276 | } 3277 | } 3278 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "md5", 3 | "description": "js function for hashing messages with MD5", 4 | "version": "2.3.0", 5 | "author": "Paul Vorbach (http://paul.vorba.ch)", 6 | "sideEffects": false, 7 | "contributors": [ 8 | "salba" 9 | ], 10 | "tags": [ 11 | "md5", 12 | "hash", 13 | "encryption", 14 | "message digest" 15 | ], 16 | "repository": { 17 | "type": "git", 18 | "url": "git://github.com/pvorb/node-md5.git" 19 | }, 20 | "bugs": { 21 | "url": "https://github.com/pvorb/node-md5/issues" 22 | }, 23 | "main": "md5.js", 24 | "scripts": { 25 | "test": "mocha", 26 | "webpack": "webpack -p" 27 | }, 28 | "dependencies": { 29 | "charenc": "0.0.2", 30 | "crypt": "0.0.2", 31 | "is-buffer": "~1.1.6" 32 | }, 33 | "devDependencies": { 34 | "mocha": "~2.3.4", 35 | "webpack": "~2.4.1" 36 | }, 37 | "optionalDependencies": {}, 38 | "license": "BSD-3-Clause" 39 | } 40 | -------------------------------------------------------------------------------- /test.js: -------------------------------------------------------------------------------- 1 | var md5 = require('./md5.js'); 2 | var assert = require('assert'); 3 | 4 | describe('md5', function () { 5 | 6 | it('should throw an error for an undefined value', function() { 7 | assert.throws(function() { 8 | md5(undefined); 9 | }); 10 | }); 11 | 12 | it('should allow the hashing of the string `undefined`', function() { 13 | assert.equal('5e543256c480ac577d30f76f9120eb74', md5('undefined')); 14 | }); 15 | 16 | it('should throw an error for `null`', function() { 17 | assert.throws(function() { 18 | md5(null); 19 | }); 20 | }); 21 | 22 | it('should return the expected MD5 hash for "message"', function() { 23 | assert.equal('78e731027d8fd50ed642340b7c9a63b3', md5('message')); 24 | }); 25 | 26 | it('should not return the same hash for random numbers twice', function() { 27 | var msg1 = Math.floor((Math.random() * 100000) + 1) + (new Date).getTime(); 28 | var msg2 = Math.floor((Math.random() * 100000) + 1) + (new Date).getTime(); 29 | 30 | if (msg1 !== msg2) { 31 | assert.notEqual(md5(msg1), md5(msg2)); 32 | } else { 33 | assert.equal(md5(msg1), md5(msg1)); 34 | } 35 | }); 36 | 37 | it('should support Node.js Buffers', function() { 38 | var buffer = new Buffer('message áßäöü', 'utf8'); 39 | 40 | assert.equal(md5(buffer), md5('message áßäöü')); 41 | }) 42 | 43 | it('should be able to use a binary encoded string', function() { 44 | var hash1 = md5('abc', { asString: true }); 45 | var hash2 = md5(hash1 + 'a', { asString: true, encoding : 'binary' }); 46 | var hash3 = md5(hash1 + 'a', { encoding : 'binary' }); 47 | assert.equal(hash3, '131f0ac52813044f5110e4aec638c169'); 48 | }); 49 | 50 | it('should support Uint8Array', function() { 51 | // Polyfills 52 | if (!Array.from) { 53 | Array.from = function(src, fn) { 54 | var result = new Array(src.length); 55 | for (var i = 0; i < src.length; ++i) 56 | result[i] = fn(src[i]); 57 | return result; 58 | }; 59 | } 60 | if (!Uint8Array.from) { 61 | Uint8Array.from = function(src) { 62 | var result = new Uint8Array(src.length); 63 | for (var i = 0; i < src.length; ++i) 64 | result[i] = src[i]; 65 | return result; 66 | }; 67 | } 68 | 69 | var message = 'foobarbaz'; 70 | var u8arr = Uint8Array.from( 71 | Array.from(message, function(c) { return c.charCodeAt(0); })); 72 | var u8aHash = md5(u8arr); 73 | assert.equal(u8aHash, md5(message)); 74 | }); 75 | }); 76 | -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- 1 | const {resolve} = require('path'); 2 | 3 | module.exports = { 4 | entry: [ 5 | './md5.js' 6 | ], 7 | output: { 8 | path: resolve('./dist'), 9 | filename: 'md5.min.js', 10 | libraryTarget: "var", 11 | library: "MD5" 12 | } 13 | }; --------------------------------------------------------------------------------