catstodon/app/javascript/mastodon/uuid.ts

10 lines
332 B
TypeScript
Raw Normal View History

export function uuid(a?: string): string {
return a
? (
(a as unknown as number) ^
((Math.random() * 16) >> ((a as unknown as number) / 4))
).toString(16)
: // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);
}