6 lines
381 B
TypeScript
6 lines
381 B
TypeScript
|
|
/** getRandomValues remains available on HTTP, where randomUUID is unavailable. */
|
||
|
|
export function clockRequestId(source:{randomUUID?:()=>string;getRandomValues:(array:Uint8Array)=>Uint8Array}=globalThis.crypto) {
|
||
|
|
if(source.randomUUID)return source.randomUUID();
|
||
|
|
return Array.from(source.getRandomValues(new Uint8Array(16)),byte=>byte.toString(16).padStart(2,'0')).join('');
|
||
|
|
}
|