{"_id":"@brick-city/iterable-emitter","_rev":"5-5b01a98a84615b9eba9f81ff7eb152bf","name":"@brick-city/iterable-emitter","dist-tags":{"latest":"0.0.5"},"versions":{"0.0.1":{"name":"@brick-city/iterable-emitter","version":"0.0.1","description":"This utility turns a streaming emitter into an iterable, buffers the stream of events, and will pause & resume the emitter.","main":"index.js","types":"index.d.ts","type":"module","scripts":{"test":"node ./test/test.js"},"keywords":["buffer","iterable","emitter","iterator"],"author":{"name":"Kurt H. Kiley"},"license":"MIT","devDependencies":{"@babel/core":"^7.17.5","@babel/eslint-parser":"^7.17.0","@babel/plugin-proposal-class-properties":"^7.16.7","@babel/plugin-proposal-private-methods":"^7.16.11","@types/tedious":"^4.0.7","chai":"^4.3.6","eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","mocha":"^9.2.1","sinon":"^13.0.1"},"dependencies":{"@lukeed/uuid":"^2.0.0","denque":"^2.0.1","eventemitter3":"^4.0.7","klona":"^2.0.5","ow":"^1.0.0","p-event":"^5.0.1"},"gitHead":"e8cb5d8098acf92adc38b194ea395406840cefc5","_id":"@brick-city/iterable-emitter@0.0.1","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-4DxwjsrO7+Na8aOpeOXwAg2RCFVbyQ+ySUpJ2tdZLuq+I7vlvjnG124Gg2E02f2etGiHEgeuFXw+2pOTROID5g==","shasum":"08a5bfb1959c8d6ed15cca11e09ba0e258aeb21a","tarball":"https://registry.npmjs.org/@brick-city/iterable-emitter/-/iterable-emitter-0.0.1.tgz","fileCount":5,"unpackedSize":28429,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCcYaGGRDKG08pgeq59igHBQorVZ5r9r7pQXw0OdEuCQwIhAICVME4q4eOsLsQM2e7KNHaemF5fowqujry6jPLrP568"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizcmbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrHxA/+KSPT69cmdSZ7N8fm/60ElFEo2a2isHHzhqUODJyEMy8Zjunh\r\nM3Q5vvbsorX94D71KTPS0jNpq+EBcb1+SIxBGgpCli9e/k6IqOxJ0iBmdObg\r\nh1YQpgP/NNU7zinXL5RGYB6FWN5++DtFiL4L9hkRrEYP0daU/uWFoj5peWG3\r\nyWnmhBuFjozudHGRohchK2Iygb83BdJDpeK18L8hNX0sGPlI8ixZ5zycq2sL\r\niE6a85MSbSCGYtZwzj/a2j339goluKam7mRzgJ/ick6mc3EX/oC2ZPZLGc3W\r\nJ7jmMjfiGcjdJD86B1JQOAO8/3Sp/H09mMuqKpDUnfuFKapA1woz5NBP1quU\r\nbq+uUwHx25zmLAhdv/0XG0aVsTq5EyspVBK4W/ilFZMelN0WNfyOGsVYdtuF\r\nqqoRJb7APnAA7fcM72Lezt3KDWsjhZqx5tcA527n77efv9NHL+kdFuKl8zQa\r\n5OaiYupQqr8oj/x6gz2eajba4EifyCet4bj4pnZOs5SSAja/CStKMO+hypTw\r\nk8ITvoqNtif8g7IZ4UNWdpTkNZzOw4BVQ8z3M1bglxVhbGZR7mU0xAh8VuV1\r\njB1Xxf8Gp7exic3DCoZB3rPh02+K6ZRSQFFfGDjG4x1hO3ij0mjYW7a0nYXG\r\nkjXBEj2/M7m6PzlJArNV9CzJcYOhCoM+u98=\r\n=IMzg\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"},"directories":{},"maintainers":[{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/iterable-emitter_0.0.1_1657653659595_0.24474892384648084"},"_hasShrinkwrap":false},"0.0.2":{"name":"@brick-city/iterable-emitter","version":"0.0.2","description":"This utility turns a streaming emitter into an iterable, buffers the stream of events, and will pause & resume the emitter.","main":"index.js","types":"index.d.ts","type":"module","scripts":{"test":"node ./test/test.js"},"keywords":["buffer","iterable","emitter","iterator"],"author":{"name":"Kurt H. Kiley"},"license":"MIT","devDependencies":{"@babel/core":"^7.17.5","@babel/eslint-parser":"^7.17.0","@babel/plugin-proposal-class-properties":"^7.16.7","@babel/plugin-proposal-private-methods":"^7.16.11","@types/tedious":"^4.0.7","chai":"^4.3.6","eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","mocha":"^9.2.1","sinon":"^13.0.1"},"dependencies":{"@lukeed/uuid":"^2.0.0","denque":"^2.0.1","eventemitter3":"^4.0.7","klona":"^2.0.5","ow":"^1.0.0","p-event":"^5.0.1"},"gitHead":"e8cb5d8098acf92adc38b194ea395406840cefc5","_id":"@brick-city/iterable-emitter@0.0.2","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-uO8xpVmSSNJySVf716e50uJLNX161opqanu1SYRoYqzdUOqWoRM5ZIM356hDmuiy/XzMlS+6wVZEASE0jrMK4w==","shasum":"209f0fb8243b3e44da2e2163ad62f8b33d3758be","tarball":"https://registry.npmjs.org/@brick-city/iterable-emitter/-/iterable-emitter-0.0.2.tgz","fileCount":5,"unpackedSize":28429,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBR5DhIcGdj4hjFgh1ywY3zP6ucVFQrSgDwUdmUBv7M6AiByCSWzo/fC1GWa08v5SBmeJX4fOiMod31nmiyd98crLA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizcpKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr7xQ/+Nimz77tuegKE/JM2LBELy3i6Q8LlE/G3DHp7PE9pIPLigU4j\r\nmybf+qeV9/cB5jaIQ8/xJNaXzqUPK8LzxqXhX5maDzyE24iKqvIlta5nC2oB\r\n/K00JbU/deEtEr7zwQ1MdgaF6vdCgS9t/+CaHw1gM7XBxDZxub9kVlrnDCYn\r\nyn1R2WfiO/TRvNAPDqhGt7YpSZ6ZeZak5ex4t0Bvfh38aAgzgkVCtpubwgD0\r\n2Hh2tC9yLkQOzvFvjC73EooqnhNqD3BAOUf2OA6yR+3UF+qei0tzOdSq/YvS\r\njuaXsHcfMKxn92GQ4/3ipovfVqWrEaisIgxwzykbv4XaWWzxfKQ5H/AHJKsW\r\nGsJ3qq6W5KE6udLy9uwAeJyvlLsZRxgnuFqYUoxbdy/fEow+jR2n87qcrOSC\r\nOgVMjAPG+5RshyWUTBfUBl2IEOjxD89wsNNiw9ujoPmHvKCz/Crh+DZqmX36\r\ncYH8sMeRh9r+M87n0gHebpInoqAP4GIUV80JtdrYrrsFR7TrJIuzJKLLF3Ah\r\nA1MGRFzCR4OS+KpDCV58rELLXKyIpEjoEI1Si75E5pqAztdQyRC9xDao2WxQ\r\ngKbFcYZpHpaqN6LQpT6VmitnZ65dkjEPqf39ay003bwxlBx+r+o50JP/DnLi\r\nB9vw0TVz7Uxeb1xg/jWHgAEBVFRPb5UG0lg=\r\n=TvPL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"},"directories":{},"maintainers":[{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/iterable-emitter_0.0.2_1657653834522_0.23083403536946578"},"_hasShrinkwrap":false},"0.0.3":{"name":"@brick-city/iterable-emitter","version":"0.0.3","description":"This utility turns a streaming emitter into an iterable, buffers the stream of events, and will pause & resume the emitter.","main":"index.js","types":"index.d.ts","type":"module","scripts":{"test":"node ./test/test.js"},"keywords":["buffer","iterable","emitter","iterator"],"author":{"name":"Kurt H. Kiley"},"license":"MIT","devDependencies":{"@babel/core":"^7.17.5","@babel/eslint-parser":"^7.17.0","@babel/plugin-proposal-class-properties":"^7.16.7","@babel/plugin-proposal-private-methods":"^7.16.11","@types/tedious":"^4.0.7","chai":"^4.3.6","eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","mocha":"^9.2.1","sinon":"^13.0.1"},"dependencies":{"@lukeed/uuid":"^2.0.0","denque":"^2.0.1","eventemitter3":"^4.0.7","klona":"^2.0.5","ow":"^1.0.0","p-event":"^5.0.1"},"gitHead":"58a967c6211c50841d7e3b98adc8cb05076ebfdf","_id":"@brick-city/iterable-emitter@0.0.3","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-buVmPUBtelbdZEugXaK6N/6DY7+0NQ/HWBQIM/lOj+U6cK2umiLZC9456edssVI0LB4ojxHGGY7gX4mDyV3bgQ==","shasum":"8e79dc71a3cd9c307469edcb6c01dde1b2c1f917","tarball":"https://registry.npmjs.org/@brick-city/iterable-emitter/-/iterable-emitter-0.0.3.tgz","fileCount":5,"unpackedSize":28490,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAtEBXSzVihLUOm3bO3mwWRo2Mx8L/pwx8cGFYy3LQqjAiBEAA2lGWu0V4StO8L5yR3QfjMGL1SGqF+k3JBADsRTpw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizdt5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr7ZA//d7NU3gCXMUBuNe+lItqM3HDyMA77DmufKL6ERbcJVOjx80Fe\r\nM43RFycNgRaaiaYVNGHL6GkjV0+jFSehzm4eMjHqQRsZYiPHzy+jUsWsis92\r\nxpgIhUV04SdedIIHQ/3/q7eH6LHEE9peoEZNIq2dXZDIFxXLrhQrLrLKIm0u\r\nUUQ6KZnTASsocVKcfFhIOv3M/KFoTod0aj4yowKOXin2p/+Zs68Iim8RGB/g\r\nKGfShfoDKajbrAniRoN0nOd3i7LMgovaRas4p65LwYl/i8tsY4XADu5TM4K8\r\nXgLsfs6AuJUhc32CNXgCKZamiCu7YKCBHbsU2n+CZIV3ooJ4oY3NsgdTZM3B\r\na/hPL8owOLJHoNjyR2x1S0lXF2iHaIxjwfXX713Ig+xI3B/UsMkq/f2qtq1p\r\nvBY4bDdu9vE5Y6LSf6nKv2WcuqLhG7kZ/OkbPQyUAHqnC8y/O0PSDzTTT6C1\r\nd2TTSGPDcZGEWr8m76zDWWRe5XzZWFlzfEcWVgVEvQV7gHdGXT6lziirlg0A\r\nQcfBNpiHjotWya4Q7Zd5a1qMwmm3e8xgNv5jxwVdqBRx6F63MadpkW0A9l1b\r\nJvsj922WIeIsDSfNNsg7egBqJ5jG+kbnjZXelpFrS3tr9u5nHaR0GZQkoyly\r\nJ8z3JtKnyFfoWkx6ca0r6fNlRqy7olVqYio=\r\n=7jV/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"},"directories":{},"maintainers":[{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/iterable-emitter_0.0.3_1657658233560_0.9900080124993498"},"_hasShrinkwrap":false},"0.0.4":{"name":"@brick-city/iterable-emitter","version":"0.0.4","description":"This utility turns a streaming emitter into an iterable, buffers the stream of events, and will pause & resume the emitter.","main":"index.js","types":"index.d.ts","type":"module","scripts":{"test":"node ./test/test.js"},"keywords":["buffer","iterable","emitter","iterator"],"author":{"name":"Kurt H. Kiley"},"license":"MIT","devDependencies":{"@babel/core":"^7.17.5","@babel/eslint-parser":"^7.17.0","@babel/plugin-proposal-class-properties":"^7.16.7","@babel/plugin-proposal-private-methods":"^7.16.11","@types/tedious":"^4.0.7","chai":"^4.3.6","eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","mocha":"^9.2.1","sinon":"^13.0.1"},"dependencies":{"@lukeed/uuid":"^2.0.0","denque":"^2.0.1","eventemitter3":"^4.0.7","klona":"^2.0.5","ow":"^1.0.0","p-event":"^5.0.1"},"gitHead":"9ab0fa4598fc4819151851593ac9c387e55c82d2","_id":"@brick-city/iterable-emitter@0.0.4","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-wVeCsZ2uk7/SfWONRaoGCtC3d8ZInNE4dLB5zQfeFY5Ph2TYVw0prMiLzjEA/cO+/l3cL1vNQ+N/nRATAZXvfw==","shasum":"25217e27c13f889d947753970ea75a008a9950ea","tarball":"https://registry.npmjs.org/@brick-city/iterable-emitter/-/iterable-emitter-0.0.4.tgz","fileCount":5,"unpackedSize":28593,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICMPKATVmPgdHVXvxcZ3AXut8Nduw6RmHnqkQl9qTli5AiBE8KrdWO76ioRInrFSlZj+Or9Uj3Sc/gPpuiPKPyphXg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizd+PACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrUaQ/9GzIudn/HgU4fXRhVHvB2JZSbi1apR1YKmY/SzvqwA0xD/kND\r\nqj5bRZhKdmpkOaioWy1pxwVmF88kg72mHBKIwEB6B2N+8kCnAy2Y5oyH1wog\r\nXKq7jNQ2n+xJod2y5grN+ZhpjiDvYthNLNLINfoI+65x4nkfzluXpFNhTcR4\r\n+ENVxz1TkyoMEgvD8RLRdMATijS/5j6Xr2r/vK0FWmltdBOcUXqsQ8o9bIYC\r\nL187qsLkFydf15piBE8BTyQZgEeSlSllGpRkK0bYcwceA3fUfQ7FZaJdUqvb\r\nIhZoQnX8UoMXEwlN0KF9e8N+j5bAIYtTjA5irncnLcZfgKp8QQYwIzUfblQw\r\ntss5sf05fWnptUJfnmqNzzCR73HB3M0KlXWQ7NynpytQz1WLRHq8ZUhuJdOD\r\neEpaf44fCZtz363vNNqM1RWet58rSfIGYOE/gNy0+WlRKDsvnkLoTT0GdETO\r\no7JHNOCn1VWePjs2lMm6N01dLfJN7RAhyBp2CTkNG9hIgIo+E7ysV1Sh3Kkt\r\nkAigpxcKOQkPpQRLY36AE4crGBSIQ+T7fYyvDTVVRXRjHFBYD4oaRo7OZ21v\r\nWHvbLqX2Tnf3glx0ly5HLp6kpK2ZH3ffPi/DAbdl1N7OOT/duU4/kPF/h02A\r\n5JlU4wsfZv4GCbo71WG74vGa9UF30GMydHE=\r\n=FjUX\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"},"directories":{},"maintainers":[{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/iterable-emitter_0.0.4_1657659278968_0.29718049505221167"},"_hasShrinkwrap":false},"0.0.5":{"name":"@brick-city/iterable-emitter","version":"0.0.5","description":"This utility turns a streaming emitter into an iterable, buffers the stream of events, and will pause & resume the emitter.","main":"index.js","types":"index.d.ts","type":"module","scripts":{"test":"node ./test/test.js"},"keywords":["buffer","iterable","emitter","iterator"],"author":{"name":"Kurt H. Kiley"},"license":"MIT","devDependencies":{"@babel/core":"^7.17.5","@babel/eslint-parser":"^7.17.0","@babel/plugin-proposal-class-properties":"^7.16.7","@babel/plugin-proposal-private-methods":"^7.16.11","@types/tedious":"^4.0.7","chai":"^4.3.6","eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","mocha":"^9.2.1","sinon":"^13.0.1"},"dependencies":{"@lukeed/uuid":"^2.0.0","denque":"^2.0.1","eventemitter3":"^4.0.7","klona":"^2.0.5","ow":"^1.0.0","p-event":"^5.0.1"},"gitHead":"5e641d757846827a0eb132e0cf34322bea554629","_id":"@brick-city/iterable-emitter@0.0.5","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-C8iFifw+1PrVaOQGhmOCWFmeGDvYc4o9JAbZlros4m8KEMf+FtFSmpINJRgfz/VZt15SKpubJG+yzoeO9v8YAg==","shasum":"a9a16e5b1ae1b85c3901bd2f2a44eb0c12fc2de1","tarball":"https://registry.npmjs.org/@brick-city/iterable-emitter/-/iterable-emitter-0.0.5.tgz","fileCount":5,"unpackedSize":28659,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDgJ1GtjuMydglgpG8ORONTJlGAMVPOevE+BjIg1iKtkAIhALNTX/EuoDH37GhjZuaKPtVq0/auka12qTqWrwv0Yevk"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiztcDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpkqA/+IjV4w4XtvuKk3uIt3roRVrdIzmsOjZI7VD3oO4DyrDYCXEbx\r\nc75hK1viK46s12pUTTRL12HEF+7U5/WeOpj5TNtOzWXMjINFA/QaSwOYgyTp\r\nhBhXyGYl5L4vJ+pmiOITlIUEl/z9H6SR4wWao+seCgoFUoMe0PaE1C9Ph0cH\r\nzIbFyEyn3Ws/X1pUbkJkXd+mpbuTrsb0A15+eUZ0zYYvkHhnQmXAhm7yNld4\r\nlSyAjO4VOAgOyCzymsu2r49agcJZbaZkr6oyP/VCnWJwd0d9FGbV3xnKPffg\r\nXqtw4PtiGo70YqNTCDNWxQI8T1RhACVFymbVNekwKbqTEgE9BdKQW4ze8e3+\r\ntKCrInQVmHo4Gznsylq1CvPf7ifErtAiBrZ3EEOItsGxtzPH4j/KEfGomA0/\r\nQp4EsrHLbM2rCiceRwBUCLS9eqHvzpkPOTad/T5rOlMv/aC8tFfA9vvnuAND\r\nsRVRjLvyipytAwfJdYRmrgcYBM0C8JwWZfKIgl4W2UoeoIw+kWTFpjTTQ2md\r\nfAcGVMbvIJ+wXYwoofhrHCE/yufYMPBydtosVGVVY6+N5r8G6miIPlOYvC0S\r\nti/CMWIqU1RKaWdVyRw33Gj5vnkhXhVdJlUo+QIJcjWxR4auyYyf2G7hf1/l\r\n5P5Hozw+2vVruASQn10q/1fuw/hJYg89rb8=\r\n=DCJq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"},"directories":{},"maintainers":[{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/iterable-emitter_0.0.5_1657722626724_0.30583799103607556"},"_hasShrinkwrap":false}},"time":{"created":"2022-07-12T19:20:59.595Z","0.0.1":"2022-07-12T19:20:59.771Z","modified":"2022-07-13T14:30:27.473Z","0.0.2":"2022-07-12T19:23:54.677Z","0.0.3":"2022-07-12T20:37:13.761Z","0.0.4":"2022-07-12T20:54:39.121Z","0.0.5":"2022-07-13T14:30:27.341Z"},"maintainers":[{"name":"khkiley","email":"kurt.h.kiley@adamsautomation.com"}],"description":"This utility turns a streaming emitter into an iterable, buffers the stream of events, and will pause & resume the emitter.","keywords":["buffer","iterable","emitter","iterator"],"author":{"name":"Kurt H. Kiley"},"license":"MIT","readme":"# iterable-emitter\r\n\r\nUse this class to create an object that monitors an emitter and allows the events of the emitter to be asynchronously iterated. \r\n\r\nEvents are queued so they can be iterated at a different rate than what they are emitted at. For instance an ETL process that extracts data faster than it can be loaded asynchronously to a remote destination.\r\n\r\nThe queue has a high water mark that can limit memory requirements for the queued events. Once the high water mark is reached, the emitter will be paused to stop the flow of events. Once the events have been drained to the low water mark, the emitter will be resumed.\r\n\r\n## Table of Contents\r\n\r\n- [Installation](#installation)\r\n- [Usage](#usage)\r\n- [Support](#support)\r\n- [Contributing](#contributing)\r\n- [License](#license)\r\n\r\n## Installation\r\n\r\n```\r\nnpm install --save @brick-city/iterable-emitter\r\n```\r\n\r\n## Usage\r\n\r\n### General\r\n\r\n\r\n### `new IterableEmitter (emitter:Emitter, options:[iterableEmitterOptions](#options))`\r\n\r\n**Returns:`IterableEmitter`**\r\n\r\n```javascript\r\nimport IterableEmitter from '@brick-city/iterable-emitter'\r\nimport Request from 'tedious';\r\n\r\nrequest = new Request(\"select i.item, i.description from dbo.item i\", function(err, rowCount) {\r\n  ...\r\n});\r\n\r\nconst options = {\r\n    dataEvent: 'row',\r\n    resolutionEvent: ['done', 'doneInProc', 'doneProc'],\r\n    pauseMethod: 'pause',\r\n    resumeMethod: 'resume',\r\n}\r\n\r\nconst iterableRequest = new IterableEmitter (request, options )\r\n\r\nconnection.execSql(request);\r\n\r\ntry {\r\n\r\n    for await (const row of iterableRequest) {\r\n\r\n      .....\r\n        Do something awesome!\r\n      .....\r\n\r\n    }\r\n\r\n} catch (e) { console.log(e); }\r\n\r\n```\r\n\r\n### Options\r\n\r\n- dataEvent: 'row' (string, required) - The name of the event that provides the stream of data.\r\n\r\n- resolutionEvent: 'done' (string | array[string], required) - An emission of the resolutionEvent(s) will end the iterable once the queue is drained.\r\n- rejectionEvent: 'error' (string | array[string], defaults to 'error') An emission of the rejectionEvent(s) will end the iterable immediately (queued events are cleared) and the iterable rethrows the caught error.\r\n- highWaterMark:1000 (integer, defaults to 1000) - The number of events to queue prior to pausing the emitter.\r\n- lowWaterMark: 500 (integer, defaults to 500) - Once a paused iterable has been drained to this level the emitter will be resumed.\r\n- initializeBuffer:true (boolean, defaults to true) Initialize the buffer for highWaterMark entries.\r\n- pauseMethod: (string, conditionally optional) - method on the emitter that will pause the stream of dataEvents. It will be called without arguments when the total queued events have reached the highWaterMark. It will be called repeatedly if the stream continues. Either pauseMethod or pauseFunction must be specified, but not both.\r\n- pauseFunction: (function\\<void\\>, conditionally optional) - A function to be called to pause the stream of dataEvents. It will be called without arguments when the total queued events have reached the highWaterMark. It will be called repeatedly if the stream continues. Either pauseMethod or pauseFunction must be specified, but not both.\r\n- resumeMethod: (string, conditionally optional) - method on the emitter that will resume the stream of dataEvents after being paused. It will be called without arguments on a paused emitter once the buffer has been drained to the lowWaterMark. Either resumeMethod or resumeFunction must be specified, but not both.\r\n- resumeFunction: (function\\<void\\>, conditionally optional) - A function to be called to resume the stream of dataEvents on a pause emitter. It will be called without arguments on a paused emitter once the buffer has been drained to the lowWaterMark. Either resumeMethod or resumeFunction must be specified, but not both.\r\n- preFilter: ()=>{} (function\\<boolean\\>, optional) - The arguments supplied to the dataEvent event handler will be pass on to the preFilter function. Returning true will push the event results on the buffer, false and it will be ignored\r\n- transform: ()=>{} (function\\<any\\>, optional) - The arguments supplied to the dataEvent event handler will be passed to the transform function, the results of which will be pushed on the buffer.\r\n\r\n## Support\r\n\r\nPlease [open an issue](https://github.com/brick-city/iterable-emitter/issues/new) for support.\r\n\r\n## Contributing\r\n\r\nPlease contribute using [Github Flow](https://guides.github.com/introduction/flow/). Create a branch, add commits, and [open a pull request](https://github.com/brick-city/iterable-emitter/compare/).\r\n\r\n## License\r\nMIT License","readmeFilename":"README.md"}