{"_id":"react-redux-api-tools","_rev":"28-5486b7a965e4947d67715b238f220c9a","name":"react-redux-api-tools","dist-tags":{"latest":"2.1.3"},"versions":{"0.0.1":{"name":"react-redux-api-tools","version":"0.0.1","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\""},"repository":{"type":"git","url":"git+https://github.com/lucianoratamero/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/lucianoratamero/react-redux-api-tools/issues"},"homepage":"https://github.com/lucianoratamero/react-redux-api-tools#readme","gitHead":"45d11ac4ff21ed5a23aa3a26bd1b4fbf737591c9","_id":"react-redux-api-tools@0.0.1","_shasum":"a6a9f5c07f8d36bf7176301ea3faf1af9bce771a","_from":".","_npmVersion":"3.5.2","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"shasum":"a6a9f5c07f8d36bf7176301ea3faf1af9bce771a","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-0.0.1.tgz","integrity":"sha512-XNbDpceCD77NTkdWlee8s0oQds+0NeDIuX1q59e8X3KxZ9gSoMuHSDB17gNtfkPKgdcGfoQpAbr5LFBl8PTvBA==","fileCount":7,"unpackedSize":13766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJOuJCRA9TVsSAnZWagAANsMP+gPshsy07yUSSfVwZXz+\nCWVrgO2BUFnD7KBmAqmrwsfK+Q4u5oxmabgQSse+hXauvNlCs11pmpgm8p7J\nAgDZfJefxjs1lNxghgQfKPmYD7tsnHAatE5yV/iQeb9e7HIHfgAGQEfRxg+A\nCw6jtzhiDGbMoQdPABgJ+rtxew+o7dte3hQqkIkcgBHFjIWDzmlXxv6IyBLd\ntiK2g+aY69wP2tnSLbyr0FHnhhexrTvkEDLfQsJgUtLqmDAqkzrx5eTUfHPM\njCrmF5YkfoHTp2oZ+1nBwyOzcQNXIHpR5DP9DtA9+Cy6Mysi07up1oV+VscJ\n7tP7NTTp8m2q72T3zJjK9IgP9ddEgzglV5YhOyIw9fDw88LQr6d/v32BKhtf\nbltFvYtlR3P0EyHF6gTmnNPjnTAIQ7p6PcpF8wAYxHTZsrMQ7RJU6pDfJV/W\nEAgd7tM4zzflJWMzAr4i+LSt6IE/hcRLUwRYTQYLFNBfRkCVNmAA792HRV9Q\n7w1qbcgeZ+TdFkAYOnDJohvztqkglTWAKRRUCFDg7wV34u5mJMtTuiJ2FBAk\nZ1mQJBPp3gyMbpBkApiObkPy12OWX3drMFNcwx3txiiTY9qufVn+qTXmvcwU\n+VZwTqvSDykPscOxpcRkLfc7zUXCh9inG3tiWjKWCvS0AuKf1Ti2OaOVObP4\nLjtY\r\n=OekR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDNbMpUDoVb0wNkahgwL7cty/nJ1aJCGqb/xcwvAaobFAiBQEVSDei4k/Us/zwpptglrkN1rU4TGDHVqBUW0IbXGXw=="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_0.0.1_1562700680517_0.1102583020739667"},"_hasShrinkwrap":false},"0.1.0":{"name":"react-redux-api-tools","version":"0.1.0","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\""},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","gitHead":"c7b46daaba032acf4d876aabd1fafcfdc45609f6","_id":"react-redux-api-tools@0.1.0","_shasum":"1cc53cceb1f81dd34c13931ccd3368ea7e750eb2","_from":".","_npmVersion":"3.5.2","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"shasum":"1cc53cceb1f81dd34c13931ccd3368ea7e750eb2","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-0.1.0.tgz","integrity":"sha512-5Fl8J7tvISHG9MADgCTzi9PSNtju/8oEqT25iuJOckQTz7Z+jBcthF1rlL+UupuZms8uPtgaHzpnpgYsYZxncw==","fileCount":7,"unpackedSize":13759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJPg6CRA9TVsSAnZWagAAUv0P/jpHyttXpyAXaLkwYQq5\nlCIdAJ4CCMpcwRCkYoXo8eN5ZWY/2UWHg98kirAmmFRttLtSsnE3xVzyNNHQ\nAh1htAQlJDu++nkfJgq2Amzpt9NGi41ORGCVT0IPVczdN4dRSn8BIj6d3ptT\nBm/Gn9ByZH8xFRaJ84ohh1p8l6ML7mK7sONmbZmU3v1TP4WvQ+gjgGc8dJEk\nsnVSByKrXQ9EFXrzBpseWHjXabAdcnXXVajFn7X+Fo+XFasMSPM9f9rSDoPK\nUHkdokoPtmkUCaZY4Zwx+r0xtgh3PCHQCUqmIlujxIsOLFosw+BpRMprKj3n\nOMWZ37qU+6n7iqIaSeWCDrfOVO1wV7hOiN5nopNLKwfcgv74lIY465YmNDYA\nUK7gprgERJTfrKUZSATOW+kdda2sAol0qMNfoEmKzOnObqph+KrgCShfgNDd\nZ1n1MpMHVnBNyKdf5+ekUclDtIc/i7OpTOP8rYYDdipt1cbU4m8fw4Ny20L8\n454UcjREsn3Smrlc+1qmvtTMfj+ZuCcPIkumuzVuFWecW5e3hI+6BAQJwLkW\nTvcocf6gInf+SZyT9aakwlbgVsY4UpegfPGTdvtBaxQTR0p00dIPbtOSLC/W\nVaHii9yvvlxHFss9x3M+gYcrnD0G62VCawUb313Wh/M5zS3CVCa70IsPKUmi\nXPpA\r\n=NFEU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHonJYMY/ED6J2zAtMogOtMnljD1susQJEi+2MpVT7BOAiEAt8YVkMqmr/IqSSjnboItWhYh5J0p3e70WNhtsQdxaUs="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_0.1.0_1562703929798_0.2292666120528557"},"_hasShrinkwrap":false},"0.1.1":{"name":"react-redux-api-tools","version":"0.1.1","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\""},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","gitHead":"2397103343db784eadf830cdc5e16bb62c3ea303","_id":"react-redux-api-tools@0.1.1","_shasum":"072750308eba93e185c97c9eb726e8d7430e42c0","_from":".","_npmVersion":"3.5.2","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"shasum":"072750308eba93e185c97c9eb726e8d7430e42c0","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-0.1.1.tgz","integrity":"sha512-EDOB4+M4v6IOdaJldfAzlbCk0rXMtI0JoC5DJUfO3GQIOUhA3plFQ+4DkQaVo7X40RplToR/t7gVbPTyAZ7OxQ==","fileCount":7,"unpackedSize":13785,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJQMuCRA9TVsSAnZWagAAqvsQAIX+V5uj3/m2RlDHwMRr\nH0oJ/pC3v/o6XxWPANkbEgBdAK2hHYnW+UA58v9VU9uLXAL8P6d1QblyVnJV\nITcbOxqesLlKEvE/hf8mZ1dTgP/jPnttXR8OIUGUOfAHjGUeKbti7Kurc+P2\nZc5NQcP9XKKKnVsWqfbadaAd/kepo7d7hmAYOl6ybxgT6yY7NWbMhVguOgkG\ncxS0yKPLgsBlZVN0+zOaBDCmENuP8ckw0IL6W2LXDhsWotmNx3YigsyvYiLn\n+YjvFh2S48G7zWizxabn6WMWeo+frC2sYaJuPqrM6BB+MqNcHVWSj3Sct6Eq\nRfkjJhhijTJF16N3yAWcLksu9XXMrAnFptndT3v7rjiYdgBZ6f+vDir+jAbN\nOlx6bjTAUK7WChGdBvUdzO0xQ/5p1s7wc+cLOKbgVR742l8ilS7/HdaLuZJq\nmukYoOMamjliNWJ2eJQUAGN1rIshu13j0mWmMB78fUBBfAFQAk5L6HIkJEsu\nnTdJ3SoXzws7jGhLJeA4M9TuFY/q+okE2EM1onLGLEUldxdSrw8zZkUf4Rsb\n7E1wOI4YJpJYJNI9DujLWlUSULpRtPYELZmf2AfCKAKGn/lEkt+7gSJ/kmJB\nMvWAFYuPv5V6it/AQLkGaJfD6NvXQRWSrPQxPOsEHcWjvdSUf3QbtUdKBQXU\nl5Kh\r\n=quoR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBRLehv+3jIezYmzDLnC7LTQzyE51CB6vCrrj41QBpxrAiBW3z3W3Ll/M3XH4PZlzMm/omcpGwK/T2CYmIC7OgrQRA=="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_0.1.1_1562706734058_0.9223038032197675"},"_hasShrinkwrap":false},"1.0.0":{"name":"react-redux-api-tools","version":"1.0.0","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"jest --coverage && cat ./coverage/lcov.info | coveralls","test":"jest","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/core":"^7.5.4","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","jest":"^24.8.0","jest-fetch-mock":"^2.1.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"]},"gitHead":"fccb0665f65ef17a7c83d6be9693450a963cad45","_id":"react-redux-api-tools@1.0.0","_shasum":"b630290295ea5e162a98de43a2c1757a7d4a9761","_from":".","_npmVersion":"3.5.2","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"shasum":"b630290295ea5e162a98de43a2c1757a7d4a9761","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-1.0.0.tgz","integrity":"sha512-eLX7XP01GPHLWKYig3yVcSwR5n/LxWDFEq+Bl258bQjk5tf0UkbAJ8LSozFN1JRNTxKecVm+ZQIwaTEyRFx11A==","fileCount":13,"unpackedSize":23308,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdMOUCCRA9TVsSAnZWagAAUYsP/3jlo/exSffMhstMhjDn\nZztDetTycQdJQttP9yxUdFND5rfqeFVYAqV/Uf7scjPqpI0xiE5JDdMFrHoh\nzQIH6Hfv/r0wChyhIyL4GARhDYhOjddtkJK5sK91rZiBZw5S0zCaN5e4ohEd\nS7l+JWEAbvS/TiRVRRsMbZMcFfVXMtKDFf5vjqFoJZH3CpvQ+mj7RnwwQlW0\nRGq3QE3LZK0/SbNAEeyXAejKWDQKO0up10JtXneC9H6x6adheygdL9n3umKu\nbNjWPMdRAuIoAPNyOb7Gy6+GtmXzzpQX8x93zfldDqfCG9lXY+BAUmeE4O/k\nGAj1Jo00WIgg543TgZHMi9Zm+g8jxdNsCKYNAy68aveBuJzbjFTTMtmqZQa1\nXZOk6fciDX8hDgKKlXiWXH4h2KiE4PFywqqxJ4dEiIpJxt1t4vbdJGaeF3Vv\nDUteto2vN1gUuwCr/abXmd/E1FbIzUZp1jaZE018R84FgyMYEfKDqJ0BNKys\n6cUorLPPtwGu4KrhIZ13/9/j1vEDL5KgOUOJKBhq2BDD0cArdlWCd7eJOuSJ\nFznaIzmQrDoUrtFAnbYy3sTW1wR7I5QO6OsZpnTXcROfuqBgfnfn8saJ6vwx\nDOZw0+N+1dYAyrSASJw+SxYQSDe1sq/EjjgjVZy1moOZPbtTl8d/tF7WatxX\nbE7J\r\n=JGLz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAhzt5mUAVLgilAAbwyOwZcQ7Y8O4nhCtdt36JEWGCN9AiAzlc0wFp1h3nTD0Kr8pK9WdyJPMkuK0bxaFwy1e5ve/w=="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_1.0.0_1563485441232_0.7309130987199461"},"_hasShrinkwrap":false},"1.0.1":{"name":"react-redux-api-tools","version":"1.0.1","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/core":"^7.5.4","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run test"}},"gitHead":"f1c591b198be44e9deeca511ccb152d168ac1893","_id":"react-redux-api-tools@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"integrity":"sha512-NOGVqBoB1LquGayd6uvESG4EM4Zjw0RR87Ao1il+SFhFZvhFx4e+OdrjDRlhg25db/cBEcZ2sC8rV1XLOFXqzw==","shasum":"4985d10e3c3bf4b57e52aea46ae4d32ba2e3b604","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-1.0.1.tgz","fileCount":15,"unpackedSize":23538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdTd2gCRA9TVsSAnZWagAAf3cQAIaqJ2qO6oLu5NKGkuLQ\nKmq7kLMBf26y5SKk4QljdGBCZDhMvO2F0vvNj61+mvhnPHLhiuDoF40J94H2\nMW0+ax9jVkMO/0GMFacqVtfLk923M/gi+76TiqNEC2cohtFNQy6aNhVh+oRb\n8rjWbB3zfuww5mUJwBTyw2/iFLmBePc7UMjOGvoJOSuiEao6HzV+yo4HHdEf\n6CdJI6Onn+sIL3JnJNpJWNyBzz061Bq5zYAberTrziUYpATtcpO6LXGxRuKl\nqRrBd1+tXE8kLlVBiXchAtf4+kbGMw/PT092QqDV252uzlVfhMsdB52H2K0L\nQVcppTLddkklZJCiNFpSebcvUvms5iUTuJvpL65YzMOzOLSZvfta1K/kceiL\n5fk3Nwoqfe1+ktZNc/5+JIXGLiDa4QbzNOrYiCzlL9g1qxYsTF4LEM/yH3eq\nscwAR1vtjfdJQzlXgw8OOI4unReBoZ3ZvO60uDmnYpzc9gBuqzGVLtJGqAHZ\n1XrwUfAU7h6xsUatLnAnC0zb6zpbXLDLFPYr6LO1yR11HTPR3x9FyD/3Wbfw\n9VQ7LwSrWX8iAVvNmJCwPIPuhXBIb7g7OlYEiJib5e3x1/wMP7aFXGIqFsEU\nOA5PbVo6Sn57zlmtxYgG+EcwBhRCA7NRkPVkSlFi/mUtJB9GWthsmOWC6F4K\n/x8E\r\n=DZUs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdw1mfzpbh+yg0OjNbvm92hm/6EbEQ7fcK/v+kSN9ysAIhAIPlPElZpCHHebfO5uOK2F0Qg0/Rq6Zfv0op/mbQWgdX"}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_1.0.1_1565384095349_0.8745406549709549"},"_hasShrinkwrap":false},"2.0.0":{"name":"react-redux-api-tools","version":"2.0.0","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/core":"^7.5.4","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run test"}},"gitHead":"7ebc94bffd108d8f6743b85689e009c750c8b68d","_id":"react-redux-api-tools@2.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"integrity":"sha512-z2iWFXlXDQFoRM83tOtHpNioWVaSKm/phy9eI/V8pH3ly56MglSz1afdzA831IYeJEKCmADdnG7wCyG2hfXknw==","shasum":"4c78801dce7e9d1fa3a193f8e798a8f8a90e8809","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-2.0.0.tgz","fileCount":15,"unpackedSize":23754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdeAucCRA9TVsSAnZWagAAal8QAJ/GQ7Q8k+Cm5B69pd9Y\niEVUt4rdDMiM72wh5+J3P15tjo+2whehjPhdV9SUFvkd8lpKV2hpNfJhJSdV\nLplxcIsddibmJRKMa2j3HmtBl8ywY5zpPIw8fuslHxeWFz9GF6E5fKdwFw+B\n/QlQ49FVSO/bL0FtHZ52Vhe5K+SXXzY5I6HHunmJh5k00QZwFCRAhTS7A1A+\np319P4ixFVvXLMGkH2Je2tUD7zv7tbPsYVLYIQHRwb6dDYVveU5kz0oGKAh3\nteD20ZqQFRiUNBJsmPgFDOaiZYGHtXtkfb7cYJ9G/J5ClfXUQwYxDAoRTHyS\nPiAkMVl8ewRj8nDNbdrnqYtOsmBS5Qbj+yCJU6YGnx27zHHNH50ahap7tUh4\ncDnhVA5X3kM7w7/7johADmKu/uOlXtrhHBq/3rKmd8I2SdTVL162sZ9PjeLc\nIfn+gWMS1IBhgwO5LSBetSMUKwHFlyEPSaPsbVtAxp+OBRjR3tLp9EomuoZx\ngtXxptrNtuR62uvFc5zuoFOkvTr7eH3DX/DXQ2E/DNxqE5RorUTrmVvQUWWR\nPoBdMgjsOgZknFWj6hnuSNWkJUf+hBJyb4cSO/azH1oYAXiIuzVfU3m7H+GY\nvb1y5t6OXba5E65KiOQ8rbF8j23PtXlIH3h/nqw694++dML9iGCdlsMiw/kI\nF6l/\r\n=tttC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDzfGibkOU62BvL+iBi6WjZNLplVsUEJ6J2OM0xtee9XAiBqUQO86jKQTnAuyPy1E8N4UBDUORZaoTxbADYSrc8RFQ=="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_2.0.0_1568148380190_0.5226237051536173"},"_hasShrinkwrap":false},"2.0.1":{"name":"react-redux-api-tools","version":"2.0.1","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/core":"^7.5.4","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run test"}},"gitHead":"b430f5c178fc39d3721e118b524e6ab6d0150bd5","_id":"react-redux-api-tools@2.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"integrity":"sha512-E7jYRNM5LP/I1U30ODORIW0lqXKBH1hjEmJ8FT05JmpsEFXv8Hl/KjvSjjjO9Ulpl9jUXPJEGCjRtwIer8luuQ==","shasum":"16d23421608d321c974ed24f8612d7c8c3b9c4a3","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-2.0.1.tgz","fileCount":15,"unpackedSize":23959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf863CRA9TVsSAnZWagAAMaYP/2CsmxLLL9thoOGnv22u\nrLyjLNfEqjw7qgnyXpThbSNQxaFsHtns1EiNNAQbPY41dC6l1baK5m69++wO\nejGyLTYqsM7Qcp2CXEkoQ7f8MJktx1S88OKpqdORo2ZuQPk5sjLAe86KIZva\n/wmciGbcnGGbE/CJP4fKd9NsjZTUVjC7oI+OZ0BLuy112sgpLZgsCEbrJyLG\niTx3x6A4T2W4svobbfUtafu9pR2vmNFGxIMTtvWDbG+jWYebfpvd5lAAgOuC\nlmGYZxPCFfOL6a/7RV+e9JjYmpZD7fEK2qFA1PuY1QOz+b4BjUvoiGCaNu+n\nrfrJuJh8jTWdRorD184mZAxGyF6x5GC620QF52gTgKX9+kXxkEpX5TM/kkXw\ncCHtto0fcvZ0o8meI3xezPVk0Ekn6EdNhtR8eghFzFVj3fR2hhXo5WIuVJy0\nLl6eoHyLNbSudAFgRJmOpXARlh2xZjdbO8O/Wc7g+lwcW0zs3gc5GeJ1uoys\nHdA3bJnVcMLe7KF3lcyFNZsOdtBm2bOnnhqWdKjOo0hYU1lqTROGGbAhYZ6J\nDmI5lMNCdZFBlElGFXxrIhsXbIlvO8QtKkpRlbFKdwIvdeyy7smph25GSDeS\neeWNT2n3tjzwkpOPXS6QW+DvEShMT07aZqOaSmvWgYuu38zvrV+739Ijx35D\n+cvP\r\n=kG9Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICKIpAHx1rpwGGB44Zr0ezbbnzWhbXWM+6QRe0jcSP73AiEA/bSkPyVPVVv4EdbjY01cx7LbVVfhLC78YSvGsiN2wUA="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_2.0.1_1568657078759_0.6329946785991336"},"_hasShrinkwrap":false},"2.0.2":{"name":"react-redux-api-tools","version":"2.0.2","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/core":"^7.5.4","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run test"}},"gitHead":"171094d29323baefc7e37bb89999e92f7e526fcc","_id":"react-redux-api-tools@2.0.2","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"integrity":"sha512-WMTnHLUunUY/McvRPAmIrxCcgYx2ag20uY366xE6ypAFrNt8F+cTomsx0lDe+qFpiGSsaFsjmP4dgelAclj3Dw==","shasum":"a14e2b81b96ad0d74e3fe1bc9de782367c12dc8b","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-2.0.2.tgz","fileCount":15,"unpackedSize":24924,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdtzPJCRA9TVsSAnZWagAAgDYQAITZxBp5kaKFZLOeQFda\nLaCw7QXzIY01m4zxyI9Svh9S2Eyy0LC0vXQIhE+7Zs3ca2WA8vKmeMxO8JSY\nF6j6d410A0yclVLbUPazGA7fV++6uh9ryHcTCB6ZNOymv98//OREdUL+ToLa\nfIq8UAJw/0v6ds52jZFlaAOy6jKEgowTHMC6RrGBHgUVDqN+o81uLhbS2Yav\n74JeYoccEqscSgoV5rLSgOc1vb3jhh5RlX+T7d3zEdGVANXYdDEhiHMgdgiG\nm4b42XO1uEwf8V3a3kwuZ4zY3o3fqIZYyaLE7y9uw9qiqFJ7W4OqmosYdvVJ\nvkr1XUDqdqHeaRBdMNpO5dFKXZVed+I+267Qf59QpWH02Um2AjTSvcIUKbtM\nPM4QaPB1m/i+ecQhRqrhRNunnj1T0OsdPToYtGZoLp2pFwVUczoPz63ZoOXX\n5KWkzk7w861MBgv84jYZ055khwoZv0Gs8l9zOrMkB3R3giE2x9Qap3zREa/r\n+y60MwFrQk92Zw+ojuEEaK6ETk5E0N9idiuN1H5CNMwIBxLD+/Tsk1ZqMbZ/\n2LQnsu3jGXYsnWhl5BXnIr1GHkeYv11h5OiByVS+1XJ9DitSyx+hNeE6vhQO\n6gdPFg8Utn7Oj8SmYAzPw+v6GQkwToKloX23e8WILqw3CNbIKGCcDcJlD1cQ\nmc2E\r\n=pDcZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUyCw3YH3dOQDL5g9IkL5S13gcskYb2/fjGrGhFeVM1gIgClt4F2bMVgCelBUx+hUzOm4uzrIMEkEwYpJeGAVtIyM="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_2.0.2_1572287432763_0.5136565900664489"},"_hasShrinkwrap":false},"2.0.2-ie11":{"name":"react-redux-api-tools","version":"2.0.2-ie11","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","dist":"NODE_ENV=production ./node_modules/.bin/babel lib -d dist","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.5.4","@babel/plugin-proposal-class-properties":"^7.7.0","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run test"}},"gitHead":"171094d29323baefc7e37bb89999e92f7e526fcc","_id":"react-redux-api-tools@2.0.2-ie11","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"integrity":"sha512-qEZC1Ah847ySYXu+TSq4AO806VM9OEK0dg1hXALbMxU5kAGCOG/si5NGE1/4rd1m0ebTCy2u7gDOu94XxOnUOw==","shasum":"78b23432233a490da6c7007a2fef3804145c650c","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-2.0.2-ie11.tgz","fileCount":17,"unpackedSize":31325,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxJwUCRA9TVsSAnZWagAA5doP/0IfkpgHVsEeKqarQBlP\ncSHL4YhGNsUG9acpI7H58CqapPMXkMhsxUS638AvuCdXViXxSdjB6oHuN5Kv\nkra5eE8xLd3kgBCBm3XbhDKhc3SKxmNlEUBzoMwKk74FRZvB0RcVgWQD+c20\n18xqumEK2xKgKD8L9YgOIlg65kXCfJXuMn3A2pK54AUieF/NzrhOtXWag5dz\nlot6fSUB1CBdqKjnEAf2a7oULLwI1NaCvuJVOwDEBm3EQDaoByXVUOfQA5WM\ngEZQD+IMm1KXjEzlCVTgJLSHFY1AWXzaOAuFwMqJA3ZuMPc3eHNoESWJPM83\noJhJl/CxhBBkddjzO3aMRfEfFPQBKCslH2juJwJYPxaDa5m1H+2g6pNs6JL6\nTSvCfdFUa4AZfwYJmoY08HvYbVN6PDKGnpLip15C7HkymBQLj1SgwI51uHHo\nfc9Oqpa+NZyAgKduKYnP6nJzgrBAvXDOiAtvrTwpnn70Vil3vVxnq04vGsHS\n7mCEk7gBNrejdg27fxM0vs20bjTAo228VEmI8K3TYVl7o9HT6McRMMjBv+OC\nc6DxZigFsrxlM9nlWIHsU7n34NM9nU5T6oW5ns+7oe+m7kBQsTVMP6Cxhy0/\nyxO2DL7jGDBfLqLUaG9vbrckklJKODDfITqWXzozs0teeREduXsLqhGafNDc\nFuH9\r\n=l1yQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFU5IU8yzOunKQPdVPVJUXjWYEMYtnQLI5eHwqxlrMmoAiEA79m6ENr9NMNKBy4HiDyGjlIZF+Fj8+vpMWIQ2sWFkJg="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_2.0.2-ie11_1573166100010_0.5357148559622169"},"_hasShrinkwrap":false},"2.1.0":{"name":"react-redux-api-tools","version":"2.1.0","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","dist":"NODE_ENV=production ./node_modules/.bin/babel lib -d dist","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.5.4","@babel/plugin-proposal-class-properties":"^7.7.0","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run test"}},"gitHead":"2a015a355100db877c8818ece0109f4e5842d140","_id":"react-redux-api-tools@2.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"integrity":"sha512-Z265ZdGV+EV40w7yQcTiFGG7Ah8uilDtgwT++bD83t4ScCKbY1dSyM0SATan6mGOomFRIC2B06YF1hjjVccFFw==","shasum":"b7b665c5883dbb13579aaff31ed4bcc0dfc41778","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-2.1.0.tgz","fileCount":17,"unpackedSize":31744,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxJ2DCRA9TVsSAnZWagAAsEMP+wSjI6PtoyEvKQ1L0IhY\nT7e8RZ6Ld9JSjRVWH9nHEsN5vtNz8fRZiASLZPNk5p01C8DGi1yBlDJBROj3\nFeHlqSZq781bVNQv/pXi782p16IsQjRR24LK5e2bmjfAaSJ57I86c4yrtRLb\n/LGIDzltqjZJ2V99EYHQ29n1eyWIB491vvillG7a43Tos1U7i1bn+eTJMMCr\nS5tGXB5r+LoUYzW0a8Q+VUWCkIf01FJ4m7Qp7L0/5LxeFACP9ONjqcqurEdM\nJs9gMQ3DpQTV2hipuEe6nSn/O7eOL2FZRayWPMKr/Qzgxx0SqYtW7q4e+iZw\n0WBDExzNpDww3Jq1bnzKhCWaIFe8q1aygfHdasaRoWlE/u38IWosVPOj4zpx\nsVc4k/pR+uF+zaW3i+CHUOhq2kZEjTWLsuTgSyTpy3famMoDWu4AgXDbeNqu\nK13ct+I67T9zR3wc4di15+PEf6j4QlCa6wpmfvw+hxL41zuCILKNskAc0m8b\nWUyxvMC9Rd7Ap7qRQEzNNFDIty3uHzfEFUHv8GJ6mQx423PRtwAbmyWUkviW\ny+Xv7dThcsV82wETnRUViuI9/aHMAKPqJ1J5FZ57zMrlgg7jO/KyBJDFLHCR\ndGY/5FNnV1MyShjJ9NDiylpZ8ZmMCyydeVjvjh33Pj3bj/qq83w64cOEc31S\n1I/e\r\n=6Wxr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFHKV2ZBOS/NU3yJiYYLZ3dhG5N3Hv1tvP3aU7kzFLw5AiBfuURBN12zHscAIPrRYHz/ExdlaoajLnDzq8IGk/h6nQ=="}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_2.1.0_1573166466809_0.4011207320769361"},"_hasShrinkwrap":false},"2.1.1":{"name":"react-redux-api-tools","version":"2.1.1","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","dist":"NODE_ENV=production ./node_modules/.bin/babel lib -d dist","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.5.4","@babel/plugin-proposal-class-properties":"^7.7.0","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run test"}},"gitHead":"ce1595942e5b094dfa7b36e0972473a8e8654682","_id":"react-redux-api-tools@2.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"dist":{"integrity":"sha512-Mw83DXcF1vD3s+coOENkoDAseNdn1oX+aj5aEk2XgBqS9Q2iPPK74pQ+s++U3LosWdsDjBWJooyUf/vbLXw/Bg==","shasum":"750ea6111db934a93b4b30d82f67d03c016b7c00","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-2.1.1.tgz","fileCount":17,"unpackedSize":31746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxJ8cCRA9TVsSAnZWagAAQPUP/RQCiTGhvSMf3pYylrCM\nwQS40I8EdBTLcSxNpWI9NJxrcPWYdnXe36hzhqyGtZZuw04mwy6lUXga6OVG\nSfFn0Finu3Z0oYUsrFk4dZBYacTXYoywQLeIM1Sh00f7Ay6TsrTGQ8IVrgjk\nhAIxpEMyXkr1dK9be1yxrJmD+etvbjempBQA33jMPrRsenaUXQ8OG5AeKQua\neU3Psc+buCif6vJBHF2pk636obQ4Q5cmLterJtnH6G6SDPEsxeOzz92QTeqq\nPlvJTcmnKt0OpooWQV2D5/1Nv55PjMyZ/dYPDxmclIBSIxHor3f6mN88TP8+\nsg9KnUHiwZBjceJJexc9Av+0ejCaF2CV64HAP9qGyObm9M9SIXyOSd+I884f\n1/oYUI2aUZ+enQWr+3oSo1FdfudvX5eAh91rribQ8E4Hlz4WNSzDzrOCgKp5\nxGbR7mrQ24SCBPgIMer88c9sGtzWfCJdvJv938hQf4j6UiPGKTvWyOhDni4c\nMfr1/pXE0WCpEeOVDa0RzkyD5egZWq0cUQgOmpflgNH6wPsRdQgCjKAtvKOv\n34f0gC00dZQhc8ZvV1InGH09zRTdL7TP8kKDxarWnTrZgC2GKFXNEn8MSufI\nGSi3nmZddvTpL3mAbiOZhzX77tPwPXbrjwE3p14Z8Z5kvwnQhPTIEnUyyfHI\ntVI5\r\n=NL8o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD6rL/X71WeBW5ETRnCcv6T+lZuaLfTUVcwUnDGfcbFBwIhAOeaOMCb5wxbfgRhhVrI6Pxgq8V0n8oupCiPUki/9iqX"}]},"maintainers":[{"name":"lucianoratamero","email":"luciano@ratamero.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_2.1.1_1573166876342_0.7851290963080275"},"_hasShrinkwrap":false},"2.1.2":{"name":"react-redux-api-tools","version":"2.1.2","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","dist":"NODE_ENV=production ./node_modules/.bin/babel lib -d dist","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.5.4","@babel/plugin-proposal-class-properties":"^7.7.0","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run test"}},"gitHead":"0767e4e6983dc96f77e10a0e208b6c733ffc0d7d","_id":"react-redux-api-tools@2.1.2","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-GpVQG1vITX/H+HcLslpoapVZl/zRvIaz9HXG/gBp7v/i5tr8oNt+4KlxBvzVdM/fvo9l1BK2cpD3uOgdE0Os6A==","shasum":"dc0cafe800fadf2dcaf7b91c2f87abd78765420c","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-2.1.2.tgz","fileCount":18,"unpackedSize":31815,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezB/HCRA9TVsSAnZWagAAsEgP/0eU11z2hmTT9/YG/ybx\nOaRQ74sWpqcwsqWA88IVAKaW8BxpiNUOHnqEKPqWRbM1Woi6wlO59AULdJ5P\nzeT1fuMGgirKIYu/U/uE8SNdcsK0qG8TpcX1RQV74fXGCIArEUafILpYEqct\nu3wJX09xhlk4W4lU+u2TCHYoea+Ep5BS9QvOIGjA3kYusRsGnfeccTdlxdlQ\nxEt+vmOwOrNtmRdcO2p4hDSS/5F4x2+SR6xBxsIjc+rtzYRPMvU6FOo7ycfL\nU+rsDRQvpcF6H3FPmLwcgiitvWEY9tGdMmL1jOPMDIfZO9U+D61yj8I+fLlF\nNEoVBCmakmnu9D8QDj4I3xUKM2CZMUcAWhh7wDJ9+tti0lJhOezq3ZQWmrvr\nuDtIjGZ/sY8oUGSzQkO0l3cBzfBjIInlB5BFlA9wG9hT5SrVGR1MupzZSUHw\n5GJ7VgljlHC/pB915cdx6FGGEIYm+x7HgvGSvlgO23eP/sKtT3oeFoVBWFnb\nkgadpelS4Ve+FMiDuTAE0EHsP1yv3/I8t6Pz0spxy1GgrZDd5/LCYu1jFAnr\nxCbmNX253/0Cl9acJxIMP+yKlm/XClb5+yO6kMNm7nGc5uhuMenVw7MbGmpQ\n1S45L7ZJWFp8UOc2eJUQydVJ/xS8nGnCBiSvRhmL+UXdFRjNCx9xA59B0qsg\n8myY\r\n=T/zc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3UF4HiwsuXRH7HIql6tYxb1L71MZINe5hPfRWcTtY8wIhAPhWBfDxa4OWUXqyEe1MOSNQ4qE4j4YLxA+TGBh2oNTS"}]},"maintainers":[{"email":"daniela@labcodes.com.br","name":"danielafalcone"},{"email":"debora@labcodes.com.br","name":"debscorreia"},{"email":"luciano@ratamero.com","name":"lucianoratamero"},{"email":"olga@labcodes.com.br","name":"olgapinheiro"},{"email":"rhanna@labcodes.com.br","name":"rhanna.andrade"},{"email":"thulioph@gmail.com","name":"thulioph"}],"_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_2.1.2_1590435782506_0.5690415953520389"},"_hasShrinkwrap":false},"2.1.3":{"name":"react-redux-api-tools","version":"2.1.3","description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","main":"index.js","scripts":{"coveralls":"npm run test && cat ./coverage/lcov.info | coveralls","lint":"eslint lib/** __tests__/**","test":"jest --coverage","jest":"jest","dist":"NODE_ENV=production ./node_modules/.bin/babel lib -d dist","test_debug":"node --inspect node_modules/.bin/jest"},"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"keywords":["react","redux","api","tools","middleware"],"author":{"name":"Luciano Ratamero"},"license":"MIT","bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"homepage":"https://github.com/labcodes/react-redux-api-tools#readme","devDependencies":{"@babel/cli":"^7.7.0","@babel/core":"^7.5.4","@babel/plugin-proposal-class-properties":"^7.7.0","@babel/plugin-transform-runtime":"^7.5.0","@babel/preset-env":"^7.5.4","@babel/runtime":"^7.5.4","coveralls":"^3.0.5","eslint":"^6.0.1","eslint-config-airbnb-base":"^13.2.0","eslint-config-prettier":"^6.0.0","eslint-plugin-import":"^2.18.0","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.1","jest":"^24.8.0","jest-fetch-mock":"^2.1.2","prettier":"^1.18.2"},"jest":{"automock":false,"setupFiles":["<rootDir>/setupJest.js"],"coverageThreshold":{"global":{"branches":100,"functions":100,"lines":100,"statements":100}}},"husky":{"hooks":{"pre-commit":"npm run lint && npm run dist && npm run test"}},"gitHead":"c584c24eb60d1e1ffd8c07cd37654fe413592b60","_id":"react-redux-api-tools@2.1.3","_nodeVersion":"12.18.1","_npmVersion":"6.14.5","dist":{"integrity":"sha512-91wacdFSebHMX/m1lfeu8L31ip+S1XsTneGFEe4XTDCALYQLUtRFbGgXevofWkVKZByh1A8G/5d4y00F15jFiA==","shasum":"a54bb37bc755aaf703bf79eb1043e885e9a1c9eb","tarball":"https://registry.npmjs.org/react-redux-api-tools/-/react-redux-api-tools-2.1.3.tgz","fileCount":19,"unpackedSize":239141,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8nPCCRA9TVsSAnZWagAA/fIP/1iQbeGdiyDgJyaKBoyz\n0xkDhl0FKY7TPJMDFGNFLbuTe812e4l6hCwQKm7VGrTktqxqk5LSXuEfEUK9\ny45IxGW2kucGf4CokZkOD8yY7tBNfUXLPck+ncl0kMlXQb5E77ue1sB7kgAl\n+VUsqLbIcgorZdR2/u9a8yMYn8dYFZox55TFPX/d+m4wHUaTpHVN0BjSCHD7\n6hScy5PNqLJRLX/oGx9+qURZ0P6YhHQJvIw/cppt8tjrfqayVnDjOp7cZyfE\nH0TLhAHMBCIg3ZqHUSHW0guvZ6hYQIfne8pp3sHTCcti3vbZNiSwZ6Jg9DxC\nyqHI79p8gkNQQB6Hupr9U8kZGvlFDBOVnnx5Z3yDb0Z7whjPoRzAKjBwRFFP\nqVUSF+FtDHI8oSXY/QaE4wCnaSpuFysfBuxbFHgsuTTYIzNaFILR+DM5Qb4d\nPvHgmv1Cd+mxZEmYSmlwz1GHmD+oRD2nUw37qmDuNkoOYYh9KvVhCQWNCbFG\nbxqgrHqQFYBAVd0ZXl9Waq3zJ48DS4ohpYipLKwGQVSJqdSxgvN4snQuOKhX\na4wtaKCTqbjBOKdnHePNY5xqptre2o9sigG4Sl+PvFg6awJhexbSMI49GR2T\nrNhb0hfZjarVS4PLBoAqjxE5MbDlKJPc8L7DXLLwMWW+V6JkScZo8357s6Tn\nU24P\r\n=TjyN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICkm+fCFIajGCu7EDEsy3H3kA7/42iezywH5mwozRq8xAiEA/OzyXKkkKi4zSPIxjhByhl6elMS5H2k8Abn+DukebaQ="}]},"maintainers":[{"email":"daniela@labcodes.com.br","name":"danielafalcone"},{"email":"debora@labcodes.com.br","name":"debscorreia"},{"email":"luciano@ratamero.com","name":"lucianoratamero"},{"email":"maribedran@gmail.com","name":"maribedran"},{"email":"breno@labcodes.com.br","name":"nenispng"},{"email":"olga@labcodes.com.br","name":"olgapinheiro"},{"email":"rhanna@labcodes.com.br","name":"rhanna.andrade"}],"_npmUser":{"name":"lucianoratamero","email":"luciano@ratamero.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-redux-api-tools_2.1.3_1592947649425_0.027546169297292034"},"_hasShrinkwrap":false}},"time":{"created":"2019-07-09T19:31:20.516Z","0.0.1":"2019-07-09T19:31:20.702Z","modified":"2022-11-24T16:15:47.068Z","0.1.0":"2019-07-09T20:25:29.918Z","0.1.1":"2019-07-09T21:12:14.258Z","1.0.0":"2019-07-18T21:30:41.364Z","1.0.1":"2019-08-09T20:54:55.524Z","2.0.0":"2019-09-10T20:46:20.351Z","2.0.1":"2019-09-16T18:04:39.301Z","2.0.2":"2019-10-28T18:30:32.927Z","2.0.2-ie11":"2019-11-07T22:35:00.291Z","2.1.0":"2019-11-07T22:41:07.045Z","2.1.1":"2019-11-07T22:47:56.484Z","2.1.2":"2020-05-25T19:43:02.649Z","2.1.3":"2020-06-23T21:27:29.579Z"},"maintainers":[{"email":"marcus@labcodes.com.br","name":"marcusaldrey"},{"email":"dnc331@gmail.com","name":"ddevdan"},{"email":"judiembl@gmail.com","name":"tiidadavena"},{"email":"lelis@labcodes.com.br","name":"r-lelis"},{"email":"luciano@ratamero.com","name":"lucianoratamero"},{"email":"debora@labcodes.com.br","name":"debscorreia"},{"email":"rhanna@labcodes.com.br","name":"rhanna.andrade"},{"email":"olga@labcodes.com.br","name":"olgapinheiro"},{"email":"breno@labcodes.com.br","name":"nenispng"}],"description":"Middleware and helpers to improve the React-Redux flow when communicating with APIs.","homepage":"https://github.com/labcodes/react-redux-api-tools#readme","keywords":["react","redux","api","tools","middleware"],"repository":{"type":"git","url":"git+https://github.com/labcodes/react-redux-api-tools.git"},"author":{"name":"Luciano Ratamero"},"bugs":{"url":"https://github.com/labcodes/react-redux-api-tools/issues"},"license":"MIT","readme":"# react-redux-api-tools\n\n[![Coverage Status](https://coveralls.io/repos/github/labcodes/react-redux-api-tools/badge.svg?branch=master)](https://coveralls.io/github/labcodes/react-redux-api-tools?branch=master) [![Build Status](https://travis-ci.org/labcodes/react-redux-api-tools.svg?branch=master)](https://travis-ci.org/labcodes/react-redux-api-tools)\n\n\nThis project provides a middleware and a request helper to streamline react-redux data fetching.\n\n### Installing\n\nJust run `npm install --save react-redux-api-tools` and you're good to go.\n\n### Using the `fetchFromApi` helper\n\nOne of the problems of using the default fetch implementation is that it does **not** reject if the status code is 4xx.\n\nIt makes our reducers not exactly semantic, since a 400 Bad Request will be interpreted as a successful request.\n\nFor that case, we provide the `fetchFromApi` helper, which overrides fetch to reject on anything with status equal or above 400.\n\nTo use it, import it and use it on the `apiCallFunction` key, inside your actions:\n\n##### /store/actions.js\n\n```js\nimport { fetchFromApi } from \"react-redux-api-tools\";\n\n// we declare a new action called createProduct that will POST to the backend\nexport const createProduct = (product) => {\n\n  // first, we consolidate the request data inside a dict.\n  // we follow the Request object API\n  // https://developer.mozilla.org/en-US/docs/Web/API/Request\n\n  // by default, the method is 'GET' and we use \"content-type: application/json\" headers,\n  // but you may overwrite the headers as needed\n  const requestData = {\n    method: 'POST',\n    body: JSON.stringify(product)\n  }\n\n  return {\n    types: {\n      request: 'CREATE_PRODUCTS',\n      success: 'CREATE_PRODUCTS_SUCCESS',\n      failure: 'CREATE_PRODUCTS_FAILURE',\n    },\n    // here is where we use it\n    apiCallFunction: () => fetchFromApi(`/api/${product.brand}/inventory/`, requestData),\n  };\n}\n```\n\n\n### Using the middleware\n\n#### Middleware capabilities\n\nThe middleware bundles three actions (`request`, `success` and `failure`) into one action call.\n\nLet me show you with code. This is what a request action would look like when you're using the middleware:\n\n```js\n// we declare a new action called fetchProducts that will fetch data\nexport const fetchProducts = () => {\n  return {\n    // instead of returning the key 'type' with one action type,\n    // we return three, one for each step of the request\n    // inside the 'types' key\n    types: {\n      request: 'FETCH_PRODUCTS',\n      success: 'FETCH_PRODUCTS_SUCCESS',\n      failure: 'FETCH_PRODUCTS_FAILURE',\n    },\n    // we also declare a function that will implement the proper request\n    apiCallFunction: () => fetchFromApi('/api/inventory/')\n  };\n}\n```\n\nThat will:\n\n- trigger the `FETCH_PRODUCTS` reducer on request start;\n- trigger `FETCH_PRODUCTS_SUCCESS` if the request succeeds;\n- trigger `FETCH_PRODUCTS_FAILURE` if it doesn't.\n\n\n#### Making multiple requests at the same time\n\nIf you want to make multiple requests in the same call, instead of returning a single `fetchFromApi` call, you may use [`Promise.all`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/all) passing a list of `fetchFromApi` calls:\n\n```js\nexport const fetchMultipleProducts = () => {\n  return {\n    types: {\n      request: 'FETCH_MULTIPLE_PRODUCTS',\n      success: 'FETCH_MULTIPLE_PRODUCTS_SUCCESS',\n      failure: 'FETCH_MULTIPLE_PRODUCTS_FAILURE',\n    },\n    apiCallFunction: () => Promise.all([ fetchFromApi('/api/inventory/1'), fetchFromApi('/api/inventory/2'), ])\n  };\n}\n```\n\nWhen all of them are successful, the `'FETCH_MULTIPLE_PRODUCTS_SUCCESS'` reducer will be called with a list of `Response` objects. When one of them fails, the `'FETCH_MULTIPLE_PRODUCTS_FAILURE'` will be triggered passing the `Error` instance (most probably a `TypeError: Failed to fetch` error).\n\n\n#### Setup\n\nAssuming you've already installed react and redux, to use it, you'll need to install `redux-thunk` first:\n\n`npm install --save redux-thunk`\n\nThen, we need to apply the middleware when the application starts:\n\n##### App.js\n\n```js\n// on your app setup:\nimport React from 'react';\nimport thunk from 'redux-thunk';\nimport { Provider } from 'react-redux';\n// we import the applyMiddleware function from redux\n// and the apiMiddleware from our tools\nimport { createStore, applyMiddleware } from 'redux';\nimport { apiMiddleware } from 'react-redux-api-tools';\n\nimport Routes from './routes';\nimport rootReducer from './store/reducers';\n\n// then, when we create the base store, we apply the middleware\nconst store = createStore(rootReducer, applyMiddleware(thunk, apiMiddleware));\n\n\nclass App extends React.Component {\n  render () {\n    return (\n      <Provider store={store}>\n        <Routes />\n      </Provider>\n    )\n  }\n}\n```\n\nThen, every time you want to create an action that calls an api, you just need to pass the three types and an api call function as we have stated above:\n\n##### /store/actions.js\n\n```js\n// we declare a new action called fetchProducts that will fetch data\nexport const fetchProducts = (brand) => {\n  return {\n    // instead of returning the key 'type' with one action type,\n    // we return three, one for each step of the request\n    // inside the 'types' key\n    types: {\n      request: 'FETCH_PRODUCTS',\n      success: 'FETCH_PRODUCTS_SUCCESS',\n      failure: 'FETCH_PRODUCTS_FAILURE',\n    },\n    // we also declare a function that will implement the proper request\n    apiCallFunction: () => fetchFromApi(`/api/${brand}/inventory/`),\n\n    // there is an optional callback so we can stop a request if we don't need to refetch the data\n    // it works both for request and default actions\n    shouldDispatch: (appState, action) => { return !appState.products.items.length },\n\n    // and you may as well pass some extra data, if needed\n    extraData: {\n      brand,\n      anything: 'could go here, and it will be available on the action.extraData attribute'\n    }\n  };\n}\n```\n\nOn the reducers side, nothing much changes. We pass the `response` (always) and `error` (when the request fails) objects to the action, so we can get the response/error data on the reducers:\n\n##### /store/reducers.js\n\n```js\nconst productReducer = (state = { isLoading: false }, action) => {\n  switch(action.type) {\n\n    case 'FETCH_PRODUCTS':\n      return {\n        ...state,\n        isLoading: true,\n        error: null,\n        // the extraData will be available in all related reducers\n        // so, if you need it...\n        brand: action.extraData.brand\n      };\n\n    case 'FETCH_PRODUCTS_SUCCESS':\n      return {\n        ...state,\n        isLoading: false,\n        // the action has the response built in\n        // and the middleware detects if the response is a json response\n        // so it can populate the response.data without needing to resolve promises\n        items: action.response.data\n      };\n\n    case 'FETCH_PRODUCTS_FAILURE':\n      return {\n        ...state,\n        isLoading: false,\n        // same thing for errors, but on the error key,\n        // so you can check if it exists on the component side\n        error: action.error.data,\n        // though the response key will always be populated\n        response: action.response,\n        items: []\n      };\n\n    default:\n      return state;\n  }\n}\n```\n\nFinally, on the component, you'll just need to bind it with redux and the code will be **so** clean:\n\n##### /components/ProductsList.js\n\n```jsx\nimport React from 'react';\nimport { connect } from 'react-redux'\nimport { fetchProducts } from '../store/actions';\n\n\nclass ProductsList extends React.Component {\n\n  componentDidMount(){\n    // we just need to dispatch it. ONCE. no redux management here.\n    this.props.fetchProducts();\n  }\n\n  render(){\n    const { isLoading, error, items } = this.props;\n\n    if (isLoading) {\n      return <h1>Loading...</h1>\n    }\n\n    if (error) {\n      return <p className='error'>{JSON.stringify(error.data)}</p>\n    }\n\n    return (\n      <React.Fragment>\n        <h1>Products List</h1>\n        {items.map(product => (\n          <p>{product.name}</p>\n          )\n        )}\n      </React.Fragment>\n    );\n  }\n}\n\n// here, we bind the redux state as component props:\nconst mapStateToProps = (state) => ({\n  isLoading: state.isLoading,\n  items: state.items,\n  error: state.error,\n});\n// and bind the action dispatch to a prop as well:\nconst mapDispatchToProps = (dispatch) => ({\n  fetchProducts: () => dispatch(fetchProducts())\n});\n\n// and connect it to redux :)\nexport default connect(mapStateToProps, mapDispatchToProps)(ProductsList);\n```\n\n### Contributing\n\nDon't hesitate to open an issue for bugs!\n\nBut if you would like a new feature, it would be nice to discuss it before accepting PRs. We reserve ourselves the right to reject a feature that was not discussed or that will impact the code in a meaningful way. In that case, open an issue so we can discuss. Thanks. <3\n\n[![labcodes github banner](labcodes-github-banner.jpg)](https://labcodes.com.br/?utm_source=github&utm_medium=cpc&utm_campaign=react_redux_api)\n","readmeFilename":"README.md"}