{"_id":"request-animation-frame-timeout","_rev":"6-617cc06d03efe68e573c9fa6483e5bc5","name":"request-animation-frame-timeout","dist-tags":{"latest":"2.0.4"},"versions":{"1.0.0":{"name":"request-animation-frame-timeout","version":"1.0.0","description":"setTimeout() via requestAnimationFrame()","main":"commonjs/index.js","module":"modules/index.js","scripts":{"build:clean":"rimraf ./commonjs/**/* ./modules/**/*","build:commonjs":"cross-env babel ./source --out-dir ./commonjs --source-maps --ignore *.test.js","build:es6":"cross-env BABEL_ENV=es6 babel ./source --out-dir ./modules --source-maps --ignore *.test.js","build":"npm-run-all build:clean build:commonjs build:es6","prepublish":"npm-run-all build"},"repository":{"type":"git","url":"git+ssh://git@gitlab.com/catamphetamine/request-animation-frame-timeout.git"},"author":{"name":"@catamphetamine"},"license":"MIT","bugs":{"url":"https://gitlab.com/catamphetamine/request-animation-frame-timeout/issues"},"keywords":["requestAnimationFrame","setTimeout","timer"],"homepage":"https://gitlab.com/catamphetamine/request-animation-frame-timeout#readme","devDependencies":{"@babel/cli":"^7.11.6","@babel/core":"^7.11.6","@babel/preset-env":"^7.11.5","cross-env":"^7.0.2","npm-run-all":"^4.1.5","rimraf":"^3.0.2"},"dependencies":{"raf":"^3.4.1"},"_id":"request-animation-frame-timeout@1.0.0","_nodeVersion":"12.6.0","_npmVersion":"6.10.0","dist":{"integrity":"sha512-jN+M/AWPCwtWIijtnhLvzolo9JASyK719b+m4+5IrSy5GJ4tApkQr8LxOUu12cidA1HOaDjbCKNOFhFY9eF1Gg==","shasum":"0622c11901abd0e5b0ce346c5aaafc1ef28a3a3d","tarball":"https://registry.npmjs.org/request-animation-frame-timeout/-/request-animation-frame-timeout-1.0.0.tgz","fileCount":8,"unpackedSize":7216,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWbsqCRA9TVsSAnZWagAALUcP/RMFpfPbfZl+Olxj22Mt\n5HXolKKBknicEjEu/FgMKOPzQl0c3w4zbd54HGg9Wluhl0l5a/K5L34Coh2n\nXSdDowPwPvAs5l9SuqFz4F/7/C5BjtwzpW0lXxSCwupr6N5oU+H7v7zONrfd\nkEjaxUSw+npFJ8rGI70uLZAQsJN0uCzYtSw+2/BBTvDtrgUifkZQKr7qhkH2\nzBUsHWl9NSZYHJysVSQ5w5yHDoiXlq6xRyEukSGuMhEhz59cNqTwuwfET9BZ\nrZzu7bx7BSKucBbM04qR8trxwikqMULmwTzly8G8EmZVqZ1T0ucR8bvx12uk\n4GEzzBMcpKL8LVCaEx5s7LufH6OxVHO+HjRbgqTuHrWBciDXV2wzJlNx3naO\n6GkoE/c4xhs6MOJhPWwOnKJP59yM+TvNDk4gjSPPr2/nq8bcw5FtxSOWLP2b\nMV/Nt9KpsScs9M7A04uDGQXUFKJylKCz78aAan8DMbKwIOD1HO4eJR3lUy/t\n2J0pyq9KoxAdswMbpeB+A223dqV7e0hvWpSDaezNfUaOw3VoOX+p5SD5iBiV\nQdn5SPIGXVAHls9ZAdSYDnO6FxH9ePqbxOlWHcbBQ+GH2p1AhAH1YR6F28kQ\nlk2xmq7WMqizPU3M1nYluEvYu7vdR51eP3N2tKelSp7o/swSfnGC0aHd4Qyv\nQdO9\r\n=VTWE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGUOy9dbyImaeg1z1z7li78PJ3iYfvHoFLvZRDz1dLQdAiBWv87zn/bhYdYtwCGAOcqm3XCgq4VIU3ynNH5X+78cIw=="}]},"maintainers":[{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"}],"_npmUser":{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/request-animation-frame-timeout_1.0.0_1599716138469_0.43897378056392644"},"_hasShrinkwrap":false},"2.0.0":{"name":"request-animation-frame-timeout","version":"2.0.0","description":"setTimeout() via requestAnimationFrame()","type":"module","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./package.json":"./package.json"},"scripts":{"build:clean":"rimraf ./commonjs/**/* ./modules/**/*","build:commonjs":"cross-env babel ./source --out-dir ./commonjs --source-maps --ignore *.test.js","build:es6":"cross-env BABEL_ENV=es6 babel ./source --out-dir ./modules --source-maps --ignore *.test.js","build":"npm-run-all build:clean build:commonjs build:es6","prepublish":"npm-run-all build"},"repository":{"type":"git","url":"git+ssh://git@gitlab.com/catamphetamine/request-animation-frame-timeout.git"},"author":{"name":"@catamphetamine"},"license":"MIT","bugs":{"url":"https://gitlab.com/catamphetamine/request-animation-frame-timeout/issues"},"keywords":["requestAnimationFrame","setTimeout","timer"],"homepage":"https://gitlab.com/catamphetamine/request-animation-frame-timeout#readme","devDependencies":{"@babel/cli":"^7.11.6","@babel/core":"^7.11.6","@babel/preset-env":"^7.11.5","cross-env":"^7.0.2","npm-run-all":"^4.1.5","rimraf":"^3.0.2"},"dependencies":{"raf":"^3.4.1"},"gitHead":"51b0349724f2ddc3fa80d97a1db12728a34553eb","_id":"request-animation-frame-timeout@2.0.0","_nodeVersion":"18.19.1","_npmVersion":"6.10.0","dist":{"integrity":"sha512-4pQsnptwlGNjqli14HCByFbPv0mzPl+6M4JgMQCcy3qbqkqGs40VIW+9qKN6DYBFyQEWk3g2MKUPtRasHCJb1w==","shasum":"cfd8564895b3eba1610bc23f9bf1e1bdbb2a2459","tarball":"https://registry.npmjs.org/request-animation-frame-timeout/-/request-animation-frame-timeout-2.0.0.tgz","fileCount":10,"unpackedSize":8711,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEHtcEjlsgAVCRsvEieXxRItV/9ajOwbQPeP6+CpP2caAiB/vKo/2qNapnXbSSGOin/FzShsHR3+f9w53suNpJ/xBg=="}]},"_npmUser":{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"},"directories":{},"maintainers":[{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/request-animation-frame-timeout_2.0.0_1717457876014_0.9383763901614592"},"_hasShrinkwrap":false},"2.0.1":{"name":"request-animation-frame-timeout","version":"2.0.1","description":"setTimeout() via requestAnimationFrame()","type":"module","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./package.json":"./package.json"},"scripts":{"build:clean":"rimraf ./commonjs/**/* ./modules/**/*","build:commonjs":"cross-env babel ./source --out-dir ./commonjs --source-maps --ignore *.test.js","build:es6":"cross-env BABEL_ENV=es6 babel ./source --out-dir ./modules --source-maps --ignore *.test.js","build":"npm-run-all build:clean build:commonjs build:es6","test":"mocha --colors --bail --reporter spec \"source/**/*.test.js\" \"test/**/*.test.js\" --recursive","prepublish":"npm-run-all build"},"repository":{"type":"git","url":"git+ssh://git@gitlab.com/catamphetamine/request-animation-frame-timeout.git"},"author":{"name":"@catamphetamine"},"license":"MIT","bugs":{"url":"https://gitlab.com/catamphetamine/request-animation-frame-timeout/issues"},"keywords":["requestAnimationFrame","setTimeout","timer"],"homepage":"https://gitlab.com/catamphetamine/request-animation-frame-timeout#readme","devDependencies":{"@babel/cli":"^7.11.6","@babel/core":"^7.11.6","@babel/preset-env":"^7.11.5","chai":"^5.1.1","cross-env":"^7.0.2","mocha":"^10.4.0","npm-run-all":"^4.1.5","rimraf":"^3.0.2"},"dependencies":{"raf":"^3.4.1"},"gitHead":"554a8bec807c6fa82c85db2507c4064ab0cd2adb","_id":"request-animation-frame-timeout@2.0.1","_nodeVersion":"18.19.1","_npmVersion":"6.10.0","dist":{"integrity":"sha512-NGsP790o2FYyCpMhrZsZE9sGntrV9Hu9QPPibmVMXHwm5GvTNqiHMNbFjOKEgWT/Ks2wyFiDdkf5Q5+ASeMQjA==","shasum":"5882ee3dd0be81add1dc5aaf86bf4f05f984877a","tarball":"https://registry.npmjs.org/request-animation-frame-timeout/-/request-animation-frame-timeout-2.0.1.tgz","fileCount":20,"unpackedSize":28450,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDW7Hs9Pl4U/xyimnL32KWdaq9KinS9zSyMevwLrJQu9wIhAK0VTzYvq0nNePCCwniLgPnnHADGdRHtGS6KwETCNFC8"}]},"_npmUser":{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"},"directories":{},"maintainers":[{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/request-animation-frame-timeout_2.0.1_1717458677395_0.7940092028340202"},"_hasShrinkwrap":false},"2.0.2":{"name":"request-animation-frame-timeout","version":"2.0.2","description":"setTimeout() via requestAnimationFrame()","type":"module","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./package.json":"./package.json"},"scripts":{"build:clean":"rimraf ./commonjs/**/* ./modules/**/*","build:commonjs":"cross-env babel ./source --out-dir ./commonjs --source-maps --ignore *.test.js","build:commonjs:package.json":"node scripts/create-commonjs-package-json.js","build:es6":"cross-env BABEL_ENV=es6 babel ./source --out-dir ./modules --source-maps --ignore *.test.js","build":"npm-run-all build:clean build:commonjs build:es6","test":"mocha --colors --bail --reporter spec \"source/**/*.test.js\" \"test/**/*.test.js\" --recursive","prepublish":"npm-run-all build"},"repository":{"type":"git","url":"git+ssh://git@gitlab.com/catamphetamine/request-animation-frame-timeout.git"},"author":{"name":"@catamphetamine"},"license":"MIT","bugs":{"url":"https://gitlab.com/catamphetamine/request-animation-frame-timeout/issues"},"keywords":["requestAnimationFrame","setTimeout","timer"],"homepage":"https://gitlab.com/catamphetamine/request-animation-frame-timeout#readme","devDependencies":{"@babel/cli":"^7.11.6","@babel/core":"^7.11.6","@babel/preset-env":"^7.11.5","chai":"^5.1.1","cross-env":"^7.0.2","mocha":"^10.4.0","npm-run-all":"^4.1.5","rimraf":"^3.0.2"},"dependencies":{"raf":"^3.4.1"},"gitHead":"5f07d79d49ee6f86383b1b0b8fffb7c094a89fed","_id":"request-animation-frame-timeout@2.0.2","_nodeVersion":"18.19.1","_npmVersion":"6.10.0","dist":{"integrity":"sha512-bxnHvmXE2qBgMjoaAGTxU7zsDU+NWwn+tjb/eeWr3drp+MhLxFpNXzARh24S8QchKBViGDiKsNgcwX3tnPePNw==","shasum":"7a68fd526606d622c9f694be269104368caac47e","tarball":"https://registry.npmjs.org/request-animation-frame-timeout/-/request-animation-frame-timeout-2.0.2.tgz","fileCount":21,"unpackedSize":28911,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDz6VFaCNRf8z807M+eFQFtH0CMjlqDSjPTdBB+EufQOgIhAK3P9kN/A1M+kFkJGjDeUDMeKpjIgN1c4xYJKm9l2Tlk"}]},"_npmUser":{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"},"directories":{},"maintainers":[{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/request-animation-frame-timeout_2.0.2_1717458958951_0.9456383380601117"},"_hasShrinkwrap":false},"2.0.3":{"name":"request-animation-frame-timeout","version":"2.0.3","description":"setTimeout() via requestAnimationFrame()","type":"module","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./package.json":"./package.json"},"scripts":{"build:clean":"rimraf ./commonjs/**/* ./modules/**/*","build:commonjs":"cross-env babel ./source --out-dir ./commonjs --source-maps --ignore *.test.js","build:commonjs:package.json":"node scripts/create-commonjs-package-json.js","build:es6":"cross-env BABEL_ENV=es6 babel ./source --out-dir ./modules --source-maps --ignore *.test.js","build":"npm-run-all build:clean build:commonjs build:commonjs:package.json build:es6","test":"mocha --colors --bail --reporter spec \"source/**/*.test.js\" \"test/**/*.test.js\" --recursive","prepublish":"npm-run-all build"},"repository":{"type":"git","url":"git+ssh://git@gitlab.com/catamphetamine/request-animation-frame-timeout.git"},"author":{"name":"@catamphetamine"},"license":"MIT","bugs":{"url":"https://gitlab.com/catamphetamine/request-animation-frame-timeout/issues"},"keywords":["requestAnimationFrame","setTimeout","timer"],"homepage":"https://gitlab.com/catamphetamine/request-animation-frame-timeout#readme","devDependencies":{"@babel/cli":"^7.11.6","@babel/core":"^7.11.6","@babel/preset-env":"^7.11.5","chai":"^5.1.1","cross-env":"^7.0.2","mocha":"^10.4.0","npm-run-all":"^4.1.5","rimraf":"^3.0.2"},"dependencies":{"raf":"^3.4.1"},"gitHead":"a020a9ea14a13e8456fe580dfc7dc5a21319e784","_id":"request-animation-frame-timeout@2.0.3","_nodeVersion":"18.19.1","_npmVersion":"6.10.0","dist":{"integrity":"sha512-WBXIgoMLi76LV6TE+BTc0+87EWm/QYKkkJDl4Y07BzPRnQDlNG1vaw3CCiJYEWbwKagVRXwC7oQ4DswKHqZsiA==","shasum":"d5b5740236c6a1a307e53cf0632e2eb4b8eaf8ea","tarball":"https://registry.npmjs.org/request-animation-frame-timeout/-/request-animation-frame-timeout-2.0.3.tgz","fileCount":22,"unpackedSize":29036,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFd2fcFqxY4wweWlXGaIzSid2+X6vdYNPnfXpozi20NkAiAZuwZdqpRhX2lgELunB5V4c+cULtT6hedpOq0ktbDsMA=="}]},"_npmUser":{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"},"directories":{},"maintainers":[{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/request-animation-frame-timeout_2.0.3_1717459070903_0.5876762333614751"},"_hasShrinkwrap":false},"2.0.4":{"name":"request-animation-frame-timeout","version":"2.0.4","description":"setTimeout() via requestAnimationFrame()","type":"module","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./package.json":"./package.json"},"scripts":{"build:clean":"rimraf ./commonjs/**/* ./modules/**/*","build:commonjs":"cross-env babel ./source --out-dir ./commonjs --source-maps --ignore *.test.js","build:commonjs:package.json":"node scripts/create-commonjs-package-json.js","build:es6":"cross-env BABEL_ENV=es6 babel ./source --out-dir ./modules --source-maps --ignore *.test.js","build":"npm-run-all build:clean build:commonjs build:commonjs:package.json build:es6","test":"mocha --colors --bail --reporter spec \"source/**/*.test.js\" \"test/**/*.test.js\" --recursive","prepublish":"npm-run-all build"},"repository":{"type":"git","url":"git+ssh://git@gitlab.com/catamphetamine/request-animation-frame-timeout.git"},"author":{"name":"@catamphetamine"},"license":"MIT","bugs":{"url":"https://gitlab.com/catamphetamine/request-animation-frame-timeout/issues"},"keywords":["requestAnimationFrame","setTimeout","timer"],"homepage":"https://gitlab.com/catamphetamine/request-animation-frame-timeout#readme","devDependencies":{"@babel/cli":"^7.11.6","@babel/core":"^7.11.6","@babel/preset-env":"^7.11.5","chai":"^5.1.1","cross-env":"^7.0.2","mocha":"^10.4.0","npm-run-all":"^4.1.5","rimraf":"^3.0.2"},"dependencies":{},"gitHead":"90a48ed6b4792cc17925c08832d62ba3c4e38a8b","_id":"request-animation-frame-timeout@2.0.4","_nodeVersion":"18.19.1","_npmVersion":"6.10.0","dist":{"integrity":"sha512-5oYwRBYjrMSU/YHHXj5AM/nv96ZE0b8WZoA3FqnkeDDPXoprxUCZFK4IWZTl+y3RJQtaihiJPiKOB4NZfZ7C7A==","shasum":"dfdd91c6b89178be2fb2cba3136d0015d6d47193","tarball":"https://registry.npmjs.org/request-animation-frame-timeout/-/request-animation-frame-timeout-2.0.4.tgz","fileCount":22,"unpackedSize":29013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFvE6xhRFDeUhVG9KPkpFmuILaMyjAM/gw+OAI+PpKHUAiAl5gLKQT/q0WP8dsROt+4TJFcN1IaJfg5jPYsrlgm9fg=="}]},"_npmUser":{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"},"directories":{},"maintainers":[{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/request-animation-frame-timeout_2.0.4_1717539035978_0.0668945611870071"},"_hasShrinkwrap":false}},"time":{"created":"2020-09-10T05:35:38.468Z","1.0.0":"2020-09-10T05:35:38.583Z","modified":"2024-06-04T22:10:36.291Z","2.0.0":"2024-06-03T23:37:56.185Z","2.0.1":"2024-06-03T23:51:17.548Z","2.0.2":"2024-06-03T23:55:59.118Z","2.0.3":"2024-06-03T23:57:51.062Z","2.0.4":"2024-06-04T22:10:36.117Z"},"maintainers":[{"name":"catamphetamine","email":"purecatamphetamine@gmail.com"}],"description":"setTimeout() via requestAnimationFrame()","homepage":"https://gitlab.com/catamphetamine/request-animation-frame-timeout#readme","keywords":["requestAnimationFrame","setTimeout","timer"],"repository":{"type":"git","url":"git+ssh://git@gitlab.com/catamphetamine/request-animation-frame-timeout.git"},"author":{"name":"@catamphetamine"},"bugs":{"url":"https://gitlab.com/catamphetamine/request-animation-frame-timeout/issues"},"license":"MIT","readme":"# `request-animation-frame-timeout`\r\n\r\n## Rationale\r\n\r\nFor some weird reason, in Chrome, `setTimeout()` would lag up to a second (or more) behind. Turns out, Chrome developers have deprecated `setTimeout()` API entirely without asking anyone. Replacing `setTimeout()` with `requestAnimationFrame()` can work around that Chrome bug. The timer-freezing behavior of Chrome is inherently retarded, so this workaround wouldn't be required if they designed their corporate web browser properly.\r\n\r\n* [Fix Chrome setTimeout throttling](https://github.com/bvaughn/react-virtualized/issues/722)\r\n* [Issue 570845: setInterval and setTimeout stop during input when timer callbacks are expensive](https://bugs.chromium.org/p/chromium/issues/detail?id=570845)\r\n\r\n## Use\r\n\r\n```\r\nnpm install request-animation-frame-timeout --save\r\n```\r\n\r\n```js\r\nimport { setTimeout, clearTimeout } from 'request-animation-frame-timeout'\r\n```\r\n\r\n## Warning\r\n\r\n`requestAnimationFrame()` doesn't get called when a web browser tab is not visible (minimized or in background). When a web page goes non-visible, all `requestAnimationFrame()` timers will be paused until the page is visible again. For this reason, `requestAnimationFrame()` timers should only be used for user-interface-related stuff (visual transitions, user input timers, etc).","readmeFilename":"README.md"}