Vercel/src/utility/useSupportsHover.ts
2025-06-04 17:13:04 -05:00

20 lines
506 B
TypeScript

import { useState, useEffect } from 'react';
export default function useSupportsHover() {
const [supportsHover, setSupportsHover] = useState<boolean>();
useEffect(() => {
const mql = window.matchMedia('(hover: hover)');
setSupportsHover(mql.matches);
const listener = (e: MediaQueryListEvent) => {
setSupportsHover(e.matches);
};
mql.addEventListener('change', listener);
return () => mql.removeEventListener('change', listener);
}, []);
return supportsHover;
};