UNPKG

@aller/blink

Version:

A library for tracking user behaviour.

29 lines 974 B
"use strict"; /* tslint:disable */ Object.defineProperty(exports, "__esModule", { value: true }); var uuidDict = {}; /** * Gives a unique but consistent id for each key. * Saves the uuid, so if several system is using this, they get the same value! */ function generateUUID(key) { if (key === void 0) { key = ''; } if (key && key in uuidDict) { return uuidDict[key]; } // Public Domain/MIT var d = new Date().getTime(); if (typeof performance !== 'undefined' && typeof performance.now === 'function') { d += performance.now(); // use high-precision timer if available } var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { var r = (d + Math.random() * 16) % 16 | 0; d = Math.floor(d / 16); return (c === 'x' ? r : (r & 0x3) | 0x8).toString(16); }); uuidDict[key] = uuid; return uuid; } exports.default = generateUUID; //# sourceMappingURL=uuid.js.map