{"_id":"courier","_rev":"34-4da7dca206f8cafc052a6608ddc131fd","name":"courier","time":{"modified":"2022-06-14T02:02:55.397Z","created":"2011-03-11T07:30:01.287Z","0.5.0":"2011-03-11T07:30:02.204Z","0.5.1":"2011-03-23T01:06:24.524Z","0.6.0":"2011-05-16T04:48:03.125Z","0.9.0":"2011-06-23T02:51:47.807Z","0.7.0":"2012-04-17T22:41:04.658Z","0.7.1":"2012-04-17T23:04:43.393Z","0.8.0":"2013-06-06T13:23:26.312Z","1.0.0":"2014-09-01T20:19:16.053Z","1.0.1":"2014-09-02T04:04:32.739Z"},"maintainers":[{"name":"rremer","email":"reanjr@gmail.com"}],"description":"Variant of the publish/subscribe pattern.","readme":"Courier Publish/Subscribe Module\n================================\n\nUsage - Functional Style\n------------------------\n```js\nvar publish = require(\"courier\").publish,\n    subscribe = require(\"courier\").subscribe,\n    undeliverable = requireq(\"courier\").undeliverable,\n    obj = {a:1};\n\n// add a subscriber function to an object\nsubscribe(obj, function(msg) {});\n\n// publish a message to all object subscribers\npublish(obj, \"Foo!\");\n\n// add a subscription channel by passing in extra argument\nsubscribe(obj, \"FOO\", function(msg) {});\n\n// similarly, add an extra publish argument to publish to a channel\npublish(obj, \"FOO\", \"Foo!\");\n\n// when not subscribed published messages go nowhere\npublish(obj, \"BAR\", \"Bar!\");    // no subscribers called\n\n// unless you want them to fallback as an undeliverable message\nundeliverable(obj, function(ch, msg) {});\n```\n\nUsage - Object Style\n--------------------\n```js\nvar courier = require(\"courier\").courier,\n    obj = {a:1};\n\n// call the courier function to add a Courier to the object\ncourier(obj);\n\n// subscribe using the object courier\nobj.courier.subscribe(function(msg) {});\n\n// subscribe to a courier channel\nobj.courier.subscribe(\"FOO\", function(msg) {});\n\n// publish using the object courier\nobj.courier.publish(\"Foo!\");\n\n// publish to a courier channel\nobj.courier.publish(\"FOO\", \"Foo!\");\n\n// setup an undeliverable recipient\nobj.courier.undeliverable(function(ch, msg) {});\n```\n","versions":{"1.0.0":{"name":"courier","version":"1.0.0","description":"Variant of the publish/subscribe pattern.","main":"courier.js","scripts":{"test":"mocha"},"dependencies":{"propertize":"~1"},"devDependencies":{"mocha":"~1","expect.js":"~0.3"},"repository":{"type":"git","url":"git://github.com/richRemer/courier.git"},"author":{"name":"Richard Remer","url":"reanjr@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/richRemer/courier/issues"},"_id":"courier@1.0.0","dist":{"shasum":"64b40bfbf10b33799203227b492586f5d37a0ca5","tarball":"https://registry.npmjs.org/courier/-/courier-1.0.0.tgz","integrity":"sha512-39WN5+HgHFc9JYM1n0fgdksUhq3pLmaiOsrMCGZWvMzCeYEkXFJQJm2wutH2Co2RSaOoDoXAFZ/vWSmGGlOm4A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHPpT7adqCafHQcbwHS9SHFYgtunMgc+U2k54+NxTs9oAiAQNPyty9qkyddj24nTUGMROQTAiE3ciAeeo9X1eepzGQ=="}]},"_from":".","_npmVersion":"1.3.10","_npmUser":{"name":"rremer","email":"reanjr@gmail.com"},"maintainers":[{"name":"rremer","email":"reanjr@gmail.com"}]},"1.0.1":{"name":"courier","version":"1.0.1","description":"Variant of the publish/subscribe pattern.","main":"courier.js","scripts":{"test":"mocha"},"dependencies":{"propertize":"~1"},"devDependencies":{"mocha":"~1","expect.js":"~0.3"},"repository":{"type":"git","url":"git://github.com/richRemer/courier.git"},"author":{"name":"Richard Remer","url":"reanjr@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/richRemer/courier/issues"},"_id":"courier@1.0.1","dist":{"shasum":"18210a25d7262b218f9e6e3f077152b509f83e47","tarball":"https://registry.npmjs.org/courier/-/courier-1.0.1.tgz","integrity":"sha512-AQDvuHp6rY/qJy08gSI8ycMIQDH3W4TZ4O3LXB6vYFspxr69+7zFkYlJEk2Ptj88VrS3XFSkaU1VxMYMmFWE8w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC44UwXeTgSBXEJqPm879OU1pX7bxTNRRrkCq5w3IHwmAiAwHAWhiRUmLfdQ61Krw4q0KtPaztD81PkzDIK+ql6QGA=="}]},"_from":".","_npmVersion":"1.3.10","_npmUser":{"name":"rremer","email":"reanjr@gmail.com"},"maintainers":[{"name":"rremer","email":"reanjr@gmail.com"}]}},"dist-tags":{"latest":"1.0.1"},"readmeFilename":"README.md","repository":{"type":"git","url":"git://github.com/richRemer/courier.git"},"author":{"name":"Richard Remer","url":"reanjr@gmail.com"},"bugs":{"url":"https://github.com/richRemer/courier/issues"},"license":"MIT"}