fix: parsing/saving issues on block/refs

This commit is contained in:
Peng Xiao
2022-07-22 10:29:24 +08:00
parent dc240de56b
commit 4d42877f3d
3 changed files with 28 additions and 17 deletions

View File

@@ -4,7 +4,8 @@
[frontend.db.model :as model]
[frontend.db.utils :as db-utils]
[frontend.modules.outliner.file :as outliner-file]
[frontend.state :as state]))
[frontend.state :as state]
[logseq.graph-parser.extract :refer [with-whiteboard-block-props]]))
;; (defn set-linked-page-or-block!
;; [page-or-block-id]
@@ -38,24 +39,13 @@
;; Use the block's id as the shape's id.
{:id uuid})))
(defn- get-shape-refs [shape]
(when (= "logseq-portal" (:type shape))
[(select-keys (model/get-page (:pageId shape)) [:db/id])]))
(defn- get-shape-text [shape]
(:text shape))
(defn- shape->block [shape page-name]
(let [properties shape
block {:block/uuid (uuid (:id properties))
:block/page {:block/name page-name}
:block/content "" ;; give it empty string since some block utility requires it
:block/properties properties}
refs (get-shape-refs shape)
content (get-shape-text shape)]
(merge block
(when refs {:block/refs refs})
(when content {:block/content content}))))
additional-props (with-whiteboard-block-props shape)]
(merge block additional-props)))
(defn- tldr-page->blocks-tx [page-name tldr-data]
(let [page-block {:block/name page-name
@@ -89,7 +79,7 @@
:name "page"
:shapes shapes})]})))
(defn page-name->tldr
(defn page-name->tldr
([page-name]
(page-name->tldr page-name nil))
([page-name shape-id]