2023-05-09 11:11:56 +10:00
|
|
|
export function uuid(a?: string): string {
|
2023-04-03 22:44:43 +10:00
|
|
|
return a
|
|
|
|
? (
|
2023-05-10 20:59:29 +10:00
|
|
|
(a as unknown as number) ^
|
|
|
|
((Math.random() * 16) >> ((a as unknown as number) / 4))
|
2023-05-10 03:02:12 +10:00
|
|
|
).toString(16)
|
2023-05-10 20:59:29 +10:00
|
|
|
: // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
|
|
|
|
('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);
|
2023-04-03 11:31:39 +10:00
|
|
|
}
|