1import * as Effect from "../../Effect.ts"
2
3/**
4 * @internal
5 */
6export const makeHashDigest = (original: string) =>
7 Effect.map(
8 Effect.promise(() => crypto.subtle.digest("SHA-256", new TextEncoder().encode(original))),
9 (buffer) => {
10 const data = new Uint8Array(buffer)
11 let hexString = ""
12 for (let i = 0; i < 16; i++) {
13 hexString += data[i].toString(16).padStart(2, "0")
14 }
15 return hexString
16 }
17 )