UNPKG

dop-website-sdk

Version:

Wisetracker website sdk ( dop-website-sdk )

47 lines (46 loc) 873 B
// generator export class Generator { constructor() {} /** * UUID create * @public */ UUID() { return ["u", this.randomAscii()].join("_"); } /** * UUID create * @public */ SID() { return ["s", this.randomAscii()].join("_"); } randomAscii(a) { return a // if the placeholder was passed, return ? ( // a random number from 0 to 15 a ^ // unless b is 8, Math.random() // in which case * 16 // a random number from >> a / 4 // 8 to 11 ).toString(16) // in hexadecimal : ( // or otherwise a concatenated string: [1e7] + // 10000000 + -1e3 + // -1000 + -4e3 + // -4000 + -8e3 + // -80000000 + -1e11 // -100000000000, ).replace( // replacing /[018]/g, // zeroes, ones, and eights with this.randomAscii // random hex digits ); } }