👾 changes libraries types, reworked color palette

This commit is contained in:
alonso.torres 2020-03-26 14:19:27 +01:00
parent decd3e3443
commit 5cd8e85034
14 changed files with 193 additions and 128 deletions

View file

@ -3,7 +3,8 @@
[rumext.alpha :as mf]
[goog.object :as gobj]
[uxbox.main.ui.components.dropdown :refer [dropdown-container]]
[uxbox.util.uuid :as uuid]))
[uxbox.util.uuid :as uuid]
[uxbox.util.data :refer [classnames]]))
(mf/defc context-menu
{::mf/wrap-props false}
@ -13,12 +14,17 @@
(assert (vector? (gobj/get props "options")) "missing `options` prop")
(let [open? (gobj/get props "show")
options (gobj/get props "options")]
options (gobj/get props "options")
is-selectable (gobj/get props "selectable")
selected (gobj/get props "selected")]
(println "selected" selected)
(when open?
[:> dropdown-container props
[:div.context-menu {:class (when open? "is-open")}
[:div.context-menu {:class (classnames :is-open open?
:is-selectable is-selectable)}
[:ul.context-menu-items
(for [[action-name action-handler] options]
[:li.context-menu-item {:key action-name}
[:li.context-menu-item {:class (classnames :is-selected (and selected (= action-name selected)))
:key action-name}
[:a.context-menu-action {:on-click action-handler}
action-name]])]]])))