This issue covers the remastering of the drop-down component , and includes things like the introduction of keydown, click and close events.
As we need to reference the DOM element itself, we need to use some underlying javascript APIs to get this done, and so we will need to interop at some point. To add event listeners to items we need to make sure that those items are already rendered and part of the web page, so doing something like this wouldn't work:
(into [:ul {:id "dropdown--options" :tabindex "0"}]
(map (fn [{:keys [id label]}]
(let [unique-id (str "dropdown--item--" id)]
[:li {:id unique-id