extending API to add various widgets