@intility/bifrost-react
Version:
React library for Intility's design system, Bifrost.
17 lines (16 loc) • 758 B
JavaScript
import useMediaQuery from "./useMediaQuery.js";
/**
* Hook to simulate CSS `var(--bf-animation-duration)`
* @param duration Optional animation duration in ms (default `200`)
* @returns `0` for users with `prefers-reduced-motion`, otherwise the specified duration (default `200`)
* @example
* // 0` for users with `prefers-reduced-motion`, otherwise 200
* const animationDuration = useAnimationDuration()
* @example
* // 0` for users with `prefers-reduced-motion`, otherwise 500
* const animationDuration = useAnimationDuration(500)
*/ const useAnimationDuration = (duration = 200)=>{
const prefersReducedMotion = useMediaQuery("(prefers-reduced-motion)");
return prefersReducedMotion ? 0 : duration;
};
export default useAnimationDuration;