{"_id":"level-hooks","_rev":"346351","name":"level-hooks","description":"pre/post hooks for leveldb","dist-tags":{"latest":"4.5.0"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"time":{"modified":"2021-06-20T02:41:04.000Z","created":"2012-11-24T00:27:40.685Z","4.5.0":"2014-06-18T16:36:40.593Z","4.4.5":"2014-02-10T02:56:16.778Z","4.4.4":"2013-08-13T09:51:44.535Z","4.4.3":"2013-07-19T06:43:22.229Z","4.4.2":"2013-07-19T06:35:14.510Z","4.4.1":"2013-07-19T05:40:34.192Z","4.4.0":"2013-07-19T05:33:47.689Z","4.3.2":"2013-06-05T14:44:50.382Z","4.3.1":"2013-06-05T14:38:14.402Z","4.3.0":"2013-06-05T14:29:13.050Z","4.2.0":"2013-05-31T14:18:29.836Z","4.1.10":"2013-05-28T12:42:07.371Z","4.1.9":"2013-05-05T15:41:11.809Z","4.1.8":"2013-05-04T00:06:43.002Z","4.1.7":"2013-05-03T19:15:57.776Z","4.1.6":"2013-04-16T22:33:56.349Z","4.1.5":"2013-04-16T21:54:18.959Z","4.1.4":"2013-04-16T20:13:07.180Z","4.1.3":"2013-04-04T10:52:36.552Z","4.1.1":"2013-03-12T12:16:00.461Z","4.1.0":"2013-03-12T11:08:33.170Z","4.0.1":"2013-03-12T10:57:19.160Z","4.0.0":"2013-03-12T08:17:52.556Z","3.0.2":"2013-03-03T02:01:36.413Z","3.0.1":"2013-02-27T19:37:52.642Z","3.0.0":"2013-02-27T19:32:49.225Z","2.0.0":"2013-02-27T18:41:06.253Z","1.1.2":"2012-12-18T05:50:06.690Z","1.1.1":"2012-11-25T08:42:13.457Z","1.1.0":"2012-11-24T03:44:49.347Z","1.0.1":"2012-11-24T02:03:58.335Z","1.0.0":"2012-11-24T00:27:40.685Z"},"users":{"maxgfeller":true,"rocket0191":true},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"versions":{"4.5.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.5.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0","level-test":"~1.4.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"bugs":{"url":"https://github.com/dominictarr/level-hooks/issues"},"_id":"level-hooks@4.5.0","_shasum":"1b9ae61922930f3305d1a61fc4d83c8102c0dd93","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"dist":{"shasum":"1b9ae61922930f3305d1a61fc4d83c8102c0dd93","size":6010,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.5.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.5.0.tgz"},"directories":{},"publish_time":1403109400593,"_cnpm_publish_time":1403109400593,"_hasShrinkwrap":false},"4.4.5":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.4.5","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0","level-test":"~1.4.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"bugs":{"url":"https://github.com/dominictarr/level-hooks/issues"},"_id":"level-hooks@4.4.5","dist":{"shasum":"d07b096d3300a66e40e832d4438dced10659a757","size":5627,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.4.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.4.5.tgz"},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1392000976778,"_cnpm_publish_time":1392000976778,"_hasShrinkwrap":false},"4.4.4":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.4.4","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0","level-test":"~1.4.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","bugs":{"url":"https://github.com/dominictarr/level-hooks/issues"},"_id":"level-hooks@4.4.4","dist":{"shasum":"07e2527a95d0ca10e4d122f7084346d81b3819e8","size":5605,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.4.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.4.4.tgz"},"_from":".","_npmVersion":"1.3.6","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1376387504535,"_cnpm_publish_time":1376387504535,"_hasShrinkwrap":false},"4.4.3":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.4.3","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0","level-test":"~1.4.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","bugs":{"url":"https://github.com/dominictarr/level-hooks/issues"},"_id":"level-hooks@4.4.3","dist":{"shasum":"840a046ec65dfde79cfbabaf123e842073f418d1","size":5604,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.4.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.4.3.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1374216202229,"_cnpm_publish_time":1374216202229,"_hasShrinkwrap":false},"4.4.2":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.4.2","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0","level-test":"~1.4.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","bugs":{"url":"https://github.com/dominictarr/level-hooks/issues"},"_id":"level-hooks@4.4.2","dist":{"shasum":"199ef2f59a22cd736a867133615c128dbd3da848","size":5633,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.4.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.4.2.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1374215714510,"_cnpm_publish_time":1374215714510,"_hasShrinkwrap":false},"4.4.1":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.4.1","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.8","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","bugs":{"url":"https://github.com/dominictarr/level-hooks/issues"},"_id":"level-hooks@4.4.1","dist":{"shasum":"99a88146e899621a30a0678b494202310b1d9845","size":5655,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.4.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.4.1.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1374212434192,"_cnpm_publish_time":1374212434192,"_hasShrinkwrap":false},"4.4.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.4.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.8","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","bugs":{"url":"https://github.com/dominictarr/level-hooks/issues"},"_id":"level-hooks@4.4.0","dist":{"shasum":"bc8120ee6130550c30ce62ed5a6dfd6d0bcd1de3","size":5664,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.4.0.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1374212027689,"_cnpm_publish_time":1374212027689,"_hasShrinkwrap":false},"4.3.2":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.3.2","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.8","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.3.2","dist":{"shasum":"1d9eebf6295c6c368b700607714c524319961ff0","size":5570,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.3.2.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1370443490382,"_cnpm_publish_time":1370443490382,"_hasShrinkwrap":false},"4.3.1":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.3.1","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.8","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.3.1","dist":{"shasum":"35aa3911f305961a02a7b0590a750048063ea1dd","size":5500,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.3.1.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1370443094402,"_cnpm_publish_time":1370443094402,"_hasShrinkwrap":false},"4.3.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.3.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2","lock":"0.0.3"},"devDependencies":{"rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0","level-test":"~1.1.1"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.3.0","dist":{"shasum":"a1365d555072826db006518940803c7668ff25af","size":6396,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.3.0.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1370442553050,"_cnpm_publish_time":1370442553050,"_hasShrinkwrap":false},"4.2.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.2.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2","lock":"0.0.3"},"devDependencies":{"rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0","level-test":"~1.1.1"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.2.0","dist":{"shasum":"6be2a6e6a1b22bd09aac528053a4f9c2916f0650","size":6344,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.2.0.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1370009909836,"_cnpm_publish_time":1370009909836,"_hasShrinkwrap":false},"4.1.10":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.10","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2","lock":"0.0.3"},"devDependencies":{"rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0","level":"~0.9.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.10","dist":{"shasum":"6fb825575087d75eba43085c7dbf0f5871ac9a15","size":6252,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.10.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1369744927371,"_cnpm_publish_time":1369744927371,"_hasShrinkwrap":false},"4.1.9":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.9","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.8","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.9","dist":{"shasum":"8c793d0e3738c82e4534012a0051f2c69ded46ba","size":5463,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.9.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1367768471809,"_cnpm_publish_time":1367768471809,"_hasShrinkwrap":false},"4.1.8":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.8","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.8","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.8","dist":{"shasum":"fa9b7b925f25de371ea025580ce0899ac1010da4","size":5477,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.8.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1367626003002,"_cnpm_publish_time":1367626003002,"_hasShrinkwrap":false},"4.1.7":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.7","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.8","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.7","dist":{"shasum":"eac91a8429494dffa677130cd1bdd83a5c8dc5af","size":5460,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.7.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1367608557776,"_cnpm_publish_time":1367608557776,"_hasShrinkwrap":false},"4.1.6":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.6","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.6","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.6","dist":{"shasum":"435aafd5de1352d6c103cb357a5de9dad21093e0","size":5454,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.6.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1366151636349,"_cnpm_publish_time":1366151636349,"_hasShrinkwrap":false},"4.1.5":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.5","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.6","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.5","dist":{"shasum":"0ffdd56a117897f868a8b39b59cf60741386746e","size":5456,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.5.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1366149258959,"_cnpm_publish_time":1366149258959,"_hasShrinkwrap":false},"4.1.4":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.4","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.6","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.4","dist":{"shasum":"801db10710771f56f2de3f50f19a52811767bb0e","size":5249,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.4.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1366143187180,"_cnpm_publish_time":1366143187180,"_hasShrinkwrap":false},"4.1.3":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.3","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.2"},"devDependencies":{"levelup":"~0.6","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.3","dist":{"shasum":"97997d874314d035186b710ee6058309f811e117","size":5236,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.3.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1365072756552,"_cnpm_publish_time":1365072756552,"_hasShrinkwrap":false},"4.1.1":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.1","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.1"},"devDependencies":{"levelup":"~0.6","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.1","dist":{"shasum":"400ff91312ca51676f00f27e1b70a1ea5568145c","size":5222,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.1.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1363090560461,"_cnpm_publish_time":1363090560461,"_hasShrinkwrap":false},"4.1.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.1.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.0.0"},"devDependencies":{"levelup":"~0.6","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.1.0","dist":{"shasum":"9136d0f899fee514fec0730b05082081e78f6c22","size":5224,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.1.0.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1363086513170,"_cnpm_publish_time":1363086513170,"_hasShrinkwrap":false},"4.0.1":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.0.1","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{"string-range":"~1.0.0"},"devDependencies":{"levelup":"~0.6","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.0.1","dist":{"shasum":"e5a651c8ffe9af3d5ecd9cc2810ffbffce92cfe6","size":5222,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.0.1.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1363085839160,"_cnpm_publish_time":1363085839160,"_hasShrinkwrap":false},"4.0.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"4.0.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.6","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@4.0.0","dist":{"shasum":"d3ada3fe3d43ae64b6da25699717f1e7a0332304","size":5316,"noattachment":false,"key":"/level-hooks/-/level-hooks-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-4.0.0.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1363076272556,"_cnpm_publish_time":1363076272556,"_hasShrinkwrap":false},"3.0.2":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"3.0.2","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@3.0.2","dist":{"shasum":"2f4f3f2231097dd43fb4280280c42ba2e52aa203","size":4685,"noattachment":false,"key":"/level-hooks/-/level-hooks-3.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-3.0.2.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1362276096413,"_cnpm_publish_time":1362276096413,"_hasShrinkwrap":false},"3.0.1":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"3.0.1","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@3.0.1","dist":{"shasum":"9faa64d57e5174c9108d0c20dd66a39e8db09c9e","size":4690,"noattachment":false,"key":"/level-hooks/-/level-hooks-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-3.0.1.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1361993872642,"_cnpm_publish_time":1361993872642,"_hasShrinkwrap":false},"3.0.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"3.0.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@3.0.0","dist":{"shasum":"6d8dc1ae7f5e08370915f4423faafd60118e7fd4","size":4809,"noattachment":false,"key":"/level-hooks/-/level-hooks-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-3.0.0.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1361993569225,"_cnpm_publish_time":1361993569225,"_hasShrinkwrap":false},"2.0.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"2.0.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@2.0.0","dist":{"shasum":"f0ff3f08dc3362638f9fa3419c091ed737ab4ff4","size":4704,"noattachment":false,"key":"/level-hooks/-/level-hooks-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-2.0.0.tgz"},"_from":".","_npmVersion":"1.2.3","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1361990466253,"_cnpm_publish_time":1361990466253,"_hasShrinkwrap":false},"1.1.2":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"1.1.2","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@1.1.2","dist":{"shasum":"b66b68fc8ae83b582eda6ec80fed5084bc02e50a","size":4423,"noattachment":false,"key":"/level-hooks/-/level-hooks-1.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-1.1.2.tgz"},"_npmVersion":"1.1.65","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1355809806690,"_cnpm_publish_time":1355809806690,"_hasShrinkwrap":false},"1.1.1":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"1.1.1","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@1.1.1","dist":{"shasum":"754321634c487fbc4d5771a3c8532ddb947f8c87","size":4376,"noattachment":false,"key":"/level-hooks/-/level-hooks-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-1.1.1.tgz"},"_npmVersion":"1.1.65","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1353832933457,"_cnpm_publish_time":1353832933457,"_hasShrinkwrap":false},"1.1.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"1.1.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@1.1.0","dist":{"shasum":"1c53bfb90e8ddf9ec7ef2135d02ff40e899467d5","size":4175,"noattachment":false,"key":"/level-hooks/-/level-hooks-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-1.1.0.tgz"},"_npmVersion":"1.1.65","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1353728689347,"_cnpm_publish_time":1353728689347,"_hasShrinkwrap":false},"1.0.1":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"1.0.1","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@1.0.1","dist":{"shasum":"c7ff2ca141b0ee92fb8610e6cf2fc76a0812750e","size":4164,"noattachment":false,"key":"/level-hooks/-/level-hooks-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-1.0.1.tgz"},"_npmVersion":"1.1.65","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1353722638335,"_cnpm_publish_time":1353722638335,"_hasShrinkwrap":false},"1.0.0":{"name":"level-hooks","description":"pre/post hooks for leveldb","version":"1.0.0","homepage":"https://github.com/dominictarr/level-hooks","repository":{"type":"git","url":"git://github.com/dominictarr/level-hooks.git"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"http://bit.ly/dominictarr"},"dependencies":{},"devDependencies":{"levelup":"~0.2.1","rimraf":"~2.0.2","macgyver":"~1.9","range-bucket":"0.0.0"},"scripts":{"test":"set -e; for t in test/*.js; do node $t; done"},"readmeFilename":"README.md","_id":"level-hooks@1.0.0","dist":{"shasum":"2f2c5202d857fccd73818a46cf11f85c12d4ffc6","size":3697,"noattachment":false,"key":"/level-hooks/-/level-hooks-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/level-hooks/download/level-hooks-1.0.0.tgz"},"_npmVersion":"1.1.65","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"directories":{},"publish_time":1353716860685,"_cnpm_publish_time":1353716860685,"_hasShrinkwrap":false}},"readme":"# Pre/Post hooks for leveldb\n\nIntercept put/delete/batch operations on levelup.\n\n## Warning - Breaking Changes\n \nThe API for implementing pre hooks has changed.\nInstead of mutating an array at once, the prehook\nis called on each change `hook(change, add)`\nand may call `add(_change)` to add a new item into the batch.\n\nAlso, attaching hooks to leveldb is now simpler\n``` js\nvar Hooks = require('level-hooks')\nHooks(db) //previously: Hooks()(db)\n```\n\n## Example\n\n``` js\nvar levelup   = require('levelup')\nvar timestamp = require('monotonic-timestamp')\nvar hooks     = require('level-hooks')\n\nlevelup(file, {createIfMissing: true}, function (err, db) {\n\n  //install hooks onto db.\n  hooks(db)\n\n  db.hooks.pre({start: '', end: '~'}, function (change, add) {\n    //change is same pattern as the an element in the batch array.\n    //add a log to record every put operation.\n    add({type: 'put', key: '~log-'+timestamp()+'-'+change.type, value: change.key})\n  })\n\n  //add a hook that responds after an operation has completed.\n  db.hooks.post(function (ch) {\n    //{type: 'put'|'del', key: ..., value: ...}\n  })\n\n})\n```\n\nUsed by [map-reduce](https://github.com/dominictarr/map-reduce) \nto make map-reduce durable across crashes!\n\n## API\n\n### rm = db.hooks.pre (range?, hook(change, add(op), batch))\n\nIf `prefix` is a `string` or `object` that defines the range the pre-hook triggers on.\nIf `prefix' is a string, then the hook only triggers on keys that _start_ with that \nstring. If the hook is an object it must be of form `{start: START, end: END}`\n\n`hook` is a function, and will be called on each item in the batch \n(if it was a `put` or `del`, it will be called on the change)\n`op` is always of the form `{key: key, value: value, type:'put' | 'del'}`\n\nPass additional changes to `add` to add them to the batch.\nIf add is passed a string as the second argument it will prepend that prefix\nto any keys you add.\n\nYou can check what opperations are currently in the batch with the third argument.\nDo not modify the `batch` directly, instead use `add`\n\nTo veto (remove) the current change call `add(false)`.\n\n`db.hooks.pre` returns a function that will remove the hook when called.\n\n#### unsafe mode\n\nnormally, pre hooks prevent you from inserting into the hooked range\nwhen the hook is triggered. However, sometimes you do need to do this.\nIn those cases, pass in a range with `{start: START, end: END, safe: false}`\nand level-hooks will not error. If you use this option, your hook must\navoid triggering in a loop itself.\n\n### rm = db.hooks.post (range?, hook)\n\nPost hooks do not offer any chance to change the value.\nbut do take a range option, just like `pre`\n\n`db.hooks.post` returns a function that will remove the hook when called.\n\n\n## License\n\nMIT\n","_attachments":{},"homepage":"https://github.com/dominictarr/level-hooks","bugs":{"url":"https://github.com/dominictarr/level-hooks/issues"}}