page-input.js (886B)
1 const m = require("mithril"); 2 const input = require("../modules/input.js"); 3 const keyBoxes = require("./key-boxes.js"); 4 5 module.exports = () => { 6 let written = ""; 7 let blind = false; 8 let oninput = (c) => { 9 // clear input on "-" -> new bullet point / new thought 10 if (c == "-") written = ""; 11 else if (c == input.deletechar) 12 written = written.substring(0, written.length - 1) 13 else written += c; 14 }; 15 let blindhandler = (e) => { 16 if (e.key == input.blindkey) blind = !blind; 17 m.redraw(); 18 }; 19 return { 20 view: () => m("div", 21 m("div.inputTop", "> " + written), 22 m("div.inputBottom", m(keyBoxes, { 23 inputCallback: oninput, 24 keyCallback: blindhandler 25 })), 26 m(".blindOverlay", {class: blind? "" : "invisible"}) 27 ) 28 } 29 };