{"_id":"jayson","_rev":"3340265","name":"jayson","description":"JSON-RPC 1.0/2.0 compliant server and client","dist-tags":{"latest":"4.1.1"},"maintainers":[{"name":"tedeh","email":""}],"time":{"modified":"2024-07-10T08:27:05.000Z","created":"2012-07-02T10:20:06.649Z","4.1.1":"2024-07-06T19:24:12.902Z","4.1.0":"2023-04-29T02:51:21.986Z","4.0.0":"2022-08-12T11:49:58.872Z","3.7.0":"2022-08-12T08:14:16.640Z","3.6.7":"2022-08-12T07:17:49.228Z","3.6.6":"2021-12-15T12:13:48.102Z","3.6.5":"2021-10-12T03:31:38.847Z","3.6.4":"2021-06-26T03:20:05.902Z","3.6.3":"2021-05-21T06:40:11.325Z","3.6.2":"2021-04-30T07:38:06.792Z","3.6.1":"2021-04-28T03:17:25.208Z","3.5.2":"2021-04-25T03:53:33.244Z","3.5.1":"2021-04-25T03:36:54.580Z","3.4.4":"2020-12-18T09:45:36.852Z","3.3.4":"2020-08-22T10:14:49.253Z","3.3.3":"2020-06-08T06:40:26.459Z","3.3.2":"2020-06-08T04:08:17.295Z","3.3.1":"2020-05-28T06:36:10.137Z","3.3.0":"2020-04-22T03:37:51.552Z","3.2.2":"2020-04-22T02:49:36.062Z","3.2.1":"2020-04-15T11:24:05.822Z","3.2.0":"2019-11-27T02:59:16.906Z","3.1.2":"2019-11-07T02:43:23.615Z","3.1.1":"2019-09-25T08:35:29.601Z","3.1.0":"2019-09-17T06:18:07.633Z","3.0.2":"2019-05-07T09:42:39.847Z","3.0.1":"2019-03-31T06:42:36.926Z","3.0.0":"2019-03-31T06:39:27.798Z","2.1.2":"2019-02-10T09:02:20.065Z","2.1.1":"2019-01-05T03:44:24.224Z","2.1.0":"2018-10-11T02:38:04.763Z","2.0.6":"2018-05-05T12:44:53.112Z","2.0.5":"2017-12-04T11:24:10.488Z","2.0.4":"2017-08-30T06:45:57.471Z","2.0.3":"2017-02-21T13:12:37.064Z","2.0.2":"2016-07-25T09:21:16.745Z","2.0.1":"2016-05-23T10:44:48.710Z","2.0.0":"2016-02-05T09:50:43.369Z","1.2.2":"2015-11-21T06:33:16.694Z","1.2.1":"2015-08-28T20:02:27.461Z","1.2.0":"2015-04-05T08:46:02.202Z","1.1.3":"2015-01-02T12:37:32.346Z","1.1.2":"2014-11-10T15:12:19.666Z","1.1.1":"2014-05-10T10:13:17.586Z","1.0.11":"2013-08-10T11:49:49.689Z","1.0.10":"2013-07-24T13:42:50.867Z","1.0.9":"2013-07-14T15:00:52.790Z","1.0.8":"2013-06-23T11:35:57.125Z","1.0.7":"2013-05-30T20:04:27.893Z","1.0.6":"2013-01-08T18:14:43.659Z","1.0.5":"2012-12-30T15:57:00.536Z","1.0.4":"2012-12-30T13:17:49.379Z","1.0.3":"2012-09-21T09:13:50.532Z","1.0.2":"2012-08-18T12:27:31.914Z","1.0.1":"2012-07-02T10:20:06.649Z"},"users":{},"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"versions":{"4.1.1":{"name":"jayson","version":"4.1.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/node":"^12.12.54","@types/ws":"^7.4.4","commander":"^2.20.3","delay":"^5.0.0","es6-promisify":"^5.0.0","eyes":"^0.1.8","isomorphic-ws":"^4.0.1","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","uuid":"^8.3.2","ws":"^7.5.10"},"devDependencies":{"@types/express-serve-static-core":"^4.17.30","body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"github:docstrap/docstrap#pull/345/head","jsdoc":"^4.0.2","jshint":"^2.12.0","mocha":"^10.2.0","node-fetch":"^2.6.7","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^4.7.4"},"engines":{"node":">=8"},"_id":"jayson@4.1.1","gitHead":"c83443d55ad0cce42cb88cdf165f675cd0b0a5d1","types":"./index.d.ts","_nodeVersion":"22.2.0","_npmVersion":"10.8.1","dist":{"shasum":"282ff13d3cea09776db684b7eeca98c47b2fa99a","size":36086,"noattachment":false,"key":"/jayson/-/jayson-4.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-4.1.1.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_4.1.1_1720293852715_0.8691243212565434"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-07-06T19:24:12.902Z","publish_time":1720293852902,"_source_registry_name":"default","_cnpm_publish_time":1720293852902},"4.1.0":{"name":"jayson","version":"4.1.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/node":"^12.12.54","@types/ws":"^7.4.4","commander":"^2.20.3","delay":"^5.0.0","es6-promisify":"^5.0.0","eyes":"^0.1.8","isomorphic-ws":"^4.0.1","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","uuid":"^8.3.2","ws":"^7.4.5"},"devDependencies":{"@types/express-serve-static-core":"^4.17.30","body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"github:docstrap/docstrap#pull/345/head","jsdoc":"^4.0.2","jshint":"^2.12.0","mocha":"^10.2.0","node-fetch":"^2.6.7","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^4.7.4"},"engines":{"node":">=8"},"types":"./index.d.ts","gitHead":"dac0cb12ffffdebac470ede978b2f21c02fcdec1","_id":"jayson@4.1.0","_nodeVersion":"20.0.0","_npmVersion":"9.6.4","dist":{"shasum":"60dc946a85197317f2b1439d672a8b0a99cea2f9","size":36086,"noattachment":false,"key":"/jayson/-/jayson-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-4.1.0.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_4.1.0_1682736681774_0.5144816206437692"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-04-29T02:51:21.986Z","publish_time":1682736681986,"_source_registry_name":"default","_cnpm_publish_time":1682736681986},"4.0.0":{"name":"jayson","version":"4.0.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/node":"^12.12.54","@types/ws":"^7.4.4","commander":"^2.20.3","delay":"^5.0.0","es6-promisify":"^5.0.0","eyes":"^0.1.8","isomorphic-ws":"^4.0.1","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","uuid":"^8.3.2","ws":"^7.4.5"},"devDependencies":{"@types/express-serve-static-core":"^4.17.30","body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","mocha":"^7.2.0","node-fetch":"^2.6.7","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^4.7.4"},"engines":{"node":">=8"},"types":"./index.d.ts","gitHead":"4074858ab550c5cbe789f3054871f841ccd32b45","_id":"jayson@4.0.0","_nodeVersion":"18.7.0","_npmVersion":"8.15.0","dist":{"shasum":"145a0ced46f900934c9b307e1332bcb0c7dbdb17","size":35876,"noattachment":false,"key":"/jayson/-/jayson-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-4.0.0.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_4.0.0_1660304998695_0.5472389730998637"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-08-12T11:50:05.595Z","publish_time":1660304998872,"_cnpm_publish_time":1660304998872},"3.7.0":{"name":"jayson","version":"3.7.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/node":"^12.12.54","@types/ws":"^7.4.4","commander":"^2.20.3","delay":"^5.0.0","es6-promisify":"^5.0.0","eyes":"^0.1.8","isomorphic-ws":"^4.0.1","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^8.3.2","ws":"^7.4.5"},"devDependencies":{"@types/express-serve-static-core":"^4.17.30","@types/lodash":"^4.14.182","body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","mocha":"^7.2.0","node-fetch":"^2.6.7","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^4.7.4"},"engines":{"node":">=8"},"types":"./index.d.ts","gitHead":"8d788a2dd8f638b45db21d0eb752ce7def9e45da","_id":"jayson@3.7.0","_nodeVersion":"18.7.0","_npmVersion":"8.15.0","dist":{"shasum":"b735b12d06d348639ae8230d7a1e2916cb078f25","size":35591,"noattachment":false,"key":"/jayson/-/jayson-3.7.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.7.0.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.7.0_1660292056428_0.26271278854468183"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-08-12T08:42:26.256Z","publish_time":1660292056640,"_cnpm_publish_time":1660292056640},"3.6.7":{"name":"jayson","version":"3.6.7","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","@types/ws":"^7.4.4","commander":"^2.20.3","delay":"^5.0.0","es6-promisify":"^5.0.0","eyes":"^0.1.8","isomorphic-ws":"^4.0.1","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^8.3.2","ws":"^7.4.5"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","mocha":"^7.2.0","node-fetch":"^2.6.7","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^4.7.4"},"engines":{"node":">=8"},"types":"./index.d.ts","gitHead":"7296fadedcaf079eb4bcc1d628dfdf782fc2d1a3","_id":"jayson@3.6.7","_nodeVersion":"18.7.0","_npmVersion":"8.15.0","dist":{"shasum":"31e17ed608b3f6a12208c507c8434043c2ff1a94","size":35509,"noattachment":false,"key":"/jayson/-/jayson-3.6.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.6.7.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.6.7_1660288669112_0.6819118309867249"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-08-12T07:19:48.079Z","publish_time":1660288669228,"_cnpm_publish_time":1660288669228},"3.6.6":{"name":"jayson","version":"3.6.6","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","@types/ws":"^7.4.4","commander":"^2.20.3","delay":"^5.0.0","es6-promisify":"^5.0.0","eyes":"^0.1.8","isomorphic-ws":"^4.0.1","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^8.3.2","ws":"^7.4.5"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^3.1.6"},"engines":{"node":">=8"},"types":"./index.d.ts","gitHead":"80386502ed3f13fe83fee0c406dea45f577f320b","_id":"jayson@3.6.6","_nodeVersion":"17.2.0","_npmVersion":"8.1.4","dist":{"shasum":"189984f624e398f831bd2be8e8c80eb3abf764a1","size":35692,"noattachment":false,"key":"/jayson/-/jayson-3.6.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.6.6.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.6.6_1639570427962_0.7177759898591496"},"_hasShrinkwrap":false,"publish_time":1639570428102,"_cnpm_publish_time":1639570428102,"_cnpmcore_publish_time":"2021-12-16T14:45:20.913Z"},"3.6.5":{"name":"jayson","version":"3.6.5","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","@types/ws":"^7.4.4","commander":"^2.20.3","delay":"^5.0.0","es6-promisify":"^5.0.0","eyes":"^0.1.8","isomorphic-ws":"^4.0.1","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^3.4.0","ws":"^7.4.5"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^3.1.6"},"engines":{"node":">=8"},"gitHead":"6404157c6739f934c1aea850cdc53968078a8ff0","_id":"jayson@3.6.5","_nodeVersion":"16.9.1","_npmVersion":"7.21.1","dist":{"shasum":"e560bcad4daf098c7391f46ba8efc9d6f34a4102","size":35686,"noattachment":false,"key":"/jayson/-/jayson-3.6.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.6.5.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.6.5_1634009498639_0.10511102515157011"},"_hasShrinkwrap":false,"publish_time":1634009498847,"_cnpm_publish_time":1634009498847,"_cnpmcore_publish_time":"2021-12-16T14:45:21.151Z"},"3.6.4":{"name":"jayson","version":"3.6.4","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","@types/ws":"^7.4.4","commander":"^2.20.3","delay":"^5.0.0","es6-promisify":"^5.0.0","eyes":"^0.1.8","isomorphic-ws":"^4.0.1","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^3.4.0","ws":"^7.4.5"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^3.1.6"},"engines":{"node":">=8"},"gitHead":"3495ffc1ed754467b7936858fee2f25df421fbc4","_id":"jayson@3.6.4","_nodeVersion":"16.1.0","_npmVersion":"7.11.2","dist":{"shasum":"9e9d1ba2a75d811f254bceff61a096772fa04832","size":34481,"noattachment":false,"key":"/jayson/-/jayson-3.6.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.6.4.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.6.4_1624677605731_0.2858347344003098"},"_hasShrinkwrap":false,"publish_time":1624677605902,"_cnpm_publish_time":1624677605902,"_cnpmcore_publish_time":"2021-12-16T14:45:21.431Z"},"3.6.3":{"name":"jayson","version":"3.6.3","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","commander":"^2.20.3","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^3.4.0"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^3.1.6"},"engines":{"node":">=8"},"gitHead":"bcb0d9511e19c6a4d97f9a34aa00637103607e3a","_id":"jayson@3.6.3","_nodeVersion":"16.1.0","_npmVersion":"7.11.2","dist":{"shasum":"b0bb8d2e37e34e39e68044ab925fd92f103f1bd9","size":32655,"noattachment":false,"key":"/jayson/-/jayson-3.6.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.6.3.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.6.3_1621579210733_0.04433697310338758"},"_hasShrinkwrap":false,"publish_time":1621579211325,"_cnpm_publish_time":1621579211325,"_cnpmcore_publish_time":"2021-12-16T14:45:21.676Z"},"3.6.2":{"name":"jayson","version":"3.6.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","commander":"^2.20.3","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^3.4.0"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^3.1.6"},"engines":{"node":">=8"},"gitHead":"5b989de91006da5f5aa6546c25a934fc500c09d4","_id":"jayson@3.6.2","_nodeVersion":"16.0.0","_npmVersion":"7.10.0","dist":{"shasum":"e551e25abf2efe333051a6ed88b10f08c5288f50","size":32594,"noattachment":false,"key":"/jayson/-/jayson-3.6.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.6.2.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.6.2_1619768286636_0.20439581855914724"},"_hasShrinkwrap":false,"publish_time":1619768286792,"_cnpm_publish_time":1619768286792,"_cnpmcore_publish_time":"2021-12-16T14:45:21.860Z"},"3.6.1":{"name":"jayson","version":"3.6.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","commander":"^2.20.3","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^3.4.0"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^3.1.6"},"engines":{"node":">=8"},"gitHead":"5550019bafdec8b8a06e52ace7d52e5f0b68d199","_id":"jayson@3.6.1","_nodeVersion":"16.0.0","_npmVersion":"7.10.0","dist":{"shasum":"fc656e7bc0beb58e3bd6e6b32033c4b48b7f3dc6","size":32742,"noattachment":false,"key":"/jayson/-/jayson-3.6.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.6.1.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.6.1_1619579845052_0.42946993968352243"},"_hasShrinkwrap":false,"publish_time":1619579845208,"_cnpm_publish_time":1619579845208,"_cnpmcore_publish_time":"2021-12-16T14:45:22.116Z"},"3.5.2":{"name":"jayson","version":"3.5.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","commander":"^2.20.3","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","JSONStream":"^1.3.5","lodash":"^4.17.20","uuid":"^3.4.0"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3","typescript":"^3.1.6"},"engines":{"node":">=8"},"gitHead":"c7ddd65a980f3b85d33427eaa9b9bc7e2cc610e1","_id":"jayson@3.5.2","_nodeVersion":"16.0.0","_npmVersion":"7.10.0","dist":{"shasum":"11f8300c7e8b1d0d6fe6fdd8b4406c7ae7f8c4dc","size":32266,"noattachment":false,"key":"/jayson/-/jayson-3.5.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.5.2.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.5.2_1619322813133_0.8719753107432089"},"_hasShrinkwrap":false,"publish_time":1619322813244,"_cnpm_publish_time":1619322813244,"_cnpmcore_publish_time":"2021-12-16T14:45:22.353Z"},"3.5.1":{"name":"jayson","version":"3.5.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","JSONStream":"^1.3.5","commander":"^2.20.3","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.20","uuid":"^3.4.0"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3"},"engines":{"node":">=8"},"gitHead":"98efd874e0f4ceafe1fe60a153bd7aba214c796d","_id":"jayson@3.5.1","_nodeVersion":"16.0.0","_npmVersion":"7.10.0","dist":{"shasum":"47721b74c1067509e4a76f1d43d36c2d266e3cf0","size":32253,"noattachment":false,"key":"/jayson/-/jayson-3.5.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.5.1.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.5.1_1619321814430_0.7086781431352147"},"_hasShrinkwrap":false,"publish_time":1619321814580,"_cnpm_publish_time":1619321814580,"_cnpmcore_publish_time":"2021-12-16T14:45:22.550Z"},"3.4.4":{"name":"jayson","version":"3.4.4","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"https://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","JSONStream":"^1.3.5","commander":"^2.20.3","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.20","uuid":"^3.4.0"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.1","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3"},"engines":{"node":">=8"},"gitHead":"8f9b2daad744bd4ece3bc33b42687a7c91751ca1","_id":"jayson@3.4.4","_nodeVersion":"14.5.0","_npmVersion":"6.11.3","dist":{"shasum":"dcedffba0c02785c4aa22dbff8c28966cae59773","size":32321,"noattachment":false,"key":"/jayson/-/jayson-3.4.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.4.4.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.4.4_1608284736661_0.6785645064124814"},"_hasShrinkwrap":false,"publish_time":1608284736852,"_cnpm_publish_time":1608284736852,"_cnpmcore_publish_time":"2021-12-16T14:45:22.962Z"},"3.3.4":{"name":"jayson","version":"3.3.4","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.33","@types/express-serve-static-core":"^4.17.9","@types/lodash":"^4.14.159","@types/node":"^12.12.54","JSONStream":"^1.3.5","commander":"^2.20.3","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.20","uuid":"^3.4.0"},"devDependencies":{"body-parser":"^1.19.0","connect":"^3.7.0","coveralls":"^3.1.0","es6-promise":"^4.2.8","express":"^4.17.1","ink-docstrap":"^1.3.2","jsdoc":"^3.6.5","jshint":"^2.12.0","marked":"^0.7.0","mocha":"^7.2.0","node-fetch":"^2.6.0","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.2.3","superagent":"^3.8.3"},"engines":{"node":">=8"},"gitHead":"e28eb365c1848ac4b28032034381bddced6ecf70","_id":"jayson@3.3.4","_nodeVersion":"14.5.0","_npmVersion":"6.11.3","dist":{"shasum":"c4fc8f3a8884ac85562da101f5bb526e5a679fa4","size":32299,"noattachment":false,"key":"/jayson/-/jayson-3.3.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.3.4.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.3.4_1598091289129_0.8522122216962646"},"_hasShrinkwrap":false,"publish_time":1598091289253,"_cnpm_publish_time":1598091289253,"_cnpmcore_publish_time":"2021-12-16T14:45:23.216Z"},"3.3.3":{"name":"jayson","version":"3.3.3","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","coveralls":"^3.0.11","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^7.1.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"engines":{"node":">=8"},"gitHead":"6529356f4a46cae0c762f9355613ad642b7d322a","_id":"jayson@3.3.3","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"e9442a6b831e9596fcf8d5a7f032e86b5cbe0b88","size":32302,"noattachment":false,"key":"/jayson/-/jayson-3.3.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.3.3.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.3.3_1591598426302_0.6735794657539276"},"_hasShrinkwrap":false,"publish_time":1591598426459,"_cnpm_publish_time":1591598426459,"_cnpmcore_publish_time":"2021-12-16T14:45:23.450Z"},"3.3.2":{"name":"jayson","version":"3.3.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","coveralls":"^3.0.11","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^7.1.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"engines":{"node":">=8"},"gitHead":"c9c47a50093fc71c5bbc992a24c488499941c4ef","_id":"jayson@3.3.2","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"07ac6faa786bb61cf385ccf9da4114a58ab6f4f0","size":31700,"noattachment":false,"key":"/jayson/-/jayson-3.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.3.2.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.3.2_1591589297096_0.47422564462817274"},"_hasShrinkwrap":false,"publish_time":1591589297295,"_cnpm_publish_time":1591589297295,"_cnpmcore_publish_time":"2021-12-16T14:45:23.691Z"},"3.3.1":{"name":"jayson","version":"3.3.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","coveralls":"^3.0.11","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^7.1.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"engines":{"node":">=8"},"gitHead":"8db9c541624948f9ec12bff21568b62589ead5d1","_id":"jayson@3.3.1","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"07cb50573722f264ce5855cc009c59a3f696c343","size":31485,"noattachment":false,"key":"/jayson/-/jayson-3.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.3.1.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.3.1_1590647770017_0.046469405921851115"},"_hasShrinkwrap":false,"publish_time":1590647770137,"_cnpm_publish_time":1590647770137,"_cnpmcore_publish_time":"2021-12-16T14:45:23.944Z"},"3.3.0":{"name":"jayson","version":"3.3.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","coveralls":"^3.0.11","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^7.1.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"engines":{"node":">=8"},"gitHead":"943cac543c10a97fa7c862cbd5aff576c84dcfb0","_id":"jayson@3.3.0","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"72089c4cd8c848fc6f992da0cdd28973ab6a6e78","size":31519,"noattachment":false,"key":"/jayson/-/jayson-3.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.3.0.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.3.0_1587526671304_0.5051136165871302"},"_hasShrinkwrap":false,"publish_time":1587526671552,"_cnpm_publish_time":1587526671552,"_cnpmcore_publish_time":"2021-12-16T14:45:24.202Z"},"3.2.2":{"name":"jayson","version":"3.2.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","coveralls":"^3.0.11","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^7.1.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"b401cbf5c775685b6f4e68d680eb5d5956cac065","_id":"jayson@3.2.2","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"729dc1d6d81af1f4b52d6bb959ba96696906ffc5","size":31471,"noattachment":false,"key":"/jayson/-/jayson-3.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.2.2.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.2.2_1587523775911_0.553916750373348"},"_hasShrinkwrap":false,"publish_time":1587523776062,"_cnpm_publish_time":1587523776062,"_cnpmcore_publish_time":"2021-12-16T14:45:24.454Z"},"3.2.1":{"name":"jayson","version":"3.2.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","coveralls":"mocha && nyc report --reporter=text-lcov | coveralls","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","coveralls":"^3.0.11","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"b69d4d8ddcb83661a62e589b5f940440c0a13c7a","_id":"jayson@3.2.1","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"e7e1d6c5498dae43de9e9fc75e3351867d616778","size":31469,"noattachment":false,"key":"/jayson/-/jayson-3.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.2.1.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.2.1_1586949845593_0.24563519473076334"},"_hasShrinkwrap":false,"publish_time":1586949845822,"_cnpm_publish_time":1586949845822,"_cnpmcore_publish_time":"2021-12-16T14:45:24.658Z"},"3.2.0":{"name":"jayson","version":"3.2.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"3b6e56beb2ca737288e232f57cd8157a5e4fe1a6","_id":"jayson@3.2.0","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"df6d8139cd9f6ee2f56c8c2deaee448da7eccf1b","size":31343,"noattachment":false,"key":"/jayson/-/jayson-3.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.2.0.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.2.0_1574823556746_0.8934089350774113"},"_hasShrinkwrap":false,"publish_time":1574823556906,"_cnpm_publish_time":1574823556906,"_cnpmcore_publish_time":"2021-12-16T14:45:24.932Z"},"3.1.2":{"name":"jayson","version":"3.1.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"3543f62f3ba5c91652aa66b26727d3c1d2099a7d","_id":"jayson@3.1.2","_nodeVersion":"12.8.0","_npmVersion":"6.11.3","dist":{"shasum":"1497ef3ebba53bbdb4737ed7a2456079024a846f","size":57808,"noattachment":false,"key":"/jayson/-/jayson-3.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.1.2.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.1.2_1573094603288_0.9817368560132076"},"_hasShrinkwrap":false,"publish_time":1573094603615,"_cnpm_publish_time":1573094603615,"_cnpmcore_publish_time":"2021-12-16T14:45:25.155Z"},"3.1.1":{"name":"jayson","version":"3.1.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.9","@types/lodash":"^4.14.139","@types/node":"^12.7.7","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.15","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.3","jshint":"^2.10.1","marked":"^0.7.0","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"c4e802dd409c86e4754803af3232aa530bedecd6","_id":"jayson@3.1.1","_nodeVersion":"12.8.0","_npmVersion":"6.11.3","dist":{"shasum":"2faedb6e8c8df266c7ef3d9d6a6cc2d2655e226d","size":57735,"noattachment":false,"key":"/jayson/-/jayson-3.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.1.1.tgz"},"_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.1.1_1569400529469_0.9284276566183134"},"_hasShrinkwrap":false,"publish_time":1569400529601,"_cnpm_publish_time":1569400529601,"_cnpmcore_publish_time":"2021-12-16T14:45:25.415Z"},"3.1.0":{"name":"jayson","version":"3.1.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 --esModuleInterop typescript/test.ts","coverage":"nyc mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.11","uuid":"^3.2.1"},"devDependencies":{"@types/connect":"^3.4.32","@types/express-serve-static-core":"^4.16.7","@types/lodash":"^4.14.138","@types/node":"^12.0.7","body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.6.2","jshint":"^2.10.1","marked":"^0.6.2","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^14.1.1","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"12fb780a4f97986711467c91fa22b362bf7ce6f8","_id":"jayson@3.1.0","_npmVersion":"6.3.0","_nodeVersion":"12.8.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"a7c529cd2f0dbd5751e2a6320c74531c3d15162a","size":55733,"noattachment":false,"key":"/jayson/-/jayson-3.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.1.0.tgz"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.1.0_1568701087478_0.16622745219572832"},"_hasShrinkwrap":false,"publish_time":1568701087633,"_cnpm_publish_time":1568701087633,"_cnpmcore_publish_time":"2021-12-16T14:45:25.617Z"},"3.0.2":{"name":"jayson","version":"3.0.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","test-tsc":"tsc --strict --lib es6 typescript/test.ts","coverage":"nyc mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/node":"^10.3.5","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.11","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.5.5","jshint":"^2.10.1","marked":"0.3.9","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^13.2.0","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"72e5ce0a4175e4e4241e86af5b24409a68f47a55","_id":"jayson@3.0.2","_npmVersion":"6.3.0","_nodeVersion":"11.6.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"3fdd1ba8d780fe4600d2f9aa80a8639f3a799b08","size":55217,"noattachment":false,"key":"/jayson/-/jayson-3.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.0.2.tgz"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.0.2_1557222159681_0.03707383813096099"},"_hasShrinkwrap":false,"publish_time":1557222159847,"_cnpm_publish_time":1557222159847,"_cnpmcore_publish_time":"2021-12-16T14:45:25.862Z"},"3.0.1":{"name":"jayson","version":"3.0.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"nyc mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/node":"^10.3.5","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.11","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.5.5","jshint":"^2.10.1","marked":"0.3.9","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^13.2.0","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"fe6435a9be3d7bbd0ad6d1c7cb180656be39842c","_id":"jayson@3.0.1","_npmVersion":"6.3.0","_nodeVersion":"11.6.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"ec79fd0c38144da7d444aafe32c5d3c3edae6f4b","size":51610,"noattachment":false,"key":"/jayson/-/jayson-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.0.1.tgz"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.0.1_1554014556778_0.8648891770656086"},"_hasShrinkwrap":false,"publish_time":1554014556926,"_cnpm_publish_time":1554014556926,"_cnpmcore_publish_time":"2021-12-16T14:45:26.140Z"},"3.0.0":{"name":"jayson","version":"3.0.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"nyc mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/node":"^10.3.5","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.11","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.5.5","jshint":"^2.10.1","marked":"0.3.9","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^13.2.0","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"5c90a806c4663261e18a622ae771a163ac010953","_id":"jayson@3.0.0","_npmVersion":"6.3.0","_nodeVersion":"11.6.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"40b6ad7ca56fba090dd7a441ce5cff5ebecb103b","size":51615,"noattachment":false,"key":"/jayson/-/jayson-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-3.0.0.tgz"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_3.0.0_1554014367668_0.9046786473062833"},"_hasShrinkwrap":false,"publish_time":1554014367798,"_cnpm_publish_time":1554014367798,"_cnpmcore_publish_time":"2021-12-16T14:45:26.422Z"},"2.1.2":{"name":"jayson","version":"2.1.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"nyc mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/node":"^10.3.5","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.11","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","express":"^4.16.4","ink-docstrap":"^1.3.2","jsdoc":"^3.5.5","jshint":"^2.10.1","marked":"0.3.9","mocha":"^4.0.1","node-fetch":"^2.1.2","nyc":"^13.2.0","pass-stream":"^1.0.0","should":"^13.1.3","superagent":"^3.8.3"},"gitHead":"3197f79ea5a9f37827cbc109d09a926545a49057","_id":"jayson@2.1.2","_npmVersion":"6.3.0","_nodeVersion":"11.6.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"3612f578529b5cc84301f098f29cd1612119e53d","size":51149,"noattachment":false,"key":"/jayson/-/jayson-2.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.1.2.tgz"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_2.1.2_1549789339945_0.21714786224476867"},"_hasShrinkwrap":false,"publish_time":1549789340065,"_cnpm_publish_time":1549789340065,"_cnpmcore_publish_time":"2021-12-16T14:45:26.727Z"},"2.1.1":{"name":"jayson","version":"2.1.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"istanbul cover _mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh.net:/var/www/jayson.tedeh.net; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/node":"^10.3.5","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.10","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","ink-docstrap":"^1.3.2","istanbul":"^0.4.5","jsdoc":"^3.5.5","jshint":"2.9.1","marked":"0.3.9","mocha":"^4.0.1","node-fetch":"^2.1.2","pass-stream":"^1.0.0","should":"^13.1.3"},"gitHead":"6f9a751b1bf398d48ec4e78f48f40812a7bc5d6a","_id":"jayson@2.1.1","_npmVersion":"6.3.0","_nodeVersion":"10.5.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"2cefed8c014f7d5b73e97cb3cfc8e0e6b02eeb35","size":47056,"noattachment":false,"key":"/jayson/-/jayson-2.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.1.1.tgz"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_2.1.1_1546659864098_0.09278544456865268"},"_hasShrinkwrap":false,"publish_time":1546659864224,"_cnpm_publish_time":1546659864224,"_cnpmcore_publish_time":"2021-12-16T14:45:27.029Z"},"2.1.0":{"name":"jayson","version":"2.1.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"istanbul cover _mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh:/var/www/jayson; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"@types/node":"^10.3.5","JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.10","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","ink-docstrap":"^1.3.2","istanbul":"^0.4.5","jsdoc":"^3.5.5","jshint":"2.9.1","marked":"0.3.9","mocha":"^4.0.1","node-fetch":"^2.1.2","pass-stream":"^1.0.0","should":"^13.1.3"},"gitHead":"be1e188dc49b16bf06b374c062f073f38fb4b91d","_id":"jayson@2.1.0","_npmVersion":"6.3.0","_nodeVersion":"10.5.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"d1cd79bff3247666ecb61120edbb0c61f0e345b2","size":45980,"noattachment":false,"key":"/jayson/-/jayson-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.1.0.tgz"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_2.1.0_1539225484615_0.1926624280998721"},"_hasShrinkwrap":false,"publish_time":1539225484763,"_cnpm_publish_time":1539225484763,"_cnpmcore_publish_time":"2021-12-16T14:45:27.320Z"},"2.0.6":{"name":"jayson","version":"2.0.6","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"istanbul cover _mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh:/var/www/jayson; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.4","uuid":"^3.2.1"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","ink-docstrap":"^1.3.2","istanbul":"^0.4.5","jsdoc":"^3.5.5","jshint":"2.9.1","marked":"0.3.9","mocha":"^4.0.1","node-fetch":"^2.1.2","pass-stream":"^1.0.0","should":"^13.1.3"},"gitHead":"a10585b36fe2859cb9fa2ac7e90de1e43c1bb2c9","_id":"jayson@2.0.6","_npmVersion":"5.8.0","_nodeVersion":"9.10.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"f5ad3fc948d0722959b3dcdf4ede6fc3cf241565","size":44297,"noattachment":false,"key":"/jayson/-/jayson-2.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.0.6.tgz"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson_2.0.6_1525524293002_0.285870923361943"},"_hasShrinkwrap":false,"publish_time":1525524293112,"_cnpm_publish_time":1525524293112,"_cnpmcore_publish_time":"2021-12-16T14:45:27.550Z"},"2.0.5":{"name":"jayson","version":"2.0.5","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"istanbul cover _mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh:/var/www/jayson; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"^1.3.1","commander":"^2.12.2","es6-promisify":"^5.0.0","eyes":"^0.1.8","json-stringify-safe":"^5.0.1","lodash":"^4.17.4"},"devDependencies":{"body-parser":"^1.18.2","connect":"^3.6.5","es6-promise":"^4.1.1","ink-docstrap":"^1.3.2","istanbul":"^0.4.5","jsdoc":"^3.5.5","jshint":"2.9.1","mocha":"^4.0.1","pass-stream":"^1.0.0","should":"^13.1.3"},"gitHead":"ad30614851d8ec4a3b685b018da0eece9b20a3d5","_id":"jayson@2.0.5","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"46df3f0bceb0b5b708bf7c8806c34c81938d3f21","size":43073,"noattachment":false,"key":"/jayson/-/jayson-2.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.0.5.tgz"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson-2.0.5.tgz_1512386650184_0.7138447018805891"},"directories":{},"publish_time":1512386650488,"_hasShrinkwrap":false,"_cnpm_publish_time":1512386650488,"_cnpmcore_publish_time":"2021-12-16T14:45:27.768Z"},"2.0.4":{"name":"jayson","version":"2.0.4","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"istanbul cover _mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* tedeh:/var/www/jayson; exit 0","lint":"jshint lib/*.js lib/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"1.0.3","commander":"1.3.2","eyes":"0.1.8","json-stringify-safe":"5.0.1","lodash":"3.6.0","es6-promisify":"3.0.0"},"devDependencies":{"connect":"2.15.0","es6-promise":"3.0.2","ink-docstrap":"1.1.4","istanbul":"0.4.3","jsdoc":"3.4.0","jshint":"2.9.1","mocha":"2.1.0","pass-stream":"0.1.3","should":"8.2.1","uglify-js":"2.4.13"},"gitHead":"78149f63eb5744417ead1f737095af165c6dff15","_id":"jayson@2.0.4","_npmVersion":"5.3.0","_nodeVersion":"8.3.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"c20122d8d2d0512d41635db4bcf3785bbe4ff685","size":42334,"noattachment":false,"key":"/jayson/-/jayson-2.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.0.4.tgz"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jayson-2.0.4.tgz_1504075556859_0.009730817284435034"},"directories":{},"publish_time":1504075557471,"_hasShrinkwrap":false,"_cnpm_publish_time":1504075557471,"_cnpmcore_publish_time":"2021-12-16T14:45:28.040Z"},"2.0.3":{"name":"jayson","version":"2.0.3","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"istanbul cover _mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* oceandatorn:~/shared/nginx/domains/jayson.tedeh.net; exit 0","lint":"jshint -c .jshintrc -c .jshintrc lib/*.js lib/**/*.js examples/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"1.0.3","commander":"1.3.2","eyes":"0.1.8","json-stringify-safe":"5.0.1","lodash":"3.6.0","es6-promisify":"3.0.0"},"devDependencies":{"connect":"2.15.0","es6-promise":"3.0.2","ink-docstrap":"1.1.4","istanbul":"0.4.3","jsdoc":"3.4.0","jshint":"2.9.1","mocha":"2.1.0","pass-stream":"0.1.3","should":"8.2.1","uglify-js":"2.4.13"},"gitHead":"a8ab43f0a94e631e015870b3147130f840be953f","_id":"jayson@2.0.3","_shasum":"dd750b74ea3341f3a98f875b41a35caf1d4949ed","_from":".","_npmVersion":"3.10.7","_nodeVersion":"6.6.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"dd750b74ea3341f3a98f875b41a35caf1d4949ed","size":42195,"noattachment":false,"key":"/jayson/-/jayson-2.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.0.3.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/jayson-2.0.3.tgz_1487682755117_0.16825318918563426"},"directories":{},"publish_time":1487682757064,"_hasShrinkwrap":false,"_cnpm_publish_time":1487682757064,"_cnpmcore_publish_time":"2021-12-16T14:45:28.287Z"},"2.0.2":{"name":"jayson","version":"2.0.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"istanbul cover _mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* oceandatorn:~/shared/nginx/domains/jayson.tedeh.net; exit 0","lint":"jshint -c .jshintrc -c .jshintrc lib/*.js lib/**/*.js examples/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"1.0.3","commander":"1.3.2","eyes":"0.1.8","json-stringify-safe":"5.0.1","lodash":"3.6.0","es6-promisify":"3.0.0"},"devDependencies":{"connect":"2.15.0","es6-promise":"3.0.2","ink-docstrap":"1.1.4","istanbul":"0.4.3","jsdoc":"3.4.0","jshint":"2.9.1","mocha":"2.1.0","pass-stream":"0.1.3","should":"8.2.1","uglify-js":"2.4.13"},"gitHead":"3f3ee3f83df8cca58054d8e1ec2d28b618d9944e","_id":"jayson@2.0.2","_shasum":"38e2e132ee48795e61f1255a53cb3f10bfb2394b","_from":".","_npmVersion":"3.7.3","_nodeVersion":"5.9.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"38e2e132ee48795e61f1255a53cb3f10bfb2394b","size":41779,"noattachment":false,"key":"/jayson/-/jayson-2.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.0.2.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/jayson-2.0.2.tgz_1469438474762_0.6638975879177451"},"directories":{},"publish_time":1469438476745,"_hasShrinkwrap":false,"_cnpm_publish_time":1469438476745,"_cnpmcore_publish_time":"2021-12-16T14:45:28.485Z"},"2.0.1":{"name":"jayson","version":"2.0.1","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"mocha","test-ci":"mocha -w -R min","coverage":"istanbul cover _mocha","docs":"jsdoc -t node_modules/ink-docstrap/template -R README.md -c ./jsdoc.conf.json","docs_clear":"rm -rf ./docs/jayson/*; exit 0","docs_refresh":"npm run docs_clear && npm run docs","docs_deploy":"rsync --delete -r docs/jayson/* oceandatorn:~/shared/nginx/domains/jayson.tedeh.net; exit 0","lint":"jshint -c .jshintrc -c .jshintrc lib/*.js lib/**/*.js examples/**/*.js promise/*.js promise/**/*.js; exit 0"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"1.0.3","commander":"1.3.2","eyes":"0.1.8","json-stringify-safe":"5.0.1","lodash":"3.6.0","es6-promisify":"3.0.0"},"devDependencies":{"connect":"2.15.0","es6-promise":"3.0.2","ink-docstrap":"1.1.4","istanbul":"0.4.3","jsdoc":"3.4.0","jshint":"2.9.1","mocha":"2.1.0","pass-stream":"0.1.3","should":"8.2.1","uglify-js":"2.4.13"},"gitHead":"8e5f4c28ab28513613fa6acb2857af1baa2b8bd6","_id":"jayson@2.0.1","_shasum":"ecaced02d0976543b231a4d0d6e0da069264916c","_from":".","_npmVersion":"3.7.3","_nodeVersion":"5.9.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"ecaced02d0976543b231a4d0d6e0da069264916c","size":41638,"noattachment":false,"key":"/jayson/-/jayson-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.0.1.tgz"},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/jayson-2.0.1.tgz_1464000287506_0.4045931550208479"},"directories":{},"publish_time":1464000288710,"_hasShrinkwrap":false,"_cnpm_publish_time":1464000288710,"_cnpmcore_publish_time":"2021-12-16T14:45:28.704Z"},"2.0.0":{"name":"jayson","version":"2.0.0","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"1.0.3","commander":"1.3.2","eyes":"0.1.8","json-stringify-safe":"5.0.1","lodash":"3.6.0","es6-promisify":"3.0.0"},"devDependencies":{"blanket":"1.1.6","connect":"2.15.0","es6-promise":"3.0.2","jshint":"2.9.1","mocha":"2.1.0","pass-stream":"0.1.3","should":"8.2.1","uglify-js":"2.4.13"},"gitHead":"0a25f874a8eeef72bf2f9c47b88905f382d6c537","_id":"jayson@2.0.0","_shasum":"7d3f107dea025c4c65af0ae9b143453c2cb8fc3a","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.3.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"7d3f107dea025c4c65af0ae9b143453c2cb8fc3a","size":40252,"noattachment":false,"key":"/jayson/-/jayson-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-2.0.0.tgz"},"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/jayson-2.0.0.tgz_1454665842393_0.06008896022103727"},"directories":{},"publish_time":1454665843369,"_hasShrinkwrap":false,"_cnpm_publish_time":1454665843369,"_cnpmcore_publish_time":"2021-12-16T14:45:28.924Z"},"1.2.2":{"name":"jayson","version":"1.2.2","description":"JSON-RPC 1.0/2.0 compliant server and client","license":"MIT","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"1.0.3","commander":"1.3.2","eyes":"0.1.8","lodash":"3.6.0"},"devDependencies":{"blanket":"1.1.6","connect":"2.15.0","mocha":"2.1.0","pass-stream":"0.1.3","should":"5.2.0","uglify-js":"2.4.13"},"gitHead":"2c35053858829403d964d32bd34a0493d2788295","_id":"jayson@1.2.2","_shasum":"d28c602ecb8922c2a9fb3c1611f79fb584f193ec","_from":".","_npmVersion":"3.1.3","_nodeVersion":"2.5.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"d28c602ecb8922c2a9fb3c1611f79fb584f193ec","size":36450,"noattachment":false,"key":"/jayson/-/jayson-1.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.2.2.tgz"},"directories":{},"publish_time":1448087596694,"_hasShrinkwrap":false,"_cnpm_publish_time":1448087596694,"_cnpmcore_publish_time":"2021-12-16T14:45:29.142Z"},"1.2.1":{"name":"jayson","version":"1.2.1","description":"JSON-RPC 1.0/2.0 compliant server and client","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"commander":"1.3.2","eyes":"0.1.8","jsonstream":"1.0.3","lodash":"3.6.0"},"devDependencies":{"blanket":"1.1.6","connect":"2.15.0","mocha":"2.1.0","pass-stream":"0.1.3","should":"5.2.0","uglify-js":"2.4.13"},"gitHead":"2292f22e9f4a23d2e3682579e02ffe09cf31c93d","_id":"jayson@1.2.1","_shasum":"da78484415c7663ddfe13939dbf25b0443a73ba5","_from":".","_npmVersion":"3.1.3","_nodeVersion":"2.5.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"da78484415c7663ddfe13939dbf25b0443a73ba5","size":36423,"noattachment":false,"key":"/jayson/-/jayson-1.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.2.1.tgz"},"directories":{},"publish_time":1440792147461,"_hasShrinkwrap":false,"_cnpm_publish_time":1440792147461,"_cnpmcore_publish_time":"2021-12-16T14:45:29.413Z"},"1.2.0":{"name":"jayson","version":"1.2.0","description":"JSON-RPC 1.0/2.0 compliant server and client","keywords":["jsonrpc","json-rpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test"},"config":{"blanket":{"pattern":"lib","data-cover-never":["node_modules","public"],"data-cover-reporter-options":{"shortnames":false}}},"dependencies":{"JSONStream":"0.8.0","commander":"1.3.2","eyes":"0.1.8","lodash":"3.6.0"},"devDependencies":{"blanket":"1.1.6","connect":"2.15.0","mocha":"2.1.0","pass-stream":"0.1.3","should":"5.2.0","uglify-js":"2.4.13"},"gitHead":"07a3498da37613ddf89c64ddcee82ad94487e483","_id":"jayson@1.2.0","_shasum":"a0bab03f1123930ec1d3d0663d6c8d3fd26763fe","_from":".","_npmVersion":"2.1.17","_nodeVersion":"1.2.0","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"a0bab03f1123930ec1d3d0663d6c8d3fd26763fe","size":34194,"noattachment":false,"key":"/jayson/-/jayson-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.2.0.tgz"},"directories":{},"publish_time":1428223562202,"_hasShrinkwrap":false,"_cnpm_publish_time":1428223562202,"_cnpmcore_publish_time":"2021-12-16T14:45:29.647Z"},"1.1.3":{"name":"jayson","version":"1.1.3","description":"JSON-RPC 1.0/2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","jquery","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test"},"dependencies":{"JSONStream":"0.8.0","commander":"1.3.2","eyes":"0.1.8","underscore":"1.6.0"},"devDependencies":{"should":"3.3.1","mocha":"1.18.2","connect":"2.15.0","uglify-js":"2.4.13","blanket":"1.1.6","pass-stream":"0.1.3"},"gitHead":"3ceb804e5f31cbb627956d5fd5b1642e7b1a24d4","_id":"jayson@1.1.3","_shasum":"07ecccf17acf4316222fab1c2f2797ef4a95c2c7","_from":".","_npmVersion":"2.1.6","_nodeVersion":"0.10.33","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"07ecccf17acf4316222fab1c2f2797ef4a95c2c7","size":32363,"noattachment":false,"key":"/jayson/-/jayson-1.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.1.3.tgz"},"directories":{},"publish_time":1420202252346,"_hasShrinkwrap":false,"_cnpm_publish_time":1420202252346,"_cnpmcore_publish_time":"2021-12-16T14:45:29.866Z"},"1.1.2":{"name":"jayson","version":"1.1.2","description":"JSON-RPC 1.0/2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","jquery","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test"},"dependencies":{"JSONStream":"0.8.0","commander":"1.3.2","eyes":"0.1.8","underscore":"^1.6.0"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"gitHead":"abe2ccb3d50205c8a7e07d2c1930b577c4ba964f","_id":"jayson@1.1.2","_shasum":"0bcd90acf7208865134249fdeb12ea968768b2fa","_from":".","_npmVersion":"2.1.6","_nodeVersion":"0.10.33","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"dist":{"shasum":"0bcd90acf7208865134249fdeb12ea968768b2fa","size":31490,"noattachment":false,"key":"/jayson/-/jayson-1.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.1.2.tgz"},"directories":{},"publish_time":1415632339666,"_hasShrinkwrap":false,"_cnpm_publish_time":1415632339666,"_cnpmcore_publish_time":"2021-12-16T14:45:30.083Z"},"1.1.1":{"name":"jayson","version":"1.1.1","description":"JSON-RPC 1.0/2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","jsonrpc-1.0","middleware","connect","express","jquery","fork","distributed","relay","http","tcp","https","tls","api"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test"},"dependencies":{"JSONStream":"0.8.0","commander":"1.3.2","eyes":"0.1.8","underscore":"^1.6.0"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"_id":"jayson@1.1.1","dist":{"shasum":"41ba1c49b6aa50cbb873ba3f511c94d42c56b825","size":31083,"noattachment":false,"key":"/jayson/-/jayson-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.1.1.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1399716797586,"_hasShrinkwrap":false,"_cnpm_publish_time":1399716797586,"_cnpmcore_publish_time":"2021-12-16T14:45:30.405Z"},"1.0.11":{"name":"jayson","version":"1.0.11","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"readmeFilename":"README.md","_id":"jayson@1.0.11","dist":{"shasum":"6cb8a8bb2b392d638b7179274c39bb22104bad5a","size":30436,"noattachment":false,"key":"/jayson/-/jayson-1.0.11.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.11.tgz"},"_from":".","_npmVersion":"1.3.5","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1376135389689,"_hasShrinkwrap":false,"_cnpm_publish_time":1376135389689,"_cnpmcore_publish_time":"2021-12-16T14:45:30.639Z"},"1.0.10":{"name":"jayson","version":"1.0.10","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu","email":"net147@gmail.com"}],"scripts":{"test":"make test","blanket":{"pattern":"lib","data-cover-never":"node_modules"}},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"readmeFilename":"README.md","_id":"jayson@1.0.10","dist":{"shasum":"103b5d58e7fff761b7c712f8cde9b097bf1e6241","size":26508,"noattachment":false,"key":"/jayson/-/jayson-1.0.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.10.tgz"},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1374673370867,"_hasShrinkwrap":false,"_cnpm_publish_time":1374673370867,"_cnpmcore_publish_time":"2021-12-16T14:45:30.902Z"},"1.0.9":{"name":"jayson","version":"1.0.9","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"contributors":[{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},{"name":"Daniel Vicory","email":"dvicory@gmail.com","url":"http://bzfx.net"},{"name":"Jonathan Liu"}],"scripts":{"test":"make test","blanket":{"pattern":"lib","data-cover-never":"node_modules"}},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"readmeFilename":"README.md","_id":"jayson@1.0.9","dist":{"shasum":"df7d17d3a512632d5d404fdb6546d1292ec7927a","size":26496,"noattachment":false,"key":"/jayson/-/jayson-1.0.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.9.tgz"},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1373814052790,"_hasShrinkwrap":false,"_cnpm_publish_time":1373814052790,"_cnpmcore_publish_time":"2021-12-16T14:45:31.086Z"},"1.0.8":{"name":"jayson","version":"1.0.8","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"readmeFilename":"README.md","_id":"jayson@1.0.8","dist":{"shasum":"55ac60c2d1e68fd869a80e667aed03d083e2dbc4","size":23960,"noattachment":false,"key":"/jayson/-/jayson-1.0.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.8.tgz"},"_from":".","_npmVersion":"1.2.24","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1371987357125,"_hasShrinkwrap":false,"_cnpm_publish_time":1371987357125,"_cnpmcore_publish_time":"2021-12-16T14:45:31.294Z"},"1.0.7":{"name":"jayson","version":"1.0.7","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"main":"index","engines":{"node":">= 0.4.0"},"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"readmeFilename":"README.md","_id":"jayson@1.0.7","dist":{"shasum":"7fe8989ed001a8235dc1df2a3904fc5040fa5986","size":23831,"noattachment":false,"key":"/jayson/-/jayson-1.0.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.7.tgz"},"_from":".","_npmVersion":"1.2.21","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1369944267893,"_hasShrinkwrap":false,"_cnpm_publish_time":1369944267893,"_cnpmcore_publish_time":"2021-12-16T14:45:31.497Z"},"1.0.6":{"name":"jayson","version":"1.0.6","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":"https://github.com/tedeh/jayson/issues","main":"index","engines":{"node":">= 0.4.0"},"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"readmeFilename":"README.md","_id":"jayson@1.0.6","dist":{"shasum":"069ab70619846433228c906bdaeea61df7994478","size":23666,"noattachment":false,"key":"/jayson/-/jayson-1.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.6.tgz"},"_npmVersion":"1.1.69","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1357668883659,"_hasShrinkwrap":false,"_cnpm_publish_time":1357668883659,"_cnpmcore_publish_time":"2021-12-16T14:45:31.721Z"},"1.0.5":{"name":"jayson","version":"1.0.5","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":"https://github.com/tedeh/jayson/issues","main":"index","engines":{"node":">= 0.4.0"},"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"readmeFilename":"README.md","_id":"jayson@1.0.5","dist":{"shasum":"0539ad2c33a49d02232256f16f50f915e7eb83df","size":23621,"noattachment":false,"key":"/jayson/-/jayson-1.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.5.tgz"},"_npmVersion":"1.1.69","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1356883020536,"_hasShrinkwrap":false,"_cnpm_publish_time":1356883020536,"_cnpmcore_publish_time":"2021-12-16T14:45:31.937Z"},"1.0.4":{"name":"jayson","version":"1.0.4","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":"https://github.com/tedeh/jayson/issues","main":"index","engines":{"node":">= 0.4.0"},"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*","blanket":"*"},"readmeFilename":"README.md","_id":"jayson@1.0.4","dist":{"shasum":"bc4665f8937ade768cf8f3c875b3bada0617f5ff","size":23557,"noattachment":false,"key":"/jayson/-/jayson-1.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.4.tgz"},"_npmVersion":"1.1.69","_npmUser":{"name":"tedeh","email":"mail@tedeh.net"},"directories":{},"publish_time":1356873469379,"_hasShrinkwrap":false,"_cnpm_publish_time":1356873469379,"_cnpmcore_publish_time":"2021-12-16T14:45:32.149Z"},"1.0.3":{"name":"jayson","version":"1.0.3","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":"https://github.com/tedeh/jayson/issues","main":"index","engines":{"node":">= 0.4.0"},"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*"},"_id":"jayson@1.0.3","dist":{"shasum":"e77ff98a08bdb2c209fe4a364cff458e4adc3f22","size":22530,"noattachment":false,"key":"/jayson/-/jayson-1.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.3.tgz"},"directories":{},"publish_time":1348218830532,"_hasShrinkwrap":false,"_cnpm_publish_time":1348218830532,"_cnpmcore_publish_time":"2021-12-16T14:45:32.479Z"},"1.0.2":{"name":"jayson","version":"1.0.2","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":"https://github.com/tedeh/jayson/issues","main":"index","engines":{"node":">= 0.4.0"},"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*"},"_id":"jayson@1.0.2","dist":{"shasum":"c24a7e4cec0359240340bbc1a7469ef78c7e9a02","size":22140,"noattachment":false,"key":"/jayson/-/jayson-1.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.2.tgz"},"directories":{},"publish_time":1345292851914,"_hasShrinkwrap":false,"_cnpm_publish_time":1345292851914,"_cnpmcore_publish_time":"2021-12-16T14:45:32.725Z"},"1.0.1":{"name":"jayson","version":"1.0.1","description":"JSON-RPC 2.0 compliant server and client","keywords":["jsonrpc","rpc","json","jsonrpc-2.0","middleware","connect","express","jquery","fork","cluster","distributed","relay"],"author":{"name":"Tedde Lundgren","email":"mail@tedeh.net","url":"http://tedeh.net"},"maintainers":[{"name":"tedeh","email":""}],"bin":{"jayson":"./bin/jayson.js"},"repository":{"type":"git","url":"git://github.com/tedeh/jayson.git"},"homepage":"http://jayson.tedeh.net","bugs":"https://github.com/tedeh/jayson/issues","main":"index","engines":{"node":">= 0.4.0"},"scripts":{"test":"make test"},"dependencies":{"commander":"*","eyes":"*"},"devDependencies":{"should":"*","mocha":"*","connect":"*","uglify-js":"*"},"_id":"jayson@1.0.1","dist":{"shasum":"d317c4c1672c02dd77b5a3e6c441f9db5fb6a868","size":21977,"noattachment":false,"key":"/jayson/-/jayson-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jayson/download/jayson-1.0.1.tgz"},"directories":{},"publish_time":1341224406649,"_hasShrinkwrap":false,"_cnpm_publish_time":1341224406649,"_cnpmcore_publish_time":"2021-12-16T14:45:32.980Z"}},"readme":"# Jayson\n\nJayson is a [JSON-RPC 2.0][jsonrpc-spec] and [1.0][jsonrpc1-spec] compliant server and client written in JavaScript for [node.js][node.js] that aims to be as simple as possible to use.\n\n[jsonrpc-spec]: http://jsonrpc.org/spec.html \n[jsonrpc1-spec]: http://json-rpc.org/wiki/specification\n[node.js]: http://nodejs.org/\n[jayson-npm]: https://www.npmjs.com/package/jayson\n[badge-npm]: https://img.shields.io/npm/v/jayson.svg\n[badge-downloads-month]: https://img.shields.io/npm/dm/jayson.svg\n\n[![Coverage Status](https://coveralls.io/repos/github/tedeh/jayson/badge.svg?branch=master)](https://coveralls.io/github/tedeh/jayson?branch=master)\n![GitHub issues](https://img.shields.io/github/issues/tedeh/jayson)\n![Dependents (via libraries.io)](https://img.shields.io/librariesio/dependents/npm/jayson)\n![node-current](https://img.shields.io/node/v/jayson)\n![Libraries.io dependency status for latest release](https://img.shields.io/librariesio/release/npm/jayson)\n[![npm version][badge-npm]][jayson-npm]\n[![npm][badge-downloads-month]][jayson-npm]\n![npm bundle size](https://img.shields.io/bundlephobia/min/jayson)\n![npm bundle size](https://img.shields.io/bundlephobia/minzip/jayson)\n[![Known Vulnerabilities](https://snyk.io/test/npm/jayson/badge.svg)](https://snyk.io/test/npm/jayson)\n\n## Table of contents\n\n- [Features](#features)\n- [Example](#example)\n- [Installation](#installation)\n- [Changelog](#changelog-only-notable-milestoneschanges)\n- [Requirements](#requirements)\n- [Class Documentation](#class-documentation)\n- [Running tests](#running-tests)\n- [Typescript](#typescript)\n- [Usage](#usage)\n  - [Client](#client)\n     - [Interface description](#client-interface-description)\n     - [Browser usage](#clientbrowser)\n     - [Notifications](#notifications)\n     - [Batches](#batches)\n     - [Callback syntactic sugar](#client-callback-syntactic-sugar)\n     - [Events](#client-events)\n  - [Server](#server)\n     - [Interface description](#server-interface-description)\n     - [Many interfaces at the same time](#many-interfaces-at-the-same-time)\n     - [Using the server as a relay](#using-the-server-as-a-relay)\n     - [Method routing](#method-routing)\n     - [Method definition](#method-definition)\n     - [Events](#server-events)\n     - [Errors](#server-errors)\n     - [CORS](#server-cors)\n     - [Context](#server-context)\n- [Revivers and replacers](#revivers-and-replacers)\n- [Named parameters](#named-parameters)\n- [Promises](#promises)\n  - [Batches](#promise-batches)\n  - [Browser client](#promise-browser-client)\n- [FAQ](#faq)\n- [Recommended usage](#what-is-the-recommended-way-to-use-jayson)\n- [Contributing](#contributing)\n\n## Features\n\n* [Servers that can listen to several interfaces at the same time](#many-interfaces-at-the-same-time)\n* Supports both HTTP and TCP client and server connections\n* [Server-side method routing](#method-routing)\n* [Relaying of requests to other servers](#using-the-server-as-a-relay)\n* [JSON reviving and replacing for transparent serialization of complex objects](#revivers-and-replacers)\n* [CLI client](#cli-client)\n* [Promises](#promises)\n* Fully tested to comply with the [official JSON-RPC 2.0 specification][jsonrpc-spec]\n* Also supports [JSON-RPC 1.0][jsonrpc1-spec]\n\n## Example\n\nA basic JSON-RPC 2.0 server via HTTP:\n\nServer example in [examples/simple_example/server.js](examples/simple_example/server.js):\n\n```javascript\nconst jayson = require('jayson');\n\n// create a server\nconst server = new jayson.Server({\n  add: function(args, callback) {\n    callback(null, args[0] + args[1]);\n  }\n});\n\nserver.http().listen(3000);\n```\n\nClient example in [examples/simple_example/client.js](examples/simple_example/client.js) invoking `add` on the above server:\n\n```javascript\nconst jayson = require('jayson');\n\n// create a client\nconst client = jayson.Client.http({\n  port: 3000\n});\n\n// invoke \"add\"\nclient.request('add', [1, 1], function(err, response) {\n  if(err) throw err;\n  console.log(response.result); // 2\n});\n```\n\n## Installation\n\nInstall the latest version of _jayson_ from [npm](https://www.npmjs.com) by executing `npm install jayson` in your shell. Do a global install with `npm install --global jayson` if you want the `jayson` client CLI in your PATH.\n\n## Changelog (only notable milestones/changes)\n\n- *4.1.0*\n  - New server option `maxBatchLength`\n- *4.0.0*\n  - Remove `lodash` dependency which should halve bundle size. There might be minor incompatibilities if you pass funky object or array types to jayson methods.\n- *3.6.4*\n  - Websocket client and server support\n- *3.6.1*\n  - JSON-RPC 2.0 notifications no longer have id property unless overridden\n- *3.3.3*\n  - Promise support for browser client\n  - TypeScript declaration for promise browser client\n  - TypeScript declaration for browser client\n- *3.3.0*\n  - Remove URL parsing when passing a string option to the TLS and TCP client, string options are instead treated as an IPC path\n- *3.0.0*\n  - Can pass a [context object](#server-context) to handlers\n  - _Breaking_: `collect` option removed from `jayson.Server/Method`. JSON-RPC params to handlers are now **always** in the first argument.\n- *2.1.0*\n  - Experimental typescript support\n- *2.0.6*\n  - Clarified how to use [in the browser](#clientbrowser)\n- *2.0.0*\n  - Added [support for promises](#promises)\n  - _Breaking_: `collect: true` is now the default option for a new `jayson.Server` and `jayson.Method`\n- *1.2.0*\n  - Greatly improved [server method definition](#method-definition)\n- *1.1.1*\n  - More http server events\n  - Remove fork server and client\n  - Add server routing\n- *1.0.11*\n  Add support for a HTTPS client\n- *1.0.9*\n  Add support for TCP servers and clients\n\n### CLI client\n\nThere is a basic CLI client in `bin/jayson.js` and it should be available as `jayson` in your shell if you installed the package globally. Run `jayson --help` to see how it works.\n\n## Requirements\n\nJayson does not have any special dependencies that cannot be resolved with a simple `npm install` or `yarn install`.\n\n## Class documentation\n\nIn addition to this document, a comprehensive class documentation made with [jsdoc][jsdoc-spec] is available at [jayson.tedeh.net](http://jayson.tedeh.net).\n\n[jsdoc-spec]: http://usejsdoc.org/\n\n## Running tests\n\n- Change directory to the repository root\n- Install the development packages by executing `npm install --dev`\n- Run the tests with `npm run test`\n- Run the typescript tests with `npm run test-tsc`\n- Run the coverage tests with `npm run coverage`\n\n## Typescript\n\nSince `v2.1.0` there is typescript support available with jayson.\n\nIf you encounter any problems with the type definitions, see the [Contributing](#contributing) section.\n\n## Usage\n\n### Client\n\nThe client is available as the `Client` or `client` property of `require('jayson')`.\n\n#### Client interface description\n\n| Name               | Description         |\n|--------------------|---------------------|\n| `Client`           | Base class          |\n| `Client.tcp`       | TCP sub-class       |\n| `Client.tls`       | TLS sub-class       |\n| `Client.http`      | HTTP sub-class      |\n| `Client.https`     | HTTPS sub-class     |\n| `Client.browser`   | Standalone class    |\n| `Client.websocket` | Websocket sub-class |\n\nEvery client supports these options:\n\n| Option               | Default                            | Type       | Description                                                                              |\n|----------------------|------------------------------------|------------|------------------------------------------------------------------------------------------|\n| `reviver`            | `undefined`                        | `Function` | `JSON.parse` reviver                                                                     |\n| `replacer`           | `undefined`                        | `Function` | `JSON.stringify` replacer                                                                |\n| `generator`          | [RFC4122][rfc_4122_spec] generator | `Function` | Generates a `String` for request ID.                                                     |\n| `version`            | 2                                  | `Number`   | JSON-RPC version to support (1 or 2)                                                     |\n| `notificationIdNull` | `false`                            | `Boolean`  | *Since 3.6.1*. When true \"id\" property of a request will be set to null when version 2.  |\n\n[rfc_4122_spec]: http://www.ietf.org/rfc/rfc4122.txt\n\n##### Client.http\n\nUses the same options as [http.request][nodejs_docs_http_request] in addition to these options:\n\n| Option     \t| Default \t  | Type     \t| Description                    \t        |\n|------------\t|------------ |----------\t|---------------------------------------- |\n| `encoding` \t| `utf8`  \t  | `String` \t| Determines the encoding to use \t        |\n| `headers` \t| `undefined` | `Object` \t| Extend the headers sent by the client \t|\n\n###### Client.http Events\n\nThe HTTP client will emit the following events:\n\n| Event           \t| When                              \t| Arguments                                                                 \t| Notes                                     \t|\n|-----------------\t|-----------------------------------\t|---------------------------------------------------------------------------\t|-------------------------------------------\t|\n| `http request`  \t| Created an HTTP request           \t| 1. Instance of `http.ClientRequest`                                       \t|                                           \t|\n| `http response` \t| Received an HTTP response         \t| 1. Instance of `http.IncomingMessage` 2. Instance of `http.ClientRequest` \t|                                           \t|\n| `http error`    \t| Underlying stream emits `error`   \t| 1. Error                                                                  \t|                                           \t|\n| `http timeout`  \t| Underlying stream emits `timeout` \t|                                                                           \t| Automatically causes the request to abort \t|\n\nIt is possible to pass a string URL as the first argument. The URL will be run through [url.parse][nodejs_docs_url_parse]. Example:\n\n```javascript\nconst jayson = require('jayson');\nconst client = jayson.Client.http('http://localhost:3000');\n// client.options is now the result of url.parse\n```\n\n[nodejs_docs_http_request]: http://nodejs.org/docs/latest/api/http.html#http_http_request_options_callback\n[nodejs_docs_url_parse]: http://nodejs.org/api/url.html#url_url_parse_urlstr_parsequerystring_slashesdenotehost\n\n##### Client.https\n\nUses the same options as [https.request][nodejs_docs_https_request] in addition _to the same options as `Client.http`_. This means it is also possible\nto pass a string URL as the first argument and have it interpreted by [url.parse][nodejs_docs_url_parse].\n\nWill emit the [same custom events](#clienthttp-events) as `Client.http`.\n\n[nodejs_docs_https_request]: http://nodejs.org/api/all.html#all_https_request_options_callback\n\n##### Client.tcp\n\nUses the same options as [net.connect][nodejs_docs_net_connect].\n\n###### Client.tcp Events\n\n*Since version 3.5.1*\n\nThe TCP client will emit the following events:\n\n| Event      | When                   | Arguments                     | Notes                         |\n|------------|------------------------|-------------------------------|-------------------------------|\n| tcp socket | TCP socket is opened   | 1. `net.Socket`               | Can be used to setup timeouts |\n| tcp error  | TCP socket emits error | 1. Error emit by `net.Socket` |                               |\n\n[nodejs_docs_net_connect]: https://nodejs.org/api/net.html#net_net_connect\n\n##### Client.tls\n\nUses the same options as [tls.connect][nodejs_docs_tls_connect].\n\n###### Client.tls Events\n\n*Since version 3.5.1*\n\nThe TLS client will emit the following events:\n\n| Event      | When                   | Arguments                     | Notes                         |\n|------------|------------------------|-------------------------------|-------------------------------|\n| tcp socket | TCP socket is opened   | 1. `net.Socket`               | Can be used to setup timeouts |\n| tcp error  | TCP socket emits error | 1. Error emit by `net.Socket` |                               |\n\n[nodejs_docs_tls_connect]: https://nodejs.org/api/tls.html#tls_tls_connect_options_callback\n\n##### Client.browser\n\nThe browser client is a simplified version of the regular client for use browser-side. It does not have any dependencies on node.js core libraries, but does depend on the `uuid` package for generating request ids. It also does not know how to \"send\" a request to a server like the other clients.\n\nBecause it does not depend on any core libraries, the browser client is **not** an instance of `JaysonClient` or `EventEmitter` and therefore does **not** emit any of the normal request events that the other clients do.\n\nTo use the browser client, `require('jayson/lib/client/browser')` and pass a calling/transport function as the first argument. The transport function receives a JSON-RPC string request and is expected to callback with a string response received from the server (not JSON) or an error (not a JSON-RPC error).\n\nThe reason for dealing with strings is to support the `reviver` and `replacer` options like the other clients.\n\nThis client example in [examples/browser_client/client.js](examples/browser_client/client.js) below uses [node-fetch](https://github.com/bitinn/node-fetch) in the transport function, but a dropin replacement for use in an *actual* browser could instead use [whatwg-fetch](https://github.com/github/fetch/issues/184).\n\nThe browser client has a separate TypeScript type declaration available in `jayson/lib/client/browser/index.d.ts` which depends on the main Jayson type declaration.\n\n```javascript\n'use strict';\n\nconst jaysonBrowserClient = require('jayson/lib/client/browser');\nconst fetch = require('node-fetch');\n\nconst callServer = function(request, callback) {\n  const options = {\n    method: 'POST',\n    body: request,\n    headers: {\n      'Content-Type': 'application/json',\n    }\n  };\n\n  fetch('http://localhost:3000', options)\n    .then(function(res) { return res.text(); })\n    .then(function(text) { callback(null, text); })\n    .catch(function(err) { callback(err); });\n};\n\nconst client = new jaysonBrowserClient(callServer, {\n  // other options go here\n});\n\nclient.request('multiply', [5, 5], function(err, error, result) {\n  if(err) throw err;\n  console.log(result); // 25\n});\n```\n\n##### Client.websocket\n\n*Since v3.6.4*\n\nExperimental websocket client that wraps around an `isomorphic-ws` instance. Will listen to every received (JSON) message and see if it matches any of the currently outstanding requests made, in which case the callback of that outstanding request will fire. If you do not provide the `timeout` option it will wait forever. Has a promise-based equivalent receiving the same options, and a [companion jayson server](#serverwebsocket) where you can find an example.\n\nHas the following options:\n\n| Option    | Default     | Type                                | Description                                                          |\n|-----------|-------------|-------------------------------------|----------------------------------------------------------------------|\n| `url`     | `undefined` | `String`                            | First argument to `require('isomorphic-ws')` if `options.ws` not set |\n| `ws`      | `undefined` | `require('isomorphic-ws')` instance | WebSocket instance                                                   |\n| `timeout` | `undefined` | `Number`                            | Timeout in ms before callbacking with an error                       |\n\nIf you want to \"unwrap\" the `isomorphic-ws` instance you can use the `Client.websocket.prototype.unlisten` which stops listening for messages on the `isomorphic-ws` instance.\n\n- [isomorphic-ws docs](https://github.com/heineiuo/isomorphic-ws)\n\n#### Notifications\n\nNotification requests are for cases where the reply from the server is not important and should be ignored. This is accomplished by setting the `id` property of a request object to `null`.\n\nClient example in [examples/notifications/client.js](examples/notifications/client.js) doing a notification request:\n\n```javascript\nconst jayson = require('jayson');\n\nconst client = jayson.Client.http({\n  port: 3000\n});\n\n// the third parameter is set to \"null\" to indicate a notification\nclient.request('ping', [], null, function(err) {\n  if(err) throw err;\n  console.log('ok'); // request was received successfully\n});\n```\n\nServer example in [examples/notifications/server.js](examples/notifications/server.js):\n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server({\n  ping: function(args, callback) {\n    // do something, do nothing\n    callback();\n  }\n});\n\nserver.http().listen(3000);\n```\n\n##### Notes\n\n* Any value that the server returns will be discarded when doing a notification request.\n* Omitting the third argument `null` to `Client.prototype.request` does not generate a notification request. This argument has to be set explicitly to `null` for this to happen.\n* Network errors and the like will still reach the callback. When the callback is invoked (with or without error) one can be certain that the server has received the request.\n* See the [Official JSON-RPC 2.0 Specification][jsonrpc-spec] for additional information on how Jayson handles notifications that are erroneous.\n* *Since 3.6.1* When making a JSON-RPC 2.0 notification request the \"id\" property will be omitted in the request object. In previous versions it was set to `null` against the recommendation of the official specification. This behaviour can be overridden with the `notificationIdNull` option.\n\n\n#### Batches\n\nA batch request is an array of individual requests that are sent to the server as one. Doing a batch request is very simple in Jayson and consists of constructing an array of individual requests (created by not passing a callback to `Client.prototype.request`) that is then itself passed to `Client.prototype.request`. \n\nCombined server/client example in [examples/batch_request/index.js](examples/batch_request/index.js):\n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server({\n  add: function(args, callback) {\n    callback(null, args[0] + args[1]);\n  }\n});\n\nconst client = new jayson.Client(server);\n\nconst batch = [\n  client.request('does_not_exist', [10, 5]),\n  client.request('add', [1, 1]),\n  client.request('add', [0, 0], null) // a notification\n];\n\nclient.request(batch, function(err, errors, successes) {\n  if(err) throw err;\n  console.log('errors', errors); // array of requests that errored\n  console.log('successes', successes); // array of requests that succeeded\n});\n\nclient.request(batch, function(err, responses) {\n  if(err) throw err;\n  console.log('responses', responses); // all responses together\n});\n```\n\n##### Notes\n\n* See the [Official JSON-RPC 2.0 Specification][jsonrpc-spec] for additional information on how Jayson handles different types of batches, mainly with regards to notifications, request errors and so forth.\n* There is no guarantee that the results will be in the same order as request Array `request`. To find the right result, compare the ID from the request with the ID in the result yourself.\n\n#### Client callback syntactic sugar\n\nWhen the length (number of arguments) of a client callback function is either 2 or 3 it receives slightly different values when invoked.\n\n* 2 arguments: first argument is an error or `null`, second argument is the response object as returned (containing _either_ a `result` or a `error` property) or `null` for notifications.\n* 3 arguments: first argument is an error or null, second argument is a JSON-RPC `error` property or `null` (if success), third argument is a JSON-RPC `result` property or `null` (if error).\n\nWhen doing a batch request with a 3-length callback, the second argument will be an array of requests with a `error` property and the third argument will be an array of requests with a `result` property.\n\n#### Client events\n\nA client will emit the following events (in addition to any special ones emitted by a specific interface):\n\n| Event      \t| When                        \t| Arguments                                     \t| Notes \t|\n|------------\t|-----------------------------\t|-----------------------------------------------\t|-------\t|\n| `request`  \t| About to dispatch a request \t| 1: Request object                             \t|       \t|\n| `response` \t| Received a response         \t| 1: Request object 2: Response object received \t|       \t|\n\n### Server\n\nThe server classes are available as the `Server` or `server` property of `require('jayson')`.\n\nThe server also sports several interfaces that can be accessed as properties of an instance of `Server`.\n\n#### Server interface description\n\n| Name                \t| Description                                                                                \t|\n|---------------------\t|--------------------------------------------------------------------------------------------\t|\n| `Server`            \t| Base interface for a server that supports receiving JSON-RPC requests                      \t|\n| `Server.tcp`        \t| TCP server that inherits from [net.Server][nodejs_doc_net_server]                          \t|\n| `Server.tls`        \t| TLS server that inherits from [tls.Server][nodejs_doc_tls_server]                          \t|\n| `Server.http`       \t| HTTP server that inherits from [http.Server][nodejs_doc_http_server]                       \t|\n| `Server.https`      \t| HTTPS server that inherits from [https.Server][nodejs_doc_https_server]                    \t|\n| `Server.websocket`   \t| Websocket server that uses [isomorphic-ws Server][isomorphic-ws-docs]                     \t|\n| `Server.middleware` \t| Method that returns a [Connect][connect]/[Express][express] compatible middleware function \t|\n\n[isomorphic-ws-docs]: https://github.com/heineiuo/isomorphic-ws\n[nodejs_doc_net_server]: http://nodejs.org/docs/latest/api/net.html#net_class_net_server\n[nodejs_doc_http_server]: http://nodejs.org/docs/latest/api/http.html#http_class_http_server\n[nodejs_doc_https_server]: http://nodejs.org/docs/latest/api/https.html#https_class_https_server\n[nodejs_doc_tls_server]: https://nodejs.org/api/tls.html#tls_class_tls_server\n[connect]: http://www.senchalabs.org/connect/\n[express]: http://expressjs.com/\n\nServers supports these options:\n\n| Option              \t| Default         \t| Type                \t| Description                                               \t|\n|---------------------\t|-----------------\t|---------------------\t|-----------------------------------------------------------\t|\n| `reviver`           \t| `null`          \t| `Function`          \t| `JSON.parse` reviver                                      \t|\n| `replacer`          \t| `null `         \t| `Function`          \t| `JSON.stringify` replacer                                 \t|\n| `router`            \t| `null `         \t| `Function`          \t| Return the function for [method routing](#method-routing) \t|\n| `useContext`         \t| `false`          \t| `Boolean`           \t| Passed to `methodConstructor` options                     \t|\n| `params`            \t| `undefined`     \t| `Array/Object/null` \t| Passed to `methodConstructor` options                     \t|\n| `methodConstructor` \t| `jayson.Method` \t| `Function`          \t| Server functions are made an instance of this class       \t|\n| `version`           \t| 2               \t| `Number`            \t| JSON-RPC version to support (1 or 2)                      \t|\n| `maxBatchLength`     \t| Infinity         \t| `Number`            \t| Maximum batch requests allowed                                |\n\n##### Server.tcp\n\nUses the same options as the base class. Inherits from [net.Server][nodejs_doc_net_server].\n\n##### Server.tls\n\nUses the same options as the base class. Inherits from [tls.Server][nodejs_doc_tls_server].\n\n##### Server.http\n\nUses the same options as the base class. Inherits from [http.Server][nodejs_doc_http_server].\n\n###### Server.http Events\n\n| Event           \t| When                          \t| Arguments                                                                    \t| Notes \t|\n|-----------------\t|-------------------------------\t|------------------------------------------------------------------------------\t|-------\t|\n| `http request`  \t| Incoming HTTP request         \t| 1. Instance of `http.IncomingMessage`                                        \t|       \t|\n| `http response` \t| About to send a HTTP response \t| 1. Instance of `http.ServerResponse` 2. Instance of `http. IncomingMessage ` \t|       \t|\n\n##### Server.https\n\nUses the same options as the base class. Inherits from [https.Server][nodejs_doc_https_server] and `jayson.Server.http`. For information on how to configure certificates, [see the documentation on https.Server][nodejs_doc_https_server].\n\nWill emit the [same custom events](#serverhttp-events) as `Server.http`.\n\n##### Server.middleware\n\nUses the same options as the base class. Returns a function that is compatible with [Connect][connect] or [Express][express]. Will expect the request to be `req.body`, meaning that the request body must be parsed (typically using `connect.bodyParser`) before the middleware is invoked.\n\nThe middleware supports the following options:\n\n| Option \t| Default \t| Type      \t| Description                                                                               \t|\n|--------\t|---------\t|-----------\t|-------------------------------------------------------------------------------------------\t|\n| `end`  \t| `true`  \t| `Boolean` \t| If set to `false` causes the middleware to `next()` instead of `res.end()` when finished. \t|\n\nMiddleware example in [examples/middleware/server.js](examples/middleware/server.js):\n\n```javascript\nconst jayson = require('jayson');\nconst jsonParser = require('body-parser').json;\nconst connect = require('connect');\nconst app = connect();\n\nconst server = new jayson.Server({\n  add: function(args, callback) {\n    callback(null, args[0] + args[1]);\n  }\n});\n\n// parse request body before the jayson middleware\napp.use(jsonParser());\napp.use(server.middleware());\n\napp.listen(3000);\n```\n\n##### Server.websocket\n\nWebsocket server that either wraps around a provided `require('isomorphic-ws').Server` instance or creates one from scratch. Expects **every** incoming message on every connection to be a valid JSON-RPC call.\n\nThe websocket server supports the following options in addition to the base class:\n\n| Option | Default     | Type                              | Description                     |\n|--------|-------------|-----------------------------------|---------------------------------|\n| `wss`  | `undefined` | `require('isomorphic-ws').Server` | If not provided will be created |\n\n\nWebsocket server example in [examples/websocket/server.js](examples/websocket/server.js):\n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server({\n  add: function (args, done) {\n    const sum = args.reduce((sum, val) => sum + val, 0);\n    done(null, sum);\n  },\n});\n\nconst wss = server.websocket({\n  port: 12345,\n});\n```\n\nWebsocket client example in [examples/websocket/client.js](examples/websocket/client.js):\n\n```javascript\nconst jayson = require('jayson');\n\nconst client = jayson.Client.websocket({\n  url: 'ws://localhost:12345',\n});\n\nclient.ws.on('open', function () {\n  client.request('add', [1,2,3,4], function (err, result) {\n    console.log(err, result);\n    client.ws.close();\n  });\n});\n```\n\n#### Many interfaces at the same time\n\nA Jayson server can use many interfaces at the same time.\n\nServer example in [examples/many_interfaces/server.js](examples/many_interfaces/server.js) that listens to both `http` and a `https` requests:\n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server();\n\n// \"http\" will be an instance of require('http').Server\nconst http = server.http();\n\n// \"https\" will be an instance of require('https').Server\nconst https = server.https({\n  //cert: require('fs').readFileSync('cert.pem'),\n  //key require('fs').readFileSync('key.pem')\n});\n\nhttp.listen(80, function() {\n  console.log('Listening on *:80');\n});\n\nhttps.listen(443, function() {\n  console.log('Listening on *:443');\n});\n```\n\n#### Using the server as a relay\n\nPassing an instance of a client as a method to the server makes the server relay incoming requests to wherever the client is pointing to. This might be used to delegate computationally expensive functions into a separate server or to abstract a cluster of servers behind a common interface.\n\nFrontend server example in [examples/relay/server_public.js](examples/relay/server_public.js) listening on `*:3000`:\n\n```javascript\nconst jayson = require('jayson');\n\n// create a server where \"add\" will relay a localhost-only server\nconst server = new jayson.Server({\n  add: jayson.Client.http({\n    port: 3001\n  })\n});\n\n// let the frontend server listen to *:3000\nserver.http().listen(3000);\n```\n\nBackend server example in [examples/relay/server_private.js](examples/relay/server_private.js) listening on `*:3001`:\n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server({\n  add: function(args, callback) {\n    callback(null, args[0] + args[1]);\n  }\n});\n\n// let the backend listen to *:3001\nserver.http().listen(3001);\n```\n\nEvery request to `add` on the public server will now relay the request to the private server. See the client example in [examples/relay/client.js](examples/relay/client.js).\n\n#### Method routing\n\nPassing a property named `router` in the server options will enable you to write your own logic for routing requests to specific functions. \n\nServer example with custom routing logic in [examples/method_routing/server.js](examples/method_routing/server.js):\n\n**Note:** You are strongly recommended to check method names using `Object.prototype.hasOwnProperty` to prevent a denial-of-service attack against your Jayson server when names such as `__defineGetter__` are used in JSON-RPC calls.\n\n```javascript\nconst jayson = require('jayson');\n\nconst methods = {\n  add: function(args, callback) {\n    callback(null, args[0] + args[1]);\n  }\n};\n\nconst server = new jayson.Server(methods, {\n  router: function(method, params) {\n    // regular by-name routing first\n    const fn = Object.prototype.hasOwnProperty.call(this._methods, method) ? this._methods[method] : null;\n    if(typeof fn === 'function') {\n      return fn;\n    }\n    if(method === 'add_2') {\n      const fn = server.getMethod('add').getHandler();\n      return new jayson.Method(function(args, done) {\n        args.unshift(2);\n        fn(args, done);\n      });\n    }\n  }\n});\n\nserver.http().listen(3000);\n```\n\nClient example in [examples/method_routing/client.js](examples/method_routing/client.js) invoking `add_2` on the above server:\n\n```javascript\nconst jayson = require('jayson');\n\n// create a client\nconst client = jayson.Client.http({\n  port: 3000\n});\n\n// invoke \"add_2\"\nclient.request('add_2', [3], function(err, response) {\n  if(err) throw err;\n  console.log(response.result); // 5!\n});\n```\n\nServer example of nested routes where each property is separated by a dot (you do not need to use the router option for this):\n\n```javascript\nconst jayson = require('jayson');\n\nconst methods = {\n  foo: {\n    bar: function(callback) {\n      callback(null, 'ping pong');\n    }\n  },\n  math: {\n    add: function(args, callback) {\n      callback(null, args[0] + args[1]);\n    }\n  }\n};\n\n// this reduction produces an object like this: {'foo.bar': [Function], 'math.add': [Function]}\nconst map = Object.keys(methods).reduce(collapse('', '.', methods), {});\nconst server = new jayson.Server(map);\n\nfunction collapse(stem, sep, obj) {\n  return function(map, key) {\n    const prop = stem ? stem + sep + key : key;\n    const value = obj[key];\n    if(typeof value === 'function') map[prop] = value;\n    else if(typeof value === 'object' && value !== null) map = Object.keys(value).reduce(collapse(prop, sep, value), map);\n    return map;\n  }\n}\n```\n\n##### Notes\n\n* If `router` does not return anything, the server will respond with a `Method Not Found` error.\n* The `Server.prototype` methods `method`, `methods`, `removeMethod` and `hasMethod` will not use the `router` method, but will operate on the internal `Server.prototype._methods` map.\n* The `router` method is expected to return instances of `jayson.Method` (>=1.2.0)\n\n#### Method definition\n\nYou can also define server methods inside a wrapping object named `jayson.Method`. This allows additional options about the method to be specified. Using this wrapper - explicitly or implicitly (via server options) - makes it trivial to have your method accept a variable amount of arguments.\n\nThe method class is available as the `Method` or `method` property of  `require('jayson')`. It supports these options:\n\n| Option    \t| Default                        \t| Type                \t| Description                                                            \t|\n|-----------\t|--------------------------------\t|---------------------\t|------------------------------------------------------------------------\t|\n| `handler` \t|                                \t| `Function`          \t| The actual function that will handle a JSON-RPC request to this method \t|\n| `useContext` \t| false \t| `Boolean`           \t| When true, the handler will receive a context object as the second argument\n| `params`  \t| null                           \t| `Array\\|Object\\|null` \t| Force JSON-RPC parameters to be of a certain type                      \t|\n\nServer example showcasing most features and options in [examples/method_definitions/server.js](examples/method_definitions/server.js):\n\n```javascript\nconst jayson = require('jayson');\n\nconst methods = {\n\n  // this function will be wrapped in jayson.Method with options given to the server\n  sum: function(args, done) {\n    done(null, sum(args));\n  },\n\n  // this function always receives a context object as second arg\n  // it can be overriden on the server level\n  context: jayson.Method(function(args, context, done) {\n    done(null, context);\n  }, {useContext: true}),\n\n  // specifies some default values (alternate definition too)\n  sumDefault: jayson.Method(function(args, done) {\n    const total = sum(args);\n    done(null, total);\n  }, {\n    params: {a: 2, b: 5} // map of defaults\n  }),\n\n  // this method returns true when it gets an array (which it always does)\n  isArray: new jayson.Method({\n    handler: function(args, done) {\n      const result = Array.isArray(args);\n      done(null, result);\n    },\n    params: Array // could also be \"Object\"\n  })\n\n};\n\nconst server = new jayson.Server(methods, {\n  // these options are given as options to jayson.Method when adding the method \"sum\".\n  // this is because it is not wrapped in jayson.Method like the others.\n  useContext: false,\n  params: Array\n});\n\nserver.http().listen(3000);\n\n// sums all numbers in an array or object\nfunction sum(list) {\n  return Object.keys(list).reduce(function(sum, key) { return sum + list[key]; }, 0);\n}\n```\n\nClient example in [examples/method_definitions/client.js](examples/method_definitions/client.js):\n\n```javascript\nconst jayson = require('jayson');\n\nconst client = jayson.Client.http({\n  port: 3000\n});\n\n// invoke \"sum\" with array\nclient.request('sum', [3, 5, 9, 11], function(err, response) {\n  if(err) throw err;\n  console.log(response.result); // 28\n});\n\n// invoke \"sum\" with an object\nclient.request('sum', {a: 2, b: 3, c: 4}, function(err, response) {\n  if(err) throw err;\n  console.log(response.result); // 9\n});\n\n// invoke \"sumDefault\" with object missing some defined members\nclient.request('sumDefault', {b: 10}, function(err, response) {\n  if(err) throw err;\n  console.log(response.result); // 12\n});\n\n// invoke \"isArray\" with an Object\nclient.request('isArray', {a: 5, b: 2, c: 9}, function(err, response) {\n  if(err) throw err;\n  console.log(response.result); // true\n});\n\n// invoke \"context\"\nclient.request('context', {hello: 'world'}, function(err, response) {\n  if(err) throw err;\n  console.log(response.result); // {} - just an empty object\n});\n```\n\n#### Server events\n\nIn addition to events that are specific to certain interfaces, all servers will emit the following events:\n\n| Event      \t| When                                     \t| Arguments                            \t| Notes                          \t|\n|------------\t|------------------------------------------\t|--------------------------------------\t|--------------------------------\t|\n| `request`  \t| Interpretable non-batch request received \t| 1: Request object                    \t|                                \t|\n| `response` \t| Returning a response                     \t| 1: Request object 2: Response object \t|                                \t|\n| `batch`    \t| Interpretable batch request received     \t| 1. Array of requests                 \t| Emits `request` for every part \t|\n\n#### Server Errors\n\nIf you should like to return an error from an method request to indicate a failure, remember that the [JSON-RPC 2.0][jsonrpc-spec] specification requires the error to be an `Object` with a `code (Integer/Number)` to be regarded as valid. You can also provide a `message (String)` and a `data (Object)` with additional information. Example: \n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server({\n  i_cant_find_anything: function(args, callback) {\n    const error = {code: 404, message: 'Cannot find ' + args.id};\n    callback(error); // will return the error object as given\n  },\n  i_cant_return_a_valid_error: function(callback) {\n    callback({message: 'I forgot to enter a code'}); // will return a pre-defined \"Internal Error\"\n  }\n});\n```\n\n##### Predefined Errors\n\nIt is also possible to cause a method to return one of the predefined [JSON-RPC 2.0 error codes][jsonrpc-spec#error_object] using the server helper function `Server.prototype.error` inside of a server method. Example:\n\n[jsonrpc-spec#error_object]: http://jsonrpc.org/spec.html#error_object\n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server({\n  invalid_params: function(args, callback) {\n    const error = this.error(-32602); // returns an error with the default properties set\n    callback(error);\n  }\n});\n```\n\nYou can even override the default messages:\n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server({\n  error_giver_of_doom: function(callback) {\n    callback(true) // invalid error format, which causes an Internal Error to be returned instead\n  }\n});\n\n// Override the default message\nserver.errorMessages[Server.errors.INTERNAL_ERROR] = 'I has a sad. I cant do anything right';\n```\n\n#### Server CORS\n\nJayson does not include functionality for supporting CORS requests natively but it is easy to use a CORS-enabling middleware\nlike [cors](https://github.com/expressjs/cors). An example of this can be found in [examples/cors/server.js](examples/cors/server.js):\n\n```javascript\nconst jayson = require('jayson');\nconst cors = require('cors');\nconst connect = require('connect');\nconst jsonParser = require('body-parser').json;\nconst app = connect();\n\nconst server = new jayson.Server({\n  myNameIs: function(args, callback) {\n    callback(null, 'Your name is: ' + args.name);\n  }\n});\n\napp.use(cors({methods: ['POST']}));\napp.use(jsonParser());\napp.use(server.middleware());\n\napp.listen(3000);\n```\n\n#### Server Context\n\n*Since version 3.0.0*\n\nYou can provide an optional context object to JSON-RPC method handlers. This can be used to give extra data to a handler  such as request headers, authentication tokens, and so on.\n\nThis feature is unlocked by having `jayson.Method` accepts a boolean option called `useContext`. It always defaults to `false` for backwards compatibility. When it is set to `true` the method handler that `jayson.Method` wraps will **always** receive a context object as the second argument. The object can be given as the third argument to `jayson.Server.prototype.call`.\n\nServer example in [examples/context/server.js](examples/context/server.js):\n\n```javascript\nconst jayson = require('jayson');\nconst jsonParser = require('body-parser').json;\nconst express = require('express');\nconst app = express();\n\nconst server = new jayson.Server({\n\n  getHeaders: function(args, context, callback) {\n    callback(null, context.headers);\n  },\n\n  // old method not receiving a context object (here for reference)\n  oldMethod: new jayson.Method(function(args, callback) {\n    callback(null, {});\n  }, {\n    // this setting overrides the server option set below for this particular method only\n    useContext: false\n  })\n\n}, {\n  // all methods will receive a context object as the second arg\n  useContext: true\n});\n\napp.use(jsonParser());\napp.use(function(req, res, next) {\n  // prepare a context object passed into the JSON-RPC method\n  const context = {headers: req.headers};\n  server.call(req.body, context, function(err, result) {\n    if(err) return next(err);\n    res.send(result || {});\n  });\n});\n\napp.listen(3001);\n```\n\nClient example in [examples/context/client.js](examples/context/client.js):\n\n```javascript\nconst jayson = require('jayson');\n\n// create a client\nconst client = jayson.Client.http({\n  port: 3001\n});\n\n// invoke \"getHeaders\"\nclient.request('getHeaders', {}, function(err, response) {\n  if(err) throw err;\n  console.log(response.result);\n});\n```\n\n##### Notes\n\n- `jayson.Server` also accepts `useContext` as an option, and passes the value on to the `jayson.Method` constructor. This option can be overriden on a per-method basis as shown above.\n- Individual requests in a JSON-RPC batch will all receive the exact same context object in their handler - take care not to mutate it\n- If a falsy context value is given to `jayson.Server.prototype.call`, an empty object will be created\n- None of the current jayson server transports (http, https, tls, tcp, middleware) can make use of the context object. You will need to rig your own transport implementation, like the one above based on an `express` http server. See the [FAQ](#faq) for more info about this.\n\n### Revivers and Replacers\n\nJSON lacks support for representing types other than the simple ones defined in the [JSON specification][jsonrpc-spec]. Fortunately the JSON methods in JavaScript (`JSON.parse` and `JSON.stringify`) provide options for custom serialization/deserialization routines. Jayson allows you to pass your own routines as options to both clients and servers.\n\nSimple example transferring the state of an object between a client and a server:\n\nShared code between the server and the client in [examples/reviving_and_replacing/shared.js](examples/reviving_and_replacing/shared.js):\n\n```javascript\n'use strict';\n\nconst Counter = exports.Counter = function(value) {\n  this.count = value || 0;\n};\n\nCounter.prototype.increment = function() {\n  this.count += 1;\n};\n\nexports.replacer = function(key, value) {\n  if(value instanceof Counter) {\n    return {$class: 'counter', $props: {count: value.count}};\n  }\n  return value;\n};\n\nexports.reviver = function(key, value) {\n  if(value && value.$class === 'counter') {\n    const obj = new Counter();\n    for(const prop in value.$props) obj[prop] = value.$props[prop];\n    return obj;\n  }\n  return value;\n};\n```\n\nServer example in [examples/reviving_and_replacing/server.js](examples/reviving_and_replacing/server.js):\n\n```javascript\nconst jayson = require('jayson');\nconst shared = require('./shared');\n\n// Set the reviver/replacer options\nconst options = {\n  reviver: shared.reviver,\n  replacer: shared.replacer\n};\n\n// create a server\nconst server = new jayson.Server({\n  increment: function(args, callback) {\n    args.counter.increment();\n    callback(null, args.counter);\n  }\n}, options);\n\nserver.http().listen(3000);\n```\n\nA client example in [examples/reviving_and_replacing/client.js](examples/reviving_and_replacing/client.js) invoking \"increment\" on the server:\n\n```javascript\nconst jayson = require('jayson');\nconst shared = require('./shared');\n\nconst client = jayson.Client.http({\n  port: 3000,\n  reviver: shared.reviver,\n  replacer: shared.replacer\n});\n\n// create the object\nconst params = {\n  counter: new shared.Counter(2)\n};\n\n// invoke \"increment\"\nclient.request('increment', params, function(err, response) {\n  if(err) throw err;\n  const result = response.result;\n  console.log(\n    result instanceof shared.Counter, // true\n    result.count, // 3\n    params.counter === result // false - result is a new object\n  );\n});\n```\n\n#### Notes\n\n* Instead of using a replacer, it is possible to define a `toJSON` method for any JavaScript object. Unfortunately there is no corresponding method for reviving objects (that would not work, obviously), so the _reviver_ always has to be set up manually.\n\n### Named parameters\n\nIt is possible to specify named parameters when doing a client request by passing an Object instead of an Array.\n\nClient example in [examples/named_parameters/client.js](examples/named_parameters/client.js):\n\n```javascript\nconst jayson = require('jayson');\n\nconst client = jayson.Client.http({\n  port: 3000\n});\n\nclient.request('add', {b: 1, a: 2}, function(err, response) {\n  if(err) throw err;\n  console.log(response.result); // 3!\n});\n```\n\nServer example in [examples/named_parameters/server.js](examples/named_parameters/server.js):\n\n```javascript\nconst jayson = require('jayson');\n\nconst server = new jayson.Server({\n  add: function(params, callback) {\n    callback(null, params.a + params.b);\n  }\n});\n\nserver.http().listen(3000);\n```\n\n#### Notes\n\n* If requesting methods on a Jayson server, arguments left out will be `undefined`\n* Too many arguments or arguments with invalid names will be ignored\n* It is assumed that the last argument to a server method is the callback and it will not be filled with something else\n* Parsing a function signature and filling in arguments is generally *not recommended* and should be avoided\n\n## Promises\n\n[es6-promise]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise\n\n*Since version 2.0.0*\n\nA separate tree that does limited usage of the [ES6 Promise][es6-promise] object is available. The internal API remains callback based, with the addition that promises may be used for two things:\n\n* Returning a Promise when requesting a JSON-RPC method using a Client\n* Returning a Promise inside of a Server method\n\nTo use the separate tree, do a `require('jayson/promise')` instead of `require('jayson')`.\n\nServer example in [examples/promise/server.js](examples/promise/server.js) showing how to return a `Promise` in a server method:\n\n```javascript\nconst jayson = require('jayson/promise');\n\nconst server = new jayson.Server({\n\n  add: async function(args) {\n    const sum = Object.keys(args).reduce(function(sum, key) { return sum + args[key]; }, 0);\n    return sum;\n  },\n\n  // example on how to reject\n  rejection: async function(args) {\n    // server.error just returns {code: 501, message: 'not implemented'}\n    throw server.error(501, 'not implemented');\n  }\n\n});\n\nserver.http().listen(3000);\n```\n\nClient example in [examples/promise/client.js](examples/promise/client.js) showing how to do a request:\n\n```javascript\nconst jayson = require('jayson/promise');\n\nconst client = jayson.Client.http({\n  port: 3000\n});\n\nconst reqs = [\n  client.request('add', [1, 2, 3, 4, 5]),\n  client.request('rejection', [])\n];\n\nPromise.all(reqs).then(function(responses) {\n  console.log(responses[0].result);\n  console.log(responses[1].error);\n});\n```\n\n#### Notes\n\n* JSON-RPC errors will not result in rejection of the Promise. It is however possible that a future version will include a client setting to have JSON-RPC errors result in rejection. Please note that network errors and the like will result in rejection.\n* A `Promise` is considered to have been returned from a server method if the returned object has a property `then` that is a function.\n\n#### Promise Batches\n\n*Since version 2.0.5*\n\nSometimes you may want to return raw requests from a promise client. This needs to be handled differently, because `PromiseClient.prototype.request` would normally always be expected to *return a Promise* which we in this case don't want.\n\nTo solve this, we need to set the fourth parameter to `PromiseClient.prototype.request` explicitly to `false` in order to *not* return a Promise.\n\nClient example in [examples/promise_batches/client.js](examples/promise_batches/client.js) showing how to properly execute a batch request:\n\n```javascript\nconst jayson = require('jayson/promise');\n\nconst client = jayson.Client.http({\n  port: 3000\n});\n\nconst batch = [\n  client.request('add', [1, 2, 3, 4, 5], undefined, false),\n  client.request('add', [5, 6, 7, 8, 9], undefined, false),\n];\n\nclient.request(batch).then(function(responses) {\n  console.log(responses[0].result); // 15\n  console.log(responses[1].result); // 35\n});\n```\n\n##### Notes\n\n* The third parameter to `PromiseClient.prototype.request` above is explicitly set to `undefined` - this parameter would normally represent the desired ID of the call. Remember that `null` would mean a notification (which does not return a response) and other falsy values may actually be used as ids. Setting `undefined` ensures that the id is generated automatically.\n\n#### Promise Browser Client\n\nA browser client that has no dependencies on node.js core libraries is available too. It works similar to how the regular callback-style [Browser Client](#clientbrowser) works. Here is an example:\n\n```javascript\n'use strict';\n\nconst jaysonPromiseBrowserClient = require('jayson/promise/lib/client/browser');\nconst fetch = require('node-fetch');\n\nconst callServer = function(request) {\n  const options = {\n    method: 'POST',\n    body: request,\n    headers: {\n      'Content-Type': 'application/json',\n    }\n  };\n  return fetch('http://localhost:3000', options).then(res => res.text());\n};\n\nconst client = new jaysonPromiseBrowserClient(callServer, {\n  // other options go here\n});\n\nclient.request('multiply', [5, 5]).then(function(result) {\n  console.log(result);\n}, function(err) {\n  console.error(err);\n});\n```\n\nPlease refer to the [regular browser client](#clientbrowser) section of the README for more information.\n\n## FAQ\n\n### How can I pass HTTP headers/session/etc into my JSON-RPC request handler?\n\n*Support for method context added in version 3.0.0*\n\nSee [Server context](#server-context) section.\n\n### What is the recommended way to use jayson?\n\nUsing the provided clients and servers for http, https, tls, tcp and the express middleware is fine and works well for most use cases. However, sometimes issues like these crop up (quotes below are not directly from issue posters):\n\n- \"The (non-jayson) HTTP/TCP server I'm interacting with expects every call to terminate with `\\r\\n` but the jayson client does not\"\n- [\"How can my jayson TLS server support requests encoded such and such?\"](https://github.com/tedeh/jayson/issues/86)\n- [\"How can I make the jayson HTTP middleware accept GET requests?\"](https://github.com/tedeh/jayson/issues/70)\n- [\"My jayson client interacting with a (non-jayson) TLS server closes the connection after every sent request. I think this is wasteful!\"](https://github.com/tedeh/jayson/issues/92)\n\nThese are not issues with jayson, but stem from the fact that [JSON-RPC 2.0 specification][jsonrpc-spec] is **transport agnostic** and these kind of behaviours are **not defined** by that specification. The clients provided by jayson for http, https, tls, tcp are made to work and tested with their corresponding jayson server implementation. Any other compatibility with any other server or client is *accidental* when it comes to **details of the transport layer**. With that said, jayson is made to be 100 % compatible with the [JSON-RPC 2.0 specification][jsonrpc-spec] and compatibility with other non-jayson servers or clients when it comes to the *application layer* is pretty much guaranteed.\n\nThe library author [tedeh](https://github.com/tedeh) therefore recommends that if you have particular needs when it comes to the transport layer you create an implementation satisfying these details yourself. **Doing this is actually quite simple.**\n\nExample of a http server built with express in [examples/faq_recommended_http_server/server.js](examples/faq_recommended_http_server/server.js):\n\n```javascript\nconst jayson = require('jayson');\nconst jsonParser = require('body-parser').json;\nconst express = require('express');\nconst app = express();\n\n// create a plain jayson server\nconst server = new jayson.Server({\n  add: function(numbers, callback) {\n    const sum = Object.keys(numbers).reduce(function(sum, key) { return sum + numbers[key]; }, 0);\n    callback(null, sum);\n  }\n});\n\napp.use(jsonParser()); // <- here we can deal with maximum body sizes, etc\napp.use(function(req, res, next) {\n  const request = req.body;\n  // <- here we can check headers, modify the request, do logging, etc\n  server.call(request, function(err, response) {\n    if(err) {\n      // if err is an Error, err is NOT a json-rpc error\n      if(err instanceof Error) return next(err);\n      // <- deal with json-rpc errors here, typically caused by the user\n      res.status(400);\n      res.send(err);\n      return;\n    }\n    // <- here we can mutate the response, set response headers, etc\n    if(response) {\n      res.send(response);\n    } else {\n      // empty response (could be a notification)\n      res.status(204);\n      res.send('');\n    }\n  });\n});\n\napp.listen(3001);\n```\n\nUsing some of the utilities provided and exported by jayson, creating a client offering the same kind of flexibility is also simple. Example of a compatible http client built with superagent in [examples/faq_recommended_http_server/client.js](examples/faq_recommended_http_server/client.js):\n\n```javascript\nconst jayson = require('jayson');\nconst request = require('superagent');\n\n// generate a json-rpc version 2 compatible request (non-notification)\nconst requestBody = jayson.Utils.request('add', [1,2,3,4], undefined, {\n  version: 2, // generate a version 2 request\n});\n\nrequest.post('http://localhost:3001')\n  // <- here we can setup timeouts, set headers, cookies, etc\n  .timeout({response: 5000, deadline: 60000})\n  .send(requestBody)\n  .end(function(err, response) {\n    if(err) {\n      // superagent considers 300-499 status codes to be errors\n      // @see http://visionmedia.github.io/superagent/#error-handling\n      if(!err.status) throw err;\n      const body = err.response.body;\n      // body may be a JSON-RPC error, or something completely different\n      // it can be handled here\n      if(body && body.error && jayson.Utils.Response.isValidError(body.error, 2)) {\n        // the error body was a valid JSON-RPC version 2\n        // we may wish to deal with it differently\n        console.err(body.error);\n        return;\n      }\n      throw err; // error was something completely different\n    }\n\n    const body = response.body;\n\n    // check if we got a valid JSON-RPC 2.0 response\n    if(!jayson.Utils.Response.isValidResponse(body, 2)) {\n      console.err(body);\n    }\n\n    if(body.error) {\n      // we have a json-rpc error...\n      console.err(body.error); // 10!\n    } else {\n      // do something useful with the result\n      console.log(body.result); // 10!\n    }\n  });\n```\n\n## Contributing\n\nHighlighting [issues](https://github.com/tedeh/jayson/issues) or submitting pull\nrequests on [Github](https://github.com/tedeh/jayson) is most welcome.\n\nPlease make sure to follow the style of the project, and lint your code with `npm run lint` before submitting a patch.\n\n### Submitting issues or pull requests with the Typescript type definitions\n\nYou are required to provide an easily reproducible code sample of any errors with the Typescript type definitions so that they can be added to the typescript test file in [typescript/test.ts](typescript/test.ts). Better yet, issue a pull request adding a test there yourself that shows up when running the `package.json` script `test-tsc`.\n","_attachments":{},"homepage":"https://jayson.tedeh.net","bugs":{"url":"https://github.com/tedeh/jayson/issues"},"license":"MIT"}