@loaders.gl/crypto 3.4.14 → 3.4.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"md5-wasm.js","names":["atb","atob","Buffer","nodeATOB","identity","wasmB64","wasm","WebAssembly","str2AB","buffer","crypt","makeCrypt","biteSize","bounder","Math","floor","upperLimit","parmTypeErrStr","tooBigErrStr","console","log","md5WASM","data","mem","memView","importObj","imports","len","buff","thenFun","catchFun","result","endTime","md5JS","makeMD5JS","md5WA","makeMD5WA","returnObj","startTime","Date","getTime","fun","getThen","_typeof2","default","constructor","Uint8Array","ArrayBuffer","getCatch","TypeError","length","Error","Memory","initial","Uint32Array","instantiate","then","giterdone","obj","instance","exports","r","res","Boolean","err","loop","loops","getA","setA","getB","setB","getC","setC","getD","setD","getX","setX","message","m00","m01","m02","m03","m04","m05","m06","m07","m08","m09","m10","m11","m12","m13","m14","m15","aa","bb","cc","dd","m","k","qwerty","md5Used","a","b","c","d","i","l","bytesToWordsNewer","____","endian","s","t","n","bytes","words","j","b0","b1","b2","b3","mView","options","digestbytes","wordsToBytes","asBytes","bytesToHex","bytesToWords","str","buffView","charCodeAt","from","toString","x","base64map","rotl","Number","push","hex","join"],"sources":["../../../../src/lib/algorithms/md5-wasm.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\n/* !\n * MD5 WebAssembly\n * https://github.com/briantbutton/md5-wasm\n * (c) 2020 Brian Todd Button\n * Released under the MIT license\n */\n\n// *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-*\n// This contains two functions designed to achieve the same thing\n// -> A WebAssembly function for larger files\n// -> A JavaScript function for the others\n//\nconst atb = typeof atob === 'function' ? atob : typeof Buffer === 'function' ? nodeATOB : identity,\n wasmB64 = atb(\n 'AGFzbQEAAAABDANgAX8AYAAAYAABfwIeAgdpbXBvcnRzA2xvZwAAB2ltcG9ydHMDbWVtAgABAzIxAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAgICAgIAAAAAAAaYARt/AUGBxpS6Bgt/AUGJ17b+fgt/AUH+uevFeQt/AUH2qMmBAQt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALB7oCJQhvbmVGdWxsQQAYCG9uZUZ1bGxCABkIb25lRnVsbEMAGghvbmVGdWxsRAAbBWxvb3BzAAEEbG9vcAACBXByaW1lAAMFbG9vcEEABAZsb29wQTEABQZsb29wQTIABgZsb29wQTMABwZsb29wQTQACAVsb29wQgAJBmxvb3BCMQAKBmxvb3BCMgALBmxvb3BCMwAMBmxvb3BCNAANBWxvb3BDAA4GbG9vcEMxAA8GbG9vcEMyABAGbG9vcEMzABEGbG9vcEM0ABIFbG9vcEQAEwZsb29wRDEAFAZsb29wRDIAFQZsb29wRDMAFgZsb29wRDQAFwRnZXRBACgEZ2V0QgApBGdldEMAKgRnZXREACsEZ2V0WAAsBHNldEEALQRzZXRCAC4Ec2V0QwAvBHNldEQAMARzZXRYADEKzA0xWwEBf0EAJAggAEEGdCEBAkADQCMIIAFGDQEjACQEIwEkBSMCJAYjAyQHEAIjBCMAaiQAIwUjAWokASMGIwJqJAIjByMDaiQDIwhBwABqJAgMAAsLIwgjGmokGgsTACMIIxpqJAkQAxAEEAkQDhATC6IBAEEAIwlqKAIAJApBBCMJaigCACQLQQgjCWooAgAkDEEMIwlqKAIAJA1BECMJaigCACQOQRQjCWooAgAkD0EYIwlqKAIAJBBBHCMJaigCACQRQSAjCWooAgAkEkEkIwlqKAIAJBNBKCMJaigCACQUQSwjCWooAgAkFUEwIwlqKAIAJBZBNCMJaigCACQXQTgjCWooAgAkGEE8IwlqKAIAJBkLCgAQBRAGEAcQCAsuAEH4yKq7fSMKahAYQdbunsZ+IwtqEBtB2+GBoQIjDGoQGkHunfeNfCMNahAZCy0AQa+f8Kt/Iw5qEBhBqoyfvAQjD2oQG0GTjMHBeiMQahAaQYGqmmojEWoQGQssAEHYsYLMBiMSahAYQa/vk9p4IxNqEBtBsbd9IxRqEBpBvq/zyngjFWoQGQstAEGiosDcBiMWahAYQZPj4WwjF2oQG0GOh+WzeiMYahAaQaGQ0M0EIxlqEBkLCgAQChALEAwQDQsuAEHiyviwfyMLahAcQcDmgoJ8IxBqEB9B0bT5sgIjFWoQHkGqj9vNfiMKahAdCy0AQd2gvLF9Iw9qEBxB06iQEiMUahAfQYHNh8V9IxlqEB5ByPfPvn4jDmoQHQsuAEHmm4ePAiMTahAcQdaP3Jl8IxhqEB9Bh5vUpn8jDWoQHkHtqeiqBCMSahAdCy0AQYXSj896IxdqEBxB+Me+ZyMMahAfQdmFvLsGIxFqEB5Bipmp6XgjFmoQHQsKABAPEBAQERASCysAQcLyaCMPahAgQYHtx7t4IxJqECNBosL17AYjFWoQIkGM8JRvIxhqECELLgBBxNT7pXojC2oQIEGpn/veBCMOahAjQeCW7bV/IxFqECJB8Pj+9XsjFGoQIQstAEHG/e3EAiMXahAgQfrPhNV+IwpqECNBheG8p30jDWoQIkGFuqAkIxBqECELLgBBuaDTzn0jE2oQIEHls+62fiMWahAjQfj5if0BIxlqECJB5ayxpXwjDGoQIQsKABAUEBUQFhAXCy0AQcTEpKF/IwpqECRBl/+rmQQjEWoQJ0Gnx9DceiMYahAmQbnAzmQjD2oQJQstAEHDs+2qBiMWahAkQZKZs/h4Iw1qECdB/ei/fyMUahAmQdG7kax4IwtqECULLQBBz/yh/QYjEmoQJEHgzbNxIxlqECdBlIaFmHojEGoQJkGho6DwBCMXahAlCy4AQYL9zbp/Iw5qECRBteTr6XsjFWoQJ0G7pd/WAiMMahAmQZGnm9x+IxNqECULKAEBf0F/IwFzIwNxIwEjAnFyIwBqIABqIgFBB3QgAUEZdnIjAWokAAsoAQF/QX8jAnMjAHEjAiMDcXIjAWogAGoiAUEWdCABQQp2ciMCaiQBCygBAX9BfyMDcyMBcSMDIwBxciMCaiAAaiIBQRF0IAFBD3ZyIwNqJAILKAEBf0F/IwBzIwJxIwAjAXFyIwNqIABqIgFBDHQgAUEUdnIjAGokAwsoAQF/IwJBfyMDc3EjASMDcXIjAGogAGoiAUEFdCABQRt2ciMBaiQACygBAX8jA0F/IwBzcSMCIwBxciMBaiAAaiIBQRR0IAFBDHZyIwJqJAELKAEBfyMAQX8jAXNxIwMjAXFyIwJqIABqIgFBDnQgAUESdnIjA2okAgsoAQF/IwFBfyMCc3EjACMCcXIjA2ogAGoiAUEJdCABQRd2ciMAaiQDCyIBAX8jASMCcyMDcyMAaiAAaiIBQQR0IAFBHHZyIwFqJAALIgEBfyMCIwNzIwBzIwFqIABqIgFBF3QgAUEJdnIjAmokAQsiAQF/IwMjAHMjAXMjAmogAGoiAUEQdCABQRB2ciMDaiQCCyIBAX8jACMBcyMCcyMDaiAAaiIBQQt0IAFBFXZyIwBqJAMLJQEBf0F/IwNzIwFyIwJzIwBqIABqIgFBBnQgAUEadnIjAWokAAslAQF/QX8jAHMjAnIjA3MjAWogAGoiAUEVdCABQQt2ciMCaiQBCyUBAX9BfyMBcyMDciMAcyMCaiAAaiIBQQ90IAFBEXZyIwNqJAILJQEBf0F/IwJzIwByIwFzIwNqIABqIgFBCnQgAUEWdnIjAGokAwsEACMACwQAIwELBAAjAgsEACMDCwQAIxoLBgAgACQACwYAIAAkAQsGACAAJAILBgAgACQDCwYAIAAkGgsA6gQEbmFtZQGSAzIAA2xvZwEFbG9vcHMCBGxvb3ADBXByaW1lBAVsb29wQQUGbG9vcEExBgZsb29wQTIHBmxvb3BBMwgGbG9vcEE0CQVsb29wQgoGbG9vcEIxCwZsb29wQjIMBmxvb3BCMw0GbG9vcEI0DgVsb29wQw8GbG9vcEMxEAZsb29wQzIRBmxvb3BDMxIGbG9vcEM0EwVsb29wRBQGbG9vcEQxFQZsb29wRDIWBmxvb3BEMxcGbG9vcEQ0GAhvbmVGdWxsQRkIb25lRnVsbEIaCG9uZUZ1bGxDGwhvbmVGdWxsRBwIdHdvRnVsbEEdCHR3b0Z1bGxCHgh0d29GdWxsQx8IdHdvRnVsbEQgCHRyZUZ1bGxBIQh0cmVGdWxsQiIIdHJlRnVsbEMjCHRyZUZ1bGxEJAhxdWFGdWxsQSUIcXVhRnVsbEImCHF1YUZ1bGxDJwhxdWFGdWxsRCgEZ2V0QSkEZ2V0QioEZ2V0QysEZ2V0RCwEZ2V0WC0Ec2V0QS4Ec2V0Qi8Ec2V0QzAEc2V0RDEEc2V0WALNATIAAQAAAQIAAAEIbnVtbG9vcHMCAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgCAAABAW4ZAgAAAQFuGgIAAAEBbhsCAAABAW4cAgAAAQFuHQIAAAEBbh4CAAABAW4fAgAAAQFuIAIAAAEBbiECAAABAW4iAgAAAQFuIwIAAAEBbiQCAAABAW4lAgAAAQFuJgIAAAEBbicCAAABAW4oACkAKgArACwALQEAAC4BAAAvAQAAMAEAADEBAAA='\n ),\n wasm = WebAssembly && atb !== identity ? str2AB(wasmB64).buffer : false,\n crypt = makeCrypt(),\n biteSize = 240 * 16 * 16,\n bounder = Math.floor(biteSize * 16 * 1.066666667),\n upperLimit = 268435456 - 65536,\n parmTypeErrStr = 'Parameter must be Buffer, ArrayBuffer or Uint8Array',\n tooBigErrStr = 'Parameter exceeds max size of 255.9 Mbytes';\n\nif (!wasm) {\n console.log(\n 'WebAssembly not available or WASM module could not be decoded; md5WASM will fall back to JavaScript'\n );\n}\n\n// - - - - - - - - - - - - - - - - - - - - - - - - - - -\n// This returns a Promise-like object (I was farting around, so sue me)\n// which supports '.catch' and '.then'\nexport default function md5WASM(data) {\n var mem, memView, importObj, imports, len, buff, thenFun, catchFun, result, endTime;\n const md5JS = makeMD5JS(),\n md5WA = makeMD5WA(),\n returnObj = {},\n startTime = new Date().getTime();\n\n returnObj['then'] = function (fun) {\n thenFun = fun;\n getThen();\n return returnObj;\n };\n returnObj['catch'] = function (fun) {\n catchFun = fun;\n return returnObj;\n };\n\n // Sift the incoming parameter and the environment\n // If we are good, set buff\n if (true) {\n if (data && typeof data === 'object') {\n if (typeof Buffer === 'function' && data.constructor === Buffer) {\n buff = data;\n } else {\n if (data.constructor === Uint8Array || data.constructor === ArrayBuffer) {\n buff = data.constructor === ArrayBuffer ? new Uint8Array(data) : data;\n } else {\n getCatch(new TypeError(parmTypeErrStr));\n }\n }\n } else {\n getCatch(new TypeError(parmTypeErrStr));\n }\n }\n\n // - - - - - - - - - - - - - - - - - - - - - - - - - -\n // Make some choices based on the size of the incoming data\n // ~ Use WebAssembly or just JavaScript\n // ~ If Webassemly, allocate appropriate memory\n //\n if (buff) {\n len = buff.length;\n if (wasm && len > bounder) {\n if (len > upperLimit) {\n getCatch(new Error(tooBigErrStr));\n } else {\n mem = new WebAssembly.Memory({\n initial: len > 32000000 ? (len > 64000000 ? (len > 128000000 ? 4096 : 2048) : 1024) : 512\n });\n memView = new Uint32Array(mem.buffer);\n imports = {mem: mem, log: console.log};\n importObj = {imports};\n WebAssembly.instantiate(wasm, importObj).then(giterdone);\n }\n } else {\n getThen(md5JS(buff));\n }\n }\n return returnObj;\n\n function giterdone(obj) {\n getThen(md5WA(buff, obj.instance.exports, memView));\n }\n function getThen(r) {\n var res = Boolean(r) ? r : result;\n if (Boolean(r)) {\n endTime = new Date().getTime();\n }\n if (typeof thenFun === 'function') {\n if (Boolean(res)) {\n thenFun(res, endTime - startTime);\n thenFun = catchFun = null;\n }\n } else {\n if (Boolean(r)) {\n result = r;\n }\n }\n }\n function getCatch(err) {\n if (typeof catchFun === 'function') {\n catchFun(err);\n }\n }\n}\n\nfunction makeMD5WA() {\n var loop, loops;\n var getA, setA, getB, setB, getC, setC, getD, setD, getX, setX, memView;\n\n var md5WA = function (message) {\n var m00,\n m01,\n m02,\n m03,\n m04,\n m05,\n m06,\n m07,\n m08,\n m09,\n m10,\n m11,\n m12,\n m13,\n m14,\n m15,\n aa,\n bb,\n cc,\n dd,\n m,\n k;\n var qwerty = new Date().getTime();\n var md5Used = 0;\n\n var a = 1732584193,\n b = -271733879,\n c = -1732584194,\n d = 271733878,\n i = 0,\n l = message.length * 8,\n len;\n\n len = bytesToWordsNewer(message, memView);\n memView[l >>> 5] |= 0x80 << l % 32;\n memView[(((l + 64) >>> 9) << 4) + 14] = l;\n len = (((l + 64) >>> 9) << 4) + 15;\n m = memView;\n\n // console.log(\"first loop took \"+((new Date().getTime())-qwerty)+\"ms\");\n\n while (i < len) {\n if (len > i + bounder) {\n setA(a);\n setB(b);\n setC(c);\n setD(d);\n loops(biteSize);\n i = i + biteSize * 16;\n a = getA();\n b = getB();\n c = getC();\n d = getD();\n md5Used++;\n } else {\n aa = a;\n bb = b;\n cc = c;\n dd = d;\n m00 = m[i + 0] >>> 0;\n m01 = m[i + 1] >>> 0;\n m02 = m[i + 2] >>> 0;\n m03 = m[i + 3] >>> 0;\n m04 = m[i + 4] >>> 0;\n m05 = m[i + 5] >>> 0;\n m06 = m[i + 6] >>> 0;\n m07 = m[i + 7] >>> 0;\n m08 = m[i + 8] >>> 0;\n m09 = m[i + 9] >>> 0;\n m10 = m[i + 10] >>> 0;\n m11 = m[i + 11] >>> 0;\n m12 = m[i + 12] >>> 0;\n m13 = m[i + 13] >>> 0;\n m14 = m[i + 14] >>> 0;\n m15 = m[i + 15] >>> 0;\n\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m00 - 680876936) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m01 - 389564586) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m02 + 606105819) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m03 - 1044525330) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m04 - 176418897) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m05 + 1200080426) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m06 - 1473231341) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m07 - 45705983) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m08 + 1770035416) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m09 - 1958414417) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m10 - 42063) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m11 - 1990404162) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m12 + 1804603682) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m13 - 40341101) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m14 - 1502002290) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m15 + 1236535329) + c;\n\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m01 - 165796510) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m06 - 1069501632) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m11 + 643717713) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m00 - 373897302) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m05 - 701558691) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m10 + 38016083) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m15 - 660478335) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m04 - 405537848) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m09 + 568446438) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m14 - 1019803690) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m03 - 187363961) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m08 + 1163531501) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m13 - 1444681467) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m02 - 51403784) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m07 + 1735328473) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m12 - 1926607734) + c;\n\n a = ____(4, 28, a + (b ^ c ^ d) + m05 - 378558) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m08 - 2022574463) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m11 + 1839030562) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m14 - 35309556) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m01 - 1530992060) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m04 + 1272893353) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m07 - 155497632) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m10 - 1094730640) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m13 + 681279174) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m00 - 358537222) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m03 - 722521979) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m06 + 76029189) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m09 - 640364487) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m12 - 421815835) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m15 + 530742520) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m02 - 995338651) + c;\n\n a = ____(6, 26, a + (c ^ (b | ~d)) + m00 - 198630844) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m07 + 1126891415) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m14 - 1416354905) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m05 - 57434055) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m12 + 1700485571) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m03 - 1894986606) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m10 - 1051523) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m01 - 2054922799) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m08 + 1873313359) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m15 - 30611744) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m06 - 1560198380) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m13 + 1309151649) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m04 - 145523070) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m11 - 1120210379) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m02 + 718787259) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m09 - 343485551) + c;\n\n i = i + 16;\n a = (a + aa) >>> 0;\n b = (b + bb) >>> 0;\n c = (c + cc) >>> 0;\n d = (d + dd) >>> 0;\n }\n }\n\n // console.log(\"md5WA, elapsed=\"+((new Date().getTime())-qwerty)+(md5Used?\", WebAssembly called \"+md5Used+\" times\":\", WebAssembly not called\"));\n\n return crypt.endian([a, b, c, d]);\n\n function ____(s, t, n) {\n return (n << s) | (n >>> t);\n }\n\n // Convert a byte array to big-endian 32-bit words\n function bytesToWordsNewer(bytes, words) {\n var i = -1,\n l = Math.floor((bytes.length - 1) / 4),\n j = 0,\n b0,\n b1,\n b2,\n b3;\n while (l - 8 > i++) {\n j = i << 2;\n words[i] = bytes[j + 0] | (bytes[j + 1] << 8) | (bytes[j + 2] << 16) | (bytes[j + 3] << 24);\n }\n i--;\n while (l > i++) {\n j = i << 2;\n b0 = typeof bytes[j + 0] === 'undefined' ? 0 : bytes[j + 0];\n b1 = typeof bytes[j + 1] === 'undefined' ? 0 : bytes[j + 1];\n b2 = typeof bytes[j + 2] === 'undefined' ? 0 : bytes[j + 2];\n b3 = typeof bytes[j + 3] === 'undefined' ? 0 : bytes[j + 3];\n words[i] = b0 | (b1 << 8) | (b2 << 16) | (b3 << 24);\n }\n return l + 1;\n }\n };\n\n return function (message, exports, mView, options) {\n var digestbytes;\n loops = exports.loops;\n loop = exports.loop;\n getA = exports.getA;\n getB = exports.getB;\n getC = exports.getC;\n getD = exports.getD;\n getX = exports.getX;\n setA = exports.setA;\n setB = exports.setB;\n setC = exports.setC;\n setD = exports.setD;\n setX = exports.setX;\n memView = mView;\n digestbytes = crypt.wordsToBytes(md5WA(message));\n return options && options.asBytes ? digestbytes : crypt.bytesToHex(digestbytes);\n };\n}\n\nfunction makeMD5JS() {\n var md5JS = function (message, options) {\n var m00,\n m01,\n m02,\n m03,\n m04,\n m05,\n m06,\n m07,\n m08,\n m09,\n m10,\n m11,\n m12,\n m13,\n m14,\n m15,\n aa,\n bb,\n cc,\n dd,\n m;\n var qwerty = new Date().getTime();\n\n // console.log(\"md5 start\");\n\n var a = 1732584193,\n b = -271733879,\n c = -1732584194,\n d = 271733878,\n l = message.length * 8;\n\n m = crypt.bytesToWords(message);\n\n // Swap endian\n for (var j = 0; j < m.length; j++) {\n m[j] =\n (((m[j] << 8) | (m[j] >>> 24)) & 0x00ff00ff) | (((m[j] << 24) | (m[j] >>> 8)) & 0xff00ff00);\n }\n\n // Padding\n m[l >>> 5] |= 0x80 << l % 32;\n m[(((l + 64) >>> 9) << 4) + 14] = l;\n\n for (var i = 0; i < m.length; i += 16) {\n aa = a;\n bb = b;\n cc = c;\n dd = d;\n m00 = m[i + 0] >>> 0;\n m01 = m[i + 1] >>> 0;\n m02 = m[i + 2] >>> 0;\n m03 = m[i + 3] >>> 0;\n m04 = m[i + 4] >>> 0;\n m05 = m[i + 5] >>> 0;\n m06 = m[i + 6] >>> 0;\n m07 = m[i + 7] >>> 0;\n m08 = m[i + 8] >>> 0;\n m09 = m[i + 9] >>> 0;\n m10 = m[i + 10] >>> 0;\n m11 = m[i + 11] >>> 0;\n m12 = m[i + 12] >>> 0;\n m13 = m[i + 13] >>> 0;\n m14 = m[i + 14] >>> 0;\n m15 = m[i + 15] >>> 0;\n\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m00 - 680876936) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m01 - 389564586) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m02 + 606105819) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m03 - 1044525330) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m04 - 176418897) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m05 + 1200080426) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m06 - 1473231341) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m07 - 45705983) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m08 + 1770035416) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m09 - 1958414417) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m10 - 42063) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m11 - 1990404162) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m12 + 1804603682) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m13 - 40341101) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m14 - 1502002290) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m15 + 1236535329) + c;\n\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m01 - 165796510) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m06 - 1069501632) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m11 + 643717713) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m00 - 373897302) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m05 - 701558691) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m10 + 38016083) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m15 - 660478335) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m04 - 405537848) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m09 + 568446438) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m14 - 1019803690) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m03 - 187363961) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m08 + 1163531501) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m13 - 1444681467) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m02 - 51403784) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m07 + 1735328473) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m12 - 1926607734) + c;\n\n a = ____(4, 28, a + (b ^ c ^ d) + m05 - 378558) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m08 - 2022574463) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m11 + 1839030562) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m14 - 35309556) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m01 - 1530992060) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m04 + 1272893353) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m07 - 155497632) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m10 - 1094730640) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m13 + 681279174) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m00 - 358537222) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m03 - 722521979) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m06 + 76029189) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m09 - 640364487) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m12 - 421815835) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m15 + 530742520) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m02 - 995338651) + c;\n\n a = ____(6, 26, a + (c ^ (b | ~d)) + m00 - 198630844) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m07 + 1126891415) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m14 - 1416354905) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m05 - 57434055) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m12 + 1700485571) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m03 - 1894986606) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m10 - 1051523) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m01 - 2054922799) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m08 + 1873313359) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m15 - 30611744) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m06 - 1560198380) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m13 + 1309151649) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m04 - 145523070) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m11 - 1120210379) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m02 + 718787259) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m09 - 343485551) + c;\n\n a = (a + aa) >>> 0;\n b = (b + bb) >>> 0;\n c = (c + cc) >>> 0;\n d = (d + dd) >>> 0;\n }\n\n // console.log(\"md5JS, elapsed=\"+((new Date().getTime())-qwerty));\n\n return crypt.endian([a, b, c, d]);\n\n function ____(s, t, n) {\n return (n << s) | (n >>> t);\n }\n };\n\n return function (message, options) {\n var digestbytes = crypt.wordsToBytes(md5JS(message, options)),\n result = options && options.asBytes ? digestbytes : crypt.bytesToHex(digestbytes);\n return result;\n };\n}\nfunction str2AB(str) {\n var l,\n buff,\n buffView,\n i = -1;\n l = str.length - 1;\n buff = new ArrayBuffer(str.length);\n buffView = new Uint8Array(buff);\n while (l > i++) {\n buffView[i] = str.charCodeAt(i);\n }\n return buffView;\n}\nfunction nodeATOB(str) {\n return Buffer.from(str, 'base64').toString('binary');\n}\nfunction identity(x) {\n return x;\n}\n\nfunction makeCrypt() {\n var base64map = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n return {\n rotl: function (n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n endian: function (n) {\n if (n.constructor == Number) {\n return (crypt.rotl(n, 8) & 0x00ff00ff) | (crypt.rotl(n, 24) & 0xff00ff00);\n }\n for (var i = 0; i < n.length; i++) n[i] = crypt.endian(n[i]);\n return n;\n },\n\n bytesToWords: function (bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - (b % 32));\n return words;\n },\n\n wordsToBytes: function (words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - (b % 32))) & 0xff);\n return bytes;\n },\n\n bytesToHex: function (bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xf).toString(16));\n }\n return hex.join('');\n }\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"md5-wasm.js","names":["atb","atob","Buffer","nodeATOB","identity","wasmB64","wasm","WebAssembly","str2AB","buffer","crypt","makeCrypt","biteSize","bounder","Math","floor","upperLimit","parmTypeErrStr","tooBigErrStr","console","log","md5WASM","data","mem","memView","importObj","imports","len","buff","thenFun","catchFun","result","endTime","md5JS","makeMD5JS","md5WA","makeMD5WA","returnObj","startTime","Date","getTime","fun","getThen","constructor","Uint8Array","ArrayBuffer","getCatch","TypeError","length","Error","Memory","initial","Uint32Array","instantiate","then","giterdone","obj","instance","exports","r","res","Boolean","err","loop","loops","getA","setA","getB","setB","getC","setC","getD","setD","getX","setX","message","m00","m01","m02","m03","m04","m05","m06","m07","m08","m09","m10","m11","m12","m13","m14","m15","aa","bb","cc","dd","m","k","qwerty","md5Used","a","b","c","d","i","l","bytesToWordsNewer","____","endian","s","t","n","bytes","words","j","b0","b1","b2","b3","mView","options","digestbytes","wordsToBytes","asBytes","bytesToHex","bytesToWords","str","buffView","charCodeAt","from","toString","x","base64map","rotl","Number","push","hex","join"],"sources":["../../../../src/lib/algorithms/md5-wasm.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\n/* !\n * MD5 WebAssembly\n * https://github.com/briantbutton/md5-wasm\n * (c) 2020 Brian Todd Button\n * Released under the MIT license\n */\n\n// *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-*\n// This contains two functions designed to achieve the same thing\n// -> A WebAssembly function for larger files\n// -> A JavaScript function for the others\n//\nconst atb = typeof atob === 'function' ? atob : typeof Buffer === 'function' ? nodeATOB : identity,\n wasmB64 = atb(\n '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'\n ),\n wasm = WebAssembly && atb !== identity ? str2AB(wasmB64).buffer : false,\n crypt = makeCrypt(),\n biteSize = 240 * 16 * 16,\n bounder = Math.floor(biteSize * 16 * 1.066666667),\n upperLimit = 268435456 - 65536,\n parmTypeErrStr = 'Parameter must be Buffer, ArrayBuffer or Uint8Array',\n tooBigErrStr = 'Parameter exceeds max size of 255.9 Mbytes';\n\nif (!wasm) {\n console.log(\n 'WebAssembly not available or WASM module could not be decoded; md5WASM will fall back to JavaScript'\n );\n}\n\n// - - - - - - - - - - - - - - - - - - - - - - - - - - -\n// This returns a Promise-like object (I was farting around, so sue me)\n// which supports '.catch' and '.then'\nexport default function md5WASM(data) {\n var mem, memView, importObj, imports, len, buff, thenFun, catchFun, result, endTime;\n const md5JS = makeMD5JS(),\n md5WA = makeMD5WA(),\n returnObj = {},\n startTime = new Date().getTime();\n\n returnObj['then'] = function (fun) {\n thenFun = fun;\n getThen();\n return returnObj;\n };\n returnObj['catch'] = function (fun) {\n catchFun = fun;\n return returnObj;\n };\n\n // Sift the incoming parameter and the environment\n // If we are good, set buff\n if (true) {\n if (data && typeof data === 'object') {\n if (typeof Buffer === 'function' && data.constructor === Buffer) {\n buff = data;\n } else {\n if (data.constructor === Uint8Array || data.constructor === ArrayBuffer) {\n buff = data.constructor === ArrayBuffer ? new Uint8Array(data) : data;\n } else {\n getCatch(new TypeError(parmTypeErrStr));\n }\n }\n } else {\n getCatch(new TypeError(parmTypeErrStr));\n }\n }\n\n // - - - - - - - - - - - - - - - - - - - - - - - - - -\n // Make some choices based on the size of the incoming data\n // ~ Use WebAssembly or just JavaScript\n // ~ If Webassemly, allocate appropriate memory\n //\n if (buff) {\n len = buff.length;\n if (wasm && len > bounder) {\n if (len > upperLimit) {\n getCatch(new Error(tooBigErrStr));\n } else {\n mem = new WebAssembly.Memory({\n initial: len > 32000000 ? (len > 64000000 ? (len > 128000000 ? 4096 : 2048) : 1024) : 512\n });\n memView = new Uint32Array(mem.buffer);\n imports = {mem: mem, log: console.log};\n importObj = {imports};\n WebAssembly.instantiate(wasm, importObj).then(giterdone);\n }\n } else {\n getThen(md5JS(buff));\n }\n }\n return returnObj;\n\n function giterdone(obj) {\n getThen(md5WA(buff, obj.instance.exports, memView));\n }\n function getThen(r) {\n var res = Boolean(r) ? r : result;\n if (Boolean(r)) {\n endTime = new Date().getTime();\n }\n if (typeof thenFun === 'function') {\n if (Boolean(res)) {\n thenFun(res, endTime - startTime);\n thenFun = catchFun = null;\n }\n } else {\n if (Boolean(r)) {\n result = r;\n }\n }\n }\n function getCatch(err) {\n if (typeof catchFun === 'function') {\n catchFun(err);\n }\n }\n}\n\nfunction makeMD5WA() {\n var loop, loops;\n var getA, setA, getB, setB, getC, setC, getD, setD, getX, setX, memView;\n\n var md5WA = function (message) {\n var m00,\n m01,\n m02,\n m03,\n m04,\n m05,\n m06,\n m07,\n m08,\n m09,\n m10,\n m11,\n m12,\n m13,\n m14,\n m15,\n aa,\n bb,\n cc,\n dd,\n m,\n k;\n var qwerty = new Date().getTime();\n var md5Used = 0;\n\n var a = 1732584193,\n b = -271733879,\n c = -1732584194,\n d = 271733878,\n i = 0,\n l = message.length * 8,\n len;\n\n len = bytesToWordsNewer(message, memView);\n memView[l >>> 5] |= 0x80 << l % 32;\n memView[(((l + 64) >>> 9) << 4) + 14] = l;\n len = (((l + 64) >>> 9) << 4) + 15;\n m = memView;\n\n // console.log(\"first loop took \"+((new Date().getTime())-qwerty)+\"ms\");\n\n while (i < len) {\n if (len > i + bounder) {\n setA(a);\n setB(b);\n setC(c);\n setD(d);\n loops(biteSize);\n i = i + biteSize * 16;\n a = getA();\n b = getB();\n c = getC();\n d = getD();\n md5Used++;\n } else {\n aa = a;\n bb = b;\n cc = c;\n dd = d;\n m00 = m[i + 0] >>> 0;\n m01 = m[i + 1] >>> 0;\n m02 = m[i + 2] >>> 0;\n m03 = m[i + 3] >>> 0;\n m04 = m[i + 4] >>> 0;\n m05 = m[i + 5] >>> 0;\n m06 = m[i + 6] >>> 0;\n m07 = m[i + 7] >>> 0;\n m08 = m[i + 8] >>> 0;\n m09 = m[i + 9] >>> 0;\n m10 = m[i + 10] >>> 0;\n m11 = m[i + 11] >>> 0;\n m12 = m[i + 12] >>> 0;\n m13 = m[i + 13] >>> 0;\n m14 = m[i + 14] >>> 0;\n m15 = m[i + 15] >>> 0;\n\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m00 - 680876936) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m01 - 389564586) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m02 + 606105819) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m03 - 1044525330) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m04 - 176418897) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m05 + 1200080426) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m06 - 1473231341) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m07 - 45705983) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m08 + 1770035416) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m09 - 1958414417) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m10 - 42063) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m11 - 1990404162) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m12 + 1804603682) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m13 - 40341101) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m14 - 1502002290) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m15 + 1236535329) + c;\n\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m01 - 165796510) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m06 - 1069501632) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m11 + 643717713) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m00 - 373897302) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m05 - 701558691) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m10 + 38016083) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m15 - 660478335) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m04 - 405537848) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m09 + 568446438) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m14 - 1019803690) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m03 - 187363961) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m08 + 1163531501) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m13 - 1444681467) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m02 - 51403784) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m07 + 1735328473) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m12 - 1926607734) + c;\n\n a = ____(4, 28, a + (b ^ c ^ d) + m05 - 378558) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m08 - 2022574463) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m11 + 1839030562) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m14 - 35309556) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m01 - 1530992060) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m04 + 1272893353) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m07 - 155497632) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m10 - 1094730640) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m13 + 681279174) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m00 - 358537222) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m03 - 722521979) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m06 + 76029189) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m09 - 640364487) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m12 - 421815835) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m15 + 530742520) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m02 - 995338651) + c;\n\n a = ____(6, 26, a + (c ^ (b | ~d)) + m00 - 198630844) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m07 + 1126891415) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m14 - 1416354905) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m05 - 57434055) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m12 + 1700485571) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m03 - 1894986606) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m10 - 1051523) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m01 - 2054922799) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m08 + 1873313359) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m15 - 30611744) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m06 - 1560198380) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m13 + 1309151649) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m04 - 145523070) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m11 - 1120210379) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m02 + 718787259) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m09 - 343485551) + c;\n\n i = i + 16;\n a = (a + aa) >>> 0;\n b = (b + bb) >>> 0;\n c = (c + cc) >>> 0;\n d = (d + dd) >>> 0;\n }\n }\n\n // console.log(\"md5WA, elapsed=\"+((new Date().getTime())-qwerty)+(md5Used?\", WebAssembly called \"+md5Used+\" times\":\", WebAssembly not called\"));\n\n return crypt.endian([a, b, c, d]);\n\n function ____(s, t, n) {\n return (n << s) | (n >>> t);\n }\n\n // Convert a byte array to big-endian 32-bit words\n function bytesToWordsNewer(bytes, words) {\n var i = -1,\n l = Math.floor((bytes.length - 1) / 4),\n j = 0,\n b0,\n b1,\n b2,\n b3;\n while (l - 8 > i++) {\n j = i << 2;\n words[i] = bytes[j + 0] | (bytes[j + 1] << 8) | (bytes[j + 2] << 16) | (bytes[j + 3] << 24);\n }\n i--;\n while (l > i++) {\n j = i << 2;\n b0 = typeof bytes[j + 0] === 'undefined' ? 0 : bytes[j + 0];\n b1 = typeof bytes[j + 1] === 'undefined' ? 0 : bytes[j + 1];\n b2 = typeof bytes[j + 2] === 'undefined' ? 0 : bytes[j + 2];\n b3 = typeof bytes[j + 3] === 'undefined' ? 0 : bytes[j + 3];\n words[i] = b0 | (b1 << 8) | (b2 << 16) | (b3 << 24);\n }\n return l + 1;\n }\n };\n\n return function (message, exports, mView, options) {\n var digestbytes;\n loops = exports.loops;\n loop = exports.loop;\n getA = exports.getA;\n getB = exports.getB;\n getC = exports.getC;\n getD = exports.getD;\n getX = exports.getX;\n setA = exports.setA;\n setB = exports.setB;\n setC = exports.setC;\n setD = exports.setD;\n setX = exports.setX;\n memView = mView;\n digestbytes = crypt.wordsToBytes(md5WA(message));\n return options && options.asBytes ? digestbytes : crypt.bytesToHex(digestbytes);\n };\n}\n\nfunction makeMD5JS() {\n var md5JS = function (message, options) {\n var m00,\n m01,\n m02,\n m03,\n m04,\n m05,\n m06,\n m07,\n m08,\n m09,\n m10,\n m11,\n m12,\n m13,\n m14,\n m15,\n aa,\n bb,\n cc,\n dd,\n m;\n var qwerty = new Date().getTime();\n\n // console.log(\"md5 start\");\n\n var a = 1732584193,\n b = -271733879,\n c = -1732584194,\n d = 271733878,\n l = message.length * 8;\n\n m = crypt.bytesToWords(message);\n\n // Swap endian\n for (var j = 0; j < m.length; j++) {\n m[j] =\n (((m[j] << 8) | (m[j] >>> 24)) & 0x00ff00ff) | (((m[j] << 24) | (m[j] >>> 8)) & 0xff00ff00);\n }\n\n // Padding\n m[l >>> 5] |= 0x80 << l % 32;\n m[(((l + 64) >>> 9) << 4) + 14] = l;\n\n for (var i = 0; i < m.length; i += 16) {\n aa = a;\n bb = b;\n cc = c;\n dd = d;\n m00 = m[i + 0] >>> 0;\n m01 = m[i + 1] >>> 0;\n m02 = m[i + 2] >>> 0;\n m03 = m[i + 3] >>> 0;\n m04 = m[i + 4] >>> 0;\n m05 = m[i + 5] >>> 0;\n m06 = m[i + 6] >>> 0;\n m07 = m[i + 7] >>> 0;\n m08 = m[i + 8] >>> 0;\n m09 = m[i + 9] >>> 0;\n m10 = m[i + 10] >>> 0;\n m11 = m[i + 11] >>> 0;\n m12 = m[i + 12] >>> 0;\n m13 = m[i + 13] >>> 0;\n m14 = m[i + 14] >>> 0;\n m15 = m[i + 15] >>> 0;\n\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m00 - 680876936) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m01 - 389564586) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m02 + 606105819) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m03 - 1044525330) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m04 - 176418897) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m05 + 1200080426) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m06 - 1473231341) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m07 - 45705983) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m08 + 1770035416) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m09 - 1958414417) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m10 - 42063) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m11 - 1990404162) + c;\n a = ____(7, 25, a + ((b & c) | (~b & d)) + m12 + 1804603682) + b;\n d = ____(12, 20, d + ((a & b) | (~a & c)) + m13 - 40341101) + a;\n c = ____(17, 15, c + ((d & a) | (~d & b)) + m14 - 1502002290) + d;\n b = ____(22, 10, b + ((c & d) | (~c & a)) + m15 + 1236535329) + c;\n\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m01 - 165796510) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m06 - 1069501632) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m11 + 643717713) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m00 - 373897302) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m05 - 701558691) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m10 + 38016083) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m15 - 660478335) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m04 - 405537848) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m09 + 568446438) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m14 - 1019803690) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m03 - 187363961) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m08 + 1163531501) + c;\n a = ____(5, 27, a + ((b & d) | (c & ~d)) + m13 - 1444681467) + b;\n d = ____(9, 23, d + ((a & c) | (b & ~c)) + m02 - 51403784) + a;\n c = ____(14, 18, c + ((d & b) | (a & ~b)) + m07 + 1735328473) + d;\n b = ____(20, 12, b + ((c & a) | (d & ~a)) + m12 - 1926607734) + c;\n\n a = ____(4, 28, a + (b ^ c ^ d) + m05 - 378558) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m08 - 2022574463) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m11 + 1839030562) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m14 - 35309556) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m01 - 1530992060) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m04 + 1272893353) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m07 - 155497632) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m10 - 1094730640) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m13 + 681279174) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m00 - 358537222) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m03 - 722521979) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m06 + 76029189) + c;\n a = ____(4, 28, a + (b ^ c ^ d) + m09 - 640364487) + b;\n d = ____(11, 21, d + (a ^ b ^ c) + m12 - 421815835) + a;\n c = ____(16, 16, c + (d ^ a ^ b) + m15 + 530742520) + d;\n b = ____(23, 9, b + (c ^ d ^ a) + m02 - 995338651) + c;\n\n a = ____(6, 26, a + (c ^ (b | ~d)) + m00 - 198630844) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m07 + 1126891415) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m14 - 1416354905) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m05 - 57434055) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m12 + 1700485571) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m03 - 1894986606) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m10 - 1051523) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m01 - 2054922799) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m08 + 1873313359) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m15 - 30611744) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m06 - 1560198380) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m13 + 1309151649) + c;\n a = ____(6, 26, a + (c ^ (b | ~d)) + m04 - 145523070) + b;\n d = ____(10, 22, d + (b ^ (a | ~c)) + m11 - 1120210379) + a;\n c = ____(15, 17, c + (a ^ (d | ~b)) + m02 + 718787259) + d;\n b = ____(21, 11, b + (d ^ (c | ~a)) + m09 - 343485551) + c;\n\n a = (a + aa) >>> 0;\n b = (b + bb) >>> 0;\n c = (c + cc) >>> 0;\n d = (d + dd) >>> 0;\n }\n\n // console.log(\"md5JS, elapsed=\"+((new Date().getTime())-qwerty));\n\n return crypt.endian([a, b, c, d]);\n\n function ____(s, t, n) {\n return (n << s) | (n >>> t);\n }\n };\n\n return function (message, options) {\n var digestbytes = crypt.wordsToBytes(md5JS(message, options)),\n result = options && options.asBytes ? digestbytes : crypt.bytesToHex(digestbytes);\n return result;\n };\n}\nfunction str2AB(str) {\n var l,\n buff,\n buffView,\n i = -1;\n l = str.length - 1;\n buff = new ArrayBuffer(str.length);\n buffView = new Uint8Array(buff);\n while (l > i++) {\n buffView[i] = str.charCodeAt(i);\n }\n return buffView;\n}\nfunction nodeATOB(str) {\n return Buffer.from(str, 'base64').toString('binary');\n}\nfunction identity(x) {\n return x;\n}\n\nfunction makeCrypt() {\n var base64map = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n return {\n rotl: function (n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n endian: function (n) {\n if (n.constructor == Number) {\n return (crypt.rotl(n, 8) & 0x00ff00ff) | (crypt.rotl(n, 24) & 0xff00ff00);\n }\n for (var i = 0; i < n.length; i++) n[i] = crypt.endian(n[i]);\n return n;\n },\n\n bytesToWords: function (bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - (b % 32));\n return words;\n },\n\n wordsToBytes: function (words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - (b % 32))) & 0xff);\n return bytes;\n },\n\n bytesToHex: function (bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xf).toString(16));\n }\n return hex.join('');\n }\n };\n}\n"],"mappings":"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"}
@@ -5,146 +5,47 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.CRC32Hash = void 0;
8
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
13
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
- var _awaitAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/awaitAsyncGenerator"));
18
- var _wrapAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapAsyncGenerator"));
19
- var _hash2 = require("./hash");
9
+ var _hash = require("./hash");
20
10
  var _crc = _interopRequireDefault(require("./algorithms/crc32"));
21
11
  var _digestUtils = require("./utils/digest-utils");
22
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
24
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
25
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
26
- function _asyncIterator(iterable) { var method, async, sync, retry = 2; for ("undefined" != typeof Symbol && (async = Symbol.asyncIterator, sync = Symbol.iterator); retry--;) { if (async && null != (method = iterable[async])) return method.call(iterable); if (sync && null != (method = iterable[sync])) return new AsyncFromSyncIterator(method.call(iterable)); async = "@@asyncIterator", sync = "@@iterator"; } throw new TypeError("Object is not async iterable"); }
27
- function AsyncFromSyncIterator(s) { function AsyncFromSyncIteratorContinuation(r) { if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object.")); var done = r.done; return Promise.resolve(r.value).then(function (value) { return { value: value, done: done }; }); } return AsyncFromSyncIterator = function AsyncFromSyncIterator(s) { this.s = s, this.n = s.next; }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() { return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments)); }, return: function _return(value) { var ret = this.s.return; return void 0 === ret ? Promise.resolve({ value: value, done: !0 }) : AsyncFromSyncIteratorContinuation(ret.apply(this.s, arguments)); }, throw: function _throw(value) { var thr = this.s.return; return void 0 === thr ? Promise.reject(value) : AsyncFromSyncIteratorContinuation(thr.apply(this.s, arguments)); } }, new AsyncFromSyncIterator(s); }
28
- var CRC32Hash = function (_Hash) {
29
- (0, _inherits2.default)(CRC32Hash, _Hash);
30
- var _super = _createSuper(CRC32Hash);
31
- function CRC32Hash() {
32
- var _this2;
33
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
34
- (0, _classCallCheck2.default)(this, CRC32Hash);
35
- _this2 = _super.call(this);
36
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "name", 'crc32');
37
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "options", void 0);
38
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "_hash", void 0);
39
- _this2.options = _objectSpread({
40
- crypto: {}
41
- }, options);
42
- _this2._hash = new _crc.default();
43
- _this2.hashBatches = _this2.hashBatches.bind((0, _assertThisInitialized2.default)(_this2));
44
- return _this2;
12
+ class CRC32Hash extends _hash.Hash {
13
+ constructor() {
14
+ let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
15
+ super();
16
+ (0, _defineProperty2.default)(this, "name", 'crc32');
17
+ (0, _defineProperty2.default)(this, "options", void 0);
18
+ (0, _defineProperty2.default)(this, "_hash", void 0);
19
+ this.options = {
20
+ crypto: {},
21
+ ...options
22
+ };
23
+ this._hash = new _crc.default();
24
+ this.hashBatches = this.hashBatches.bind(this);
45
25
  }
46
- (0, _createClass2.default)(CRC32Hash, [{
47
- key: "hash",
48
- value: function () {
49
- var _hash = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(input) {
50
- return _regenerator.default.wrap(function _callee$(_context) {
51
- while (1) switch (_context.prev = _context.next) {
52
- case 0:
53
- return _context.abrupt("return", this.hashSync(input));
54
- case 1:
55
- case "end":
56
- return _context.stop();
57
- }
58
- }, _callee, this);
59
- }));
60
- function hash(_x) {
61
- return _hash.apply(this, arguments);
62
- }
63
- return hash;
64
- }()
65
- }, {
66
- key: "hashSync",
67
- value: function hashSync(input) {
68
- this._hash.update(input);
69
- var hashValue = this._hash.finalize();
70
- var hex = (0, _digestUtils.toHex)(hashValue);
71
- var hash = (0, _digestUtils.hexToBase64)(hex);
72
- return hash;
73
- }
74
- }, {
75
- key: "hashBatches",
76
- value: function hashBatches(asyncIterator) {
77
- var _this = this;
78
- return (0, _wrapAsyncGenerator2.default)(_regenerator.default.mark(function _callee2() {
79
- var _this$options$crypto, _this$options$crypto$;
80
- var _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, chunk, hashValue, hex, hash;
81
- return _regenerator.default.wrap(function _callee2$(_context2) {
82
- while (1) switch (_context2.prev = _context2.next) {
83
- case 0:
84
- _iteratorAbruptCompletion = false;
85
- _didIteratorError = false;
86
- _context2.prev = 2;
87
- _iterator = _asyncIterator(asyncIterator);
88
- case 4:
89
- _context2.next = 6;
90
- return (0, _awaitAsyncGenerator2.default)(_iterator.next());
91
- case 6:
92
- if (!(_iteratorAbruptCompletion = !(_step = _context2.sent).done)) {
93
- _context2.next = 14;
94
- break;
95
- }
96
- chunk = _step.value;
97
- _this._hash.update(chunk);
98
- _context2.next = 11;
99
- return chunk;
100
- case 11:
101
- _iteratorAbruptCompletion = false;
102
- _context2.next = 4;
103
- break;
104
- case 14:
105
- _context2.next = 20;
106
- break;
107
- case 16:
108
- _context2.prev = 16;
109
- _context2.t0 = _context2["catch"](2);
110
- _didIteratorError = true;
111
- _iteratorError = _context2.t0;
112
- case 20:
113
- _context2.prev = 20;
114
- _context2.prev = 21;
115
- if (!(_iteratorAbruptCompletion && _iterator.return != null)) {
116
- _context2.next = 25;
117
- break;
118
- }
119
- _context2.next = 25;
120
- return (0, _awaitAsyncGenerator2.default)(_iterator.return());
121
- case 25:
122
- _context2.prev = 25;
123
- if (!_didIteratorError) {
124
- _context2.next = 28;
125
- break;
126
- }
127
- throw _iteratorError;
128
- case 28:
129
- return _context2.finish(25);
130
- case 29:
131
- return _context2.finish(20);
132
- case 30:
133
- hashValue = _this._hash.finalize();
134
- hex = (0, _digestUtils.toHex)(hashValue);
135
- hash = (0, _digestUtils.hexToBase64)(hex);
136
- (_this$options$crypto = _this.options.crypto) === null || _this$options$crypto === void 0 ? void 0 : (_this$options$crypto$ = _this$options$crypto.onEnd) === null || _this$options$crypto$ === void 0 ? void 0 : _this$options$crypto$.call(_this$options$crypto, {
137
- hash: hash
138
- });
139
- case 34:
140
- case "end":
141
- return _context2.stop();
142
- }
143
- }, _callee2, null, [[2, 16, 20, 30], [21,, 25, 29]]);
144
- }))();
26
+ async hash(input) {
27
+ return this.hashSync(input);
28
+ }
29
+ hashSync(input) {
30
+ this._hash.update(input);
31
+ const hashValue = this._hash.finalize();
32
+ const hex = (0, _digestUtils.toHex)(hashValue);
33
+ const hash = (0, _digestUtils.hexToBase64)(hex);
34
+ return hash;
35
+ }
36
+ async *hashBatches(asyncIterator) {
37
+ var _this$options$crypto, _this$options$crypto$;
38
+ for await (const chunk of asyncIterator) {
39
+ this._hash.update(chunk);
40
+ yield chunk;
145
41
  }
146
- }]);
147
- return CRC32Hash;
148
- }(_hash2.Hash);
42
+ const hashValue = this._hash.finalize();
43
+ const hex = (0, _digestUtils.toHex)(hashValue);
44
+ const hash = (0, _digestUtils.hexToBase64)(hex);
45
+ (_this$options$crypto = this.options.crypto) === null || _this$options$crypto === void 0 ? void 0 : (_this$options$crypto$ = _this$options$crypto.onEnd) === null || _this$options$crypto$ === void 0 ? void 0 : _this$options$crypto$.call(_this$options$crypto, {
46
+ hash
47
+ });
48
+ }
49
+ }
149
50
  exports.CRC32Hash = CRC32Hash;
150
51
  //# sourceMappingURL=crc32-hash.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"crc32-hash.js","names":["_hash2","require","_crc","_interopRequireDefault","_digestUtils","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","_asyncIterator","iterable","method","async","sync","retry","Symbol","asyncIterator","iterator","AsyncFromSyncIterator","TypeError","s","AsyncFromSyncIteratorContinuation","r","Promise","reject","done","resolve","value","then","n","next","return","_return","ret","throw","_throw","thr","CRC32Hash","_Hash","_inherits2","_super","_this2","options","undefined","_classCallCheck2","_assertThisInitialized2","crypto","_hash","CRC32","hashBatches","bind","_createClass2","_asyncToGenerator2","_regenerator","mark","_callee","input","wrap","_callee$","_context","prev","abrupt","hashSync","stop","hash","_x","update","hashValue","finalize","hex","toHex","hexToBase64","_this","_wrapAsyncGenerator2","_callee2","_this$options$crypto","_this$options$crypto$","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","chunk","_callee2$","_context2","_awaitAsyncGenerator2","sent","t0","finish","onEnd","Hash","exports"],"sources":["../../../src/lib/crc32-hash.ts"],"sourcesContent":["// CRC32\nimport {Hash} from './hash';\nimport CRC32 from './algorithms/crc32';\nimport {toHex, hexToBase64} from './utils/digest-utils';\n\n/**\n * Calculates CRC32 Cryptographic Hash\n */\nexport class CRC32Hash extends Hash {\n readonly name = 'crc32';\n\n options;\n private _hash: CRC32;\n\n constructor(options = {}) {\n super();\n this.options = {crypto: {}, ...options};\n this._hash = new CRC32();\n this.hashBatches = this.hashBatches.bind(this);\n }\n\n /**\n * Atomic hash calculation\n * @returns base64 encoded hash\n */\n async hash(input: ArrayBuffer): Promise<string> {\n return this.hashSync(input);\n }\n\n hashSync(input: ArrayBuffer): string {\n this._hash.update(input);\n const hashValue = this._hash.finalize();\n const hex = toHex(hashValue);\n const hash = hexToBase64(hex);\n return hash;\n }\n\n async *hashBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n for await (const chunk of asyncIterator) {\n this._hash.update(chunk);\n yield chunk;\n }\n const hashValue = this._hash.finalize();\n const hex = toHex(hashValue);\n const hash = hexToBase64(hex);\n this.options.crypto?.onEnd?.({hash});\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"crc32-hash.js","names":["_hash","require","_crc","_interopRequireDefault","_digestUtils","CRC32Hash","Hash","constructor","options","arguments","length","undefined","_defineProperty2","default","crypto","CRC32","hashBatches","bind","hash","input","hashSync","update","hashValue","finalize","hex","toHex","hexToBase64","asyncIterator","_this$options$crypto","_this$options$crypto$","chunk","onEnd","call","exports"],"sources":["../../../src/lib/crc32-hash.ts"],"sourcesContent":["// CRC32\nimport {Hash} from './hash';\nimport CRC32 from './algorithms/crc32';\nimport {toHex, hexToBase64} from './utils/digest-utils';\n\n/**\n * Calculates CRC32 Cryptographic Hash\n */\nexport class CRC32Hash extends Hash {\n readonly name = 'crc32';\n\n options;\n private _hash: CRC32;\n\n constructor(options = {}) {\n super();\n this.options = {crypto: {}, ...options};\n this._hash = new CRC32();\n this.hashBatches = this.hashBatches.bind(this);\n }\n\n /**\n * Atomic hash calculation\n * @returns base64 encoded hash\n */\n async hash(input: ArrayBuffer): Promise<string> {\n return this.hashSync(input);\n }\n\n hashSync(input: ArrayBuffer): string {\n this._hash.update(input);\n const hashValue = this._hash.finalize();\n const hex = toHex(hashValue);\n const hash = hexToBase64(hex);\n return hash;\n }\n\n async *hashBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n for await (const chunk of asyncIterator) {\n this._hash.update(chunk);\n yield chunk;\n }\n const hashValue = this._hash.finalize();\n const hex = toHex(hashValue);\n const hash = hexToBase64(hex);\n this.options.crypto?.onEnd?.({hash});\n }\n}\n"],"mappings":";;;;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAKO,MAAMI,SAAS,SAASC,UAAI,CAAC;EAMlCC,WAAWA,CAAA,EAAe;IAAA,IAAdC,OAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IACtB,KAAK,CAAC,CAAC;IAAC,IAAAG,gBAAA,CAAAC,OAAA,gBANM,OAAO;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAOrB,IAAI,CAACL,OAAO,GAAG;MAACM,MAAM,EAAE,CAAC,CAAC;MAAE,GAAGN;IAAO,CAAC;IACvC,IAAI,CAACR,KAAK,GAAG,IAAIe,YAAK,CAAC,CAAC;IACxB,IAAI,CAACC,WAAW,GAAG,IAAI,CAACA,WAAW,CAACC,IAAI,CAAC,IAAI,CAAC;EAChD;EAMA,MAAMC,IAAIA,CAACC,KAAkB,EAAmB;IAC9C,OAAO,IAAI,CAACC,QAAQ,CAACD,KAAK,CAAC;EAC7B;EAEAC,QAAQA,CAACD,KAAkB,EAAU;IACnC,IAAI,CAACnB,KAAK,CAACqB,MAAM,CAACF,KAAK,CAAC;IACxB,MAAMG,SAAS,GAAG,IAAI,CAACtB,KAAK,CAACuB,QAAQ,CAAC,CAAC;IACvC,MAAMC,GAAG,GAAG,IAAAC,kBAAK,EAACH,SAAS,CAAC;IAC5B,MAAMJ,IAAI,GAAG,IAAAQ,wBAAW,EAACF,GAAG,CAAC;IAC7B,OAAON,IAAI;EACb;EAEA,OAAOF,WAAWA,CAChBW,aAAiE,EACrC;IAAA,IAAAC,oBAAA,EAAAC,qBAAA;IAC5B,WAAW,MAAMC,KAAK,IAAIH,aAAa,EAAE;MACvC,IAAI,CAAC3B,KAAK,CAACqB,MAAM,CAACS,KAAK,CAAC;MACxB,MAAMA,KAAK;IACb;IACA,MAAMR,SAAS,GAAG,IAAI,CAACtB,KAAK,CAACuB,QAAQ,CAAC,CAAC;IACvC,MAAMC,GAAG,GAAG,IAAAC,kBAAK,EAACH,SAAS,CAAC;IAC5B,MAAMJ,IAAI,GAAG,IAAAQ,wBAAW,EAACF,GAAG,CAAC;IAC7B,CAAAI,oBAAA,OAAI,CAACpB,OAAO,CAACM,MAAM,cAAAc,oBAAA,wBAAAC,qBAAA,GAAnBD,oBAAA,CAAqBG,KAAK,cAAAF,qBAAA,uBAA1BA,qBAAA,CAAAG,IAAA,CAAAJ,oBAAA,EAA6B;MAACV;IAAI,CAAC,CAAC;EACtC;AACF;AAACe,OAAA,CAAA5B,SAAA,GAAAA,SAAA"}