{"_id":"mobx-sync","_rev":"34-2cd673267295d3a77b3ac995d64ad156","name":"mobx-sync","description":"A library to persist your mobx stores.","dist-tags":{"latest":"3.0.0","next":"3.0.0-next.1"},"versions":{"0.0.1":{"name":"mobx-sync","version":"0.0.1","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^3.3.2","tslib":"^1.8.0"},"devDependencies":{"known-types":"^1.2.0"},"gitHead":"abc84932cffd9a46324f5d33a40a5a8028b864fc","_id":"mobx-sync@0.0.1","_npmVersion":"5.5.1","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-PhNE1xuEzdllpK95V7rPaGrMydrQBA4m+UPMb+gp72qC27LwEbW9Rf/c7XlbjN3Y97MQprgRRAdWBZqpQNN54A==","shasum":"9f072613c8151000a1fca9c48f2185546ebc5f10","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFPrLhjF007yA/+bIYJ0t86qv9iNIB5lS70O1GIItFP3AiBsSd+eTmK87FSkDYqckGZjcyvOb2gvrdr6CCcxyIMiFg=="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync-0.0.1.tgz_1511868966365_0.774080716772005"},"directories":{},"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.1.0":{"name":"mobx-sync","version":"0.1.0","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"test":"mocha --require ts-node/register ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^3.3.2","tslib":"^1.8.0"},"devDependencies":{"@types/mocha":"^2.2.46","@types/node":"^8.5.7","mocha":"^4.1.0","monofile-utilities":"^1.3.2","ts-node":"^4.1.0","typescript":"^2.6.2"},"gitHead":"61991e9c074c231850b6be5c2f37c73782f9c12e","_id":"mobx-sync@0.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-NvLHYhBckM4TEo7Lz4eWSRSIhaRpE7nLEzgBFWUStwJQ4DKjje5C/yclbE7r6bT0tjRINvI7U8s2dTyc0wqyXQ==","shasum":"2bfd9e5a0157ac6286435f89c2bdcd4672851aba","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYvttPSywT7SIO25fbySNobFhPBVb+OL4q1gCr5urdwQIhAJofCh6S3lggK9K37bsfvj0id1jpxE6Y/J6Ct9OfBN52"}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync-0.1.0.tgz_1515232196019_0.20938682300038636"},"directories":{},"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.1.1":{"name":"mobx-sync","version":"0.1.1","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"tsc","test":"mocha --require ts-node/register ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^3.3.2","tslib":"^1.8.0"},"devDependencies":{"@types/mocha":"^2.2.46","@types/node":"^8.5.7","mocha":"^4.1.0","monofile-utilities":"^1.3.2","ts-node":"^4.1.0","typescript":"^2.6.2"},"gitHead":"61991e9c074c231850b6be5c2f37c73782f9c12e","_id":"mobx-sync@0.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-oCvuYahJ7Yb3QMYLKTfv932d3nMkuOV9d9CrnI3UeiXprV+iOlyUN3LAyrSTWbc+rDS6ZRnFfca1krhUoZ+P+g==","shasum":"78208b918b95a2a64a9ff53d0969c5e4467eee02","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.1.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDkLksXbxSHEEMcGwmeAHI+3SuUa7FInniawOL3pp/9GAiAOipviNPuMvN0C/7JhcEK2M6YGpfueRhKtVOrOMX6Xbw=="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync-0.1.1.tgz_1516852264415_0.13232981250621378"},"directories":{},"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.1.2":{"name":"mobx-sync","version":"0.1.2","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^3.3.2","tslib":"^1.8.0"},"devDependencies":{"@types/mocha":"^2.2.46","@types/node":"^8.5.7","mocha":"^4.1.0","monofile-utilities":"^1.3.2","ts-node":"^4.1.0","typescript":"^2.6.2"},"gitHead":"61991e9c074c231850b6be5c2f37c73782f9c12e","_id":"mobx-sync@0.1.2","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-zj3XDNWzy4eSCf5S2E/+DsfHb99F+iMDRiiNPZLTS8psnYeOjZiYJ2d8RmFeRl7zmvKSROOzlV8/e6yder6MnQ==","shasum":"540b36806426b37d096360e5ce5c7fda63443b76","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.1.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC5mO5nz0TxvkT5e61n9bIxc6+XztcIxIJ0LmKBcdecnwIhAJwutrqoO56f8eeZxcgS8HFlXAojD7i5RJkjUOPhNuBg"}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync-0.1.2.tgz_1516852329207_0.2159627282526344"},"directories":{},"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.1.3":{"name":"mobx-sync","version":"0.1.3","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^3.3.2","tslib":"^1.8.0"},"devDependencies":{"@types/mocha":"^2.2.46","@types/node":"^8.5.7","mocha":"^4.1.0","monofile-utilities":"^1.3.2","ts-node":"^4.1.0","typescript":"^2.6.2"},"gitHead":"05519ec4f85af779e6ac0193c702ad35b11a76fd","_id":"mobx-sync@0.1.3","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-+qCxwQ43urmpd8f60/XkedTCPqrUF1d3raRTiaEJ1XkMhw95e6gBB6LxTmG9PNuVvabor+TJvc/lgCDd5MUsgQ==","shasum":"e2eca20e0755662ba9a52f703b87648b40958e37","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.1.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAr5Dfb9mgDxEaAtLM2GxhryokvWRfz3misIJ/SwBO4yAiEAjXVKRsytjc8yc43YGgcQq83HgYGRA/xmp+tVtt8/dZ8="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync-0.1.3.tgz_1517118831210_0.9458654343616217"},"directories":{},"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.1.4":{"name":"mobx-sync","version":"0.1.4","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^3.4.1","tslib":"^1.9.0"},"devDependencies":{"@types/mocha":"^2.2.47","@types/node":"^9.4.0","mocha":"^5.0.0","monofile-utilities":"^1.4.0","ts-node":"^4.1.0","typescript":"^2.6.2"},"gitHead":"4c080bf682c6c0b0b520eb8d7213ed09becb0bf1","_id":"mobx-sync@0.1.4","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-CLXnmM7C86z2G3w0Q18uC0DTva4P8AXqeiCTNkrzUuOaos34V/mdB6AnXyieyd7is3LpRaMoG2BFlPzQtAqRDw==","shasum":"74277c09ba6188ed3147884514000380597d59e4","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.1.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9OJ5c2DUqpJwtP2WbhjOrx3Di7pgKvwPj4OWoRVDHowIhAN3yRR/COAYiMJvePzIXQoD9C3D2fzcUJYrBC0RSGfxJ"}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync-0.1.4.tgz_1517404579846_0.1314976834692061"},"directories":{},"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.2.0":{"name":"mobx-sync","version":"0.2.0","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^3.4.1","tslib":"^1.9.0"},"devDependencies":{"@types/mocha":"^2.2.47","@types/node":"^9.4.0","mocha":"^5.0.0","monofile-utilities":"^1.4.0","ts-node":"^4.1.0","typescript":"^2.6.2"},"gitHead":"f10db40b08e0e728d4c9bf384c0cf457433a4387","_id":"mobx-sync@0.2.0","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-vmxL8u1yXMuuMq7Ah6tDtoyAsC7EzhBn64efKgO8Yu7wgvC/F6tmanVYZP6XOOJQk0oK2y1+fgUv30dcVWReAQ==","shasum":"46efa41e48e2e37d3aa97c19ed5cffd4b7d25482","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.2.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGMvf1Y+TcGtKK1GsH6jxMgmktDJZy6TdiF6GARs945zAiEA2uAfDxAYzSWPCrxvATdJGoXxIh2r6JbDxRB4T6FczvE="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync-0.2.0.tgz_1517754980498_0.5516295263078064"},"directories":{},"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.3.0":{"name":"mobx-sync","version":"0.3.0","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^4.1.1","tslib":"^1.9.0"},"devDependencies":{"@types/mocha":"^5.0.0","@types/node":"^7.0.60","mocha":"^5.0.5","monofile-utilities":"^1.6.0","ts-node":"^5.0.1","typescript":"^2.8.1"},"gitHead":"a6a874eed55446ccec9f1123655b46d5c0c33915","_id":"mobx-sync@0.3.0","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-zB8wpOZJnqVNde+sOOOfXCz1rb7BOnKAdJ7Ik4kRRvl+HvhJ5TAQXockF/N4L05vx8FlZGabm0P1RzNThMdlKw==","shasum":"65ee940300f40ec5775242925cb071bbc428d89b","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.3.0.tgz","fileCount":57,"unpackedSize":82466,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxqTM21hDRjPa44/3moR+zt1wAkQdSspD0cBCDB/OPVAIgR7QkS4tUeeSkSHsanpdByJwfabPQBuTGozywc3qDdPs="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.3.0_1523334668271_0.07932782423653695"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.4.0":{"name":"mobx-sync","version":"0.4.0","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^4.1.1","monofile-utilities":"^1.6.0","tslib":"^1.9.0"},"devDependencies":{"@types/mocha":"^5.0.0","@types/node":"^7.0.60","mocha":"^5.0.5","ts-node":"^5.0.1","typescript":"^2.8.1"},"gitHead":"603a65297c6c670e7ec9e3eb93ac787655756b51","_id":"mobx-sync@0.4.0","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-9mO+SbzPS4qQzpaeh5yUuRt/Z/mWLq7n7vYfvOejjDY/sJ7a4zZpFXVbSzCcmrGL+831YNsWXFhuvZEyr2G/+Q==","shasum":"0c6bd4b2c54065be9e57776797c962fe9d8af2d8","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.4.0.tgz","fileCount":57,"unpackedSize":82508,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkC3r/GIYRkZ5GjSsO/ESZGhNMSVtD9OFXYqYbbnfWRgIgX3LP+b4Zb7u9VbdbLDx83roXhCNmL6wmSv5CLG+2Faw="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.4.0_1523347381190_0.6790808370039185"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.4.1":{"name":"mobx-sync","version":"0.4.1","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^4.1.1","monofile-utilities":"^1.6.0","tslib":"^1.9.0"},"devDependencies":{"@types/mocha":"^5.0.0","@types/node":"^7.0.60","mocha":"^5.0.5","ts-node":"^5.0.1","typescript":"^2.8.1"},"gitHead":"a7211d1e15fe03e861c561279ef113625ab6298b","_id":"mobx-sync@0.4.1","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-3RdgXF2+Ox6b7Ryau9TUwq7Tks1ZVxl6siT3g9wVAo7OdCS4e+ofb44Ey0B4/pERG+5KEQSe6vbGFUuFFThY9A==","shasum":"47790f6ab60ef95996eeba8b9a0f51a7d9d718a0","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.4.1.tgz","fileCount":65,"unpackedSize":97245,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa1K+wCRA9TVsSAnZWagAAsgQP/1zODACMD+zNnF0CcmhX\n+wZMSxFf1EOSVUrMRqcjjbIcMub/fxP4aGXRytHmjDn52JvUCl/x/ndNadps\nFgNRCdZ68jeJB34knoOOMwD0+pttvD8SPyo4Njvdp7xU793fKkr5M/IjZ6Ai\nYxwcgoNJOHT6YKVenqMG24maILt73FB4MThzHw44lc/PaMwHMQF/aRBHCHyA\nb6QEmvNABf2AVOs9K6PDliB+a4wb1mkYhb6t6gK/mBdKKSalzCOeLugXMgPA\nBApFtBjbLRpdVi/id6R6DpBIvFLxVOuWnXgkXBeKO5xecuVpWNUMBiPhU8e1\nJtNYunXaE4woHYdA3FBc+awjJPXzufGrXGDihar5xEcF5ceXrn9dmjFO9Ego\nAJvJTLHMBMWRzmWxRuqQ2TOiMs87xWrvx6VXDSJai0vGWGXdw6iz77ohTwwr\nJu1iStdiuMcGnbZardC7qVHVMD5eYxMTUJi0Uh9ptHjbfYcV1soP4rc1a/En\nzFOjHMaMOyVLYwinmhrv69lxl9s2nOkycIdZ5/tZ3cmVzaUGBzToJqEPo9mY\nllrpMhCt27+n16IJ2AZlBv8YgDmVbFFyVFK+1e8V99g96pSluQ/ci2PHhBaf\nrofHDLgu+1nApd6vMXQQE87iEvvcuQvFBOzNoQPzfcSfEKNySnBgJzjxMQXF\nwd9T\r\n=xr5M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFLtqVL+r7UqPZpsb7a2TY6NZfI5gFiCQUItXooPj3CJAiAFEjPLQyiLUfjbPTGnn/C0KAabREIG6y2VtTHj73SnEw=="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.4.1_1523888047256_0.0031857339590795064"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.5.0":{"name":"mobx-sync","version":"0.5.0","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^4.1.1","monofile-utilities":"^1.6.0","tslib":"^1.9.0"},"devDependencies":{"@types/mocha":"^5.0.0","@types/node":"^7.0.60","mocha":"^5.0.5","ts-node":"^5.0.1","typescript":"^2.8.1"},"gitHead":"d7998d275b26e21c6b6393f63e8c38a894fb9d58","_id":"mobx-sync@0.5.0","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-9LKc4J8/9TxzGAkj2b0u+z0gPRm5szPi2TzpMmClnbqcn2XPrLEFRXaRtR320k844fFY6j4yk3MZSVVqPUCKpw==","shasum":"a2eb8b0b4e0405716bb972b23cbaeb43b44dea43","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.5.0.tgz","fileCount":65,"unpackedSize":99632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa2/4fCRA9TVsSAnZWagAAEsYP/Aq1mLp9+F+l3WhMrIMd\ngQsvwkXbGawGjQcdX5xJSw4/GII/wGoo6TgtaGSzn/nzC2Kpe6B8wRbCNPz9\nJzd8vQP9Khsyip+Y3wWA4+TaMlfJLAhSj/8DGrEPlwH5WQBNvB435Mn10tWe\n/eM1620RIH0UYTYAC/hnviquNoBjFjers5k9H62lZ2zAsTnB6ZNKYqZpFhGB\nJaK8mqolSoJssdBSwrpTpk9NSdY7sfzHZRQtUrKltJGY0EgiKSYuDzK+XNyE\nRvHnIX4fCYutjPLIUdfM+9Q9wEL7SR+PraKY9AlsO9lw6tzmUf182ht9mSrb\nnuou+B5GIUJy624HkAqFnvOnJIxJJubpCNYfL08II9Al6t1XMsIiaW4Aht89\nPssSn9LI5i0zOJfxBqQorMkuPMT0JN5CRUHmawKbLmL/SEagyQc9gaCa5lcV\nJbUrjFPO7r7ZV/aC6d3/jrSfpnKQuT7ewINp5XggSycl+hcAvuUzeSPpeUAI\nbcH+uT2drbFm1HUBEjZSxZrxDNC20zCK1wHFQ/WUFx1v6aeLNfddLCZJycEq\nCygiUpQJcVRG8GdA377SyJ7vDSnsJBlf8hM0C82HcxvBNixnbBshJmCDLOeR\n/IXaCf2rO9du02wMfWydJqSc1RNsITiNuOthnq+RD/0qTpHzGwfvtaFae7Zx\nyX1F\r\n=KmXh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICvRRHGWIrpU8NCUwGBSCilN4PmRQu0oKNASojPi6sbNAiAU/LRmGAzhwTflQR/1QLEPwSf2cUz3Wmq8EAijQF6+FQ=="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.5.0_1524366878472_0.016905166545360784"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.6.0":{"name":"mobx-sync","version":"0.6.0","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^4.1.1","monofile-utilities":"^1.6.0","tslib":"^1.9.0"},"devDependencies":{"@types/mocha":"^5.0.0","@types/node":"^7.0.60","mocha":"^5.0.5","ts-node":"^5.0.1","typescript":"^2.8.1"},"gitHead":"bfcd25e2328c4104311495601c5fe8adebd8ca99","_id":"mobx-sync@0.6.0","_npmVersion":"5.6.0","_nodeVersion":"8.2.1","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-XYVv3Fx6Hv3XkYhVtZi2iX1FOSG0+V5xOl9LmeJ4eHwYGyc8Swuas5pD2oMG+6WS8A8BJQgATLbYJ+HK8sKOZQ==","shasum":"6044c8c7db34c8038fbce0d4c1a380bafc6b682c","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.6.0.tgz","fileCount":73,"unpackedSize":109129,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9aU8CRA9TVsSAnZWagAA/+oP/32N7A6FPBq8tbjdUAd5\n+cjmPsdnaxRko0MC/imzxWBsTe/Y5h6rpMti+of6HBvG6Nt396c+7OBbo9Q7\nGn/tYVj35La7R4Y3Q72VkOFpUTAibXERqeykeATLt2Hs1cxe/32VolZSz5tV\nANu7hQRbnI2dAncG8wDEBHhGBjv0Fci4tvU2pbTiVojy/9E7EjmuCW+oMlmp\nhSldJun713UoiIPK4tnM0OV0TXreTSZ5PaauB/YF2ZG+OYoUUMKe41TVxti+\nmPe1uRy5KHFYKdFLwpOYoMfqxE+lhVu+AB5Jncg6taiF4p7Df8/aAmds1M60\n1RhqmXPtpUR7ctPckv61+0XJpJeV6j8692LRa2IEdHPg+T1iw27uSImH/iAb\nRJ0n1AHxpdX8r6OsFtyMcPcVTZl9xxHHxYTEJ0eGa1GIDB8r/8Zq13am85yj\nT2TQ1d6fcgoSl+7Mt7yNxAQ+/EElQZ+JgPuNVlcWg8X+TF+bYXElTMKcJWba\n7mvzFB2XvS8suoBSKI7t/QvFzqkWenNdpx+AnDg2rCB9V7EumXowNYlsuSMx\n2Sx+81+WajuTArpsmNPfKc0FlaS6584RCDdQHZxOCxZLZrVds5MU2cTcE8ZN\nkAYwya4U4rZerDX1Vn/teZSMi+LE9ReXpTAskvK1xx69TAh+ntlkmHPIdb4s\nUrHx\r\n=IsO3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0MkGmsYmUxJFGXEV48kSmmeFCeSBt1iY8OnClHQHYTQIhAP9DxMubeP0/2ucOC3X+QvWlDoTNY72N0OwzZ6z/3QWt"}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.6.0_1526048059505_0.992056203200034"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.7.0":{"name":"mobx-sync","version":"0.7.0","description":"A library to persist your mobx stores.","main":"lib/index.js","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^5.0.3","monofile-utilities":"^1.7.1","tslib":"^1.9.3"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^2.9.2"},"gitHead":"19d7c7f6b69cf96c12aa58bc74bd5aeeca31f2d8","_id":"mobx-sync@0.7.0","_npmVersion":"5.6.0","_nodeVersion":"10.5.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-1bTbVlYBUQsq4qbA+NfrvB1NLHIOMY86HhS5ylEk0yOsyzognpUz+aotCmbSJfSnzTtnNnp1ZChB/X2awRMCOQ==","shasum":"30987d565a2ba4b5c71fe4459ddfd346fcf42aa3","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.7.0.tgz","fileCount":49,"unpackedSize":98056,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbMm5kCRA9TVsSAnZWagAA4AsP/1UwX+YHjvGG0jS+0MyM\nddEzarMYyJ5MYYnpJwXZvlkQN2noTEOkdKC5dsC3VrRQ5QdCIMgKgqDJqsiy\n6uOyoBlTpBP9hYWoYRbdaXs49LHDMCIp5MGYzpDLMz/XZJyF4PQpenzJbDUX\nYkYLhlKtA06miZY457EugszZvz8nrAhAmIesHQZwWYLWxKXQNAUs6gmqDOMV\nldzy+kC4fDHyh/ZV2XtW/HlgKZV0bu5cayhCfTa8AeiGzLg60VmFBvyKdPPv\nCDmiyPBVLgsN17ygQR2dUNNFMOl9a3PGnfZ4CLyUlQLXnqsK8P0TFusMPxLS\nMtepj4AONSVUT74QR/8stwqF9O1zzxHh5ic6yqbgDHFnQaaKi7+glvjv9SWx\noQPhneCqa1ezKayl9QfUJYkf8/BTQ9i69QNvDNn7ju2b+WXIS49hbsuBTvQ8\n++KywZ0dTuXLrXvdVF8Y8dTtAHlTHxZAeVcF+J+6cgCYESHpmmKC8unQUjes\n+J4Hy9ftz858y4NKhWp4mg34n07Qc0kAFltutbGGsSqltU6oLX5r8VgFny4l\nTfL32Q3CKcH5oqpYIaqXA00W3LItB1cQD8Iz3fbokBOL3H4abRMc425Dhf/W\njF8N7VUCloD5BZ1JjdKm/pM6w+/cPrPt2Hm+G9uwfmL1TeVwrPk7VeNR3GkB\ndxq7\r\n=RjkX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG4Ma9AkAPgQdyHoWZwK1gOlOt66etFdngWZOI0FfOWfAiEAgYfuDcAGpI0J9jfsHXTgIVOat7OolIMGNS0ObWcP7Fo="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.7.0_1530031716268_0.2757633068538987"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.8.0":{"name":"mobx-sync","version":"0.8.0","description":"A library to persist your mobx stores.","main":"./lib/index.js","types":"./lib/index.d.ts","typings":"./lib/index.d.ts","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^5.0.3","monofile-utilities":"^1.7.1","tslib":"^1.9.3"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^2.9.2"},"gitHead":"90647e3ec442dacfa6575340ce4d6f11fe657948","_id":"mobx-sync@0.8.0","_npmVersion":"5.6.0","_nodeVersion":"10.5.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-3JIMA2mNKdVE5bc8ENs9wXHAeaH+KKrWa9Tr+XLbSSxYV39VtxHmHyI0jKgVfEezpXYi4yh/AtPbMXz2fN7ToA==","shasum":"e101c50a472ae4f1859f234be9d2544ab4ef50d1","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.8.0.tgz","fileCount":16,"unpackedSize":44644,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbMnF4CRA9TVsSAnZWagAA6poP/0RqwI7hTKiKC+0X/PV5\nJOsm1Wq5NRNzJXOKfRKrpiRHZlV+ZxqDuEchEus5XJYpLFRkIymVG8xrzVsY\n2JTEXNaMPE6OUSy04DeXgV7LqHecly2WdX/IBwvUjNMxlHWzC7BapvTUv0vx\nkXo5GLZBKvZ0mcDnpqtZhpVk5SaEu7HkDah+otmrYzIOVNvWRVEZQvMy3QLK\nHJP7A/CupYFsKuG/lw+hnGW20+TiEVWV4kgip9a70BQNOY4d7/0cVastL13n\nRtLX8QFVfWZuR27Ram+yG1AzA+dMdf4omqBNkJDLIzs540GrsFtHzbCtO3Hk\nQZ5FH2fnxnuionxLUKGs2/6GNKVP6r/Wm8WG4W5LGDD7Z71s+1cGOCfUhQMc\nH61nogww3MQiaNsJajphAcSUdlXdlLbjxHsq8lFY3NzuOS+ezhc6SrDgoV7h\nnRed3x1D7O7J7uJYTLF1wUj+0nsZ8snTKt2Ap2sJgykdhsi4gDMXdvELda76\nSYdg/IsdwLvj3aY6OGIUWeqzSODJqVT41m6J50W5GZ9k+mIhLO+cmUoOHj3p\nLr+nmuE8wcVRg2YbzI82MFDPmNbVZ0LiQHnzC7h24aTsgfbNIr5/hg2uX4u+\nO1Q/DNC8H2sxDnndsJrrkg4ymY8yW4X1pJIvzoADWp1FqryRwGlawxE8L28R\nd6ZQ\r\n=2xSo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGd4VXNePFnTMS36mkqgwwuyy4GDgN938gT9TD9fpRYRAiBFoN9MKeOGwPkg4XvVUIZZ4JzCnO4STpKja4dUJ8q9fA=="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.8.0_1530032504073_0.8572223903712457"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.8.1":{"name":"mobx-sync","version":"0.8.1","description":"A library to persist your mobx stores.","main":"./lib/index.js","types":"./lib/index.d.ts","typings":"./lib/index.d.ts","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^5.0.3","monofile-utilities":"^1.7.1","tslib":"^1.9.3"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^2.9.2"},"gitHead":"90647e3ec442dacfa6575340ce4d6f11fe657948","_id":"mobx-sync@0.8.1","_npmVersion":"5.10.0","_nodeVersion":"10.5.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-sZySwwff2OQkMk8qbR8FYMHWBAoRyKG4EG2w80BKKPFeOiDjHavhrkbpktee1wvX8wU575R7MvgfjsOTLVtVEQ==","shasum":"bd0f076a17dd3314debc08760549d06aaf983b4a","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.8.1.tgz","fileCount":16,"unpackedSize":44644,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbMnJ2CRA9TVsSAnZWagAA+TcP/RF2ufuEzqubo05VDqIU\njU0/Pb9XHn2RbmRocG0Pb4c3tuLI7iDq1Bg5/PM3i955jaPocafJjGgbS2tM\nmI4OjzKb0fct6xC91QYVkmWBIDATe1yxQwPuukAk/mqEQ+Exw+m4kWsrQC2k\nMxWNB3GcZXcfJTUvM7BgxTXL6aP4xmudCTEZGMyFVt3TL8JACG1y8rT9rFUe\nhqZZrLGx73wjc5uOhyCbiJjS3wQc2QqnN51Qszo8nimS0w1Dwm+38KkKqFIe\nG16fVmzoKrJXLiyOvum/+eMmoozIFw0ukeJQx/HMz6rZCVkxXk72DfC5++ym\nKOhdXkB1RbX4tRpfdfhLLRUPPU5cMG4ZotATmX3ABFK8wgrQh7M8oUB3gkJk\ncUjrvxUh9Pfmo4g56dtGPvTHUapJsrZf+0VzOa0OD+/eu3u4K+5wcsOPPvVC\n13kgjraZeIg5Eo9+MI5xArtA4V42/q5Pw4tYUEQeaSyRklNmrx++fFFSrOS9\nRLtkd1mkULvAfGne6MRIe3Ez+QYDGEWYOS8E/bitf3HWdNQvbXxiseV8/G5U\nEfblCvQLUk6KsKfs2WE6Nh6OQZkprM9kEM4C3/UdbrJx8K7eEMwz1JoZDaXO\nuZsSVJl9s+ymgWQvOMiLVkjeJa7UObCk8VVjYBhDj8gbO1GU/rimqJBScuAT\nol1e\r\n=v2bD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBHvtWZz6X8iT0WH9677VuEXxEy4qKnGIzVM5Xwe/SySAiAeTJ2YrrKAKndacaiOKVrLzXuhhjKpn7ly4rhYi0SFWA=="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.8.1_1530032758853_0.9163814341079664"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.8.2":{"name":"mobx-sync","version":"0.8.2","description":"A library to persist your mobx stores.","main":"./lib/index.js","types":"./lib/index.d.ts","typings":"./lib/index.d.ts","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"^5.0.3","monofile-utilities":"^1.7.1","tslib":"^1.9.3"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^2.9.2"},"gitHead":"90647e3ec442dacfa6575340ce4d6f11fe657948","_id":"mobx-sync@0.8.2","_npmVersion":"5.10.0","_nodeVersion":"10.5.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-74eWikI8XsETEi4tksfVA8ZJ9j7i4lHyUlhhyTdJtY9O+rLv8WdSHpd4TNdTVtRFwjsdN+mNu7OtVYvgkCeu9g==","shasum":"4e9940c9958a5e1032aa795060d92761af749dc4","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.8.2.tgz","fileCount":49,"unpackedSize":98077,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbMnL0CRA9TVsSAnZWagAAousP/R2U9MIsSPQlsdktkTUd\nK9i3kQOTrwzjXsjtPLWeZIUPmq9yOX6saCqwX4cjh+wBp/dmvXQTWTg2tHjP\n+5zDgXNtsOzKAgBtyHQwkMRa1Gs9s/hHZfdc/SPTVhfq97LEE7r7hFKkj/vt\nasyxDrwj3YSeTbUhzxvdYvn3W03mqf+hjj9M+djsw1awnWxkSeNgP9dpC7JI\nAylBCMNw94fcvEt1CoVlFHQ7Nj6pllUv22CAd3LZNbS0l1smPN0BhiEWZEIk\nYvMsV4FCOmLT+39qQhmeOnnvmi+VM4XxBMA+eFQGRTFYYoiuyyEsP7MVNUyd\nG6LYHuMDgshEu0Ft2iaPxSLLLuyDD01y86N+feq3UM46FeckSFgJ1Ng/JURF\nfxvuJfyf3RPHX3Gm+J6wAtTBdumnk4ftxUzNiKNc8Hiv2ZebmO5orVYkSFZU\nphEvbPYjvMa/I+kUBYRhq9JVJnuGXMigN4opqc1o8BBHm8nnby9CnsY+KK/O\nelx5N94X9ld3N4RtAVoAmoMGcq9ZFyleRQ+9IeCQ/VSAbeEe8UumsyOzxtHr\n+HwIzCH9+Zmz1xloUpQHKOfDrbrupwPhgRvWtMus83WsbVi8/QJ+JZMxDbcf\nuUF+IYa4aq6KlBhlzrdim+/cuVkApWeP/1dgWNzAdMkDRV4YxCM0CMvS3O1i\nJlaN\r\n=k+bd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCisRHxWeSsvb2boJFkATlJt/MkGy6MOJfw54OxV16kVQIhALfRE1l+x8Ali6Y6++d4vfu0K23FoLRlV7Pb/5nAjYzy"}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.8.2_1530032884354_0.5793883160727376"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.8.3":{"name":"mobx-sync","version":"0.8.3","description":"A library to persist your mobx stores.","main":"./lib/index.js","types":"./lib/index.d.ts","typings":"./lib/index.d.ts","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{},"peerDependencies":{"mobx":"^5.0.3","monofile-utilities":"^1.7.3","tslib":"^1.9.3"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^2.9.2"},"gitHead":"9b77f78a831e114b554d8f0614816280b7caa97d","_id":"mobx-sync@0.8.3","_npmVersion":"6.1.0","_nodeVersion":"10.6.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-Vc33w+Y6NU4wwoTNmZ1xYUgI+5NwHKjRbk/13VNqEEfP0WrisD0RYUi8seWrrIq+Q8ii4kAUgiLUOt+qSmo0bg==","shasum":"9da7de21c73de6e8eee8c03714910ae5adb8618a","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.8.3.tgz","fileCount":49,"unpackedSize":97937,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbTaKVCRA9TVsSAnZWagAAXV0P/1/mYz4JXeLj7e8MfdFH\n1OLXxZjw4ctXtJu+czBgmFkbKKHSGUc1K2/IcfHw9iwUIgyQdr3yjQcBz9eK\nCe95Mbj2x1mWgicwNsx+TobdXvy77/G+gwYosuRBpfgQZ1OwarTQC6QcWo0V\nnaN8nhBy0OIhv5MjmDdfPCvHkDZlS610B74Wt1MKLgoqelBAvcjKH1Q9MfYU\nhJsExwZoTKZ4mH9/G7npQSI8mCINUcPIcbDQGK8T3T6yMEbUkWeIY28ROOaR\nd3gVC5cemYbfKm/nE+gYMBxDMiYtazqH1qkX+hPYxlZkMYpn+LYrKKYgccJ9\nCwNwbrmBoeUuVT7SKB5CCEr26kAf9otUXD/tfF54HhinN7p5j+eoUviH/S1m\nKUVopuYGZguuRfGaxTVTzAfI8LZkvh04mfX848suSSaHm/tiFSXhoZp6EWq7\nKAUXwBtTsvVWunyNJ9wfT1dPobXPuJ31qvIOkfsC18YL4afIiHeNEg7kk1z3\n1J8O9U57ZHsK1KnNTGpzsOnNfZ6RpcSQaWTO5lOxvEZ4GTYypOu2tQGx/6Ed\nKKMWwLOXUZqzl/+1EAvK72/xFtEGJqH2iS2rycD+TIRd4nw8zkYU11qE7XmH\npCwQKWnCk9K99ZglfI+01JShsjyXS7wbsSwN/F0EV8SaNts9jQKSo71sb8kd\nyeYJ\r\n=46AE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFvmaInzKvkxt8BbRj2Rgk2xdh0jw0UhJcnEZTtyPkdRAiEAqdRNVUegZqOSk1NAWnClQELszOCdXefxqIDP7nPE7cw="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.8.3_1531814549706_0.20225569912697772"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"0.8.4":{"name":"mobx-sync","version":"0.8.4","description":"A library to persist your mobx stores.","main":"./lib/index.js","types":"./lib/index.d.ts","typings":"./lib/index.d.ts","scripts":{"prepublish":"rm -rf lib && tsc","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"author":{"name":"acrazing"},"license":"MIT","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","dependencies":{"mobx":"*","monofile-utilities":"^1.7.3","tslib":"*"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^2.9.2"},"gitHead":"ad4179adb24d8f46a281d79bcb0d8af88751d9da","_id":"mobx-sync@0.8.4","_npmVersion":"6.1.0","_nodeVersion":"10.6.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-d/P7HeQHcpFg8IsYihV1aWTVzraiuerMRkHjLGGrKpz/31MsTA1iIsfRxBUKNzYOebasPjrkUWL1D5ZAES0vqg==","shasum":"0f852c8904bebfcad59a2219786c4e7ac26eb12d","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-0.8.4.tgz","fileCount":49,"unpackedSize":97891,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbTaRhCRA9TVsSAnZWagAAEMEQAJQpy1k8yMXsamHru08q\ntKDVabg/3Zy/VuEgMuDDE5NxEjp+aZfuWM/XDPmTiww+V/kC0bG+WcC3X3ee\n85Tf1hYxBqcIqmvy+0x7z02C+m0VqT7/JjvPkwEJ4QlJ6WlEYKdTMGNxheWQ\n72bV5Pl9xTnVQTfeo4FCmOOjSw0LtuPzTFFnZS2d1QE4OE3QvpUeqWXCrfGU\nnZEktCvwpKtkD9nGP6eqYJyj1fhjikQr0cCnVs53gmqe/d7SrAP3GmfLzWt2\nsA0tGMa5JuY1+IkZ2orrkz3/8605sHIe40bovaKtORFKGUJCPWK1HE00Ddie\n6RH1rPG2V9BwoeN0KSKrLEdQxVDTGjSKx4rViZnBzR6D/VRA8HIFdtVBBzzK\nsHylKTwxeEBAUpkdy7MhLCfi/A9Ejo8oQfUiGVNp88Kff+bgEXs3qfv8owCb\nD7k3NPDXX7KtmfCQ7mkEOfXQNExxcN3fAf6Os07w7Dp54pihKAGwSEg4E6qF\nsrEp/4Kl1L1WI+xVPCOc26ft71Tr+w/o8e39Tj9GZJmLrLcD4DC9FaZMtCeW\n5kfKF3QhxZo1dHBI6Pxu5QB5786LjhDK0wYt+mGM3XZPCfT7dyUqsUXgZp5t\nVVZn4cuJoVpyZBhpdPK5gaYqR2kGYPS4a//jbEt8lxx3huiCBNHnGM3WdDH9\nAuAP\r\n=rx27\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1WBvs5D4BEwQkeruY/fS5SDlJB70BLDcAVwDpdboIMgIgUVDVY6dedcijMINWewJnIXA2tjPI9G2ZU5mXhaNa96c="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_0.8.4_1531815008945_0.9873450468102947"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"1.0.0":{"name":"mobx-sync","version":"1.0.0","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"cjs/index.js","module":"esm/index.js","types":"esm/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"clean":"rm -rf cjs esm build temp .cache","build:esm":"tsc --outDir esm --module esnext --declaration --declarationMap","build:cjs":"tsc --outDir cjs --module commonjs --declaration --declarationMap","build":"npm run clean && npm run build:esm && npm run build:cjs","tsnode":"ts-node -O '{\"resolveJsonModule\":true,\"module\":\"commonjs\",\"target\":\"es5\"}'","prepublishOnly":"npm run build","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"license":"MIT","dependencies":{"mobx":"*","monofile-utilities":"^2.0.1","tslib":"*"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^3.0.3"},"gitHead":"905799ffae8aaf3493cd5bce77698433334fb329","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@1.0.0","_npmVersion":"6.3.0","_nodeVersion":"8.11.3","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-lmmyv4KtwJsslVTz159uv0xHfbNeplBB5HB61UHnUaOJsprK9/AajbyYW6Hb/Jx1k07x6Iabd1qhy4OXtKycQA==","shasum":"64347dd384c6111e6a5a2d92196ae1d0151dc10b","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-1.0.0.tgz","fileCount":102,"unpackedSize":137231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbk0JoCRA9TVsSAnZWagAA5/wP/3nkg9b2V5BA/uVcp/fb\nqDdCup1h6CFddsUwqLQzIfBbRG3BUiWNxkeOtXvehPHGd8GWYZELl9jDY4ly\n+FArPFUSS17x1LTzxVpyovpH44qU7gvOEc/Kcer60jVzlbnv1cbgEnrLHjMQ\nSvbxNW7I24ThypL2m34L1e3ixb/V982OJ7GVj5RtklV0lKs7isXeTIG2lx6+\nQDJU4VwfkfbBzzQ3fwR/XHd0AjkxJd6qCu1yvXgPqaBuguGYhI/AhvzerPqe\nlnKnCnyioo1TQYVraHBtRNboFul2L3NObkQMtNS0mRiYzqh7lgyG8qWZXsVn\njMprVV2rmUvlOpfu+/S1soRZI9GA78NpTmxLNUeXROeOKYSAgMJdS0Cp2mLO\nK4cjEmi5ffYvPrwleRWq635UEM3Ed3httCx1bleOtlkGthWuexAJR/Le+qVl\nFsbWanh8oaMk2UjRvaVdU9QfJw6P+Do8wlFURfz1RTXe9hX0sX4tGLqSvmt9\nOyb+WpKg5FsmbwhIB60OseEeiSu8tIXNUJpxVt+iUUJtxS0or9Bm9yhn5Wuu\nwWu08DFNlhP1jtI2mvvqhvLrp+NGPu+VVLHrXiqa0VssAf6da8vqwuchZ4YY\nhyaTq0NZgy6yblkUbbJsoh5HwUQKYfQT0hxHR0vd/Jnfx6OR8Lan6G6Oq3g4\np921\r\n=U1tc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXcq+hIQrMxHTHqMOcoKb7zHCosyfY2kbWEhsYggn23gIhAOCXyjOEVC1W2A8GLnV2FAM2/ypOXS+syTkfy9Et+gWv"}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_1.0.0_1536377447974_0.6225771958198658"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"1.1.0":{"name":"mobx-sync","version":"1.1.0","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"cjs/index.js","module":"esm/index.js","types":"esm/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"clean":"rm -rf cjs esm build temp .cache","build:esm":"tsc --outDir esm --module esnext --declaration --declarationMap","build:cjs":"tsc --outDir cjs --module commonjs --declaration --declarationMap","build":"npm run clean && npm run build:esm && npm run build:cjs","tsnode":"ts-node -O '{\"resolveJsonModule\":true,\"module\":\"commonjs\",\"target\":\"es5\"}'","prepublishOnly":"npm run build","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"license":"MIT","dependencies":{"mobx":"*","monofile-utilities":"^2.0.1","tslib":"*"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","@types/react":"^16.7.17","@types/react-dom":"^16.0.11","mobx-react":"^5.4.3","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^3.2.2"},"gitHead":"5954803504cd3a4cd7d6205a72f4a47687540e15","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@1.1.0","_npmVersion":"6.5.0","_nodeVersion":"11.3.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-xjeDQzw+cxA9Aj7fSvY5N44lil7IAXdV4E0MtJYfU4xIZ6ivIgIT9JKPgBVYGQXuA/gd6bFxBrPpv/4bj/PbNA==","shasum":"0fdac1174da3da7180b5e26b46d1bb963441b9c7","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-1.1.0.tgz","fileCount":111,"unpackedSize":162402,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcFLuZCRA9TVsSAnZWagAAo3cP/iPIqCMzNi2I8cYauZTp\nx+0aRkGeH+qrmhFbk8kAtgy//1vDquzJ4KZIFByK5iVpZh/nY39neo1Srlu+\npocbkTGtFhlf9HtgtOrKFKxq1RxcE215EBbRzpi3k3eoxhd786uz+fSkIPji\npkQVcwfPlR63SLyP4V/HzJAdVvihf6Blpiw4XbdN9J4L9GVEqbYW9Lo2+yyM\n8t8gn0mVSPKeSY573is0bAupOrDLA2dIwXfbD2pnFelovnaFWXg2cSiuPpr3\nAGgeLxkSzbUQX9PVcRbzW8a3KdoxSamInXd/UWH51IgKErgYNBDR+vNbxhiy\nOamw0seOGhDp1Z9wZvkoevNE3Rj4Pekuk1hHgST7lJMBSarmX4/CXuYtczUq\nmEdtcx5JIJzBlZuFPt4WT8mKCRNCgWm3kRPliwSdSnKtVbLCUOsGDZvQK9PA\nxd9UiJ7TVLovh+DQfXbNeZo2X14RB8Kjy8wSzPSIdA6jPu2/m6zRJCBArlYA\ns2zxzdlqR1RQCHfZCGm2iVbNRBhEBOTES2DXm0SA5M+83QHgDkmHR2WcScKx\naeftLRkc2OSHkbYfhOanspEapiqyKXRz+WC7DI5Xj9XYPn2AjkAU+cK/WJAg\nP5zNQUPb8C41FKMiu9ryNCt6jV7n7Uk7+4PSxMfbVTSFP62MQdFWUJfosKAf\nxtjf\r\n=x8eh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG3r4hVA42ifYAs4F2xtw4daVZJWHu7RFesGmuFzvpNrAiEA6EJD/a956wohIRZp0/UC4NWHQbVliQ+GQ+WKH6tACxY="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_1.1.0_1544862616564_0.5722241144195954"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"1.1.1":{"name":"mobx-sync","version":"1.1.1","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"cjs/index.js","module":"esm/index.js","types":"esm/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"clean":"rm -rf cjs esm build temp .cache","build:esm":"tsc --outDir esm --module esnext --declaration --declarationMap","build:cjs":"tsc --outDir cjs --module commonjs --declaration --declarationMap","build":"npm run clean && npm run build:esm && npm run build:cjs","tsnode":"ts-node -O '{\"resolveJsonModule\":true,\"module\":\"commonjs\",\"target\":\"es5\"}'","prepublishOnly":"npm run build","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"license":"MIT","dependencies":{"mobx":"*","monofile-utilities":"^2.0.1","tslib":"*"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","@types/react":"^16.7.17","@types/react-dom":"^16.0.11","localforage":"^1.7.3","mobx-react":"^5.4.3","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^3.2.2"},"gitHead":"097846e95de46f0ba8a08a431afee46f42fac0b5","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@1.1.1","_npmVersion":"6.5.0","_nodeVersion":"11.3.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-ZEiQGCBYCdhw3TyyJLbMZudCxgoN3RRuvO/vIDHwSDkw5QqEPLP3Alk9uJXhaCLGt4Ys6jkSaADOkvCANTykfw==","shasum":"d3b4d29d56fc65927e34147f2d9be8f26ef52848","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-1.1.1.tgz","fileCount":111,"unpackedSize":162941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcFNopCRA9TVsSAnZWagAAtM8P/29HmEI4AlCol54Rw4fn\nhr9udAAN/Mn9LWz91TmBHnO5wxEM8c9HVKlHEeW/I6dhZByOn9M62X1yKVI1\npgy8fs63ZNmBFe1VwxOQfhccxJa1VjOTsfD7jLJJ4PQBbxKe0ebhYc7p44x0\nY0sIKrH17GiC3AnvivgtkqVRM/PNzuRgPph3jbhNqhpsAZ6qD84NvpyFYii6\n42wf8eiN6diyZWiVcNs0aytlss+tg9i7PMFI5DC9+rtC02+qsSC/fYlO3sZe\nP4pXz926NhOQsGOqZjBsLBS3rVLbo8T3GblgqB3qI+vjp+r7Flxtbm+2V72K\niFldlJMsw81+gBujP81drgpsQgnqJrSkWbVhnvPiCdALJVAomyD8jZon+Zwf\nOhnwclit0Q1t68Fv89EYK6HQrYTUJG7sQihKei5TZt7hwArpm2PouUEOtMnI\nuCS/dE4zuC+gJ+iQRCLtJGJUPo2QLn5fleeivt4NTemzYgDFcKs/c0kJq2Bl\nSuchzjXav4TOEmjY2AJiAsQr8Kj+AmY977kMtw3eJ/P3qbDEl3AiBbw3hn2G\nAkMRy1+8T+UHTN4AW7q6qA32a0xPYDNgG4fgrPCooy+v0mlOrvL93SkxNIDV\nGkp/z9TzhhQr/xcbCQcQIHWWYP/2riBjfKFDW//EW4+6k5jKlAIyTVcO/kFp\ntHMK\r\n=23GO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGY0y/uXlQMcE/f1KXT3KSVng1UwBVQnCJ++Zmx43w9BAiEAkI2eGtxdW7PaiKfd3SbCNi84SiWcz3EC1GiUo5EbPlQ="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_1.1.1_1544870441155_0.5087370656851513"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"1.1.2":{"name":"mobx-sync","version":"1.1.2","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"cjs/index.js","module":"esm/index.js","types":"esm/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"clean":"rm -rf cjs esm build temp .cache","build:esm":"tsc --outDir esm --module esnext --declaration --declarationMap","build:cjs":"tsc --outDir cjs --module commonjs --declaration --declarationMap","build":"npm run clean && npm run build:esm && npm run build:cjs","tsnode":"ts-node -O '{\"resolveJsonModule\":true,\"module\":\"commonjs\",\"target\":\"es5\"}'","prepublishOnly":"npm run build","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"license":"MIT","dependencies":{"monofile-utilities":"^2.0.1","tslib":"*"},"peerDependencies":{"mobx":"^5.9.0"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","@types/react":"^16.7.17","@types/react-dom":"^16.0.11","localforage":"^1.7.3","mobx-react":"^5.4.3","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^3.2.2"},"gitHead":"cc701977629c3524019a91ae0de7f44e00d79aa1","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@1.1.2","_npmVersion":"6.4.1","_nodeVersion":"8.15.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-szUlry5V76/0G1GXHlm6HPti4I++VXDvYS4I7M2QTR/5dc9Awz5wLkwBCzloskmLwRNROjtg1VQx1BEvyQ8AQQ==","shasum":"01f4d6fbbe62c75768d14875ac522af3859399da","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-1.1.2.tgz","fileCount":111,"unpackedSize":162974,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcR94XCRA9TVsSAnZWagAA4TAP+wfU4fIrSnlNNwaFALQ4\nD3zszVoiRaW1yhhnByK8lIT0FHBiXmVK/3TRkuXtSj9zckJ05tN8S7TditkJ\n2bjqXE1ImdTEqFFjSNVoT9e8YV7KBt+BxiKDL59xlmUGGfdc6EKS0x5Wul6y\nc0nT1N3/saT/vlFk+s3s2RVBlRJe4gwMNvCB/q6R7TPOukeEIyanWVIDSpDk\n4P8aOPoESyn5CFrdcLXdGKF62Tm1hzhe/S/EcYP+h8VuvYOAInmVxPAKZTCd\n4T1XDtOfhyzsI8JIyqAzF+lSMItHm9aRJyjPW5EQn2sbWccXSy4/EH3MJkec\nnkD4re2J8m+RI6NhxVdiNNj2COa5tWt0CzgbTj293TObWJjza0moNn0LPDoq\nyx3uw2M5SZTsyw/kzy3MP8dgZe133rHyXYZA85o4EcO0iMX06Byur9Evwty5\nDnWjJwmsUtfkwQCJVJxgrdE/efjLncFckjtXMCb4kjegRodaFHnNsdatsCES\nhvcO6uaIl60zHYMDHMWyMhg6rqNwg1RYuKLlom6L75ReDuSrnhXKytRzQ41+\nOlC8+Lux1BAS+Xl2aLh3WPLB+OLIxm6i6FBYneAtt/c2JqDD9PNuCTG/lsM1\ny/3Bo0Rn1ws7+Nlj/jki5fA9GaGEimOWg+N9oNSfXbhs9O5SCP9ktNKNFfsP\niTg4\r\n=poLC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC1pvUZF+FVPUHpkHTIeojtNqEF9TEPUBsC1h6PTUO0xAiEA5B2YTYgzMaeyKvsdXJqCH0R33VyyUYYm4Hm69p91T6U="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_1.1.2_1548213782336_0.9962374944490677"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"1.1.3":{"name":"mobx-sync","version":"1.1.3","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"cjs/index.js","module":"esm/index.js","types":"esm/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"clean":"rm -rf cjs esm build temp .cache","build:esm":"tsc --outDir esm --module esnext --declaration --declarationMap","build:cjs":"tsc --outDir cjs --module commonjs --declaration --declarationMap","build":"npm run clean && npm run build:esm && npm run build:cjs","tsnode":"ts-node -O '{\"resolveJsonModule\":true,\"module\":\"commonjs\",\"target\":\"es5\"}'","prepublishOnly":"npm run build","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"license":"MIT","dependencies":{"monofile-utilities":"^2.0.1","tslib":"*"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","@types/react":"^16.7.17","@types/react-dom":"^16.0.11","localforage":"^1.7.3","mobx-react":"^5.4.3","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^3.2.2"},"peerDependencies":{"mobx":"*"},"gitHead":"9f909377143ea7c29f1d1d7477987f436ff65ea2","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@1.1.3","_npmVersion":"6.4.1","_nodeVersion":"8.15.0","_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"dist":{"integrity":"sha512-TbGQkKxjhyzVyQ/VHJnGrFfe2+wp0li1L19t5S1tEJuqXvf+rFlMIQgP81Z1sK07yQEMoGV/gs+15d90kQOD5Q==","shasum":"741e4feb3e316792f248c41f883c53f0eb769cfc","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-1.1.3.tgz","fileCount":111,"unpackedSize":162969,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSAZECRA9TVsSAnZWagAAMgEQAIb+4GdigPX/3K1LMUB1\n/+t/hBd7ild9bvl90oxWWFShvef9AoHRYi3PfrI2doKCLP/+TV4sI2vL+HSh\nyo56+LWu2zVsvMcGiyW+gB87CqOK/i5nHpRpku1xciRR8mzduOFPgcggKyzG\naQlOj27KjfhJaIG+/6axZcyJTYmdmJ2t0KPZUmchQ6iSXeFOBw9SxoFluSa9\nNFXCv1dd1+AbTgoWrxx+zva/6myBI5sfgX+LSqfhw8Bn3/znLwOU2ma0sidX\nBy9N9GWfPvR3UWsgA6xtPsjbblurhJMBuAzl86MFf8YW0Oy6RfIUxaOnVfQq\nB/mvx66ERiZhWnrJFXs0VL5ZEjSL/UImh/z95zB6bNrHmQAq1du6GkVO9vmV\nCXBF9e8emLP5p+hpijlAC9/Nq5KaSfBnPPkdxDsOFnZhaQTH2IcA78nhIKIT\nOiT0Bo8SF/lWcUoCnkUNpnuyPLscJrLZc5A0YtHGCCF2IF20hipzaCdVtRUG\nTjOcCDxyIzO9wOL3x9E09UlqI5h0kaiSDN8SUQ306i+9YExf3OuAwis3JN+5\n3f97jEvMV1U1/7lON8JhSgnVmupe+gLzHjhGuxU1ojJGuTVsl1+gby6Kws0w\nLauliuYaifOQz2VwETbwlMYDcnVjQC/+/HIZGMU1i5SnER9fWoaXPJbzf3Zm\n9CKx\r\n=hzFZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2b7Yl0NaEIyImu1JYkY8OmhFKohoh9gokiyOJee48iwIhAMWROr8DdA8TUHiIoW2kUwejQpMFkCGP6dbbXpQwl7II"}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_1.1.3_1548224068177_0.7287133545947795"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"1.2.0":{"name":"mobx-sync","version":"1.2.0","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"cjs/index.js","module":"esm/index.js","types":"esm/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"clean":"rm -rf cjs esm build temp .cache","build:esm":"tsc --outDir esm --module esnext --declaration --declarationMap","build:cjs":"tsc --outDir cjs --module commonjs --declaration --declarationMap","build":"npm run clean && npm run build:esm && npm run build:cjs","tsnode":"ts-node -O '{\"resolveJsonModule\":true,\"module\":\"commonjs\",\"target\":\"es5\"}'","prepublishOnly":"npm run build","test":"mocha --require ts-node/register --slow 1000 ./src/**/*.spec.ts","test:watch":"mocha --watch --watch-extensions ts --reporter min --require ts-node/register --slow 1000 ./src/**/*.spec.ts "},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"keywords":["mobx","persist","sync","localStorage"],"license":"MIT","dependencies":{"monofile-utilities":"^2.0.1","tslib":"*"},"devDependencies":{"@types/mocha":"^5.2.3","@types/node":"^10.3.6","@types/react":"^16.7.17","@types/react-dom":"^16.0.11","localforage":"^1.7.3","mobx-react":"^5.4.3","mocha":"^5.2.0","ts-node":"^7.0.0","typescript":"^3.2.2"},"peerDependencies":{"mobx":"*"},"gitHead":"718612fa0232129ac1592e5fe6658390b09120d4","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@1.2.0","_nodeVersion":"11.6.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-4OSnJtv7cuUU0eFtqzB+HhIqTFqOOx46HWlTrvvrhhV5wbXYNxUVlVehTqFbqvyxqqCmgc5EFyT+L/PhFDQnUA==","shasum":"d7a9b599d39fa0dd3f26e1ccd893b30c378cd836","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-1.2.0.tgz","fileCount":111,"unpackedSize":164112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcXl4jCRA9TVsSAnZWagAAI54QAIMDywAN/JJcgMwub/fO\nYRMOKJIfl+9hzMGsEmvoNQ97h9wHwCkwUM6VYa4a+PzmfGE/vwNOn62I3gWf\nG6fy/JkZSiSX0zhramPPLDCl0VNlZ1Ifxm3kB/vjSJpT/GRHcHi/g8E0PXY3\nspnY3S238s5GPfG1SR+i1lD3/q5nRJHNU+lw7jawGOYl8g42BqT6xfO42gGd\nK15S5rLSaI5UKqoJzcBX6+g3AdHTeXVhwjesTjIXDqV19psDu5uYhc7iopJY\nOxANCYBERluxmakvxChNOyFysJS4mKRNw085PVE1nkmFFTtLMQybZJMa54pl\nAgd39utRvH0GTfUb1DuBo/Y8Y1D0mq9i/6jIPWfPF0qEHh8PzVpmRUj9YdWy\ntv37lsGWZod94nRDnwFITl3Njw8ntEwRyKdPE3L1Te5KKfsmDnFX/GAiKLW/\n9nn3Jz07bNwTw73YEeNX7r8e1rCI0fT1imxk7tSWni6MlBUCxtdMem4MHa3v\nPKNY4kTodXW3Ap9JCd3utwjgKqeUhRoiQG7IMhcF8JOduJB173q3p//gJapr\ns4O4GtpjudHw9XBlsNiqtgS53LMoPnZw4ahJcxTfDB1r3alKB6esuzNJmQp0\n0DnoTVejqAjoz8ioix+92xBDRYsFvbF0Qj7d1NxAZXNJUlXFfLoAxcXwg1uw\n4Mk0\r\n=XMup\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHj2jWkqI2hR+orudC8syIWgU2wkSBuCwFUcZCVNzpJ4AiBrq5bTdhhAd2zbPehcs68qOBrnFgwMV3TaxL5C501E/w=="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_1.2.0_1549688354809_0.47485467270747006"},"_hasShrinkwrap":false,"deprecated":"please use newest version for avoid duplicated packages in node_modules"},"2.0.0":{"name":"mobx-sync","version":"2.0.0","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"lib/index.js","module":"lib/index.mjs","types":"lib/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"build":"run-s clean && run-p build:cjs build:esm && run-s build:esm:rename build:cjs:rename","build:cjs":"tsc --outDir cjs --module commonjs -p tsconfig.build.json","build:cjs:rename":"run-p build:cjs:rename:js build:cjs:rename:map","build:cjs:rename:js":"find ./cjs -type f -name '*.js' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:cjs:rename:map":"find ./cjs -type f -name '*.js.map' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:esm":"tsc --outDir lib --module esnext --declaration -p tsconfig.build.json","build:esm:rename":"run-p build:esm:rename:js build:esm:rename:map","build:esm:rename:js":"find ./lib -type f -name '*.js' | sed -E 's/^(.+)\\.js$/\\1/' | xargs -I % mv %.js %.mjs","build:esm:rename:map":"find ./lib -type f -name '*.js.map' | sed -E 's/^(.+)\\.js\\.map$/\\1/' | xargs -I % mv %.js.map %.mjs.map","clean":"rm -rf cjs esm lib build temp .cache","prepublishOnly":"run-s test build","start":"npm run clean && npm run build:esm -- --watch","test":"jest"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"license":"MIT","devDependencies":{"@types/jest":"^23.3.10","husky":"^1.1.4","jest":"^23.6.0","lint-staged":"^8.0.5","npm-run-all":"^4.1.3","prettier":"^1.15.3","ts-jest":"^23.10.5","typescript":"^3.2.2"},"dependencies":{"monofile-utilities":"^4.0.0","tslib":"^1.9.3"},"peerDependencies":{"mobx":"*"},"cliVersion":"8.4.2","husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"linters":{"*.{js,jsx,ts,tsx,json,css,less,scss,md}":["prettier --write","git add"]},"ignore":["**/assets/**/*"]},"jest":{"moduleFileExtensions":["ts","tsx","js","jsx","json","node","mjs"],"cacheDirectory":".cache/jest","collectCoverage":false,"collectCoverageFrom":["<rootDir>/src/**/*.{ts,tsx}","!**/*.d.ts"],"coverageDirectory":"temp/coverage","globals":{"__DEV__":true,"ENV":{}},"testMatch":["<rootDir>/src/**/*.spec.{ts,tsx}"],"transform":{"^.+\\.tsx?$":"ts-jest"}},"gitHead":"fdba1ec5892afdcbdc68826cf46a39947c7eae9d","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@2.0.0","_nodeVersion":"11.6.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-scBK9YJiFyUFa+Vbo/u5zu1oxxaGu0cX7vKCN4NTeYYONBqLLOvYov7CTvEB51tW/spwkar98LpNv4LwolqsBg==","shasum":"dd03ef1fa9a16d04f173d6f5a0a277b546f56b42","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-2.0.0.tgz","fileCount":65,"unpackedSize":100270,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcZRvgCRA9TVsSAnZWagAAHUMP/iqq3ZZOqtLx43iTVCHX\nsO+tFWj31eF22cH7FkNQ2fTWCxfnzBGR5a/+ahuA4tx0lum7QSj1agMfZaap\nL0B9dNB1HpJ6N4F+MTfswP/khp2VHsFkdSW6u+TBFKJzS26yx/geGW1DZxK9\nq1uJ3IHFZpvGj2/KLDuuB/bHPac5Qr3UBeJhIMFgaFiw+B1JkUV1vTuDaa0k\n93gDPsCpWF3FzPpD/nJSyPel1F3ed3iMM7FsAls6ctV/CEg0udVYhwb6GTqK\nWFcISXsZhF7L5nf7Rg0cIU0woK/pht5875QVDbiS41ORUrTHDwT3+w4kLrO7\nD8+FTSmIv+QGewiwwqDjwiisWN6ywUX2EFGMCWsmCoFTN7HCIOf4bJq+ySo9\ntt8+ZJReKmMxKiTaCTPWbmZxgCMi17wwyebWQkjl81QY10Utw0m3SaVI1xS0\nq956sYoIw8HNzAZJWOKEKO+QbRoz9Tx9MQDDwF1LdPeAyxFc8nCMNDNJa4Su\n3WdE9MFdGNx8vSuTWwkndTwrRs3IGNz2zkHTnbxY1T6PnyReo5n42NNsxPJi\n3L5dU66WJglV0kJuv/KzRniHGOLxiaZQVP14JafKaog3L/QTwlHfF60TqMjl\nw9mUdRRmliQettFZMPuHP8SZ7E0Y1ZyXmH9h29ttB2WBj4KjRj70bXc5Bde1\n5Ht7\r\n=D9QT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGZfnNTwUHGt+vzwDeOliqAWQgOEeUsYwEeQ0lY0N0L2AiEApgw0Z6In3bhLU/36KgcPJCDoAG7LX4vGw2yZ1Hm3xBY="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_2.0.0_1550130144112_0.6205401817814022"},"_hasShrinkwrap":false},"2.1.0":{"name":"mobx-sync","version":"2.1.0","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"lib/index.js","module":"lib/index.mjs","types":"lib/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"build":"run-s clean && run-p build:cjs build:esm && run-s build:esm:rename build:cjs:rename","build:cjs":"tsc --outDir cjs --module commonjs -p tsconfig.json","build:cjs:rename":"run-p build:cjs:rename:js build:cjs:rename:map","build:cjs:rename:js":"find ./cjs -type f -name '*.js' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:cjs:rename:map":"find ./cjs -type f -name '*.js.map' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:esm":"tsc --outDir lib --module esnext --declaration -p tsconfig.json","build:esm:rename":"run-p build:esm:rename:js build:esm:rename:map","build:esm:rename:js":"find ./lib -type f -name '*.js' | sed -E 's/^(.+)\\.js$/\\1/' | xargs -I % mv %.js %.mjs","build:esm:rename:map":"find ./lib -type f -name '*.js.map' | sed -E 's/^(.+)\\.js\\.map$/\\1/' | xargs -I % mv %.js.map %.mjs.map","clean":"rm -rf cjs esm lib build temp .cache","prepublishOnly":"run-s test build","start":"npm run clean && npm run build:esm -- --watch","test":"jest"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"license":"MIT","devDependencies":{"@types/jest":"^24.0.13","husky":"^2.4.0","jest":"^24.8.0","lint-staged":"^8.2.0","mobx":"^5.10.1","npm-run-all":"^4.1.5","prettier":"^1.18.2","ts-jest":"^24.0.2","typescript":"^3.5.1"},"dependencies":{"monofile-utilities":"^4.5.0","tslib":"^1.9.3"},"peerDependencies":{"mobx":"*"},"cliVersion":"8.4.2","husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"linters":{"*.{js,jsx,ts,tsx,json,css,less,scss,md}":["prettier --write","git add"]},"ignore":["**/assets/**/*"]},"jest":{"moduleFileExtensions":["ts","tsx","js","jsx","json","node","mjs"],"cacheDirectory":".cache/jest","collectCoverage":false,"collectCoverageFrom":["<rootDir>/src/**/*.{ts,tsx}","!**/*.d.ts"],"coverageDirectory":"temp/coverage","globals":{"__DEV__":true,"ENV":{}},"testMatch":["<rootDir>/src/**/*.spec.{ts,tsx}"],"transform":{"^.+\\.tsx?$":"ts-jest"}},"prettier":{"printWidth":80,"tabWidth":2,"useTabs":false,"semi":true,"singleQuote":true,"jsxSingleQuote":false,"trailingComma":"all","bracketSpacing":true,"jsxBracketSameLine":false,"arrowParens":"always","endOfLine":"lf"},"gitHead":"74c5f74e3d0466499a87da9c278e75bcc78c2dc5","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@2.1.0","_nodeVersion":"11.14.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-LWO7WOmRIUKyc9zSgzfhB5sYvGKtpN1oZhWLfRKuXGd/f97/P395JgNwKBcYm+kxvhDC3UN2NAU/jXLOdzZ7qQ==","shasum":"2612b57d114815d98a29ec9a9e902c381312372c","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-2.1.0.tgz","fileCount":75,"unpackedSize":157099,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc/cbdCRA9TVsSAnZWagAAN0kP/jsm584BPiMVrarEhUnK\nRJgnV4qmag/iQgTXLcC66x8uXl+mcuIGkAQoDPmJO1GIdPMvbvEbaqYeZ4N/\nJfSum8B+AP0BpaN9QmrOajRH5NTcXAekrseZ7Q9gvk6ODwX7ndMakFF2tfpH\nuEzlQM1k763DlaJ50J3Tz5Lod6IPqoPk4q+wD+YBNk+0GVmMZWrhNdiaVI76\nKTYZPAM+RBAhztw0BVybk+e0fC0axDvYUYCpRjarncitS2csFZyWCrOYLpux\n7Uf3YNF95u7X82g7XBHYp7QYfkCFFIb+FA4s2S1G/8awJVP5EN8HH11I+G03\ns9mN53StZrYNTj2zlhdT4a4Sa64ZiLKGWkCZOtoWVttwAoBsNkxqubEOSQdh\nIOlazqIi03vFYfZ8WrBSmndMGWUAwaa99KRWxkeaUBCDqjnGW3SAx2wHLOMK\nVi1oX8FVBuxJ8wuLOyq61K4HT7tz2poGQNjYP15F0D51+3Z9f/KoRougC8Lg\nzZsu4PvQxNfDWmR7F4YVCmstH0qzvDJ/07kRc6kqolXdvwDC390iShhCjGo7\nV+9kFJk7/1kkwfPjwa4raQ7eBtOkssaovNp9dzukaWZ85onBkOqRaJTLahWb\nRqFOq47UzuMZlxDDp1YKwC0rqhS1xT10aNiWSe9Ux/MZ/z1M1GJRIGus7Ni3\nh7Zk\r\n=B7yF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHsdRwSMXaK1qTtiMpbVqDrqw4tq3QDO1Uf1vzNsMVQIAiBp782ad/w975i+yK6FQtwFgsp9dTF7bzi2UIewHKkFmw=="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_2.1.0_1560135388480_0.7910946691893721"},"_hasShrinkwrap":false,"deprecated":"bad export"},"2.1.1":{"name":"mobx-sync","version":"2.1.1","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"lib/index.js","module":"lib/index.mjs","types":"lib/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"build":"run-s clean && run-p build:cjs build:esm && run-s build:esm:rename build:cjs:rename","build:cjs":"tsc --outDir cjs --module commonjs -p tsconfig.json","build:cjs:rename":"run-p build:cjs:rename:js build:cjs:rename:map","build:cjs:rename:js":"find ./cjs -type f -name '*.js' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:cjs:rename:map":"find ./cjs -type f -name '*.js.map' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:esm":"tsc --outDir lib --module esnext --declaration -p tsconfig.json","build:esm:rename":"run-p build:esm:rename:js build:esm:rename:map","build:esm:rename:js":"find ./lib -type f -name '*.js' | sed -E 's/^(.+)\\.js$/\\1/' | xargs -I % mv %.js %.mjs","build:esm:rename:map":"find ./lib -type f -name '*.js.map' | sed -E 's/^(.+)\\.js\\.map$/\\1/' | xargs -I % mv %.js.map %.mjs.map","clean":"rm -rf cjs esm lib build temp .cache","prepublishOnly":"run-s test build","start":"npm run clean && npm run build:esm -- --watch","test":"jest"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"license":"MIT","devDependencies":{"@types/jest":"^24.0.13","husky":"^2.4.0","jest":"^24.8.0","lint-staged":"^8.2.0","mobx":"^5.10.1","npm-run-all":"^4.1.5","prettier":"^1.18.2","ts-jest":"^24.0.2","typescript":"^3.5.1"},"dependencies":{"monofile-utilities":"^4.5.0","tslib":"^1.9.3"},"peerDependencies":{"mobx":"*"},"cliVersion":"8.4.2","husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"linters":{"*.{js,jsx,ts,tsx,json,css,less,scss,md}":["prettier --write","git add"]},"ignore":["**/assets/**/*"]},"jest":{"moduleFileExtensions":["ts","tsx","js","jsx","json","node","mjs"],"cacheDirectory":".cache/jest","collectCoverage":false,"collectCoverageFrom":["<rootDir>/src/**/*.{ts,tsx}","!**/*.d.ts"],"coverageDirectory":"temp/coverage","globals":{"__DEV__":true,"ENV":{}},"testMatch":["<rootDir>/src/**/*.spec.{ts,tsx}"],"transform":{"^.+\\.tsx?$":"ts-jest"}},"prettier":{"printWidth":80,"tabWidth":2,"useTabs":false,"semi":true,"singleQuote":true,"jsxSingleQuote":false,"trailingComma":"all","bracketSpacing":true,"jsxBracketSameLine":false,"arrowParens":"always","endOfLine":"lf"},"gitHead":"a42996892bc48521bceda1830bea84637406d8e7","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@2.1.1","_nodeVersion":"11.14.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-IV3Lj8nGMcNhHwI7AUCX6aX/yCPQCKBK2HwAPfAk2dGDetf1uEn2QyA2jwBJfbSKWi1j6mnbWgCr4Tm8e39yWQ==","shasum":"cd0928cf8c1fd830828e16e8a7fa4be02b2112bb","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-2.1.1.tgz","fileCount":75,"unpackedSize":157255,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdGe0ICRA9TVsSAnZWagAAE+kQAJmH0KyodTjCiARJYBei\nX0PWW4k9BqSQOSDo34uvcXcKrEePofQQLfnwBC0OpjsyzJfbuMbQZhVqo+WL\nk3H5zwXpGWKmjAxySAbu8VLg8E2H+Du9mEBdjrjPj7+afP5e1m9UcsqN/6ZN\nJZ6Ikdx4MkXPcjnqsb6pyKaeK5IOrb0qJc5mtH6Hhx3LDju7Va/C+BAYLxcs\n2I4uPT0PIGzOIqT94tPx6m8LrKoPes6qLm9/Mze79UZ4aXqdAo20NqyH4xVg\na8Naom+OV3CQMkTlxo2fD5lTxKkcIZx8UHO5DwSWSgzwPWquoHrZldaVrXpI\nzMnlxiMsdxc+FO0dQYG6DKbT1lQCn1brpASw7Q7Qxff9xybSia5+D+nj9zgZ\nakH/TNDkQ7ZoDFTkLAsSwBPKJjhwyUFCDdJvuZxiFdUgx+a/WTUj1s2O2c8A\nHjUrZVIjj41nEn/yiVTj5T9yjrk2D3nL9WrbW5BO6K26BDnNWnWpXsMFqq+V\npN/i5ng9ihgP9+HzSuIx1hbUPQhqpb7LoWpohJexR76SwKf/1cAmICU/m/q1\n2aHQhl3XkYekIClyy4J+TzNci+Gcm9rXzMh+cH2/hYGFFmHol1nwc2LO6azX\ngydc87fYwbGxfeunEykFgaPPhxMFBN+CGbzGrX4/ipmH63iSGAjWCXVdXmow\nCLUS\r\n=tXqZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCP6PVZZNQA3SWQRT5Ut/76QVRVuR7v4S4E3SQhj43ihgIgXmhUZXaX9zDqaJf8xr4tcfFe3fAlrtOOlrIV2olSsAY="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_2.1.1_1561980167635_0.36156957876550844"},"_hasShrinkwrap":false},"2.1.2":{"name":"mobx-sync","version":"2.1.2","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"lib/index.js","module":"lib/index.mjs","types":"lib/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"build":"run-s clean && run-p build:cjs build:esm && run-s build:esm:rename build:cjs:rename","build:cjs":"tsc --outDir cjs --module commonjs -p tsconfig.json","build:cjs:rename":"run-p build:cjs:rename:js build:cjs:rename:map","build:cjs:rename:js":"find ./cjs -type f -name '*.js' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:cjs:rename:map":"find ./cjs -type f -name '*.js.map' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:esm":"tsc --outDir lib --module esnext --declaration -p tsconfig.json","build:esm:rename":"run-p build:esm:rename:js build:esm:rename:map","build:esm:rename:js":"find ./lib -type f -name '*.js' | sed -E 's/^(.+)\\.js$/\\1/' | xargs -I % mv %.js %.mjs","build:esm:rename:map":"find ./lib -type f -name '*.js.map' | sed -E 's/^(.+)\\.js\\.map$/\\1/' | xargs -I % mv %.js.map %.mjs.map","clean":"rm -rf cjs esm lib build temp .cache","prepublishOnly":"run-s test build","start":"npm run clean && npm run build:esm -- --watch","test":"jest"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"license":"MIT","devDependencies":{"@types/jest":"^24.0.15","husky":"^2.7.0","jest":"^24.8.0","lint-staged":"^8.2.1","mobx":"^5.10.1","npm-run-all":"^4.1.5","prettier":"^1.18.2","ts-jest":"^24.0.2","typescript":"^3.5.2"},"dependencies":{"monofile-utilities":"^4.5.0","tslib":"^1.10.0"},"peerDependencies":{"mobx":"*"},"cliVersion":"8.4.2","husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"linters":{"*.{js,jsx,ts,tsx,json,css,less,scss,md}":["prettier --write","git add"]},"ignore":["**/assets/**/*"]},"jest":{"moduleFileExtensions":["ts","tsx","js","jsx","json","node","mjs"],"cacheDirectory":".cache/jest","collectCoverage":false,"collectCoverageFrom":["<rootDir>/src/**/*.{ts,tsx}","!**/*.d.ts"],"coverageDirectory":"temp/coverage","globals":{"__DEV__":true,"ENV":{}},"testMatch":["<rootDir>/src/**/*.spec.{ts,tsx}"],"transform":{"^.+\\.tsx?$":"ts-jest"}},"prettier":{"printWidth":80,"tabWidth":2,"useTabs":false,"semi":true,"singleQuote":true,"jsxSingleQuote":false,"trailingComma":"all","bracketSpacing":true,"jsxBracketSameLine":false,"arrowParens":"always","endOfLine":"lf"},"gitHead":"c12ac8f78ced835ffa6d8b388e4e0599a08e84ba","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@2.1.2","_nodeVersion":"11.14.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-8xiaGEWv5L6G/t382XtlvBvvAadL5whok9C4aOZ2Mybx7F4V5nDXY23ALdr/GrgIiG9Rxio4uFzwMXgknKgw+A==","shasum":"d4c884eb64e7c6c85d777d0468bc6f17ded3764b","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-2.1.2.tgz","fileCount":75,"unpackedSize":157298,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdGe7WCRA9TVsSAnZWagAAHgUQAIkc5DuS/xdcZ7kYXNZC\n1GMheh0R+Nbrk+9uZrpxp/Y7fSZmkvQbo5JN7BirS1dy32I1Lq2qGzChMI6D\n4tRtdZCPTslI+AHL9VPXR84KhZENA0cPeqpnkXT1LsburCRqzYXd0MdWenXN\n1K6DMfYJZCFWN3IY/GZZHW7OEdpyi3A0KAneTAcPjdR3Qj1OEQZ/MW3OPzx6\n2ZIWxQqiyT5Bcr+rEZb7f9BO1+oRShrFD1n56yfDkMSOcEZdao5J993dU5tf\nKxG+0nIMgoFYucceZ6XLr46EJSm28N54LXpQLlRsfNex2UlvPSlz7wuMPulc\nH8+GIXSjJAU4tQJqAO9f0SSUtxdj1L2CM9Qa8LiRvQfAwsPjvkAYn7mAGmec\nc9ygklvSi32SXx1YMes55n0Bd9NMK2+sCWiCX9wDdY0OOhC3TIAthwhBj+le\nWO65Jb6kM3QA+F0CoCQOAuf9zU1gfdIM/1GFgmkw7rojSsIHFRyrQ6dKtJMP\nDnr1XzYdT2JgQ46SKCOihDz8TGN2zZWsTM8ptsCySwGKm78SUt97X1adwXj4\nniz98+XZEDDgAQleq6Oveyzgpq00ckBmIeLW8mIv615JLP0tSx9sGG8o5RUb\nRiqy4Ltox6q2PajveB+pch6wbJQu+8srk2IrqTw2vYLUJoL5LcTpKY3e11YC\nHWTV\r\n=6oNe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEj5fQCTNt7CcAtCGLaLS4BRZh3zH8s1PVAjRPGJ6Dl8AiEArMw5oy3y/XqTnUoiuRr4SIRiYgbqKiTRuJOfievOmj4="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_2.1.2_1561980630078_0.17120926142001291"},"_hasShrinkwrap":false},"2.1.3":{"name":"mobx-sync","version":"2.1.3","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"lib/index.js","module":"lib/index.mjs","types":"lib/index.d.ts","sideEffects":["*.css","*.less","*.scss"],"scripts":{"build":"run-s clean && run-p build:cjs build:esm && run-s build:esm:rename build:cjs:rename","build:cjs":"tsc --outDir cjs --module commonjs -p tsconfig.json","build:cjs:rename":"run-p build:cjs:rename:js build:cjs:rename:map","build:cjs:rename:js":"find ./cjs -type f -name '*.js' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:cjs:rename:map":"find ./cjs -type f -name '*.js.map' | sed -E 's/^\\.\\/cjs\\/(.+)$/\\1/' | xargs -I % mv ./cjs/% ./lib/%","build:esm":"tsc --outDir lib --module esnext --declaration -p tsconfig.json","build:esm:rename":"run-p build:esm:rename:js build:esm:rename:map","build:esm:rename:js":"find ./lib -type f -name '*.js' | sed -E 's/^(.+)\\.js$/\\1/' | xargs -I % mv %.js %.mjs","build:esm:rename:map":"find ./lib -type f -name '*.js.map' | sed -E 's/^(.+)\\.js\\.map$/\\1/' | xargs -I % mv %.js.map %.mjs.map","clean":"rm -rf cjs esm lib build temp .cache","prepublishOnly":"run-s test build","start":"npm run clean && npm run build:esm -- --watch","test":"jest"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"license":"MIT","devDependencies":{"@types/jest":"^24.0.25","husky":"^3.1.0","jest":"^24.9.0","lint-staged":"^9.5.0","mobx":"^5.10.1","npm-run-all":"^4.1.5","prettier":"^1.19.1","ts-jest":"^24.2.0","typescript":"^3.7.4"},"dependencies":{"monofile-utilities":"^4.11.1","tslib":"^1.10.0"},"peerDependencies":{"mobx":"*"},"cliVersion":"8.4.2","husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,jsx,ts,tsx,json,css,less,scss,md}":["prettier --write","git add"]},"jest":{"moduleFileExtensions":["ts","tsx","js","jsx","json","node","mjs"],"cacheDirectory":".cache/jest","collectCoverage":false,"collectCoverageFrom":["<rootDir>/src/**/*.{ts,tsx}","!**/*.d.ts"],"coverageDirectory":"temp/coverage","globals":{"__DEV__":true,"ENV":{}},"testMatch":["<rootDir>/src/**/*.spec.{ts,tsx}"],"transform":{"^.+\\.tsx?$":"ts-jest"}},"prettier":{"printWidth":80,"tabWidth":2,"useTabs":false,"semi":true,"singleQuote":true,"jsxSingleQuote":false,"trailingComma":"all","bracketSpacing":true,"jsxBracketSameLine":false,"arrowParens":"always","endOfLine":"lf"},"gitHead":"0bdf6bf1ae18089c7b0e99d3354444bf216e9c41","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@2.1.3","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-8d0AlM/7hmly2iqNEgHSGij4f6XQWgr1lQ0wBXQqwsch/cz2GO771pVQsolaczrYf2bHMtdprhN+rpyV2AmI3g==","shasum":"d584e5809e0189da60e23d6817e2f12684a80c6d","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-2.1.3.tgz","fileCount":75,"unpackedSize":163237,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeaJNbCRA9TVsSAnZWagAAhTIP/ReBlDp6d9wOzmFHYwMa\noAmFJadAuUDv8oYFv06S6TDYWdpDQhigJe3xQTAvwRfa5CZQbUfIe8e/TjAu\nd3F2YjsnlMUm/LYTmNZNNtb3eh+5CrJh2RknWZ+eLTw3iUFtrN9ce+7Xu/4t\nkUEWCReGvF7NrtIPQn+bRKXYXSncd7/9y689h9U8BX8MgEgDqHqUvDwsHn5C\nI14toLKFjMne4zF0V3p4W+GIiGejUUdT5KeIxsiO1uhNPsGG7pMuy1B4k0BZ\ns1buAoZkZOitVxuAhfkNse121v3FwQYAgRUURqP7fLmvpTBFEUQ/65O2emct\nxuf38oKw1rhVdqW5Xi93c4LWsx0cEw3h5YqXhYSQjRMuSfPxHJbyQBB8bHIj\nrAZEbQwlwGF32Y2PfZgJcSDWY5YxwW7O4udT1u8rGJMbiMXllpCfTpubZtz7\na7Evh+2YRpy+ItzyjG5yRp6HyHSTEf6zyH5KKIi5ZtbIuiZ7w4HDsJd52b9N\nkrV/lE8C3iutFr8aZoCyuHsKbPj6EO4sR0VrEa4IVFNgNb5d0TDDaktlVH8D\nBsLEGZm5STgIgYLiKzYvIEJnEOQBx9X1NlgI745HfB3pgkYMynXD8cTTab+6\nu3v+bkqw4cXWNrXZ62AD1oaV8Tg/7ervlCPxRx5icXp/e1E5ULwU6yvro2FA\nur/R\r\n=Wbfx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB+YqhrsfSX/Z8plimZ39UPZgrHiONvr1j0Pn83vGq+0AiEAwcUnrEpHLZFZJVcsrYvMSXZHuE+JxOOluspQo1wHRGg="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_2.1.3_1583911771429_0.08471325540234043"},"_hasShrinkwrap":false},"3.0.0-next.1":{"name":"mobx-sync","version":"3.0.0-next.1","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"dist/mobx-sync.cjs.js","module":"dist/mobx-sync.esm.js","types":"dist/index.d.ts","scripts":{"clean":"rm -rf dist","bundle":"rollup --config rollup.config.ts","build":"run-s clean bundle","test":"jest","prepublishOnly":"run-s test build"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"license":"MIT","devDependencies":{"@types/jest":"^26.0.0","husky":"^4.2.5","jest":"^26.0.1","lint-staged":"^10.2.10","mobx":"^5.10.1","npm-run-all":"^4.1.5","prettier":"^2.0.5","rollup":"^2.16.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-sourcemaps":"^0.6.2","rollup-plugin-typescript2":"^0.27.1","monofile-utilities":"^4.11.1","ts-jest":"^26.1.0","typescript":"^3.9.5"},"dependencies":{"tslib":"^2.0.0"},"peerDependencies":{"mobx":"*"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,jsx,ts,tsx,json,css,less,scss,md}":["prettier --write"]},"jest":{"moduleFileExtensions":["ts","tsx","js","jsx","json","node","mjs"],"cacheDirectory":".cache/jest","collectCoverage":false,"collectCoverageFrom":["<rootDir>/src/**/*.{ts,tsx}","!**/*.d.ts"],"coverageDirectory":"temp/coverage","globals":{"__DEV__":true,"ENV":{}},"testMatch":["<rootDir>/src/**/*.spec.{ts,tsx}"],"transform":{"^.+\\.tsx?$":"ts-jest"}},"prettier":{"printWidth":80,"tabWidth":2,"useTabs":false,"semi":true,"singleQuote":true,"jsxSingleQuote":false,"trailingComma":"all","bracketSpacing":true,"jsxBracketSameLine":false,"arrowParens":"always","endOfLine":"lf"},"readme":"# mobx-sync\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Facrazing%2Fmobx-sync.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Facrazing%2Fmobx-sync?ref=badge_shield)\n\n\nA library use JSON to persist your mobx stores with version control.\n\n## Features\n\n- use `JSON.stringify/JSON.parse` as the deserialize/serialize method\n- version control by use `@version` decorator\n- ignore any store node by use `@ignore` decorator\n- support React Native\n- support server side render (SSR)\n\n## Install\n\n```bash\n# by yarn\nyarn add mobx-sync\n\n# OR by npm\nnpm i -S mobx-sync\n```\n\n## Quick Start\n\n```typescript jsx\nimport { AsyncTrunk, date } from 'mobx-sync';\nimport { observable } from 'mobx';\n\nclass Store {\n  @observable\n  foo = 'bar';\n\n  @date\n  @observable\n  date = new Date();\n}\n\nconst store = new Store();\n\n// create a mobx-sync instance, it will:\n// 1. load your state from localStorage & ssr renderred state\n// 2. persist your store to localStorage automatically\n// NOTE: you do not need to call `trunk.updateStore` to persist\n// your store, it is persisted automatically!\nconst trunk = new AsyncTrunk(store, { storage: localStorage });\n\n// init the state and auto persist watcher(use mobx's autorun)\n// NOTE: it will load the persisted state first(and must), and\n// then load the state from ssr, if you pass it as the first\n// argument of `init`, just like trunk.init(__INITIAL_STATE__)\ntrunk.init().then(() => {\n  // you can do any staff now, just like:\n\n  // 1. render app with inited state:\n  ReactDOM.render(<App store={store} />);\n\n  // 2. update store, the update of the store will be persisted\n  // automatically:\n  store.foo = 'foo bar';\n});\n```\n\n## Full Example\n\nYou can see it at [example](example/index.tsx)\n\n## API Reference\n\n- [version control](#version-control)\n- [ignore control](#ignore-control)\n- [custom formatter](#custom-formatter)\n- [async trunk](#async-trunk)\n- [sync trunk](#sync-trunk)\n- [ssr](#ssr)\n\n### verson control\n\nSometimes, if your store's data structure is changed, which means\nthe persisted data is illegal to use, you can use `@version` decorator\nto mark the store node's `version`, if the persisted data's version is\ndifferent with the declared node's verson, it will be ignored.\n\nFor example, we published an application like it in [Quick Start](#quick-start),\nand then we want to change the type of `Store#foo` from `string` to `number`,\nso, the persisted string value of `foo` is illegal, and should be ignored, and\nthen, we can use `@version` to mark the `foo` field to new version to omit it:\n\n```typescript jsx\nimport { version } from 'mobx-sync';\nimport { observable } from 'mobx';\n\nclass Store {\n  @version(1)\n  @observable\n  foo = 1;\n\n  @date\n  @observable\n  date = new Date();\n}\n\n// ...\n```\n\nIf you run the new verson of the application, it will omit the persisted\nvalue of `foo`, and keep the value of `date`, so, after call `trunk.init()`,\nthe `foo` will be `1`, and `date` will be previous verson's value.\n\n**NOTE: if the new verson is strictly different with the persisted version,\nit will be ignored, or else it will be loaded as normal, so if you use it,\nwe recommend you use an progressive increasing integer to mark it, because\nyou couldn't know the version of persisted in client.**\n\n`@version` supports decorate class also, that means if any instance of the\nclass will be ignored if its verson is different. For example:\n\n```typescript jsx\nimport { version } from 'mobx-sync';\nimport { observable } from 'mobx';\n\n@version(1)\nclass C1 {\n  p1 = 1;\n}\n\nclass C2 {\n  p2 = 2;\n}\n\nclass Store {\n  c1 = new C1();\n  c2 = new C2();\n  c1_1 = new C1();\n}\n```\n\nIf the persisted version of store's `c1` && `c1_1` has different verson with\n`1`, it will be ignored.\n\n**NOTE: if you use a non-pure object as the store field, you must initialize it\nbefore you call `trunk.init`, just like `custom store class`(`C1`, `C2` upon),\n`observable.map`, `observable.array`, etc. And it must be iterable by `for..in`\ngrammar, if not, you may need to use a custom formatter(see\n[custom formatter](#custom-formatter) bellow) to serialize/de-serialize it.**\n\nSignature:\n\n```typescript jsx\nfunction version(id: number): PropertyDecorator & ClassDecorator;\n```\n\n### ignore control\n\nIf you hope some fields of your store is ignored to persist, just like the artile\nwith big size of detailed content. you can use `@ignore` decorator to mark it as\nignored, it will not be loaded (even if it is persisted in previous version) when\ninit, and its change will not trigger the persist action.\n\nFor example: if we want to skip the `date` field in Quick Start, we just need to\nuse `@ignore` to decorate it:\n\n```typescript jsx\nimport { date, ignore } from 'mobx-sync';\nimport { observable } from 'mobx';\n\nclass Store {\n  @observable\n  foo = 'bar';\n\n  @ignore\n  @date\n  @observable\n  date = new Date();\n}\n```\n\n`@ignore` only supports decorate property.\n\nSignature:\n\n```typescript jsx\n/**\n * works in web environment only\n */\nfunction ignore(target: any, key: string): void;\nnamespace ignore {\n  /**\n   * works in both web and ssr environment\n   */\n  function ssr(target: any, key: string): void;\n\n  /**\n   * works in ssr environment only\n   */\n  function ssrOnly(target: any, key: string): void;\n}\n```\n\n### custom formatter\n\nSometimes, your store node is not pure object, just like `Set`, `Map`,\n`observable.map<number, Date>`, etc, you may need to use custom formatter\n(`@format`) to parse/stringify the data/value.\n\nFor example, we use `Set<Date>` as a field:\n\n```typescript jsx\nimport { format } from 'mobx-sync';\nimport { observable } from 'mobx';\n\nclass Store {\n  @format(\n    (data: string[]) => new Set(data.map((d) => new Date(d))),\n    (value: Set<Date>) => Array.from(value, (v) => v.toISOString()),\n  )\n  @observable\n  allowDates = new Set<Date>();\n}\n```\n\nBuilt-in formatters:\n\n- `@date`: parse/stringify date\n- `@regexp`: parse/stringify regexp\n\nSignature:\n\n```typescript jsx\n/**\n * define a custom stringify/parse function for a field, it is useful for\n * builtin objects, just like Date, TypedArray, etc.\n *\n * @example\n *\n * // this example shows how to format a date to timestamp,\n * // and load it from serialized string,\n * // if the date is invalid, will not persist it.\n * class SomeStore {\n *   @format<Date, number>(\n *      (timestamp) => new Date(timestamp),\n *      (date) => date ? +date : void 0,\n *   )\n *   dateField = new Date()\n * }\n *\n * @param deserializer - the function to parse the serialized data to\n *      custom object, the first argument is the data serialized by\n *      `serializer`, and the second is the current value of the field.\n * @param serializer - the function to serialize the object to pure js\n *      object or any else could be stringify safely by `JSON.stringify`.\n */\nfunction format<I, O = I>(\n  deserializer: (persistedValue: O, currentValue: I) => I,\n  serializer?: (value: I) => O,\n): PropertyDecorator;\n\nfunction date(target: any, key: string): void;\n\nfunction regexp(target: any, key: string): void;\n```\n\n### SSR\n\nSometimes, we hope to use mobx in SSR(Server-Side Rendering), there is no\nstandard way to stringify/load mobx store to/from html template, mobx-sync\nmaybe one.\n\nAt first, you need to call `config({ ssr: true })` before call any decorator\nof mobx-sync. And then, you can use `JSON.stringify` to stringify your state\nto html template, and then use `trunk.init` or `parseStore` to load it to\nyour store.\n\nFor example:\n\n```typescript jsx\n// store.ts\nimport { ignore } from 'mobx-sync'\nimport { observable } from 'mobx'\n\nexport Store {\n  @observable userId = 0\n\n  @ignore.ssr\n  users = observable.map()\n}\n```\n\n```typescript jsx\n// server.ts\nimport { config } from 'mobx-sync';\n\nconfig({ ssr: true });\n\nimport { Store } from './store';\n\napp.get('/', (_, res) => {\n  const store = new Store();\n\n  res.end(`<!DOCTYPE html>\n  <html>\n  <body>\n  <div id=root>${renderToString(<App store={store} />)}</div>\n  <script>var __INITIAL_STATE__ = ${JSON.stringify(store).replace(\n    /</g,\n    '\\\\u003c',\n  )}</script>\n  </body>\n  </html>`);\n});\n```\n\n```typescript jsx\n// client.ts\nimport { AsyncTrunk } from 'mobx-sync';\nimport { Store } from './store';\n\nconst store = new Store();\nconst trunk = new AsyncTrunk(store);\n\ntrunk.init(__INITIAL_STATE__).then(() => {\n  ReactDOM.render(<App store={store} />, document.querySelector('#root'));\n});\n```\n\n**NOTE: if you do not want to use a trunk to persist/load state from\nlocalStorage, just want to use mobx-sync to load SSR state, you can use\n`parseStore(store, state, true)` to load it.**\n\nFor example:\n\n```typescript jsx\n// client.ts\nimport { parseStore } from 'mobx-sync';\nimport { Store } from './store';\n\nconst store = new Store();\n\nparseStore(store, __INITIAL_STATE__, true);\n\nReactDOM.render(<App />, document.querySelector('#root'));\n```\n\nSignature:\n\n```typescript jsx\ninterface Options {\n  ssr: boolean;\n}\n\nfunction config(options: Partial<Options>): void;\n\nfunction parseStore(store: any, data: any, isFromServer: boolean): void;\n```\n\n### async trunk\n\n### sync trunk\n\nBoth of `AsyncTrunk` and `SyncTrunk` is the class to auto load/persist\nstore to storage, the difference between them is the `AsyncTrunk` runs\nasynchronously and `SyncTrunk` runs synchronously.\n\nSignature:\n\n```typescript jsx\n// this is a subset of `Storage`\ninterface SyncStorage {\n  getItem(key: string): string | null;\n  setItem(key: string, value: string): void;\n  removeItem(key: string): void;\n}\n\n// this is a subset of `ReactNative.AsyncStorage`\ninterface AsyncStorage {\n  getItem(key: string): Promise<string | null>;\n  setItem(key: string, value: string): Promise<void>;\n  removeItem(key: string): Promise<void>;\n}\n\n/**\n * sync trunk initial options\n */\nexport interface SyncTrunkOptions {\n  /**\n   * storage, SyncStorage only\n   * default is localStorage\n   */\n  storage?: SyncStorage;\n  /**\n   * the storage key, default is KeyDefaultKey\n   */\n  storageKey?: string;\n  /**\n   * the delay time, default is 0\n   */\n  delay?: number;\n\n  /**\n   * error callback\n   * @param error\n   */\n  onError?: (error: any) => void;\n}\n\n/**\n * the async trunk initial options\n */\nexport interface AsyncTrunkOptions {\n  /**\n   * storage, both AsyncStorage and SyncStorage is supported,\n   * default is localStorage\n   */\n  storage?: AsyncStorage | SyncStorage;\n  /**\n   * the custom persisted key in storage,\n   * default is KeyDefaultKey\n   */\n  storageKey?: string;\n  /**\n   * delay milliseconds for run the reaction for mobx,\n   * default is 0\n   */\n  delay?: number;\n\n  /**\n   * error callback\n   * @param error\n   */\n  onError?: (error: any) => void;\n}\n\nclass AsyncTrunk {\n  disposer: () => void;\n  constructor(store: any, options?: AsyncTrunkOptions);\n  init(initialState?: any): Promise<void>;\n  // call persist manually\n  persist(): Promise<void>;\n  // clear persisted state in storage\n  clear(): Promise<void>;\n  // change the store instance\n  updateStore(): Promise<void>;\n}\n\nclass SyncTrunk {\n  disposer: () => void;\n  constructor(store: any, options?: SyncTrunkOptions);\n  init(initialState?: any): void;\n  // call persist manually\n  persist(): void;\n  // clear persisted state in storage\n  clear(): void;\n  // change the store instance\n  updateStore(): void;\n}\n```\n\n## License\n\n```\nThe MIT License (MIT)\n\nCopyright (c) 2016 acrazing\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n\n\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Facrazing%2Fmobx-sync.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Facrazing%2Fmobx-sync?ref=badge_large)","readmeFilename":"README.md","gitHead":"b32a869251f949be15698f57320cea19866b6c65","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@3.0.0-next.1","_nodeVersion":"12.16.1","_npmVersion":"6.14.5","dist":{"integrity":"sha512-vli/9L3X8b8RS28TvlYlM+eQWKWCqGLQUmCH2LKL1vPS8QcWiZ99tHtQjtjalQTouoZwZH6vivbSJtCJKyZOtQ==","shasum":"0f975a5beffdd8785eb0c561c19279f044a489cf","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-3.0.0-next.1.tgz","fileCount":31,"unpackedSize":138337,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe52urCRA9TVsSAnZWagAAj0IQAIn9cq+odaN9FlrLsVNC\nGKuExVTV9ukd4FLrutS2F76SyhU2HTWE6VOCCP2uqTeYLfLpGRD0CwaQ0h4u\nuVFtozJJi0RDFb1evE84qqav63hxizYn5MbHB1mZp3j19O5zjJPdKCfoIqx/\nCfQXIQORnKdD2A9/w/GnEdHWsSlxWkEWFSQ66GW7uEOZWNwriP01B15LYFAI\nSQX7XNuCuOOBSbftlPK9WxRHyabbGhOneHEtXEohKUcygplsw9QmD7oaoMb4\nPxT+zTWVKir0I85QFxx5N49TY2fo2mfySPteb1KG0wrQYCxHfGzmOmr9E3J6\nBamxu4REYZzzsxinliYFea+A/2wWEL2i2zLe/TuUSeBkKaTJhlbg9Yex4MP6\n+lG6/iK+0UYkPGE1xyFRhT5yTUgW/7Av4cuHqQldEPYRTNecbHBQzjttOMLP\n2hjfYLbCmbMTq10LX5rIF3DG+4QN0iPvuBxHhokm/vt4He2Aiz2FT/EFXN+8\nwi7pZqcUU3GcqslAlEwXm5F7n7P5sUcQHRjDouSTSKNPFp1YPvJ6fxmftRi7\n3Wasq0DCDsHcdTfN0Nir9pg/ShrNiaEKAHN6brBuz/ME7XiEnY+WZjKgPSuF\nhz+tkKcd1Q4OE0ver3+ewbMkxEBXwCsGwus/vvhkh7yjFQ3of4ZKUQ3lpEAq\nf99G\r\n=IxqU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH6xDX0xcPCTh9jaf5lt2Vv6M5uLVxbo96d9KVR3flJRAiEAxaxLCC+UKLTJyQTjULGA08o8fkyGYcfH+jvZNMtYYqE="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_3.0.0-next.1_1592224683026_0.8930690845954539"},"_hasShrinkwrap":false},"3.0.0":{"name":"mobx-sync","version":"3.0.0","description":"A library to persist your mobx stores.","author":{"name":"acrazing","email":"joking.young@gmail.com"},"main":"dist/mobx-sync.cjs.js","module":"dist/mobx-sync.esm.js","types":"dist/index.d.ts","scripts":{"clean":"rm -rf dist","bundle":"rollup --config rollup.config.ts","build":"run-s clean bundle","test":"jest","prepublishOnly":"run-s test build"},"repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"license":"MIT","devDependencies":{"@rollup/plugin-commonjs":"^13.0.0","@types/jest":"^26.0.0","husky":"^4.2.5","jest":"^26.0.1","lint-staged":"^10.2.10","mobx":"^5.10.1","monofile-utilities":"^4.11.1","npm-run-all":"^4.1.5","prettier":"^2.0.5","rollup":"^2.16.1","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-sourcemaps":"^0.6.2","rollup-plugin-typescript2":"^0.27.1","ts-jest":"^26.1.0","typescript":"^3.9.5"},"dependencies":{"tslib":"^2.0.0"},"peerDependencies":{"mobx":"*"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,jsx,ts,tsx,json,css,less,scss,md}":["prettier --write"]},"jest":{"moduleFileExtensions":["ts","tsx","js","jsx","json","node","mjs"],"cacheDirectory":".cache/jest","collectCoverage":false,"collectCoverageFrom":["<rootDir>/src/**/*.{ts,tsx}","!**/*.d.ts"],"coverageDirectory":"temp/coverage","globals":{"__DEV__":true,"ENV":{}},"testMatch":["<rootDir>/src/**/*.spec.{ts,tsx}"],"transform":{"^.+\\.tsx?$":"ts-jest"}},"prettier":{"printWidth":80,"tabWidth":2,"useTabs":false,"semi":true,"singleQuote":true,"jsxSingleQuote":false,"trailingComma":"all","bracketSpacing":true,"jsxBracketSameLine":false,"arrowParens":"always","endOfLine":"lf"},"gitHead":"ea252af466b91478823d31079fb12abd89db0f06","bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"homepage":"https://github.com/acrazing/mobx-sync#readme","_id":"mobx-sync@3.0.0","_nodeVersion":"12.16.1","_npmVersion":"6.14.5","dist":{"integrity":"sha512-j8DbDB58VfaNH8n+cIIj8yPZjPWOdPz1cUtpaI2NHKzArtZ3S7GZD9MbQJyU7rBIq5+ajfLzuEKF0ruynYPj4A==","shasum":"fbbd267442757cf264ee2124730cf57a0f6bd479","tarball":"https://registry.npmjs.org/mobx-sync/-/mobx-sync-3.0.0.tgz","fileCount":31,"unpackedSize":132461,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe53C0CRA9TVsSAnZWagAA+3gQAIvG25tTgnOPBGegj8C3\ngAwJUz3f6kG8sgWAcarTlL/k9h2WAJl/OPYD4m8eyctVJpM3W5vd4GKNUOA5\n2YcnQV1/6BgWEkZMv9kdBoykrRxqbpvXBkaRd1MCtf/LeQaVmh4UFIzzLA0I\nqW8wDEJ9KeozC+TcGPTqLVICyCblmKo4jUxgZGCIGpZN927mQQeo7rbZA2u4\nf/uVVwcSuxmehFF6IPpvIzQxZ69g0uqsKCcOt8jsJHdGeo0e+OyMOeIuTvv/\nNooJi+JkSJHPR55CPmTinylcCRwsNRegw3hx0MjLef7B2T5x/ad/hKCK85gp\nwnv4aH3ZrfiRZcSpFigX3sfEHrBwpdFr3ChT9wMRjJEL9LN9HvPo62IkxF93\ndOZe333GuJ2RaLwejqADOQmccQYhxjeGUt+U/BLNZAV3xGyd66uSdiM4yMzY\nwbFnCffcTg3XOzjkdi43Esm6fjwzM7+R2uM0fUJhyAzQXcdO0h4W6Bzv0Ocf\nmRCsCma80aWhUf2OYerZEpfSeZxTJVNuflHDJXQb7QGtZHvwpLEfrtq4/Ht0\nHBLG2Hmb1a4vtpuXgcoZQ3axZbfz3XLgUV+YFwpx1wRYvFrZpcGP3ZVlb9TW\nf1fncjY+0vxrpGH2b4Autw18FcddOiMy1cbUh4jloZaWqXDlwh1gLBPrb7Fd\nsGS2\r\n=nmTj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID38wMyLgcIogNHTYQS2DMaywqGqKsjGIeoTAMpBFHLqAiEAqLpUHWMp7CEhZL2xFi3bLimN/zwTf+WTAvGoUOGSo2k="}]},"maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"_npmUser":{"name":"acrazing","email":"joking.young@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-sync_3.0.0_1592225972452_0.6000638520503303"},"_hasShrinkwrap":false}},"readme":"# mobx-sync\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Facrazing%2Fmobx-sync.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Facrazing%2Fmobx-sync?ref=badge_shield)\n\n\nA library use JSON to persist your mobx stores with version control.\n\n## Features\n\n- use `JSON.stringify/JSON.parse` as the deserialize/serialize method\n- version control by use `@version` decorator\n- ignore any store node by use `@ignore` decorator\n- support React Native\n- support server side render (SSR)\n\n## Install\n\n```bash\n# by yarn\nyarn add mobx-sync\n\n# OR by npm\nnpm i -S mobx-sync\n```\n\n## Quick Start\n\n```typescript jsx\nimport { AsyncTrunk, date } from 'mobx-sync';\nimport { observable } from 'mobx';\n\nclass Store {\n  @observable\n  foo = 'bar';\n\n  @date\n  @observable\n  date = new Date();\n}\n\nconst store = new Store();\n\n// create a mobx-sync instance, it will:\n// 1. load your state from localStorage & ssr renderred state\n// 2. persist your store to localStorage automatically\n// NOTE: you do not need to call `trunk.updateStore` to persist\n// your store, it is persisted automatically!\nconst trunk = new AsyncTrunk(store, { storage: localStorage });\n\n// init the state and auto persist watcher(use mobx's autorun)\n// NOTE: it will load the persisted state first(and must), and\n// then load the state from ssr, if you pass it as the first\n// argument of `init`, just like trunk.init(__INITIAL_STATE__)\ntrunk.init().then(() => {\n  // you can do any staff now, just like:\n\n  // 1. render app with inited state:\n  ReactDOM.render(<App store={store} />);\n\n  // 2. update store, the update of the store will be persisted\n  // automatically:\n  store.foo = 'foo bar';\n});\n```\n\n## Full Example\n\nYou can see it at [example](example/index.tsx)\n\n## API Reference\n\n- [version control](#version-control)\n- [ignore control](#ignore-control)\n- [custom formatter](#custom-formatter)\n- [async trunk](#async-trunk)\n- [sync trunk](#sync-trunk)\n- [ssr](#ssr)\n\n### verson control\n\nSometimes, if your store's data structure is changed, which means\nthe persisted data is illegal to use, you can use `@version` decorator\nto mark the store node's `version`, if the persisted data's version is\ndifferent with the declared node's verson, it will be ignored.\n\nFor example, we published an application like it in [Quick Start](#quick-start),\nand then we want to change the type of `Store#foo` from `string` to `number`,\nso, the persisted string value of `foo` is illegal, and should be ignored, and\nthen, we can use `@version` to mark the `foo` field to new version to omit it:\n\n```typescript jsx\nimport { version } from 'mobx-sync';\nimport { observable } from 'mobx';\n\nclass Store {\n  @version(1)\n  @observable\n  foo = 1;\n\n  @date\n  @observable\n  date = new Date();\n}\n\n// ...\n```\n\nIf you run the new verson of the application, it will omit the persisted\nvalue of `foo`, and keep the value of `date`, so, after call `trunk.init()`,\nthe `foo` will be `1`, and `date` will be previous verson's value.\n\n**NOTE: if the new verson is strictly different with the persisted version,\nit will be ignored, or else it will be loaded as normal, so if you use it,\nwe recommend you use an progressive increasing integer to mark it, because\nyou couldn't know the version of persisted in client.**\n\n`@version` supports decorate class also, that means if any instance of the\nclass will be ignored if its verson is different. For example:\n\n```typescript jsx\nimport { version } from 'mobx-sync';\nimport { observable } from 'mobx';\n\n@version(1)\nclass C1 {\n  p1 = 1;\n}\n\nclass C2 {\n  p2 = 2;\n}\n\nclass Store {\n  c1 = new C1();\n  c2 = new C2();\n  c1_1 = new C1();\n}\n```\n\nIf the persisted version of store's `c1` && `c1_1` has different verson with\n`1`, it will be ignored.\n\n**NOTE: if you use a non-pure object as the store field, you must initialize it\nbefore you call `trunk.init`, just like `custom store class`(`C1`, `C2` upon),\n`observable.map`, `observable.array`, etc. And it must be iterable by `for..in`\ngrammar, if not, you may need to use a custom formatter(see\n[custom formatter](#custom-formatter) bellow) to serialize/de-serialize it.**\n\nSignature:\n\n```typescript jsx\nfunction version(id: number): PropertyDecorator & ClassDecorator;\n```\n\n### ignore control\n\nIf you hope some fields of your store is ignored to persist, just like the artile\nwith big size of detailed content. you can use `@ignore` decorator to mark it as\nignored, it will not be loaded (even if it is persisted in previous version) when\ninit, and its change will not trigger the persist action.\n\nFor example: if we want to skip the `date` field in Quick Start, we just need to\nuse `@ignore` to decorate it:\n\n```typescript jsx\nimport { date, ignore } from 'mobx-sync';\nimport { observable } from 'mobx';\n\nclass Store {\n  @observable\n  foo = 'bar';\n\n  @ignore\n  @date\n  @observable\n  date = new Date();\n}\n```\n\n`@ignore` only supports decorate property.\n\nSignature:\n\n```typescript jsx\n/**\n * works in web environment only\n */\nfunction ignore(target: any, key: string): void;\nnamespace ignore {\n  /**\n   * works in both web and ssr environment\n   */\n  function ssr(target: any, key: string): void;\n\n  /**\n   * works in ssr environment only\n   */\n  function ssrOnly(target: any, key: string): void;\n}\n```\n\n### custom formatter\n\nSometimes, your store node is not pure object, just like `Set`, `Map`,\n`observable.map<number, Date>`, etc, you may need to use custom formatter\n(`@format`) to parse/stringify the data/value.\n\nFor example, we use `Set<Date>` as a field:\n\n```typescript jsx\nimport { format } from 'mobx-sync';\nimport { observable } from 'mobx';\n\nclass Store {\n  @format(\n    (data: string[]) => new Set(data.map((d) => new Date(d))),\n    (value: Set<Date>) => Array.from(value, (v) => v.toISOString()),\n  )\n  @observable\n  allowDates = new Set<Date>();\n}\n```\n\nBuilt-in formatters:\n\n- `@date`: parse/stringify date\n- `@regexp`: parse/stringify regexp\n\nSignature:\n\n```typescript jsx\n/**\n * define a custom stringify/parse function for a field, it is useful for\n * builtin objects, just like Date, TypedArray, etc.\n *\n * @example\n *\n * // this example shows how to format a date to timestamp,\n * // and load it from serialized string,\n * // if the date is invalid, will not persist it.\n * class SomeStore {\n *   @format<Date, number>(\n *      (timestamp) => new Date(timestamp),\n *      (date) => date ? +date : void 0,\n *   )\n *   dateField = new Date()\n * }\n *\n * @param deserializer - the function to parse the serialized data to\n *      custom object, the first argument is the data serialized by\n *      `serializer`, and the second is the current value of the field.\n * @param serializer - the function to serialize the object to pure js\n *      object or any else could be stringify safely by `JSON.stringify`.\n */\nfunction format<I, O = I>(\n  deserializer: (persistedValue: O, currentValue: I) => I,\n  serializer?: (value: I) => O,\n): PropertyDecorator;\n\nfunction date(target: any, key: string): void;\n\nfunction regexp(target: any, key: string): void;\n```\n\n### SSR\n\nSometimes, we hope to use mobx in SSR(Server-Side Rendering), there is no\nstandard way to stringify/load mobx store to/from html template, mobx-sync\nmaybe one.\n\nAt first, you need to call `config({ ssr: true })` before call any decorator\nof mobx-sync. And then, you can use `JSON.stringify` to stringify your state\nto html template, and then use `trunk.init` or `parseStore` to load it to\nyour store.\n\nFor example:\n\n```typescript jsx\n// store.ts\nimport { ignore } from 'mobx-sync'\nimport { observable } from 'mobx'\n\nexport Store {\n  @observable userId = 0\n\n  @ignore.ssr\n  users = observable.map()\n}\n```\n\n```typescript jsx\n// server.ts\nimport { config } from 'mobx-sync';\n\nconfig({ ssr: true });\n\nimport { Store } from './store';\n\napp.get('/', (_, res) => {\n  const store = new Store();\n\n  res.end(`<!DOCTYPE html>\n  <html>\n  <body>\n  <div id=root>${renderToString(<App store={store} />)}</div>\n  <script>var __INITIAL_STATE__ = ${JSON.stringify(store).replace(\n    /</g,\n    '\\\\u003c',\n  )}</script>\n  </body>\n  </html>`);\n});\n```\n\n```typescript jsx\n// client.ts\nimport { AsyncTrunk } from 'mobx-sync';\nimport { Store } from './store';\n\nconst store = new Store();\nconst trunk = new AsyncTrunk(store);\n\ntrunk.init(__INITIAL_STATE__).then(() => {\n  ReactDOM.render(<App store={store} />, document.querySelector('#root'));\n});\n```\n\n**NOTE: if you do not want to use a trunk to persist/load state from\nlocalStorage, just want to use mobx-sync to load SSR state, you can use\n`parseStore(store, state, true)` to load it.**\n\nFor example:\n\n```typescript jsx\n// client.ts\nimport { parseStore } from 'mobx-sync';\nimport { Store } from './store';\n\nconst store = new Store();\n\nparseStore(store, __INITIAL_STATE__, true);\n\nReactDOM.render(<App />, document.querySelector('#root'));\n```\n\nSignature:\n\n```typescript jsx\ninterface Options {\n  ssr: boolean;\n}\n\nfunction config(options: Partial<Options>): void;\n\nfunction parseStore(store: any, data: any, isFromServer: boolean): void;\n```\n\n### async trunk\n\n### sync trunk\n\nBoth of `AsyncTrunk` and `SyncTrunk` is the class to auto load/persist\nstore to storage, the difference between them is the `AsyncTrunk` runs\nasynchronously and `SyncTrunk` runs synchronously.\n\nSignature:\n\n```typescript jsx\n// this is a subset of `Storage`\ninterface SyncStorage {\n  getItem(key: string): string | null;\n  setItem(key: string, value: string): void;\n  removeItem(key: string): void;\n}\n\n// this is a subset of `ReactNative.AsyncStorage`\ninterface AsyncStorage {\n  getItem(key: string): Promise<string | null>;\n  setItem(key: string, value: string): Promise<void>;\n  removeItem(key: string): Promise<void>;\n}\n\n/**\n * sync trunk initial options\n */\nexport interface SyncTrunkOptions {\n  /**\n   * storage, SyncStorage only\n   * default is localStorage\n   */\n  storage?: SyncStorage;\n  /**\n   * the storage key, default is KeyDefaultKey\n   */\n  storageKey?: string;\n  /**\n   * the delay time, default is 0\n   */\n  delay?: number;\n\n  /**\n   * error callback\n   * @param error\n   */\n  onError?: (error: any) => void;\n}\n\n/**\n * the async trunk initial options\n */\nexport interface AsyncTrunkOptions {\n  /**\n   * storage, both AsyncStorage and SyncStorage is supported,\n   * default is localStorage\n   */\n  storage?: AsyncStorage | SyncStorage;\n  /**\n   * the custom persisted key in storage,\n   * default is KeyDefaultKey\n   */\n  storageKey?: string;\n  /**\n   * delay milliseconds for run the reaction for mobx,\n   * default is 0\n   */\n  delay?: number;\n\n  /**\n   * error callback\n   * @param error\n   */\n  onError?: (error: any) => void;\n}\n\nclass AsyncTrunk {\n  disposer: () => void;\n  constructor(store: any, options?: AsyncTrunkOptions);\n  init(initialState?: any): Promise<void>;\n  // call persist manually\n  persist(): Promise<void>;\n  // clear persisted state in storage\n  clear(): Promise<void>;\n  // change the store instance\n  updateStore(): Promise<void>;\n}\n\nclass SyncTrunk {\n  disposer: () => void;\n  constructor(store: any, options?: SyncTrunkOptions);\n  init(initialState?: any): void;\n  // call persist manually\n  persist(): void;\n  // clear persisted state in storage\n  clear(): void;\n  // change the store instance\n  updateStore(): void;\n}\n```\n\n## License\n\n```\nThe MIT License (MIT)\n\nCopyright (c) 2016 acrazing\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n\n\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Facrazing%2Fmobx-sync.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Facrazing%2Fmobx-sync?ref=badge_large)","maintainers":[{"name":"acrazing","email":"joking.young@gmail.com"}],"time":{"modified":"2022-05-09T14:06:36.152Z","created":"2017-11-28T11:36:07.315Z","0.0.1":"2017-11-28T11:36:07.315Z","0.1.0":"2018-01-06T09:49:56.183Z","0.1.1":"2018-01-25T03:51:04.618Z","0.1.2":"2018-01-25T03:52:09.430Z","0.1.3":"2018-01-28T05:53:51.373Z","0.1.4":"2018-01-31T13:16:19.950Z","0.2.0":"2018-02-04T14:36:21.537Z","0.3.0":"2018-04-10T04:31:08.360Z","0.4.0":"2018-04-10T08:03:01.281Z","0.4.1":"2018-04-16T14:14:07.338Z","0.5.0":"2018-04-22T03:14:38.560Z","0.6.0":"2018-05-11T14:14:19.570Z","0.7.0":"2018-06-26T16:48:36.355Z","0.8.0":"2018-06-26T17:01:44.171Z","0.8.1":"2018-06-26T17:05:58.921Z","0.8.2":"2018-06-26T17:08:04.424Z","0.8.3":"2018-07-17T08:02:29.818Z","0.8.4":"2018-07-17T08:10:09.011Z","1.0.0":"2018-09-08T03:30:48.152Z","1.1.0":"2018-12-15T08:30:16.721Z","1.1.1":"2018-12-15T10:40:41.276Z","1.1.2":"2019-01-23T03:23:02.523Z","1.1.3":"2019-01-23T06:14:28.281Z","1.2.0":"2019-02-09T04:59:14.921Z","2.0.0":"2019-02-14T07:42:24.373Z","2.1.0":"2019-06-10T02:56:28.625Z","2.1.1":"2019-07-01T11:22:47.736Z","2.1.2":"2019-07-01T11:30:30.227Z","2.1.3":"2020-03-11T07:29:31.599Z","3.0.0-next.1":"2020-06-15T12:38:03.182Z","3.0.0":"2020-06-15T12:59:32.601Z"},"homepage":"https://github.com/acrazing/mobx-sync#readme","repository":{"type":"git","url":"git+https://github.com/acrazing/mobx-sync.git"},"author":{"name":"acrazing","email":"joking.young@gmail.com"},"bugs":{"url":"https://github.com/acrazing/mobx-sync/issues"},"license":"MIT","readmeFilename":"README.md"}