13 lines
349 B
TypeScript
13 lines
349 B
TypeScript
function uuidv4() {
|
|
return "10000000-1000-4000-8000-100000000000".replace(/[018]/g, (c: any) =>
|
|
(c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
|
|
);
|
|
}
|
|
|
|
export function generateID() {
|
|
if (self.crypto.hasOwnProperty("randomUUID")) {
|
|
return self.crypto.randomUUID();
|
|
}
|
|
|
|
return uuidv4();
|
|
} |