node-imei
Version:
imei generator/checker
2 lines (1 loc) • 2.12 kB
JavaScript
var u={Apple:{unknown:"01124500",iPhone:"01154600",iPhone3G:{MB496RS:"01174400",MB704LL:"01180800",MB496B:"01181200",A1241:"01193400"},iPhone3GS:{MC131B:"01215900"},iPhone4:{MC608LL:"01233600",MC603B:"01233700",MC610LL:"01233800",MC603KS:"01243000","MC610LL/A":"01253600","MD198HN/A":"01326300"},iPhone4S:{MD260C:"01300600"},iPhone5:{MD642C:"01332700"},iPhone5S:{"ME297C/A":"01388300",A1533:["35875105","35875305","35875405","35875505"],A1453:["35875605","35875705","35875805","35875905","35876005"]},iPhone5C:{A1507:["35880005","35880105","35880205","35880305","35880405"],A1456:["35881505","35881605","35881705","35881805","35881905"]},iPhone6:{A1549:"35925406"},"iPhone6+":{A1522:"35438506"},iPhone8:{A1905:"35299209"}},Samsung:{SMT5613474:"35951406",GalaxyS3:"35226005"},HTC:{WildFire:"35902803"},Nokia:{N9:"35166905",N9_2:"35792304",N9_3:"35929404",N1320:"35173506",N1320_2:"35173606"}},a=u;var C=15;function d(e){return e!==null&&typeof e=="object"&&Array.isArray(e)===!1}function c(){return(Math.floor(Math.random()*899999)+1e5).toString()}var S=e=>String(e).split("").reduce((t,n)=>(t+=+n,t),0),f=e=>{let t=0;for(let n=e.length-1;n>=0;n--){let r;if((e.length-n)%2===0){let i=+e[n]*2;r=i>9?S(i):i}else r=+e[n];t+=r}return t},m=e=>e%10===0,l=e=>{let t=`${e}0`,n=f(t);if(m(n))return t;{let i=Math.ceil(n/10)*10-n;return t.slice(0,-1)+i}},p=e=>{if(!e||e.length!==C||isNaN(+e))return!1;try{return m(f(e))}catch{return!1}},L=(e=c())=>{let t=Object.keys(a),n=t[Math.floor(Math.random()*t.length)],r=a[n],i=Object.keys(r),M=i[Math.floor(Math.random()*i.length)],o=r[M],s="";if(typeof o=="string")s=o;else if(d(o)){let h=Object.keys(o),A=h[Math.floor(Math.random()*h.length)],g=o[A];Array.isArray(g)?s=g[Math.floor(Math.random()*g.length)]:s=g}let y=s+e;return l(y)},N=(e,t)=>{let n=a[e],r=t?n[t]:n[Object.keys(n)[Math.floor(Math.random()*Object.keys(n).length)]];if(d(r)){let i=Object.keys(r),M=i[Math.floor(Math.random()*i.length)],o=r[M];if(Array.isArray(o)){let s=o[Math.floor(Math.random()*o.length)];return l(s+c())}else return l(o+c())}return l(r+c())};export{N as getImeiByDevice,L as getRandom,p as isValid};