{"_id":"@brianmcallister/api-poller-worker","_rev":"11-2f46031c833d260bbbb4cf1980e7f64a","name":"@brianmcallister/api-poller-worker","dist-tags":{"latest":"1.3.1"},"versions":{"0.1.0":{"name":"@brianmcallister/api-poller-worker","version":"0.1.0","description":"","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"scripts":{"lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo ./demo-server","prepare":"tsc","stylelint":"stylelint demo/**/*.scss","test":"echo \"Error: no test specified\" && exit 0","types":"tsc --noEmit"},"license":"MIT","dependencies":{"@typescript-eslint/eslint-plugin":"2.7.0","eslint":"6.6.0","eslint-config-airbnb":"18.0.1","eslint-config-airbnb-typescript":"6.1.0","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-promise":"4.2.1","eslint-plugin-react":"7.16.0","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-unicorn":"12.1.0","prettier":"1.19.1","typescript":"3.7.2"},"gitHead":"943b3250fed721608d806a90e2ee85441b4c497c","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"homepage":"https://github.com/brianmcallister/api-poller-worker#readme","_id":"@brianmcallister/api-poller-worker@0.1.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-wYO8LOTy0vwyVRcjLmvc5v5vlqngjm+lQ2OFMX2TfrsaPq/xuJa4N0oj5UlP5dnCNxJTF+l+oMPObXoLzNqPqw==","shasum":"4aebc08b536cb87e451a1b1a508b2ba90a1d6f5d","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-0.1.0.tgz","fileCount":39,"unpackedSize":38517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzOiTCRA9TVsSAnZWagAAkCUP/22nlY6eDI6pi94+3oV4\n/i7ZpceYx1wZmX3BB3QR2Qowp3EBs+bGrV1T8ZQyoma8oMuYiXLARGcAX/X6\n1mLyuEqNUb7r5XgGNnbAYphxQN76roce7eBR2TlLtgBWuzIYOmltHR7HqatH\nqZumDl3/qyKlLqU4Rx5lPvqbOYbWza7wD21CJTQKqmCL8GQOuVc25wGA4nSm\nBOIjpf7IF7mw+682lLoMKTcsAAIGYY61WmM/ziRcUfqGof3Uiuezl8jbleDT\nsh77JVStqD5SgWLIs0d+ZOX4GQkCvbdL8pmACp317sQAUp4BV5jGTyQgNpJE\nkgqkA6rL2LJJ15IClv0Hjl44fUQCb8tq1fGQDLqnYXxFKPrNRxsu47r8dR+8\nLwQPwlXe/DYkDDsT0QtJu228m0XM7mdHhadzBXnFpUzGWqndVH473BYF8W2J\nDMN6Wxe17JdWCZiZODqSV+wf5d9D4NuuUd7M3LrAsMr12dz8KvqfdtSobnnn\n7K711aYGQ1WjqlFXg8EO5YQfSFWTUNb3ytnU6nfTwCFosBgIrQ4BO745eFAX\n/MbVKAOvDj1YhjSsXIHMOzTEuYIH2B4ckK2HSPHQtZGW6BS3WJLXBNKETHsm\nlFv3L9bKQHGMaWHq5wOEdqlImjJ/fJOefprojeo2pRPL/nlLQ7SWEvjs9XVD\nZCu3\r\n=MBwB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICRovgU399U07ejVUoEkTQks8x3vH38M1pkiZ9UR2l2BAiEAiduuvx5LhaA2Dzi0UKAN5t9HMY8mer/CjVwCuq4Ekrs="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_0.1.0_1573709970934_0.010654697502517019"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"0.1.1":{"name":"@brianmcallister/api-poller-worker","version":"0.1.1","description":"","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"scripts":{"lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo ./demo-server","prepare":"tsc","stylelint":"stylelint demo/**/*.scss","test":"echo \"Error: no test specified\" && exit 0","types":"tsc --noEmit"},"license":"MIT","dependencies":{"@typescript-eslint/eslint-plugin":"2.7.0","eslint":"6.6.0","eslint-config-airbnb":"18.0.1","eslint-config-airbnb-typescript":"6.1.0","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-promise":"4.2.1","eslint-plugin-react":"7.16.0","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-unicorn":"12.1.0","prettier":"1.19.1","typescript":"3.7.2"},"gitHead":"f85055af71f22be97d26972efe8f3e602077db91","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"homepage":"https://github.com/brianmcallister/api-poller-worker#readme","_id":"@brianmcallister/api-poller-worker@0.1.1","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-pI4+BxsqS+hr8xw1Ebztu3XBXZqUR845eqd9dK02NHpj9UXgu43Soj0QrmchZLYlV/KvOuW8sbKGuOim6L4OEw==","shasum":"80e20137ac1f595ff2a60c1866f79b103eec74c4","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-0.1.1.tgz","fileCount":12,"unpackedSize":18022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzO0dCRA9TVsSAnZWagAAD0kP/iqXaQ8/Ky+gjeFps6/k\nlhmPZAB/Iih7USOpDY4nESlcbuoNSkCPGk3IOK/1U/I/gM0yv34+HTrCgjO1\naU7bNga9Tab8eEcLWTPxNa7XQS01PUT2K++3y59qNSHsc0FPciOgGGLkMkee\nxMsopI7/3vcQCyOHIpMEtDI/9Jaw1lET0hUiUnco9PaQYnXg7D6b8DJ6IaG/\ncovzgKlQtgVcic4V9ENJfd3LtuiIQqGTTuAaIs4KtMDQMu7N5r4VTvL9b1tK\nlHrNvqEFseITmu5oBpyBMp3du5EMjKm1ayWh8uzWiqECCvE9leBJvRMN+lf1\nDT6fMikF6JbFKpqFjFRHzXgqes0zK7jWvKXMd9N5jpU5PXYzn4RZ+K2T+Sn+\nbysydyliRf52pYmNrK+4sbSOil7Wq4m39oOVGW39Nqp9VnIgVSDZbJymwJ4n\nhTuInAqH3xmLwCREG4YMFjobdBo30kIYZ740iIBrNhxzMIX/SECgRlLg/HVd\nStv4NGcWqEjp/dYU3w/svcUNZsID5qdlc36Rnl58OyjXVnB9dZaYcAb6NrYI\nmZ1xA8In6RcgfGldbAF+MFpj4hoYTMazbUSzhmlNVQEMZwCaCHzmYhhIiiJL\nenm8Rj2lIHqLqEHHsmoNr5Rj67uigoPtPXgcRnvHl5DH88UTucejchToMk21\nUCER\r\n=Bb1Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCH29cxtO/OYnKh5N415k8LngyLhWUdhew5JV/T6/Sy2sCIHb8DWb14HyVP5DzQP1W+MlpM2aEq8XwkZ0qr5RJjwCZ"}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_0.1.1_1573711132791_0.5993098424505172"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"0.1.2":{"name":"@brianmcallister/api-poller-worker","version":"0.1.2","description":"","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"scripts":{"lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo ./demo-server","prepare":"tsc","stylelint":"stylelint demo/**/*.scss","test":"echo \"Error: no test specified\" && exit 0","types":"tsc --noEmit"},"license":"MIT","dependencies":{"@typescript-eslint/eslint-plugin":"2.7.0","eslint":"6.6.0","eslint-config-airbnb":"18.0.1","eslint-config-airbnb-typescript":"6.1.0","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-promise":"4.2.1","eslint-plugin-react":"7.16.0","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-unicorn":"12.1.0","prettier":"1.19.1","typescript":"3.7.2"},"gitHead":"d22ff988181872c703d49b6233f7818e9412acd8","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"homepage":"https://github.com/brianmcallister/api-poller-worker#readme","_id":"@brianmcallister/api-poller-worker@0.1.2","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-SmBw2QlEWdLVa1l214f/6HeRIPYRt0pamurt5qzq1ZiegLEsrn3+Ck3krGehn+wVbRIfwwQn2epWfsc8jfiHVA==","shasum":"159af5917f727b8a0c2ba7744478421073c39023","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-0.1.2.tgz","fileCount":12,"unpackedSize":18022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzXT+CRA9TVsSAnZWagAAAQgP/3RTd2W8so/CuDplHeJq\nk1p6SG1BvTY40f9IHPj459kVttaO0pRcDjxj3WSsZ3SfFZwXx+p2HnU6I+Lv\nTXO/uwwtiwhasEXcnmoOIi/NhkOOHDinGVYfMaAR02NLXmSbhvTY6A6bVE1r\nLOms+U0NbfWyczEJJTv3SZ5AuYml6Bx3L7kDrD06dQTKgFmOyr/uAmG3+E2r\n9rByAW2BCSEtHIhhZE5B66CQV4kZHfXekxJmfr0X7Dgb5cIo+veVlNn569qY\nvZYk3qBpNMPX+rdMkTAdNqn1nM2Y1s53rkQPDXzBh/XxbhO+UKg3mWKDAEHp\nStjtxw5r2sQgft6ho5QP24h0yy6zFsvR476asQrQ1WHQ2PHu5j4nMtinfkY2\nIeF9sLh4T8KN0j5bXoR5KOTbVBiC0FHTcbT5RL7BenXjfEfnGTtvzx5lLQvy\n+zVf+hAfqyDXvhmE31sYAhvJatXYh6Pu9wzZHikP+HXalGRJOjVm+vZDjyUI\nLJd8xi2pU3DpcBbXo0VRSqJaB42dGtam7+hyI8lJANIstjnLD8MPBBRNZHR5\n+1Hj1LM5065MhJkM8YZTd106PgeYKVlYNPTHu0PcBZr4H/Ky5ahlKcUDBi+P\nBRMa+DDYFSjdnsSqnR0uvNZib0TXIbl8eIAb+n5d4FDgO8z1bGpHWwOT0nZD\nioV3\r\n=lKqY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC+3/6r2unxLJL9wjftEdxUlcNK/c2/8d34DJMFtz5YSQIgddJzZFNbU3NXKD1GILecNy3Lhb2GSp/K+TYEhbl6/WM="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_0.1.2_1573745918199_0.9998786219857514"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"0.1.3":{"name":"@brianmcallister/api-poller-worker","version":"0.1.3","description":"","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"scripts":{"lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo ./demo-server","prepare":"tsc","stylelint":"stylelint demo/**/*.scss","test":"echo \"Error: no test specified\" && exit 0","types":"tsc --noEmit"},"license":"MIT","dependencies":{"@typescript-eslint/eslint-plugin":"2.7.0","eslint":"6.6.0","eslint-config-airbnb":"18.0.1","eslint-config-airbnb-typescript":"6.1.0","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-promise":"4.2.1","eslint-plugin-react":"7.16.0","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-unicorn":"12.1.0","prettier":"1.19.1","typescript":"3.7.2"},"gitHead":"39313a713d1f10f5495111e36628c1e4d3970cc2","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"homepage":"https://github.com/brianmcallister/api-poller-worker#readme","_id":"@brianmcallister/api-poller-worker@0.1.3","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-ZmoI/XVV+1JCD4a5r7VdHKDGvVbLcIMx4UF9lZQHnhehMnyVp4S2xTZcWfSztR2jjexdnAJav7//2qGOy8FDiw==","shasum":"2cbb3648a05a8905ae2ad1be75d40d05659d0a8c","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-0.1.3.tgz","fileCount":14,"unpackedSize":19239,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzjxnCRA9TVsSAnZWagAAY8AQAI7NJSracNh/IHt4oVvb\n//o4NJ7rPiqBbBqMiu7lyYTzjEu2Fwl4YOkZ+6pudqiuFZxPwQ1HRHPoi1zl\n/7d5pRj/MvqzDYAEOK+QWHv6csyhMYoe4ypos0cAQqw5HtW7+7gGLwyd+LT3\nlYHpljKrGUdLjDMKnpzjRtcFH4f8Q5AScEoQZvSiF2TvtrlublzJKWlXAuzY\n1p8jlYnakKXRhAAzDNw8qLQSp7r2xA19khN7OoY3J6YpWMr1M+xxQ5Gn06d3\n86U+2wBf9lVMyn1dowXjCjuzZt8wHcLuJP7qyg+lbthAkqSqZV3VtLpirDyQ\nlt+nAX5sTcNCnfLLXhhqvkl3aRLlIZHrEx6dXHfwBH9W73sdrVaoJweFrVOu\nRPRPbi/rXYYMg/3nb56fHLUXo5bxwDmPbp1GYNOzrMqMtKtvYvZpbUJYPXQk\nc3p7XGwJVrVcF6rVOlTo0qBwOrCbv9FWmOhNh3eCcGa4+8ZolE4VBZD7K0Gw\nl9MA0FjCZnT6mfbTaADIDe5dLxd7+WiWP6WjpM6ajo3nQI1qtpQr8sAsXdom\nPNfOX+s/I6lBGsu7FAtW2C7yT2iD0oHhO16nzU6cE84hjYRjmRXJecX7Feru\nJ1vyBBSLBMtU7oTGtG4cmrDx4sjkf6BqePMBVmAuLpMKxVsiqmYIVGuoXpMP\nEP1O\r\n=hiNz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCb82qB/CG4GE1uw3stsecY29cX4Qod/lJFRICpRhNw6QIgPbyXAX5CJ2/dkUYX+HL91n1Md95B2U8+Fnd70oaxGxg="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_0.1.3_1573796967070_0.26849405538304816"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"1.0.0":{"name":"@brianmcallister/api-poller-worker","version":"1.0.0","description":"Efficient polling with WebWorkers. Make existing APIs feel real time","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"homepage":"https://api-poller-worker.netlify.com/","license":"MIT","author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"scripts":{"lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo","prepare":"tsc && rimraf dist/*/__tests__","stylelint":"stylelint demo/**/*.scss","test":"jest --coverage","types":"tsc --noEmit"},"dependencies":{"@types/jest":"24.0.23","@typescript-eslint/eslint-plugin":"2.7.0","eslint":"6.6.0","eslint-config-airbnb":"18.0.1","eslint-config-airbnb-typescript":"6.1.0","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-promise":"4.2.1","eslint-plugin-react":"7.16.0","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-unicorn":"12.1.0","jest":"24.9.0","prettier":"1.19.1","rimraf":"3.0.0","stylelint":"11.1.1","stylelint-config-recommended":"3.0.0","stylelint-config-sass-guidelines":"6.1.0","stylelint-scss":"3.12.1","ts-jest":"24.1.0","typescript":"3.7.2"},"gitHead":"4a9a930e84615f3fb56e936589b91712a2becf35","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"_id":"@brianmcallister/api-poller-worker@1.0.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-qQQubdRAIar5XN8+kmHrokFWFjPSB+06HfvKNrKpMsSrGSzRkTxC5whG/75+ZCZHROu4WYc7sTkqQyyv9RBMtw==","shasum":"1b3edab23295be101ed938c8db64977c2eea318e","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-1.0.0.tgz","fileCount":21,"unpackedSize":48902,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdz3SuCRA9TVsSAnZWagAAFgoP+wZNRNyeL3Hf4j9VJ2wL\nPySRYP+XaLZeVN8Yisg+E6vM7bG2Izgsa0DkDB/1SWw/MG/x8RES4/ciQjhq\ncfRzZvT9BSJntnfb0KMCTPvX8XMBUWZkpp2X6ThMtJxj6bjAFcNbpxr1MWAL\nO0+bamCVNJTnytwQTrqnZBbXaK4AtMCl/8QsxD+6CCOItLhVq8rB2+yecv0i\nKH30wujjtpJyVp+J2kLpyYJsV/N3waSl37Zva7rUst7VJVJZZjVyjnNd8LsQ\n6zxJdIvpANz/L4s5oK07RPed3EkoggsW3+Y11NVOHURVv9H8zHE+7Jqf6gGg\n5L1Pd3VI2pvdpmSDqGokYbbM4krGU5aBtovpORXmYcS3hLlB9/RRRioOD/6P\nBTz54GznEN20UOi3kDaEDkIR62OF5Z9kUuDFZqu7ctj27PpPY9ftTEbxef6J\nGXwPV28b/4O9kNJPhGU2Y3oJv2vNPb/qs+90kwWqj3dnADedQO72oV0uIq46\nF8fCuOk2TZ5SNKK3IOHSIp8qZfZXA7IZkZKL1a/QhSLaiSEB8Oe9dhOS22xS\ntyx5CCE37s81SOb4yu/9XO+mTP4cF7cQNvqorv88tK/fHh0XEaXA4J0Gsq0b\nDwEJajK4hA1ue+Cmbb1xMU2C0xtlq+JO5HgNOQc9GQvcUM/FLeTzp/KPxMgS\n/uZh\r\n=YBIo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDef5MCuyKPqEh1lv1cOZOFaKRF98c+AuhiQnuD4j4g2AIgfIp9mauWFBuNZGCzCTvOXvgrp2PihKw1uBt65uEAwJY="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_1.0.0_1573876910386_0.22382853089196386"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"1.0.1":{"name":"@brianmcallister/api-poller-worker","version":"1.0.1","description":"Efficient polling with WebWorkers. Make existing APIs feel real time","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"homepage":"https://api-poller-worker.netlify.com/","license":"MIT","author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"keywords":["api","polling","real-time","webworker","javascript"],"scripts":{"lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo","prepare":"tsc && rimraf dist/*/__tests__","stylelint":"stylelint demo/**/*.scss","test":"jest --coverage","types":"tsc --noEmit"},"devDependencies":{"@types/jest":"24.0.23","@typescript-eslint/eslint-plugin":"2.7.0","eslint":"6.6.0","eslint-config-airbnb":"18.0.1","eslint-config-airbnb-typescript":"6.1.0","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-prettier":"3.1.1","eslint-plugin-promise":"4.2.1","eslint-plugin-react":"7.16.0","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-unicorn":"12.1.0","jest":"24.9.0","prettier":"1.19.1","rimraf":"3.0.0","stylelint":"11.1.1","stylelint-config-recommended":"3.0.0","stylelint-config-sass-guidelines":"6.1.0","stylelint-scss":"3.12.1","ts-jest":"24.1.0","typescript":"3.7.2"},"gitHead":"744ff760a76dd22d1677687ff5f55425c3b3863b","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"_id":"@brianmcallister/api-poller-worker@1.0.1","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-QV/A2pH9Ef5lQ706Y5G6plH5Rz2UoIgXQs3begSETO5TbtpmYNs9aRCSWCd4wZje6rY8w7iD50iKwGpE8xs2Fg==","shasum":"0f9c7d175533b2a8f6ae3116237175dc4bf107fd","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-1.0.1.tgz","fileCount":21,"unpackedSize":49264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0DM2CRA9TVsSAnZWagAACC4P/2elE0ktnkp48MfD1Xjl\nrvKmhT8BbnlQKCDeQWUtzQadNeW/GoHXY3hjglwNp0MAqhG9tGLESlKpMN7y\n5zj/scxWsaBhzwr+f/NgIBaOfe0Za5o9c5ASEoUxo2JbpvPWsugZKMd+LaMq\nPosPWjvVxNfd/MmB/gQSUCO3UY4Ekr2kuOmgOKD0lISzPX4hJGmqRQNgw+a/\nktbsUCdLQ5AAS7c3J2K3bR3QNEpKaquD9c6E+P2sUjddc56mpa9+dI+a8h8a\naYn6JhPn8fqQOCWjJNU3eiaAODCr0Rk8efBBl/YmjlugjvWAIQz6nDGOTzNg\nPHF7tTIpGLxD8SBLYp0K38pVJBi4flUjAG8Ip54N7sk/6/J7FOwi3j4FsrDO\nkTc7WJkrXgMNJkp7fJ9NWENCLBNmkJ5yzBXW5Ln/xsAW3pmeAIqZnU/ywmZm\nZPjI7H3s5KxtGOYugxyV6PhSboP59x9yetKJjGrNNUWltdc932z6A6/MqiLZ\nZNpCZkpVYVEZssFe2GcppH6p4PbyEWxSSTsPDSy7uWGviwPHyls/QWFlgl+k\nATPmuc5Mfa7ok9V/pikwjhnPpT3apifbp2uPkWqaCNQ3Efe3Miiq9SWp+J7l\n8A3M+wHW3B1fEdQmmc2jUE0t+kemGxdrZ5/0qd1E92xWWEqh1KFRBd8gge6f\nnDcR\r\n=OdC3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHOQ4WzKWKxBDZk4abdBO1Pm58Ani0valPxC7aXhMrnQAiEA2/n2smLp1bapiNWmarDPe8eOeXDmWTANd0SUObXUQGM="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_1.0.1_1573925686309_0.1598037564934065"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"1.1.0":{"name":"@brianmcallister/api-poller-worker","version":"1.1.0","description":"Efficient polling with WebWorkers. Make existing APIs feel real time","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"homepage":"https://api-poller-worker.netlify.com/","license":"MIT","author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"keywords":["api","polling","real-time","webworker","javascript"],"scripts":{"lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo","prepare":"tsc && rimraf dist/*/__tests__","stylelint":"stylelint demo/**/*.scss","test":"jest --coverage","types":"tsc --noEmit"},"devDependencies":{"@types/jest":"24.0.23","@typescript-eslint/eslint-plugin":"2.7.0","eslint":"6.6.0","eslint-config-airbnb":"18.0.1","eslint-config-airbnb-typescript":"6.1.0","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-prettier":"3.1.1","eslint-plugin-promise":"4.2.1","eslint-plugin-react":"7.16.0","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-unicorn":"12.1.0","jest":"24.9.0","prettier":"1.19.1","rimraf":"3.0.0","stylelint":"11.1.1","stylelint-config-recommended":"3.0.0","stylelint-config-sass-guidelines":"6.1.0","stylelint-scss":"3.12.1","ts-jest":"24.1.0","typescript":"3.7.2"},"gitHead":"8d84a9c8d19754474882a9b378ce1b810d1977c8","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"_id":"@brianmcallister/api-poller-worker@1.1.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-zTYTeiL2viXJmOozpmAy8Dj7mgqwzCYmtK4537PqM1/yfl/GItexh0r4ZpyQPiUC7JrpAT2AppMyNfqbSsx6hA==","shasum":"f6e9928daca19d2d98fd9e8891a7366c12624629","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-1.1.0.tgz","fileCount":21,"unpackedSize":64360,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1IoBCRA9TVsSAnZWagAAhX8P/jpM6ADl4TboKJS58zYB\n+sh70KxYuRl7wjdhhyrT1ikDuO0alFDNPXA9c7pBbsALobn6/RvAG9cfr64b\n6K6cZOeMcyBHQB6Y9c6AHyAgAxyPcPjUacq45LvvB3UR/pazZZZdx6gBXnYg\n8ygrWNI0ORzwTl0rnm/58RrKEL4W4WYXupP0Wlu37FeNaG8izZfFEP0wyuAy\n3XDojkFOzawOO8+bEXLrD0z2QGlRU1h7EwI86XIS+Hu7EFSs4ftfufkC0OKg\ncUW7jmxqfz5blUnFdQZosBtKpGoagyQmtBtWdMU7eV6sS9lAsTFAs7QPLCFr\nt7DO1gyFXj6E0mhKfDNH1+gbSaae71Vs3ovN3+9ii7nJ7g8Ua+cROGYivu1q\nTj1ddrnsZT4qH+acyJqnKBslIoUb8YS+BWVoC3MJ8DFqPaJjqk1PWStPuuwX\nYax4jEY66HRlps8PGlhvxdS+YLnz01PvdyP5uSZEQasl4//x8f81ug59NiWP\nUkYpIANeNUXPg44N5g/Yk49gA9+oaNfHRznAS3j4GTwX1ur2khrcD3F4sZXa\nC9Q8Y2UJfCrJkc7DniFg96kMeE+zF34bNjBcFGuhkCiXNjTDWFWFqcPI/RXF\ncqcjz69L72UgljGZO7BTW6Ic81zEqCzGuiBUgcK0ox3jbi7LLSbc4t/JkDMt\n0+ea\r\n=LEyr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD4rfR8UPe6U+jMibRFnwosOsOq9Haluo//6nYQkoU65wIgSlAifB2qWaS7gTFo/VkMWshpnxLEyn8oUHV1OnnNRHw="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_1.1.0_1574210048688_0.12605367666922263"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"1.2.0":{"name":"@brianmcallister/api-poller-worker","version":"1.2.0","description":"Efficient polling with WebWorkers. Make existing APIs feel real time","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"homepage":"https://api-poller-worker.netlify.com/","license":"MIT","author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"keywords":["api","polling","real-time","webworker","javascript"],"scripts":{"build:worker":"rollup -c","lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo","prepare":"rimraf dist && tsc","stylelint":"stylelint demo/**/*.scss","test":"jest --coverage","types":"tsc --noEmit"},"devDependencies":{"@babel/cli":"7.7.0","@babel/core":"7.7.2","@babel/preset-env":"7.7.1","@babel/preset-typescript":"7.7.2","@types/jest":"24.0.23","@typescript-eslint/eslint-plugin":"2.7.0","babel-cli":"6.26.0","babel-core":"6.26.3","eslint-config-airbnb-typescript":"6.1.0","eslint-config-airbnb":"18.0.1","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-prettier":"3.1.1","eslint-plugin-promise":"4.2.1","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-react":"7.16.0","eslint-plugin-unicorn":"12.1.0","eslint":"6.6.0","jest":"24.9.0","prettier":"1.19.1","rimraf":"3.0.0","rollup-plugin-babel":"4.3.3","rollup-plugin-typescript":"1.0.1","rollup":"1.27.2","stylelint-config-recommended":"3.0.0","stylelint-config-sass-guidelines":"6.1.0","stylelint-scss":"3.12.1","stylelint":"11.1.1","ts-jest":"24.1.0","typescript":"3.7.2"},"gitHead":"e216d1587353e3b9dabf294877e208642c0df95d","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"_id":"@brianmcallister/api-poller-worker@1.2.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-Mq9cN/Kp5waUu4gWOwUnVP3Y+qWiTXVrD5eBX4QDgQpH7hio3YsO4KI0FRJavLkHLihbdJga7O2P8Sp9FkjLvA==","shasum":"ccbdde550a2f1c7fba652f88116f3eb97d439dd9","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-1.2.0.tgz","fileCount":19,"unpackedSize":37430,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd2KN0CRA9TVsSAnZWagAA/wsP/2QOwaIk53NFy8RT+ynD\nOVkoTvJyODKlkAqQpxg1VYzFIIn8Hiy0e02zxxL99MI1Uq0rTaGhWEBtU5fh\nGdmJ2LzZdPLzapmp/HlErpYCdN6yPvsaquKGvem3iVa1y8neaVifg2N8UDPr\nN9o3LH5kFO+RQH/96V5ERXgfoRPDkrm7Sz/woTvub2Z9eGQHk6uBN5Gq+M12\nOoDgsKBDQ9XLty/5fiDLx2hOFLWh148Ch0TDjk1l/PSeq5zG1/qs/rg9M9W9\nc/0NJwLkH65IiLCeSBAnK56+hSlfn98vtFyPXPg3KtbxyERihvVKdhdluy4R\nSRk3EHkGaznGPuhgvbx5ZsYsCQCokWWDDd6mx+pT82r+3TRlpi63diZirCIF\nqDdkAUe7n6xDwlUv5Tm2sKgNnw0Lmt0Bc4PM6mv75ey+nPkvywA+hQZpNrcM\nYL+b50K863pqyiJ8b42rHEa55nQ4zJiAQuBEZux4hHZXWUpTOBiZFhwgyYGe\nZhf8DAxGROFlsAy4qJhCu1fgiX8I06tgo5mqWXfqwkXZh8mnSBf1pGsL5HLx\nDkHc42Qcqwne4xIggbK9w0Umx87O0pOWNx474P2v/YbYVmt26MeBfsQENBA+\nK2Or8OFTaFVCqdAecnZbZABiVljvVVqtadBNh6RjEqomTp0oEKQ90N6XUv+Q\nTI56\r\n=dmt0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAhJgoO6P5fTyZnRUD+SPphl4rR23mNe82wBdUeAuUAfAiB0iqIg6UEUmndvLU+VY8trBmZT5+HjMMqUZ3pV+6KQ8g=="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_1.2.0_1574478708352_0.3623672197688492"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"1.3.0":{"name":"@brianmcallister/api-poller-worker","version":"1.3.0","description":"Efficient polling with WebWorkers. Make existing APIs feel real time","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"homepage":"https://api-poller-worker.netlify.com/","license":"MIT","author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"keywords":["api","polling","real-time","webworker","javascript"],"scripts":{"build:worker":"rollup -c","lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo","prepare":"rimraf dist && tsc","stylelint":"stylelint demo/**/*.scss","test":"jest --coverage","types":"tsc --noEmit"},"devDependencies":{"@babel/cli":"7.7.0","@babel/core":"7.7.2","@babel/preset-env":"7.7.1","@babel/preset-typescript":"7.7.2","@types/jest":"24.0.23","@typescript-eslint/eslint-plugin":"2.7.0","babel-cli":"6.26.0","babel-core":"6.26.3","eslint-config-airbnb-typescript":"6.1.0","eslint-config-airbnb":"18.0.1","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-prettier":"3.1.1","eslint-plugin-promise":"4.2.1","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-react":"7.16.0","eslint-plugin-unicorn":"12.1.0","eslint":"6.6.0","jest":"24.9.0","prettier":"1.19.1","rimraf":"3.0.0","rollup-plugin-babel":"4.3.3","rollup-plugin-typescript":"1.0.1","rollup":"1.27.2","stylelint-config-recommended":"3.0.0","stylelint-config-sass-guidelines":"6.1.0","stylelint-scss":"3.12.1","stylelint":"11.1.1","ts-jest":"24.1.0","typescript":"3.7.2"},"gitHead":"5d97b7caf881857ea790da24a1ae073f6c10b9de","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"_id":"@brianmcallister/api-poller-worker@1.3.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"dist":{"integrity":"sha512-rFcuD4s8EIIsT12tL1uFgyUFA104ZHjQHSSlx0IPVTYXIYIL4ltJ+D8gxU86cL7iEN1Ini/JTSTOAWkxmmir7g==","shasum":"44c6fe65b6b0a0259476faf6d70553cbb1e2ba35","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-1.3.0.tgz","fileCount":19,"unpackedSize":37694,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd2KrlCRA9TVsSAnZWagAAN6wP/2x/qAWnbUu7FtsYCIEQ\nFzuHe3BYdmXynslqQBu51SNVYM1cl0F+7SV0tt3tScrbOpIEmUxn80barmFC\n1pkxLcQqVa6+aW3wdUQfxzdLX7rWXr6oKwWhWghmDCbmaXQxg4PIlaUzRnbb\nxvRn4jp4DGWiAvK0oq5mEpnySele1FI+94YrBZC051TqEcQY/6oDAKeYoZgm\nn6SV+m5gAFQFFVnd6Ck1lN8AFI+WwtWze/TikEI+NfVY2qt0V08aokXEh3rf\nuGRiH2UA4rVh9s3gH2MR5ZY1qO2fuR9LEYxum9Zv0D6EX3nzgRZN3lJPjS5s\nxizmu/Ug7hyX/R5WpFFapxxS7w6QdEy/xFOEotwQz5BlFgNNynh++T5ViIze\nXwXcqEBr5b19oDxgDjeSlXYWWnqy1GYZ+yH5WNxjs9H6i3fnmOgFi9V5ACRs\nRSg80n7BmdCSGq7TFSSwVlh06cfTyQHD+KWGDcw4fn2omnZ0kmvhWtdfQ15Q\n4mXBujOdpxeTPshMAxGRodHe8HtqZOxhOr47OJbAdMt1GshiARoeMpzOeBYE\nsIIhlPNhH85rhDBfoZJcBi2Xk2SV5YvM0+J2v23hcdua9QJfZph8m/d083Qh\nk5A17D/BKAyesDkWk4bg6u1fuy2mx11SkLKC+rKoRK+/57S5tVxay6D0DTM9\neptY\r\n=M5o+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwi6KWjB5KyYb4gBp0RKW4ZoIbgyfn+fdh+WY7lgVyNwIgcCGvpeqQ3wxoPTILrqf/VyGsg4SPE2ZkgazS/UhOkLQ="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_1.3.0_1574480613444_0.23742874942734638"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"},"1.3.1":{"name":"@brianmcallister/api-poller-worker","version":"1.3.1","description":"Efficient polling with WebWorkers. Make existing APIs feel real time","main":"dist/index.js","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"homepage":"https://api-poller-worker.netlify.com/","license":"MIT","author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"keywords":["api","polling","real-time","webworker","javascript"],"scripts":{"build:worker":"rollup -c","lint":"eslint --cache --ext .js,.jsx,.ts,.tsx --ignore-path .gitignore ./src ./demo","prepare":"rimraf dist && tsc","stylelint":"stylelint demo/**/*.scss","test":"jest --coverage","types":"tsc --noEmit"},"devDependencies":{"@babel/cli":"7.7.0","@babel/core":"7.7.2","@babel/preset-env":"7.7.1","@babel/preset-typescript":"7.7.2","@types/jest":"24.0.23","@typescript-eslint/eslint-plugin":"2.7.0","eslint":"6.6.0","eslint-config-airbnb":"18.0.1","eslint-config-airbnb-typescript":"6.1.0","eslint-config-prettier":"6.5.0","eslint-plugin-eslint-comments":"3.1.2","eslint-plugin-import":"2.18.2","eslint-plugin-jest":"23.0.3","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-prettier":"3.1.1","eslint-plugin-promise":"4.2.1","eslint-plugin-react":"7.16.0","eslint-plugin-react-hooks":"2.2.0","eslint-plugin-unicorn":"12.1.0","jest":"24.9.0","prettier":"1.19.1","rimraf":"3.0.0","rollup":"1.27.2","rollup-plugin-babel":"4.3.3","rollup-plugin-typescript":"1.0.1","stylelint":"11.1.1","stylelint-config-recommended":"3.0.0","stylelint-config-sass-guidelines":"6.1.0","stylelint-scss":"3.12.1","ts-jest":"24.1.0","typescript":"3.7.2"},"gitHead":"37a2fdfd79c628a881b4fa177b812c49dd9c2c26","bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"_id":"@brianmcallister/api-poller-worker@1.3.1","_nodeVersion":"10.15.2","_npmVersion":"6.13.1","dist":{"integrity":"sha512-FZj+8ttBgFgBS1qTnEnSK95+uRnpFhIxUk/OxbeV8WpuX2Sv+oSF9rt2E6unT5vhJ71JccpNIXc7e0BDqVoQEQ==","shasum":"8904a80fdc537c0b2f9955c6d12885eed3cf3bf1","tarball":"https://registry.npmjs.org/@brianmcallister/api-poller-worker/-/api-poller-worker-1.3.1.tgz","fileCount":19,"unpackedSize":37639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7pZbCRA9TVsSAnZWagAAk0oP/imFvG0mfvF9weIzbaCI\nYAR9NtbtlcLaCTiq04MHopDwBPpyuiwvebJdrTTf+7jrX7ynD/ncoTfbkvEC\naDnDOIQFwZL8JjBrtJiHF0agL3SGlcG30TUpHRDIcQ51GX25LcOz/JexEjnR\nnAmtjbJ+7tVffp4kANMJ1ialayxZRZKwhLmWXCff3T4RBFGdp2ExJzx55Xs0\nzWA+zpERjaR857BVFqp0qXpRLz0HomRyBa9u+aM2hUsjLYyUKbWWVJywVtiz\nsKEG4pGHnandimZ+KAsY28os36np7YRi4l8nwr9Egc70b0+VSEnC6bPyO8Fg\nBIrVuydflZb2tieuodUelk/cXJYf60GsMaY3CYK9HITkB5CiW79x9eQER07a\ntPA2DkrpmJKkQTj5px+jG2qmFKq5Y55KtqHm2t19Bcb9Hi2eCrF/xcUP9Tms\n70pAg5jK7n0kunavgQGz2oYg9J7pPqH3OnubqTqJxu5iXiSwR73kWNt22ArF\nGQSmYkflEou/u2HXkgr6jR27VsVzsQLSl5ZqXa93MzWySIu6mFA4m/7vT4nl\n0JwDeSx+KNHmA/Nqg0SRN4lWJMrnlylqF5mnR8Sr8vdi3RxTFBK4Rs2lDIKo\nD/LS9XoLTmR7IVVoc4wv4PuvABbfBt2JSLBNYu1PMNelNGKwFhaXQ+oox5L4\nL9+n\r\n=agDT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGm9URldgu4QNyul94c1RtS94Fby7Flt7vFx2RPCVu0YAiBH/3CJNhN5SbWLpupMvTG/CHo8wDlMATCy5PTjnnHd0Q=="}]},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"_npmUser":{"name":"brianmcallister","email":"brian@brianmcallister.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/api-poller-worker_1.3.1_1575917147345_0.374005706228165"},"_hasShrinkwrap":false,"deprecated":"Package moved to api-poller-worker"}},"time":{"created":"2019-11-14T05:39:30.933Z","0.1.0":"2019-11-14T05:39:31.090Z","modified":"2022-04-04T20:32:01.520Z","0.1.1":"2019-11-14T05:58:52.918Z","0.1.2":"2019-11-14T15:38:38.368Z","0.1.3":"2019-11-15T05:49:27.260Z","1.0.0":"2019-11-16T04:01:50.495Z","1.0.1":"2019-11-16T17:34:46.435Z","1.1.0":"2019-11-20T00:34:08.819Z","1.2.0":"2019-11-23T03:11:48.611Z","1.3.0":"2019-11-23T03:43:33.576Z","1.3.1":"2019-12-09T18:45:47.500Z"},"maintainers":[{"name":"brianmcallister","email":"brian@brianmcallister.com"}],"homepage":"https://api-poller-worker.netlify.com/","repository":{"type":"git","url":"git+https://github.com/brianmcallister/api-poller-worker.git"},"author":{"name":"Brian Wm. McAllister","email":"brian@brianmcallister.com","url":"https://www.brianmcallister.com"},"bugs":{"url":"https://github.com/brianmcallister/api-poller-worker/issues"},"license":"MIT","readme":"# @brianmcallister/api-poller-worker\n\n[![codecov](https://codecov.io/gh/brianmcallister/api-poller-worker/branch/master/graph/badge.svg)](https://codecov.io/gh/brianmcallister/api-poller-worker) [![CircleCI](https://circleci.com/gh/brianmcallister/api-poller-worker.svg?style=svg)](https://circleci.com/gh/brianmcallister/api-poller-worker) [![npm version](https://img.shields.io/npm/v/@brianmcallister/api-poller-worker?label=version&color=%2354C536&logo=npm)](https://www.npmjs.com/package/@brianmcallister/api-poller-worker)\n\n> Efficient polling with WebWorkers. Make existing APIs feel real time\n\n`api-poller-worker` turns regular 'ol RESTful JSON APIs into realtime streaming connections (not really), using polling with web workers.\n\n## Table of contents\n\n- [Demo](#demo)\n- [Installation](#installation)\n- [Usage](#usage)\n- [API](#api)\n  - Classes\n    - [`ApiPollerWorker`](#apipollerworker)\n      - [`#start`](#apipollerworkerstart)\n      - [`#stop`](#apipollerworkerstop)\n      - [`#onMessage`](#apipollerworkeronmessage)\n    - [`WorkerCore`](#workercore)\n  - Utils\n    - [`createEmptyMsg`](#createemptymsg)\n  - Types\n    - [`Records<T>`](#recordst)\n    - [`Msg<T>`](#msgt)\n    - [`ApiPollerWorkerOptions`](#apipollerworkeroptions)\n\n## Demo\n\nHosted demo: [https://api-poller-worker.netlify.com/](https://api-poller-worker.netlify.com/)\n\nYou can also run the demo locally. To get started:\n\n```sh\ngit clone git@github.com:brianmcallister/api-poller-worker.git\ncd api-poller-worker/demo\nnpm i\nnpm start\n```\n\n###### [⇡ Top](#table-of-contents)\n\n## Installation\n\n```sh\nnpm install @brianmcallister/api-poller-worker\n```\n\n###### [⇡ Top](#table-of-contents)\n\n## Usage\n\n### How to get started\n\nThere are two ways to use this library:\n\n1. Set `inline` to `true` when creating an `ApiPollerWorker`. Doing this will create an [inline worker](https://www.html5rocks.com/en/tutorials/workers/basics/#toc-inlineworkers). Although this is much easier than option 2, if you need fine grained control over what's going on inside the worker (such as making other XHR requests, doing expensive calculations based on the data returned by the API that you're polling, etc.), you'll want to try...\n2. Provide a URL to a worker file. Within that worker file, you need to create an instance of `WorkerCore`. If you do this, you now have the ability to manipulate the data from the API endpoint before you pass it back to your application. You also have the ability to pass more fine grained options to the `WorkerCore` class.\n\n#### Option 1: Inline worker\n\nHere's an example of how to create an inline worker:\n\n```ts\nconst worker = ApiPollerWorker({ inline: true, apiUrl: '<my api url>' });\n\nworker.onMessage(data => console.log(data));\n```\n\n#### Option 2: Create your own Worker.\n\nThere are two distinct steps to getting this working:\n\n1. Create an [`ApiPollerWorker`](#apipollerworker) instance in your application, and subscribe to updates.\n2. Create a web worker, and create a [`WorkerCore`](#workercore) instance inside of it.\n\nWhat this library does _not_ help with is creating the worker files themselves. You'll have to set this up in your application's build pipeline, but there are many resources available online to guide you. You can also check out the demo application source to see how I like to set it up.\n\n- [Worker documentation on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Worker)\n- [`worker-loader`, a webpack plugin](https://github.com/webpack-contrib/worker-loader)\n- [Demo application source](https://github.com/brianmcallister/api-poller-worker/tree/master/demo)\n\nIn short, you need to tell your [`ApiPollerWorker`](#apipollerworker) where your worker is, and then in your worker, you need to tell [`WorkerCore`](#workercore) where the API endpoint you'd like to poll is.\n\nThe reason for structuring the code this way is so that you can do other operations on the data from your polled API endpoint _in your worker_, before passing the data back to your application.\n\n### Assumptions\n\nInternally, there are some assumptions being made about the API that is being polled. Specifically that the API endpoint responds with JSON, as a list of objects with a unique identifier.\n\nWhich key is used as the unique identifier is configurable (see [`WorkerCore`](#workercore)), but there does need to be one. As long as your endpoint responds with something like this, everything should work just fine:\n\n```json\n[\n  {\n    \"id\": 1,\n    \"some\": \"value\"\n  },\n  {\n    \"id\": 2,\n    \"some\": \"other value\"\n  }\n]\n```\n\n###### [⇡ Top](#table-of-contents)\n\n## API\n\n### Classes\n\n#### `ApiPollerWorker`\n\n```ts\nimport { ApiPollerWorker } from '@brianmcallister/api-poller-worker';\n```\n\nThe `ApiPollerWorker` class is what coordinates the communcation between\nyour app and your worker. The constructor accepts the following:\n\n```ts\ninterface ApiPollerWorkerOptions {\n  // URL of the API endpoint to poll. This is only required\n  // if inline is true.\n  apiUrl?: string;\n  // Tell the worker to start polling immediately.\n  // Defaults to true.\n  autoStart?: boolean;\n  // Create an inline worker.\n  // Defaults to false.\n  inline?: boolean;\n  // URL of the Worker to be created.\n  // This option is required if inline is false.\n  workerUrl?: string;\n}\n```\n\n##### `ApiPollerWorker#start`\n\nSend a message (via `postMessage`) to the worker, telling it to start polling.\n\n```ts\nstart(): this;\n```\n\n```ts\nconst pollerWorker = new ApiPollerWorker<Resource>({\n  workerUrl: '/my-worker-file.js',\n});\n\npollerWorker.start();\n```\n\n##### `ApiPollerWorker#stop`\n\nSend a message (via `postMessage`) to the worker, telling it to stop polling.\n\n```ts\nstop(): this;\n```\n\n```ts\nconst pollerWorker = new ApiPollerWorker<Resource>({\n  workerUrl: '/my-worker-file.js',\n});\n\npollerWorker.stop();\n```\n\n##### `ApiPollerWorker#onMessage`\n\nSubscribe to updates from the `ApiPollerWorker` instance. The response is a [`Msg<T>`](#msgt), which is structured so that your application will know exactly which resources in your polled endpoint are new, updated, or removed.\n\n```ts\nonMessage(callback: (data: Msg<T>) => void): this;\n```\n\n```ts\nconst pollerWorker = new ApiPollerWorker<Resource>({\n  workerUrl: '/my-worker-file.js',\n});\n\npollerWorker.onMessage(data => {\n  // `data` will be of type Msg<Resource>\n  console.log('got data', data);\n});\n```\n\n###### [⇡ Top](#table-of-contents)\n\n#### `WorkerCore`\n\n```ts\nimport { WorkerCore } from '@brianmcallister/api-poller-worker';\n```\n\nThe `WorkerCore` class is the what you need to create an instance of in your Worker. The constructor accepts the following options:\n\n```ts\ninterface WorkerCoreOptions {\n  // Options to pass to `fetch`.\n  fetchOptions?: RequestInit;\n  // URL to poll.\n  url: string;\n  // Unique key for the resources returned by the API.\n  // Defaults to 'id'.\n  uniqueKey?: string;\n  // How often the API endpoint should be polled,\n  // in milliseconds.\n  // Defaults to 2000.\n  interval?: number;\n}\n```\n\nHere's an example of the simplest possible Worker file (with type safety).\n\n> `worker.ts`\n\n```ts\nimport { WorkerCore } from '@brianmcallister/api-poller-worker';\n\nimport { Resource } from '../src/types';\n\nnew WorkerCore<Resource>({ url: '<some endpoint>' });\n```\n\n###### [⇡ Top](#table-of-contents)\n\n### Utils\n\n#### `createEmptyMsg`\n\nCreate the [`Msg<T>`](#msgt) structure, but empty. Useful for building default state for a slice of Redux state.\n\n```ts\nimport { createEmptyMsg } from '@brianmcallister/api-poller-worker';\n```\n\n```ts\ncreateEmptyMsg<T>(): Msg<T>\n```\n\n###### [⇡ Top](#table-of-contents)\n\n### Types\n\n#### `Records<T>`\n\nKeep track of a normalized set of records.\n\n```ts\nimport { Records } from '@brianmcallister/api-poller-worker';\n```\n\n```ts\ninterface Records<T> {\n  ids: string[];\n  byId: { [id: string]: T };\n}\n```\n\n###### [⇡ Top](#table-of-contents)\n\n#### `Msg<T>`\n\nRepresents the contents of the message emitted by the [`WorkerCore`](#workercore).\n\n```ts\nimport { Msg } from '@brianmcallister/api-poller-worker';\n```\n\n```ts\ninterface Msg<T> {\n  newItems: Records<T>;\n  updatedItems: Records<T>;\n  removedItems: string[];\n}\n```\n\n###### [⇡ Top](#table-of-contents)\n\n#### `ApiPollerWorkerOptions`\n\nOptions object accepted by [`ApiPollerWorker`](#apipollerworker).\n\n```ts\nimport { ApiPollerWorkerOptions } from '@brianmcallister/api-poller-worker';\n```\n\n```ts\ninterface ApiPollerWorkerOptions {\n  apiUrl?: string;\n  autoStart?: boolean;\n  inline?: boolean;\n  workerUrl?: string;\n}\n```\n\n###### [⇡ Top](#table-of-contents)\n","readmeFilename":"README.md","description":"Efficient polling with WebWorkers. Make existing APIs feel real time","keywords":["api","polling","real-time","webworker","javascript"]}