diff --git a/apps/remix/app/routes/_profile+/_layout.tsx b/apps/remix/app/routes/_profile+/_layout.tsx index bc0cc871a..7025fefec 100644 --- a/apps/remix/app/routes/_profile+/_layout.tsx +++ b/apps/remix/app/routes/_profile+/_layout.tsx @@ -4,7 +4,7 @@ import { msg } from '@lingui/core/macro'; import { Trans } from '@lingui/react/macro'; import { PlusIcon } from 'lucide-react'; import { ChevronLeft } from 'lucide-react'; -import { Link, Outlet } from 'react-router'; +import { Link, Outlet, isRouteErrorResponse } from 'react-router'; import LogoIcon from '@documenso/assets/logo_icon.png'; import { useOptionalSession } from '@documenso/lib/client-only/providers/session'; @@ -16,6 +16,8 @@ import { BrandingLogo } from '~/components/general/branding-logo'; import { GenericErrorLayout } from '~/components/general/generic-error-layout'; import { appMetaTags } from '~/utils/meta'; +import type { Route } from './+types/_layout'; + export function meta() { return appMetaTags('Profile'); } @@ -96,7 +98,9 @@ export default function PublicProfileLayout() { ); } -export function ErrorBoundary() { +export function ErrorBoundary({ error }: Route.ErrorBoundaryProps) { + const errorCode = isRouteErrorResponse(error) ? error.status : 500; + const errorCodeMap = { 404: { subHeading: msg`404 Profile not found`, @@ -107,6 +111,7 @@ export function ErrorBoundary() { return ( diff --git a/packages/app-tests/e2e/api/v1/template-field-prefill.spec.ts b/packages/app-tests/e2e/api/v1/template-field-prefill.spec.ts index c0de8a7c1..e95bb1556 100644 --- a/packages/app-tests/e2e/api/v1/template-field-prefill.spec.ts +++ b/packages/app-tests/e2e/api/v1/template-field-prefill.spec.ts @@ -1,6 +1,6 @@ import { expect, test } from '@playwright/test'; -import { WEBAPP_BASE_URL } from '@documenso/lib/constants/app'; +import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; import { createApiToken } from '@documenso/lib/server-only/public-api/create-api-token'; import type { TCheckboxFieldMeta, TRadioFieldMeta } from '@documenso/lib/types/field-meta'; import { prisma } from '@documenso/prisma'; @@ -10,6 +10,8 @@ import { seedUser } from '@documenso/prisma/seed/users'; import { apiSignin } from '../../fixtures/authentication'; +const WEBAPP_BASE_URL = NEXT_PUBLIC_WEBAPP_URL(); + test.describe('Template Field Prefill API v1', () => { test('should create a document from template with prefilled fields', async ({ page, diff --git a/packages/app-tests/e2e/api/v2/template-field-prefill.spec.ts b/packages/app-tests/e2e/api/v2/template-field-prefill.spec.ts index 812c86f97..ee0053c01 100644 --- a/packages/app-tests/e2e/api/v2/template-field-prefill.spec.ts +++ b/packages/app-tests/e2e/api/v2/template-field-prefill.spec.ts @@ -1,6 +1,6 @@ import { expect, test } from '@playwright/test'; -import { WEBAPP_BASE_URL } from '@documenso/lib/constants/app'; +import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; import { createApiToken } from '@documenso/lib/server-only/public-api/create-api-token'; import type { TCheckboxFieldMeta, TRadioFieldMeta } from '@documenso/lib/types/field-meta'; import { prisma } from '@documenso/prisma'; @@ -10,6 +10,8 @@ import { seedUser } from '@documenso/prisma/seed/users'; import { apiSignin } from '../../fixtures/authentication'; +const WEBAPP_BASE_URL = NEXT_PUBLIC_WEBAPP_URL(); + test.describe('Template Field Prefill API v2', () => { test('should create a document from template with prefilled fields', async ({ page,