All files / api/src/utils hashing.ts

0% Statements 0/15
0% Branches 0/1
0% Functions 0/1
0% Lines 0/15

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18                                   
export async function generateObjectHash(
  requestBody: Record<string, unknown>,
): Promise<string> {
  const requestBodyString = JSON.stringify(requestBody);
  const encodedHash = new TextEncoder().encode(requestBodyString);
 
  const cacheDigest = await crypto.subtle.digest(
    {
      name: 'SHA-256',
    },
    encodedHash,
  );
 
  return Array.from(new Uint8Array(cacheDigest))
    .map((b) => b.toString(16).padStart(2, '0'))
    .join('');
}