Explorar o código

fix: update IPageService to use IPageInfoBasic for constructBasicPageInfo method

Shun Miyazawa hai 3 meses
pai
achega
4136d3c560

+ 2 - 9
apps/app/src/server/service/page/index.ts

@@ -10,6 +10,7 @@ import type {
   IGrantedGroup,
   IGrantedGroup,
   IPage,
   IPage,
   IPageInfo,
   IPageInfo,
+  IPageInfoBasic,
   IPageInfoExt,
   IPageInfoExt,
   IPageInfoForEmpty,
   IPageInfoForEmpty,
   IPageInfoForEntity,
   IPageInfoForEntity,
@@ -3269,15 +3270,7 @@ class PageService implements IPageService {
   constructBasicPageInfo(
   constructBasicPageInfo(
     page: HydratedDocument<PageDocument>,
     page: HydratedDocument<PageDocument>,
     isGuestUser?: boolean,
     isGuestUser?: boolean,
-  ):
-    | Omit<
-        IPageInfoForEmpty,
-        'bookmarkCount' | 'isDeletable' | 'isAbleToDeleteCompletely'
-      >
-    | Omit<
-        IPageInfoForEntity,
-        'bookmarkCount' | 'isDeletable' | 'isAbleToDeleteCompletely'
-      > {
+  ): IPageInfoBasic {
     const isMovable = isGuestUser ? false : isMovablePage(page.path);
     const isMovable = isGuestUser ? false : isMovablePage(page.path);
     const pageId = page._id.toString();
     const pageId = page._id.toString();
 
 

+ 2 - 9
apps/app/src/server/service/page/page-service.ts

@@ -4,6 +4,7 @@ import type {
   IDataWithRequiredMeta,
   IDataWithRequiredMeta,
   IGrantedGroup,
   IGrantedGroup,
   IPage,
   IPage,
+  IPageInfoBasic,
   IPageInfoExt,
   IPageInfoExt,
   IPageInfoForEmpty,
   IPageInfoForEmpty,
   IPageInfoForEntity,
   IPageInfoForEntity,
@@ -80,15 +81,7 @@ export interface IPageService {
   constructBasicPageInfo(
   constructBasicPageInfo(
     page: HydratedDocument<PageDocument>,
     page: HydratedDocument<PageDocument>,
     isGuestUser?: boolean,
     isGuestUser?: boolean,
-  ):
-    | Omit<
-        IPageInfoForEmpty,
-        'bookmarkCount' | 'isDeletable' | 'isAbleToDeleteCompletely'
-      >
-    | Omit<
-        IPageInfoForEntity,
-        'bookmarkCount' | 'isDeletable' | 'isAbleToDeleteCompletely'
-      >;
+  ): IPageInfoBasic;
   normalizeAllPublicPages(): Promise<void>;
   normalizeAllPublicPages(): Promise<void>;
   canDelete(
   canDelete(
     page: PageDocument,
     page: PageDocument,

+ 13 - 0
packages/core/src/interfaces/page.ts

@@ -170,6 +170,19 @@ export const isIPageInfoForEntity = (
   return isIPageInfo(pageInfo) && pageInfo.isEmpty === false;
   return isIPageInfo(pageInfo) && pageInfo.isEmpty === false;
 };
 };
 
 
+export type IPageInfoBasic =
+  | Omit<
+      IPageInfoForEmpty,
+      | 'bookmarkCount'
+      | 'isDeletable'
+      | 'isAbleToDeleteCompletely'
+      | 'isBookmarked'
+    >
+  | Omit<
+      IPageInfoForEntity,
+      'bookmarkCount' | 'isDeletable' | 'isAbleToDeleteCompletely'
+    >;
+
 export const isIPageInfoForOperation = (
 export const isIPageInfoForOperation = (
   // biome-ignore lint/suspicious/noExplicitAny: ignore
   // biome-ignore lint/suspicious/noExplicitAny: ignore
   pageInfo: any | undefined,
   pageInfo: any | undefined,