Sid Gifari File Manager
🏠 Root
/
home
/
genremedia08
/
musicjukebox.overlookedtracks.com
/
common
/
resources
/
client
/
utils
/
dom
/
Editing: create-ref-loop.ts
export function createRafLoop(callback: () => void) { let id: number | undefined; function start() { // Time updates are already in progress. if (!isUndefined(id)) return; loop(); } function loop() { id = window.requestAnimationFrame(function rafLoop() { if (isUndefined(id)) return; callback(); loop(); }); } function stop() { if (isNumber(id)) window.cancelAnimationFrame(id); id = undefined; } return { start, stop, }; } function isUndefined(value: unknown): value is undefined { return typeof value === 'undefined'; } function isNumber(value: any): value is number { return typeof value === 'number' && !Number.isNaN(value); }
Save
Cancel