{"_id":"redux-sacala","_rev":"31-52f6831e32f8b0c43bf27af12a9ae8b4","name":"redux-sacala","dist-tags":{"latest":"0.3.7"},"versions":{"0.0.1":{"name":"redux-sacala","version":"0.0.1","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.1","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"3503469be45fef0db7460a43973f1ccfc6e7b547","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.1.tgz","fileCount":4,"integrity":"sha512-4VcYREDmoLnraMXw92UNP6huzPfuaql1MDuljHCaOX5yrXbJ6JZRDmEew2N5fgS+DBIBbYz2awwW3ZgYLsicFg==","signatures":[{"sig":"MEQCIEn5Y9Z41X+p9j8Fmc3+p4KHZabmXOW620beEWQvsxXtAiAkSJIW3b5I6bJ87UsMBHStkOH9vuJWjMvUL9AlKngFHw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhB64CRA9TVsSAnZWagAAZDUP/0R82qzdYCMaTdEdeFhf\nexC0Sb3PBLz/v3FBEkcsEmeQzeEVcCsAiqnQIF7+szbGMieVHv46g4LT82kp\n1z+hDIruBc07Qsl3dOkbp6fcem0MQBCgagSKwIVw2IRIKi+pGo9mmwaWjxes\nfGj6/8/l/o+PrmwCEV17ANu8ldKOkLL2nPKqYgn1ttOFmVRttDt2Tb9YPKrI\nS9tKKM2ZVtctNXb+4Gb92N/33cYRhW0nLAbzvlIwOnjMU5cMAeqioAxs0GpC\nh74OSdM+QauRPps4vXcQuXs0w9DJOlvph7qmKAdJGrZ48KFtiEjwEWUoRsgk\nlVB9VB+fA7M7A1Sixc6T4YzNXlmsobjOq4qxHGNJkSVntsGwzQqZ3lLoeb8u\ndP6hTboxi2OZibs8sz/+uVIljNu+buLAH9Cme9oRAZmOYYYlvOHsocKG0tvQ\nm8SYVQ5aPqtBupfgkC3Pcib1dL830hi+7u+37iNz7Bse9XrRrcHipeQN8wwm\n4l360l8lOMbebQl9GwJ1/saA9Wm7P05lgRbs7EIX4kDDrqCmoiGwUrb3PIk/\nvt9LRi0LWUIITiJp8Ymf2nRqnkc60S+D2Du17G4doVHuBE5GMqFuJE6yh2yT\noZeRWFV99j3E8drVHZrzC/jdrQDYEk/I/sYXSAISJ8O3zwZPEvlA1VZp2NIN\ncrLv\r\n=swIC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-block.js","types":"build/redux-block.d.ts","gitHead":"3e8070e0dc94c175567e41fff8f41beabed0f0df","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"5.7.1","directories":{},"_nodeVersion":"9.1.0","dependencies":{"redux":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.1_1535385271997_0.8562413260582018","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"redux-sacala","version":"0.0.2","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.2","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"f664f4ec873e6d736b3a735b6548167904572171","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.2.tgz","fileCount":4,"integrity":"sha512-EL+PtOy87ANDlkln7LZaLhlcoqhvNYdu/ULWvMlUiRCKnykkhXKORTMF6eXbrBDAgJAjLT9rb5kTso4BTYuAtQ==","signatures":[{"sig":"MEUCIAzEw9EXuA0wZMOS1AReneBeqrm0JMRYxiZXw684rWRnAiEA63guGihvs4XIzdOg2/QLBm0NW4bRipr7iq5q6olATm0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7644,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhFYKCRA9TVsSAnZWagAAzr0P/2bbRPYC6MpdYeCCO/LZ\nbaE2G1srRiRqyuSCr7aXS59h2wEx3WzwkF0VG05rDBPICxK3SdB1DsPsfhNI\nt9lYkpZDPGUsOd8mngXst9MS4K+NqcjXQGqfGacveExGWtOdLp/Olpue/EPL\nnPj51bS/HTJcfx5RNx2V9312v2s6cbKZtCmDqleG0PoTuN8rJUZQ5Fn/Gn3C\nM7GxUsR+VRzvRsbC8DTJVxsN/DgD2yYr6nrav59KW4kyb5tpk6qK9t+ZtX5+\ngz5orTtwAeqyMl/ftS/G3rcv5GKfHI04rWmHf/sZUZ1s3+NNcrcB7IWrdaHj\n5wfjhYMNJJZ/sni93FV1NrlzYdLYBhTWoFwS66pTthheLtK/P8aw4f1/qJ9O\nGXP3wFK9G+sTyoZl5ZBPeVhHSKqLuYuTarg1pVgZqh2ajPRSuk8Pq/DCbuFw\nmGityYpiyMTIW/ppofVuY4Dj9yLIT0Esuel0WRHB2y1Hu9YK4eoLY4qqL5IY\n0WM+kV9SCkXv9nKbLr63+muzvi4iG1rKSNXkSjQWlC35ptrDUx5TIrLSFihE\nqpK52cqtC4VvPkY+moct/Pm4fOhcDAidZ+3wAaalpWJsIlnBhFBm5vt2CDw4\nj9mznvfrwflgkgDXobLBKU7wEibNlRB9ExsiI9iSyrqtMUDqBTM09IdcRoC9\nbpeo\r\n=JLZZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"d0e72e907c8061117951abb6bd43ea7928e21b46","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"5.7.1","directories":{},"_nodeVersion":"9.1.0","dependencies":{"redux":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.2_1535399434005_0.9108679050866735","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"redux-sacala","version":"0.0.3","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.3","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"48c8802d327ee11339192b72221efb30d395c5d9","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.3.tgz","fileCount":4,"integrity":"sha512-jjq+chu+MrMMs2edehV7BCQQLCAur+0N2hl5lVYjxEgB+ddkQpz6NvsWf27Yg8uNL3FG6PRrYbuPjPj/xW9wOQ==","signatures":[{"sig":"MEYCIQDLBg87c/OoJggs8SmZ1LDRiIZJf6gwhTEFUzHR2Y8wTQIhANYdKnRK85orSBh8ZkXwHdHHUL5hiRtB7nv0IebDU6Fi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbp/PYCRA9TVsSAnZWagAAdg4P/3OBVLYNHlbQLQuxNOD0\ngKbsaQFZ2A/vJjN3UlTkWPRXuz81hsEcm+oakVwxZBGvO0JLxdt+/QH+UuyA\nuNe2a/l8kuq66R9c7M9WGGRT7ellWDPBHzhegTG6GRSv76Lja0yeBl5JkStF\nNPA3/Nox+6sfjT5oPj9q3Sz2UF3ndOTWeNhdSaZU/pIGTq/ptlb3KwqW7tya\ns6V/fVHVEQrKmGIlQlgQUqtEPY8VDArFN6enAE7lEALCtNz+83lbVul3h1tj\nxLpeyypLeVLfhyXYojQ+0oWQP+jv6cbZLPyChcVLqeS0i/5cH4yGaZZwsf+X\nkhN68BJRhM3BO+XzpndjXw/P+AmA6YXVkvUmQJN7ELoduXOpgSCPe5b0QFcN\nzLWYeLOQnDYO3Zuvi8AzTMVQfHjLnJat9AGnxxWkZBv30GFH/mfOYvbZ5iuu\n0w3vK0f+cRb1CxPj2NFrYrnpGsbd2LTVgzifISYoAlT38eT/bPm4IJuFi5wV\n/mKQOpwQexpo6f7RhTJ2HFTVw2JWmRrk8dLj5olZ7VCMOBZbsq6GtOHxMSCz\nQ9ZUENOXkKOKLomqE5tYZek0nDeuhf+hLrHm3Ddnhz3Sz70r92NVQN4Re+3e\nLvHN2mVrCMRTWLvQi0gDWqjgOgGJW/xk3WYx/m78DjuYfaqcj87PRNbTy4v/\ndC64\r\n=iAnQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"e1bee0f27d1f321407fef970d61087b0bcf8d9a7","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.4.1","directories":{},"_nodeVersion":"8.12.0","dependencies":{"redux":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.3_1537733591084_0.8722636232476395","host":"s3://npm-registry-packages"}},"0.0.4":{"name":"redux-sacala","version":"0.0.4","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.4","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"6ff955f92185e4a383f3b21a3cbe783f75350dcc","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.4.tgz","fileCount":4,"integrity":"sha512-rSNCiE0zRE1UON2avVn3P/WV+Ktj5RmZ2/mMpc0LRoUMHZG71JWhVVGXiw7XlygDU9/XUQyV+67qY0J1pnY7HQ==","signatures":[{"sig":"MEYCIQC/wbLv9xGD9GP8neGsPJwNZ2qAt/i3caE0BOOvBUDH8wIhAIRzP4RCXVsVzu6fYVzZPNZSkXEQypuhdGAr6d0VPY7p","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbp/eBCRA9TVsSAnZWagAA13wQAJg0tagcbMAH1CPKl5RR\n5+vTDWCstRk9tyvgvBY64arvVRuxDHMAGguc7mK2E6YedRPuYdcyTrcfpcL1\nb01cLxLouWZmEfZX6DEnFhd2UXlu1vCewg2xoL61DcUzRKgKcTjFn8/IiVoj\nEEAU87SIVcDTSRJXkrnuVUmambtZZvNQpELX35q7hgyfN1FZ/De0Ow5QZL1g\n7dcZROYvtkHrbtMzeg3R6CrURfPoUZ/rrRAaxMxgBhXwiCX0N0QZeT5LI9Xc\nDGI9a6DQmviqUdNxOgxbm0kahnD3z9n+j1yEjwlqNg88K0w6bSiNLjg6+uSO\njsSdlkbWvz3jtHUNUw2GWIGTI6cGLgB3D95CI0xpUjNKoMb+Rf0fSoEbou99\nat848ucHjVoaTQbkKJXbtJ9XyiukwprMs+SSbZVhvTyNvV0i+2R/Jv6sA3nj\njgSOO0jF0wRMQodk3bZJjedpfMj2fM7m7lg7ZDNwjsbEAI22e6O5nDdH/8/p\ngpnO1U1xqWEm/bHQ7Oq+ys4Y+RVpcoyiS1fHehwxAxucT1w8tumk/hfSfHAH\nAHO7hIfRAE6RL6sOgHUrW6dhl/oakdn23ugHRFFmfrOHSxqF2AqtPPWY7e4e\nfYURw9AQZB6NOsCdEavjnF2QPlF6sGpxYU2Xqf+dPQAEpiWFDxahqkfUbrpK\n7yuV\r\n=rRpm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"dd7a7c065a31dae474894df206670f7eb7bc8098","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.4.1","directories":{},"_nodeVersion":"8.12.0","dependencies":{"redux":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.4_1537734528708_0.3294298098736961","host":"s3://npm-registry-packages"}},"0.0.5":{"name":"redux-sacala","version":"0.0.5","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.5","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"bdeea5c42a040742fc9faddefff9eb935e3ca51d","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.5.tgz","fileCount":6,"integrity":"sha512-C0QoyQVY0K0QbKwk25NH6Y5VglTkgse6Slw9fXUKmFwE8Jn5y2SvqkOy8xvD/DHy6pj4DzjROhrf0srJesJ7QQ==","signatures":[{"sig":"MEQCIDoHBJX3OnjdrbeAck3ZKMeRMtvJ9J+JImuaPz080/THAiAiAbl+P0MYvnKNPXBa76/X2Z8HHb0SwekmH/dSrYsdgQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":12960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSkFXCRA9TVsSAnZWagAAlCUP/2EC1baRLMS6hMUwazPz\nxyRMrIHa/5cCFUiqSq62l0TJKaKRCPsVMka4ZuEjR4Kjctq1EZZ+Md1Vybt0\nHaudM/0auz5nhtsQc0ncFiHWRNQQDiRO5s1FyGlpZwF8a0v/f2wK7uqvwOrC\n2UC/ABA0oSjlSyBp9ucrSKDtw2DpgniVHTC6IGSuwBieb5UuLz66YtRMHPh6\nYYOD/Jms4euo7zZZH6lwc5O8ThUH1fACRTrKC6GhwIgi0E+PawB/xpQREPVT\nLNYTD0JIY7GbAqdWiSEL9hUXuX+COvTxdPZx6alZSi9yptU452Z/byEfBUj0\nZbKYcKoksIIdaqjuaSh9SukLrQhpkkwNPd3ef7w5C8okNI7dmKppqioO2Jqn\nmu2VzJY9b+3vQY8OcXvB+Wkn6yoCvex4EElAcl+BooBYAj5wXPDiHIs1EKzH\nZ+1aoT7uuG30cgeCSMs+ion8GE9hAXqhWLTPtJRJjsdMKcJKYg0pyJzu0BDA\nSDbn+2joJ7vX9vYLzCD7k/kywtulp8mSF7xcfQccuVH9Exue4qht8hyutwyK\nZxZKVKqF6UZajKQSR3NoikvosyBdm3czRbaMDTap882XanMoWZ8wNU1uMZgA\n2CmMQ3kkSzaCcY45lBbj6KTdKTSk6v/H9p/jR0i4T6izgNJH1QUak1Iho+vA\nHSzL\r\n=h9Ka\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"431c9cd5c4f24d9efda4326656b71b6b04aaab28","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.4.1","directories":{},"_nodeVersion":"8.12.0","dependencies":{"redux":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.5_1548370263117_0.6363205235333969","host":"s3://npm-registry-packages"}},"0.0.6":{"name":"redux-sacala","version":"0.0.6","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.6","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"189f12910f73a4140604bbb0d04b07a6c8bc3b53","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.6.tgz","fileCount":6,"integrity":"sha512-NZCLhEf9X3+6jAikGyz9ARKT4W4KS4sPXyKYdvcNWS6lZzKgVllAAViuYvUCd2m9X4E+rvNB/syjWPlxZNQx/g==","signatures":[{"sig":"MEUCIBQpOR03DgLBjx1UydZa4/7T9oqbCkTtGsU5Kd+hFnRlAiEAwwBmiRtgs1GzgUoho1z43H+Y06mQ4E9jc8aH3vAualk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13269,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcS3rVCRA9TVsSAnZWagAAWCIP/iKWQY+LdFu8I6QuV+zJ\nyn0kj3PrgedRAvjWLl0SNkoY34rTJ5ZrgR+Xx4yMtPQSSDeRb1ANeh5CvK6m\nRQ9NMOw7L7rhIiHQezwB2/R66bdyBmQz4O/s75eK+pN/NYJtCvLtTw0QxMXz\nfc0QczKT4e4UEEMPLHghs62Ctk6h6xh6bD64HIr+ouVrcBu+eijAF4g3/Icg\nZtOuG1RfuyBLu6N+VJaDslh+Bwgx00+ARtOTshpoDDUu0wRO/zpzr8W4BKZs\nEKf3A9VPY0o0xmwp2vAzkTe+BCpjTTuWTQxdSQbR+PSbInEXfKPAWk+l8ENE\n9SYdCVHsyjKoggMvXaFqCCiR+ASdrsrfKoGv38nTCaBuP2c/NB7fPtFX46N7\nRXtV3wGLF11gcAkjfOBut5Nm1WqEjHl4y5feaG1rvC5u8DREi0rwM4C2lYpL\nrFIudjHWQwTYJQuozu4ECHWydWYnH6Zhg9bSq+DzBob4uCjN+RJaxO2yi4wV\nz5JWCkOjMAkbE16ESYTThWGRyYITL4Wza9pHSiP18N8gn8PrxDAq0834jhhU\njmk4SWJYedxySvjoq16LioX09VvmQvvzC/B7mC/pv/74M6Ykr1RPzvj9X5Or\nXJKoCUBvQUhhCCNpmJV7QMvEUaYQy3axiU6qgqwa9skn5pZk5VoMzYrjju/m\nWv64\r\n=X9PN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"a92c2ed994b10bd24ebef3b00a33bc97bd88d6d0","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.4.1","directories":{},"_nodeVersion":"8.12.0","dependencies":{"redux":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.6_1548450516544_0.48769503673014913","host":"s3://npm-registry-packages"}},"0.0.7":{"name":"redux-sacala","version":"0.0.7","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.7","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"4e2ce23bedad2cb96ea7201a3df5c943b02fc352","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.7.tgz","fileCount":6,"integrity":"sha512-pNQy3Dq6MeVHfwSgl8ywykIplTGmflxyGwHRWQuIN5z/gcMdWCRiLNqbicWNKyTVF0JsGsN9SYildRPLW3X3kA==","signatures":[{"sig":"MEQCIHjUVIzmOJQrvQcr2DD7ya/kJL/xohTTCf5qWX41SPHIAiBk1OkagxgMLcmBgsdi7cXIysuSnA86f4CpQgQ51URaGw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13291,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcS5G/CRA9TVsSAnZWagAAg/4QAIFxfVQETTyiKeF7eZo5\nqYwGBsV7urcb2uuz3bdyvRnLLkHRY3cAj/g1Vrarv5WN5xVJ+UL37Q17ESqo\nia0bORuzkpt1CaXIMmzY0hoZ5kiGw0xgTQ8jrf0M9q9GYesZwWZmaZstOgN8\nSFQPz5AJg2I6tTTuNWs2+SEVDict80N6i2TqBEpTZ/mJnDDoI6hWHv+cn/GI\nppVRE/8HhybLGszZA3qtKVPyxZFgphyKaMlOnLKfUpjMN9T5QWK5Qm6ShaB8\nxHQVo0UAJzoINgMitRcd2ZEUp57ZGMx/UPjlq8t677b8WiWvM4MPuETHTF0+\nAuoHulimzIk5Zvbb8EvGiJfvuoQ3RFeWNmzNRl1G95AW5VapYh9EbBCl7hcj\njCqFRiOg78ytY4oDSQoKA6rJMJtlsGU249qgRHGzflrEeRbFfuWUqyhYL+1y\nAxMVMSQZ7xv+XOvKQXcMeEoDFRnfS0zRzYohEPZhdHyJwsKiMIwG+w45JEAL\nwcw6MZUTYe2KgpJ1bHSOz54vy/LzUt8yR34juRUgDMWOZ7rWqqDVkuvzO5xi\n9SANRq3UgiPPvFH7uLdRSW2BOp9FbF81+DlC2KrcqvZB04qpy2tvgJioOa74\nCTBfwpUN/c7QidZP/OKJJRz/mehHyt9/CXZxRj4e40oh9ouZf114IS8ON1SK\n+rP+\r\n=EkYX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"c0b026478cef1f4cba1e3221b321e93a40c74e88","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.4.1","directories":{},"_nodeVersion":"8.12.0","dependencies":{"redux":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.7_1548456383249_0.5857724924778096","host":"s3://npm-registry-packages"}},"0.0.8":{"name":"redux-sacala","version":"0.0.8","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.8","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"caa9b33b645539db0d5c1a66180aebf982a01e7d","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.8.tgz","fileCount":6,"integrity":"sha512-PFvcugdTpEWPf90HYfiNvkQfkcruMQMmy7vQIL1hgsRKKw0jsG22jKv7cZPTLhgVuPNucPMvw7RilPBetuN9Qw==","signatures":[{"sig":"MEUCIQDmaXNNm65bBT+8mYwX/YvUdQVqxijf9DjzoVv5UpsudAIgTk3hfac36aaBdjaCB46yjmob4WbdKC2ex8qbbqdokds=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13335,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYm1eCRA9TVsSAnZWagAAcrYP+wX1DPBGa8pRMbZxVVmd\nYhtuRXdnrdoTIrolSm4leCnRlxAQjR4CSOhpYY7L3XqWGPrRVklGEvi8o/dX\noEwO8JjFS9VJrNO9OF9USgG6F2t69BYYrNZJn/stP9NpvPEquqaEgxhiXIxA\n0Ls2GAsKVP0t24nmw4TCWcRJo64wJ9R2sRM7A8sb0/B6mUVZuz05l4iUg3Dn\nNh3oQScETiYIsRqnOxKpf+mG96N/JuADkDxIiRFP/lkzw0wsWpp08b4HlniM\nabY29kcioYcIYSKGjUL0BzHwzyIlG+uHRvrSudVh6Xf0W74W1CdWlTBjaJ0M\noswUkOjRw+Zi5CrdgftjAWgoEPSqkrtAQ8QSzpAWS9Mr7CLh4iV/H1SR8jxa\n42xvOViZ2nHik/fPJboURHShHyc8K0VEuThks9QTlOc/tFi+bDcT36RPQrGa\n9BPTCiRIVA4o0+2m+bWLvt18FfYgGZi1hWAO84B+lAjYKMeVKsSf3ADNEaP4\ncusBOiLqzzY2IMeB7gRq256T/SmecSq/cJqDSHeQh+bP43fN8OrkjtLXwqll\n2blB46tjWmbQSP4aH8lkei3DW6AvxXl6G1AW4dH4sAcdz+0bY4zeDmgLTiyS\n7uaTMMvSPYDu3S1Ymo0nFILpZBC/rG0/4jmip04OgvrfAJtwMwibFyERSO8f\nW243\r\n=Bw+O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"03a7ce70e4436dd3b386c5e925e0710688efa559","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.9.0","directories":{},"_nodeVersion":"10.16.2","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.5.3"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.8_1566731613799_0.8686761989823459","host":"s3://npm-registry-packages"}},"0.0.9":{"name":"redux-sacala","version":"0.0.9","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.9","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"10a43ed1703b2770be8585a80aa84792caea366a","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.9.tgz","fileCount":6,"integrity":"sha512-chfZ2rd+yTodgxIX9PQY7j8oef9Oi60rzw5f0o2uSD3wTFNDmFy43BTabfjOjYyiFHHo/uXdDoDJDe1PTXjmgQ==","signatures":[{"sig":"MEUCIQC5wWQqdF5KszZzJUoRQuH1hKwjXlt/8FviSV9UikvuKQIgWIJd3TxvqKunUsX5MkXtS2QzSDA8aOETB2XqqfLAtTg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13513,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYqw9CRA9TVsSAnZWagAAh+EP+wakAsHKzu0p/xMygetb\n38xr/i/EzP4Ozt1luwSLajIzlleVb80emT2WXsO1Wy5E7zxhZ4qRrGMi/ZoZ\nn424dfsalIjAqk4q6ykxja4q9ldurBsqBISKxzD1eEuphXcF6pEiJERoT3aU\n9U0hrljR8VyMWgMrq5SZsaa99YTL0/SWG2d5MmcLK30dHCdnfq8X52B4pHHx\nsR+7QFePqE6GubratPT1vchAxeSePvGCC+Hdakg7kxEr8xJptuxFrrF35DO8\nzBDarjbpzhiJ6v59PDaPq3g6s5g/1O3KyM7NQ9ABkCWfgkmJB0ykJJE6Bqci\nNPv5eOc/HOVLnZAvunfd/jB2OSEkDzjWSfDiX8M41zvy8v2qBJH4GhMygTTe\njn/ZzLCLxxXH/Nc4bn02GYNTwpPmUYuH+8+GYx1Wfq2Sh/hrp486mS2OYWB/\n6P+bFzQnuzsWfS1BWHZuMkgKvVaNRzQ7F0kdkfJW2aYs1/ylI+aGhoMFky4x\nX0Z0ZU+4jMVmyT2BrNNQ8koZrAi6fymg+DKZA3CeRapMgSZFCAQeyZM4e5yV\nVh/0HsP3m/b/KcG0EEzNJN/EVktPnczVHAfoeAPBM0SRXO951Xhild3BvuWt\npFk5FvkZKYJKjpA4kVRNmIT2080knnIPFkTuO3VcMRYI15hn1O3bvC+hdzZM\ngnz5\r\n=xqDq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"0e58b2a7a9d31efb3d1da517736985a4ddd24831","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.9.0","directories":{},"_nodeVersion":"10.16.2","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.5.3"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.9_1566747709438_0.5651013560763327","host":"s3://npm-registry-packages"}},"0.0.10":{"name":"redux-sacala","version":"0.0.10","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.10","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"c19abadeae1b70c3c5295593b08ad57f93bf5281","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.10.tgz","fileCount":6,"integrity":"sha512-f4cifsFbtjwfEQO9IObjr7aiaHA6j3k0cSqWSAT6Bib3jAiD/xjy1ewkvU0eoDnpexe2avkzRMKmJrwS2g4RdA==","signatures":[{"sig":"MEYCIQCt3oSFZ5gt1U0uYU43TADHV+m4U1RJgjm+w+vONpuKGQIhANtFqmmyIauW+xpvh569OtRzk/TcTSgGwHH52OSZvU3v","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYrp8CRA9TVsSAnZWagAA0WsP/3gUxbM6sFIr2YO5LRKl\nudPOxv7hMJMBQ+MLlxNIhWmnzTzgiGvqq1DrmGn2rprmN45BceZqpOBzWzBD\n7q0IKIdJIIGzxXGRLrdpEP2l+T3ZZtyA3HUh9Ynj3PfqQtuzrYc6LfOPbqGh\nEvHqiV4PAapg+PR2hfLAyVynFQ+gMxbktETdnAdxuvFepQDGZ18juGkjMLsZ\nPBHYDFKK8UiJ6jF9Y944M8N44I3/io3+T1zflglVUe5eXo5n0ZiR92lk1/Mi\ncpW97i5t6UZPqF2hxmPzv8sReevhaMKOfri2/fDyg69Rvp0zxoNwNKQuYjmk\nRCGZJu09o3+89QKNR4g5m0fGtIU0S9brtqaMLhHQPlhlL+ZxPsbCx5euv029\niikiu1KN406Dd5jqOJXJ3mkkBzjusScs0I1WL7IQNQ26V51gRZcxo3jHNU/Q\nnjBYbwfIqtsUuAmuITqDGm7zqSoqO2RXc50cnwA+MNESsjRnIMXTd91gMITH\nRAXZy2xoq5Bgn7SxLakDmYpJHRvRRwooP6PRGSvgvxLjPPW/0sc+N5R94+0P\nkWEiUD2A3LzoJkAHOoLZ5uEQbWt3fodmDViCNVbgykvKldd7YI3dWERT7+RJ\nkgYdWbmYsG+/fVzccDv6oEjmzn0fvF28tSz3yw0FJ+jgKWguVuA5Z07IchQT\npC3c\r\n=OVD7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"a42acd014f13745e766b8193ab99611fb6922636","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.9.0","directories":{},"_nodeVersion":"10.16.2","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.5.3"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.10_1566751355466_0.3227035709418633","host":"s3://npm-registry-packages"}},"0.0.11":{"name":"redux-sacala","version":"0.0.11","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.11","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"20fa21d3b59a77725f9adfff5498ba47909df696","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.11.tgz","fileCount":6,"integrity":"sha512-NA+B4cmsCHQ+t8Dp9fRt1vSN0PdNasbNI4N9tt/ObZ+y6vLrnMQxu5fayraN6b5tJGP1F1U78JjkMQWDavJkCw==","signatures":[{"sig":"MEYCIQD4a1sYjKeslZqMWN1dXVSRRRpyqAZ5YrOq4FcioCGR6AIhAKgIUYZfesSwo2/pM4lPM6sPFrS+dkrCeZ8HZKrrqHrr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13608,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYuZsCRA9TVsSAnZWagAAPCkP/2+P7GjsIJROmZSVn8k4\noq4NtK7ATXnLgyGnBbA0HDvezisIkW1DMNl87uczFE5fqcdqZnLHumVUaupe\nfzJo0Wz+FoHQhlp7Ddg+RyKyNS7AZHNeU0jPmjAXqH7kSHm60vAmNEGHeIBs\nvOc+k7osIpAF54krhQy5XS+6TOWhizcfDcS86PMsAax01o8SJrb+LHqy6ayb\npN8IKTrCHm3Ht81gTN2XUf6qy09VBs0WsBM5X8f2A82xvYFpr0V//te0evfq\nmbfZczL//3C1yO5KqPN+J/QdAqGXp6BRlsOZrQLbD80o64YhdJ0Q8A4p10FE\n33liPPMp8ZSZNhwVtwF7VlLXREtkvAeMKUkDzIjFeFb6AhcvEwR8YWb8PYhJ\n1l0vC0la5Y9EtimZ6OXETpUh7XoYqYiULZXBTLXiQSUUgRNK2P7IEUe69M04\nh7+3VkJcMTi3bTcbIkclfzGuKHGlNi0dcBgZMXUbsKQTBUBAGi1TKbN/e1VY\nfJIvBD4N/C+R9f5JiE9eMchoTUP62h4fKH9Re+Z1KtqhBu3fEgBAsqx6v7P5\n7d8LyD3Z6gDJqbse/RBq71pmCnNqSZQzDBOwBeKRzw11G45iZKPAQdy7iOp3\nubrcJXjZpvzitfmCh+G8D2V+MmiSaKTxpGOEBGV42tVfKN79g4boH2eLWaLX\nP37w\r\n=rWk/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"3aa8774ef7c37fc969e6f6b610caa34517ab921c","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.9.0","directories":{},"_nodeVersion":"10.16.2","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.5.3"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.11_1566762603891_0.39481269786638395","host":"s3://npm-registry-packages"}},"0.0.12":{"name":"redux-sacala","version":"0.0.12","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.12","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"8b1249912b30dafa93d5714f2a5409141fe86198","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.12.tgz","fileCount":6,"integrity":"sha512-f6uuXdxGYeLyWVNXWH+uZWuXkJusTGRNF9DWmkLR4wRhelF7KG9ssbgtoe6FPI2R3Mw6AKffIlrMpDs3qPyg9w==","signatures":[{"sig":"MEYCIQDmTBmT0PgGdFwPUiDl6nCr7Yp9tFoZjqxCpag42FxthgIhAJH2G69y+bye9emc+FhlMOcKQO8kHp4ugt+LAL3HKe7U","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdfWMVCRA9TVsSAnZWagAAnj0P/20bTQQJdBIKaXggLGuH\nH+Oak5as+5X3DYA3hCvKKP86SI8GBwMtbmoWGTYCibySXsUUqcmIy9Q0JLkj\nd6R6vetF8OP6M98NJdZ8AjXOT7WpXcW/QbHEG/0bvJqnfT5TdCpy7BqQkrnF\nq+nsgun3r89xrmty5cfYf/70yGHsYNTjL3dr/UihJ7RPpet6YB7uGNgt7nIu\nKxBviy/KP/a5mPKr/iKrKgxjPKMcbcJgpD1rHcOJJM8JEFf9QOwDHl/p3rV+\nRFFHRev+jpzCHX/7jqaygC8rB8SZJrp4clUyZAmVC73GYRseCjcRGpio6//K\nHphUvadxx3726gKsLYPOPg2A8v3PsPy5WLETcV3eamreOZW0OEiIUDB8gtnt\nPugdQqWET/V6KPX/1LCzRyOO1X7tq3P/f6Xr4FcHPFwGwKPSNdAgrofcejeV\n1Aw87nA1xAtOeIwQmVy1XQ/Ir+qbKxkbjJBfp/yGQnqV1sZVVRE85d0ibpwK\nMZIJ90X/V7bnsuhAlpA06i7xedAEqp0XEGmvhUEtK5qCVm7iwZVOz1cyBa2r\n80Tg6lZjpQnRg4G2qCkXr4RA00czWlLnqWIj70n/mSOtDX7obGuBJ/3HMfKM\nG2SH+W9uSJ+2+/6Mkz9GvM4Z5i24Vc/XLljjoxOfPXjG93+hA4Zj9cKTD99V\nrqRR\r\n=s8wX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"58ec5b8c0c7742f5c0d488cdf99133b3b259f719","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.9.0","directories":{},"_nodeVersion":"10.16.2","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.5.3"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.12_1568498452318_0.07238932355483896","host":"s3://npm-registry-packages"}},"0.0.13":{"name":"redux-sacala","version":"0.0.13","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.13","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"207cbea42dc9df4aee6f849521802cbb3a7cd9b9","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.13.tgz","fileCount":6,"integrity":"sha512-o0Azp/s82IzJiaiOv5qp3W3N5Z42WUvygioFxBuN536FWs1ch5PgutrrQ0/jyR8R7ep0q3zOAU1WRdiVBjZevA==","signatures":[{"sig":"MEUCIQCRwwRdLx2z/bD8hZ22VVt2Lb3zPR39wYksdD91ljW4BAIgV7hIbxDlhrueHtdkQtTQh/9RCpbs0DM6qmUDE5Dulp4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13494,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdfXYQCRA9TVsSAnZWagAAqoYQAIzT22yq1YPCkRQPZ4K5\nwn+Qx0JXQlJUm1pkMg/6ZuxckMD479O0LATbWIEkpNX/OSO6JdpJZLllktHt\nQwwo7tN7N89Slcg61I5X3TKPBz1foci4wGembNHEVZ/tLsp2l8lUrwXyvY1/\nV5YAZeOoHBrz6atcYNBYUtMKtKzLh8/7G/IBrOvw2Q5u1RlSFvcF3YryeDvb\nncTbPIP+sXisZMSZIqvG+xLKo8MvHiu6IHcFQ8pFHqd/9MPKdWEkobzw1RhM\nfHiWHJyN4w6/I5Gk9HUSpG8tTvRtnKVpWPQiN1kBIREixXU8taWo1mwZmKaV\nM9cd9jYqEinPNBeAWXLKzHt13ZhtFzHq7KLR7OwUF/bfjiaF37eV9+eJphLw\nbnML/XctKi6rs0IvzMjnEzOxrvH/UnrnNL0CC0V6JDd/pClWkdAhSe4ER6y7\nsXy4Gz4HuwDnZICV0TeF3Rgl49ZiMwA7VJVSljHNxVGlSAsPiX1JCClhQXIi\nG/e15iXmZExWA8G72kAK5vXZ/stJ7hw4Ns6Yb9Y4ZKIwPoqPM4wos0WoOh+i\nisqQD1Gq6ZSzl44btdR0O7fFgAxbXkcBmXGO9celoVyiqLIAaSe7nAP3G1Uy\nXvPTOmlU7sqKjx2SIMrQMV7+f+GnMvLSiTEzsU+Jzk5y2SAnQIb/K31D1PCK\nhe/p\r\n=Ew4R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"11924d4f87d5cbed44824081793167b7eba941a5","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.9.0","directories":{},"_nodeVersion":"10.16.2","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.5.3"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.13_1568503312092_0.2747082697193832","host":"s3://npm-registry-packages"}},"0.0.14":{"name":"redux-sacala","version":"0.0.14","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.14","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"2898cd40c2ae535bcf4586ea191e5bdb515e9811","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.14.tgz","fileCount":6,"integrity":"sha512-PxUt9nkzZ0zBz/TQn6Opj9YedmO1le9hp4pRp7bVierQwMSQhiu58SK6lQh6IeKdZoKkwAas3Tmy9vr24eTZyw==","signatures":[{"sig":"MEQCIDQdwfUWJzRdLDt0yrY2tEakRW3LA4EuvVops1cVqfJEAiBh9pFpaF2LyUv2DDeB0nmNiEA1yNzDohF8/Kr/rACziw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13523,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJduixPCRA9TVsSAnZWagAAgdAP/RNSqKnf3hnupxo00MYP\nfc5fa93Q0hnPNoq61XkZ3OVQ2zD4FTFgJ05aTM0yHPndI3tNhYF/AOBW+AvO\nNlsn7x4+c+eCW5/6g/X1bGn05EqeYgL8ba0ihsbHhEu6p4bkKrqZF0WJC64Z\n6cTRt8+dinT8ZfR57qKqvCZOl57wrFGekfNx9x2XZ1Z67q7G/imoPYrOG9yg\nVPSiCRf40aC6XMf/vAw4WEeiQSZMKHw4/E6/kNevupzCV6LLxUllhoz9fwGs\nMTOt0sOA5JX1d3/FJC8MvvWCvJe2oMg71/vE6wf6cqGJFHn9AZgqac9tTlhy\njdx5BBn4mA7u32DuJxKqu5K/n22nk23X/LRcDweQLyLK9X+hQNvweLqJ2Yab\nj6YPVX2YRoVWfKo1zGUvCh3pvcTVupysr7Nhhhl9+6NI37bhlDPbUnre4ksH\nxH2+pVyZw2iEQ9LsJFCIL9BajvRQfxHBaF6Cd29C1BQS7ShpcUkEroQwSQGt\nD1LGt8jeGlcDUkXve68gJGDRsi0zkk7+fLbe6h9B4k864FmmGHSXstcJcm0d\n72S3gcYy9lyximugYlKktZcukK5fOX74ZoA3BBqfICjWLodJOsDBpeVdaij1\ntzJEsDsU2XGtNZjSz0ohqq4KnCdExtb7kZ3H5oNoZ7YBzUVq7vtQgJCTYEjI\n+ePW\r\n=T1Kh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"d647bd2f8e3cbbcd3aec8c82cecf10fe94c17b47","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.4.1","directories":{},"_nodeVersion":"10.15.0","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.6.4"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.14_1572482127583_0.8408378679067943","host":"s3://npm-registry-packages"}},"0.0.15":{"name":"redux-sacala","version":"0.0.15","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.15","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"eada15f5be57d7adc464faeb970bdb1bde03c7b1","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.15.tgz","fileCount":6,"integrity":"sha512-yY0FtFyysEVZBZ0iSO3BOWoxz1Bs36yISFp2L/w27ec9xLzfwdIpVrQcgcyyCi8m1GjTp9XnbSVmGJu2EcoV6g==","signatures":[{"sig":"MEUCIQCAcprOK2wji0eV2/tzYzy2m2sMxVWPbQPxW34V5okbEAIgY1Nrnzk9/eIn2DzRYgJvmhXresUWc9qhfZ7bLNzvmEA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdui8+CRA9TVsSAnZWagAAFYAP/0brkDupbj/dXhTd/ou2\n4xThmRs9hi0/0FqhuCN9sBzqD0Wx8AtPlgJCwK0nYcUXmTLnLi1qTXsuEgn6\n5OAL7Z+OGdyJ+0MNGPyUoA5lRj9qqMjJwUtLou0vn6F32JtPDr0jGPBAsy6p\nct6LcOMCc6yCy7byanmSCZnaiC2sL8wQubIsXxzOwtAt7scOBa532luHVR8p\nyHMH3cMQRkk0BDejKUYEiIZI+mdPnc1aYsXzVUfxhhyleJhdfSZDQg676oN6\nW5CkH5MsEeiTBYgFCR9tFxLyCZZy0MFH/uSjbUKeNcYjq5zhdsTEJqLPz+oR\nxvIPd/CgFkH/sqjAPTLIbuIAftasmk2Kpg9d5iNZKRFBv5IOH/cdLtmrcO23\nXSgCgwxPBfdEImU7/Vf/rLETqpuiid/hFtBDUTmFT3sEcxnTa80bjSqtqEvw\npbgmf5w5rbAeFMSWqFZyI5h+ytg2fBVLYHGGCJFacdk/tI+1HHbvcFxGn3uR\ntK+y+tlIjNHSEG55YfBr/Cms7dM6PFfmE67hywZyms5fBt6Gp80XK6bIzsb9\nM8RTxy6dCRD35eJmorFtRJKTvFz2iHWAfDsnH+8QtU6sOc73GsJ1ARxs4iBV\nL6NRCaSTMYt5yU8mRyxya09npPqJPZf46aDL2KrSF732dCmqPnWugL0MBF5q\noFCc\r\n=dLp4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"3c1b54707211a159ec1387ae9a5c0f1316179a46","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.4.1","directories":{},"_nodeVersion":"10.15.0","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.6.4"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.15_1572482878135_0.6100892694010076","host":"s3://npm-registry-packages"}},"0.0.16":{"name":"redux-sacala","version":"0.0.16","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.16","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"d43a127473dec1a7ac895c65db41a531688ef7f4","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.16.tgz","fileCount":6,"integrity":"sha512-RuoYZJzrCpCoXvsNthAF3R2vjhA4ZCoIrg/LJcRYzzRdqWGu10DqxL7srJombVaFkde4rCZ4YQQmKGasjb5kDA==","signatures":[{"sig":"MEYCIQCNMuDH03hGDHMu7b8VDfPexu613r99T9QS64HtyefjCwIhAK7UqAIxTsW3bZaYw4ZsZY0N0QWbJdW0f73cFZf1mU6m","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdujA2CRA9TVsSAnZWagAA4McP/1+/qbnNcFl7F+DBEpGX\nsdr+7tFn7qyeAg+Fxsv0Iiu5kEnoaNpEAjbytWG0voumhNHDPFwv1dLP2v26\n3d52+zwf4/LYsxTXf6bcL1sAovPowxb/+RCFLIRHyXh+QHFKjklB5+MDmf/E\n+tZAfV416aOT4Y9uDFlwCiQpCkTJinDFiMfCA5sgD66nrvD9SkK5QvKm0wv7\nWmNldjlDDdpdOLhj/Qb0dZ/fwUKQT+qwap7CnumAwpGBhXajuv0gn+opMbMK\njSjYRVhPz/v8CAshr22EhNEf4ZBQ+nmivXb7Jp9eitenkcyOMnWJj48DIp02\nkb6/HXSeFTlWYPVO4ZkfatE/ni5X9hvfscO+c2iKqMpwHB/Rx2dISKNBB+X7\nhY16lFreKQQ2Q0PPbsg0H0R+6wmMKz1DYvOaYulwk3Qfa7UPVL10YPzjNqBS\noaox5z48uGNeqw19gHVIjvmvjEZWh+N9qv/9TBh4QcUh07z2MZGRFHeY4VSE\n2bP7ImO8liNnwsEFqiHVXuMXPs0huPph3vXWZNCHmj1/5ylGiKB2giPOXjI/\nkkU2buNlVDBgWo3o9F3qY6V3TkQJ5TvR9dNoA8FasF4vgC5JeuO7EVsLw0HH\nOxz64zJk2S2JweRVcSEEseXSsm+0F+xA+l8PwBc3hTyJmetsiHehmACTNDwp\n2/NQ\r\n=P3jO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"91e769876acffadb51932da662edabb23a3e946b","scripts":{"prepublish":"tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"6.4.1","directories":{},"_nodeVersion":"10.15.0","dependencies":{"redux":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.6.4"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.16_1572483125619_0.8858885997469605","host":"s3://npm-registry-packages"}},"0.0.17":{"name":"redux-sacala","version":"0.0.17","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.17","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"e93c26e0a598eaa833e7eb57d1ca3bb5d792b77f","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.17.tgz","fileCount":14,"integrity":"sha512-7iXx1LiUs5BobtGqss8WUTJFN9G8dZU3cdBB7qaDEnDvkz2zlhi8Qin87drxAge0/M0lKlCCO11kn0rjFaFpcg==","signatures":[{"sig":"MEUCIHyA77Et2B4/3ujpNFtiUHiq4hiwufHwkesHN2wIDGlrAiEAnGXQRIQ1UPt5DLtKdQJpr4sIa5mGXpj1oFCQHUM4PCI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18857},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"8322ced3d99fe37534fcadda63572dfbee008f4e","scripts":{"test":"jest src","prepublish":"jest src && tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"9.7.2","directories":{},"_nodeVersion":"16.15.1","_hasShrinkwrap":false,"devDependencies":{"jest":"29.5.0","babel-jest":"29.5.0","typescript":"5.1.3","@babel/core":"7.22.5","@types/jest":"29.5.2","@babel/preset-env":"7.22.5","@babel/preset-typescript":"7.22.5"},"peerDependencies":{"redux":"^4.2.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.17_1687678120083_0.8719309580412327","host":"s3://npm-registry-packages"}},"0.0.18":{"name":"redux-sacala","version":"0.0.18","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.0.18","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"4bd1e9563968c9d1ff5e071dfa2c356f9ae922a6","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.0.18.tgz","fileCount":15,"integrity":"sha512-zttO/SowpW4FCnzdEEiz0PAcBwUzPAQcOE+ep0JOHaturA4h2Ludw2HM1ywe8G83O2eIVDB+InzRTdpKTKIxqg==","signatures":[{"sig":"MEUCIQCE2pBZZ6omLNlZJ9ziXfNfn7horYlvs8dsgzj0kNtM1wIgX7qYibvyykrTpVowt//PlSQM+YdCu9t2liuztsDuPcA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19397},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","gitHead":"cb7e60e433e6b1f66d559f96526de423d4435b66","scripts":{"test":"jest src","prepublish":"jest src && tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"9.7.2","directories":{},"_nodeVersion":"16.15.1","_hasShrinkwrap":false,"devDependencies":{"jest":"29.5.0","babel-jest":"29.5.0","typescript":"5.1.3","@babel/core":"7.22.5","@types/jest":"29.5.2","@babel/preset-env":"7.22.5","@babel/preset-typescript":"7.22.5"},"peerDependencies":{"redux":"^4.2.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.0.18_1687685640762_0.9724410727512027","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"redux-sacala","version":"0.1.0","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.1.0","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"a3d954bf3cff8f942e4383f3f424a1094ff92fd7","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.1.0.tgz","fileCount":15,"integrity":"sha512-TYnKkTmGB0O8CvQ/7O8t3txPkYqrmUkDQAaDdlsTsjTV3V3vx8M/yqm5pChlxgEJIf0OnMO2vl0jLoUn9jgs9Q==","signatures":[{"sig":"MEUCIQDhX+06HydX8N8GIQuOcFx+l9Zo8903uSqtxS/BghvJpQIgcooOTYqxK1erIoNcphg7nyCGvr7HpYfr+mLKN27YYX4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19399},"main":"build/redux-sacala.js","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","gitHead":"65d4bbd78bbaef75b199f323a6086a4b3d50646d","scripts":{"test":"jest src","prepublishOnly":"jest src && tsc"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"10.9.1","directories":{},"_nodeVersion":"22.11.0","_hasShrinkwrap":false,"devDependencies":{"jest":"29.7.0","ts-jest":"29.2.5","typescript":"5.7.2","@types/jest":"29.5.14"},"peerDependencies":{"redux":"^4.2.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.1.0_1732468440563_0.8116564995742486","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"redux-sacala","version":"0.2.0","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.2.0","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"76436658ec96008bc5f3e767cb08412036e11653","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.2.0.tgz","fileCount":19,"integrity":"sha512-zwkeyGi4SGJN7T87aKqAYINT40ZpoBT3EE6uIplQaWEhAF4aCObE+ETAIPb7cQf3vKXeUMQSCmHB6CMIMGiYkQ==","signatures":[{"sig":"MEUCIQCaJTAKRQNglpFipnJWUKBeLvosQX/O2fwRgVBw1/CzygIgTisSMtnuNM1U+DB1auz7qmELvq11Vda/25pMMp2O2nE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20104},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"925110cce7c625b4d59469789ff81f4ae2178614","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"11.6.1","description":"A lightweight utility to create Redux blocks with minimal boilerplate, featuring type-safe actions, reducers, and side effects.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.0","eslint":"9.39.2","vitest":"4.0.16","prettier":"3.7.4","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.3","vite-plugin-dts":"4.5.4","typescript-eslint":"8.51.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.51.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.2.0_1767471867403_0.018384918221200586","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"redux-sacala","version":"0.2.1","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.2.1","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"70bb0b76de7d073587888a5f980364fdd590590d","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.2.1.tgz","fileCount":7,"integrity":"sha512-M84yWaP4kT84G1tn7OOpPl7hJox9UNjPtTUjqzWKeDmtx3G+F5ExbD7Oa8BpRDaocHwejc9so8odt//uRd479w==","signatures":[{"sig":"MEUCIBfhD8Y3ei9Fpseo7fd7Gg9AYYSL5nFiDV6GHRG3e9pVAiEAjRvFKvVzJIix0SB8h1ZgsnXfu1knrfCVHMi5TiV55fU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24191},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"f4c4432d2e4fa0e9ba9edf4f25959acd755c30cd","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"11.6.1","description":"A lightweight utility to create Redux blocks with minimal boilerplate, featuring type-safe actions, reducers, and side effects.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.0","eslint":"9.39.2","vitest":"4.0.16","prettier":"3.7.4","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.3","vite-plugin-dts":"4.5.4","typescript-eslint":"8.51.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.51.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.2.1_1767472181458_0.6401749590823718","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"redux-sacala","version":"0.2.2","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.2.2","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"c8c1a39927e4330e3a018d47261f42528fcc5d43","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.2.2.tgz","fileCount":7,"integrity":"sha512-/qZUpdr7qMycLzf3s71kDvG28Q1VZPLUfFs1QSlSLuxsuzDoOjFFfRFOkRUcHTAmnHB+bdgu3ESrcc3/9uRx4A==","signatures":[{"sig":"MEYCIQDFR1gfc2tHNMLTTcxlBzobtuvY/wCwS7GwbokG4Eze8wIhAJbIwnvZgU8fjcyjsC3/LWkZrXa2yFc91v9ockMaUZsh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24191},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"d67c6550b56fb579260aef3b2e49df9437a5ee88","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"11.6.1","description":"A lightweight utility to create Redux blocks with minimal boilerplate, featuring type-safe actions, reducers, and side effects.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.0","eslint":"9.39.2","vitest":"4.0.16","prettier":"3.7.4","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.3","vite-plugin-dts":"4.5.4","typescript-eslint":"8.51.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.51.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.2.2_1767478578751_0.10698302005688953","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"redux-sacala","version":"0.3.0","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.3.0","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"34f7387e78ec22f9c0ce3963e1b74ab7853f8b49","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.3.0.tgz","fileCount":8,"integrity":"sha512-1Hfv3r/XFFbXhe2PLWTxJLeudPOtdjXGNOWBVzVZo+b9H+J8SKbkNHq4EmFLdWXmkfTAGeJR7hbmoyTRhrdTrw==","signatures":[{"sig":"MEQCIB0ZgKwnDbTPSbVWblKD6ZO6ouyDuOV1hsT3TAp+ndlvAiBykWh0LmBm8jn8vUwbJ0VL+9u1i6vaRtgO4mn4zCWsUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42454},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"1d87b4d6cb90090a19fa80ea8a1b06507b4670ae","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"11.6.1","description":"A library for creating composable Redux blocks with state, actions, and effects.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.0","eslint":"9.39.2","vitest":"4.0.16","prettier":"3.7.4","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.3","vite-plugin-dts":"4.5.4","typescript-eslint":"8.51.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.51.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.3.0_1767664913817_0.42807787202997094","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"redux-sacala","version":"0.3.1","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.3.1","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"5c89acd0d97f327328420cef5bbede47c5c370ba","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.3.1.tgz","fileCount":8,"integrity":"sha512-Fd/zzx8JDLrii1xIRE0OX1PyU8Oj44zFctVosBHnl3T/O/4ldGqTLVFXa4duS4Mb/vdyH37WemiEMQ9zlmv1NA==","signatures":[{"sig":"MEUCIQCqnfm/NvSYEQQ5DZ1tAv84imBobGsOXNGfmHpPeAj8XgIgSjHzi4iWCNYpbGpNalepOFPAeQ6bYR8Tv+4L1q1jweA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43367},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"6347ea0a0998337c120d386f8e2c982ee9791c5e","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"11.6.1","description":"A library for creating composable Redux blocks with state, actions, and effects.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.0","eslint":"9.39.2","vitest":"4.0.16","prettier":"3.7.4","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.3","vite-plugin-dts":"4.5.4","typescript-eslint":"8.51.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.51.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.3.1_1767732973928_0.33756625134519047","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"redux-sacala","version":"0.3.2","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"_id":"redux-sacala@0.3.2","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"294932c8fbe199a3456274c27a79f2dd9e1c1892","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.3.2.tgz","fileCount":7,"integrity":"sha512-oZGTAjo54ERsIJbz7LQmTzj3A79OWGY+fS8bM614l5bg6lKXy0r6qqJKGRu0Jqahp9FTp9tMHO4pSFrHyPnHpA==","signatures":[{"sig":"MEUCICjocUYO9vzP9co2DI3aI21QVwlLNpxLV9PIFVGvPkXbAiEAznK3Ypug/fUBeq0NLTnw5b+/FIKzJfdpv9CLzbwlTeU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54823},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"269886b105735842c874dc2b4692e73ac1191d6a","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"11.6.1","description":"A library for creating composable Redux blocks with state, actions, and effects.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.1","eslint":"9.39.2","vitest":"4.0.17","prettier":"3.7.4","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.8","vite-plugin-dts":"4.5.4","@reduxjs/toolkit":"2.11.2","typescript-eslint":"8.53.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.53.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.0","@reduxjs/toolkit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.3.2_1768436383651_0.6504987173690862","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"redux-sacala","version":"0.3.3","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"license":"MIT","_id":"redux-sacala@0.3.3","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"dist":{"shasum":"1de6f79c1a74a241a5b89224a126ccccbb54725d","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.3.3.tgz","fileCount":8,"integrity":"sha512-Hup9ymivIdvJ3SX+tu9yE4Q1T99Q6jDOgG7KdidKAXfQY9deObiL20WPupqxgIurRn6ZWkMJXAV8cxBl2OYvqw==","signatures":[{"sig":"MEQCIHyV/4KQCqOu22ZsADmDNUW8oT42QUED+5E5/UTIE4nqAiAQGyF+YaK51nSYrfpcacNPqugY0GMNG+C3m3sFrKBlIg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55957},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"a0e9f0731896e974a8b40085aaebd0ca2871015d","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"_npmVersion":"11.6.1","description":"A library for creating composable Redux blocks with state, actions, and effects.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.1","eslint":"9.39.2","vitest":"4.0.17","prettier":"3.7.4","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.8","vite-plugin-dts":"4.5.4","@reduxjs/toolkit":"2.11.2","typescript-eslint":"8.53.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.53.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.0","@reduxjs/toolkit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.3.3_1768436604653_0.6580371721690887","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"redux-sacala","version":"0.3.4","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"license":"MIT","_id":"redux-sacala@0.3.4","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"homepage":"https://github.com/monkin/redux-sacala#readme","bugs":{"url":"https://github.com/monkin/redux-sacala/issues"},"dist":{"shasum":"90a17bfd1444656d00db37d7bc6f497dbb9797a6","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.3.4.tgz","fileCount":8,"integrity":"sha512-UJ3UnpwTb68Yu3hX1F1rZgoGkYv71CiBM5ePWoUbkrxBcQ3HifvNmWZgiGX9BikrjPTKKjvJHmRxyszkMLIg3Q==","signatures":[{"sig":"MEYCIQCTcAbFjFi1wc7HzzTtjl7UYw02p26rjy1/h0lthhIeIQIhAMMODcPUum9Eckx4JopPCMpA+deGU2kZSmgLrkK1zhtI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56220},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"e3e17048e24501816587a0a59af5e3e8e348058b","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"repository":{"url":"git+https://github.com/monkin/redux-sacala.git","type":"git"},"_npmVersion":"11.6.1","description":"A library for creating composable Redux blocks with state, actions, and effects.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.1","eslint":"9.39.2","vitest":"4.0.17","prettier":"3.8.0","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.8","vite-plugin-dts":"4.5.4","@reduxjs/toolkit":"2.11.2","typescript-eslint":"8.53.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.53.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.0","@reduxjs/toolkit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.3.4_1768602810459_0.2696238212904931","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"redux-sacala","version":"0.3.5","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"license":"MIT","_id":"redux-sacala@0.3.5","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"homepage":"https://github.com/monkin/redux-sacala#readme","bugs":{"url":"https://github.com/monkin/redux-sacala/issues"},"dist":{"shasum":"fa522e947d3590678a1c82bdc7641b4ddef2f216","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.3.5.tgz","fileCount":8,"integrity":"sha512-g7tz4SS3O2q20UBdggf8nDwBMG8hXhjtvMMSfw4CdWdOyuRvUc5np1V6TAwGX1DhEINuODDr+ebTBprVhM+G6A==","signatures":[{"sig":"MEUCIA/LYvzBqP9t7M5eOYUfGc0EPPCt0eqi46Cpuh6mhv2+AiEA5uPY1rCUgVFCVQA68SXr/jtvrtYyUfCDr9RtwoNiquY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57661},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"ad590ad04dfe41b1e601c692e6c8753222683769","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"repository":{"url":"git+https://github.com/monkin/redux-sacala.git","type":"git"},"_npmVersion":"11.6.1","description":"[![Tests](https://github.com/monkin/redux-sacala/actions/workflows/test.yml/badge.svg)](https://github.com/monkin/redux-sacala/actions/workflows/test.yml)","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.1","eslint":"9.39.2","vitest":"4.0.17","prettier":"3.8.0","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.8","vite-plugin-dts":"4.5.4","@reduxjs/toolkit":"2.11.2","typescript-eslint":"8.53.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.53.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.0","@reduxjs/toolkit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.3.5_1768613233279_0.9808101228099131","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"redux-sacala","version":"0.3.6","author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"license":"MIT","_id":"redux-sacala@0.3.6","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"homepage":"https://github.com/monkin/redux-sacala#readme","bugs":{"url":"https://github.com/monkin/redux-sacala/issues"},"dist":{"shasum":"25d5247c971f7c19cb6ff2387764316bf4a742f9","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.3.6.tgz","fileCount":8,"integrity":"sha512-7TAJZt0WcJ0CKypn8+nAVfaplEWaEMpgmqOgLgJmFrrSHYDgUp0dQPYCbamgDxWhnRSlEFm+5O6lVBDGaGz3fQ==","signatures":[{"sig":"MEUCIQDpEQWpCquKqZF0tfprTOpUGK7zaB8eODF2VdZ7ssz6EAIgEBMwV0vkxUYtbpMQ6SFpf1rjcclTmImoRNVLSr7dxVc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60930},"main":"build/redux-sacala.cjs","type":"module","types":"build/redux-sacala.d.ts","module":"build/redux-sacala.js","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"gitHead":"dfdf00de37efb2c9aa7d2206fb48a9e915d8ac3e","scripts":{"lint":"eslint .","test":"vitest run","build":"vite build","format":"prettier --write .","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"repository":{"url":"git+https://github.com/monkin/redux-sacala.git","type":"git"},"_npmVersion":"11.6.1","description":"[![tests](https://github.com/monkin/redux-sacala/actions/workflows/test.yml/badge.svg)](https://github.com/monkin/redux-sacala/actions/workflows/test.yml)","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"vite":"7.3.1","eslint":"9.39.2","vitest":"4.0.17","prettier":"3.8.0","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.8","vite-plugin-dts":"4.5.4","@reduxjs/toolkit":"2.11.2","typescript-eslint":"8.53.0","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.53.0","@typescript-eslint/eslint-plugin":"8.51.0"},"peerDependencies":{"redux":"^5.0.0","@reduxjs/toolkit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/redux-sacala_0.3.6_1768613398668_0.9042070017744164","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"redux-sacala","version":"0.3.7","description":"A library for creating composable Redux blocks with state, actions, and effects","license":"MIT","repository":{"type":"git","url":"git+https://github.com/monkin/redux-sacala.git"},"bugs":{"url":"https://github.com/monkin/redux-sacala/issues"},"homepage":"https://github.com/monkin/redux-sacala#readme","type":"module","keywords":["redux","state-management","composition","typescript","toolkit"],"author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"sideEffects":false,"engines":{"node":">=18"},"module":"build/redux-sacala.js","main":"build/redux-sacala.cjs","types":"build/redux-sacala.d.ts","exports":{".":{"types":"./build/redux-sacala.d.ts","import":"./build/redux-sacala.js","require":"./build/redux-sacala.cjs"}},"peerDependencies":{"@reduxjs/toolkit":"^2.0.0","redux":"^5.0.0"},"devDependencies":{"@eslint/js":"9.39.2","@reduxjs/toolkit":"2.11.2","@types/node":"25.0.9","@typescript-eslint/eslint-plugin":"8.53.0","@typescript-eslint/parser":"8.53.0","eslint":"9.39.2","eslint-config-prettier":"10.1.8","prettier":"3.8.0","typescript":"5.9.3","typescript-eslint":"8.53.0","vite":"7.3.1","vite-plugin-dts":"4.5.4","vitest":"4.0.17"},"scripts":{"build":"vite build","prepublishOnly":"npm run lint && npm test && npm run build","test":"vitest run","lint":"eslint .","lint:fix":"eslint . --fix","format":"prettier --write ."},"gitHead":"a3e43f7cddd136b1fb1d7cf80eebecef6104ff72","_id":"redux-sacala@0.3.7","_nodeVersion":"24.11.0","_npmVersion":"11.6.1","dist":{"integrity":"sha512-XSN4PYxvLR/U9PHgdQBidIOK0mZLcxlj67KU9+O2GDl//RgKKBI2m7IVf7HRkTj/plY8JPv+TSLXfY0qvXHmOQ==","shasum":"9216b9736c4cebeff2e46ca733e4ab4d268f8953","tarball":"https://registry.npmjs.org/redux-sacala/-/redux-sacala-0.3.7.tgz","fileCount":8,"unpackedSize":62747,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDkSOOBrMq5OV+98hIRuItr3hj/QXPPDZu1csM/uReoDQIhANpqmqsXPGTlf0W+6tBDPBNwwn5rHONc28RMBeqDTQk4"}]},"_npmUser":{"name":"monkin","email":"monkin.andrey@gmail.com"},"directories":{},"maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/redux-sacala_0.3.7_1768857891949_0.12295233316565746"},"_hasShrinkwrap":false}},"time":{"created":"2018-08-27T15:54:31.996Z","modified":"2026-01-19T21:24:52.207Z","0.0.1":"2018-08-27T15:54:32.084Z","0.0.2":"2018-08-27T19:50:34.063Z","0.0.3":"2018-09-23T20:13:11.247Z","0.0.4":"2018-09-23T20:28:48.816Z","0.0.5":"2019-01-24T22:51:03.333Z","0.0.6":"2019-01-25T21:08:36.649Z","0.0.7":"2019-01-25T22:46:23.369Z","0.0.8":"2019-08-25T11:13:33.923Z","0.0.9":"2019-08-25T15:41:49.546Z","0.0.10":"2019-08-25T16:42:35.588Z","0.0.11":"2019-08-25T19:50:04.035Z","0.0.12":"2019-09-14T22:00:52.504Z","0.0.13":"2019-09-14T23:21:52.224Z","0.0.14":"2019-10-31T00:35:27.674Z","0.0.15":"2019-10-31T00:47:58.273Z","0.0.16":"2019-10-31T00:52:05.753Z","0.0.17":"2023-06-25T07:28:40.255Z","0.0.18":"2023-06-25T09:34:00.970Z","0.1.0":"2024-11-24T17:14:00.728Z","0.2.0":"2026-01-03T20:24:27.541Z","0.2.1":"2026-01-03T20:29:41.612Z","0.2.2":"2026-01-03T22:16:18.919Z","0.3.0":"2026-01-06T02:01:53.959Z","0.3.1":"2026-01-06T20:56:14.078Z","0.3.2":"2026-01-15T00:19:43.793Z","0.3.3":"2026-01-15T00:23:24.805Z","0.3.4":"2026-01-16T22:33:30.613Z","0.3.5":"2026-01-17T01:27:13.424Z","0.3.6":"2026-01-17T01:29:58.828Z","0.3.7":"2026-01-19T21:24:52.091Z"},"bugs":{"url":"https://github.com/monkin/redux-sacala/issues"},"author":{"name":"Andrey Monkin","email":"monkin.andrey@gmail.com"},"license":"MIT","homepage":"https://github.com/monkin/redux-sacala#readme","repository":{"type":"git","url":"git+https://github.com/monkin/redux-sacala.git"},"description":"A library for creating composable Redux blocks with state, actions, and effects","maintainers":[{"name":"monkin","email":"monkin.andrey@gmail.com"}],"readme":"# Redux Sacala\r\n\r\n[![Tests](https://github.com/monkin/redux-sacala/actions/workflows/test.yml/badge.svg)](https://github.com/monkin/redux-sacala/actions/workflows/test.yml)\r\n\r\nA library for creating composable Redux blocks with state, actions, and effects.\r\n\r\n## Terms Definition\r\n\r\n- **ReduxBlock**: A composable unit of Redux logic that encapsulates state, action creators, and effect handlers. It provides a structured way to define how state changes and how side effects are handled.\r\n- **Action**: A pure function that describes how the state changes in response to an event. In `redux-sacala`, actions are defined using `.action()` and they also serve as action creators.\r\n- **Effect**: A non-pure handler that can perform side effects such as asynchronous API calls, logging, or dispatching other actions. Effects are defined using `.effects()` and have access to a context object providing necessary dependencies.\r\n- **Selector**: A pure function that takes the state and returns a derived value. Selectors are defined using `.selectors()` and can be accessed via `.select`. For memoization, it is recommended to use `createSelector` from `@reduxjs/toolkit`. In compositions, selectors from child blocks are automatically \"lifted\" and available under the block's name.\r\n\r\n## Examples\r\n\r\n### Simple Block with Actions\r\n\r\n```typescript\r\nimport { ReduxBlock } from \"redux-sacala\";\r\n\r\nconst counterBlock = ReduxBlock.builder(\"counter\", 0)\r\n    .action(\"inc\", (state: number) => state + 1)\r\n    .action(\"add\", (state: number, value: number) => state + value)\r\n    .build();\r\n\r\n// Usage:\r\n// counterBlock.actions.inc() -> { type: \"counter/inc\" }\r\n// counterBlock.actions.add(5) -> { type: \"counter/add\", payload: [5] }\r\n```\r\n\r\n### Block with Effects\r\n\r\n```typescript\r\ninterface User { id: string; name: string; }\r\n\r\ninterface UserContext {\r\n    fetchUser: (id: string) => Promise<User>;\r\n    dispatch: (action: any) => void;\r\n}\r\n\r\nconst userBlock = ReduxBlock.builder(\"user\", { data: null as User | null, loading: false })\r\n    .action(\"setLoading\", (state, loading: boolean) => ({ ...state, loading }))\r\n    .action(\"setData\", (state, data: User) => ({ ...state, data, loading: false }))\r\n    .effects((ctx: UserContext) => ({\r\n        loadUser: async (id: string) => {\r\n            ctx.dispatch(userBlock.actions.setLoading(true));\r\n            const data = await ctx.fetchUser(id);\r\n            ctx.dispatch(userBlock.actions.setData(data));\r\n        }\r\n    }))\r\n    .build();\r\n```\r\n\r\n### Blocks Composition\r\n\r\n```typescript\r\nconst rootBlock = ReduxBlock.composition(\"root\")\r\n    .block(\"counter\", counterBlock)\r\n    .block(\"user\", userBlock)\r\n    .build();\r\n\r\n// rootBlock.actions.counter.inc()\r\n// rootBlock.actions.user.loadUser(\"123\")\r\n```\r\n\r\n### Blocks Composition with an Extra Effect\r\n\r\n```typescript\r\nconst rootBlock = ReduxBlock.composition(\"root\")\r\n    .block(\"counter\", counterBlock)\r\n    .effects((ctx: { logger: (msg: string) => void, dispatch: (a: any) => void }) => ({\r\n        logAndIncrement: () => {\r\n            ctx.logger(\"Incrementing counter\");\r\n            ctx.dispatch(rootBlock.actions.counter.inc());\r\n        }\r\n    }))\r\n    .build();\r\n\r\n// Usage:\r\n// rootBlock.actions.counter.inc()\r\n// rootBlock.actions.counter.add(5)\r\n// rootBlock.actions.logAndIncrement()\r\n```\r\n\r\n### Selectors\r\n\r\nSelectors allow you to extract and derive data from the state. They are defined using `.selectors()` and are available on the `.select` property of the built block.\r\n\r\n```typescript\r\nconst counterBlock = ReduxBlock.builder(\"counter\", { count: 0 })\r\n    .action(\"inc\", (state) => ({ count: state.count + 1 }))\r\n    .selectors({\r\n        count: (state) => state.count,\r\n        doubleCount: (state) => state.count * 2,\r\n    })\r\n    .build();\r\n\r\n// Usage:\r\n// counterBlock.select.count({ count: 5 }) -> 5\r\n// counterBlock.select.doubleCount({ count: 5 }) -> 10\r\n```\r\n\r\nFor complex or expensive derivations, it is recommended to use `createSelector` from `@reduxjs/toolkit` (or `reselect`) to enable memoization:\r\n\r\n```typescript\r\nimport { createSelector } from '@reduxjs/toolkit';\r\n\r\nconst counterBlock = ReduxBlock.builder(\"counter\", { count: 0 })\r\n    .selectors({\r\n        count: (state) => state.count,\r\n        // Memoized selector using createSelector\r\n        tripleCount: createSelector(\r\n            [(state: { count: number }) => state.count],\r\n            (count) => count * 3\r\n        ),\r\n    })\r\n    .build();\r\n```\r\n\r\nWhen blocks are composed, their selectors are automatically \"lifted\" to work with the composition's state.\r\n\r\n```typescript\r\nconst rootBlock = ReduxBlock.composition(\"root\")\r\n    .block(\"counter\", counterBlock)\r\n    .selectors({\r\n        isPositive: (state) => state.counter.count > 0,\r\n    })\r\n    .build();\r\n\r\n// Lifted selector from counterBlock:\r\n// rootBlock.select.counter.count({ counter: { count: 5 } }) -> 5\r\n\r\n// Composition selector:\r\n// rootBlock.select.isPositive({ counter: { count: 5 } }) -> true\r\n```\r\n\r\n### Context Mapping\r\n\r\nYou can change the context shape of a block using `ReduxBlock.mapContext`. This is useful when you want to adapt a block to a different environment or use a more convenient context structure.\r\n\r\n```typescript\r\ninterface OldContext {\r\n    log: {\r\n        error: (msg: string) => void;\r\n        info: (msg: string) => void;\r\n    };\r\n}\r\n\r\nconst block = ReduxBlock.builder(\"test\", { message: \"\" })\r\n    .effects((ctx: OldContext) => ({\r\n        logError: (msg: string) => ctx.log.error(msg),\r\n    }))\r\n    .build();\r\n\r\ninterface NewContext {\r\n    log: (level: \"error\" | \"info\", msg: string) => void;\r\n}\r\n\r\nconst mappedBlock = ReduxBlock.mapContext(\r\n    block,\r\n    (ctx: NewContext): OldContext => ({\r\n        log: {\r\n            error: (msg) => ctx.log(\"error\", msg),\r\n            info: (msg) => ctx.log(\"info\", msg),\r\n        },\r\n    }),\r\n);\r\n\r\n// Now mappedBlock expects NewContext\r\n```\r\n\r\n### Selector Mapping\r\n\r\nYou can adapt a block's selectors to work with a different state shape using `ReduxBlock.mapSelectors`. This is useful when you want to embed a block as part of a larger state structure or reuse a block with different state organization.\r\n\r\n```typescript\r\nconst counterBlock = ReduxBlock.builder(\"counter\", { count: 0 })\r\n    .action(\"inc\", (state) => ({ count: state.count + 1 }))\r\n    .selectors({\r\n        count: (state) => state.count,\r\n        doubleCount: (state) => state.count * 2,\r\n    })\r\n    .build();\r\n\r\n// Original selector expects { count: number }\r\n// counterBlock.select.count({ count: 5 }) -> 5\r\n\r\n// Map selectors to work with a different state shape\r\ninterface AppState {\r\n    myCounter: { count: number };\r\n}\r\n\r\nconst mappedBlock = ReduxBlock.mapSelectors(\r\n    counterBlock,\r\n    (state: AppState) => state.myCounter\r\n);\r\n\r\n// Now selectors expect AppState\r\n// mappedBlock.select.count({ myCounter: { count: 5 } }) -> 5\r\n// mappedBlock.select.doubleCount({ myCounter: { count: 5 } }) -> 10\r\n```\r\n\r\nNote: In most cases, compositions handle selector lifting automatically. Use `mapSelectors` when you need explicit control over how selectors access state, such as when integrating with existing Redux stores or creating reusable blocks.\r\n\r\n### Minimal Redux Toolkit Example\r\n\r\n```typescript\r\nimport { configureStore } from '@reduxjs/toolkit';\r\nimport { ReduxBlock } from \"redux-sacala\";\r\n\r\nconst store = configureStore({\r\n    reducer: rootBlock.reducer,\r\n    middleware: (getDefaultMiddleware) => \r\n        getDefaultMiddleware().concat(\r\n            ReduxBlock.middleware(rootBlock, {\r\n                dispatch: (action) => store.dispatch(action),\r\n                logger: console.log,\r\n                fetchUser: async (id) => ({ id, name: \"John Doe\" })\r\n            })\r\n        ),\r\n});\r\n```\r\n\r\n### Dependency Injection with [di-sacala](https://github.com/monkin/di-sacala)\r\n\r\nFor larger applications, it is highly recommended to use `di-sacala` to manage and provide dependencies to your effects. It provides a clean way to define and resolve dependencies with full type safety.\r\n\r\n```typescript\r\nimport { configureStore } from '@reduxjs/toolkit';\r\nimport { ReduxBlock } from \"redux-sacala\";\r\nimport { DiContainer, DiService } from \"di-sacala\";\r\n\r\n// 1. Define your services\r\nclass ApiService implements DiService<\"api\"> {\r\n    name = \"api\" as const;\r\n    async fetchUser(id: string) {\r\n        return { id, name: \"User \" + id };\r\n    }\r\n}\r\n\r\nclass LoggerService implements DiService<\"logger\"> {\r\n    name = \"logger\" as const;\r\n    log(msg: string) {\r\n        console.log(`[LOG]: ${msg}`);\r\n    }\r\n}\r\n\r\nclass DispatcherService implements DiService<\"dispatch\"> {\r\n    name = \"dispatch\" as const;\r\n    constructor() {\r\n    }\r\n    dispatch(action: Action) {\r\n        // Dispatch action using Redux store\r\n    }\r\n}\r\n\r\n// 2. Create and configure the container\r\nconst container = new DiContainer()\r\n    .inject(ApiService)\r\n    .inject(LoggerService)\r\n    .inject(DispatcherService);\r\n\r\nconst store = configureStore({\r\n    reducer: rootBlock.reducer,\r\n    middleware: (getDefaultMiddleware) => \r\n        getDefaultMiddleware().concat(\r\n            ReduxBlock.middleware(rootBlock, container)\r\n        ),\r\n});\r\n```\r\n\r\n## License\r\n\r\nMIT\r\n","readmeFilename":"README.md","keywords":["redux","state-management","composition","typescript","toolkit"]}