diff --git a/.changeset/tall-hairs-dream.md b/.changeset/tall-hairs-dream.md new file mode 100644 index 00000000000..4da8d7924f1 --- /dev/null +++ b/.changeset/tall-hairs-dream.md @@ -0,0 +1,5 @@ +--- +"@clerk/remix": patch +--- + +Fix issues caused by modifying duplex property on Request when it was already defined diff --git a/packages/remix/src/ssr/utils.ts b/packages/remix/src/ssr/utils.ts index 8ee504b4133..d4e8a6f7a14 100644 --- a/packages/remix/src/ssr/utils.ts +++ b/packages/remix/src/ssr/utils.ts @@ -126,7 +126,8 @@ export const wrapWithClerkState = (data: any) => { */ export const patchRequest = (request: Request) => { const clonedRequest = request.clone(); - if (clonedRequest.method !== 'GET' && clonedRequest.body !== null) { + // If duplex is not set, set it to 'half' to avoid duplex issues with unidici + if (clonedRequest.method !== 'GET' && clonedRequest.body !== null && !('duplex' in clonedRequest)) { (clonedRequest as unknown as { duplex: 'half' }).duplex = 'half'; } return clonedRequest;