UNPKG

number-generator

Version:

Generate repeatable pseudo random numbers and non-cryptographic hash numbers for usage in Node.js and browser environments.

3 lines (2 loc) 3.71 kB
"use strict";function r(r,n){return function(r){if(Array.isArray(r))return r}(r)||function(r,t){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null==n)return;var e,o,a=[],i=!0,c=!1;try{for(n=n.call(r);!(i=(e=n.next()).done)&&(a.push(e.value),!t||a.length!==t);i=!0);}catch(r){c=!0,o=r}finally{try{i||null==n.return||n.return()}finally{if(c)throw o}}return a}(r,n)||function(r,n){if(!r)return;if("string"==typeof r)return t(r,n);var e=Object.prototype.toString.call(r).slice(8,-1);"Object"===e&&r.constructor&&(e=r.constructor.name);if("Map"===e||"Set"===e)return Array.from(r);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return t(r,n)}(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(r,t){(null==t||t>r.length)&&(t=r.length);for(var n=0,e=new Array(t);n<t;n++)e[n]=r[n];return e}function n(r,t){return(65535&(r|=0))*(t|=0)+(((r>>>16)*t&65535)<<16)|0}function e(r){return r=n(r^=r>>>16,2246822507),r=n(r^=r>>>13,3266489909),r^=r>>>16}function o(r,t){return r<<t|r>>>32-t}function a(t){var n=r(t,4),e=n[0],o=n[1],a=n[2],i=n[3],c="00000000";return(c+(e>>>0).toString(16)).slice(-8)+(c+(o>>>0).toString(16)).slice(-8)+(c+(a>>>0).toString(16)).slice(-8)+(c+(i>>>0).toString(16)).slice(-8)}function i(r){if(void 0!==r&&r%1!=0)throw new TypeError("Expected seed to be an integer, float given")}function c(r,t){if("string"!=typeof r)throw new TypeError("".concat(t,"(): first argument is not a string."))}function u(r){for(var t=r.length,n=-1,e=new Uint8Array(3*t),o=0;o!==t;){var a=r.charCodeAt(o);if(o+=1,a>=55296&&a<=56319){if(o===t){e[n+=1]=239,e[n+=1]=191,e[n+=1]=189;break}var i=r.charCodeAt(o);if(!(i>=56320&&i<=57343)){e[n+=1]=239,e[n+=1]=191,e[n+=1]=189;continue}if(o+=1,(a=1024*(a-55296)+i-56320+65536)>65535){e[n+=1]=240|a>>>18,e[n+=1]=128|a>>>12&63,e[n+=1]=128|a>>>6&63,e[n+=1]=128|63&a;continue}}a<=127?e[n+=1]=0|a:a<=2047?(e[n+=1]=192|a>>>6,e[n+=1]=128|63&a):(e[n+=1]=224|a>>>12,e[n+=1]=128|a>>>6&63,e[n+=1]=128|63&a)}return e.subarray(0,n+1)}function l(r){for(var t=new Uint8Array(r.length),n=0;n<r.length;n+=1){var e=r.charCodeAt(n);if(e<0||e>127)return u(r);t[n]=e}return t}var f,s,h,g,y,v,d,m,p=(f=597399067,s=2869860233,h=951274213,g=2716044179,y=1444728091,v=197830471,d=2530024501,m=850148119,function(r){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;c(r,"murmurhash3_x86_128"),i(t);for(var u=l(r),p=u.length%16,b=u.length-p,w=t,A=t,S=t,x=t,C=0,E=0,j=0,I=0,T=0;T<b;)C=255&u[T]|(255&u[T+1])<<8|(255&u[T+2])<<16|(255&u[T+3])<<24,E=255&u[T+4]|(255&u[T+5])<<8|(255&u[T+6])<<16|(255&u[T+7])<<24,j=255&u[T+8]|(255&u[T+9])<<8|(255&u[T+10])<<16|(255&u[T+11])<<24,I=255&u[T+12]|(255&u[T+13])<<8|(255&u[T+14])<<16|(255&u[T+15])<<24,C=o(C=n(C,f),15),w=o(w^=C=n(C,s),19),w=n(w+=A,5)+y,E=o(E=n(E,s),16),A=o(A^=E=n(E,h),17),A=n(A+=S,5)+v,j=o(j=n(j,h),17),S=o(S^=j=n(j,g),15),S=n(S+=x,5)+d,I=o(I=n(I,g),18),x=o(x^=I=n(I,f),13),x=n(x+=w,5)+m,T+=16;switch(C=0,E=0,j=0,I=0,p){case 15:I^=u[T+14]<<16;case 14:I^=u[T+13]<<8;case 13:I=n(I^=u[T+12],g),x^=I=n(I=o(I,18),f);case 12:j^=u[T+11]<<24;case 11:j^=u[T+10]<<16;case 10:j^=u[T+9]<<8;case 9:j=n(j^=u[T+8],h),S^=j=n(j=o(j,17),g);case 8:E^=u[T+7]<<24;case 7:E^=u[T+6]<<16;case 6:E^=u[T+5]<<8;case 5:E=n(E^=u[T+4],s),A^=E=n(E=o(E,16),h);case 4:C^=u[T+3]<<24;case 3:C^=u[T+2]<<16;case 2:C^=u[T+1]<<8;case 1:C=n(C^=u[T],f),w^=C=n(C=o(C,15),s)}return w^=u.length,w+=A^=u.length,w+=S^=u.length,A+=w+=x^=u.length,S+=w,x+=w,w=e(w),w+=A=e(A),w+=S=e(S),a([w+=x=e(x),A+=w,S+=w,x+=w])});module.exports=p; //# sourceMappingURL=murmurhash3_x86_128.js.map