/* IMPORT */ import useScheduler from '~/hooks/use_scheduler'; import type {Disposer, ObservableMaybe} from '~/types'; /* MAIN */ const useAnimationFrame = ( callback: ObservableMaybe ): Disposer => { return useScheduler ({ callback, once: true, cancel: cancelAnimationFrame, schedule: requestAnimationFrame }); }; /* EXPORT */ export default useAnimationFrame;