From e50a9b4e11d2fc9d1873b6b350b7e2db6977e2d7 Mon Sep 17 00:00:00 2001 From: Daniel <845765@qq.com> Date: Sat, 3 Jun 2023 17:05:33 +0800 Subject: [PATCH] :art: Add more file formats supporting snapshots comparing https://github.com/siyuan-note/siyuan/issues/8438 --- app/src/history/diff.ts | 4 ++-- kernel/api/repo.go | 8 ++++---- kernel/model/repository.go | 14 +++++++------- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/app/src/history/diff.ts b/app/src/history/diff.ts index 797b3498a..c105520a4 100644 --- a/app/src/history/diff.ts +++ b/app/src/history/diff.ts @@ -75,7 +75,7 @@ const renderCompare = (app: App, element: HTMLElement) => { textElement.previousElementSibling.classList.remove("fn__none"); textElement.classList.add("fn__none"); leftElement.lastElementChild.classList.add("fn__none"); - } else if (response.data.isLargeDoc) { + } else if (response.data.isProtyleDoc) { textElement.value = response.data.content; textElement.classList.remove("fn__none"); leftElement.lastElementChild.classList.add("fn__none"); @@ -103,7 +103,7 @@ const renderCompare = (app: App, element: HTMLElement) => { textElement.previousElementSibling.classList.remove("fn__none"); textElement.classList.add("fn__none"); rightElement.lastElementChild.classList.add("fn__none"); - } else if (response.data.isLargeDoc) { + } else if (response.data.isProtyleDoc) { textElement.value = response.data.content; textElement.classList.remove("fn__none"); rightElement.lastElementChild.classList.add("fn__none"); diff --git a/kernel/api/repo.go b/kernel/api/repo.go index 938bdc609..0b82f82e7 100644 --- a/kernel/api/repo.go +++ b/kernel/api/repo.go @@ -36,7 +36,7 @@ func openRepoSnapshotDoc(c *gin.Context) { } id := arg["id"].(string) - content, isLargeDoc, updated, err := model.OpenRepoSnapshotDoc(id) + content, isProtyleDoc, updated, err := model.OpenRepoSnapshotDoc(id) if nil != err { ret.Code = -1 ret.Msg = err.Error() @@ -44,9 +44,9 @@ func openRepoSnapshotDoc(c *gin.Context) { } ret.Data = map[string]interface{}{ - "content": content, - "isLargeDoc": isLargeDoc, - "updated": updated, + "content": content, + "isProtyleDoc": isProtyleDoc, + "updated": updated, } } diff --git a/kernel/model/repository.go b/kernel/model/repository.go index 5a48765e5..e7bc520fd 100644 --- a/kernel/model/repository.go +++ b/kernel/model/repository.go @@ -71,7 +71,7 @@ type TypeCount struct { Count int `json:"count"` } -func OpenRepoSnapshotDoc(fileID string) (content string, isLargeDoc bool, updated int64, err error) { +func OpenRepoSnapshotDoc(fileID string) (content string, isProtyleDoc bool, updated int64, err error) { if 1 > len(Conf.Repo.Key) { err = errors.New(Conf.Language(26)) return @@ -97,13 +97,13 @@ func OpenRepoSnapshotDoc(fileID string) (content string, isLargeDoc bool, update if strings.HasSuffix(file.Path, ".sy") { luteEngine := NewLute() var snapshotTree *parse.Tree - isLargeDoc, snapshotTree, err = parseTreeInSnapshot(data, luteEngine) + isProtyleDoc, snapshotTree, err = parseTreeInSnapshot(data, luteEngine) if nil != err { logging.LogErrorf("parse tree from snapshot file [%s] failed", fileID) return } - if !isLargeDoc { + if !isProtyleDoc { renderTree := &parse.Tree{Root: &ast.Node{Type: ast.NodeDocument}} var unlinks []*ast.Node @@ -133,7 +133,7 @@ func OpenRepoSnapshotDoc(fileID string) (content string, isLargeDoc bool, update } luteEngine.RenderOptions.ProtyleContenteditable = false - if isLargeDoc { + if isProtyleDoc { util.PushMsg(Conf.Language(36), 5000) formatRenderer := render.NewFormatRenderer(snapshotTree, luteEngine.RenderOptions) content = gulu.Str.FromBytes(formatRenderer.Render()) @@ -141,7 +141,7 @@ func OpenRepoSnapshotDoc(fileID string) (content string, isLargeDoc bool, update content = luteEngine.Tree2BlockDOM(snapshotTree, luteEngine.RenderOptions) } } else { - isLargeDoc = true + isProtyleDoc = true if strings.HasSuffix(file.Path, ".json") { content = gulu.Str.FromBytes(data) } else { @@ -306,8 +306,8 @@ func parseTitleInSnapshot(fileID string, repo *dejavu.Repo, luteEngine *lute.Lut return } -func parseTreeInSnapshot(data []byte, luteEngine *lute.Lute) (isLargeDoc bool, tree *parse.Tree, err error) { - isLargeDoc = 1024*1024*1 <= len(data) +func parseTreeInSnapshot(data []byte, luteEngine *lute.Lute) (isProtyleDoc bool, tree *parse.Tree, err error) { + isProtyleDoc = 1024*1024*1 <= len(data) tree, err = filesys.ParseJSONWithoutFix(data, luteEngine.ParseOptions) if nil != err { return