diff --git a/deps/common/src/logseq/common/config.cljs b/deps/common/src/logseq/common/config.cljs index 5e946b2..05d355c 100644 --- a/deps/common/src/logseq/common/config.cljs +++ b/deps/common/src/logseq/common/config.cljs @@ -59,6 +59,7 @@ (defonce favorites-page-name "$$$favorites") (defonce views-page-name "$$$views") (defonce library-page-name "Library") +(defonce contents-page-name "Contents") (defonce quick-add-page-name "Quick add") (defonce recycle-page-name "Recycle") diff --git a/deps/db/src/logseq/db.cljs b/deps/db/src/logseq/db.cljs index 40aaec3..b26b147 100644 --- a/deps/db/src/logseq/db.cljs +++ b/deps/db/src/logseq/db.cljs @@ -577,6 +577,11 @@ [db] (get-built-in-page db common-config/library-page-name)) +(def contents? db-db/contents?) +(defn get-contents-page + [db] + (get-built-in-page db common-config/contents-page-name)) + (defn get-case-page "Case sensitive version of get-page. For use with DB graphs" [db page-name-or-uuid] diff --git a/deps/db/src/logseq/db/common/initial_data.cljs b/deps/db/src/logseq/db/common/initial_data.cljs index dbb9806..eaefa20 100644 --- a/deps/db/src/logseq/db/common/initial_data.cljs +++ b/deps/db/src/logseq/db/common/initial_data.cljs @@ -431,7 +431,7 @@ structured-datoms (get-structured-datoms db) user-datoms (get-all-user-datoms db) list-style-datoms (get-list-style-values db) - pages-datoms (let [contents-id (get-first-page-by-title db "Contents") + pages-datoms (let [contents-id (get-first-page-by-title db common-config/contents-page-name) capture-page-id (:db/id (db-db/get-built-in-page db common-config/quick-add-page-name)) views-id (get-first-page-by-title db common-config/views-page-name) recycle-id (get-first-page-by-title db "Recycle")] diff --git a/deps/db/src/logseq/db/frontend/db.cljs b/deps/db/src/logseq/db/frontend/db.cljs index b67461e..a756378 100644 --- a/deps/db/src/logseq/db/frontend/db.cljs +++ b/deps/db/src/logseq/db/frontend/db.cljs @@ -139,3 +139,11 @@ [page] (and (entity-util/built-in? page) (= common-config/library-page-name (:block/title page)))) + +(defn contents? + "Whether `page` is the built-in Contents page, the other hierarchical + root pages can be explicitly organized under (coexists with Library, + which remains the default root for namespaced pages)." + [page] + (and (entity-util/built-in? page) + (= common-config/contents-page-name (:block/title page)))) diff --git a/deps/db/src/logseq/db/sqlite/create_graph.cljs b/deps/db/src/logseq/db/sqlite/create_graph.cljs index baea292..07398c2 100644 --- a/deps/db/src/logseq/db/sqlite/create_graph.cljs +++ b/deps/db/src/logseq/db/sqlite/create_graph.cljs @@ -130,7 +130,7 @@ (def built-in-pages-names #{common-config/library-page-name common-config/quick-add-page-name - "Contents"}) + common-config/contents-page-name}) (defn- validate-tx-for-duplicate-idents [tx] (when-let [conflicting-idents diff --git a/src/main/frontend/components/right_sidebar.cljs b/src/main/frontend/components/right_sidebar.cljs index 636e0ca..3095783 100644 --- a/src/main/frontend/components/right_sidebar.cljs +++ b/src/main/frontend/components/right_sidebar.cljs @@ -25,6 +25,7 @@ [frontend.undo-redo.debug-ui :as undo-redo-debug-ui] [frontend.util :as util] [frontend.util.entity :as entity] + [logseq.common.config :as common-config] [logseq.shui.hooks :as hooks] [logseq.shui.ui :as shui] [medley.core :as medley] @@ -170,7 +171,7 @@ (db-async/