@lifaon/rx-js-light
Version:
Blazing fast Observables
27 lines (26 loc) • 661 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createAnimationFrameLoop = void 0;
var create_animation_frame_1 = require("./create-animation-frame.cjs");
function createAnimationFrameLoop(callback) {
var running = true;
var abortAnimationFrame;
var loop = function () {
abortAnimationFrame = (0, create_animation_frame_1.createAnimationFrame)(function () {
callback();
if (running) {
loop();
}
});
};
loop();
return function () {
if (running) {
running = false;
abortAnimationFrame();
}
};
}
exports.createAnimationFrameLoop = createAnimationFrameLoop;