mirror of
https://github.com/logseq/logseq.git
synced 2026-06-01 19:01:22 +00:00
fix: custom query transform should support pages too
This commit is contained in:
@@ -1584,6 +1584,25 @@
|
||||
{:style {:margin-top "0.25rem"
|
||||
:margin-left "0.25rem"}})
|
||||
|
||||
;; page list
|
||||
(and (seq result)
|
||||
(:page/name (first result)))
|
||||
[:ol
|
||||
(for [{:page/keys [name original-name] :as page-entity} result]
|
||||
[:li
|
||||
[:a {:href (rfe/href :page {:name name})
|
||||
:on-click (fn [e]
|
||||
(util/stop e)
|
||||
(if (gobj/get e "shiftKey")
|
||||
(state/sidebar-add-block!
|
||||
(state/get-current-repo)
|
||||
(:db/id page-entity)
|
||||
:page
|
||||
{:page page-entity})
|
||||
(route-handler/redirect! {:to :page
|
||||
:path-params {:name name}})))}
|
||||
(or original-name name)]])]
|
||||
|
||||
(seq result) ;TODO: table
|
||||
(let [result (->>
|
||||
(for [record result]
|
||||
|
||||
@@ -69,24 +69,26 @@
|
||||
(let [repo (state/get-current-repo)
|
||||
result (db-utils/seq-flatten query-result)
|
||||
block? (:block/uuid (first result))]
|
||||
(if block?
|
||||
(let [result (if (seq remove-blocks)
|
||||
(let [remove-blocks (set remove-blocks)]
|
||||
(remove (fn [h]
|
||||
(contains? remove-blocks (:block/uuid h)))
|
||||
result))
|
||||
result)
|
||||
result (some->> result
|
||||
(db-utils/with-repo repo)
|
||||
(model/with-block-refs-count repo)
|
||||
(model/sort-blocks))]
|
||||
(if-let [result-transform (:result-transform q)]
|
||||
(if-let [f (sci/eval-string (pr-str result-transform))]
|
||||
(try
|
||||
(sci/call-fn f result)
|
||||
(catch js/Error e
|
||||
(log/error :sci/call-error e)
|
||||
result))
|
||||
result)
|
||||
(db-utils/group-by-page result)))
|
||||
result)))
|
||||
(let [result (if block?
|
||||
(let [result (if (seq remove-blocks)
|
||||
(let [remove-blocks (set remove-blocks)]
|
||||
(remove (fn [h]
|
||||
(contains? remove-blocks (:block/uuid h)))
|
||||
result))
|
||||
result)]
|
||||
(some->> result
|
||||
(db-utils/with-repo repo)
|
||||
(model/with-block-refs-count repo)
|
||||
(model/sort-blocks)))
|
||||
result)]
|
||||
(if-let [result-transform (:result-transform q)]
|
||||
(if-let [f (sci/eval-string (pr-str result-transform))]
|
||||
(try
|
||||
(sci/call-fn f result)
|
||||
(catch js/Error e
|
||||
(log/error :sci/call-error e)
|
||||
result))
|
||||
result)
|
||||
(if block?
|
||||
(db-utils/group-by-page result)
|
||||
result)))))
|
||||
|
||||
Reference in New Issue
Block a user