{"_id":"custom-idle-queue","_rev":"4420989","name":"custom-idle-queue","description":"Optimize the speed of important tasks on limited ressources","dist-tags":{"latest":"5.0.2"},"maintainers":[{"name":"pubkey","email":""}],"time":{"modified":"2026-04-08T13:33:58.000Z","created":"2017-09-27T20:27:49.956Z","5.0.2":"2026-03-13T16:35:46.792Z","5.0.0":"2026-03-13T16:30:46.617Z","4.1.0":"2025-05-27T12:50:23.299Z","4.0.0":"2025-05-13T14:18:50.502Z","3.0.1":"2020-05-26T22:17:14.243Z","3.0.0":"2020-05-26T21:28:27.861Z","2.1.2":"2018-09-06T23:12:33.941Z","2.1.1":"2018-09-06T22:55:02.436Z","2.1.0":"2018-09-06T22:44:43.495Z","2.0.1":"2018-03-13T17:26:50.783Z","2.0.0":"2017-12-14T01:19:12.107Z","1.0.0":"2017-09-27T20:27:49.956Z"},"users":{},"author":{"name":"pubkey"},"repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"versions":{"5.0.2":{"name":"custom-idle-queue","version":"5.0.2","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/lib/index.es5.js","jsnext:main":"./dist/es/index.js","module":"./dist/es/index.js","types":"./src/index.d.ts","sideEffects":false,"scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/lib/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 babel src --out-dir dist/lib","build":"npm run clear && concurrently \"npm run build:es6\" \"npm run build:es5\""},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"@babel/cli":"7.28.6","@babel/core":"7.29.0","@babel/plugin-proposal-object-rest-spread":"7.20.7","@babel/plugin-transform-member-expression-literals":"7.27.1","@babel/plugin-transform-property-literals":"7.27.1","@babel/plugin-transform-runtime":"7.29.0","@babel/polyfill":"7.12.1","@babel/preset-env":"7.29.0","@babel/types":"7.29.0","@eslint/eslintrc":"^3.3.5","@eslint/js":"^10.0.1","assert":"2.1.0","async-test-util":"2.5.0","browserify":"17.0.1","concurrently":"^9.2.1","cross-env":"10.1.0","delete":"1.1.0","eslint":"10.0.3","globals":"^17.4.0","gzip-size-cli":"5.1.0","mocha":"11.7.5","rimraf":"6.1.3","shelljs":"0.10.0","uglify-js":"3.19.3","walk-sync":"4.0.1"},"gitHead":"40c027f662b1efba83fa82e17e479607e1382393","_id":"custom-idle-queue@5.0.2","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"shasum":"c1acf6f45a373c150408f594ac1619050177ceea","size":14694,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-5.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-5.0.2.tgz"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6e48ccfc-76b0-4285-ad13-1e7f1529f251"}},"directories":{},"maintainers":[{"name":"pubkey","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/custom-idle-queue_5.0.2_1773419746632_0.5884739384987077"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-03-13T16:35:46.792Z","publish_time":1773419746792,"_source_registry_name":"default","_cnpm_publish_time":1773419746792},"5.0.0":{"name":"custom-idle-queue","version":"5.0.0","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/lib/index.es5.js","jsnext:main":"./dist/es/index.js","module":"./dist/es/index.js","types":"./src/index.d.ts","sideEffects":false,"scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/lib/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 babel src --out-dir dist/lib","build":"npm run clear && concurrently \"npm run build:es6\" \"npm run build:es5\""},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"@babel/cli":"7.28.6","@babel/core":"7.29.0","@babel/plugin-proposal-object-rest-spread":"7.20.7","@babel/plugin-transform-member-expression-literals":"7.27.1","@babel/plugin-transform-property-literals":"7.27.1","@babel/plugin-transform-runtime":"7.29.0","@babel/polyfill":"7.12.1","@babel/preset-env":"7.29.0","@babel/types":"7.29.0","@eslint/eslintrc":"^3.3.5","@eslint/js":"^10.0.1","assert":"2.1.0","async-test-util":"2.5.0","browserify":"17.0.1","concurrently":"^9.2.1","cross-env":"10.1.0","delete":"1.1.0","eslint":"10.0.3","globals":"^17.4.0","gzip-size-cli":"5.1.0","mocha":"11.7.5","rimraf":"6.1.3","shelljs":"0.10.0","uglify-js":"3.19.3","walk-sync":"4.0.1"},"gitHead":"b7b9d387f4a0241098d865cace3dcffc9979aa8e","_id":"custom-idle-queue@5.0.0","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"shasum":"8692456953ccdb94a9db6ccdc79cd7f13d8bd976","size":14702,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-5.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-5.0.0.tgz"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6e48ccfc-76b0-4285-ad13-1e7f1529f251"}},"directories":{},"maintainers":[{"name":"pubkey","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/custom-idle-queue_5.0.0_1773419446438_0.5479149414797999"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-03-13T16:30:46.617Z","publish_time":1773419446617,"_source_registry_name":"default","_cnpm_publish_time":1773419446617},"4.1.0":{"name":"custom-idle-queue","version":"4.1.0","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/lib/index.es5.js","jsnext:main":"./dist/es/index.js","module":"./dist/es/index.js","types":"./src/index.d.ts","sideEffects":false,"scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/lib/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 babel src --out-dir dist/lib","build":"npm run clear && concurrently \"npm run build:es6\" \"npm run build:es5\""},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"@babel/cli":"7.8.4","@babel/core":"7.9.6","@babel/plugin-check-constants":"7.0.0-beta.38","@babel/plugin-proposal-object-rest-spread":"7.9.6","@babel/plugin-transform-member-expression-literals":"7.8.3","@babel/plugin-transform-property-literals":"7.8.3","@babel/plugin-transform-runtime":"7.9.6","@babel/polyfill":"7.8.7","@babel/preset-env":"7.9.6","@babel/types":"7.9.6","assert":"1.4.1","async-test-util":"1.7.3","browserify":"16.5.1","concurrently":"^4.0.1","cross-env":"5.2.0","delete":"1.1.0","eslint":"5.5.0","gzip-size-cli":"3.0.0","mocha":"5.2.0","rimraf":"2.6.2","shelljs":"0.8.2","uglify-js":"3.9.3","walk-sync":"0.3.3"},"dependencies":{},"_id":"custom-idle-queue@4.1.0","gitHead":"cb648c515c6002c845c54815bc7a5af9ed9a80e7","_nodeVersion":"22.14.0","_npmVersion":"11.2.0","dist":{"shasum":"947a47d320a7bdc002e2410be8dec4dac7b5f267","size":13835,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-4.1.0.tgz"},"_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"directories":{},"maintainers":[{"name":"pubkey","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/custom-idle-queue_4.1.0_1748350223129_0.7944293298715455"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-05-27T12:50:23.299Z","publish_time":1748350223299,"_source_registry_name":"default","_cnpm_publish_time":1748350223299},"4.0.0":{"name":"custom-idle-queue","version":"4.0.0","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/lib/index.es5.js","jsnext:main":"./dist/es/index.js","module":"./dist/es/index.js","types":"./src/index.d.ts","sideEffects":false,"scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/lib/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 babel src --out-dir dist/lib","build":"npm run clear && concurrently \"npm run build:es6\" \"npm run build:es5\""},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"@babel/cli":"7.8.4","@babel/core":"7.9.6","@babel/plugin-check-constants":"7.0.0-beta.38","@babel/plugin-proposal-object-rest-spread":"7.9.6","@babel/plugin-transform-member-expression-literals":"7.8.3","@babel/plugin-transform-property-literals":"7.8.3","@babel/plugin-transform-runtime":"7.9.6","@babel/polyfill":"7.8.7","@babel/preset-env":"7.9.6","@babel/types":"7.9.6","assert":"1.4.1","async-test-util":"1.7.3","browserify":"16.5.1","concurrently":"^4.0.1","cross-env":"5.2.0","delete":"1.1.0","eslint":"5.5.0","gzip-size-cli":"3.0.0","mocha":"5.2.0","rimraf":"2.6.2","shelljs":"0.8.2","uglify-js":"3.9.3","walk-sync":"0.3.3"},"dependencies":{},"_id":"custom-idle-queue@4.0.0","gitHead":"33b9d77fd6d1ebf533165a4ad0dfc18127a85394","_nodeVersion":"22.14.0","_npmVersion":"11.2.0","dist":{"shasum":"f702da1853209605c123a7eee1f14a4cd39bac70","size":13906,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-4.0.0.tgz"},"_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"directories":{},"maintainers":[{"name":"pubkey","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/custom-idle-queue_4.0.0_1747145930338_0.3095734507856678"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-05-13T14:18:50.502Z","publish_time":1747145930502,"_source_registry_name":"default","_cnpm_publish_time":1747145930502},"3.0.1":{"name":"custom-idle-queue","version":"3.0.1","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/lib/index.es5.js","jsnext:main":"./dist/es/index.js","module":"./dist/es/index.js","types":"./src/index.d.ts","sideEffects":false,"scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/lib/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 babel src --out-dir dist/lib","build":"npm run clear && concurrently \"npm run build:es6\" \"npm run build:es5\""},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"@babel/cli":"7.8.4","@babel/core":"7.9.6","@babel/plugin-check-constants":"7.0.0-beta.38","@babel/plugin-proposal-object-rest-spread":"7.9.6","@babel/plugin-transform-member-expression-literals":"7.8.3","@babel/plugin-transform-property-literals":"7.8.3","@babel/plugin-transform-runtime":"7.9.6","@babel/polyfill":"7.8.7","@babel/preset-env":"7.9.6","@babel/types":"7.9.6","assert":"1.4.1","async-test-util":"1.7.3","browserify":"16.5.1","concurrently":"^4.0.1","cross-env":"5.2.0","delete":"1.1.0","eslint":"5.5.0","gzip-size-cli":"3.0.0","mocha":"5.2.0","rimraf":"2.6.2","shelljs":"0.8.2","uglify-js":"3.9.3","walk-sync":"0.3.3"},"dependencies":{"@babel/runtime":"7.9.6"},"gitHead":"eeb8da293b80017739625ee7e5940975a0c92c2d","_id":"custom-idle-queue@3.0.1","_nodeVersion":"14.0.0","_npmVersion":"6.14.4","dist":{"shasum":"d6f56ac2db8333951712b28aaf4f57b9a58b91e2","size":13942,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-3.0.1.tgz"},"maintainers":[{"name":"pubkey","email":""}],"_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/custom-idle-queue_3.0.1_1590531434117_0.21119688222353727"},"_hasShrinkwrap":false,"publish_time":1590531434243,"_cnpm_publish_time":1590531434243,"_cnpmcore_publish_time":"2021-12-18T21:03:15.023Z"},"3.0.0":{"name":"custom-idle-queue","version":"3.0.0","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/lib/index.es5.js","jsnext:main":"./dist/es/index.js","module":"./dist/es/index.js","types":"./src/index.d.ts","scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/lib/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 babel src --out-dir dist/lib","build":"npm run clear && concurrently \"npm run build:es6\" \"npm run build:es5\""},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"@babel/cli":"7.8.4","@babel/core":"7.9.6","@babel/plugin-check-constants":"7.0.0-beta.38","@babel/plugin-proposal-object-rest-spread":"7.9.6","@babel/plugin-transform-member-expression-literals":"7.8.3","@babel/plugin-transform-property-literals":"7.8.3","@babel/plugin-transform-runtime":"7.9.6","@babel/polyfill":"7.8.7","@babel/preset-env":"7.9.6","@babel/types":"7.9.6","assert":"1.4.1","async-test-util":"1.7.3","browserify":"16.5.1","concurrently":"^4.0.1","cross-env":"5.2.0","delete":"1.1.0","eslint":"5.5.0","gzip-size-cli":"3.0.0","mocha":"5.2.0","rimraf":"2.6.2","shelljs":"0.8.2","uglify-js":"3.9.3","walk-sync":"0.3.3"},"dependencies":{"@babel/runtime":"7.9.6"},"gitHead":"5459264585ba70145756563fc62a48fc4b9a73a6","_id":"custom-idle-queue@3.0.0","_nodeVersion":"14.0.0","_npmVersion":"6.14.4","dist":{"shasum":"6b5f9ba255890935d9f4a020edf23c2b92aa20af","size":13927,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-3.0.0.tgz"},"maintainers":[{"name":"pubkey","email":""}],"_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/custom-idle-queue_3.0.0_1590528507743_0.4253818005974408"},"_hasShrinkwrap":false,"publish_time":1590528507861,"_cnpm_publish_time":1590528507861,"_cnpmcore_publish_time":"2021-12-18T21:03:15.304Z"},"2.1.2":{"name":"custom-idle-queue","version":"2.1.2","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/lib/index.es5.js","jsnext:main":"./dist/es/index.js","module":"./dist/es/index.js","types":"./src/index.d.ts","scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 babel src --out-dir dist/lib","build":"npm run clear && concurrently \"npm run build:es6\" \"npm run build:es5\""},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"@babel/cli":"7.0.0","@babel/core":"7.0.0","@babel/plugin-check-constants":"7.0.0-beta.38","@babel/plugin-proposal-object-rest-spread":"7.0.0","@babel/plugin-transform-member-expression-literals":"7.0.0","@babel/plugin-transform-property-literals":"7.0.0","@babel/plugin-transform-runtime":"7.0.0","@babel/polyfill":"7.0.0","@babel/preset-env":"7.0.0","@babel/types":"7.0.0","assert":"1.4.1","async-test-util":"1.6.1","browserify":"16.2.2","concurrently":"^4.0.1","cross-env":"5.2.0","delete":"1.1.0","eslint":"4.19.1","gzip-size-cli":"3.0.0","mocha":"5.2.0","node":"10.9.0","rimraf":"2.6.2","shelljs":"0.8.2","uglify-js":"3.4.9","walk-sync":"0.3.3"},"dependencies":{"@babel/runtime":"7.0.0"},"gitHead":"84a3f5084051d92f2c6ca83bf03447d563e7f163","_id":"custom-idle-queue@2.1.2","_npmVersion":"6.4.1","_nodeVersion":"10.9.0","_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"dist":{"shasum":"930e6b3676cc15690388e9fb77fd12b647d1e400","size":111400,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-2.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-2.1.2.tgz"},"maintainers":[{"name":"pubkey","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/custom-idle-queue_2.1.2_1536275553749_0.4288130689145717"},"_hasShrinkwrap":false,"publish_time":1536275553941,"_cnpm_publish_time":1536275553941,"_cnpmcore_publish_time":"2021-12-18T21:03:15.604Z"},"2.1.1":{"name":"custom-idle-queue","version":"2.1.1","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/index.es5.js","jsnext:main":"./dist/index.js","module":"./dist/index.js","types":"./src/index.d.ts","scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 node node_modules/babel-cli/bin/babel.js src --out-dir dist/","build":"npm run clear && npm run build:es5"},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"assert":"1.4.1","async-test-util":"1.6.1","babel-cli":"6.26.0","babel-core":"6.26.3","babel-eslint":"9.0.0","babel-loader":"8.0.2","babel-plugin-async-to-promises":"1.0.5","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-es2015-block-scoping":"6.26.0","babel-plugin-transform-es2015-constants":"6.1.4","babel-plugin-transform-es3-member-expression-literals":"6.22.0","babel-plugin-transform-es3-property-literals":"6.22.0","babel-plugin-transform-object-rest-spread":"6.26.0","babel-plugin-transform-regenerator":"6.26.0","babel-plugin-transform-runtime":"6.23.0","babel-polyfill":"6.26.0","babel-preset-es2015":"6.24.1","babel-preset-es2015-native-modules":"6.9.4","babel-preset-es2015-rollup":"3.0.0","babel-preset-es2016":"6.24.1","babel-preset-es2017":"6.24.1","babel-preset-latest":"6.24.1","browserify":"16.2.2","cross-env":"5.2.0","delete":"1.1.0","eslint":"4.19.1","gzip-size-cli":"3.0.0","mocha":"5.2.0","node":"10.9.0","rimraf":"2.6.2","shelljs":"0.8.2","uglify-js":"3.4.9","walk-sync":"0.3.3"},"dependencies":{},"gitHead":"73bbb0e1f6d4d83f8ed1130d424b38824a1023ba","_id":"custom-idle-queue@2.1.1","_npmVersion":"6.4.1","_nodeVersion":"10.9.0","_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"dist":{"shasum":"dee543ca1c5ef75f08b6f452a80ddb3def6db463","size":110505,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-2.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-2.1.1.tgz"},"maintainers":[{"name":"pubkey","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/custom-idle-queue_2.1.1_1536274502277_0.24185236980722902"},"_hasShrinkwrap":false,"publish_time":1536274502436,"_cnpm_publish_time":1536274502436,"_cnpmcore_publish_time":"2021-12-18T21:03:15.886Z"},"2.1.0":{"name":"custom-idle-queue","version":"2.1.0","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/idle-queue.js","types":"./src/index.d.ts","scripts":{"test":"npm run build && mocha -b --exit test/unit","test:size":"npm run build && rimraf tmp/browserify.js && mkdir -p tmp/ && browserify --no-builtins dist/browserify.index.js > tmp/browserify.js && uglifyjs --compress --mangle --output tmp/browserify.min.js -- tmp/browserify.js && echo \"Build-Size (minified+gzip):\" && gzip-size --raw tmp/browserify.min.js","performance":"npm run build && mocha test/performance.test.js -b --timeout 24000 --exit","profile":"mocha --prof  test/performance.test.js -b --timeout 24000 --exit && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 node node_modules/babel-cli/bin/babel.js src --out-dir dist/","build":"npm run clear && npm run build:es5"},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"assert":"1.4.1","async-test-util":"1.6.1","babel-cli":"6.26.0","babel-core":"6.26.3","babel-eslint":"9.0.0","babel-loader":"8.0.2","babel-plugin-async-to-promises":"1.0.5","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-es2015-block-scoping":"6.26.0","babel-plugin-transform-es2015-constants":"6.1.4","babel-plugin-transform-es3-member-expression-literals":"6.22.0","babel-plugin-transform-es3-property-literals":"6.22.0","babel-plugin-transform-object-rest-spread":"6.26.0","babel-plugin-transform-regenerator":"6.26.0","babel-plugin-transform-runtime":"6.23.0","babel-polyfill":"6.26.0","babel-preset-es2015":"6.24.1","babel-preset-es2015-native-modules":"6.9.4","babel-preset-es2015-rollup":"3.0.0","babel-preset-es2016":"6.24.1","babel-preset-es2017":"6.24.1","babel-preset-latest":"6.24.1","browserify":"16.2.2","cross-env":"5.2.0","delete":"1.1.0","eslint":"4.19.1","gzip-size-cli":"3.0.0","mocha":"5.2.0","node":"10.9.0","rimraf":"2.6.2","shelljs":"0.8.2","uglify-js":"3.4.9","walk-sync":"0.3.3"},"dependencies":{},"gitHead":"f45e04b39c2aee0efa2512ca45880b1ee2ff5432","_id":"custom-idle-queue@2.1.0","_npmVersion":"6.4.1","_nodeVersion":"10.9.0","_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"dist":{"shasum":"c4d2cf0cc6334e1cb3136a6ba6e0813da583c37e","size":110184,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-2.1.0.tgz"},"maintainers":[{"name":"pubkey","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/custom-idle-queue_2.1.0_1536273883345_0.2490329970373677"},"_hasShrinkwrap":false,"publish_time":1536273883495,"_cnpm_publish_time":1536273883495,"_cnpmcore_publish_time":"2021-12-18T21:03:16.309Z"},"2.0.1":{"name":"custom-idle-queue","version":"2.0.1","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/idle-queue.js","types":"./src/index.d.ts","scripts":{"test":"npm run build && mocha -b --exit test/unit","performance":"npm run build && node --prof test/performance.test.js && node scripts/profile.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 node node_modules/babel-cli/bin/babel.js src --out-dir dist/","build":"npm run clear && npm run build:es5"},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"assert":"1.4.1","async-test-util":"1.5.1","babel-cli":"6.26.0","babel-core":"6.26.0","babel-eslint":"8.2.2","babel-loader":"7.1.4","babel-plugin-async-to-promises":"1.0.5","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-es2015-block-scoping":"6.26.0","babel-plugin-transform-es2015-constants":"6.1.4","babel-plugin-transform-es3-member-expression-literals":"6.22.0","babel-plugin-transform-es3-property-literals":"6.22.0","babel-plugin-transform-object-rest-spread":"6.26.0","babel-plugin-transform-regenerator":"6.26.0","babel-plugin-transform-runtime":"6.23.0","babel-polyfill":"6.26.0","babel-preset-es2015":"6.24.1","babel-preset-es2015-native-modules":"6.9.4","babel-preset-es2015-rollup":"3.0.0","babel-preset-es2016":"6.24.1","babel-preset-es2017":"6.24.1","babel-preset-latest":"6.24.1","cross-env":"5.1.4","delete":"^1.1.0","eslint":"4.18.2","mocha":"5.0.4","rimraf":"2.6.2","shelljs":"^0.8.1","walk-sync":"^0.3.2"},"dependencies":{},"gitHead":"51ef77efcc839d95bae830248776c71aa10ef1f6","_id":"custom-idle-queue@2.0.1","_npmVersion":"5.6.0","_nodeVersion":"9.7.1","_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"dist":{"shasum":"b51e7c954a9f25323c81fae2eadca5dc5dbc84af","size":16036,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-2.0.1.tgz"},"maintainers":[{"name":"pubkey","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/custom-idle-queue_2.0.1_1520962010656_0.28154025798647253"},"_hasShrinkwrap":false,"publish_time":1520962010783,"_cnpm_publish_time":1520962010783,"_cnpmcore_publish_time":"2021-12-18T21:03:16.563Z"},"2.0.0":{"name":"custom-idle-queue","version":"2.0.0","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/idle-queue.js","types":"./src/index.d.ts","scripts":{"test":"npm run build && mocha -b --exit test/unit","performance":"npm run build && node test/performance.test.js","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 node node_modules/babel-cli/bin/babel.js src --out-dir dist/","build":"npm run clear && npm run build:es5"},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"assert":"1.4.1","async-test-util":"1.2.1","babel-cli":"6.26.0","babel-core":"6.26.0","babel-eslint":"8.0.3","babel-loader":"7.1.2","babel-plugin-async-to-promises":"1.0.5","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-es2015-block-scoping":"6.26.0","babel-plugin-transform-es2015-constants":"6.1.4","babel-plugin-transform-es3-member-expression-literals":"6.22.0","babel-plugin-transform-es3-property-literals":"6.22.0","babel-plugin-transform-object-rest-spread":"6.26.0","babel-plugin-transform-regenerator":"6.26.0","babel-plugin-transform-runtime":"6.23.0","babel-polyfill":"6.26.0","babel-preset-es2015":"6.24.1","babel-preset-es2015-native-modules":"6.9.4","babel-preset-es2015-rollup":"3.0.0","babel-preset-es2016":"6.24.1","babel-preset-es2017":"6.24.1","babel-preset-latest":"6.24.1","cross-env":"5.1.1","eslint":"4.13.1","mocha":"4.0.1","rimraf":"2.6.2"},"dependencies":{},"gitHead":"76bd0b86a0278a5e86a9d28af72bd5294732eb31","_id":"custom-idle-queue@2.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.6.0","_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"dist":{"shasum":"1b878a0bfa8f0bac62cf937f8b8857cf25222abb","size":10332,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-2.0.0.tgz"},"maintainers":[{"name":"pubkey","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/custom-idle-queue-2.0.0.tgz_1513214351159_0.9500851256307214"},"directories":{},"publish_time":1513214352107,"_hasShrinkwrap":false,"_cnpm_publish_time":1513214352107,"_cnpmcore_publish_time":"2021-12-18T21:03:16.860Z"},"1.0.0":{"name":"custom-idle-queue","version":"1.0.0","description":"Optimize the speed of important tasks on limited ressources","keywords":["requestIdleCallback","idle","performance","optimisation"],"main":"./dist/index.js","types":"./src/index.d.ts","scripts":{"test":"npm run build && mocha -b","lint":"eslint src test","clear":"rimraf -rf ./dist","build:es6":"rimraf -rf dist/es && cross-env NODE_ENV=es6 babel src --out-dir dist/es","build:es5":"cross-env NODE_ENV=es5 node node_modules/babel-cli/bin/babel.js src --out-dir dist/","build":"npm run clear && npm run build:es5"},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","repository":{"type":"git","url":"git+https://github.com/pubkey/custom-idle-queue.git"},"author":{"name":"pubkey"},"license":"Apache-2.0","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"devDependencies":{"assert":"1.4.1","async-test-util":"1.2.0","babel-cli":"6.26.0","babel-core":"6.26.0","babel-eslint":"8.0.1","babel-loader":"7.1.2","babel-plugin-async-to-promises":"1.0.5","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-es2015-block-scoping":"6.26.0","babel-plugin-transform-es2015-constants":"6.1.4","babel-plugin-transform-es3-member-expression-literals":"6.22.0","babel-plugin-transform-es3-property-literals":"6.22.0","babel-plugin-transform-object-rest-spread":"6.26.0","babel-plugin-transform-regenerator":"6.26.0","babel-plugin-transform-runtime":"6.23.0","babel-polyfill":"6.26.0","babel-preset-es2015":"6.24.1","babel-preset-es2015-native-modules":"6.9.4","babel-preset-es2015-rollup":"3.0.0","babel-preset-es2016":"6.24.1","babel-preset-es2017":"6.24.1","babel-preset-latest":"6.24.1","cross-env":"5.0.5","eslint":"4.7.2","mocha":"3.5.3","rimraf":"2.6.2"},"dependencies":{},"gitHead":"7d6e762b98b8f2fc024cca8db6a51bf93b555b8a","_id":"custom-idle-queue@1.0.0","_npmVersion":"5.4.2","_nodeVersion":"8.0.0","_npmUser":{"name":"pubkey","email":"dieser.daniel@outlook.com"},"dist":{"shasum":"1378887566775082e0e82bfac3d924868a604057","size":10855,"noattachment":false,"key":"/custom-idle-queue/-/custom-idle-queue-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/custom-idle-queue/download/custom-idle-queue-1.0.0.tgz"},"maintainers":[{"name":"pubkey","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/custom-idle-queue-1.0.0.tgz_1506544069004_0.17136293346993625"},"directories":{},"publish_time":1506544069956,"_hasShrinkwrap":false,"_cnpm_publish_time":1506544069956,"_cnpmcore_publish_time":"2021-12-18T21:03:17.096Z"}},"readme":"# Custom Idle Queue\n\nThis is a npm-module that lets you optimize the performance of important tasks by delaying background-tasks. It works a bit like [requestIdleCallback](https://developer.mozilla.org/de/docs/Web/API/Window/requestIdleCallback) but instead of fetching idle-time of the CPU, you can use this for any given limited ressource.\n\n## Quickstart\n\nIn this example we define `database-requests` as limited ressource. We create an idleQueue arround all calls to the ressource to ensure our `importantTask` is as fast as possible and the `backgroundTask` only runs when no `importantTask` is using the database.\n\n`npm install custom-idle-queue --save`\n\n```javascript\n// require\nconst { IdleQueue } = require('custom-idle-queue');\n\n// OR import\nimport { IdleQueue } from 'custom-idle-queue';\n\n// create a new queue\nconst myQueue = new IdleQueue();\n\n\n// wrap all calls to your limited ressource\nconst readFromDatabase = key => myQueue.wrapCall(\n    () => pseudoDatabaseModule.get(key)\n);\nconst writeToDatabase = (key, value) => myQueue.wrapCall(\n    () => pseudoDatabaseModule.set(key, value);\n);\nconst deleteFromDatabase = (key) => myQueue.wrapCall(\n    () => pseudoDatabaseModule.delete(key, value);\n);\n\n// this is the important task\nconst importantTask = async function increaseClickNumber() {\n    const oldNumber = await readFromDatabase('nr');\n    const newNumber = oldNumber++;\n    await writeToDatabase('nr', newNumber);\n    await writeToDatabase('time_' + newNumber, new Date().getTime());\n    return newNumber;\n};\n\n// this is the background task\nconst backgroundTask = async function cleanUpOldClicks() {\n    const newest = await readFromDatabase('nr');\n    const limitDate = new Date().getTime() - 1000*60*60;\n    for (let i = 0; i < newest; i++) {\n        const date = await readFromDatabase('time_' + i);\n        if(date < limitDate){\n            await deleteFromDatabase('time_' + i);\n        }\n    }\n}\n\n// we now run the backgroundTask in an intervall without slowing down the importantTask\n(async() => {\n    while(true){\n        await myQueue.requestIdlePromise(); // wait until database-requests in idle\n        await backgroundTask();\n\n        await new Promise(res => setTimeout(res, 2000)); // wait 2 seconds\n    }\n})();\n\n// if we now run the importantTask, it will not be slowed down by the backgroundTask\ndocument\n    .querySelector('#myButton')\n    .addEventListener('click', () => {\n        const newNr = await importantTask();\n        labelDomElement.innerHTML = newNr.toString();\n    });\n\n// You can find the full documentation here https://github.com/pubkey/custom-idle-queue/blob/master/docs.md\n\n```\n\n## Use cases\nThis module can be used on any limited ressource like\n\n- HTTP-Requests\n- Database-Calls\n- Service-Worker-Calls\n- Animations\n\n## Limitations\n\n- **IdleQueue cannot predict the future**\n\nWhen you start a `backgroundTask` first and the `importantTask` afterwards, the `backgroundTask` will slow down the `importantTask` because it is already running. To prevent this, you should use `requestIdlePromise` as granular as possible. The backgroundTask-function from the example would be better when it awaits the idle-state before each usage of the limited ressource. This will ensure that the `backgroundTask` will be paused until the `importantTask` has finished.\n\n```js\n// this is the background task\nconst backgroundTask = async function cleanUpOldClicks() {\n    await myQueue.requestIdlePromise(); // request idle-state each time\n    const newest = await readFromDatabase('nr');\n    const limitDate = new Date().getTime() - 1000*60*60;\n    for (let i = 0; i < newest; i++) {\n        await myQueue.requestIdlePromise(); // request idle-state each time\n        const date = await readFromDatabase('time_' + i);\n        if(date < limitDate){\n            await myQueue.requestIdlePromise(); // request idle-state each time\n            await deleteFromDatabase('time_' + i);\n        }\n    }\n}\n```\n\n- **You cannot optimize CPU-only ressources**\n\nBecause javascript runs in a single process, it doesn't make sense to define CPU as limited ressource. For example if you have a CPU-only-Function like `calculatePrimeNumber`, you should not limit the access to the function with an idle-queue because at the time you call `idleQueue.lock()` or `idleQueue.wrapCall()`, the process will instantly run `calculatePrimeNumber` before it even can change the idle-queue state.\n\n\n\n## Browser-Support\n\nThis module is using the [Promise-](https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Promise) and the [Map](https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Map)-Object. If your runtime does not support them, you have to add them via polyfills.\n\n## [Read the full documentation here](https://github.com/pubkey/custom-idle-queue/blob/master/docs.md) \n","_attachments":{},"homepage":"https://github.com/pubkey/custom-idle-queue#readme","bugs":{"url":"https://github.com/pubkey/custom-idle-queue/issues"},"license":"Apache-2.0"}