@wordpress/priority-queue
Version:
Generic browser priority queue.
24 lines (19 loc) • 471 B
JavaScript
/**
* External dependencies
*/
import 'requestidlecallback';
/**
* @typedef {( timeOrDeadline: IdleDeadline | number ) => void} Callback
*/
/**
* @return {(callback: Callback) => void} RequestIdleCallback
*/
export function createRequestIdleCallback() {
if ( typeof window === 'undefined' ) {
return ( callback ) => {
setTimeout( () => callback( Date.now() ), 0 );
};
}
return window.requestIdleCallback;
}
export default createRequestIdleCallback();