mainej/headlessui-reagent

Transition causes "Assert failed: Invalid Hiccup form: [nil ..."

Closed this issue · 2 comments

I've copied people, person-by-id and listbox-example into my own project and it causes the following error:

Uncaught Error: Assert failed: Invalid Hiccup form: [nil {:leave "transition ease-in duration-100", :leave-from "opacity-100", :leave-to "opacity-0"} [G__33906 {:class "absolute w-full py-1 mt-1 overflow-auto text-base bg-white rounded-md shadow-lg max-h-60 ring-1 ring-black ring-opacity-5 focus:outline-none sm:text-sm"} ([G__33906 {:value 1, :class #object[Function]} #object[Function]] [G__33906 {:value 2, :class #object[Function]} #object[Function]] [G__33906 {:value 3, :class #object[Function]} #object[Function]] [G__33906 {:value 4, :class #object[Function]} #object[Function]] [G__33906 {:value 5, :class #object[Function]} #object[Function]] [G__33906 {:value 6, :class #object[Function]} #object[Function]])]]
 (in G__33906)
(valid-tag? tag)
    reagent$impl$template$vec_to_elem                  template.cljs:277
    reagent$impl$template$as_element                   template.cljs:294
    reagent$impl$protocols$Compiler$as_element$arity$2 template.cljs:315
    reagent$impl$protocols$as_element                  protocols.cljs:6
    make_element                                       template.cljs:140
    3 core.cljs:5688
    2 cljs.core.js:20602

I can't figure out why it works in the example but not when the code is copy pasted into my project.
My project also uses Shadow-cljs version 2.17.3 and Reagent 1.1.0.

The listbox-example works fine when I remove the ui//transition wrapping of the options.

🤔 I updated Shadow-cljs to 2.17.5 and also did a npm update... now it seems to work.

If I figure out exactly what triggered the above error, I'll post here. For now, I'll just close the issue again :-D

works fine when I remove the ui/transition

That's odd... If you figure out how to reproduce it, please report back.