{"_id":"hable","_rev":"1515940","name":"hable","description":"Awaitable hooks for Node.js","dist-tags":{"beta":"3.0.0-0","latest":"3.0.0"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"time":{"modified":"2021-11-10T06:20:56.000Z","created":"2018-01-26T23:00:58.686Z","3.0.0":"2020-02-25T13:58:17.448Z","2.3.2":"2019-09-02T09:45:12.301Z","2.3.1":"2019-09-02T09:42:11.449Z","3.0.0-0":"2019-09-01T17:51:33.868Z","2.3.0":"2019-09-01T17:01:38.993Z","2.2.1":"2019-08-21T19:31:42.773Z","2.2.0":"2019-08-21T19:29:46.711Z","2.1.0":"2019-08-21T18:31:52.330Z","2.0.1":"2019-08-21T18:28:15.995Z","2.0.0":"2019-08-21T18:22:00.651Z","1.0.1":"2019-03-16T12:27:50.378Z","1.0.0":"2019-02-11T18:55:09.724Z","0.0.7":"2018-01-28T10:54:57.395Z","0.0.6":"2018-01-26T23:21:35.341Z","0.0.5":"2018-01-26T23:17:01.794Z","0.0.4":"2018-01-26T23:14:25.503Z","0.0.3":"2018-01-26T23:04:46.607Z","0.0.2":"2018-01-26T23:00:58.686Z"},"users":{},"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"versions":{"3.0.0":{"name":"hable","version":"3.0.0","description":"Awaitable hooks for Node.js","keywords":["hook","hookable","plugin","tapable","tappable"],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"main":"./dist/hable.js","browser":"./dist/hable.umd.js","types":"./index.d.ts","scripts":{"build":"bili --module-name hable --minify --format cjs,umd,es src/hable.js","lint":"eslint src","release":"yarn test && yarn build && standard-version && git push --follow-tags && npm publish","test":"yarn lint && yarn jest"},"devDependencies":{"babel-jest":"^24.9.0","bili":"^4.8.1","codecov":"^3.5.0","eslint":"^6.3.0","eslint-config-standard":"^14.1.0","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^22.17.0","eslint-plugin-node":"^10.0.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.1","jest":"^24.9.0","standard-version":"^7.0.0"},"gitHead":"1a5cbc7359e84499d1a8aa9163c8e0763f18c4eb","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@3.0.0","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"shasum":"6de089b2df946635cf8134b9e4859f1b62de255f","size":6969,"noattachment":false,"key":"/hable/-/hable-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-3.0.0.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_3.0.0_1582639097302_0.06567391872915662"},"_hasShrinkwrap":false,"publish_time":1582639097448,"_cnpm_publish_time":1582639097448},"2.3.2":{"name":"hable","version":"2.3.2","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"87fb507acefea7c3e09e440c8a885791eced477a","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@2.3.2","_nodeVersion":"12.4.0","_npmVersion":"6.9.0","dist":{"shasum":"7867ffec0b67e63136937613d9a0bc646ac9d7fe","size":3988,"noattachment":false,"key":"/hable/-/hable-2.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-2.3.2.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_2.3.2_1567417512135_0.0827957720119108"},"_hasShrinkwrap":false,"publish_time":1567417512301,"_cnpm_publish_time":1567417512301},"2.3.1":{"name":"hable","version":"2.3.1","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"fff19c03acf21e0411ec4b4c26e64c86a308c9d9","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@2.3.1","_nodeVersion":"12.4.0","_npmVersion":"6.9.0","dist":{"shasum":"42cc181aeecea929675d04755a1afd01159a2588","size":3909,"noattachment":false,"key":"/hable/-/hable-2.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-2.3.1.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_2.3.1_1567417331313_0.2708657461885633"},"_hasShrinkwrap":false,"publish_time":1567417331449,"_cnpm_publish_time":1567417331449},"3.0.0-0":{"name":"hable","version":"3.0.0-0","description":"Awaitable hooks for Node.js","keywords":["hook","hookable","plugin","tapable","tappable"],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"main":"dist/hable.js","browser":"dist/hable.umd.js","scripts":{"build":"bili --module-name hable --minify --format cjs,umd,es src/hable.js","lint":"eslint src","prepublish":"yarn build && yarn test","release":"standard-version && git push --follow-tags && npm publish","test":"yarn lint && yarn jest"},"devDependencies":{"bili":"^4.8.1","codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"f5a10472dbb01167b0d8f1c61956cde4a77921b7","readmeFilename":"README.md","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@3.0.0-0","_nodeVersion":"12.4.0","_npmVersion":"6.9.0","dist":{"shasum":"f4599b6ef56e676e9d57b34f0b2b9fc0cb1aadb5","size":6216,"noattachment":false,"key":"/hable/-/hable-3.0.0-0.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-3.0.0-0.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_3.0.0-0_1567360293745_0.44195522459188785"},"_hasShrinkwrap":false,"publish_time":1567360293868,"_cnpm_publish_time":1567360293868},"2.3.0":{"name":"hable","version":"2.3.0","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"791542b168dc0633fdfa2e0dafe3f7ae7311a275","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@2.3.0","_nodeVersion":"12.4.0","_npmVersion":"6.9.0","dist":{"shasum":"cd978677fbd2c4c2d1707245288a15f3d5b52f2d","size":3861,"noattachment":false,"key":"/hable/-/hable-2.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-2.3.0.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_2.3.0_1567357298796_0.8936405438467792"},"_hasShrinkwrap":false,"publish_time":1567357298993,"_cnpm_publish_time":1567357298993},"2.2.1":{"name":"hable","version":"2.2.1","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"59e7482ede738aa63fe507b5f4ae2f5b152c9c29","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@2.2.1","_nodeVersion":"12.8.1","_npmVersion":"6.10.2","dist":{"shasum":"714ef141a7eda5bd8530d6e4e3b37c6807716290","size":3780,"noattachment":false,"key":"/hable/-/hable-2.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-2.2.1.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_2.2.1_1566415902604_0.6225529188230741"},"_hasShrinkwrap":false,"publish_time":1566415902773,"_cnpm_publish_time":1566415902773},"2.2.0":{"name":"hable","version":"2.2.0","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"55cf5c01d89302888627fc4a26759f3fa29f2b5c","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@2.2.0","_nodeVersion":"12.8.1","_npmVersion":"6.10.2","dist":{"shasum":"bc238bfd3f6b12b3f87c383f533d303dc67cf434","size":3793,"noattachment":false,"key":"/hable/-/hable-2.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-2.2.0.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_2.2.0_1566415786608_0.30618676424023206"},"_hasShrinkwrap":false,"publish_time":1566415786711,"_cnpm_publish_time":1566415786711},"2.1.0":{"name":"hable","version":"2.1.0","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"2860582a4d8018bdddee02d2991b3aeaf8f083ec","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@2.1.0","_nodeVersion":"12.8.1","_npmVersion":"6.10.2","dist":{"shasum":"281a372b4af7336a15029d5c293aa4cbc402808e","size":3679,"noattachment":false,"key":"/hable/-/hable-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-2.1.0.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_2.1.0_1566412312168_0.3060991277617968"},"_hasShrinkwrap":false,"publish_time":1566412312330,"_cnpm_publish_time":1566412312330},"2.0.1":{"name":"hable","version":"2.0.1","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"69b4795dbb769780e31d8ff395163c64042f71b7","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@2.0.1","_nodeVersion":"12.8.1","_npmVersion":"6.10.2","dist":{"shasum":"ba43bd5fffc6f6c907b0f44aeddbfd1b46123f3b","size":3629,"noattachment":false,"key":"/hable/-/hable-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-2.0.1.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_2.0.1_1566412095847_0.6892189954463117"},"_hasShrinkwrap":false,"publish_time":1566412095995,"_cnpm_publish_time":1566412095995},"2.0.0":{"name":"hable","version":"2.0.0","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"71db2f615aed1b7ea72a7293c727564f04b47f9a","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@2.0.0","_nodeVersion":"12.8.1","_npmVersion":"6.10.2","dist":{"shasum":"179332422504968b5fa2ea79659489a2d1b3d8af","size":3612,"noattachment":false,"key":"/hable/-/hable-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-2.0.0.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_2.0.0_1566411720529_0.06333290113910284"},"_hasShrinkwrap":false,"publish_time":1566411720651,"_cnpm_publish_time":1566411720651},"1.0.1":{"name":"hable","version":"1.0.1","description":"Awaitable hooks for Node.js","license":"MIT","contributors":[{"name":"Sebastien Chopin","url":"@Atinux"},{"name":"Clark Du","url":"@clarkdo"},{"name":"Pooya Parsa","url":"@pi0"}],"repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hookable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"dependencies":{"consola":"^2.4.0","items-promise":"^1.0.0"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^5.0.1"},"gitHead":"c4f8783242a1d1788dadfdffd85cd93d0cdf81ae","bugs":{"url":"https://github.com/jsless/hable/issues"},"homepage":"https://github.com/jsless/hable#readme","_id":"hable@1.0.1","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"shasum":"bb3251e830ce083c85cf45216f92a588df1e9028","size":3379,"noattachment":false,"key":"/hable/-/hable-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-1.0.1.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_1.0.1_1552739270147_0.8290849059312106"},"_hasShrinkwrap":false,"publish_time":1552739270378,"_cnpm_publish_time":1552739270378},"1.0.0":{"name":"hable","version":"1.0.0","description":"Awaitable hooks for Node.js","cintributors":["Sebastien Chopin (@Atinux)","Clark Du (@clarkdo)","Pooya Parsa <pooya@pi0.ir>"],"license":"MIT","homepage":"https://github.com/jsless/hable#readme","repository":{"type":"git","url":"git+https://github.com/jsless/hable.git"},"bugs":{"url":"https://github.com/jsless/hable/issues"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"lib/hable.js","scripts":{"test":"yarn lint && yarn jest","lint":"eslint lib","prepublish":"yarn test","release":"standard-version && git push --follow-tags && npm publish"},"dependencies":{"consola":"^2.4.0","items-promise":"^1.0.0"},"devDependencies":{"codecov":"^3.0.0","eslint":"^5.13.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.16.0","eslint-plugin-jest":"^22.2.2","eslint-plugin-node":"^8.0.1","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","jest":"^24.1.0","standard-version":"^4.3.0"},"gitHead":"a0e5c7adaac6ff1bbce423bc26074b29f7edd1bc","_id":"hable@1.0.0","_npmVersion":"6.5.0","_nodeVersion":"11.9.0","_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"dist":{"shasum":"ae565b04bb7dcf3d5cc3a125e3df0983a1c629e7","size":3390,"noattachment":false,"key":"/hable/-/hable-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-1.0.0.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable_1.0.0_1549911309637_0.35692390429841137"},"_hasShrinkwrap":false,"publish_time":1549911309724,"_cnpm_publish_time":1549911309724},"0.0.7":{"name":"hable","version":"0.0.7","description":"A simpler tapable alternative, which can be used to create hooks for plugins","author":{"name":"Pooya Parsa","email":"pooya@pi0.ir"},"license":"MIT","homepage":"https://github.com/pi0/hable#readme","repository":{"type":"git","url":"git+https://github.com/pi0/hable.git"},"bugs":{"url":"https://github.com/pi0/hable/issues"},"keywords":["tapable","tappable","hook","plugin","hookable"],"main":"dist/hable.cjs.js","module":"dist/hable.es.js","jsnext:main":"dist/hable.es.js","scripts":{"build":"bili --format es,cjs,cjs-min --inline","test":"jest","test-ci":"NODE_ENV=test jest --coverage && codecov","dev":"npm run build --watch","release":"npm run build && standard-version","release2":"git push --follow-tags && npm publish"},"dependencies":{"items-promise":"^1.0.0"},"devDependencies":{"babel-core":"^6.26.0","babel-jest":"^22.1.0","babel-plugin-transform-es2015-modules-commonjs":"^6.26.0","bili":"^2.2.3","codecov":"^3.0.0","jest":"^22.1.4","standard-version":"^4.3.0"},"gitHead":"a72a9cc1cce994c4445f9a79f93685bf927aff9f","_id":"hable@0.0.7","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"dist":{"shasum":"9f75bb220d91e02baad5604b9143105e8d8fb8e9","size":49077,"noattachment":false,"key":"/hable/-/hable-0.0.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-0.0.7.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable-0.0.7.tgz_1517136896257_0.6357768489979208"},"directories":{},"publish_time":1517136897395,"_hasShrinkwrap":false,"_cnpm_publish_time":1517136897395},"0.0.6":{"name":"hable","version":"0.0.6","description":"A simpler tapable alternative, which can be used to create hooks for plugins","main":"dist/hable.cjs.js","module":"dist/hable.es.js","jsnext:main":"dist/hable.es.js","scripts":{"build":"bili --format es,cjs --inline","dev":"npm run build --watch","release":"npm run build && standard-version","release2":"git push --follow-tags && npm publish"},"repository":{"type":"git","url":"git+https://github.com/pi0/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"author":{"name":"Pooya Parsa","email":"pooya@pi0.ir"},"license":"MIT","bugs":{"url":"https://github.com/pi0/hable/issues"},"homepage":"https://github.com/pi0/hable#readme","dependencies":{"items-promise":"^1.0.0"},"devDependencies":{"bili":"^2.2.3","standard-version":"^4.3.0"},"gitHead":"6b2190612ce47233c5122d25b6b653dd481f1a96","_id":"hable@0.0.6","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"dist":{"shasum":"7fbf94bdcbb60389455ce0f98d7d850b98912837","size":31828,"noattachment":false,"key":"/hable/-/hable-0.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-0.0.6.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable-0.0.6.tgz_1517008894320_0.2228768232744187"},"directories":{},"publish_time":1517008895341,"_hasShrinkwrap":false,"_cnpm_publish_time":1517008895341},"0.0.5":{"name":"hable","version":"0.0.5","description":"A simpler tapable alternative, which can be used to create hooks for plugins","main":"dist/hable.cjs.js","module":"dist/hable.es.js","jsnext:main":"dist/hable.es.js","scripts":{"build":"bili --format es,cjs --inline","dev":"npm run build --watch","release":"npm run build && standard-version","release2":"git push --follow-tags && npm publish"},"repository":{"type":"git","url":"git+https://github.com/pi0/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"author":{"name":"Pooya Parsa","email":"pooya@pi0.ir"},"license":"MIT","bugs":{"url":"https://github.com/pi0/hable/issues"},"homepage":"https://github.com/pi0/hable#readme","dependencies":{"items-promise":"^1.0.0"},"devDependencies":{"bili":"^2.2.3","standard-version":"^4.3.0"},"gitHead":"fb51c14c24a14e45236f42bdfabfa2d85c2e53c4","_id":"hable@0.0.5","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"dist":{"shasum":"502ef11305d20fb277707a0d9c7b9bf9de9dc441","size":31885,"noattachment":false,"key":"/hable/-/hable-0.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-0.0.5.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable-0.0.5.tgz_1517008620851_0.9307480696588755"},"directories":{},"publish_time":1517008621794,"_hasShrinkwrap":false,"_cnpm_publish_time":1517008621794},"0.0.4":{"name":"hable","version":"0.0.4","description":"A simpler tapable alternative, which can be used to create hooks for plugins","main":"lib/hable.cjs.js","module":"lib/hable.es.js","jsnext:main":"lib/hable.es.js","scripts":{"build":"bili --format es,cjs --inline","dev":"npm run build --watch","release":"npm run build && standard-version","release2":"git push --follow-tags && npm publish"},"repository":{"type":"git","url":"git+https://github.com/pi0/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"author":{"name":"Pooya Parsa","email":"pooya@pi0.ir"},"license":"MIT","bugs":{"url":"https://github.com/pi0/hable/issues"},"homepage":"https://github.com/pi0/hable#readme","dependencies":{"items-promise":"^1.0.0"},"devDependencies":{"bili":"^2.2.3","standard-version":"^4.3.0"},"gitHead":"ff454dfcc212aefdaf796a75f2e482160bbf784e","_id":"hable@0.0.4","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"dist":{"shasum":"404799aa1e0170a81a53ddc48777f3d963174992","size":31257,"noattachment":false,"key":"/hable/-/hable-0.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-0.0.4.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable-0.0.4.tgz_1517008464511_0.8348162558395416"},"directories":{},"publish_time":1517008465503,"_hasShrinkwrap":false,"_cnpm_publish_time":1517008465503},"0.0.3":{"name":"hable","version":"0.0.3","description":"A simpler tapable alternative, which can be used to create hooks for plugins","main":"lib/hable.cjs.js","module":"lib/hable.es.js","jsnext:main":"lib/hable.es.js","scripts":{"build":"bili --format es,cjs --inline","dev":"npm run build --watch","release":"npm run build && standard-version","release2":"git push --follow-tags && npm publish"},"repository":{"type":"git","url":"git+https://github.com/pi0/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"author":{"name":"Pooya Parsa","email":"pooya@pi0.ir"},"license":"MIT","bugs":{"url":"https://github.com/pi0/hable/issues"},"homepage":"https://github.com/pi0/hable#readme","dependencies":{"items-promise":"^1.0.0"},"devDependencies":{"bili":"^2.2.3","standard-version":"^4.3.0"},"gitHead":"4f4f6e7805b3917a5b47d7c7a8edf37ef31c00fa","_id":"hable@0.0.3","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"dist":{"shasum":"33e7b24a62fd3fb28687ef999a2b5bc11b9d8e62","size":31216,"noattachment":false,"key":"/hable/-/hable-0.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-0.0.3.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable-0.0.3.tgz_1517007885541_0.8486635389272124"},"directories":{},"publish_time":1517007886607,"_hasShrinkwrap":false,"_cnpm_publish_time":1517007886607},"0.0.2":{"name":"hable","version":"0.0.2","description":"A simpler tapable alternative, which can be used to create hooks for plugins","main":"lib/hable.cjs.js","module":"lib/hable.es.js","jsnext:main":"lib/hable.es.js","scripts":{"build":"bili --format es,cjs --inline","dev":"npm run build --watch","release":"npm run build && standard-version"},"repository":{"type":"git","url":"git+https://github.com/pi0/hable.git"},"keywords":["tapable","tappable","hook","plugin","hookable"],"author":{"name":"Pooya Parsa","email":"pooya@pi0.ir"},"license":"MIT","bugs":{"url":"https://github.com/pi0/hable/issues"},"homepage":"https://github.com/pi0/hable#readme","dependencies":{"items-promise":"^1.0.0"},"devDependencies":{"bili":"^2.2.3","standard-version":"^4.3.0"},"gitHead":"01a38571f554e22a6a64ebf42bd6646209d13bbd","_id":"hable@0.0.2","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"pi0","email":"pyapar@gmail.com"},"dist":{"shasum":"4a438c2a74a76e571804f4c6acbfd39739bed75c","size":31056,"noattachment":false,"key":"/hable/-/hable-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/hable/download/hable-0.0.2.tgz"},"maintainers":[{"name":"pi0","email":"pooya@pi0.ir"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hable-0.0.2.tgz_1517007657652_0.6209621916059405"},"directories":{},"publish_time":1517007658686,"_hasShrinkwrap":false,"_cnpm_publish_time":1517007658686}},"readme":"# Hable\n\n[![CircleCI](https://img.shields.io/circleci/project/github/jsless/hable.svg?style=flat-square)](https://circleci.com/gh/jsless/hable)\n[![Codecov](https://img.shields.io/codecov/c/github/jsless/hable.svg?style=flat-square)](https://codecov.io/gh/jsless/hable)\n[![npm](https://img.shields.io/npm/v/hable.svg?style=flat-square)](https://www.npmjs.com/package/hable)\n[![npm](https://img.shields.io/npm/dt/hable.svg?style=flat-square)](https://www.npmjs.com/package/hable)\n[![size](http://img.badgesize.io/https://unpkg.com/hable/dist/hable.cjs.min.js?compression=gzip&style=flat-square)](https://unpkg.com/hable)\n\n> Awaitable hooks for Node.js\n\n## Install\n\nUsing yarn:\n\n```bash\nyarn add hable\n```\n\nUsing npm:\n\n```bash\nnpm install hable\n```\n\n## Usage\n\n**Extend your base class from Hable:**\n\n```js\nimport Hookable from 'hable'\n\nexport default class Foo extends Hookable {\n  constructor() {\n    // Call to parent to initialize\n    super()\n    // Initialize Hookable with custom logger\n    // super(consola)\n  }\n\n  async someFunction() {\n    // Call and wait for `hook1` hooks (if any) sequential\n    await this.callHook('hook1')\n\n    // Call and wait for `hook2` hooks (if any) in parallel\n    await this.callHookParallel('hook2')\n  }\n}\n```\n\n**Inside plugins, register for any hook:**\n\n```js\nconst lib = newFooLib()\n\n// Register a handler for `hook2`\nlib.hook('hook2', async () => { /* ... */ })\n\n// Register multiply handlers at once\nlib.hookObj({\n  hook1: async () => { /* ... */ },\n  hook2: [ /* can be also an array */ ]\n})\n```\n\n## Hookable class\n\n### `constructor(logger)`\n\nCustom logger. Default logger is `console` but you can use your own or [consola](https://github.com/nuxt/consola).\n\nIt should be an object implementing following functions:\n- warn\n- error\n- fatal (optional)\n\n### `hook (name, fn)`\n\nRegister a handler for a specific hook. `fn` can be a single function or an array.\n\n### `addHooks(configHooks)`\n\nFlatten and register hooks object.\n\nExample:\n\n```js\nhookable.addHooks({\n  test: {\n    before: () => {},\n    after: () => {}\n  }\n})\n\n```\n\nThis registers `test:before` and `test:after` hooks at bulk.\n\n### `async callHook (name, ...args)`\n\nUsed by class itself to **sequentially** call handlers of a specific hook.\n\n### `deprecateHook (old, name)`\n\nDeprecate hook called `old` in favor of `name` hook.\n\n### `deprecateHooks (deprecatedHooks)`\n\nDeprecate all hooks from an object (keys are old and values or newer ones).\n\n### `clearHook (name)`\n\nClear all hooks for a specific hook.\n\n### `clearHooks ()`\n\nClear all hooks registered in the class.\n\n### `flatHooks (hooksObj)`\n\nRegister many hooks using an object.\n\n## Credits\n\nExtracted from [Nuxt.js](github.com/nuxt/nuxt.js) hooks system. Original author: [Sébastien Chopin](https://github.com/Atinux).\n\n## License\n\nMIT\n","_attachments":{},"homepage":"https://github.com/jsless/hable#readme","bugs":{"url":"https://github.com/jsless/hable/issues"},"license":"MIT"}