mirror of https://github.com/logseq/logseq
chore: introduce type icon
parent
7a975ac322
commit
f0471bf902
|
@ -43,34 +43,6 @@
|
||||||
|
|
||||||
.search-result {
|
.search-result {
|
||||||
@apply text-sm font-medium flex items-baseline;
|
@apply text-sm font-medium flex items-baseline;
|
||||||
|
|
||||||
|
|
||||||
&.highlight .search-result-icon {
|
|
||||||
color: var(--ls-selection-text-color);
|
|
||||||
border-color: var(--ls-selection-background-color);
|
|
||||||
|
|
||||||
&:before {
|
|
||||||
opacity: 0.5;
|
|
||||||
background: var(--ls-selection-background-color);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-result-icon {
|
|
||||||
@apply text-xs text-center flex items-center justify-center rounded border mr-2 relative;
|
|
||||||
|
|
||||||
width: 1.5rem;
|
|
||||||
height: 1.5rem;
|
|
||||||
flex-shrink: 0;
|
|
||||||
border-color: transparent;
|
|
||||||
overflow: hidden;
|
|
||||||
color: var(--ls-secondary-text-color);
|
|
||||||
|
|
||||||
&:before {
|
|
||||||
@apply block absolute inset-0 ;
|
|
||||||
background: var(--ls-primary-background-color);
|
|
||||||
content: "";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -62,10 +62,9 @@
|
||||||
[:p {:class "m-0"} elements]))))))
|
[:p {:class "m-0"} elements]))))))
|
||||||
|
|
||||||
(rum/defc search-result-item
|
(rum/defc search-result-item
|
||||||
[{:keys [icon content class]}]
|
[icon content]
|
||||||
[:.search-result {:class class}
|
[:.search-result
|
||||||
[:.search-result-icon {:title icon}
|
(ui/type-icon icon)
|
||||||
(ui/icon icon {:extension? (not= icon "file")})]
|
|
||||||
[:.self-center content]])
|
[:.self-center content]])
|
||||||
|
|
||||||
(rum/defc block-search-result-item
|
(rum/defc block-search-result-item
|
||||||
|
@ -194,10 +193,11 @@
|
||||||
(defn- create-item-render
|
(defn- create-item-render
|
||||||
[icon label name]
|
[icon label name]
|
||||||
(search-result-item
|
(search-result-item
|
||||||
{:icon icon
|
{:name icon
|
||||||
:class "highlight"
|
:class "highlight"
|
||||||
:content [:div.text.font-bold (str label ": ")
|
:extension? true}
|
||||||
[:span.ml-1 name]]}))
|
[:div.text.font-bold (str label ": ")
|
||||||
|
[:span.ml-1 name]]))
|
||||||
|
|
||||||
(defn- search-item-render
|
(defn- search-item-render
|
||||||
[search-q {:keys [type data alias]}]
|
[search-q {:keys [type data alias]}]
|
||||||
|
@ -219,12 +219,15 @@
|
||||||
(when alias
|
(when alias
|
||||||
(let [target-original-name (model/get-page-original-name 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)]))
|
[:span.mr-2.text-sm.font-medium.mb-2 (str "Alias -> " target-original-name)]))
|
||||||
(search-result-item {:icon (if (model/whiteboard-page? data) "whiteboard" "page")
|
(search-result-item {:name (if (model/whiteboard-page? data) "whiteboard" "page")
|
||||||
:content (highlight-exact-query data search-q)})]
|
:extension? true
|
||||||
|
:title (t (if (model/whiteboard-page? data) :search-item/whiteboard :search-item/page))}
|
||||||
|
(highlight-exact-query data search-q))]
|
||||||
|
|
||||||
:file
|
:file
|
||||||
(search-result-item {:icon "file"
|
(search-result-item {:name "file"
|
||||||
:content (highlight-exact-query data search-q)})
|
:title (t :search-item/file)}
|
||||||
|
(highlight-exact-query data search-q))
|
||||||
|
|
||||||
:block
|
:block
|
||||||
(let [{:block/keys [page uuid]} data ;; content here is normalized
|
(let [{:block/keys [page uuid]} data ;; content here is normalized
|
||||||
|
@ -234,11 +237,13 @@
|
||||||
block (model/query-block-by-uuid uuid)
|
block (model/query-block-by-uuid uuid)
|
||||||
content (:block/content block)]
|
content (:block/content block)]
|
||||||
[:span {:data-block-ref uuid}
|
[:span {:data-block-ref uuid}
|
||||||
(search-result-item {:icon "block"
|
(search-result-item {:name "block"
|
||||||
:content (if block
|
:title (t :search-item/block)
|
||||||
|
:extension? true}
|
||||||
|
(if block
|
||||||
(block-search-result-item repo uuid format content search-q search-mode)
|
(block-search-result-item repo uuid format content search-q search-mode)
|
||||||
(do (log/error "search result with non-existing uuid: " data)
|
(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.")))})])
|
(str "Cache is outdated. Please click the 'Re-index' button in the graph's dropdown menu."))))])
|
||||||
|
|
||||||
nil)]))
|
nil)]))
|
||||||
|
|
||||||
|
@ -369,8 +374,9 @@
|
||||||
svg/search
|
svg/search
|
||||||
[:span.ml-2 data]]
|
[:span.ml-2 data]]
|
||||||
:page (when-let [original-name (model/get-page-original-name data)] ;; might be block reference
|
:page (when-let [original-name (model/get-page-original-name data)] ;; might be block reference
|
||||||
(search-result-item {:icon "page"
|
(search-result-item {:name "page"
|
||||||
:content original-name}))
|
:extension? true}
|
||||||
|
original-name))
|
||||||
nil))}))])
|
nil))}))])
|
||||||
|
|
||||||
(defn default-placeholder
|
(defn default-placeholder
|
||||||
|
|
|
@ -241,13 +241,16 @@
|
||||||
:class "new-page-link"
|
:class "new-page-link"
|
||||||
:options {:on-click #((close-sidebar-on-mobile!)
|
:options {:on-click #((close-sidebar-on-mobile!)
|
||||||
(state/pub-event! [:go/search]))}
|
(state/pub-event! [:go/search]))}
|
||||||
:icon (ui/icon "page" {:extension? true})}
|
:icon (ui/type-icon {:name "new-page"
|
||||||
|
:class "highlight"
|
||||||
|
:extension? true})}
|
||||||
{:title (t :left-side-bar/new-whiteboard)
|
{:title (t :left-side-bar/new-whiteboard)
|
||||||
:class "new-whiteboard-link"
|
:class "new-whiteboard-link"
|
||||||
:options {:on-click #((close-sidebar-on-mobile!)
|
:options {:on-click #((close-sidebar-on-mobile!)
|
||||||
(whiteboard/create-new-whiteboard!))}
|
(whiteboard/create-new-whiteboard!))}
|
||||||
|
:icon (ui/type-icon {:name "new-whiteboard"
|
||||||
:icon (ui/icon "whiteboard" {:extension? true})}])
|
:class "highlight"
|
||||||
|
:extension? true})}])
|
||||||
{}))
|
{}))
|
||||||
|
|
||||||
(rum/defc sidebar-nav
|
(rum/defc sidebar-nav
|
||||||
|
|
|
@ -287,10 +287,6 @@
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: calc(100% + 6px);
|
left: calc(100% + 6px);
|
||||||
}
|
}
|
||||||
|
|
||||||
i {
|
|
||||||
@apply text-xs rounded border mr-2 w-5 h-5 text-center;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#create-button {
|
#create-button {
|
||||||
|
|
|
@ -45,6 +45,10 @@
|
||||||
:search/result-for "Search result for "
|
:search/result-for "Search result for "
|
||||||
:search/items "items"
|
:search/items "items"
|
||||||
:search/page-names "Search page names"
|
:search/page-names "Search page names"
|
||||||
|
:search-item/whiteboard "Whiteboard"
|
||||||
|
:search-item/page "Page"
|
||||||
|
:search-item/file "File"
|
||||||
|
:search-item/block "Block"
|
||||||
:help/context-menu "Block context menu"
|
:help/context-menu "Block context menu"
|
||||||
:help/fold-unfold "Fold/unfold blocks (when not in edit mode)"
|
:help/fold-unfold "Fold/unfold blocks (when not in edit mode)"
|
||||||
:help/markdown-syntax "Markdown syntax"
|
:help/markdown-syntax "Markdown syntax"
|
||||||
|
|
|
@ -930,6 +930,12 @@
|
||||||
(if extension? "tie tie" "ti ti"))}
|
(if extension? "tie tie" "ti ti"))}
|
||||||
(dissoc opts :class :extension?))]))
|
(dissoc opts :class :extension?))]))
|
||||||
|
|
||||||
|
(rum/defc type-icon
|
||||||
|
[{:keys [name class title extension?]}]
|
||||||
|
[:.type-icon {:class class
|
||||||
|
:title title}
|
||||||
|
(icon name {:extension? extension?})])
|
||||||
|
|
||||||
(rum/defc with-shortcut < rum/reactive
|
(rum/defc with-shortcut < rum/reactive
|
||||||
< {:key-fn (fn [key pos] (str "shortcut-" key pos))}
|
< {:key-fn (fn [key pos] (str "shortcut-" key pos))}
|
||||||
[shortcut-key position content]
|
[shortcut-key position content]
|
||||||
|
|
|
@ -352,3 +352,35 @@ html.is-mobile {
|
||||||
.bg-quaternary {
|
.bg-quaternary {
|
||||||
background-color: var(--ls-quaternary-background-color);
|
background-color: var(--ls-quaternary-background-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.type-icon {
|
||||||
|
@apply text-xs text-center flex items-center justify-center rounded border mr-2 relative;
|
||||||
|
|
||||||
|
width: 1.5rem;
|
||||||
|
height: 1.5rem;
|
||||||
|
flex-shrink: 0;
|
||||||
|
border-color: var(--ls-primary-background-color);
|
||||||
|
overflow: hidden;
|
||||||
|
color: var(--ls-primary-text-color);
|
||||||
|
|
||||||
|
.ti,
|
||||||
|
.tie {
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:before {
|
||||||
|
@apply block absolute inset-0 ;
|
||||||
|
background: var(--ls-primary-background-color);
|
||||||
|
content: " ";
|
||||||
|
}
|
||||||
|
|
||||||
|
&.highlight {
|
||||||
|
color: var(--ls-selection-text-color);
|
||||||
|
border-color: var(--ls-selection-background-color);
|
||||||
|
|
||||||
|
&:before {
|
||||||
|
opacity: 0.5;
|
||||||
|
background: var(--ls-selection-background-color);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue