mirror of
https://github.com/edufeed-org/edufeed-web.git
synced 2025-12-09 16:24:34 +00:00
Add close icon to active filter bar
This commit is contained in:
parent
e792f324a8
commit
f560b89e62
1 changed files with 11 additions and 14 deletions
|
|
@ -107,19 +107,17 @@
|
||||||
|
|
||||||
;; TODO make filters configurable with a map
|
;; TODO make filters configurable with a map
|
||||||
|
|
||||||
(def filters
|
(def filters
|
||||||
[{:scheme "https://w3id.org/kim/hochschulfaechersystematik/scheme"
|
[{:scheme "https://w3id.org/kim/hochschulfaechersystematik/scheme"
|
||||||
:field :about
|
:field :about
|
||||||
:title "Fachsystematik"}
|
:title "Fachsystematik"}
|
||||||
{:scheme "https://w3id.org/kim/hcrt/scheme"
|
{:scheme "https://w3id.org/kim/hcrt/scheme"
|
||||||
:field :learningResourceType
|
:field :learningResourceType
|
||||||
:title "Typ"}
|
:title "Typ"}])
|
||||||
])
|
|
||||||
|
|
||||||
(defn filter-bar []
|
(defn filter-bar []
|
||||||
(let [concept-schemes (re-frame/subscribe
|
(let [concept-schemes (re-frame/subscribe
|
||||||
[::subs/concept-schemes (map :scheme filters)])]
|
[::subs/concept-schemes (map :scheme filters)])]
|
||||||
|
|
||||||
(re-frame/dispatch
|
(re-frame/dispatch
|
||||||
[::events/fetch-missing-concept-schemes
|
[::events/fetch-missing-concept-schemes
|
||||||
(->> @concept-schemes
|
(->> @concept-schemes
|
||||||
|
|
@ -134,13 +132,7 @@
|
||||||
^{:key (get-in @concept-schemes [(:scheme filter) :id])}
|
^{:key (get-in @concept-schemes [(:scheme filter) :id])}
|
||||||
[skos-multiselect-component [(get @concept-schemes (:scheme filter))
|
[skos-multiselect-component [(get @concept-schemes (:scheme filter))
|
||||||
(:field filter)
|
(:field filter)
|
||||||
(:title filter)]]))
|
(:title filter)]]))])))
|
||||||
#_(doall
|
|
||||||
(for [cs (keys @concept-schemes)]
|
|
||||||
^{:key (get-in @concept-schemes [cs :id])}
|
|
||||||
[skos-multiselect-component [(get @concept-schemes "https://w3id.org/kim/hcrt/scheme")
|
|
||||||
:learningResourceType
|
|
||||||
"Typ"]]))])))
|
|
||||||
|
|
||||||
(defn has-any-values?
|
(defn has-any-values?
|
||||||
"checks if a map has any values"
|
"checks if a map has any values"
|
||||||
|
|
@ -156,10 +148,15 @@
|
||||||
(defn active-filters []
|
(defn active-filters []
|
||||||
(let [active-filters (re-frame/subscribe [::subs/active-filters])]
|
(let [active-filters (re-frame/subscribe [::subs/active-filters])]
|
||||||
(when (has-any-values? @active-filters)
|
(when (has-any-values? @active-filters)
|
||||||
[:div
|
[:div {:class "my-2 flex flex-nowrap gap-2"}
|
||||||
(doall
|
(doall
|
||||||
(for [field (keys @active-filters)]
|
(for [field (keys (filter (fn [[_ v]] (seq v)) @active-filters))]
|
||||||
[:div {:class "badge badge-secondary"} "hello"]))])))
|
(for [concept (field @active-filters)]
|
||||||
|
^{:key (:id concept)} [:div {:class "flex flex-row badge badge-lg badge-secondary p-3 gap-1 cursor-default"}
|
||||||
|
[:span {:class ""} (-> concept :prefLabel :de)]
|
||||||
|
[:span {:on-click (fn [] (re-frame/dispatch [::events/toggle-concept [concept field]]))
|
||||||
|
:class "cursor-pointer"}
|
||||||
|
[icons/close-icon]]])))])))
|
||||||
|
|
||||||
(defn search-bar []
|
(defn search-bar []
|
||||||
(let [search-term (reagent/atom nil)
|
(let [search-term (reagent/atom nil)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue