Added textarea and improved builder to return widget type