web-api-hooks
Version:
Essential set of React Hooks for convenient Web API consumption.
19 lines (18 loc) • 452 B
JavaScript
import useMedia from './useMedia';
/**
* Tracks motion intensity preference of the user.
*
* @returns Preferred motion intensity.
*
* @example
* function Component() {
* const preferReducedMotion = useMotionPreference() === 'reduce';
* // ...
* }
*/
export default function useMotionPreference() {
const isReduce = useMedia('(prefers-reduced-motion: reduce)');
if (isReduce)
return 'reduce';
return 'no-preference';
}