From 635dc8f69c8e93da2201e98d7ba9d737f4911f0f Mon Sep 17 00:00:00 2001 From: Gabriel Miranda Date: Tue, 20 Jan 2026 10:13:49 -0300 Subject: [PATCH] fix(render): new ErrorBoundary breaking rendering in server components (#2871) --- .changeset/deep-memes-work.md | 5 +++++ .../src/shared/{error-boundary.ts => error-boundary.tsx} | 5 +++++ 2 files changed, 10 insertions(+) create mode 100644 .changeset/deep-memes-work.md rename packages/render/src/shared/{error-boundary.ts => error-boundary.tsx} (61%) diff --git a/.changeset/deep-memes-work.md b/.changeset/deep-memes-work.md new file mode 100644 index 000000000..07039c0f0 --- /dev/null +++ b/.changeset/deep-memes-work.md @@ -0,0 +1,5 @@ +--- +"@react-email/render": patch +--- + +fix ErrorBoundary breaking server rendering diff --git a/packages/render/src/shared/error-boundary.ts b/packages/render/src/shared/error-boundary.tsx similarity index 61% rename from packages/render/src/shared/error-boundary.ts rename to packages/render/src/shared/error-boundary.tsx index befbbdfd8..8743d3b6f 100644 --- a/packages/render/src/shared/error-boundary.ts +++ b/packages/render/src/shared/error-boundary.tsx @@ -1,6 +1,11 @@ import React from 'react'; export function createErrorBoundary(reject: (error: unknown) => void) { + // React Server Components don't support React.Component, so it's just not defined here + if (!React.Component) { + return (props: { children?: React.ReactNode }) => <>{props.children}; + } + return class ErrorBoundary extends React.Component<{ children: React.ReactNode; }> {