2 createTask: function (description: string) {
3 const task = document.createElement("div");
4 task.appendChild(document.createTextNode(description));
5 task.setAttribute("tabindex", "0");
9 addTask: function (description: string) {
10 document.body.appendChild(this.createTask(description));
13 moveCursor: function (offset: number) {
14 var active = document.activeElement;
15 if (offset === 1 && active) {
16 active = active.nextElementSibling;
18 if (offset === -1 && active) {
19 active = active.previousElementSibling;
21 if (active && active instanceof HTMLElement) active.focus();
25 function handleKey(event: any) {
26 if (event.target.tagName !== "INPUT") {
27 if (event.key == "j") Model.moveCursor(1);
28 if (event.key == "k") Model.moveCursor(-1);
32 function browserCreateTask(form: any) {
33 Model.addTask(form.taskName.value);
34 form.taskName.value = "";
38 function browserInit() {
39 document.body.addEventListener("keydown", handleKey, { capture: false });