Yuki Takei hai 1 ano
pai
achega
f3b6fc0d3b

+ 3 - 1
apps/app/src/server/models/revision.ts

@@ -34,7 +34,9 @@ export interface IRevisionModel extends Model<IRevisionDocument> {
 Schema.Types.String.checkRequired(v => typeof v === 'string');
 
 const revisionSchema = new Schema<IRevisionDocument, IRevisionModel>({
-  pageId: { type: String, required: true, index: true },
+  pageId: {
+    type: Types.ObjectId, ref: 'Page', required: true, index: true,
+  },
   body: {
     type: String,
     required: true,

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

@@ -1355,7 +1355,7 @@ class PageService implements IPageService {
     // Mapping to set to the body of the new revision
     const pageIdRevisionMapping = {};
     revisions.forEach((revision) => {
-      pageIdRevisionMapping[revision.pageId] = revision;
+      pageIdRevisionMapping[getIdForRef(revision.pageId)] = revision;
     });
 
     // key: oldPageId, value: newPageId
@@ -1410,7 +1410,7 @@ class PageService implements IPageService {
     // Mapping to set to the body of the new revision
     const pageIdRevisionMapping = {};
     revisions.forEach((revision) => {
-      pageIdRevisionMapping[revision.pageId] = revision;
+      pageIdRevisionMapping[getIdForRef(revision.pageId)] = revision;
     });
 
     // key: oldPageId, value: newPageId

+ 2 - 1
packages/core/src/interfaces/revision.ts

@@ -1,5 +1,6 @@
 import type { Ref } from './common';
 import type { HasObjectId } from './has-object-id';
+import type { IPage } from './page';
 import type { IUser } from './user';
 
 export const Origin = {
@@ -12,7 +13,7 @@ export type Origin = typeof Origin[keyof typeof Origin];
 export const allOrigin = Object.values(Origin);
 
 export type IRevision = {
-  pageId: string,
+  pageId: Ref<IPage>,
   body: string,
   author: Ref<IUser>,
   format: string,