enhance: command panel icons and styles

This commit is contained in:
Konstantinos Kaloutas
2022-09-14 15:47:00 +03:00
parent 130b26021c
commit a237444f99
2 changed files with 65 additions and 17 deletions

View File

@@ -62,11 +62,11 @@
[:p {:class "m-0"} elements]))))))
(rum/defc search-result-item
[type content]
[:.text-sm.font-medium.flex.items-baseline
[:.text-xs.rounded.border.mr-2.px-1 {:title type}
(get type 0)]
content])
[{:keys [icon content class]}]
[:.search-result {:class class}
[:.search-result-icon {:title icon}
(ui/icon icon {:extension? (not= icon "file")})]
[:.self-center content]])
(rum/defc block-search-result-item
[repo uuid format content q search-mode]
@@ -191,6 +191,14 @@
nil)
(state/close-modal!))
(defn- create-item-render
[type label name]
(search-result-item
{:icon type
:class "highlight"
:content [:div.text.font-bold (str label ": ")
[:span.ml-1 name]]}))
(defn- search-item-render
[search-q {:keys [type data alias]}]
(let [search-mode (state/get-search-mode)
@@ -201,22 +209,22 @@
[:b search-q]
:new-page
[:div.text.font-bold (str (t :new-page) ": ")
[:span.ml-1 (str "\"" (string/trim search-q) "\"")]]
(create-item-render "new-page" (t :new-page) (str "\"" (string/trim search-q) "\""))
:new-whiteboard
[:div.text.font-bold (str (t :new-whiteboard) ": ")
[:span.ml-1 (str "\"" (string/trim search-q) "\"")]]
(create-item-render "new-whiteboard" (t :new-whiteboard) (str "\"" (string/trim search-q) "\""))
:page
[:span {:data-page-ref data}
(when alias
(let [target-original-name (model/get-page-original-name alias)]
[:span.mr-2.text-sm.font-medium.mb-2 (str "Alias -> " target-original-name)]))
(search-result-item (if (model/whiteboard-page? data) "Whiteboard" "Page") (highlight-exact-query data search-q))]
(search-result-item {:icon (if (model/whiteboard-page? data) "whiteboard" "page")
:content (highlight-exact-query data search-q)})]
:file
(search-result-item "File" (highlight-exact-query data search-q))
(search-result-item {:icon "file"
:content (highlight-exact-query data search-q)})
:block
(let [{:block/keys [page uuid]} data ;; content here is normalized
@@ -226,10 +234,11 @@
block (model/query-block-by-uuid uuid)
content (:block/content block)]
[:span {:data-block-ref uuid}
(search-result-item "Block" (if block
(block-search-result-item repo uuid format content search-q search-mode)
(do (log/error "search result with non-existing uuid: " data)
(str "Cache is outdated. Please click the 'Re-index' button in the graph's dropdown menu."))))])
(search-result-item {:icon "block"
:content (if block
(block-search-result-item repo uuid format content search-q search-mode)
(do (log/error "search result with non-existing uuid: " data)
(str "Cache is outdated. Please click the 'Re-index' button in the graph's dropdown menu.")))})])
nil)]))
@@ -360,7 +369,8 @@
svg/search
[:span.ml-2 data]]
:page (when-let [original-name (model/get-page-original-name data)] ;; might be block reference
(search-result-item "Page" original-name))
(search-result-item {:icon "page"
:content original-name}))
nil))}))])
(defn default-placeholder
@@ -439,4 +449,4 @@
[:p.font-medium.tx-sm (str (count (:blocks search-result)) " " (t :search/items))]
[:div#search-wrapper.relative.w-full.text-gray-400.focus-within:text-gray-600
(when-not (string/blank? search-q)
(search-auto-complete search-result search-q true))]]]))
(search-auto-complete search-result search-q true))]]]))