Files
Webklar.com/node_modules/react-smooth/es6/setRafTimeout.js
Basilosaurusrex f027651f9b main repo
2025-11-24 18:09:40 +01:00

19 lines
583 B
JavaScript

function safeRequestAnimationFrame(callback) {
if (typeof requestAnimationFrame !== 'undefined') requestAnimationFrame(callback);
}
export default function setRafTimeout(callback) {
var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
var currTime = -1;
var shouldUpdate = function shouldUpdate(now) {
if (currTime < 0) {
currTime = now;
}
if (now - currTime > timeout) {
callback(now);
currTime = -1;
} else {
safeRequestAnimationFrame(shouldUpdate);
}
};
requestAnimationFrame(shouldUpdate);
}