[changed] wrap every react component in a factory before calling it