насколько я вижу `onMouseLeft`=`onMouseRight` кроме `openCell`/`flagCell`. Можно вынести в отдельную функцию и эти упростить