import { Icon } from '@src/ui/components/Icon'; import cx from 'classnames'; import React, { useState } from 'react'; interface ButtonProps { children?: JSX.Element | string; icon?: string; name?: string; disabled?: boolean; active?: boolean; tooltip?: string; onClick(); } export const Button = (props: ButtonProps) => { const [hover, setHover] = useState(false); const [isTouch, setIsTouch] = useState(false); const events = { onMouseEnter: () => { if (isTouch) return; setHover(true); }, onMouseLeave: () => setHover(false), onTouchStart: () => { setIsTouch(true); setHover(true); }, onTouchEnd: () => setHover(false), onTouchCancel: () => setHover(false), onClick: () => { setIsTouch(false); props.onClick(); }, }; return ( ); };