This is where I think this falls down. How can render only accept a type. If it's a search, it feels like it needs data. If the data is passed in via the setAttrs, then why both with type at this point at all? There seems to be a place here for contradictory data to get passed to the view on accident. The decision point is split between this type and the search info in the state metadata vs just one source of truth.