diff --git a/packages/next/src/client/components/is-next-router-error.ts b/packages/next/src/client/components/is-next-router-error.ts index 11ed739582028..db3dc2330b707 100644 --- a/packages/next/src/client/components/is-next-router-error.ts +++ b/packages/next/src/client/components/is-next-router-error.ts @@ -1,8 +1,11 @@ import { isNotFoundError } from './not-found' import { isRedirectError } from './redirect' +/** + * Returns true if the error is a navigation signal error. These errors are + * thrown by user code to perform navigation operations and interrupt the React + * render. + */ export function isNextRouterError(error: any): boolean { - return ( - error && error.digest && (isRedirectError(error) || isNotFoundError(error)) - ) + return isRedirectError(error) || isNotFoundError(error) } diff --git a/packages/next/src/export/helpers/is-dynamic-usage-error.ts b/packages/next/src/export/helpers/is-dynamic-usage-error.ts index 32ba973d83777..d6df2454094af 100644 --- a/packages/next/src/export/helpers/is-dynamic-usage-error.ts +++ b/packages/next/src/export/helpers/is-dynamic-usage-error.ts @@ -1,8 +1,8 @@ import { isDynamicServerError } from '../../client/components/hooks-server-context' import { isBailoutToCSRError } from '../../shared/lib/lazy-dynamic/bailout-to-csr' -import { isNavigationSignalError } from './is-navigation-signal-error' +import { isNextRouterError } from '../../client/components/is-next-router-error' export const isDynamicUsageError = (err: unknown) => isDynamicServerError(err) || isBailoutToCSRError(err) || - isNavigationSignalError(err) + isNextRouterError(err) diff --git a/packages/next/src/export/helpers/is-navigation-signal-error.ts b/packages/next/src/export/helpers/is-navigation-signal-error.ts deleted file mode 100644 index 27890cd5c7b26..0000000000000 --- a/packages/next/src/export/helpers/is-navigation-signal-error.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { isNotFoundError } from '../../client/components/not-found' -import { isRedirectError } from '../../client/components/redirect' - -/** - * Returns true if the error is a navigation signal error. These errors are - * thrown by user code to perform navigation operations and interrupt the React - * render. - */ -export const isNavigationSignalError = (err: unknown) => - isNotFoundError(err) || isRedirectError(err) diff --git a/packages/next/src/server/app-render/create-error-handler.tsx b/packages/next/src/server/app-render/create-error-handler.tsx index 6578ea4525947..ecde9da6390e6 100644 --- a/packages/next/src/server/app-render/create-error-handler.tsx +++ b/packages/next/src/server/app-render/create-error-handler.tsx @@ -3,8 +3,8 @@ import { formatServerError } from '../../lib/format-server-error' import { SpanStatusCode, getTracer } from '../lib/trace/tracer' import { isAbortError } from '../pipe-readable' import { isBailoutToCSRError } from '../../shared/lib/lazy-dynamic/bailout-to-csr' -import { isNavigationSignalError } from '../../export/helpers/is-navigation-signal-error' import { isDynamicServerError } from '../../client/components/hooks-server-context' +import { isNextRouterError } from '../../client/components/is-next-router-error' declare global { var __next_log_error__: undefined | ((err: unknown) => void) @@ -66,7 +66,7 @@ export function createErrorHandler({ if (isBailoutToCSRError(err)) return err.digest // If this is a navigation error, we don't need to log the error. - if (isNavigationSignalError(err)) return err.digest + if (isNextRouterError(err)) return err.digest if (!digestErrorsMap.has(digest)) { digestErrorsMap.set(digest, err)