{"_id":"jsan","_rev":"2006922","name":"jsan","description":"handle circular references when stringifying and parsing","dist-tags":{"latest":"3.1.14"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"time":{"modified":"2021-12-19T03:56:19.000Z","created":"2015-03-18T18:58:04.207Z","3.1.14":"2021-12-19T03:52:08.070Z","3.1.13":"2018-12-02T18:19:45.188Z","3.1.12":"2018-12-01T18:39:25.223Z","3.1.11":"2018-11-04T15:16:15.488Z","3.1.10":"2018-04-29T03:15:09.576Z","3.1.9":"2017-05-04T09:40:31.540Z","3.1.8":"2017-05-03T12:20:46.507Z","3.1.7":"2017-02-18T09:36:54.647Z","3.1.6":"2017-01-16T02:39:53.990Z","3.1.5":"2016-11-22T05:38:40.259Z","3.1.4":"2016-11-21T03:46:57.701Z","3.1.3":"2016-07-29T16:08:07.515Z","3.1.2":"2016-03-04T17:08:12.253Z","3.1.1":"2016-03-01T20:54:47.533Z","3.1.0":"2016-03-01T16:39:17.650Z","3.0.0":"2016-03-01T03:47:00.988Z","2.0.4":"2015-03-24T15:25:48.257Z","2.0.3":"2015-03-24T13:08:49.864Z","2.0.2":"2015-03-24T12:54:35.570Z","2.0.1":"2015-03-20T15:45:21.743Z","2.0.0":"2015-03-19T22:00:09.022Z","1.0.0":"2015-03-18T18:58:04.207Z"},"users":{"thewolff":true},"author":{"name":"Moshe Kolodny"},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"versions":{"3.1.14":{"name":"jsan","version":"3.1.14","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"7216568a9a7969dfa81b834236595e862fdde984","_id":"jsan@3.1.14","_nodeVersion":"16.4.2","_npmVersion":"7.18.1","dist":{"shasum":"197fee2d260b85acacb049c1ffa41bd09fb1f213","size":11098,"noattachment":false,"key":"/jsan/-/jsan-3.1.14.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.14.tgz"},"_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"directories":{},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jsan_3.1.14_1639885927951_0.5804384797690534"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-19T03:52:30.904Z","publish_time":1639885928070,"_cnpm_publish_time":1639885928070},"3.1.13":{"name":"jsan","version":"3.1.13","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"e7a4c68674251723dba444808f23cfb398442d6f","_id":"jsan@3.1.13","_shasum":"4de8c7bf8d1cfcd020c313d438f930cec4b91d86","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.0","_npmUser":{"name":"zalmoxisus","email":"zalmoxisus@gmail.com"},"dist":{"shasum":"4de8c7bf8d1cfcd020c313d438f930cec4b91d86","size":10682,"noattachment":false,"key":"/jsan/-/jsan-3.1.13.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.13.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jsan_3.1.13_1543774785081_0.7012381618191814"},"_hasShrinkwrap":false,"publish_time":1543774785188,"_cnpm_publish_time":1543774785188},"3.1.12":{"name":"jsan","version":"3.1.12","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"cdff01866ecf043ed6837dee23da01ada40922f1","_id":"jsan@3.1.12","_shasum":"e784ce5ab533ee41f868bb054d74769365c80be5","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.0","_npmUser":{"name":"zalmoxisus","email":"zalmoxisus@gmail.com"},"dist":{"shasum":"e784ce5ab533ee41f868bb054d74769365c80be5","size":10617,"noattachment":false,"key":"/jsan/-/jsan-3.1.12.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.12.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jsan_3.1.12_1543689565049_0.8427619798933885"},"_hasShrinkwrap":false,"publish_time":1543689565223,"_cnpm_publish_time":1543689565223},"3.1.11":{"name":"jsan","version":"3.1.11","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.8.2","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2","remotedev-serialize":"^0.1.1"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"4ed4402bb29ee2bf5d4f82378c57cc23f86b4e95","_id":"jsan@3.1.11","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"9ab1807e5e77ba691e92f90c29a0a6002d1259db","size":18902,"noattachment":false,"key":"/jsan/-/jsan-3.1.11.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.11.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jsan_3.1.11_1541344575273_0.9664189404620183"},"_hasShrinkwrap":false,"publish_time":1541344575488,"_cnpm_publish_time":1541344575488},"3.1.10":{"name":"jsan","version":"3.1.10","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.8.2","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2","remotedev-serialize":"^0.1.1"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"abab73b299854ce159138952937690e33953aa69","_id":"jsan@3.1.10","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"ba9917b864defff567e0c990a34ae7a8d5eb1d90","size":11291,"noattachment":false,"key":"/jsan/-/jsan-3.1.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.10.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jsan_3.1.10_1524971709397_0.28758825527309106"},"_hasShrinkwrap":false,"publish_time":1524971709576,"_cnpm_publish_time":1524971709576},"3.1.9":{"name":"jsan","version":"3.1.9","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"a37187adb10762316ba1d271eb02d7334e8d2bf5","_id":"jsan@3.1.9","_shasum":"2705676c1058f0a7d9ac266ad036a5769cfa7c96","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.3","_npmUser":{"name":"zalmoxisus","email":"zalmoxisus@gmail.com"},"dist":{"shasum":"2705676c1058f0a7d9ac266ad036a5769cfa7c96","size":9337,"noattachment":false,"key":"/jsan/-/jsan-3.1.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.9.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/jsan-3.1.9.tgz_1493890830723_0.7397061609663069"},"directories":{},"publish_time":1493890831540,"_hasShrinkwrap":false,"_cnpm_publish_time":1493890831540},"3.1.8":{"name":"jsan","version":"3.1.8","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"f6feb4527fe1450690b3c3872c353cb6a10f7033","_id":"jsan@3.1.8","_shasum":"33ba17abcafed63f7da9f705e19fc9ddbca47aae","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.3","_npmUser":{"name":"zalmoxisus","email":"zalmoxisus@gmail.com"},"dist":{"shasum":"33ba17abcafed63f7da9f705e19fc9ddbca47aae","size":9110,"noattachment":false,"key":"/jsan/-/jsan-3.1.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.8.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/jsan-3.1.8.tgz_1493814044790_0.16969825001433492"},"directories":{},"publish_time":1493814046507,"_cnpm_publish_time":1493814046507,"_hasShrinkwrap":false},"3.1.7":{"name":"jsan","version":"3.1.7","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"994df52294253d5cb8506c15514788f4cb16763f","_id":"jsan@3.1.7","_shasum":"60513271c3011df2d6c627f645fb246847ff4056","_from":".","_npmVersion":"4.1.2","_nodeVersion":"6.9.0","_npmUser":{"name":"zalmoxisus","email":"zalmoxisus@gmail.com"},"dist":{"shasum":"60513271c3011df2d6c627f645fb246847ff4056","size":8847,"noattachment":false,"key":"/jsan/-/jsan-3.1.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.7.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/jsan-3.1.7.tgz_1487410614007_0.1438920854125172"},"directories":{},"publish_time":1487410614647,"_cnpm_publish_time":1487410614647,"_hasShrinkwrap":false},"3.1.6":{"name":"jsan","version":"3.1.6","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"a1a105a222a2643efd4f06f577a85de2a9152774","_id":"jsan@3.1.6","_shasum":"b60f7bfafe89d67f23dbb42f8c37325a9dfb1d4b","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"b60f7bfafe89d67f23dbb42f8c37325a9dfb1d4b","size":8377,"noattachment":false,"key":"/jsan/-/jsan-3.1.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.6.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/jsan-3.1.6.tgz_1484534392184_0.7295882315374911"},"directories":{},"publish_time":1484534393990,"_cnpm_publish_time":1484534393990,"_hasShrinkwrap":false},"3.1.5":{"name":"jsan","version":"3.1.5","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"node perf/bench > perf/results.txt","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"benchmark":"^2.1.2","circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"83c703ef2d6518eb7816fb80fa3eaf8ae1b7fcd5","_id":"jsan@3.1.5","_shasum":"8144b968ace7db092914a3639e9768181d686f61","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.0.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"8144b968ace7db092914a3639e9768181d686f61","size":8393,"noattachment":false,"key":"/jsan/-/jsan-3.1.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.5.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/jsan-3.1.5.tgz_1479793118437_0.5114318991545588"},"directories":{},"publish_time":1479793120259,"_cnpm_publish_time":1479793120259,"_hasShrinkwrap":false},"3.1.4":{"name":"jsan","version":"3.1.4","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"rimraf 'perf/*.txt' && for i in `seq 1 9`; do node perf/bench > perf/$i.txt; done","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"0867ecfda1b0815a4538c658805e54c2610e36c1","_id":"jsan@3.1.4","_shasum":"cb91e8386167411abc9d7684f0572d6f1e39c28c","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"cb91e8386167411abc9d7684f0572d6f1e39c28c","size":8931,"noattachment":false,"key":"/jsan/-/jsan-3.1.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.4.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/jsan-3.1.4.tgz_1479700017134_0.7401974839158356"},"directories":{},"publish_time":1479700017701,"_cnpm_publish_time":1479700017701,"_hasShrinkwrap":false},"3.1.3":{"name":"jsan","version":"3.1.3","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"rimraf 'perf/*.txt' && for i in `seq 1 9`; do node perf/bench > perf/$i.txt; done","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mobx":"^2.4.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"9b37cebc85c5a5cbca0b512764b3a8f5511a93b6","_id":"jsan@3.1.3","_shasum":"ef10cfb7356feb9ff756dd0a9af7c68d2d75614f","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"ef10cfb7356feb9ff756dd0a9af7c68d2d75614f","size":8702,"noattachment":false,"key":"/jsan/-/jsan-3.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.3.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/jsan-3.1.3.tgz_1469808484287_0.676734633743763"},"directories":{},"publish_time":1469808487515,"_cnpm_publish_time":1469808487515,"_hasShrinkwrap":false},"3.1.2":{"name":"jsan","version":"3.1.2","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"rimraf 'perf/*.txt' && for i in `seq 1 9`; do node perf/bench > perf/$i.txt; done","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"d7e410fc2934f0b3b0efb447f41a8410528954b4","_id":"jsan@3.1.2","_shasum":"7efacd4fd900162cb7c1a84118c2f5db51f972b4","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.5.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"7efacd4fd900162cb7c1a84118c2f5db51f972b4","size":8435,"noattachment":false,"key":"/jsan/-/jsan-3.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.2.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/jsan-3.1.2.tgz_1457111288875_0.5720021706074476"},"directories":{},"publish_time":1457111292253,"_cnpm_publish_time":1457111292253,"_hasShrinkwrap":false},"3.1.1":{"name":"jsan","version":"3.1.1","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"rimraf 'perf/*.txt' && for i in `seq 1 9`; do node perf/bench > perf/$i.txt; done","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"circular-json":"^0.3.0","immutable":"^3.7.6","json-stringify-safe":"^5.0.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"d167516956d05676216ce69b1511d1347a464e6f","_id":"jsan@3.1.1","_shasum":"aedcf56137b4bfb62918e854b743fe88da5be055","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.5.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"aedcf56137b4bfb62918e854b743fe88da5be055","size":8311,"noattachment":false,"key":"/jsan/-/jsan-3.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.1.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-11-east.internal.npmjs.com","tmp":"tmp/jsan-3.1.1.tgz_1456865686665_0.7716566985473037"},"directories":{},"publish_time":1456865687533,"_cnpm_publish_time":1456865687533,"_hasShrinkwrap":false},"3.1.0":{"name":"jsan","version":"3.1.0","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"benchmark":"rimraf 'perf/*.txt' && for i in `seq 1 9`; do node perf/bench > perf/$i.txt; done","test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"circular-json":"^0.3.0","json-stringify-safe":"^5.0.1","mocha":"^2.2.1","rimraf":"^2.5.2"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"0b5d0f3f0015d7b87d8feead663b39a67fd50c01","_id":"jsan@3.1.0","_shasum":"141119cd259ac6c057a6ad383488b7d1dd8e3d70","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.5.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"141119cd259ac6c057a6ad383488b7d1dd8e3d70","size":8018,"noattachment":false,"key":"/jsan/-/jsan-3.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.1.0.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/jsan-3.1.0.tgz_1456850355640_0.10766550246626139"},"directories":{},"publish_time":1456850357650,"_cnpm_publish_time":1456850357650,"_hasShrinkwrap":false},"3.0.0":{"name":"jsan","version":"3.0.0","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"circular-json":"^0.3.0","json-stringify-safe":"^5.0.1","mocha":"^2.2.1"},"dependencies":{},"repository":{"type":"git","url":"git+https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"09a6795d241aaa66031e065726a384b9c2463203","_id":"jsan@3.0.0","_shasum":"75dd245edda5a388343ff10d31aad4fb5a12f1bd","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.5.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"dist":{"shasum":"75dd245edda5a388343ff10d31aad4fb5a12f1bd","size":7553,"noattachment":false,"key":"/jsan/-/jsan-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-3.0.0.tgz"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/jsan-3.0.0.tgz_1456804019083_0.15673732105642557"},"directories":{},"publish_time":1456804020988,"_cnpm_publish_time":1456804020988,"_hasShrinkwrap":false},"2.0.4":{"name":"jsan","version":"2.0.4","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"mocha":"^2.2.1","rek":"0.0.4"},"dependencies":{},"repository":{"type":"git","url":"https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"c0b69d7c031c537ff5f64cc573e37d415f06548f","_id":"jsan@2.0.4","_shasum":"39a71ecd7afc4f177269962a80b6fabb7adc6884","_from":".","_npmVersion":"2.5.1","_nodeVersion":"1.2.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"dist":{"shasum":"39a71ecd7afc4f177269962a80b6fabb7adc6884","size":4742,"noattachment":false,"key":"/jsan/-/jsan-2.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-2.0.4.tgz"},"directories":{},"publish_time":1427210748257,"_cnpm_publish_time":1427210748257,"_hasShrinkwrap":false},"2.0.3":{"name":"jsan","version":"2.0.3","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"mocha":"^2.2.1","rek":"0.0.4"},"dependencies":{},"repository":{"type":"git","url":"https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"15fe50fa4c7ef9db4d8995ebdaa477c091ae97a8","_id":"jsan@2.0.3","_shasum":"26ae1b3d4dbfde48c2f71a5ce2d77dd1e6d5764b","_from":".","_npmVersion":"2.5.1","_nodeVersion":"1.2.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"dist":{"shasum":"26ae1b3d4dbfde48c2f71a5ce2d77dd1e6d5764b","size":4298,"noattachment":false,"key":"/jsan/-/jsan-2.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-2.0.3.tgz"},"directories":{},"publish_time":1427202529864,"_cnpm_publish_time":1427202529864,"_hasShrinkwrap":false},"2.0.2":{"name":"jsan","version":"2.0.2","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"mocha":"^2.2.1","rek":"0.0.4"},"dependencies":{},"repository":{"type":"git","url":"https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"8cb3c4f1d288d1c3dca985cec323a6a7ed8acb3a","_id":"jsan@2.0.2","_shasum":"c3dcff8591b932a1345301da3058eda3beb03daf","_from":".","_npmVersion":"2.5.1","_nodeVersion":"1.2.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"dist":{"shasum":"c3dcff8591b932a1345301da3058eda3beb03daf","size":4172,"noattachment":false,"key":"/jsan/-/jsan-2.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-2.0.2.tgz"},"directories":{},"publish_time":1427201675570,"_cnpm_publish_time":1427201675570,"_hasShrinkwrap":false},"2.0.1":{"name":"jsan","version":"2.0.1","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"mocha":"^2.2.1","rek":"0.0.4"},"dependencies":{},"repository":{"type":"git","url":"https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"20d56c83f3e648da605f63e73757feb7ddb8b4d1","_id":"jsan@2.0.1","_shasum":"1d3a2814efeebe1d887dbb485ff185c30a16414b","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"dist":{"shasum":"1d3a2814efeebe1d887dbb485ff185c30a16414b","size":4390,"noattachment":false,"key":"/jsan/-/jsan-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-2.0.1.tgz"},"directories":{},"publish_time":1426866321743,"_cnpm_publish_time":1426866321743,"_hasShrinkwrap":false},"2.0.0":{"name":"jsan","version":"2.0.0","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"mocha":"^2.2.1","rek":"0.0.4"},"dependencies":{},"repository":{"type":"git","url":"https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"f9127aa58f19570f7d546c42a3e7219897d52537","_id":"jsan@2.0.0","_shasum":"abfb87e5b38ff456e0064485d7d37b0a16c75132","_from":".","_npmVersion":"2.5.1","_nodeVersion":"1.2.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"dist":{"shasum":"abfb87e5b38ff456e0064485d7d37b0a16c75132","size":3772,"noattachment":false,"key":"/jsan/-/jsan-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-2.0.0.tgz"},"directories":{},"publish_time":1426802409022,"_cnpm_publish_time":1426802409022,"_hasShrinkwrap":false},"1.0.0":{"name":"jsan","version":"1.0.0","description":"handle circular references when stringifying and parsing","main":"index.js","scripts":{"test":"mocha"},"keywords":["json"],"author":{"name":"Moshe Kolodny"},"license":"MIT","devDependencies":{"mocha":"^2.2.1","rek":"0.0.3"},"dependencies":{},"repository":{"type":"git","url":"https://github.com/kolodny/jsan.git"},"bugs":{"url":"https://github.com/kolodny/jsan/issues"},"homepage":"https://github.com/kolodny/jsan","gitHead":"d187aaf5a48cfd86b4533eb73399faa33c125d76","_id":"jsan@1.0.0","_shasum":"81ea1710b97f9e70a8a6164eae5a2a1e9196a14b","_from":".","_npmVersion":"2.5.1","_nodeVersion":"1.2.0","_npmUser":{"name":"kolodny","email":"kolodny.github@gmail.com"},"maintainers":[{"name":"kolodny","email":""},{"name":"zalmoxisus","email":""}],"dist":{"shasum":"81ea1710b97f9e70a8a6164eae5a2a1e9196a14b","size":3489,"noattachment":false,"key":"/jsan/-/jsan-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/jsan/download/jsan-1.0.0.tgz"},"directories":{},"publish_time":1426705084207,"_cnpm_publish_time":1426705084207,"_hasShrinkwrap":false}},"readme":"jsan\n===\n\n[![Build Status](https://travis-ci.org/kolodny/jsan.svg?branch=master)](https://travis-ci.org/kolodny/jsan)\n\n### JavaScript \"All The Things\" Notation  \n![jsan](https://i.imgur.com/IdKDIB6.png)\n\nEasily stringify and parse any object including objects with circular references, self references, dates, regexes, `undefined`, errors, and even functions\n<sub>[1](#functions)</sub>, using the familar `parse` and `stringify` methods.\n\nThere are two ways to use this library, the first is to be able to\nserialize without having to worry about circular references,\nthe second way is be able to handle dates, regexes, errors, functions\n<sub>[1](#functions)</sub>, errors, and undefined (normally\n`JSON.stringify({ u: undefined }) === '{}'`)\n\nThe usage reflect these two approaches. If you just want to be\nable to serialize an object then use `jsan.stringify(obj)`,\nif you want to JSON all the things then use it like\n`jsan.stringify(obj, null, null, true)`, the first three\narguments are the same as `JSON.stringify` (yup, `JSON.stringify`\ntakes three arguments)\n\nNote that `jsan.stringify(obj, null, null, true)` will also deal\nwith circular references\n\n\n### Usage\n\n```js\nvar jsan = require('jsan');\n\nvar obj = {};\nobj['self'] = obj;\nobj['sub'] = {};\nobj['sub']['subSelf'] = obj['sub'];\nobj.now = new Date(2015, 0, 1);\n\nvar str = jsan.stringify(obj);\nstr === '{\"self\":{\"$jsan\":\"$\"},\"sub\":{\"subSelf\":{\"$jsan\":\"$.sub\"}},\"now\":\"2015-01-01T05:00:00.000Z\"}'; // true\nvar str2 = jsan.stringify(obj, null, null, true);\nstr2 === '{\"self\":{\"$jsan\":\"$\"},\"sub\":{\"subSelf\":{\"$jsan\":\"$.sub\"}},\"now\":{\"$jsan\":\"d1420088400000\"}}'; // true\n\nvar newObj1 = jsan.parse(str);\nnewObj1 === newObj1['self']; // true\nnewObj1['sub']['subSelf'] === newObj1['sub']; // true\ntypeof newObj1.now === 'string'; // true\n\nvar newObj2 = jsan.parse(str2);\nnewObj2 === newObj2['self']; // true\nnewObj2['sub']['subSelf'] === newObj2['sub']; // true\nnewObj2.now instanceof Date; // true\n```\n\n#### Notes\n\nThis ulitilty has been heavily optimized and performs as well as the native `JSON.parse` and\n`JSON.stringify`, for usages of `jsan.stringify(obj)` when there are no circular references. \nIt does this by first `try { JSON.stringify(obj) }` and only when that fails, will it walk\nthe object. Because of this it won't property handle self references that aren't circular by\ndefault. You can work around this by passing false as the fourth argument, or pass true and it\nwill also handle dates, regexes, `undefeined`, errors, and functions\n\n```js\nvar obj = { r: /test/ };\nvar subObj = {};\nobj.a = subObj;\nobj.b = subObj;\nvar str1 = jsan.stringify(obj) // '{\"r\":{},a\":{},\"b\":{}}'\nvar str2 = jsan.stringify(obj, null, null, false) // '{\"r\":{},\"a\":{},\"b\":{\"$jsan\":\"$.a\"}}'\nvar str3 = jsan.stringify(obj, null, null, true) // '{\"r\":{\"$jsan\":\"r,test\"},\"a\":{},\"b\":{\"$jsan\":\"$.a\"}}'\n```\n\n##### Functions\n\nYou can't execute the functions after `stringify()` and `parse()`, they are just functions\nthat throw which have a `toString()` method similar to the original function\n\n### Advance Usage\n\nYou can specify how and what should be handled by passing an object as the fourth argument:\n\n```js\nvar obj = { u: undefined, r: /test/, f: function bar() {} };\nvar str = jsan.stringify(obj, null, null, { undefined: true, function: true }); // '{\"u\":{\"$jsan\":\"u\"},\"r\":{},\"f\":{\"$jsan\":\"ffunction bar() { /* ... */ }\"}}'\n```\n\nThe `function` property of options can also take a function which will be used as the\nfunction stringifyer:\n\n```js\nvar obj = { u: undefined, r: /test/, f: function(x) { return x + 1 } };\nvar str = jsan.stringify(obj, null, null, {\n  undefined: true,\n  function: function(fn) { return fn.toString() }\n});\nstr === '{\"u\":{\"$jsan\":\"u\"},\"r\":{},\"f\":{\"$jsan\":\"ffunction (x) { return x + 1 }\"}}'; // true\n```\n","_attachments":{},"homepage":"https://github.com/kolodny/jsan","bugs":{"url":"https://github.com/kolodny/jsan/issues"},"license":"MIT"}