`ViewAdapter` is leaked as a global here.  This would be better:

```js
module.exports = ViewAdapter;

function ViewAdapter() {}
```