From b92f75135f16322ee05cf731c3395a2ffefd0834 Mon Sep 17 00:00:00 2001 From: Peng Xiao Date: Sun, 7 Aug 2022 16:22:17 +0800 Subject: [PATCH] feat: whiteboard dashboard link counts --- src/main/frontend/components/whiteboard.cljs | 30 ++++++++++++++------ src/main/frontend/components/whiteboard.css | 4 +++ 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/src/main/frontend/components/whiteboard.cljs b/src/main/frontend/components/whiteboard.cljs index 5101c01736..0047815c1c 100644 --- a/src/main/frontend/components/whiteboard.cljs +++ b/src/main/frontend/components/whiteboard.cljs @@ -40,11 +40,31 @@ (when generate-preview (generate-preview tldr)))) +(rum/defc whiteboard-references + [name] + (let [uuid (or (parse-uuid name) (:block/uuid (whiteboard-handler/get-whiteboard-entity name))) + [show set-show] (rum/use-state false)] + [:div.ml-2 + [:button.border.text-sm.bg-gray-500.text-white.px-2 {:on-click (fn [] (set-show not))} "references"] + (when show (reference/block-linked-references uuid))])) + (rum/defc page-refs-count < rum/static [page-name] (let [page-entity (model/get-page page-name) + block-uuid (:block/uuid page-entity) refs-count (count (:block/_refs page-entity))] - [:a.open-page-ref-link refs-count])) + (if (> refs-count 0) + (ui/tippy {:in-editor? true + :html (fn [] [:div.mx-2 (reference/block-linked-references block-uuid)]) + :interactive true + :delay [100, 500] + :position "bottom" + :distance 10 + :popperOptions {:modifiers {:preventOverflow + {:enabled true + :boundariesElement "viewport"}}}} + [:div.open-page-ref-link refs-count]) + [:div.open-page-ref-link refs-count]))) (defn- get-page-display-name [page-name] @@ -136,14 +156,6 @@ (for [n (range empty-cards)] [:div.dashboard-card.dashboard-bg-card {:key n}])]]])) -(rum/defc whiteboard-references - [name] - (let [uuid (or (parse-uuid name) (:block/uuid (whiteboard-handler/get-whiteboard-entity name))) - [show set-show] (rum/use-state false)] - [:div.ml-2 - [:button.border.text-sm.bg-gray-500.text-white.px-2 {:on-click (fn [] (set-show not))} "references"] - (when show (reference/block-linked-references uuid))])) - (rum/defc whiteboard-page [name block-id] [:div.absolute.w-full.h-full.whiteboard-page diff --git a/src/main/frontend/components/whiteboard.css b/src/main/frontend/components/whiteboard.css index 949acd31d4..66e50e51b0 100644 --- a/src/main/frontend/components/whiteboard.css +++ b/src/main/frontend/components/whiteboard.css @@ -84,3 +84,7 @@ color: var(--ls-primary-text-color); vertical-align: baseline; } + +.open-page-ref-link:hover { + filter: brightness(0.9); +} \ No newline at end of file