tastejs/todomvc — pull request #739 by cburgmer (2013-12-04 09:58:38+00:00)
Title: VanillaJS refactoring

I'd like to merge a major refactoring back into main for the VanillaJS example.

The refactor has the main goal to abstract the DOM away from the controller to simplify controller testing. However a few fixes are included on the way.

The list of changes:

- A new view object takes care of rendering and event handling
- The controller now only includes the business logic
- Jasmine tests for the controller
- The former `view` has been renamed to `template`
- Boolean values for storing the complete status internally.
- Fix ESC key handling in Chrome/Safari

I believe the code is now in a much cleaner state, and the changes provide a good example how to test the controller logic without any need to handle the DOM. There are more simplifications possible that I'd might want to take on later.

The switch from `0` and `1` to boolean values for the complete state clears up the code but breaks backwards compatibility with existing data stored in LocalStorage.