mirror of https://github.com/logseq/logseq
refactor: simplify dummy node
parent
9e1b5beb9d
commit
38b0ecae46
|
@ -613,7 +613,7 @@
|
||||||
|
|
||||||
(defn sort-by-left
|
(defn sort-by-left
|
||||||
[blocks parent]
|
[blocks parent]
|
||||||
;; (assert (= (count blocks) (count (set (map :block/left blocks)))) "Each block should have a different left node")
|
(assert (= (count blocks) (count (set (map :block/left blocks)))) "Each block should have a different left node")
|
||||||
(let [left->blocks (reduce (fn [acc b] (assoc acc (:db/id (:block/left b)) b)) {} blocks)]
|
(let [left->blocks (reduce (fn [acc b] (assoc acc (:db/id (:block/left b)) b)) {} blocks)]
|
||||||
(loop [block parent
|
(loop [block parent
|
||||||
result []]
|
result []]
|
||||||
|
|
|
@ -66,34 +66,20 @@
|
||||||
([blocks format default-option {:keys [journal? page-name]
|
([blocks format default-option {:keys [journal? page-name]
|
||||||
:or {journal? false}}]
|
:or {journal? false}}]
|
||||||
(let [format (or format (state/get-preferred-format) :markdown)
|
(let [format (or format (state/get-preferred-format) :markdown)
|
||||||
blocks (if (and journal?
|
|
||||||
(seq blocks)
|
|
||||||
(when-let [title (second (first (:block/title (first blocks))))]
|
|
||||||
(date/valid-journal-title? title)))
|
|
||||||
(rest blocks)
|
|
||||||
blocks)
|
|
||||||
blocks (vec blocks)]
|
blocks (vec blocks)]
|
||||||
(cond
|
(if (seq blocks)
|
||||||
(and (seq blocks)
|
|
||||||
(or (and (> (count blocks) 1)
|
|
||||||
(:block/pre-block? (first blocks)))
|
|
||||||
(and (>= (count blocks) 1)
|
|
||||||
(not (:block/pre-block? (first blocks))))))
|
|
||||||
blocks
|
blocks
|
||||||
|
(let [page-block (when page-name (db/entity [:block/name (string/lower-case page-name)]))
|
||||||
:else
|
|
||||||
(let [last-block (last blocks)
|
|
||||||
page-block (db/entity [:block/name (string/lower-case page-name)])
|
|
||||||
page-id {:db/id (:db/id page-block)}
|
page-id {:db/id (:db/id page-block)}
|
||||||
dummy (merge last-block
|
dummy (merge {:block/uuid (db/new-block-id)
|
||||||
{:block/uuid (db/new-block-id)
|
|
||||||
:block/left page-id
|
:block/left page-id
|
||||||
:block/parent page-id
|
:block/parent page-id
|
||||||
:block/title ""
|
:block/title ""
|
||||||
:block/content ""
|
:block/content ""
|
||||||
:block/format format}
|
:block/format format
|
||||||
|
:block/dummy? true}
|
||||||
default-option)]
|
default-option)]
|
||||||
(conj blocks dummy))))))
|
[dummy])))))
|
||||||
|
|
||||||
(defn filter-blocks
|
(defn filter-blocks
|
||||||
[repo ref-blocks filters group-by-page?]
|
[repo ref-blocks filters group-by-page?]
|
||||||
|
|
|
@ -1520,13 +1520,14 @@
|
||||||
(let [opts {:key :block/change
|
(let [opts {:key :block/change
|
||||||
:data blocks}]
|
:data blocks}]
|
||||||
(db/refresh repo opts)
|
(db/refresh repo opts)
|
||||||
(let [blocks (map
|
(let [blocks (doall
|
||||||
|
(map
|
||||||
(fn [block]
|
(fn [block]
|
||||||
(when-let [id (gobj/get block "id")]
|
(when-let [id (gobj/get block "id")]
|
||||||
(when-let [block (gdom/getElement id)]
|
(when-let [block (gdom/getElement id)]
|
||||||
(dom/add-class! block "selected noselect")
|
(dom/add-class! block "selected noselect")
|
||||||
block)))
|
block)))
|
||||||
blocks-dom-nodes)]
|
blocks-dom-nodes))]
|
||||||
(state/set-selection-blocks! blocks)))))
|
(state/set-selection-blocks! blocks)))))
|
||||||
|
|
||||||
(gdom/getElement "date-time-picker")
|
(gdom/getElement "date-time-picker")
|
||||||
|
|
Loading…
Reference in New Issue