import * as WelcomeActions from '../../actions/welcome/welcome.actions'; let dispatch; let initials = [ { initial: 'A', active: true }, { initial: 'A', active: false }, { initial: 'A', active: false } ]; let active = 0; let code; const InitialsCtrl = { setDispatch: (d) => dispatch = d, keydown: function(e) { switch (e.keyCode) { case 13: case 32: break; case 37: active--; if (active === -1) { active = initials.length - 1; } this.updateInitials(); break; case 38: code = initials[active].initial.charCodeAt(0); code--; if (code === 64) { code = 90; } initials[active].initial = String.fromCharCode(code); this.updateInitials(); break; case 39: active++; if (active === initials.length) { active = 0; } this.updateInitials(); break; case 40: code = initials[active].initial.charCodeAt(0); code++; if (code === 91) { code = 65; } initials[active].initial = String.fromCharCode(code); this.updateInitials(); break; } if (e.keyCode >= 65 && e.keyCode <= 90) { initials[active].initial = String.fromCharCode(e.keyCode); if (active < initials.length - 1) { active++; } this.updateInitials(); } }, updateInitials: () => { initials = initials.map((v) => { v.active = false; return v; }); initials[active].active = true; dispatch(WelcomeActions.updateInitials(initials)); }, updateScores: (scores) => { // [ // { initials: "ABA", score: "219283", rank: "1" }, // { initials: "ABA", score: "107112", rank: "2" }, // { initials: "ABA", score: "81091", rank: "3" }, // { initials: "ABA", score: "67747", rank: "4" }, // { initials: "ABA", score: "9283", rank: "5" }, // { initials: "ABA", score: "928", rank: "6" } // ]; // localStorage.setItem(SETTINGS.LOCAL_STORAGE_KEY, scores); } }; export default InitialsCtrl;