mirror of https://github.com/logseq/logseq
parent
dd7460f198
commit
20c527a3d9
|
@ -71,12 +71,12 @@
|
|||
(remove-level-space-aux! text block-pattern space? trim-left?)))))
|
||||
|
||||
(defn namespace-page?
|
||||
[p]
|
||||
(and (string? p)
|
||||
(string/includes? p "/")
|
||||
(not (string/starts-with? p "../"))
|
||||
(not (string/starts-with? p "./"))
|
||||
(not (gp-util/url? p))))
|
||||
[page-name]
|
||||
(and (string? page-name)
|
||||
(string/includes? page-name "/")
|
||||
(not (string/starts-with? page-name "../"))
|
||||
(not (string/starts-with? page-name "./"))
|
||||
(not (gp-util/url? page-name))))
|
||||
|
||||
(defn parse-non-string-property-value
|
||||
"Return parsed non-string property value or nil if none is found"
|
||||
|
|
|
@ -10,31 +10,34 @@
|
|||
[rum.core :as rum]
|
||||
[frontend.util :as util]))
|
||||
|
||||
(defn get-relation
|
||||
(defn- get-relation
|
||||
"Get all parent pages along the namespace hierarchy path.
|
||||
If there're aliases, only use the first namespaced alias."
|
||||
[page]
|
||||
(when-let [page (or (text/get-nested-page-name page) page)]
|
||||
(when (or (text/namespace-page? page)
|
||||
(:block/_namespace (db/entity [:block/name (util/page-name-sanity-lc page)])))
|
||||
(let [repo (state/get-current-repo)
|
||||
namespace-pages (db/get-namespace-pages repo page)
|
||||
parent-routes (db-model/get-page-namespace-routes repo page)
|
||||
pages (->> (concat namespace-pages parent-routes)
|
||||
(distinct)
|
||||
(sort-by :block/name)
|
||||
(map (fn [page]
|
||||
(or (:block/original-name page) (:block/name page))))
|
||||
(map #(string/split % "/")))
|
||||
page-namespace (db-model/get-page-namespace repo page)
|
||||
page-namespace (util/get-page-original-name page-namespace)]
|
||||
(cond
|
||||
(seq pages)
|
||||
pages
|
||||
(let [repo (state/get-current-repo)
|
||||
aliases (db/get-page-alias-names repo page)
|
||||
all-page-names (conj aliases page)]
|
||||
(when-let [page (first (filter text/namespace-page? all-page-names))]
|
||||
(let [namespace-pages (db/get-namespace-pages repo page)
|
||||
parent-routes (db-model/get-page-namespace-routes repo page)
|
||||
pages (->> (concat namespace-pages parent-routes)
|
||||
(distinct)
|
||||
(sort-by :block/name)
|
||||
(map (fn [page]
|
||||
(or (:block/original-name page) (:block/name page))))
|
||||
(map #(string/split % "/")))
|
||||
page-namespace (db-model/get-page-namespace repo page)
|
||||
page-namespace (util/get-page-original-name page-namespace)]
|
||||
(cond
|
||||
(seq pages)
|
||||
pages
|
||||
|
||||
page-namespace
|
||||
[(string/split page-namespace "/")]
|
||||
page-namespace
|
||||
[(string/split page-namespace "/")]
|
||||
|
||||
:else
|
||||
nil)))))
|
||||
:else
|
||||
nil))))))
|
||||
|
||||
(rum/defc structures
|
||||
[page]
|
||||
|
|
Loading…
Reference in New Issue