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