mirror of
				https://github.com/1disk/edp445.git
				synced 2024-08-14 22:47:02 +00:00 
			
		
		
		
	Changed alot of things.
This commit is contained in:
		
							parent
							
								
									a5a0523e5a
								
							
						
					
					
						commit
						3513d5390c
					
				
					 2016 changed files with 336930 additions and 9 deletions
				
			
		
							
								
								
									
										26
									
								
								node_modules/uuid/lib/bytesToUuid.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								node_modules/uuid/lib/bytesToUuid.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,26 @@ | |||
| /** | ||||
|  * Convert array of 16 byte values to UUID string format of the form: | ||||
|  * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | ||||
|  */ | ||||
| var byteToHex = []; | ||||
| for (var i = 0; i < 256; ++i) { | ||||
|   byteToHex[i] = (i + 0x100).toString(16).substr(1); | ||||
| } | ||||
| 
 | ||||
| function bytesToUuid(buf, offset) { | ||||
|   var i = offset || 0; | ||||
|   var bth = byteToHex; | ||||
|   // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
 | ||||
|   return ([ | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]] | ||||
|   ]).join(''); | ||||
| } | ||||
| 
 | ||||
| module.exports = bytesToUuid; | ||||
							
								
								
									
										216
									
								
								node_modules/uuid/lib/md5-browser.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										216
									
								
								node_modules/uuid/lib/md5-browser.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,216 @@ | |||
| /* | ||||
|  * Browser-compatible JavaScript MD5 | ||||
|  * | ||||
|  * Modification of JavaScript MD5 | ||||
|  * https://github.com/blueimp/JavaScript-MD5
 | ||||
|  * | ||||
|  * Copyright 2011, Sebastian Tschan | ||||
|  * https://blueimp.net
 | ||||
|  * | ||||
|  * Licensed under the MIT license: | ||||
|  * https://opensource.org/licenses/MIT
 | ||||
|  * | ||||
|  * Based on | ||||
|  * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message | ||||
|  * Digest Algorithm, as defined in RFC 1321. | ||||
|  * Version 2.2 Copyright (C) Paul Johnston 1999 - 2009 | ||||
|  * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet | ||||
|  * Distributed under the BSD License | ||||
|  * See http://pajhome.org.uk/crypt/md5 for more info.
 | ||||
|  */ | ||||
| 
 | ||||
| 'use strict'; | ||||
| 
 | ||||
| function md5(bytes) { | ||||
|   if (typeof(bytes) == 'string') { | ||||
|     var msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
 | ||||
|     bytes = new Array(msg.length); | ||||
|     for (var i = 0; i < msg.length; i++) bytes[i] = msg.charCodeAt(i); | ||||
|   } | ||||
| 
 | ||||
|   return md5ToHexEncodedArray( | ||||
|     wordsToMd5( | ||||
|       bytesToWords(bytes) | ||||
|       , bytes.length * 8) | ||||
|   ); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| /* | ||||
| * Convert an array of little-endian words to an array of bytes | ||||
| */ | ||||
| function md5ToHexEncodedArray(input) { | ||||
|   var i; | ||||
|   var x; | ||||
|   var output = []; | ||||
|   var length32 = input.length * 32; | ||||
|   var hexTab = '0123456789abcdef'; | ||||
|   var hex; | ||||
| 
 | ||||
|   for (i = 0; i < length32; i += 8) { | ||||
|     x = (input[i >> 5] >>> (i % 32)) & 0xFF; | ||||
| 
 | ||||
|     hex = parseInt(hexTab.charAt((x >>> 4) & 0x0F) + hexTab.charAt(x & 0x0F), 16); | ||||
| 
 | ||||
|     output.push(hex); | ||||
|   } | ||||
|   return output; | ||||
| } | ||||
| 
 | ||||
| /* | ||||
| * Calculate the MD5 of an array of little-endian words, and a bit length. | ||||
| */ | ||||
| function wordsToMd5(x, len) { | ||||
|   /* append padding */ | ||||
|   x[len >> 5] |= 0x80 << (len % 32); | ||||
|   x[(((len + 64) >>> 9) << 4) + 14] = len; | ||||
| 
 | ||||
|   var i; | ||||
|   var olda; | ||||
|   var oldb; | ||||
|   var oldc; | ||||
|   var oldd; | ||||
|   var a = 1732584193; | ||||
|   var b = -271733879; | ||||
|   var c = -1732584194; | ||||
| 
 | ||||
|   var d = 271733878; | ||||
| 
 | ||||
|   for (i = 0; i < x.length; i += 16) { | ||||
|     olda = a; | ||||
|     oldb = b; | ||||
|     oldc = c; | ||||
|     oldd = d; | ||||
| 
 | ||||
|     a = md5ff(a, b, c, d, x[i], 7, -680876936); | ||||
|     d = md5ff(d, a, b, c, x[i + 1], 12, -389564586); | ||||
|     c = md5ff(c, d, a, b, x[i + 2], 17, 606105819); | ||||
|     b = md5ff(b, c, d, a, x[i + 3], 22, -1044525330); | ||||
|     a = md5ff(a, b, c, d, x[i + 4], 7, -176418897); | ||||
|     d = md5ff(d, a, b, c, x[i + 5], 12, 1200080426); | ||||
|     c = md5ff(c, d, a, b, x[i + 6], 17, -1473231341); | ||||
|     b = md5ff(b, c, d, a, x[i + 7], 22, -45705983); | ||||
|     a = md5ff(a, b, c, d, x[i + 8], 7, 1770035416); | ||||
|     d = md5ff(d, a, b, c, x[i + 9], 12, -1958414417); | ||||
|     c = md5ff(c, d, a, b, x[i + 10], 17, -42063); | ||||
|     b = md5ff(b, c, d, a, x[i + 11], 22, -1990404162); | ||||
|     a = md5ff(a, b, c, d, x[i + 12], 7, 1804603682); | ||||
|     d = md5ff(d, a, b, c, x[i + 13], 12, -40341101); | ||||
|     c = md5ff(c, d, a, b, x[i + 14], 17, -1502002290); | ||||
|     b = md5ff(b, c, d, a, x[i + 15], 22, 1236535329); | ||||
| 
 | ||||
|     a = md5gg(a, b, c, d, x[i + 1], 5, -165796510); | ||||
|     d = md5gg(d, a, b, c, x[i + 6], 9, -1069501632); | ||||
|     c = md5gg(c, d, a, b, x[i + 11], 14, 643717713); | ||||
|     b = md5gg(b, c, d, a, x[i], 20, -373897302); | ||||
|     a = md5gg(a, b, c, d, x[i + 5], 5, -701558691); | ||||
|     d = md5gg(d, a, b, c, x[i + 10], 9, 38016083); | ||||
|     c = md5gg(c, d, a, b, x[i + 15], 14, -660478335); | ||||
|     b = md5gg(b, c, d, a, x[i + 4], 20, -405537848); | ||||
|     a = md5gg(a, b, c, d, x[i + 9], 5, 568446438); | ||||
|     d = md5gg(d, a, b, c, x[i + 14], 9, -1019803690); | ||||
|     c = md5gg(c, d, a, b, x[i + 3], 14, -187363961); | ||||
|     b = md5gg(b, c, d, a, x[i + 8], 20, 1163531501); | ||||
|     a = md5gg(a, b, c, d, x[i + 13], 5, -1444681467); | ||||
|     d = md5gg(d, a, b, c, x[i + 2], 9, -51403784); | ||||
|     c = md5gg(c, d, a, b, x[i + 7], 14, 1735328473); | ||||
|     b = md5gg(b, c, d, a, x[i + 12], 20, -1926607734); | ||||
| 
 | ||||
|     a = md5hh(a, b, c, d, x[i + 5], 4, -378558); | ||||
|     d = md5hh(d, a, b, c, x[i + 8], 11, -2022574463); | ||||
|     c = md5hh(c, d, a, b, x[i + 11], 16, 1839030562); | ||||
|     b = md5hh(b, c, d, a, x[i + 14], 23, -35309556); | ||||
|     a = md5hh(a, b, c, d, x[i + 1], 4, -1530992060); | ||||
|     d = md5hh(d, a, b, c, x[i + 4], 11, 1272893353); | ||||
|     c = md5hh(c, d, a, b, x[i + 7], 16, -155497632); | ||||
|     b = md5hh(b, c, d, a, x[i + 10], 23, -1094730640); | ||||
|     a = md5hh(a, b, c, d, x[i + 13], 4, 681279174); | ||||
|     d = md5hh(d, a, b, c, x[i], 11, -358537222); | ||||
|     c = md5hh(c, d, a, b, x[i + 3], 16, -722521979); | ||||
|     b = md5hh(b, c, d, a, x[i + 6], 23, 76029189); | ||||
|     a = md5hh(a, b, c, d, x[i + 9], 4, -640364487); | ||||
|     d = md5hh(d, a, b, c, x[i + 12], 11, -421815835); | ||||
|     c = md5hh(c, d, a, b, x[i + 15], 16, 530742520); | ||||
|     b = md5hh(b, c, d, a, x[i + 2], 23, -995338651); | ||||
| 
 | ||||
|     a = md5ii(a, b, c, d, x[i], 6, -198630844); | ||||
|     d = md5ii(d, a, b, c, x[i + 7], 10, 1126891415); | ||||
|     c = md5ii(c, d, a, b, x[i + 14], 15, -1416354905); | ||||
|     b = md5ii(b, c, d, a, x[i + 5], 21, -57434055); | ||||
|     a = md5ii(a, b, c, d, x[i + 12], 6, 1700485571); | ||||
|     d = md5ii(d, a, b, c, x[i + 3], 10, -1894986606); | ||||
|     c = md5ii(c, d, a, b, x[i + 10], 15, -1051523); | ||||
|     b = md5ii(b, c, d, a, x[i + 1], 21, -2054922799); | ||||
|     a = md5ii(a, b, c, d, x[i + 8], 6, 1873313359); | ||||
|     d = md5ii(d, a, b, c, x[i + 15], 10, -30611744); | ||||
|     c = md5ii(c, d, a, b, x[i + 6], 15, -1560198380); | ||||
|     b = md5ii(b, c, d, a, x[i + 13], 21, 1309151649); | ||||
|     a = md5ii(a, b, c, d, x[i + 4], 6, -145523070); | ||||
|     d = md5ii(d, a, b, c, x[i + 11], 10, -1120210379); | ||||
|     c = md5ii(c, d, a, b, x[i + 2], 15, 718787259); | ||||
|     b = md5ii(b, c, d, a, x[i + 9], 21, -343485551); | ||||
| 
 | ||||
|     a = safeAdd(a, olda); | ||||
|     b = safeAdd(b, oldb); | ||||
|     c = safeAdd(c, oldc); | ||||
|     d = safeAdd(d, oldd); | ||||
|   } | ||||
|   return [a, b, c, d]; | ||||
| } | ||||
| 
 | ||||
| /* | ||||
| * Convert an array bytes to an array of little-endian words | ||||
| * Characters >255 have their high-byte silently ignored. | ||||
| */ | ||||
| function bytesToWords(input) { | ||||
|   var i; | ||||
|   var output = []; | ||||
|   output[(input.length >> 2) - 1] = undefined; | ||||
|   for (i = 0; i < output.length; i += 1) { | ||||
|     output[i] = 0; | ||||
|   } | ||||
|   var length8 = input.length * 8; | ||||
|   for (i = 0; i < length8; i += 8) { | ||||
|     output[i >> 5] |= (input[(i / 8)] & 0xFF) << (i % 32); | ||||
|   } | ||||
| 
 | ||||
|   return output; | ||||
| } | ||||
| 
 | ||||
| /* | ||||
| * Add integers, wrapping at 2^32. This uses 16-bit operations internally | ||||
| * to work around bugs in some JS interpreters. | ||||
| */ | ||||
| function safeAdd(x, y) { | ||||
|   var lsw = (x & 0xFFFF) + (y & 0xFFFF); | ||||
|   var msw = (x >> 16) + (y >> 16) + (lsw >> 16); | ||||
|   return (msw << 16) | (lsw & 0xFFFF); | ||||
| } | ||||
| 
 | ||||
| /* | ||||
| * Bitwise rotate a 32-bit number to the left. | ||||
| */ | ||||
| function bitRotateLeft(num, cnt) { | ||||
|   return (num << cnt) | (num >>> (32 - cnt)); | ||||
| } | ||||
| 
 | ||||
| /* | ||||
| * These functions implement the four basic operations the algorithm uses. | ||||
| */ | ||||
| function md5cmn(q, a, b, x, s, t) { | ||||
|   return safeAdd(bitRotateLeft(safeAdd(safeAdd(a, q), safeAdd(x, t)), s), b); | ||||
| } | ||||
| function md5ff(a, b, c, d, x, s, t) { | ||||
|   return md5cmn((b & c) | ((~b) & d), a, b, x, s, t); | ||||
| } | ||||
| function md5gg(a, b, c, d, x, s, t) { | ||||
|   return md5cmn((b & d) | (c & (~d)), a, b, x, s, t); | ||||
| } | ||||
| function md5hh(a, b, c, d, x, s, t) { | ||||
|   return md5cmn(b ^ c ^ d, a, b, x, s, t); | ||||
| } | ||||
| function md5ii(a, b, c, d, x, s, t) { | ||||
|   return md5cmn(c ^ (b | (~d)), a, b, x, s, t); | ||||
| } | ||||
| 
 | ||||
| module.exports = md5; | ||||
							
								
								
									
										25
									
								
								node_modules/uuid/lib/md5.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								node_modules/uuid/lib/md5.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,25 @@ | |||
| 'use strict'; | ||||
| 
 | ||||
| var crypto = require('crypto'); | ||||
| 
 | ||||
| function md5(bytes) { | ||||
|   if (typeof Buffer.from === 'function') { | ||||
|     // Modern Buffer API
 | ||||
|     if (Array.isArray(bytes)) { | ||||
|       bytes = Buffer.from(bytes); | ||||
|     } else if (typeof bytes === 'string') { | ||||
|       bytes = Buffer.from(bytes, 'utf8'); | ||||
|     } | ||||
|   } else { | ||||
|     // Pre-v4 Buffer API
 | ||||
|     if (Array.isArray(bytes)) { | ||||
|       bytes = new Buffer(bytes); | ||||
|     } else if (typeof bytes === 'string') { | ||||
|       bytes = new Buffer(bytes, 'utf8'); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   return crypto.createHash('md5').update(bytes).digest(); | ||||
| } | ||||
| 
 | ||||
| module.exports = md5; | ||||
							
								
								
									
										34
									
								
								node_modules/uuid/lib/rng-browser.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								node_modules/uuid/lib/rng-browser.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,34 @@ | |||
| // Unique ID creation requires a high quality random # generator.  In the
 | ||||
| // browser this is a little complicated due to unknown quality of Math.random()
 | ||||
| // and inconsistent support for the `crypto` API.  We do the best we can via
 | ||||
| // feature-detection
 | ||||
| 
 | ||||
| // getRandomValues needs to be invoked in a context where "this" is a Crypto
 | ||||
| // implementation. Also, find the complete implementation of crypto on IE11.
 | ||||
| var getRandomValues = (typeof(crypto) != 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto)) || | ||||
|                       (typeof(msCrypto) != 'undefined' && typeof window.msCrypto.getRandomValues == 'function' && msCrypto.getRandomValues.bind(msCrypto)); | ||||
| 
 | ||||
| if (getRandomValues) { | ||||
|   // WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto
 | ||||
|   var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef
 | ||||
| 
 | ||||
|   module.exports = function whatwgRNG() { | ||||
|     getRandomValues(rnds8); | ||||
|     return rnds8; | ||||
|   }; | ||||
| } else { | ||||
|   // Math.random()-based (RNG)
 | ||||
|   //
 | ||||
|   // If all else fails, use Math.random().  It's fast, but is of unspecified
 | ||||
|   // quality.
 | ||||
|   var rnds = new Array(16); | ||||
| 
 | ||||
|   module.exports = function mathRNG() { | ||||
|     for (var i = 0, r; i < 16; i++) { | ||||
|       if ((i & 0x03) === 0) r = Math.random() * 0x100000000; | ||||
|       rnds[i] = r >>> ((i & 0x03) << 3) & 0xff; | ||||
|     } | ||||
| 
 | ||||
|     return rnds; | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										8
									
								
								node_modules/uuid/lib/rng.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								node_modules/uuid/lib/rng.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,8 @@ | |||
| // Unique ID creation requires a high quality random # generator.  In node.js
 | ||||
| // this is pretty straight-forward - we use the crypto API.
 | ||||
| 
 | ||||
| var crypto = require('crypto'); | ||||
| 
 | ||||
| module.exports = function nodeRNG() { | ||||
|   return crypto.randomBytes(16); | ||||
| }; | ||||
							
								
								
									
										89
									
								
								node_modules/uuid/lib/sha1-browser.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										89
									
								
								node_modules/uuid/lib/sha1-browser.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,89 @@ | |||
| // Adapted from Chris Veness' SHA1 code at
 | ||||
| // http://www.movable-type.co.uk/scripts/sha1.html
 | ||||
| 'use strict'; | ||||
| 
 | ||||
| function f(s, x, y, z) { | ||||
|   switch (s) { | ||||
|     case 0: return (x & y) ^ (~x & z); | ||||
|     case 1: return x ^ y ^ z; | ||||
|     case 2: return (x & y) ^ (x & z) ^ (y & z); | ||||
|     case 3: return x ^ y ^ z; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| function ROTL(x, n) { | ||||
|   return (x << n) | (x>>> (32 - n)); | ||||
| } | ||||
| 
 | ||||
| function sha1(bytes) { | ||||
|   var K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6]; | ||||
|   var H = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0]; | ||||
| 
 | ||||
|   if (typeof(bytes) == 'string') { | ||||
|     var msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
 | ||||
|     bytes = new Array(msg.length); | ||||
|     for (var i = 0; i < msg.length; i++) bytes[i] = msg.charCodeAt(i); | ||||
|   } | ||||
| 
 | ||||
|   bytes.push(0x80); | ||||
| 
 | ||||
|   var l = bytes.length/4 + 2; | ||||
|   var N = Math.ceil(l/16); | ||||
|   var M = new Array(N); | ||||
| 
 | ||||
|   for (var i=0; i<N; i++) { | ||||
|     M[i] = new Array(16); | ||||
|     for (var j=0; j<16; j++) { | ||||
|       M[i][j] = | ||||
|         bytes[i * 64 + j * 4] << 24 | | ||||
|         bytes[i * 64 + j * 4 + 1] << 16 | | ||||
|         bytes[i * 64 + j * 4 + 2] << 8 | | ||||
|         bytes[i * 64 + j * 4 + 3]; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   M[N - 1][14] = ((bytes.length - 1) * 8) / | ||||
|     Math.pow(2, 32); M[N - 1][14] = Math.floor(M[N - 1][14]); | ||||
|   M[N - 1][15] = ((bytes.length - 1) * 8) & 0xffffffff; | ||||
| 
 | ||||
|   for (var i=0; i<N; i++) { | ||||
|     var W = new Array(80); | ||||
| 
 | ||||
|     for (var t=0; t<16; t++) W[t] = M[i][t]; | ||||
|     for (var t=16; t<80; t++) { | ||||
|       W[t] = ROTL(W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16], 1); | ||||
|     } | ||||
| 
 | ||||
|     var a = H[0]; | ||||
|     var b = H[1]; | ||||
|     var c = H[2]; | ||||
|     var d = H[3]; | ||||
|     var e = H[4]; | ||||
| 
 | ||||
|     for (var t=0; t<80; t++) { | ||||
|       var s = Math.floor(t/20); | ||||
|       var T = ROTL(a, 5) + f(s, b, c, d) + e + K[s] + W[t] >>> 0; | ||||
|       e = d; | ||||
|       d = c; | ||||
|       c = ROTL(b, 30) >>> 0; | ||||
|       b = a; | ||||
|       a = T; | ||||
|     } | ||||
| 
 | ||||
|     H[0] = (H[0] + a) >>> 0; | ||||
|     H[1] = (H[1] + b) >>> 0; | ||||
|     H[2] = (H[2] + c) >>> 0; | ||||
|     H[3] = (H[3] + d) >>> 0; | ||||
|     H[4] = (H[4] + e) >>> 0; | ||||
|   } | ||||
| 
 | ||||
|   return [ | ||||
|     H[0] >> 24 & 0xff, H[0] >> 16 & 0xff, H[0] >> 8 & 0xff, H[0] & 0xff, | ||||
|     H[1] >> 24 & 0xff, H[1] >> 16 & 0xff, H[1] >> 8 & 0xff, H[1] & 0xff, | ||||
|     H[2] >> 24 & 0xff, H[2] >> 16 & 0xff, H[2] >> 8 & 0xff, H[2] & 0xff, | ||||
|     H[3] >> 24 & 0xff, H[3] >> 16 & 0xff, H[3] >> 8 & 0xff, H[3] & 0xff, | ||||
|     H[4] >> 24 & 0xff, H[4] >> 16 & 0xff, H[4] >> 8 & 0xff, H[4] & 0xff | ||||
|   ]; | ||||
| } | ||||
| 
 | ||||
| module.exports = sha1; | ||||
							
								
								
									
										25
									
								
								node_modules/uuid/lib/sha1.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								node_modules/uuid/lib/sha1.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,25 @@ | |||
| 'use strict'; | ||||
| 
 | ||||
| var crypto = require('crypto'); | ||||
| 
 | ||||
| function sha1(bytes) { | ||||
|   if (typeof Buffer.from === 'function') { | ||||
|     // Modern Buffer API
 | ||||
|     if (Array.isArray(bytes)) { | ||||
|       bytes = Buffer.from(bytes); | ||||
|     } else if (typeof bytes === 'string') { | ||||
|       bytes = Buffer.from(bytes, 'utf8'); | ||||
|     } | ||||
|   } else { | ||||
|     // Pre-v4 Buffer API
 | ||||
|     if (Array.isArray(bytes)) { | ||||
|       bytes = new Buffer(bytes); | ||||
|     } else if (typeof bytes === 'string') { | ||||
|       bytes = new Buffer(bytes, 'utf8'); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   return crypto.createHash('sha1').update(bytes).digest(); | ||||
| } | ||||
| 
 | ||||
| module.exports = sha1; | ||||
							
								
								
									
										57
									
								
								node_modules/uuid/lib/v35.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								node_modules/uuid/lib/v35.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,57 @@ | |||
| var bytesToUuid = require('./bytesToUuid'); | ||||
| 
 | ||||
| function uuidToBytes(uuid) { | ||||
|   // Note: We assume we're being passed a valid uuid string
 | ||||
|   var bytes = []; | ||||
|   uuid.replace(/[a-fA-F0-9]{2}/g, function(hex) { | ||||
|     bytes.push(parseInt(hex, 16)); | ||||
|   }); | ||||
| 
 | ||||
|   return bytes; | ||||
| } | ||||
| 
 | ||||
| function stringToBytes(str) { | ||||
|   str = unescape(encodeURIComponent(str)); // UTF8 escape
 | ||||
|   var bytes = new Array(str.length); | ||||
|   for (var i = 0; i < str.length; i++) { | ||||
|     bytes[i] = str.charCodeAt(i); | ||||
|   } | ||||
|   return bytes; | ||||
| } | ||||
| 
 | ||||
| module.exports = function(name, version, hashfunc) { | ||||
|   var generateUUID = function(value, namespace, buf, offset) { | ||||
|     var off = buf && offset || 0; | ||||
| 
 | ||||
|     if (typeof(value) == 'string') value = stringToBytes(value); | ||||
|     if (typeof(namespace) == 'string') namespace = uuidToBytes(namespace); | ||||
| 
 | ||||
|     if (!Array.isArray(value)) throw TypeError('value must be an array of bytes'); | ||||
|     if (!Array.isArray(namespace) || namespace.length !== 16) throw TypeError('namespace must be uuid string or an Array of 16 byte values'); | ||||
| 
 | ||||
|     // Per 4.3
 | ||||
|     var bytes = hashfunc(namespace.concat(value)); | ||||
|     bytes[6] = (bytes[6] & 0x0f) | version; | ||||
|     bytes[8] = (bytes[8] & 0x3f) | 0x80; | ||||
| 
 | ||||
|     if (buf) { | ||||
|       for (var idx = 0; idx < 16; ++idx) { | ||||
|         buf[off+idx] = bytes[idx]; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     return buf || bytesToUuid(bytes); | ||||
|   }; | ||||
| 
 | ||||
|   // Function#name is not settable on some platforms (#270)
 | ||||
|   try { | ||||
|     generateUUID.name = name; | ||||
|   } catch (err) { | ||||
|   } | ||||
| 
 | ||||
|   // Pre-defined namespaces, per Appendix C
 | ||||
|   generateUUID.DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8'; | ||||
|   generateUUID.URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8'; | ||||
| 
 | ||||
|   return generateUUID; | ||||
| }; | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue