Switch to vite and preact

This commit is contained in:
Misode
2021-06-23 20:44:28 +02:00
parent e551b7ef75
commit 09c851914f
89 changed files with 6398 additions and 15531 deletions

View File

@@ -0,0 +1,21 @@
import { useEffect } from 'preact/hooks'
export function useOnHover(element: HTMLElement, hover: (x: number | undefined, y: number | undefined) => unknown) {
if (!element) return
const onMouseMove = (e: MouseEvent) => {
hover(e.offsetX, e.offsetY)
}
const onMouseLeave = () => {
hover(undefined, undefined)
}
useEffect(() => {
element.addEventListener('mousemove', onMouseMove)
element.addEventListener('mouseleave', onMouseLeave)
return () => {
element.removeEventListener('mousemove', onMouseMove)
element.removeEventListener('mouseleave', onMouseLeave)
}
}, [element])
}