From 479deb61c6f3908311dfe3fbda4a16f6a5ccc9ea Mon Sep 17 00:00:00 2001 From: Elliott Johnson Date: Tue, 9 Dec 2025 16:05:05 -0700 Subject: [PATCH] node 18 --- packages/svelte/src/internal/server/crypto.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/svelte/src/internal/server/crypto.js b/packages/svelte/src/internal/server/crypto.js index dfd41aad77..06c7956d0d 100644 --- a/packages/svelte/src/internal/server/crypto.js +++ b/packages/svelte/src/internal/server/crypto.js @@ -1,9 +1,14 @@ +// TODO - remove this and use global `crypto` when we drop Node 18 +// @ts-ignore - we don't install node types in the prod build +import { webcrypto } from 'node:crypto'; + let text_encoder; /** @param {string} data */ export async function sha256(data) { text_encoder ??= new TextEncoder(); - const hash_buffer = await crypto.subtle.digest('SHA-256', text_encoder.encode(data)); + // @ts-ignore - we don't install node types in the prod build + const hash_buffer = await webcrypto.subtle.digest('SHA-256', text_encoder.encode(data)); // @ts-ignore - we don't install node types in the prod build return Buffer.from(hash_buffer).toString('base64'); }