artseyio-typing-tutor/js/artsey-tutor.js

58 lines
1.9 KiB
JavaScript

let mappings = {
'key_q': [1, 0, 1, 1, 0, 0, 0, 0],
'key_w': [1, 0, 0, 1, 0, 0, 0, 0],
'key_u': [0, 0, 0, 0, 0, 1, 1, 0],
'key_p': [0, 0, 0, 0, 1, 0, 1, 1],
'key_d': [1, 1, 1, 0, 0, 0, 0, 0],
'key_f': [1, 1, 0, 0, 0, 0, 0, 0],
'key_g': [0, 1, 1, 0, 0, 0, 0, 0],
'key_h': [0, 0, 0, 0, 1, 0, 1, 0],
'key_j': [0, 0, 1, 1, 0, 0, 0, 0],
'key_k': [0, 0, 0, 0, 0, 1, 0, 1],
'key_l': [0, 0, 0, 0, 1, 1, 1, 0],
'key_z': [1, 1, 1, 1, 0, 0, 0, 0],
'key_x': [0, 1, 1, 1, 0, 0, 0, 0],
'key_c': [0, 0, 0, 1, 1, 0, 0, 0],
'key_v': [0, 1, 0, 1, 0, 0, 0, 0],
'key_b': [0, 0, 0, 0, 1, 0, 0, 1],
'key_n': [0, 0, 0, 0, 0, 0, 1, 1],
'key_m': [0, 0, 0, 0, 0, 1, 1, 1],
'key_space': [0, 0, 0, 0, 1, 1, 1, 1],
'key_enter': [1, 0, 0, 0, 1, 0, 0, 0],
'key_comma': [1, 0, 0, 0, 0, 0, 1, 0],
'key_period': [1, 0, 0, 0, 0, 1, 0, 0],
'key_backspace': [0, 1, 0, 0, 1, 0, 0, 0],
'key_apostrophe': [1, 0, 0, 0, 0, 1, 1, 0],
'key_exclamation': [0, 0, 1, 0, 0, 0, 1, 0]
}
function artsey_draw(key_config) {
let keys = $('.keyboard-key');
for (let i = 0; i < keys.length; i++) {
if (key_config[i] === 1)
$(keys[i]).css('background-color', 'black');
else
$(keys[i]).css('background-color', 'white');
}
}
function artsey_reset() {
let config = {'': [0, 0, 0, 0, 0, 0, 0, 0]};
artsey_draw(config);
$('#letterbox').text('');
}
const sleep = (delay) => new Promise((resolve) => setTimeout(resolve, delay))
let current_letter = '';
$(document).ready(async function () {
console.log("ready!");
for (let key in mappings) {
await sleep(1000);
console.log(key);
$('#text-to-type').text(key.split('_')[1].toLowerCase())
artsey_draw(mappings[key]);
}
//artsey_reset();
});