{"_id":"@acpaas-ui/js-redux-utils","_rev":"20-84868b7bd238c32065c82bccbf67237b","name":"@acpaas-ui/js-redux-utils","dist-tags":{"latest":"1.0.4"},"versions":{"1.0.1-alpha.2":{"name":"@acpaas-ui/js-redux-utils","version":"1.0.1-alpha.2","author":"","license":"ISC","_id":"@acpaas-ui/js-redux-utils@1.0.1-alpha.2","maintainers":[{"name":"fabianmeul","email":"fabian.meul@gmail.com"},{"name":"jsprds","email":"jasp.desmet@gmail.com"},{"name":"tom-odb","email":"tom230691@gmail.com"}],"dist":{"shasum":"19abebae28fafcaa4f5a2ce09d671321586acaca","tarball":"https://registry.npmjs.org/@acpaas-ui/js-redux-utils/-/js-redux-utils-1.0.1-alpha.2.tgz","fileCount":11,"integrity":"sha512-kiLSUMl8FYi60CJwEOMLc3jDpQE5EbNUIsySAZ5nSZjVyLQnnP/oKxGRb5k+YYdGT4FYfEwLT81LH1QBc0Wl1w==","signatures":[{"sig":"MEQCIG0L1YfhBscUxPr4aSydCe4J4LBUOwmv+0+U1ObTVJ6hAiAawmUvNcULqqnlcVoVC1jESU05JH1nsz1q76pAD4tRWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbHpIUCRA9TVsSAnZWagAApDwP/A6meWKtH1ezKCkAeeBz\nVknDbS/qyhmFUtUL7Ad23+W59h+NXUfcKlGso/hJZgBpawq4k6xkZ62vYfug\nmH7R2j/mxGxNkTwMwYiGdATsPQRg73N+nFGJXICEzQWsLw9sHOfdzBkjpipB\nJykPqsiVqpg5MCsP+1hLCvusscrQfVg6Rh6q+D5SCm3lgvn6EAgmeLg3QPO2\nmqRGQlP+WXlQ+Z7zxJMg5AieEd2gFJRO08EgVpgQo7Hsyo7NtCPgp6CiUj25\nYYpROK5EA/hMwN5om0vk1izdMnoxC0kwZ5emvaFRnKx8R7l1bwmioyTGalne\nbIdMQzAQRDGrn2cYcQ0RuF612vZIVOTIZcXo8TGmqXF652YggAJxFW0kpj0g\ng6UWmaJtZVGi36h85/XL5JM+lvSqjg3Q9NfiTv4r9k7mJkuQMTNfMa4ssRqw\nJq5bEh8v6cqH+sSjkGONxRpOW656npkaff209K4gg3/iPl5hZ35dqQR8NQSb\nGQ5O4eUQEA42N6IM4+Y5pbNQYcjZH2RBVn0u2lHycicjFpi8T5JaBni4NqDy\nL5Oj5myG3vSzH6WyFHr7vJ5hbLEOGmRwAYLJGm9OBZqYKyP8OwEIrBSrToXQ\n4Wyp5XpJRWhhoOJCUBx6HjxBbgSFvMs+uzemkuc+ysaQsi2yxkrwhcc9El0O\nNAOo\r\n=8yvQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"js-redux-utils.umd.js","es2015":"js-redux-utils.es.js","module":"js-redux-utils.es.js","browser":"js-redux-utils.cjs.js","typings":"acpaas-ui-js-redux-utils.d.ts","_npmUser":{"name":"tom-odb","email":"tom230691@gmail.com"},"_npmVersion":"5.8.0","description":"The Redux Utils package provides some helpers and bootstrap utils to ease the redux setup.","directories":{},"_nodeVersion":"9.7.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/js-redux-utils_1.0.1-alpha.2_1528730130828_0.028683124340332933","host":"s3://npm-registry-packages"}},"1.0.1-alpha.3":{"name":"@acpaas-ui/js-redux-utils","version":"1.0.1-alpha.3","author":"","license":"ISC","_id":"@acpaas-ui/js-redux-utils@1.0.1-alpha.3","maintainers":[{"name":"fabianmeul","email":"fabian.meul@gmail.com"},{"name":"jsprds","email":"jasp.desmet@gmail.com"},{"name":"tom-odb","email":"tom230691@gmail.com"}],"dist":{"shasum":"a109a00661cdafcb08d0d209c1636bce4383de19","tarball":"https://registry.npmjs.org/@acpaas-ui/js-redux-utils/-/js-redux-utils-1.0.1-alpha.3.tgz","fileCount":11,"integrity":"sha512-6R5c1MGe/6QLILmgtBjSd7MAdr+c59OwDhpN+6qJ7UmpMevDIEIkh4Vlt63eNlp3WPmzPfynBdWvmR5iL1k4EA==","signatures":[{"sig":"MEUCIEO8iw3vA1wIK/wWTbmpM3GUd89TN+bPGqeYXkwGNR3lAiEA7SACfNVijBP+yTkGxIme63Gh44cQ/faqRycptis5guQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44024,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbHqAXCRA9TVsSAnZWagAAmt4P/0qw13k0HG0+0YHgD3Ve\nFcJrlr/hM4yVwcReTkBuBnxhVfVD+RhTOr2Q8LRyDLugZfYbCaYd6rontEGM\n0xlK0C0Kpk6ISeFgD1WsF78xEzqOpAHYJLdmP2vIa/9K3CMH+lsL3ymA9ywl\navFHET4ArmuTXSDQ57nAwuL6j57o6HxRVFYEem99WFkBKK0M/ZVAg0IwnWkZ\n3clD2taMUXixTuKobGgxizOjfnJ51buNqWBU26qSqdzeefOQMIvyn2FmqZa5\nr5Gt1gcQfqeYO5zg/lxr25SnTg2OQbCY1k4pCwm6K+RMPV6K73Xevop97zSl\nCF/9xTduOC6cZuVTbU6oDSenQk2wUMUFiA1OtycPOyOHrLdZNFDM6sg0tEbE\nJfwpXt+O6eyyhl6SHkET4tLLvnXdu61VeOpu5h8z3qP3D5n5K74J0uxIWfK7\nzLLx3Rr46JMXLRiudusolvyms6KJ9vOLR6x7QoYRxNaCmzy8WQOwWkDmMpAs\noi3LagRxp+FZSDONqWVvpKgNowGjPHVG7Gy/pKnj/t/k+fbAZ/rU+vrO4Ug/\nsZ0DMZ/vhp0K3GvaNAeu54cPPIjua1ifq8VJmsOXpMIhg2JCLHEyEo23UQDg\nqskxjh6E619t5Ap8mUVdz3T9zX7SW3zJQKUeDiqzwkFmhiTb5geqgA/JFRDR\nG6ez\r\n=R2YV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"js-redux-utils.umd.js","es2015":"js-redux-utils.es.js","module":"js-redux-utils.es.js","browser":"js-redux-utils.cjs.js","typings":"acpaas-ui-js-redux-utils.d.ts","_npmUser":{"name":"tom-odb","email":"tom230691@gmail.com"},"_npmVersion":"5.8.0","description":"The Redux Utils package provides some helpers and bootstrap utils to ease the redux setup.","directories":{},"_nodeVersion":"9.7.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/js-redux-utils_1.0.1-alpha.3_1528733718269_0.9273357435757157","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@acpaas-ui/js-redux-utils","version":"1.0.1","author":"","license":"ISC","_id":"@acpaas-ui/js-redux-utils@1.0.1","maintainers":[{"name":"fabianmeul","email":"fabian.meul@gmail.com"},{"name":"frankdsm","email":"frank.desmettre@gmail.com"},{"name":"jsebrech","email":"joeri@sebrechts.net"},{"name":"jsprds","email":"jasp.desmet@gmail.com"},{"name":"lievenvg","email":"lievenvg@gmail.com"},{"name":"stefanpante","email":"me@stefanpante.com"},{"name":"tom-odb","email":"tom230691@gmail.com"},{"name":"tomvandenbroeck","email":"tom.vandenbroeck@digipolis.be"},{"name":"trianglejuice","email":"trianglejuice@mac.com"}],"dist":{"shasum":"f3559784ab51308bc73396b815868c77c90672e6","tarball":"https://registry.npmjs.org/@acpaas-ui/js-redux-utils/-/js-redux-utils-1.0.1.tgz","fileCount":11,"integrity":"sha512-gi3HHGz2jHiiStiQ2W/+J/3HmL72zpeUQ/vk6vQ2CEpx0JnucUg0Te3C4yrc0evYQnIdxqGuzUeuTBqf9Twr9g==","signatures":[{"sig":"MEUCIQCpPVGXA5UdJwCr8xi9pfOj3fEpfGUgA9EUQZWdRWM76AIgDdBQipyY44yS41aebIbCdkga8J5+LEzKZveecurc66Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJckgYMCRA9TVsSAnZWagAAQuoP/2Ec+VgmP7sXJTA+4LZ3\nvEiRc7p8RHk1VI5c1idconRG71K6bdxVzqD5xzjdkXt96Kp5PVXGAivzHS3a\n87n2fFFAcP6N0rYHqWoPPAXDUhfmEAlRlJpWaWLkhoZJYQQVxMZamKGFcNnL\nBWPI0fnjMZauuCOAkPj8hxDsK1O+kibeNJcQUovvJ8Ojw7U3uRJrxIRBBslB\n8H6JoQRS2698WzYP3dl3B/0A5a+ceF9OqAkmiZZ5yn1UE1HPIpIdIymGvN6E\n/Y5DzCPB+MV2h0AdTyRssH8VRsNB7Ro/5NNwRF5lg4OOV9alSwMaeFVDwzlR\nbuBwoqoHMBalU0tR59iTUbwNkMwqWpOVI7ocWsPDW02rDGcOhltnyLd8CX9s\nxoln/pPInV1N/uS+w6ef589dRxL+FzRVr68v1MCh1BDEdB2HFSr/MDuNwAMD\nvwhdrUrijgysQ85JmIV4JN8vlvWkf8+ygjB2hsTWm9+hc14+hpjLXFNMAD+f\ngcRSzrbpd6jVs1lvdifn6ROH/a1UHuypo5oEERrt1c8ak3ioYBJDBkwskG20\nQuVGW2JjY9RsEf+5beo6lpSaOxKGjHF9Z/igTV0FE6F0f8MuRHUIExuP9vIR\nxR0v4oVC+jba+ExzUFOi8HkHgie0T77G6v3G/QOpa5KK9xPtAKB+AbMk186k\n0PeL\r\n=w2k7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"acpaas-ui-js-redux-utils.umd.js","es2015":"acpaas-ui-js-redux-utils.es.js","module":"acpaas-ui-js-redux-utils.es.js","browser":"acpaas-ui-js-redux-utils.cjs.js","typings":"acpaas-ui-js-redux-utils.d.ts","_npmUser":{"name":"tom-odb","email":"tom230691@gmail.com"},"_npmVersion":"6.4.1","description":"[![js-redux-utils-status]][js-redux-utils-package]","directories":{},"_nodeVersion":"10.15.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/js-redux-utils_1.0.1_1553073676118_0.3742904610139093","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@acpaas-ui/js-redux-utils","version":"1.0.2","author":"","license":"ISC","_id":"@acpaas-ui/js-redux-utils@1.0.2","maintainers":[{"name":"fabianmeul","email":"fabian.meul@gmail.com"},{"name":"frankdsm","email":"frank.desmettre@gmail.com"},{"name":"jsebrech","email":"joeri@sebrechts.net"},{"name":"jsprds","email":"jasp.desmet@gmail.com"},{"name":"lievenvg","email":"lievenvg@gmail.com"},{"name":"stefanpante","email":"me@stefanpante.com"},{"name":"tom-odb","email":"tom230691@gmail.com"},{"name":"trianglejuice","email":"trianglejuice@mac.com"}],"dist":{"shasum":"408713ec3b5fa1f481607fe7a5b27142cc66116f","tarball":"https://registry.npmjs.org/@acpaas-ui/js-redux-utils/-/js-redux-utils-1.0.2.tgz","fileCount":15,"integrity":"sha512-gTv+S27Tp8BOojLEQFbPRyHnQL5UMVRuguSb3X4TpHUsbyayPloywaWn8XPJkiRT89kbRX0/CIRFJYiyvdQGRA==","signatures":[{"sig":"MEUCIQCHS8jkG7trP6G5F9bPQi4cNbnqUav0HzZzz2WwSROcNAIgc5XBS+6gCijbRWtCTCBRfjILawMHUNz86wgHEHjUf94=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIaQUCRA9TVsSAnZWagAApp4P/ih+x4kveyay26w3S/RM\nMNRyarqX9rX6EtcojY03YtWznBOgfJcIFMFeWTTvVXmRGV5u7PO5a4fgannj\ntEWG4QJk5hujVC7iaXqTsmfobOXK9LOOeE97XWkAWE6vK8Ox8CEPN0eL1+AI\nbNWVR9BZILzC1dGnnNRw65KBk8+e42BLTOPoUQLBZ5qUZv+v36oaoJqKjMi4\nPnhZHZeHeLOUF65RV2qD6UnLcU1MdEAK4G7zLq7+L2lT3bbFzK3iVfYQ14/l\nLQkn4mGTSjhogGD197QD63VoshHteISdvZ+bFwE5T14Zv7sOfXumTR8fuojH\n3v4L+DwjN7ImWfNNxRYr1GUhrvv3z0LiwnrHnqB/+IJcq8Qyro2ukdF/8EoF\nG1BgZmIwWdzEjcpKFjo/tBs2LPfhpNa6vjmMR16TDziIa8VPfdkjD8eWmxM6\nostjpXzAWA4S+FF2BGxK3yhriR/87BC4I7Uj4WqJMmPGbYHzjRDImm02esz7\nUnkXdL6Jy/D8gsQeA/E/3rvEcDVPJVJ/XeOazEk+tgJWNNdAEL3hFBHEP4fv\ntUDq+2comC3VKCNX/Tar+3N+t+YOqke3VlWsjEe+1LU3jrsjSAoDOGpRVkxy\nFZGf14W4x8ym/mAGqnjd3BAwIrl0pkvepikv8Ov3ootpD63++0D+xbia6m+3\n20ex\r\n=dYXf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"acpaas-ui-js-redux-utils.umd.js","es2015":"acpaas-ui-js-redux-utils.es.js","module":"acpaas-ui-js-redux-utils.es.js","$rollup":{"fileName":"acpaas-ui-js-redux-utils","moduleName":"JsReduxUtils"},"browser":"acpaas-ui-js-redux-utils.cjs.js","scripts":{"copy":"npm run copy:types && npm run copy:packageJson && npm run copy:readme","lint":"eslint .","test":"cross-env NODE_ENV=test mocha --require babel-register -t 2000 --recursive","build":"npm run clean && npm run rollup && npm run copy","clean":"rimraf dist","rollup":"rollup -c --extend","copy:types":"copy \"src/*.d.ts\" dist/","test:watch":"npm run test -- -w","copy:readme":"copy \"README.md\" dist/","test:coverage":"nyc --reporter=lcov --reporter=text-summary npm test","coverage:serve":"lite-server","prepublishOnly":"npm run build","copy:packageJson":"node ../../scripts/package.js date-utils","********************** TEST **********************":"","********************** Deploy **********************":""},"typings":"acpaas-ui-js-redux-utils.d.ts","_npmUser":{"name":"trianglejuice","email":"trianglejuice@mac.com"},"_npmVersion":"6.11.3","description":"[![js-redux-utils-status]][js-redux-utils-package]","directories":{},"_nodeVersion":"12.12.0","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.1.2","copy":"^0.3.2","mocha":"^5.1.1","sinon":"^5.0.7","eslint":"^4.19.1","rimraf":"^2.7.1","rollup":"^0.58.2","cross-env":"^5.1.5","babel-core":"^6.26.3","sinon-chai":"^3.0.0","babel-istanbul":"^0.12.2","babel-register":"^6.26.0","babel-preset-env":"^1.7.0","babel-plugin-rewire":"^1.1.0","chai-shallow-deep-equal":"^1.4.6","eslint-plugin-chai-friendly":"^0.4.1","@studiohyperdrive/eslint-config":"^3.0.2","babel-plugin-transform-object-rest-spread":"^6.26.0"},"_npmOperationalInternal":{"tmp":"tmp/js-redux-utils_1.0.2_1579262995705_0.45430918173749757","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@acpaas-ui/js-redux-utils","version":"1.0.3","author":"","license":"ISC","_id":"@acpaas-ui/js-redux-utils@1.0.3","maintainers":[{"name":"fabianmeul","email":"fabian.meul@gmail.com"},{"name":"frankdsm","email":"frank.desmettre@gmail.com"},{"name":"jsebrech","email":"joeri@sebrechts.net"},{"name":"jsprds","email":"jasp.desmet@gmail.com"},{"name":"lievenvg","email":"lievenvg@gmail.com"},{"name":"stefanpante","email":"me@stefanpante.com"},{"name":"tom-odb","email":"tom230691@gmail.com"},{"name":"trianglejuice","email":"trianglejuice@mac.com"}],"dist":{"shasum":"97073bbb1361ac652d237dc0f832d7a2ca1cce7a","tarball":"https://registry.npmjs.org/@acpaas-ui/js-redux-utils/-/js-redux-utils-1.0.3.tgz","fileCount":2,"integrity":"sha512-gMXRdYcDaute1q+F88YRlKJqcdmQyourZ8q9ZfYBlI8AEdGvQC+N0K33Xn+UpcipPaqQECCVd+26nNumrbTjdw==","signatures":[{"sig":"MEUCIG44SaAwsx/zG7nkfAKLPrS7X8svECjewYrRX5dMsRkyAiEA3ily/cPyvp0AYuxM/OMMIhhRMP33mqir5B7ji/IHe0c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7298,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIb3uCRA9TVsSAnZWagAAxvkP/02iuk4PDHHSeGkP+1nT\nJWxvvNI6qyHudqOFSTXYbRP2oec8WmllswM2HzpyO5kNFC4UuhSQHLm1113d\nIJlHCXkoSXkEaJ+YAX3gmTkKkZjxmkcNFqIf5yHUfQgp9xJogrj2OtPLHwSs\nr1iOTNSkoR6Hpd4frRM0oPKEEI2NY7YL4xRPuPQmzhPFi25lv5wg0SRbNEVY\nFJDR0FvezF71MCiKq8VZxh60Fu1TCJ96Q/2nqoKTSRSzOLBerR7uURZ8pRvC\nVblJlhwRhQo4AuSsx41MIu5FS/vEFNnt8UY6cTh1F5+nleyPnOVCSyM/PmbQ\nW0lOpuOm2KJ5F5M9DsPUpz4zAIK0/zW0n8YBXJ0/1S/qeyHKSebWyPvTf3O0\n5SqLlSk+O3xWoAJlwVBuNpd3n4pki94WR2gjNPcOf47WQ0VYGyqSVKEuK0RJ\nOG1+zETfaEZMnyk4YlrwS/vx30FfAPpx2mgE24esBteQiU6pXmDbfxmWApl6\nQ/y3i1di58QGOQDxQY7FRfubVKSHG8uk9B+B9trJCQYK10tDl197IH5I4Gh0\nwTRXcD7aW2LYG4cItSP3rIRwhXCZdeKqbLtXWSM5AVlJIPmrJD98HXJICerY\nlyIDPS1zQGK18G3/sdGIRF6jHhO3/IVat2Q3SevbhlEoWtu1LyJQtheCPUm3\nHXqL\r\n=egFS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/acpaas-ui-js-redux-utils.umd.js","es2015":"./dist/acpaas-ui-js-redux-utils.es.js","module":"./dist/acpaas-ui-js-redux-utils.es.js","$rollup":{"fileName":"acpaas-ui-js-redux-utils","moduleName":"JsReduxUtils"},"browser":"./dist/acpaas-ui-js-redux-utils.cjs.js","gitHead":"5a294ec1f6e2c0e17ebd6521babda4c0a2d06ac6","scripts":{"lint":"eslint .","test":"cross-env NODE_ENV=test mocha --require babel-register -t 2000 --recursive","build":"npm run clean && npm run rollup","clean":"rimraf dist","rollup":"rollup -c --extend","test:watch":"npm run test -- -w","test:coverage":"nyc --reporter=lcov --reporter=text-summary npm test","coverage:serve":"lite-server","prepublishOnly":"npm run build","********************** TEST **********************":"","********************** Deploy **********************":""},"typings":"./src/acpaas-ui-js-redux-utils.d.ts","_npmUser":{"name":"trianglejuice","email":"trianglejuice@mac.com"},"_npmVersion":"lerna/3.20.2/node@v12.12.0+x64 (darwin)","description":"[![js-redux-utils-status]][js-redux-utils-package]","directories":{},"_nodeVersion":"12.12.0","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.1.2","copy":"^0.3.2","mocha":"^5.1.1","sinon":"^5.0.7","eslint":"^4.19.1","rimraf":"^2.7.1","rollup":"^0.58.2","cross-env":"^5.1.5","babel-core":"^6.26.3","sinon-chai":"^3.0.0","babel-istanbul":"^0.12.2","babel-register":"^6.26.0","babel-preset-env":"^1.7.0","babel-plugin-rewire":"^1.1.0","chai-shallow-deep-equal":"^1.4.6","eslint-plugin-chai-friendly":"^0.4.1","@studiohyperdrive/eslint-config":"^3.0.2","babel-plugin-transform-object-rest-spread":"^6.26.0"},"_npmOperationalInternal":{"tmp":"tmp/js-redux-utils_1.0.3_1579269614077_0.2326722216497703","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"@acpaas-ui/js-redux-utils","version":"1.0.4","author":"","license":"ISC","_id":"@acpaas-ui/js-redux-utils@1.0.4","maintainers":[{"name":"fabianmeul","email":"fabian.meul@gmail.com"},{"name":"frankdsm","email":"frank.desmettre@gmail.com"},{"name":"jsebrech","email":"joeri@sebrechts.net"},{"name":"jsprds","email":"jasp.desmet@gmail.com"},{"name":"lievenvg","email":"lievenvg@gmail.com"},{"name":"stefanpante","email":"me@stefanpante.com"},{"name":"tom-odb","email":"tom230691@gmail.com"},{"name":"trianglejuice","email":"trianglejuice@mac.com"}],"dist":{"shasum":"4a117b957c327bbb6443f1ffcddbc13c1d533e37","tarball":"https://registry.npmjs.org/@acpaas-ui/js-redux-utils/-/js-redux-utils-1.0.4.tgz","fileCount":18,"integrity":"sha512-Afe7TRyXOgQ1aEfuZlIRcrO2+pVeziPY1wwqlO/oJWosYV13FQX1v0Uz+WO8K+lsQr+uEf4JgbnNOWjyFGiFsQ==","signatures":[{"sig":"MEUCIB5f2QGAjZhwDC4d5SG1hd379IXBeLnTTvySAHeYkHnEAiEA3RhA+SkrhYSRKfoVrrGt6GxNIZm8iokT+B7AjLVDZHg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49011,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIdLxCRA9TVsSAnZWagAA6EcP/A4hyYAdbYo/79VcfPr+\negtEbZ1XXjli1IKiJh9Q4D1fmo6Waznc1xPiljxTExgz99dIkK1D6rkCX7Yx\nqSVY8X7o3GpgU/A4tHReQSpbbysVBCfOQSkzpCHoE10V6uP/XPYE12fl8EEY\nb35Sz9f1SWQJP4EgDNpyXJYPAmVvJBrspBbG0swuLauL+6iXH+aoF1fu0345\nsQnsJClWFvmb4hN0KnNnqeFLHA+Qup+Tgya7GW6JYg3h47lrbKaKVT7werEr\nTCKQb4G9AP37Q2XzVE1meYZDnfkA+DsptRWDqyIQ7WyvyOYAT1nwnLDIdZ3n\nJp1ah0Uo3itR4bUzQpABklCGVkJIYZYEr0LipqNnG7Bu/vaygDegSVCWaTR1\nCDGBi8+joPcm7SI2VcitpQgIitNVGS9YuGGxHDxeoFXkqXn/zCwfZViF4BuX\n3JclP7C2zS3JGeNbpvzA/v/tpKcxnVas/QhNCU/OO/dmXYzCiItZw/B2Xlrn\nMualImIC3SnvEFy6wEHPqkCndTN/3Dk1WVpQhFXUnCyrHbhHhH1hN/4QDopQ\ngYzmQwPwmctmv44srZwzZEAVKgbs4byj7lJ6ragcoTSSRjFPhGFOcg9bwK1I\nqPNaMOoQG/qr31KMQk6dfADMDJ57HIjg1QXBwfi2ONvABkGf3dNK2oNMwNEP\naOim\r\n=Az4P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/acpaas-ui-js-redux-utils.umd.js","es2015":"./dist/acpaas-ui-js-redux-utils.es.js","module":"./dist/acpaas-ui-js-redux-utils.es.js","$rollup":{"fileName":"acpaas-ui-js-redux-utils","moduleName":"JsReduxUtils"},"browser":"./dist/acpaas-ui-js-redux-utils.cjs.js","gitHead":"261bb6ff0b51b8a977c168701b69171fa1c816f7","scripts":{"lint":"eslint .","test":"cross-env NODE_ENV=test mocha --require babel-register -t 2000 --recursive","build":"npm run clean && npm run rollup","clean":"rimraf dist","rollup":"rollup -c --extend","test:watch":"npm run test -- -w","test:coverage":"nyc --reporter=lcov --reporter=text-summary npm test","coverage:serve":"lite-server","prepublishOnly":"npm run build","********************** TEST **********************":"","********************** Deploy **********************":""},"typings":"./src/acpaas-ui-js-redux-utils.d.ts","_npmUser":{"name":"trianglejuice","email":"trianglejuice@mac.com"},"_npmVersion":"lerna/3.20.2/node@v12.12.0+x64 (darwin)","description":"[![js-redux-utils-status]][js-redux-utils-package]","directories":{},"_nodeVersion":"12.12.0","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.1.2","copy":"^0.3.2","mocha":"^5.1.1","sinon":"^5.0.7","eslint":"^4.19.1","rimraf":"^2.7.1","rollup":"^0.58.2","cross-env":"^5.1.5","babel-core":"^6.26.3","sinon-chai":"^3.0.0","babel-istanbul":"^0.12.2","babel-register":"^6.26.0","babel-preset-env":"^1.7.0","babel-plugin-rewire":"^1.1.0","chai-shallow-deep-equal":"^1.4.6","eslint-plugin-chai-friendly":"^0.4.1","@studiohyperdrive/eslint-config":"^3.0.2","babel-plugin-transform-object-rest-spread":"^6.26.0"},"_npmOperationalInternal":{"tmp":"tmp/js-redux-utils_1.0.4_1579274992974_0.07576188480118384","host":"s3://npm-registry-packages"}}},"time":{"created":"2018-06-11T15:15:30.431Z","modified":"2025-12-08T09:56:06.879Z","1.0.1-alpha.2":"2018-06-11T15:15:31.720Z","1.0.1-alpha.3":"2018-06-11T16:15:18.321Z","1.0.1":"2019-03-20T09:21:16.218Z","1.0.2":"2020-01-17T12:09:55.901Z","1.0.3":"2020-01-17T14:00:14.201Z","1.0.4":"2020-01-17T15:29:53.168Z"},"license":"ISC","description":"[![js-redux-utils-status]][js-redux-utils-package]","maintainers":[{"email":"tom.opdebeeck@studiohyperdrive.be","name":"tom-odb"},{"email":"fabian.meul@gmail.com","name":"fabianmeul"},{"email":"trianglejuice@mac.com","name":"trianglejuice"},{"email":"me@stefanpante.com","name":"stefanpante"},{"email":"jasp.desmet@gmail.com","name":"jsprds"},{"email":"lievenvg@gmail.com","name":"lievenvg"},{"email":"nicolas@yapla.be","name":"yapla"}],"readme":"# ACPaaS UI JS Redux Utils\n\n[![js-redux-utils-status]][js-redux-utils-package]\n\nThe Redux Utils package provides some helpers and bootstrap utils to ease the redux setup.\n\n## Installation\n---\n\n**NPM**\n```\nnpm install @acpaas-ui/js-redux-utils --save\n```\n\n**Yarn**\n```\nyarn add @acpaas-ui/js-redux-utils\n```\n\n## Import\n---\n\n```\n// ES2015\nimport { progressReducer } from '@acpaas-ui/js-redux-utils';\n```\n\n## Higher Order Reducers (HOR)\n---\nThere are 3 HORs available: `progress`, `basicType` and `target`. The usage of `combineReducers` is required for these HORs to work.\n\n### progress\n\nThe progress HOR wraps the state in an object detailing the status of your data:\n\n``` javascript\n{\n    loading: true/false,\n    created: 'Thu Feb 15 2018 13:36:31 GMT+0100 (CET)',\n    lastUpdated: 'Thu Feb 15 2018 13:36:31 GMT+0100 (CET)',\n    error: 'Custom error',\n    result: {\n        id: 'my-item'\n    }\n}\n```\n\nYou can update the status by providing the `loading` flag or an `err` message in your action:\n\n``` javascript\n{\n    type: 'DO_STUFF',\n    loading: true/false,\n    err: 'Something went wrong'\n}\n```\n\nBy wrapping your reducer, you maintain control over what is stored in the `result`, without having to bother with the loading state. You just have to provide a type and a reducer function:\n\n``` javascript\nconst myReducer = (state, action) => {\n    if (action.type === 'STUFF_LOAD') {\n        return {\n            ...state,\n            stuff: action.stuff\n        };\n    }\n\n    return state;\n};\n\nconst progressReducer = progress('STUFF', myReducer);\n```\n\nThe progressReducer will only trigger for actions starting with the type you provided. We use namespacing by trailing slash `/`:\n\n```\ntype = 'ARTICLES';\n\n'ARTICLES/LOAD' will match\n'ARTICLES/LOAD' will match\n'ARTICLES/PAGE' will match\n'NEWS_ARTICLES' will not match\n'ARTICLES_LOAD' will not match\n'ARTICLE/LOAD' will not match\n```\n\n### basicType\n\nIn a lot of applications there are similar data types that require a minimum of functionality:\n\n* load an item\n* load multiple items\n* append new items to the stored items\n* clear an item/items\n\nTo avoid a lot of *copy pasta* the `redux-utils` package provides a very basic HOR to handle this use case.\n\nSimply provide a type (defaults to `BASIC_DEFAULT`) and an (optional) initial value:\n\n``` javascript\nconst newsReducer = basicType({\n    type: 'NEWS'\n}, null);\n```\n\nNow you can update the news type by dispatching actions using the type you provided as a namespace:\n\n``` javascript\ndispatch({\n    type: 'NEWS/LOAD',              // <TYPE>/LOAD\n    data: {                         // will always look for a 'data' property\n        id: '1',\n        title: 'How cool is this?'\n    }\n});\n```\n\n#### Data types\n\nBy default the `basicType` HOR will assume you are handling a single item. If you need to handle arrays, set the `dataType` option to `list`:\n\n``` javascript\nconst newsReducer = basicType({\n    type: 'NEWS',\n    dataType: 'list',\n}, []);\n```\n\nNow you can use the same `LOAD` action to set the state:\n\n``` javascript\ndispatch({\n    type: 'NEWS/LOAD',\n    data: [{\n        id: '1',\n        title: 'How cool is this?'\n    }]\n});\n```\n\nor use the `LOAD_MORE` action to append new items to the state:\n\n``` javascript\ndispatch({\n    type: 'NEWS/LOAD_MORE',\n    data: [{\n        id: '2',\n        title: 'Need more content.'\n    }]\n});\n```\n\n**Note:**\nWhen you call the `LOAD_MORE` action on a `single` data type, the reducer will fallback to the `LOAD` action, overwriting the state.\n\n#### Progress\n\nYou can use the `progress` HOR by setting `progress` to `true` in the settings:\n\n``` javascript\nconst newsReducer = basicType({\n    type: 'NEWS',\n    dataType: 'list',\n    progress: true,\n}, []);\n```\n\nYou can still dispatch `loading` and `error` states the same way:\n\n``` javascript\ndispatch({\n    type: 'NEWS/LOAD',\n    loading: true,\n});\n```\n\n### target\n\nThe target reducer stores the result of the provided reducer for the provided target in the store.\nThis way, you can reuse reducer logic and without having to manage an extra layer of complexity.\n\n``` javascript\n{\n    filters: {\n        search: {...},\n        home: {...},\n        users: {...}\n    }\n}\n```\n\nThe `targetReducer` expects a `type`, `reducer` and optional `initialState` to work:\n\n``` javascript\nconst filterReducer = targetReducer({ type: 'FILTERS' }, myFilterReducer, {});\n```\n\nThe `type` will be the namespace verified with the action type.\n\n#### Updating a target\n\nYou can update targets by setting the `target` property on the dispatched action:\n\n``` javascript\ndispatch({\n    type: 'FILTERS/LOAD',\n    target: 'search',\n    filters: [...],\n});\n```\n\nThe state will be updated accordingly:\n\n``` javascript\n{\n    filters: {\n        search: [...]\n    }\n}\n```\n\n#### Progress\n\nYou can wrap your targets in a `progressReducer` by setting `progress` to `true` in the settings:\n\n``` javascript\nconst filterReducer = targetReducer({\n    type: 'FILTERS',\n    progress: true\n}, myFilterReducer, {});\n```\n\nNow you can dispatch `loading` and `error` states the same as before:\n\n``` javascript\ndispatch({\n    type: 'FILTERS/LOAD',\n    loading: true,\n    target: \"search\"\n});\n```\n\nThe state will be updated accordingly:\n\n``` javascript\n{\n    filters: {\n        search: {\n            loading: true,\n            error: null,\n            result: null,\n            ...\n        }\n    }\n}\n```\n\n[js-redux-utils-package]: https://www.npmjs.com/package/@acpaas-ui/js-redux-utils\n[js-redux-utils-status]: https://img.shields.io/npm/v/@acpaas-ui/js-redux-utils.svg","readmeFilename":"README.md"}