{"_id":"@anderjason/observable","_rev":"17-0ed2e96e490301af527cf7441747fc46","name":"@anderjason/observable","dist-tags":{"latest":"3.3.4"},"versions":{"1.0.0":{"name":"@anderjason/observable","version":"1.0.0","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.0","@anderjason/util":"^1.0.0","typescript":"^4.0.2"},"devDependencies":{},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"7a88c412f09daea90101ecca37add75a4051d22d","_id":"@anderjason/observable@1.0.0","_nodeVersion":"12.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-tTc8TEFz6usSYkZ5egK569FEe8Kg/ZhQOmiwcssVzCxtaMdYr+mIFZt18q0gFYfVGzuMFg5BxuD0X0fCsa1SUw==","shasum":"06fd9cc2001d05e36a12f351d4bae8bf9153abd8","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-1.0.0.tgz","fileCount":36,"unpackedSize":59472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfVGzrCRA9TVsSAnZWagAA+AgP/ik0AfeBUmAO+rCosyeO\ntSbi4A65bcNmqlheOMEZP7rB6/5o9vGAyW7G2WU6/xh7WbjHIkcYbvu6sq+W\nMoVNrxqorh18LvplciEcp/NbQSdvERFSpnbk7QINW7QsF4MmEyvHOd3kzi8h\nSL+p02p4FR67NVJIV/N/ix2aw4u0Yf50y6KGpiWUDVnTQwvAEd1pI+8ni6ow\nng2B/p8oByAXIHdZ/oZEt58sweMy0385jD9HDpRubBzKhVtMdyXxVrM84buw\nHcKzoIfoGkaJNI21z/WJH+nqX4MmDDElovqxMdMXw+3kxawOrtRoew5QodW2\nUqrfONS8vb10NVowbcOpdm0fBz9vjmRr6t61x26C0FwysSjXzMoP5hCRTtd9\nBJRn/8T1ovU7bbED7OV8tyogLvyt3nVsyUqCwg59WR4dq8N07adl667NCuBo\nnqHLIkqb4MtLaTDmJgYQ6t4AtLbYGv9Q+uvhFlUtsDU7l+NoavjrzNfx/Kgf\nz7JB6PgVWmbyeD48+XGklSGasuDxYFjgkC/h/aOdUf4bJCuyumVQbT9QSCyS\nkMHq7JqOpxIvAjaxA1Z2pbT+h3prQnVNX66UoXi3tdeJH1SnRkWj0Bh+0DqH\n1QRm+McFo6e6eN7mf+5WM0kx9bPLRXCzUzx/tiMLtu+/p01glUqin70+wbbB\nEL72\r\n=Agxv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCz1vLp7o4NFH0LyrRUITvF7EZSzG9Kkt0xAVAFdjCo2gIgbGJMXHEuAy6p/c29gZVijrXDqeN75roj0tGGo693ZJk="}]},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_1.0.0_1599368426618_0.09168498942782222"},"_hasShrinkwrap":false},"1.0.1":{"name":"@anderjason/observable","version":"1.0.1","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.0","@anderjason/util":"^1.0.0","typescript":"^4.0.2"},"devDependencies":{},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"f1f61e0d5d3f77f9a3f05e105cad3450241f8059","_id":"@anderjason/observable@1.0.1","_nodeVersion":"12.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-1OHqejo2eSCBK1BcXJ2qhnJMRm9Mh2PoDLlOBmzgqgt7fV5bwtyyC2/D2pDsNrEcOQV8Z53dqUUyONKNv9gYIA==","shasum":"f5a4bbfd4ef269e8674021150c66e8bbc8d00a14","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-1.0.1.tgz","fileCount":36,"unpackedSize":59512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYQX1CRA9TVsSAnZWagAAiX0P/j48zgoOP353cbI1TbQj\n4wOBFUnwavMqYgeZi62hjMjG4rMxgUOKKlDwiaihq6/tb6H4npVbfqGsoH7l\njmR52/YepwxTCXEYw5Y61FvkdYBtz8VO85YnAEBf2lPFvxf7pw25/rfEmZ6s\nQjXse+L2KrdsQ1BMBhgOrmLOJC6mmYErAmV6lRxEOrPcI3qU9lUIiEqWMgXE\n1BAtrVXf8XFN2lZGsG7VGelwxBy6AB30tHsZvemmBGOZT6DlLKCp7TaQxCOh\nDTZE0MSw6r2ss/DC7jbgqiE4cpBMXGUVyD4mc0C4u6vGiUCusDe9jJzohY/H\ndBHSxOvuyzWSg53wRpZ1QeZiWl7L4R6PELTfTmFqIUC9mMQ+W0QsShbZ+xDP\nxBE6SyaWF+T6jXYVAryaCUU4P4JqR5PZsvM7JD5Zfplt9fvch/1O7GlKXif8\nQNlmQTJY/pcPbttGXR0oIHg4wFxYogJDjoIQzIVpPO62LPRVkguLD2GotnNa\nTzC/rd4b0A5hjOt3a6NeDnMfzQXxZvivRPWqaXgUPDKGv0OAxCwofszIcIro\n3tBMnH+jlgRATSmO1x99jSXoXCl5wQnNJ1M9FE42XQghWpIOs4Sagf3Sxq5/\nQlue9iCV0DqCpxl4Dn51HjL6eZlZNJ7ZgUHwz3RMOrViT8YudmhQWlwh4e20\ndlhK\r\n=zlfW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCVAx2pkm64hIrtoCYNbdonGAr/8oQfDHuOFReOufLDRwIgeVZSJlnrVxtx4m0F775Z6sqeUlqkl9alaYi5VX2muec="}]},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_1.0.1_1600194036628_0.03997035845435937"},"_hasShrinkwrap":false},"2.0.0":{"name":"@anderjason/observable","version":"2.0.0","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.0","@anderjason/util":"^1.0.0","typescript":"^4.0.2"},"devDependencies":{},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"21b56bc701b5619efe99f12d4d845373465492c3","_id":"@anderjason/observable@2.0.0","_nodeVersion":"12.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-Vradu3l9xxnWDesEZFtpimvkM7qA9RoJP2+aUR8X0YaSLZX8iRNyiD+fVSko/RIcMOiqmbNVwdEvhiWcyHe2cQ==","shasum":"26d74bb6fbc974ea407bda676772e8261a073b05","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-2.0.0.tgz","fileCount":36,"unpackedSize":58747,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYR7RCRA9TVsSAnZWagAA7SgP/RQ6P7+/3w2o9DZGElbJ\ncudOhhcPZMcAqCAS2mgioLimAK21ryy8fzDh0mnnY8rtYlvRmZrISvUH09Ll\nUkSupqAtTxc+2lSx3gcBsT877UDo3TzmhN4zo4Mj/Z5V2cGIHibilMGXSUvH\nk/UrrOJxcFDbghe4ziXknqtb8C/qvOYwGDaGNsQFsfUg/YK1udK5R2/FLvFv\n+gKbtBi/a6QKOXnO8bv99dBBV6lgT55Zi+Cu5Pbzd0UpQM9RkRc4WhsHR9jN\nVppkLW/1FA1Kb+ZXaiuvgEODnVUiZRxZMf0ddC3oCRewHppJlsIXB/EytviX\nEmo5KgJCY1yOp+6ALrvhUt+ZFMPpBdv7Rdch4T70ds3TJIpjHWU1tW4paxUq\n2K4yum6p9FSjh4/5NqnRgkt/D1ucfsQSkNiunKusFt2W+LfTahKYmROG864a\nd2PTyxuAxM+ifLgBa4up87wl+7ySNig+YOT5LrtcnMZ7cSS/3iV91M8XpgJX\nOeKMQJa7i/N1Ri5w9IUUacebm2d4wFHdhKOQwGm3KtzjrgiyvU4HUIKgXBY3\nU6+SubOG3VFBnCilB5+oJYneu0ZQTAT5AR4ZoOE3tcoPUnOkm40poIzd0oWw\nfN/YqHaqgO6Oqu0M4fGjNemAB2AlxI/kKlntC7qsGhDeQkQo2mMgKN/QQWlJ\n5H2O\r\n=vJVT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDql46G93vRfFdjbuyM/8VHJokuG7+/AzlPJCRENzSVxAIhAP1PcoGreqXYRTO6agNlI8iDLebhYHzykWs3PqOnsqI6"}]},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_2.0.0_1600200401408_0.9656440166822422"},"_hasShrinkwrap":false},"3.0.0":{"name":"@anderjason/observable","version":"3.0.0","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.0.0","typescript":"^4.0.3"},"devDependencies":{},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"99a28a4888f05edacf2226ff5588fe5b45d8b033","_id":"@anderjason/observable@3.0.0","_nodeVersion":"12.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-LgVq427BbEH9ty4sykryvKkqb6jdY37KODnd2cxCv8vpDN88jy1AlVWa+bNU4hJUJxnl1ogDe/MRPSymdGmk+g==","shasum":"e3d489b55d6c118ae37134897eb1e22e7ab9d3ea","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.0.0.tgz","fileCount":36,"unpackedSize":62424,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfeUbvCRA9TVsSAnZWagAAD6AP/1m7pSHGfKdivYydxZw3\nPhAEta3eQTXtMFWfOPDdROQrhlNxvc6hHYSuKp4rwybmlt/ByHciWF4FhCfV\nn4I1RC0Sr41iAQKg5QoIGfwEj3JwK/5ttNH4b5/nFQC1lYLjCN29rwd7qe1m\nbQ4RHe8wqvCijLaXFXMJpCZdahSzRQP+vSFpW6n0peoASDM0fnCEh7Sc+4lI\n0ivIyiUCHSWqYZUX+82fu5L3Ry4PhA3U2f2dZdMwb+9GddwU34BDZ1UvnyoM\n8t07SdhtaYJ/FOzXTMp/fPudMNswxY44f7jIXw0Ib17lq9Dz+/gEQVPOFAjS\nGO9CNciUe/Jsux2YK9h/FoBuyf7XNn+fYDPsU1w8VPwB1SiLF1Qs0u/7JZOd\ntGBRZ0ohC8LNwufJZ3OgIk0SQsE7YiKQC5is8rWZp+GHyH8b/ec0Lavq/p8b\nUUDf2HBXOdWyBZMEJbLjMT6KYOAYbyoNTOJj59J/355XjQBaC+KeFxtFZ5Vi\nvxnheWjaHN6mKFf+3QnW/J5gX3Rx70g9Z9+oRgUapMHynuFde2XaYoH2ez9Z\n0fx3ochbkPA0LLTo4H4FeDhj3kMsdAsazpGSlJCSzMI7lORusUO7l3MxM8Ei\nz4VE78zeeeLA8bw8H1hHnGiq1DKC6Ll2uMxdeicHcy4e2Hc6UrkVgwLXVmFf\nQFfh\r\n=T42D\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEx1GQkHff+97hmkAaw+dJnXMWDPcmnNIxG7rve+UTjMAiAQnm3Rgp8HhagvsXraUP9jmjFN1mNM+IlqIw5rMbL7Ew=="}]},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.0.0_1601783535171_0.2754941070994903"},"_hasShrinkwrap":false},"3.0.1":{"name":"@anderjason/observable","version":"3.0.1","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.0.3","typescript":"^4.0.3"},"devDependencies":{},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"99a28a4888f05edacf2226ff5588fe5b45d8b033","_id":"@anderjason/observable@3.0.1","_nodeVersion":"12.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-EGr2WVwqlji64/1bG2e5RJt9VuNUetTidT06SrT8ZCPV2s4SRupCnymlqBj1TQx5OiwiRQiIutZahULQ4lheyg==","shasum":"2a505555e2c45c00335df297968da3f57160fb55","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.0.1.tgz","fileCount":36,"unpackedSize":62488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjPB0CRA9TVsSAnZWagAAFZIQAJHf/n7tLDEDqlvzXNew\nFKpIAf9ONcchhsKmGfhBLzThjn1CybqB1uIERv2ub0mHAKkkuDWKPmXUKM01\n+MYNBFr1Bjj2pnuabK/nnG4fVGPogmIwr4BxcYNqhGzG33syPpCPs3rjai3a\nYW2u99gYRcEnsnNzo2Q5VICaq5p6i92YLE7DKlKpKhHQT6x3N3H2BOltz9ki\ndHQg0Qg4hsf+7l/5NSl7RS2KY+S0oyfpcedEwUUsnqtEtPcVNSorcZrlhu8e\ngv2qjc02wR/JZ6Hz4pNNEDfW5P5cR7g7Ir6zTQ2uiVHMJw+84AqDCcPrmRZk\nbE2lF0nZ/XAdAICE14K4ZpD99OaP3GLXz8RaLz6aaHWuag2uayy7Vdj2bger\nFeJOISLfDanIfhwvLuniptS+2SbyJLaVc4jPCcnd58Txm9U1uhUjIr/t06K1\nKaDkaBDP4lmdECoc8khL78Vib48RsKC5smis+DJipUZcECtSZMtoTftkToLV\nTCfBf1aAsj1VKcGmHcUFp3er2hWK/VHsboLko3Sfcvvwb0MJC5RNrGYXWR09\n8Dgzp8pD7F7iJAZRmTycQX1Jl35CFRh3S0eBZCj6WNICsZuVzKzGTJ/GM8De\nwA3b1lnHOnwn/C8NbRzj1wyS5WjEGqfxl8LUM2YW6cSY578YvZOBJ8QgpO2g\nScG6\r\n=5Ns6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQhdC3AVYr7AazPdtgHKkKiEYYwZsr2VNewdMIg1qHQgIgSRtAR1HGgWuC4HQxMNvw9reV2SU5p3GlRt6XxWrx8a8="}]},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.0.1_1603072116215_0.137165622755967"},"_hasShrinkwrap":false},"3.1.0":{"name":"@anderjason/observable","version":"3.1.0","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.0.3","typescript":"^4.0.3"},"devDependencies":{},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"fd4979242ddedf179a30af47ba49ae9796639716","_id":"@anderjason/observable@3.1.0","_nodeVersion":"12.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-ezQFfuepGTgL04l9wmHNhLxfkvCbYfs37I06mI6fGZ/03wUpt9ZH18skR2wyN3zM4tiA8GF0X5IpvHG4yl20mw==","shasum":"828506d0b6317d3624cf8b3eef37a4b83b86978d","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.1.0.tgz","fileCount":36,"unpackedSize":63033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjRZLCRA9TVsSAnZWagAAu3gP/RuutsjLmeECVJGSoABp\nQDg7tFcQnxyEeYXhEyeBAyXle8ikcs7WD4R4XBy0R0wuzCnqoQ4WLNWKevVC\nB8vzmXhufySnkcuNkU0J8vdFH5f3Lr4VTOIMFTCrK0UfsqbHCVrBk/auzwiX\n51FGmVTx7KqmqPd6iNk8YoyDyjvCFvd8wLN27ALsiuQURFUNRLhK+Z6IE94H\ne2oRrn+C+o/wfs3k9TLVtGyd80Ov84ZwOztfEbHTYjEp/XMTVfnn8d8byAi/\nW1Q9Es2TPur7zYJUy9NkP83GoR4cmO+m1ewJExg2hWaf5iffO1iPStn7sgY6\nKl5jWsBNWCnAFz1FGj+zY93W7NCtuKC5yq/exAgnwB+mHhad9ukXKq9FVNmg\nX1B3uWufgT6ovU/8alqRWjhNZx+6S7I6Ta9dRqT0I3vCODR000njYe5i3P3r\nBDmHvYNDrKo3EJu82lBHcYMP5g6IgTFGuDWS3Nrd7q8jPMBIyMQCRint0zaP\ntGyzgNLELMLcpOauvg6e6wNllx/NnOs9Fb7vNzrgH0CdoLLB1YoPIa6BYTS3\nWybaUsQHwrtaRQh//EDWdktMh0vmDHO79L/oPAuWbEx4SEeqcCY9GLbfbAy5\n6KNHD8xtdGLvOYGDGVOk+DmczaE06d89Dd/wzw98ljeygc1pVGQFpC19iq3Q\n1Ppz\r\n=LUDj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEroPSbfrakfyfKKGlY3uq3NEnwJSXfMYJNETXYuxShxAiA7JiyMfrVQ0As66JQMLFRlGn+AcBFOTZpO2uNpSnLEsQ=="}]},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.1.0_1603081803380_0.5202545064428361"},"_hasShrinkwrap":false},"3.1.1":{"name":"@anderjason/observable","version":"3.1.1","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.0.3","typescript":"^4.0.3"},"devDependencies":{},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"d2e41538ee8cdbbedec3485b612b468968e27445","_id":"@anderjason/observable@3.1.1","_nodeVersion":"12.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-c0tsRoW6rR5++qXcTA+Lu/CpgG+7rMrsTKR07f2gMf1IOLbcmE3xsQPQ5Fr/3S4wmdCM10aLxuu/Tp/0saVyMg==","shasum":"4f416d461cde7cbac8f943301d0826ebdaa5e570","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.1.1.tgz","fileCount":36,"unpackedSize":63041,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjR1uCRA9TVsSAnZWagAAzZIP/Riec06/tYrWO/TcpZYZ\nhmGaIJi5vajAE4X6VW+jKOeVjVKZjtJ+FWL/KWarEAOi5MsAv0RKAG3gKC6Z\npRTQJ4BNjClmax3SdVwuQkR/F1E/8eqO2EUguGHZ8nttOKKnXB+XH2XcdQNr\nSz3rtrNMt5XoPrDN6Fai3cQ39Fn5i0l96QUNXnCzO9aAvhd3colK4FwYZY+1\nKvXqcp2ckfT6hLNgYvnL9tzV3je6Z0kvo+UCPBY0FXss4Q0BgAWHFQ9gVrX+\nn2CAktTxclmLPcCJcQCd8eVIDJPZrLNGo+8GXZ1xhimVHI8QrrppldsNmSNC\noAcSFHdW1yhTYcgv/6CO+Te0aHlx7xoXrIyEuwl/RDGl3JN9JCfSSTitQ0b4\nr5b9hcZh8D5QKg6SoLo20zFei85H/wdQxAchoEpmeVFpeKaqSuuMj009cN0z\n+Ze62pqF6e69Gn45UbR8MLmafWVByl2S93wnrbpSuyq3yIbSzBLjbqCgx4rt\nY0r2LgTHzaf04JQ45ROs6NO4oXGxduOrHueQaEL6l7ZkfnCJivWfb3tK/4Np\nCevCSCoTaJS0zki6zq5YA3/99yFo9tjK7Yd8yK2Fj794kf8pBUEMXwTvcOjf\nBC01ene0OlFrfa/YKUDnG6jMAP0Vw4ef/3EqG7EjQY5CFKjO/HTaYzupOkL8\nl4k/\r\n=HqOB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+gcKMNlKhCY6AJ51oNxU25aBivE3SV+I/mIVYd0xypQIhANvjQEbZlqR/9l+0ytaIioH5lpkRakXO5wlR0RdaY5uX"}]},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.1.1_1603083629844_0.7343645302375412"},"_hasShrinkwrap":false},"3.2.0":{"name":"@anderjason/observable","version":"3.2.0","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.0.3"},"devDependencies":{"typescript":"^4.0.5"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"2f16ba57edbde505347f4bb7e47647de6b4e9f58","_id":"@anderjason/observable@3.2.0","_nodeVersion":"15.0.1","_npmVersion":"7.0.3","dist":{"integrity":"sha512-jdp2EjfnFppPSV5wfmcm+OXhd+ZbYHSmDdswfTM69S+MoEI8wZdS/FAvyJLStIIb2mUAktgEcCEEtYvEPm37/Q==","shasum":"3492d1e365d3d9002353dedbbfb3f7712614e16d","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.2.0.tgz","fileCount":39,"unpackedSize":65076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfrYQwCRA9TVsSAnZWagAAtXsQAJNvHGttltIeXmCgofKT\nZKUplAb8IXzZ4Z1FSgvbkinyOPYFV9NflWn32HoJlLAQLZ2OY8s3oER/ewbE\nPOdMNQuRl6LW/CNrMUVC3DQcfuQUz9Phj5ZBzI47HkuILJck18R+Kk6gzyOT\nirhdB7wggd847jCKZZGbQvDTK2BgaPwhfWi7Uwm7kJM7etC9c3McjY2Xee4e\ny2iYHNfv/mpG9nh9qsQf09goKlGLKQq3yH6cAzJFMXg0+CbR24TJLuu3oNTq\nvnzn/KY2Gd32jNw0Xj8Gk+ohEWZHs5xJC804GocmyPIjCJtGUJWTO38Bu5G7\n9sLlFSUtgs2HyqmtBkTgTEmp1t+Nx2R7HbgoNJC4AoX8krn8wCCU6jRQF7HE\njUh21ReYCU1VRXqpsz3Zik8y49Wdr/9MormvBT8Ab9GxBoGSuSz6+PSnCqce\nLEHA9oUqAoieu0cuxMh3rBb8pRzXCQmYdXlMQWUs09jk2C3W01injhh5tvOJ\nQODnfF+rtSoUtcbS2Et/3UfHLXI2g2gEOCf3yLPVKfuOEuodmhvtT9kGnOns\nXEdsI2qavDqPhAgSK8yDWiIPkxderGVaaT++CotRLXuiwcdTPE2pJUes/z7S\nsG9ZT9kZNKZ96GINJIJ8oHZfm5Vl+JeKU+ugPNDuVA8ZCYmuKuqZHCVMdFkT\n8tt/\r\n=wrFH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID/Ff+zGLefl7iMg8dlPbTN8ADJ47umK2gTr057ivOt7AiA7m3NjGiaHL1dwaQJ0rZEzDiAATKyj/npGX/D3oa652w=="}]},"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.2.0_1605207087515_0.1396807155375126"},"_hasShrinkwrap":false},"3.2.1":{"name":"@anderjason/observable","version":"3.2.1","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.0.3"},"devDependencies":{"typescript":"^4.0.5"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"5974edeca30f2d0de616852377631fa5b95edc71","_id":"@anderjason/observable@3.2.1","_nodeVersion":"12.4.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-8IM80k2nNVMojeDLUEFKL3peYyiY0PzEEF/nBmakACxYrmzzpgDm9lDEulCdGq/4hIofc9glIZCs/iuyaqA/nw==","shasum":"13437b3c20a93632108eb598ea4526be7c1d1c2c","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.2.1.tgz","fileCount":39,"unpackedSize":65219,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6J2xCRA9TVsSAnZWagAAvvoP/jtl9z7s3Mk+Fq7koQP4\noIkgVLwpWU4/+9EFXJaqIGbFBqj4OajqwdSLNf3SYmRF6AaFVZrKRCkTPXVx\nPUHOwdlsuuPvadRrctz75M1SsacjcrwbuwC50JUKrc+xQMuNnz3p/PYfX3Kv\n6YoIwDzzpbGprpnRv52kizWh2sSMuelG5rsI7OZhmAGam5hFAWnrZoydrX1A\nMYpPHuV/PqeTwK5CW+CKfV42K9e3KPPQxKQ4CQfp8cDq89fNOpZJIBA/05PW\nb8S/Lt4kHlPGtLFKL2381IeRaaRv9PZV7ErpkpYtdZQ6sygDeTq9h1WAn+AO\ny4nphbTGnSYf+QNhZR4XnjHZA1Chmwl4efBXQ1aLx3RuN0KtUMZGjtHtdFfy\ntPGn7ZvULx4QEdULOPMcLJQaMKYJwLMun/HrVik9qjshe8ndHGiFUvfPgd6L\nc4+Z7qhwFNfqX/zXP0/wiiEX+6l703KzmgrdxHQBbPTwLEuvvu2bu0hIleqG\nAq7zo6QIqTQtDvaxcn9d63/QptYziUpjj2j9oNc1XDNOgTDMFj4HJczWxDwR\nFlQ88V9ILlRKxgMyv/AAYx1fV2vkvTQkrZb/pbnzsHb5ZPlKtdfrmXQmtU9N\nfLJVLxlZFba9GXcdXTddkLsWzj/g9q2e8pbNHuu3spxFhpV64LBXQpP02bcZ\nP1U3\r\n=mCd4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAX9ALhNkqr7xxQdyXqDJlanA7TlwRhJ98rbDpB48k6OAiEAzRCcUmKt+WVVZWMw0knaJfY9gtsG+Mqx+2cY5Uy/3gY="}]},"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.2.1_1609080240816_0.19900700060101317"},"_hasShrinkwrap":false},"3.2.2":{"name":"@anderjason/observable","version":"3.2.2","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.0.3"},"devDependencies":{"typescript":"^4.0.5"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"61c19798276dca6221428554ff54e78aadf76934","_id":"@anderjason/observable@3.2.2","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-5eOcX4g9l0VSLpz8s3HJNwSNWx88fKLlWRqRP5C394mUEf6rmTQR/qVp3Ol64Y6ne0fiObdnc0CkQip0uIrh9A==","shasum":"18a526c813a9a531ee95a5461a504174f96c9ee9","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.2.2.tgz","fileCount":39,"unpackedSize":65692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtC5wCRA9TVsSAnZWagAAay0P/2pfXj8TIgAESfLiIX+A\njVikm2Z4SF5PljrIZRJnGy3zDMi77N++hYyYlkuZDJ8c70nyRd0BRSKl45pY\nV1CXSdPFA4UEQNba8IqrTD3Ym0S68M4yLBzVo1ZjwrgABJ7WdJRipppv3QjJ\nQrR51Gf4y0PNWK/PF60oMEl0z+auDEWajL8hpsu/JK4gNriOGy9STwT9r3Me\n/TkKsTY9hfLKHYKyAsHRI+IWCzHW6ZcHUmOjXVGLHiwck7NmxW4EBGPPAVzp\nYrhnYHtc4Hx80GfeiuycsLxtgW+aUBc62CoSUCYOMVnkeLyiJZD8FtMbMSs/\nJ/6wAJ2OU2HeaL318JLPyBBnwesd1dciHPyF0R7UIqYu9d+//epBM0StQ1wa\nSFZcR97Qz4fF4TORXrw5DpV9lKTKZpG5rjx9L9YDkBtWR34+egfv/OfbifJC\nx1TQP7Ikw7+JBL2HomtOjfYWGPie6A7DkMgBVjHe8qW1ZdQ6lpoiCcBOriF6\nkFOEsjhRywKcxoTs3t49hrtPRR1XIsQ6IYNeWYqKSLqKHqz0oVllLhgsFTn/\nL9E6t5UkrPerP3cWZmVWiwZrzgp6WXWM34lURjHIybi+8+jkMMM69f7TzcXW\n3S7OBc+Sa81mj4I4fKxdQjMZJoSO14Roeuy28refjc8I8CiBrUBLbNP2JEcM\nOxur\r\n=eg3t\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEx7haA160CkwJOWElB6//WbTQS2TgL1XrBsSN0WFylCAiBMrl1pKRe0XsB6k1uxzkLCznwQHfVZPSILuQ2nlh11dg=="}]},"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.2.2_1622421103733_0.692227719713649"},"_hasShrinkwrap":false},"3.3.0":{"name":"@anderjason/observable","version":"3.3.0","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.2.0"},"devDependencies":{"typescript":"^4.3.5"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"61c19798276dca6221428554ff54e78aadf76934","_id":"@anderjason/observable@3.3.0","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-Vl5RKeBdeO6fi9fFbeJSuVSsVmAV86PcP9IIiUv5Vy95jx6PPOrahmCnHpHFt0KtukJXhirY9nT5gq2yQ4tPjg==","shasum":"7ba59f787b3fd0c3059968046494ac8277d6ae72","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.3.0.tgz","fileCount":39,"unpackedSize":67393,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg96kmCRA9TVsSAnZWagAA028P/RekIoTAVQc0vN+sOWcX\nDySUt5fRYqOhIRpJczXCm2QjuiT7TceG5vEiXJfzQFPOuOOfsXOF0odIIwLE\nwIyqoBoWAxhqgq/0QwxMht/tNJcqk5HrIQNfkm6QlBc2HhIKjiFRWY2YOE7d\nNkceLKCgczO3GTHYCxT9eCAJtKI0DnnVvBTbJ0Hdfny1JEVPq1gyV155mLqT\n53rzqfRSmgxKuyUzWsqaZ4X2WsyjsLb/m0NgYpzQlkIxDHvWCcDghMkfwnpB\n/A7CbrrNgEa677pIyVYkErht4v79Xv6h7315HYejHzW0kLPluv2BToaXSYdJ\nsiPh9bQS4L85ImSrt115Gco2IjN6AOoKOh+eIUa52mW/QBgoZkdhVmMppoF8\nr7ACULmSgVOwuCGKQYiAZQJSPdmHM+u3Y17Wro35H0MYD1he9UB3+5Uf021b\noX4rytLvOvm+7PbhVpobUX6O7QkFB1RzyW0barPdZYpWI3UN4zh9aDZ5tREk\n1kSNFIznZVu+FxulcuMDp9Hi3EeOmRyBZSOXt3RshkBgLvkWV5Ls5oUIQAP2\nYG8mv8q/wxzYo/9zEzkLMYGgWuBUqiGgzNeh6pa/fdkrMB8zSYCD2qs48wBc\njn4hDTK730AepKD/T2bFjEWwzNFoB50h7uznmtJZ39eQnsoNu7bxgtppMh8n\nTz8D\r\n=+Wid\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6vPSV/KYh0+yoazOP7vls4FFi4E5iJlhBZrJ5PoZ3NAIgKmFQrqMv7SGwmIzzSTqvYjLKNhx3QGI9NotOascOzBQ="}]},"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.3.0_1626843430570_0.25097678478554086"},"_hasShrinkwrap":false,"deprecated":"Version 3.3.0 has been deprecated"},"3.3.1":{"name":"@anderjason/observable","version":"3.3.1","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.2.0"},"devDependencies":{"typescript":"^4.3.5"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"87ea7389f9f0bbb4cbd166d9eade9e2d2f0d46ed","_id":"@anderjason/observable@3.3.1","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-HhoNpssE9l3ax3zewEC/0xP+EYXlxZtTBCeMxZlpqhbNnwaDRi1TGyPJvNBL43OG0GE3ERIjgQS5wnGimZ+tDg==","shasum":"7058e7a643226437d5b8fb7f9b9f3a08756799af","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.3.1.tgz","fileCount":39,"unpackedSize":67367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg96ncCRA9TVsSAnZWagAA+BYP/2AHMGgF/2DM3QTX2q+9\nvhkJ5QddkUIvu3VmbS5PRYUppAp029kG0J4u8hoPITrBIRUlSsOgJ52fD+PX\n935arSlkjMvH/9eTpozhJ3JgbjKa+7HOOlX7C7lRJFbbnWs9rmQg6GBm+3W7\naZafl0q0rofjLy8QA95XGYyybSnguJ0Kb2Uvh3AmcBhmbY1Kbb/iM59Q/Xs1\nxllqHrF4/H6VClasTzzNK5+rZIR9ySPNDiUOcwucQrraOPdXBzVNv0OY1bNR\nyZWRcQXPd25+K03kmVDOVrJrczDwrwpwqfATzg8DGDR4ofo8hk91Xay9lhc9\ngCPSumexPFapB5eOR4QtffSqdGEvUwO7MrHcXeaklI2nt7/RjAArvs8u2AtP\nRyIIOkH1kF5T7glb6AlWaKBjhsG/y9jYHQAmqQnYzGsnCQpjrrKAVpsdPDHc\n6Uxog6Jxxfy4K+Tack4Q2SJVNS7/33ykj1k+K/dRQbsrGZdxuyryyHnZJki4\nJFVJdD5Fmzp9XaSo0oPW2DXveij/Zs2OO/0eDxZGkYqLtbXwk+67wpCZiDXa\nqPATw6eV++r4P9JbWhpz3IomzEfsib92t1/svQoXy1ca+HPhNsM0UVe3CXI2\nhp906h4B1bZUJDttcfEqLL+tfMwFO2MPeFtxWKTDfsgPBGQTR4FAsZBPsGq9\nvpRH\r\n=3VAB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFDTw/0SDglHQwaOxiiifnH3kfe9/5OJ4Now1+mfYNhyAiEApAi9gISfv0T6pvctiUqJF6HNLAL9ANx/TabEHJLJuTE="}]},"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.3.1_1626843612802_0.8540348722555813"},"_hasShrinkwrap":false},"3.3.2":{"name":"@anderjason/observable","version":"3.3.2","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.2.0"},"devDependencies":{"typescript":"^4.3.5"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"846cafd108500972fcfa90922b4af79e83119eaf","_id":"@anderjason/observable@3.3.2","_nodeVersion":"14.17.5","_npmVersion":"6.14.14","dist":{"integrity":"sha512-JXEsX+8qnf9XHSOtCY1vsz9QNs5+xdC6SAkRKF2JF0LFwoPQJ25qKeIvZ3M9oQ7BPA5P7aWbnKb7JC+vbWVR3g==","shasum":"7da6778434a1d5e2573e88bc599e8f1f83b5b5a5","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.3.2.tgz","fileCount":39,"unpackedSize":67781,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHSjfBJ+KQA/G2h+3nn9uYyuGLOWDW+XLC+hK43d84yEAiA3nMMNUc0uY6K3P4AsTremoXxjZgeWResee7qY16tZNw=="}]},"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.3.2_1633755538992_0.4729627960851608"},"_hasShrinkwrap":false},"3.3.3":{"name":"@anderjason/observable","version":"3.3.3","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.2.0"},"devDependencies":{"typescript":"^4.3.5"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"185817280dec472108a2753e0cea5e31cb8a1534","_id":"@anderjason/observable@3.3.3","_nodeVersion":"14.15.4","_npmVersion":"6.14.10","dist":{"integrity":"sha512-Y3a2e11e8vvDQzgY+IN48NgoKd2ULvHKf9qE/5AhNQDN7OsmL1JO2KL2XSLr+z4ePg1QI0Xa6obYUTMd4S2Thw==","shasum":"32daed9ef227fec0b8428f4961266440a672993a","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.3.3.tgz","fileCount":39,"unpackedSize":67822,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBT5TokeUtiYSr+UaPd8XAq2cmQvEJNs5Pcu+EFMlu10AiAUaS/vRzlMPJlAgaZMc9TdgN4s5ruDhdULqNglkIkOYQ=="}]},"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.3.3_1635122295461_0.8891960622076405"},"_hasShrinkwrap":false},"3.3.4":{"name":"@anderjason/observable","version":"3.3.4","description":"## Installation","main":"./dist/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"license":"MIT","private":false,"scripts":{"build":"npm run clean && tsc","clean":"rm -rf dist && rm -rf test","test":"tsc -p tsconfig.test.json && node test/index.test && rm -rf test"},"dependencies":{"@anderjason/tests":"^1.0.1","@anderjason/util":"^2.2.0"},"devDependencies":{"typescript":"^4.3.5"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"homepage":"https://github.com/anderjason/observable#readme","gitHead":"185817280dec472108a2753e0cea5e31cb8a1534","_id":"@anderjason/observable@3.3.4","_nodeVersion":"14.15.4","_npmVersion":"6.14.10","dist":{"integrity":"sha512-DOO/wsReTy+9yQ9LerP7a0cSNS7F9PU96ijfkkbMwjXhbmRCfCSPa11gTDtF0fIXxV14JFgTUUYdfLznRwE24A==","shasum":"2729983f13ebb68070da2feacea9d0514a2253e4","tarball":"https://registry.npmjs.org/@anderjason/observable/-/observable-3.3.4.tgz","fileCount":39,"unpackedSize":68164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzFUwCRA9TVsSAnZWagAAcf4P/0WOQifJVtOcFK+DiE14\nmyr3kxEV58bsbOCAJT3XYOq8jbykVqJ693vTtA4evilC3ZtCrwu1pdxwwktl\nYE0d6XAj1AJ+jl8S3tDT2uScn+IWslFs3CytbNGDOxwq+RrdhqZ+BIEOYKTq\nxXhC8yUXVtzPeZmRkrwaLtZ6Uh5ByFAV+HiqDcAGjOpIh9KfhT7hQCjQrSfE\n13eWIpEKs37kBTqpp1FxYORUQ+7uCKsXFtt1tCz12U9xb5stO1Twj5PNQb34\nwDCKuW9mNf9K0D5NG76IW3WDy+X6I6qS2lU7wkVdfcfwoF2pXTtCdzEoDzwe\nskc1nXAWTQ5R/p4u+TI7yWm3bJnXHqH9eh27CbB4TPUfdxdkEr7XVtuX0jjn\nYn9m/4qPlISL9+TcEfY2jRWy/ccWTUizc2vEr+lW1IZzfIs9OW/sGUvV6vmN\n6PNRcioJK5/8AGGJNtYvTDVPaC2OfpTtiO4e7u5vgDuRoYC53lbX1uQ1CCjF\n+ESGK0EMSiqdRKTdrf7U1sisPPIIiVMsgobGLF5sN/uIX8Pxe/tfBIcc65W2\n1L8zwazIXHaw5Vu0c7wS+TFcjO9hKaf5KrqB5FFIkHUbW/geMn3WbRIjTEM1\ndXs9KF8CCqFpcKVoooNHllMZWpexSMqcipMXlR7lsDLkihvWIh2WydgOVqUy\n4w0F\r\n=UGpP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBVa4U56fiG4m9WX/czDbw57lOzZPiXaCYd4RSs7/1UJAiAs8gi/uj5ONGsV7kKaW/Y+SziiPMA6BWAcUh75E7lMAQ=="}]},"_npmUser":{"name":"anderjason","email":"jason@gearsandwires.com"},"directories":{},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/observable_3.3.4_1635122637014_0.7965365050173159"},"_hasShrinkwrap":false}},"time":{"created":"2020-09-06T05:00:26.565Z","1.0.0":"2020-09-06T05:00:26.748Z","modified":"2022-04-04T13:57:41.700Z","1.0.1":"2020-09-15T18:20:36.769Z","2.0.0":"2020-09-15T20:06:41.583Z","3.0.0":"2020-10-04T03:52:15.366Z","3.0.1":"2020-10-19T01:48:36.365Z","3.1.0":"2020-10-19T04:30:03.533Z","3.1.1":"2020-10-19T05:00:29.972Z","3.2.0":"2020-11-12T18:51:27.645Z","3.2.1":"2020-12-27T14:44:01.023Z","3.2.2":"2021-05-31T00:31:43.876Z","3.3.0":"2021-07-21T04:57:10.693Z","3.3.1":"2021-07-21T05:00:12.990Z","3.3.2":"2021-10-09T04:58:59.130Z","3.3.3":"2021-10-25T00:38:15.798Z","3.3.4":"2021-10-25T00:43:57.159Z"},"maintainers":[{"name":"anderjason","email":"jason@gearsandwires.com"}],"description":"## Installation","homepage":"https://github.com/anderjason/observable#readme","repository":{"type":"git","url":"git+ssh://git@github.com/anderjason/observable.git"},"author":{"name":"Jason Anderson"},"bugs":{"url":"https://github.com/anderjason/observable/issues"},"license":"MIT","readme":"# @anderjason/observable\n\n## Installation\n\n`npm install --save @anderjason/observable`\n\n# Key concepts\n\n## Receipts\n\nA Receipt is an object that can be returned by any function which performs a reversable action.\n\nEach receipt has a `cancel()` function that can be used to reverse the action. A receipt can only be cancelled once. Invoking `cancel()` additional times has no effect.\n\nFor example:\n\n- A function that starts a timer could return a receipt that can be used to stop the timer.\n- A function that adds an element to the DOM could return a receipt that can be used to remove the object from the DOM.\n- A function that adds an event handler to listen for a keyboard shortcut could return a receipt that can be used to remove the event handler.\n\nAll of these scenarios are possible without receipts, but each one requires some knowledge of how to separately perform and reverse each action, and each one is handled in a slightly different way. The benefit of using receipts is consistency throughout a large system, across all scenarios which fit this apply-and-reverse pattern.\n\nIf you have many things to set up as part of presenting a complex UI, you can collect the resulting receipts in an array, and cancel them all together in a simple loop when they're no longer needed.\n\n## Typed events\n\nA typed event allows a source object to broadcast notifications to other subscriber objects. Notifications can be a simple signal without any associated data (like \"did load\"), or they can include a value of a certain data type (like coordinates associated with a \"did click\" event.)\n\nCreating a typed event is easy:\n\n```\n// Create an event without a data type (type void)\nconst didLoad = new TypedEvent();\n\n// Subscribing to the event returns a Receipt\nconst receipt = didLoad.subscribe(() => {\n  // this callback is invoked when the notification occurs\n  console.log(\"Loaded!\");\n});\n\n// Calling emit() notifies all subscribers\ndidLoad.emit();\n\n// Unsubscribe by cancelling the receipt\nreceipt.cancel();\n```\n\nYou can pass a value to subscribers by specifying a data type when creating the typed event. For example:\n\n```\nimport { Point2 } from \"@anderjason/geometry\";\n\n// Creating an event with a generic type\nconst didClick = new TypedEvent<Point2>();\n\n// The callback passed to subscribe receives a value\nconst receipt = didClick.subscribe((point) => {\n  // this callback is invoked when the notification occurs\n  console.log(`Clicked at ${point.x}, ${point.y}\");\n});\n\n// Passing a value to emit() sends the value to all subscribers\ndidClick.emit(Point2.givenXY(100, 150));\n\n// Unsubscribe by cancelling the receipt\nreceipt.cancel();\n```\n\nTyped events keep track of the last value that was broadcast, so that new subscriptions can receive the last value, even if the subscription was added after the call to emit(). For example:\n\n```\nimport { Point2 } from \"@anderjason/geometry\";\n\nconst didClick = new TypedEvent<Point2>();\n\n/*\n  We can emit a notification here, before adding any subscriptions,\n  and the most recent value will be stored internally for any subscriptions that are added later\n*/\n\ndidClick.emit(Point2.givenXY(100, 150));\n\n/*\n  Passing true as the second parameter to subscribe() means that at the moment the subscription is created, the callback will always be invoked immediately using the event's most recent value (or undefined, if there is none)\n*/\nconst receipt = didClick.subscribe((point) => {\n  /* The value passed to the callback will be undefined if no events have occurred yet */\n  if (point == null) {\n    return;\n  }\n\n  console.log(`Clicked at ${point.x}, ${point.y}\");\n});\n\n// Calling emit again will notify subscribers as usual\ndidClick.emit(Point2.givenXY(40, 90));\n\nreceipt.cancel();\n```\n\n## Observable\n\n`TODO`\n\n# API Reference\n\n### Observable\n\n`TODO`\n\n### ObservableArray\n\n`TODO`\n\n### ObservableDict\n\n`TODO`\n\n### ObservableSet\n\n`TODO`\n\n### ReadOnlyObservable\n\n`TODO`\n\n### ReadOnlyObservableArray\n\n`TODO`\n\n### ReadOnlyObservableDict\n\n`TODO`\n\n### ReadOnlyObservableSet\n\n`TODO`\n\n### Receipt\n\n`TODO`\n\n### TypedEvent\n\n`TODO`\n","readmeFilename":"README.md"}