Jelajahi Sumber

enhance: namespace pages in page preview header (#6405)

* enhance: jump to namespace page in page preview header

* fix: hovering the mouse over namespace pages in the page preview header

* fix: code style

* enhance: use `split-namespace-pages` to get namespace pages

* Use var to better control ns feature

Co-authored-by: Gabriel Horner <[email protected]>
Giuseppe D'Andrea 3 tahun lalu
induk
melakukan
8fda23d2ea
1 mengubah file dengan 6 tambahan dan 5 penghapusan
  1. 6 5
      src/main/frontend/components/block.cljs

+ 6 - 5
src/main/frontend/components/block.cljs

@@ -643,13 +643,14 @@
                                                :font-weight    500
                                                :max-height     600
                                                :padding-bottom 64}}
-                                      (if (and (string? page-original-name) (string/includes? page-original-name "/"))
+                                      (if (and (string? page-original-name) (text/namespace-page? page-original-name))
                                         [:div.my-2
                                          (->>
-                                          (for [page (string/split page-original-name #"/")]
-                                            (when (and (string? page) page)
-                                              (page-reference false page {} nil)))
-                                          (interpose [:span.mx-2.opacity-30 "/"]))]
+                                          (for [namespace-page (gp-util/split-namespace-pages page-original-name)]
+                                            (when (and (string? namespace-page) namespace-page)
+                                              (let [label (second (gp-util/split-last model/ns-char namespace-page))]
+                                                (page-reference false namespace-page {:preview? true} label))))
+                                          (interpose [:span.mx-2.opacity-30 model/ns-char]))]
                                         [:h2.font-bold.text-lg (if (= page-name redirect-page-name)
                                                                  page-original-name
                                                                  [:span