import React, { useEffect } from 'react'; interface Props { running: boolean; speed: number; width: number; height: number; reset: () => void; toggle: () => void; download: () => void; updateCellSize: (f: (size: number) => number) => void; updateDimensions: (dimensions: { width?: number; height?: number }) => void; updateSpeed: (speed: number) => void; upload: () => void; } const Controls = (props: Props) => { const { running, speed, toggle, updateSpeed, width, height, reset, updateCellSize, updateDimensions, download, upload, } = props; const goSlower = () => { updateSpeed(speed + 100); }; const goFaster = () => { if (speed > 100) { updateSpeed(speed - 100); } }; const getSmaller = () => { updateCellSize((size) => size - 1); }; const getBigger = () => { updateCellSize((size) => size + 1); }; useEffect(() => { document.addEventListener('keyup', (e) => { if (e.key === ' ') { toggle(); } }); }, [toggle]); return (
); }; export default Controls;