I don't like this `element.firstElementChild`, this looks hacky.

How about getting a "infoBlockParentSelector" in renderOpts, and here, we would do: `element.querySelector(infoBlockParentSelector).appendChild(block)` ?

(could be a good idea to check if the querySelector returns null ;) )