{"_id":"@benjstephenson/circuit-breaker-ts","_rev":"2-c68abf539c0f6e6b8766678f324ab329","name":"@benjstephenson/circuit-breaker-ts","dist-tags":{"latest":"0.0.3"},"versions":{"0.0.1":{"name":"@benjstephenson/circuit-breaker-ts","version":"0.0.1","description":"Small circuit breaker implementation to wrap a lazy thunk","main":"./index.js","types":"./index.d.ts","repository":{"type":"git","url":"git://github.com/benjstephenson/circuit-breaker-ts.git"},"author":{"name":"Benji Stephenson"},"license":"ISC","dependencies":{"kittens-ts":"^0.0.7"},"gitHead":"ed43d4e8df17c1300948b25f4fcd85227292cf19","bugs":{"url":"https://github.com/benjstephenson/circuit-breaker-ts/issues"},"homepage":"https://github.com/benjstephenson/circuit-breaker-ts#readme","_id":"@benjstephenson/circuit-breaker-ts@0.0.1","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-Ra+vR6nvq/bRtQQmAXx5SOIEP9TrmbhCyKVQRfyb67xG30+fkIqfuJ7dcho1PReZfPQ46qFSwXFF4eixIBxmQw==","shasum":"c94ba643f2fece181cc717dbe54e051fd8e84103","tarball":"https://registry.npmjs.org/@benjstephenson/circuit-breaker-ts/-/circuit-breaker-ts-0.0.1.tgz","fileCount":5,"unpackedSize":5755,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7HVuV1MF1tjrAnD+N8OsIqS0h7UPDp7TRsjRDdiJKBwIhAI/cC/glLv4e1vg4/p4fusK+s2HnbmLwBrdGx1IHN48X"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiS2gJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmokjg/9GrWuHa4oE/JD5DEctVDUo05QZm1spEUwRL27BfXO2NotFF1i\r\nMnb6F8qLkOfNy7JTHmVZYA8xnGDEeKFZsYNl+fUzXZCpGv6d5VH9pyWwmP0U\r\nq+MogYhAaQkmqgzqqh+0I/iDwXrSKgn4hHdqUVqSvI7D0YPI4XxNEkv/KGj4\r\nC9Oi5aw9rZ6ojDpS9lu/dJ6UY8Bj+xtgtUlg//Z7oQuPC4JcDfMcAjWyfU9c\r\nD7yODblZumIod4BRbWe3P9egkLC/xPi4iKDopMuK19mas7YHdOdAFeYwv3g+\r\no9WdteDP4Pecx50KfluNm5jefxN3+lWFKIEccY9uBw+An+BBmr/VqdCw7Uhh\r\nfOMea7pb3BVAIb9FI229yElnFHDqUfEJnaq9zDCJLINXkW3zK0pFN0Z0qFFF\r\ncw7RsD8sFwSSv4idckNi/2VQ30bmOHQHiVrp/b/6YECj+QizjUKwbMUJX8yd\r\naf4ohX99NI5Xhf0aAFKfuN4OUVCaIzTW6wwYqARxfmAN9hgDMDkgwIucMvGD\r\nr72tzqDLu0CWjdVHMd/Xo33yAQIA6bM4yaa+XKMG9qsSvqGF+djm4MxZTiXU\r\n/yzKwPjBIxcHkMiCbChkScMnxxWOfn/QT5qB4Q3L+5m1ODwQ9H2oE1zVSWts\r\n5ZZnJzh9irgXap3mxZ6TPeJiJkP0F+pkIRY=\r\n=rpJ0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"benjstephenson","email":"bjames.stephenson@gmail.com"},"directories":{},"maintainers":[{"name":"benjstephenson","email":"bjames.stephenson@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/circuit-breaker-ts_0.0.1_1649109001728_0.1750268903169292"},"_hasShrinkwrap":false},"0.0.2":{"name":"@benjstephenson/circuit-breaker-ts","version":"0.0.2","description":"Small circuit breaker implementation to wrap a lazy thunk","main":"index.js","types":"index.d.ts","repository":{"type":"git","url":"git://github.com/benjstephenson/circuit-breaker-ts.git"},"author":{"name":"Benji Stephenson"},"license":"ISC","peerDependencies":{"kittens-ts":">= 0.0.7"},"gitHead":"e588fd80cb15f3f8ca1b12832c2a39e21e2e5f07","bugs":{"url":"https://github.com/benjstephenson/circuit-breaker-ts/issues"},"homepage":"https://github.com/benjstephenson/circuit-breaker-ts#readme","_id":"@benjstephenson/circuit-breaker-ts@0.0.2","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-9p8MnkY19DQP6tyzcwLCITKjJjVnw8SrGsNtxwNrrLh+S9pJfQ9Lbwzgv1gYN6JeL+664fOGba51zlXKbJoycg==","shasum":"b3ae393eb61065a2dd15d1bc0ae8175e12f0dccc","tarball":"https://registry.npmjs.org/@benjstephenson/circuit-breaker-ts/-/circuit-breaker-ts-0.0.2.tgz","fileCount":5,"unpackedSize":5757,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDm3Rh1wxl2I82Qg/cIsaRPYqUG5Wh1Fg4PWo9b0RIixQIhAKStxi67oWaYUTSZArZHxdDxsFzcX94LZBSTU22hu3n8"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVz2nACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq5sQ/+Kz+Ux8QbXB0RtByoXlUjrJM4Mzq2cuupx/E7GTgu0VeSmNEm\r\n3qaNKk4ovL0275ctR4AazNync1Au1ZOXFgy5rWlUweCkbGLuPNNXDHFquB2i\r\nznVEgq3wjz4dWZDPfLZxHAAOFIO/OofycjDHy4JSFNxB1BCXzBUVlWkbx0lo\r\ncvouD+rdCf1CO0LwVOmolM5MpAHzaSjJfa/6ewp8DYDCqUDmvwiuFL3BEAeK\r\n1Y/9AwmgTtvpMRhm1XxUESh3e2PbVGKRHzq6nc4eTVT2XMZkZkCczX7716CK\r\n45pD2xC6X3/cxfI3epi2KqM/FEu5/8JqlzWyWt7cb8PtE+viKaSRAvEw00PS\r\nKVoboatNZEgXE6ukwwox5Geg44hsWuxN9ruWIQVab44K7lAV+i+9EzSKho+g\r\n7+VYI347cFzMxIJAZBRKGlplHPl7o8/Z+ZpuLTgK+teyYQS7ijptrI9KUsHN\r\nau/+rqNLleKub3ubTb/iFXZk4YTMY9rlikisUPxFVEXgdAv/OOcgvOr1tCuK\r\nfDxbZBJ4GOfp0uH+Wqf0eaqTok+qtfeVagIqCn7OXogQDmRYfeyR01dHvmOU\r\nQZ5+UV6WrEjIXX9RX1cX0rowo7GL3pxkwFDtdBGHP2laaxJ/6lWE0BSHQj/K\r\n9GU9+4japvnvrZFQ+xGN/S1eiqeBzZUcwcE=\r\n=nNwg\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"benjstephenson","email":"bjames.stephenson@gmail.com"},"directories":{},"maintainers":[{"name":"benjstephenson","email":"bjames.stephenson@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/circuit-breaker-ts_0.0.2_1649884583003_0.8079504415599346"},"_hasShrinkwrap":false},"0.0.3":{"name":"@benjstephenson/circuit-breaker-ts","version":"0.0.3","description":"Small circuit breaker implementation to wrap a lazy thunk","main":"dist/src/index.js","types":"dist/src/index.d.ts","repository":{"type":"git","url":"git://github.com/benjstephenson/circuit-breaker-ts.git"},"scripts":{"build":"tsc --extendedDiagnostics -p .","clean":"rimraf dist/** && rimraf ./tsconfig.tsbuildinfo","clean:build":"npm run clean && npm run build","test":"npm run build && mocha -r ts-node/register 'src/**/*.micro.ts'"},"author":{"name":"Benji Stephenson"},"license":"ISC","devDependencies":{"@types/mocha":"^10.0.0","husky":"^8.0.1","mismatched":"^2.9.2","mocha":"^10.1.0","prettier":"^2.7.1","rimraf":"^3.0.2","thespian":"^2.10.1","ts-node":"^10.9.0","typescript":"^4.8.4"},"peerDependencies":{"kittens-ts":">= 0.0.7"},"gitHead":"e11da0d3025a8a7bb423316cef7eb2443e9657f4","bugs":{"url":"https://github.com/benjstephenson/circuit-breaker-ts/issues"},"homepage":"https://github.com/benjstephenson/circuit-breaker-ts#readme","_id":"@benjstephenson/circuit-breaker-ts@0.0.3","_nodeVersion":"18.12.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-yINgPU/qqfUaVB2ciaV6Tuhp9w4J21nvtqVKTbl2xrR5LjABfn21sNFRBrsxhiBU4ePz1+FmUv3+YlKnVIPT6g==","shasum":"d4cabc505be0a7cd910c0f3908f67ad5ecb8d292","tarball":"https://registry.npmjs.org/@benjstephenson/circuit-breaker-ts/-/circuit-breaker-ts-0.0.3.tgz","fileCount":14,"unpackedSize":18402,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG3Vtu7Ld2MpJudYl3SHxtYr5NEH2XvxzGPq94ijnXqTAiEA+22N3qG0fKl0HYMuyaC+Wb+TrNvcVvfEC+7KvSZjBxA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYsTsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpdfw//ZV4lH7zPBp/DVVlGccCPfirpvGPA5W59Ye1j9UX42GNsWXER\r\n/FH4QXS32iX97Uf2cMpqXK5inphNQYBvVzyMyk6GabgnDeC6ZyO/3rwUAxa8\r\nM5lO10b6dQzcbisW9jUQ0J6Q3LbbLC8gcVLTM1IA7SoNXRHW6FXOUQ0dkmhd\r\nuRhavqvJ3kjoazFjLwtg0o/Hgnx+Mjdcxbd9lhQzP2klLlE1zmfK1KgitNk2\r\nmOhbpy2SMZns2uhmJpf4P6D4viXfSTM+u6cJMeoBNZc+4pGxfFiqKhQh7j3Z\r\nPKefTsbkecTVSZTL4/P2MtBG0mP+Y9OsAdC/Yat9CtL5WijPDBWFiFdcKyJI\r\n8u19/x4e3qlrmIAAwQhLuyozpAXTql2kBKJ5fOR28Z6X2XbS5RMqqUTNPD2E\r\nUxDha86SVkASjt5klm4NHsAI0pNFM6odc6xnCfcarsKv0MyaKEsY/xM0VW7H\r\np73gbdGOqZT458DSWBTSTr/sc8oW8co+FEqnvg0y+MK0rdpe0HRuPKT7OvJV\r\nLeK+3L4DkYEC+bddLIRPzQnOPF5KY9+3KaOAqlUr0a6tlGl9vN4STRAxvhP5\r\nGzgDvOXPEJnfzT0tkzFgMdVDA4mANtcy9eRL79FuQUzQXMSMm4jgsSzhUAwg\r\nHxhRzBReZ05uKKuu+s+BMFXDB0DWDod93sc=\r\n=QfHY\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"benjstephenson","email":"bjames.stephenson@gmail.com"},"directories":{},"maintainers":[{"name":"benjstephenson","email":"bjames.stephenson@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/circuit-breaker-ts_0.0.3_1667417324011_0.324702556799104"},"_hasShrinkwrap":false}},"time":{"created":"2022-04-04T21:50:01.657Z","0.0.1":"2022-04-04T21:50:01.858Z","modified":"2022-11-02T19:28:44.196Z","0.0.2":"2022-04-13T21:16:23.135Z","0.0.3":"2022-11-02T19:28:44.127Z"},"maintainers":[{"name":"benjstephenson","email":"bjames.stephenson@gmail.com"}],"description":"Small circuit breaker implementation to wrap a lazy thunk","homepage":"https://github.com/benjstephenson/circuit-breaker-ts#readme","repository":{"type":"git","url":"git://github.com/benjstephenson/circuit-breaker-ts.git"},"author":{"name":"Benji Stephenson"},"bugs":{"url":"https://github.com/benjstephenson/circuit-breaker-ts/issues"},"license":"ISC","readme":"# circuit-breaker-ts\n\nDependency free circuit breaker.\n\nGiven a thunk `() => Promise<A>`, allow a configurable number of errors to occur before any subsequent calls to the thunk are short-circuited for a set amount of time.\n\nThe error threshold, error message and back off time are configurable.\n\nUseful for protecting calls to external services that may experience an outage.\n\nA convenience function that returns a singleton is available so that an instance can be built at app startup and injected into services.\n\nInspired by a great blog post on [circuit breakers in the functional world ](https://levelup.gitconnected.com/circuit-breaker-in-a-functional-world-9c555c8e9527?gi=bf0edfcf31bd)\n","readmeFilename":"README.md"}