{"_id":"event-emitter-promisify","_rev":"1-500ec6f00ce7a292789b7b4a5a275462","name":"event-emitter-promisify","dist-tags":{"latest":"1.1.0"},"versions":{"1.1.0":{"name":"event-emitter-promisify","version":"1.1.0","description":"Utility to resolve EventEmitters as a promise","main":"dist/index.js","types":"dist/index.d.js","directories":{"lib":"lib"},"scripts":{"test:coverage":"npm test -- --coverage","test:badges":"npm run test:coverage  && jest-coverage-badges","test":"jest","lint":"eslint lib/* __tests__/* --ext .ts","lint:fix":"eslint lib/* __tests__/* --ext .ts --fix","build":"tsc","prepare":"tsc","semantic-release":"semantic-release"},"repository":{"type":"git","url":"git+https://github.com/jeswr/promisify-event-emitter.git"},"keywords":["promise","eventemitter","promisify","event","emitter","async"],"author":{"name":"Jesse Wright","email":"jesse.wright@anu.edu.au"},"license":"MIT","bugs":{"url":"https://github.com/jeswr/promisify-event-emitter/issues"},"homepage":"https://github.com/jeswr/promisify-event-emitter#README.md","devDependencies":{"@types/events":"^3.0.0","@types/jest":"^27.4.0","@typescript-eslint/eslint-plugin":"^5.12.0","@typescript-eslint/parser":"^5.12.0","asynciterator":"^3.2.1","eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","jest":"^27.5.1","pre-commit":"^1.2.2","semantic-release":"^19.0.2","ts-jest":"^27.1.3","typescript":"^4.5.5"},"jest":{"preset":"ts-jest","collectCoverage":true,"coverageReporters":["json-summary","text","lcov"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"pre-commit":["lint","build","test"],"release":{"branches":["main","+([0-9])?(.{+([0-9]),x}).x","next",{"name":"alpha","prerelease":true},{"name":"beta","prerelease":true}]},"publishConfig":{"access":"public"},"gitHead":"fd67fc818b4c966f3af7c0c31b334cb8a18d6393","_id":"event-emitter-promisify@1.1.0","_nodeVersion":"16.14.0","_npmVersion":"8.5.0","dist":{"integrity":"sha512-uyHG8gjwYGDlKoo0Txtx/u1HI1ubj0FK0rVqI4O0s1EymQm4iAEMbrS5B+XFlSaS8SZ3xzoKX+YHRZk8Nk/bXg==","shasum":"01b2d846431b0413102cc25b1dd768275c05e07d","tarball":"https://registry.npmjs.org/event-emitter-promisify/-/event-emitter-promisify-1.1.0.tgz","fileCount":5,"unpackedSize":5640,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDiV2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpIYA//R2nNBWjl0a1/Yp+sfomhCM91XpJvECl7PHkNsc8+cyGNSKRv\r\nQ5HW4qP7Lv24HYO3TuT7Fw0pR62JbSRdtsg8jO7WTNCAyevpJG8sL3rJKbRM\r\n1fUBlAB6gLx/ExavxR936EA1R2Kx2XnuwlMyxa39hsB9qP1xkLLIMQutxePW\r\nJsWdcKqftusDgZrmlEaiiDavpZO7ZLWRSE71fo4wQQuPMmxNBh0xtuluPKqU\r\nt2OjVxQTIJiRK6Onf3A/Wime5ujkOWnkSFQCvekkQlbv5XO3kaC/8MeqyidG\r\n0xm8kGA04JXitKChADlWjr/vKK9TKTyEwo1XfZAfIyGkemX0zsEkm6TrgbRp\r\naL7C5oyRombllKQPdgSnv3sV7JWlNRX/d3YpJdH7W59GdjEkWsg+coPF6sm+\r\nX2NQnqtxMWfphxSlsRjGNVLewM0i+t9s4ODqViVj0AMWQMwjwASDnL/Lcwwe\r\nFWG1EJhX/3uZvgewsUz7fk+WfGIudvwe1lWA5dfXMz9uN7h4vDg8AtRvf/9f\r\nrI2JuajrDegc5LuSmSvMKKwPMQ/i7Gj9R2tZcA9rJXymeqlLjkgqawdjwTwF\r\nqYmthCpbXq4zT8wbarEebTal2AUs683YQBhar3eB9YwK71ORVilhN1M1XzhN\r\nw/RRqk4D/ztPAia6LPQmljWsqtHwh1UA5bI=\r\n=l/Zt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2u3BqKRRUN8w07l0P6GOfkvgdBdBxdJlnzHpFangvEAIhALyXQx78K2teuu7FNdtAmIdSgyfmATdyafqS/kzgFJFP"}]},"_npmUser":{"name":"jeswr","email":"jmwright.045@gmail.com"},"maintainers":[{"name":"jeswr","email":"jmwright.045@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/event-emitter-promisify_1.1.0_1645094262095_0.15126715540571234"},"_hasShrinkwrap":false}},"time":{"created":"2022-02-17T10:37:42.026Z","1.1.0":"2022-02-17T10:37:42.256Z","modified":"2022-05-01T19:22:34.734Z"},"maintainers":[{"name":"jeswr","email":"jmwright.045@gmail.com"}],"description":"Utility to resolve EventEmitters as a promise","homepage":"https://github.com/jeswr/promisify-event-emitter#README.md","keywords":["promise","eventemitter","promisify","event","emitter","async"],"repository":{"type":"git","url":"git+https://github.com/jeswr/promisify-event-emitter.git"},"author":{"name":"Jesse Wright","email":"jesse.wright@anu.edu.au"},"bugs":{"url":"https://github.com/jeswr/promisify-event-emitter/issues"},"license":"MIT","readme":"# event-emitter-promisify\nUtility to resolve EventEmitters as a promise\n\n[![GitHub license](https://img.shields.io/github/license/jeswr/promisify-event-emitter.svg)](https://github.com/jeswr/promisify-event-emitter/blob/master/LICENSE)\n[![npm version](https://img.shields.io/npm/v/event-emitter-promisify.svg)](https://www.npmjs.com/package/event-emitter-promisify)\n[![build](https://img.shields.io/github/workflow/status/jeswr/promisify-event-emitter/Node.js%20CI)](https://github.com/jeswr/promisify-event-emitter/tree/main/)\n[![Dependabot](https://badgen.net/badge/Dependabot/enabled/green?icon=dependabot)](https://dependabot.com/)\n[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)\n\n## Usage\n\nBy default `promisifyEventEmitter` returns a promise which resolves to undefined if the `end` event is called, and rejects if the `error` event is called.\n\n```ts\nimport { promisifyEventEmitter } from 'event-emitter-promisify'\n\nconst stream = new Readable();\nstream.push(null);\nawait promisifyEventEmitter(stream.on('data', () => {}));\n```\n\nThe return value on `end` can also be customized. For instance:\n\n```ts\nexport default function arrayifyStream<T = any>(stream: EventEmitter): Promise<T[]> {\n  const array: T[] = [];\n  return promisifyEventEmitter(stream.on('data', data => array.push(data)), array);\n}\n```\n\n## License\n©2022–present\n[Jesse Wright](https://github.com/jeswr),\n[MIT License](https://github.com/jeswr/promisify-event-emitter/blob/master/LICENSE).\n","readmeFilename":"README.md"}