mirror of
https://github.com/withastro/astro.git
synced 2024-12-23 21:53:55 -05:00
17 lines
425 B
TypeScript
17 lines
425 B
TypeScript
|
function shim(callback: IdleRequestCallback, options?: IdleRequestOptions) {
|
||
|
const timeout = options?.timeout ?? 50;
|
||
|
const start = Date.now();
|
||
|
|
||
|
return setTimeout(function () {
|
||
|
callback({
|
||
|
didTimeout: false,
|
||
|
timeRemaining: function () {
|
||
|
return Math.max(0, timeout - (Date.now() - start));
|
||
|
},
|
||
|
});
|
||
|
}, 1);
|
||
|
}
|
||
|
|
||
|
const requestIdleCallback = window.requestIdleCallback || shim;
|
||
|
export default requestIdleCallback;
|