From 666ee01a018c476c4eaa9d2a7f47cafacca1b5cd Mon Sep 17 00:00:00 2001 From: fantasticit Date: Sat, 2 Apr 2022 17:57:30 +0800 Subject: [PATCH] feat: update IDocument --- packages/domains/lib/index.d.ts | 4 +- packages/domains/lib/models/comment.d.ts | 12 ++-- packages/domains/lib/models/document.d.ts | 15 ++--- packages/domains/lib/models/index.d.ts | 16 +++--- packages/domains/lib/models/message.d.ts | 4 +- packages/domains/lib/models/template.d.ts | 4 +- packages/domains/lib/models/wiki.d.ts | 4 +- packages/domains/lib/util.d.ts | 6 +- packages/domains/lib/util.js | 16 +++--- packages/domains/lib/util.js.map | 2 +- packages/domains/src/models/document.ts | 1 + .../server/src/services/document.service.ts | 56 +++++++------------ 12 files changed, 64 insertions(+), 76 deletions(-) diff --git a/packages/domains/lib/index.d.ts b/packages/domains/lib/index.d.ts index 93fa0482..beca895c 100644 --- a/packages/domains/lib/index.d.ts +++ b/packages/domains/lib/index.d.ts @@ -1,2 +1,2 @@ -export * from "./models"; -export * from "./util"; +export * from './models'; +export * from './util'; diff --git a/packages/domains/lib/models/comment.d.ts b/packages/domains/lib/models/comment.d.ts index c90794b1..45916b8b 100644 --- a/packages/domains/lib/models/comment.d.ts +++ b/packages/domains/lib/models/comment.d.ts @@ -1,12 +1,12 @@ -import { IUser } from "./user"; -import { IDocument } from "./document"; +import { IUser } from './user'; +import { IDocument } from './document'; export interface IComment { id: string; - parentCommentId?: IComment["id"]; - documentId: IDocument["id"]; - createUserId: IUser["id"]; + parentCommentId?: IComment['id']; + documentId: IDocument['id']; + createUserId: IUser['id']; createUser: IUser; - replyUserId?: IUser["id"]; + replyUserId?: IUser['id']; replyUser?: IUser; html: string; userAgent: string; diff --git a/packages/domains/lib/models/document.d.ts b/packages/domains/lib/models/document.d.ts index 2474aa31..7c94c09b 100644 --- a/packages/domains/lib/models/document.d.ts +++ b/packages/domains/lib/models/document.d.ts @@ -1,18 +1,19 @@ -import { IUser } from "./user"; -import { IWiki } from "./wiki"; +import { IUser } from './user'; +import { IWiki } from './wiki'; export declare enum DocumentStatus { private = "private", public = "public" } export interface IDocument { id: string; - wikiId: IWiki["id"]; + wikiId: IWiki['id']; isWikiHome: boolean; - createUserId: IUser["id"]; + createUserId: IUser['id']; createUser: IUser; - parentDocumentId?: IDocument["id"]; + parentDocumentId?: IDocument['id']; title: string; content: string; + state: Uint8Array; status: DocumentStatus; views: number; sharePassword?: string; @@ -22,8 +23,8 @@ export interface IDocument { } export interface IAuthority { id: string; - documentId: IDocument["id"]; - userId: IUser["id"]; + documentId: IDocument['id']; + userId: IUser['id']; readable: boolean; editable: boolean; } diff --git a/packages/domains/lib/models/index.d.ts b/packages/domains/lib/models/index.d.ts index 3a069d65..7f718fc3 100644 --- a/packages/domains/lib/models/index.d.ts +++ b/packages/domains/lib/models/index.d.ts @@ -1,8 +1,8 @@ -export * from "./user"; -export * from "./wiki"; -export * from "./document"; -export * from "./message"; -export * from "./template"; -export * from "./comment"; -export * from "./collector"; -export * from "./pagination"; +export * from './user'; +export * from './wiki'; +export * from './document'; +export * from './message'; +export * from './template'; +export * from './comment'; +export * from './collector'; +export * from './pagination'; diff --git a/packages/domains/lib/models/message.d.ts b/packages/domains/lib/models/message.d.ts index e44dce7f..7a55841c 100644 --- a/packages/domains/lib/models/message.d.ts +++ b/packages/domains/lib/models/message.d.ts @@ -1,7 +1,7 @@ -import { IUser } from "./user"; +import { IUser } from './user'; export interface IMessage { id: string; - userId: IUser["id"]; + userId: IUser['id']; title: string; message: string; url: string; diff --git a/packages/domains/lib/models/template.d.ts b/packages/domains/lib/models/template.d.ts index 50bf0c35..eba765fb 100644 --- a/packages/domains/lib/models/template.d.ts +++ b/packages/domains/lib/models/template.d.ts @@ -1,7 +1,7 @@ -import { IUser } from "./user"; +import { IUser } from './user'; export interface ITemplate { id: string; - createUserId: IUser["id"]; + createUserId: IUser['id']; createUser: IUser; title: string; content: string; diff --git a/packages/domains/lib/models/wiki.d.ts b/packages/domains/lib/models/wiki.d.ts index 1a2b6e06..65b68c26 100644 --- a/packages/domains/lib/models/wiki.d.ts +++ b/packages/domains/lib/models/wiki.d.ts @@ -1,4 +1,4 @@ -import { IUser } from "./user"; +import { IUser } from './user'; export declare enum WikiStatus { private = "private", public = "public" @@ -17,7 +17,7 @@ export interface IWiki { name: string; avatar: string; description: string; - createUserId: IUser["id"]; + createUserId: IUser['id']; createUser: IUser; status: WikiStatus; createdAt: Date; diff --git a/packages/domains/lib/util.d.ts b/packages/domains/lib/util.d.ts index 2e04dd2a..ddd39fc5 100644 --- a/packages/domains/lib/util.d.ts +++ b/packages/domains/lib/util.d.ts @@ -1,4 +1,4 @@ -import { WikiStatus, WikiUserRole, DocumentStatus, IWiki, IDocument } from "./models"; +import { WikiStatus, WikiUserRole, DocumentStatus, IWiki, IDocument } from './models'; export declare const WIKI_STATUS_LIST: { value: WikiStatus; label: string; @@ -12,6 +12,6 @@ export declare const DOCUMENT_STATUS: { label: string; }[]; export declare const getWikiStatusText: (wiki: IWiki) => string; -export declare const isPublicWiki: (currentStatus: IWiki["status"]) => boolean; +export declare const isPublicWiki: (currentStatus: IWiki['status']) => boolean; export declare const getWikiUserRoleText: (role: WikiUserRole) => string; -export declare const isPublicDocument: (currentStatus: IDocument["status"]) => boolean; +export declare const isPublicDocument: (currentStatus: IDocument['status']) => boolean; diff --git a/packages/domains/lib/util.js b/packages/domains/lib/util.js index 44b719d9..ca51ea6b 100644 --- a/packages/domains/lib/util.js +++ b/packages/domains/lib/util.js @@ -5,31 +5,31 @@ const models_1 = require("./models"); exports.WIKI_STATUS_LIST = [ { value: models_1.WikiStatus.private, - label: "私有", + label: '私有', }, { value: models_1.WikiStatus.public, - label: "公开", + label: '公开', }, ]; exports.WIKI_USER_ROLES = [ { - value: "admin", - label: "管理员", + value: 'admin', + label: '管理员', }, { - value: "normal", - label: "成员", + value: 'normal', + label: '成员', }, ]; exports.DOCUMENT_STATUS = [ { value: models_1.DocumentStatus.private, - label: "私有", + label: '私有', }, { value: models_1.DocumentStatus.public, - label: "公开", + label: '公开', }, ]; const getWikiStatusText = (wiki) => { diff --git a/packages/domains/lib/util.js.map b/packages/domains/lib/util.js.map index 07bb1a60..ad3334f1 100644 --- a/packages/domains/lib/util.js.map +++ b/packages/domains/lib/util.js.map @@ -1 +1 @@ -{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;AAAA,qCAMkB;AAKL,QAAA,gBAAgB,GAAG;IAC9B;QACE,KAAK,EAAE,mBAAU,CAAC,OAAO;QACzB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,mBAAU,CAAC,MAAM;QACxB,KAAK,EAAE,IAAI;KACZ;CACF,CAAC;AAKW,QAAA,eAAe,GAAG;IAC7B;QACE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,KAAK;KACb;IACD;QACE,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,IAAI;KACZ;CACF,CAAC;AAKW,QAAA,eAAe,GAAG;IAC7B;QACE,KAAK,EAAE,uBAAc,CAAC,OAAO;QAC7B,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,uBAAc,CAAC,MAAM;QAC5B,KAAK,EAAE,IAAI;KACZ;CACF,CAAC;AAOK,MAAM,iBAAiB,GAAG,CAAC,IAAW,EAAU,EAAE;IACvD,OAAO,wBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;AACrE,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAOK,MAAM,YAAY,GAAG,CAAC,aAA8B,EAAE,EAAE,CAC7D,aAAa,KAAK,mBAAU,CAAC,MAAM,CAAC;AADzB,QAAA,YAAY,gBACa;AAO/B,MAAM,mBAAmB,GAAG,CAAC,IAAkB,EAAE,EAAE;IACxD,OAAO,uBAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC;AAC7D,CAAC,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAOK,MAAM,gBAAgB,GAAG,CAAC,aAAkC,EAAE,EAAE,CACrE,aAAa,KAAK,uBAAc,CAAC,MAAM,CAAC;AAD7B,QAAA,gBAAgB,oBACa"} \ No newline at end of file +{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;AAAA,qCAAsF;AAKzE,QAAA,gBAAgB,GAAG;IAC9B;QACE,KAAK,EAAE,mBAAU,CAAC,OAAO;QACzB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,mBAAU,CAAC,MAAM;QACxB,KAAK,EAAE,IAAI;KACZ;CACF,CAAC;AAKW,QAAA,eAAe,GAAG;IAC7B;QACE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,KAAK;KACb;IACD;QACE,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,IAAI;KACZ;CACF,CAAC;AAKW,QAAA,eAAe,GAAG;IAC7B;QACE,KAAK,EAAE,uBAAc,CAAC,OAAO;QAC7B,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,uBAAc,CAAC,MAAM;QAC5B,KAAK,EAAE,IAAI;KACZ;CACF,CAAC;AAOK,MAAM,iBAAiB,GAAG,CAAC,IAAW,EAAU,EAAE;IACvD,OAAO,wBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;AACrE,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAOK,MAAM,YAAY,GAAG,CAAC,aAA8B,EAAE,EAAE,CAAC,aAAa,KAAK,mBAAU,CAAC,MAAM,CAAC;AAAvF,QAAA,YAAY,gBAA2E;AAO7F,MAAM,mBAAmB,GAAG,CAAC,IAAkB,EAAE,EAAE;IACxD,OAAO,uBAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC;AAC7D,CAAC,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAOK,MAAM,gBAAgB,GAAG,CAAC,aAAkC,EAAE,EAAE,CAAC,aAAa,KAAK,uBAAc,CAAC,MAAM,CAAC;AAAnG,QAAA,gBAAgB,oBAAmF"} \ No newline at end of file diff --git a/packages/domains/src/models/document.ts b/packages/domains/src/models/document.ts index b4672115..cb55e3ea 100644 --- a/packages/domains/src/models/document.ts +++ b/packages/domains/src/models/document.ts @@ -21,6 +21,7 @@ export interface IDocument { parentDocumentId?: IDocument['id']; title: string; content: string; + state: Uint8Array; status: DocumentStatus; views: number; sharePassword?: string; diff --git a/packages/server/src/services/document.service.ts b/packages/server/src/services/document.service.ts index b116d09a..a602066e 100644 --- a/packages/server/src/services/document.service.ts +++ b/packages/server/src/services/document.service.ts @@ -18,38 +18,26 @@ import { CreateDocumentDto } from '@dtos/create-document.dto'; import { UpdateDocumentDto } from '@dtos/update-document.dto'; import { ShareDocumentDto } from '@dtos/share-document.dto'; -const DOCUMENT_PLACEHOLDERS = [ - { - content: JSON.stringify({ - default: { - type: 'doc', - content: [ - { type: 'title', content: [{ type: 'text', text: '未命名文档' }] }, - { - type: 'paragraph', - attrs: { textAlign: 'left', indent: 0 }, - content: [{ type: 'text', text: '在此编辑正文...' }], - }, - ], - }, - }), - state: Buffer.from( - new Uint8Array([ - 3, 3, 221, 238, 169, 254, 11, 0, 40, 0, 150, 148, 219, 254, 3, 88, 6, 105, 110, 100, 101, 110, 116, 1, 125, 0, - 7, 0, 215, 168, 212, 201, 8, 1, 6, 4, 0, 221, 238, 169, 254, 11, 1, 15, 230, 156, 170, 229, 145, 189, 229, 144, - 141, 230, 150, 135, 230, 161, 163, 2, 215, 168, 212, 201, 8, 0, 0, 1, 71, 150, 148, 219, 254, 3, 0, 3, 5, 116, - 105, 116, 108, 101, 15, 150, 148, 219, 254, 3, 0, 1, 1, 7, 100, 101, 102, 97, 117, 108, 116, 1, 0, 23, 129, 150, - 148, 219, 254, 3, 0, 1, 0, 63, 199, 150, 148, 219, 254, 3, 0, 150, 148, 219, 254, 3, 24, 3, 9, 112, 97, 114, 97, - 103, 114, 97, 112, 104, 40, 0, 150, 148, 219, 254, 3, 88, 9, 116, 101, 120, 116, 65, 108, 105, 103, 110, 1, 119, - 4, 108, 101, 102, 116, 1, 0, 150, 148, 219, 254, 3, 88, 1, 0, 7, 71, 150, 148, 219, 254, 3, 90, 6, 1, 0, 150, - 148, 219, 254, 3, 98, 6, 132, 150, 148, 219, 254, 3, 104, 6, 229, 156, 168, 230, 173, 164, 129, 150, 148, 219, - 254, 3, 106, 7, 132, 150, 148, 219, 254, 3, 113, 6, 231, 188, 150, 232, 190, 145, 129, 150, 148, 219, 254, 3, - 115, 32, 132, 150, 148, 219, 254, 3, 147, 1, 9, 230, 173, 163, 230, 150, 135, 46, 46, 46, 2, 150, 148, 219, 254, - 3, 5, 0, 88, 90, 8, 99, 6, 107, 7, 116, 32, 215, 168, 212, 201, 8, 1, 0, 1, - ]) - ), - }, -]; +const EMPTY_DOCUMNENT = { + content: JSON.stringify({ + default: { + type: 'doc', + content: [{ type: 'title', content: [{ type: 'text', text: '未命名文档' }] }], + }, + }), + state: Buffer.from( + new Uint8Array([ + 1, 14, 204, 224, 154, 225, 13, 0, 7, 1, 7, 100, 101, 102, 97, 117, 108, 116, 3, 5, 116, 105, 116, 108, 101, 1, 0, + 204, 224, 154, 225, 13, 0, 1, 0, 1, 135, 204, 224, 154, 225, 13, 0, 3, 9, 112, 97, 114, 97, 103, 114, 97, 112, + 104, 40, 0, 204, 224, 154, 225, 13, 3, 6, 105, 110, 100, 101, 110, 116, 1, 125, 0, 40, 0, 204, 224, 154, 225, 13, + 3, 9, 116, 101, 120, 116, 65, 108, 105, 103, 110, 1, 119, 4, 108, 101, 102, 116, 0, 4, 71, 204, 224, 154, 225, 13, + 1, 6, 1, 0, 204, 224, 154, 225, 13, 10, 3, 132, 204, 224, 154, 225, 13, 13, 3, 230, 156, 170, 129, 204, 224, 154, + 225, 13, 14, 6, 132, 204, 224, 154, 225, 13, 20, 6, 229, 145, 189, 229, 144, 141, 129, 204, 224, 154, 225, 13, 22, + 5, 132, 204, 224, 154, 225, 13, 27, 6, 230, 150, 135, 230, 161, 163, 1, 204, 224, 154, 225, 13, 5, 1, 2, 6, 4, 11, + 3, 15, 6, 23, 5, + ]) + ), +}; @Injectable() export class DocumentService { @@ -322,9 +310,7 @@ export class DocumentService { isWikiHome, title: '未命名文档', index: maxIndex + 1, - // content: '', - // state: Buffer.from(new Uint8Array()), - ...DOCUMENT_PLACEHOLDERS[0], + ...EMPTY_DOCUMNENT, }; if (dto.templateId) {