Procházet zdrojové kódy

:art: 数据历史文档支持只读可视化预览 https://github.com/siyuan-note/siyuan/issues/5735

Liang Ding před 2 roky
rodič
revize
5d403e3505
2 změnil soubory, kde provedl 6 přidání a 2 odebrání
  1. 3 1
      kernel/api/history.go
  2. 3 1
      kernel/model/history.go

+ 3 - 1
kernel/api/history.go

@@ -121,7 +121,7 @@ func getDocHistoryContent(c *gin.Context) {
 	if nil != k {
 		keyword = k.(string)
 	}
-	content, isLargeDoc, err := model.GetDocHistoryContent(historyPath, keyword)
+	id, rootID, content, isLargeDoc, err := model.GetDocHistoryContent(historyPath, keyword)
 	if nil != err {
 		ret.Code = -1
 		ret.Msg = err.Error()
@@ -129,6 +129,8 @@ func getDocHistoryContent(c *gin.Context) {
 	}
 
 	ret.Data = map[string]interface{}{
+		"id":         id,
+		"rootID":     rootID,
 		"content":    content,
 		"isLargeDoc": isLargeDoc,
 	}

+ 3 - 1
kernel/model/history.go

@@ -141,7 +141,7 @@ func ClearWorkspaceHistory() (err error) {
 	return
 }
 
-func GetDocHistoryContent(historyPath, keyword string) (content string, isLargeDoc bool, err error) {
+func GetDocHistoryContent(historyPath, keyword string) (id, rootID, content string, isLargeDoc bool, err error) {
 	if !gulu.File.IsExist(historyPath) {
 		return
 	}
@@ -160,6 +160,8 @@ func GetDocHistoryContent(historyPath, keyword string) (content string, isLargeD
 		os.RemoveAll(historyPath)
 		return
 	}
+	id = historyTree.Root.ID
+	rootID = historyTree.Root.ID
 
 	if !isLargeDoc {
 		renderTree := &parse.Tree{Root: &ast.Node{Type: ast.NodeDocument}}