diff --git a/apps/client/src/features/page/types/page.types.ts b/apps/client/src/features/page/types/page.types.ts index 0bba09ff1..41cf689fa 100644 --- a/apps/client/src/features/page/types/page.types.ts +++ b/apps/client/src/features/page/types/page.types.ts @@ -12,6 +12,7 @@ export interface IPage { spaceId: string; workspaceId: string; isLocked: boolean; + isBase: boolean; lastUpdatedById: string; createdAt: Date; updatedAt: Date; diff --git a/apps/client/src/pages/page/page.tsx b/apps/client/src/pages/page/page.tsx index b4e3baa80..b6b7da3ce 100644 --- a/apps/client/src/pages/page/page.tsx +++ b/apps/client/src/pages/page/page.tsx @@ -13,6 +13,7 @@ import { IconAlertTriangle, IconFileOff } from "@tabler/icons-react"; import { Button } from "@mantine/core"; import { Link } from "react-router-dom"; import { ErrorBoundary } from "react-error-boundary"; +import { BaseTable } from "@/features/base/components/base-table"; const MemoizedFullEditor = React.memo(FullEditor); const MemoizedPageHeader = React.memo(PageHeader); const MemoizedHistoryModal = React.memo(HistoryModal); @@ -90,6 +91,18 @@ function PageContent({ pageSlug }: { pageSlug: string | undefined }) { return <>; } + if (page?.isBase) { + return ( +
+ + {`${page?.icon || ""} ${page?.title || t("untitled")}`} + + + +
+ ); + } + return ( page && (
diff --git a/apps/server/src/core/page/services/page.service.ts b/apps/server/src/core/page/services/page.service.ts index 2f0462f92..244bff8bf 100644 --- a/apps/server/src/core/page/services/page.service.ts +++ b/apps/server/src/core/page/services/page.service.ts @@ -289,6 +289,7 @@ export class PageService { 'parentPageId', 'spaceId', 'creatorId', + 'isBase', 'deletedAt', ]) .select((eb) => this.pageRepo.withHasChildren(eb)) diff --git a/apps/server/src/database/repos/page/page.repo.ts b/apps/server/src/database/repos/page/page.repo.ts index a35234f66..30137529c 100644 --- a/apps/server/src/database/repos/page/page.repo.ts +++ b/apps/server/src/database/repos/page/page.repo.ts @@ -38,6 +38,7 @@ export class PageRepo { 'spaceId', 'workspaceId', 'isLocked', + 'isBase', 'createdAt', 'updatedAt', 'deletedAt',