fix: set parent page

This commit is contained in:
Tienson Qin
2025-03-27 21:40:18 +08:00
parent 2bb667fe91
commit b9c385d2e3
3 changed files with 25 additions and 16 deletions

View File

@@ -159,7 +159,7 @@
(hooks/use-effect!
(fn []
(p/let [repo (state/get-current-repo)
properties (db-async/<db-based-get-all-properties repo)
properties (db-async/db-based-get-all-properties repo)
classes (->> (db-model/get-all-classes repo)
(remove ldb/built-in?))]
(set-classes! classes)

View File

@@ -661,11 +661,7 @@
(conj (:block/uuid block))) ; break cycle
options (if (ldb/class? block)
(model/get-all-classes repo)
(when (ldb/internal-page? block)
(cond->>
(->> (model/get-all-pages repo)
(filter ldb/internal-page?)
(remove ldb/built-in?)))))
result)
excluded-options (remove (fn [e] (contains? exclude-ids (:block/uuid e))) options)]
excluded-options)
@@ -817,14 +813,27 @@
class?
(conj (frontend.db/entity :logseq.class/Tag)))
parent-property? (= (:db/ident property) :logseq.property/parent)]
(when (and (not parent-property?) (seq non-root-classes))
;; effect runs once
(hooks/use-effect!
(fn []
;; effect runs once
(hooks/use-effect!
(fn []
(cond
(and parent-property? (not (ldb/class? block))
(ldb/internal-page? block))
(p/let [result (db-async/<get-tag-pages repo (:db/id (db/entity :logseq.class/Page)))
result' (->> result
(remove ldb/built-in?))]
(set-result! result'))
parent-property?
nil
(seq non-root-classes)
(p/let [result (p/all (map (fn [class] (db-async/<get-tag-objects repo (:db/id class))) non-root-classes))
result' (distinct (apply concat result))]
(set-result! result')))
[]))
(set-result! result'))))
[])
(select-node property opts' result)))
(rum/defcs select < rum/reactive db-mixins/query

View File

@@ -51,7 +51,7 @@
(p/let [templates (<get-all-templates repo)]
(get templates name))))
(defn <db-based-get-all-properties
(defn db-based-get-all-properties
"Return seq of all property names except for private built-in properties."
[graph & {:keys [remove-built-in-property? remove-non-queryable-built-in-property?]
:or {remove-built-in-property? true
@@ -80,7 +80,7 @@
[& {:as opts}]
(when-let [graph (state/get-current-repo)]
(if (config/db-based-graph? graph)
(<db-based-get-all-properties graph opts)
(db-based-get-all-properties graph opts)
(p/let [properties (file-async/<file-based-get-all-properties graph)
hidden-properties (set (map name (property-util/hidden-properties)))]
(remove #(hidden-properties (:block/title %)) properties)))))
@@ -274,8 +274,8 @@
(defn <get-tag-pages
[graph tag-id]
(<q graph {:transact-db? true}
'[:find [(pull ?page [:db/id :block/uuid :block/name :block/title :block/created-at :block/updated-at])]
(<q graph {:transact-db? false}
'[:find [(pull ?page [:db/id :block/uuid :block/name :block/title :block/created-at :block/updated-at]) ...]
:in $ ?tag-id
:where
[?page :block/tags ?tag-id]