diff --git a/deps/graph-parser/src/logseq/graph_parser/extract.cljc b/deps/graph-parser/src/logseq/graph_parser/extract.cljc index f922f8940..bf73baad8 100644 --- a/deps/graph-parser/src/logseq/graph_parser/extract.cljc +++ b/deps/graph-parser/src/logseq/graph_parser/extract.cljc @@ -225,7 +225,11 @@ {:keys [pages blocks]} (gp-util/safe-read-string content) page-block (first pages) page-name (filepath->page-name file) - page-original-name (or (:block/original-name page-block) page-name) + page-original-name (-> (:block/original-name page-block) + (#(cond (nil? %) page-name + (= (gp-util/page-name-sanity-lc %) + (gp-util/page-name-sanity-lc page-name)) page-name + :else %))) page-entity (build-page-entity (:block/properties page-block) file page-name page-original-name nil options) page-block (merge page-block page-entity (when-not (:block/uuid page-block) {:block/uuid (d/squuid)})) blocks (->> blocks diff --git a/deps/graph-parser/test/logseq/graph_parser/extract_test.cljs b/deps/graph-parser/test/logseq/graph_parser/extract_test.cljs index 18ffa701e..1dee57072 100644 --- a/deps/graph-parser/test/logseq/graph_parser/extract_test.cljs +++ b/deps/graph-parser/test/logseq/graph_parser/extract_test.cljs @@ -74,11 +74,8 @@ :block/format :markdown}), :pages ({:block/format :markdown, - :block/original-name "Foo" :block/properties {:title "my whiteboard foo"}})}) -(extract/extract-whiteboard-edn "/whiteboards/foo.edn" (pr-str foo-edn) {}) - (deftest test-extract-whiteboard-edn [] (let [{:keys [pages blocks]} (extract/extract-whiteboard-edn "/whiteboards/foo.edn" (pr-str foo-edn) {}) diff --git a/deps/graph-parser/test/logseq/graph_parser_test.cljs b/deps/graph-parser/test/logseq/graph_parser_test.cljs index 845905446..e41e54754 100644 --- a/deps/graph-parser/test/logseq/graph_parser_test.cljs +++ b/deps/graph-parser/test/logseq/graph_parser_test.cljs @@ -15,7 +15,6 @@ :block/format :markdown}), :pages ({:block/format :markdown, - :block/original-name "Foo" :block/properties {:title "my whiteboard foo"}})}) (deftest parse-file @@ -57,18 +56,21 @@ (testing "parsing whiteboard page" (let [conn (ldb/start-conn)] - (graph-parser/parse-file conn "whiteboards/foo.edn" (pr-str foo-edn) {}) - (is (= {:block/name "foo" :block/file {:file/path "whiteboards/foo.edn"}} - (let [blocks (d/q '[:find (pull ?b [* {:block/parent - [:block/name - {:block/file - [:file/path]}]}]) - :in $ - :where [?b :block/content] [(missing? $ ?b :block/name)]] - @conn) - parent (:block/parent (ffirst blocks))] - parent)) - "parsed block in the whiteboard page has correct parent page")))) + (graph-parser/parse-file conn "/whiteboards/Foo.edn" (pr-str foo-edn) {}) + (let [blocks (d/q '[:find (pull ?b [* {:block/page + [:block/name + :block/original-name + {:block/file + [:file/path]}]}]) + :in $ + :where [?b :block/content] [(missing? $ ?b :block/name)]] + @conn) + parent (:block/page (ffirst blocks))] + (is (= {:block/name "foo" + :block/original-name "Foo" + :block/file {:file/path "/whiteboards/Foo.edn"}} + parent) + "parsed block in the whiteboard page has correct parent page"))))) (defn- test-property-order [num-properties] (let [conn (ldb/start-conn) diff --git a/src/main/frontend/handler/whiteboard.cljs b/src/main/frontend/handler/whiteboard.cljs index 1f8f0be82..c654800d6 100644 --- a/src/main/frontend/handler/whiteboard.cljs +++ b/src/main/frontend/handler/whiteboard.cljs @@ -54,10 +54,8 @@ (merge block additional-props))) (defn- tldr-page->blocks-tx [page-name tldr-data] - (let [original-page-name page-name - page-name (util/page-name-sanity-lc page-name) + (let [page-name (util/page-name-sanity-lc page-name) page-block {:block/name page-name - :block/original-name original-page-name :block/whiteboard? true :block/properties (dissoc tldr-data :shapes)} ;; todo: use get-paginated-blocks instead?