summaryrefslogtreecommitdiffstats
path: root/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/vanilla-examples/es2015/src/app.js
blob: e65d9c56d1b38a99b7ef17b8024cba207983e889 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
'use strict';

let todo;
const setView = () => todo.controller.setView(document.location.hash);

class Todo {
    /**
     * Init new Todo List
     * @param  {string} The name of your list
     */
    constructor(name) {
        this.storage = new Store(name);
        this.model = new Model(this.storage);

        this.template = new Template();
        this.view = new View(this.template);

        this.controller = new Controller(this.model, this.view);
    }
}

$on(window, 'load', () => {
    todo = new Todo('todos-vanillajs');
    setView();
});

$on(window, 'hashchange', setView);