{"_id":"remote-data-component","_rev":"30-ec6ebd5929be736753bbb79a55be28a6","name":"remote-data-component","dist-tags":{"latest":"0.1.7","alpha":"0.2.0-alpha.6"},"versions":{"0.1.0":{"name":"remote-data-component","version":"0.1.0","description":"","main":"dist/main.js","scripts":{"watch":"webpack --watch","build":"webpack"},"author":{"name":"Parth Narielwala"},"license":"MIT","devDependencies":{"babel-core":"^6.26.3","babel-loader":"^7.1.4","babel-plugin-transform-flow-strip-types":"^6.22.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","flow-bin":"^0.72.0","webpack":"^4.8.3","webpack-cli":"^2.1.3","webpack-dev-server":"^3.1.4"},"dependencies":{"react":"^16.3.2"},"gitHead":"354be0b43367aecd9367c9d1cd8b222b4305cfcf","_id":"remote-data-component@0.1.0","_shasum":"60baff87e8418f48f0044d85caab588234e76eef","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"shasum":"60baff87e8418f48f0044d85caab588234e76eef","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.1.0.tgz","fileCount":8,"unpackedSize":15318,"integrity":"sha512-l+ftEHgm7rBjI7xykPMY6jv/mc0Np7g5t3aISbvCEnXX5Cd5bDbXKkE1fORHPwKAqJCKGIQCw2KMn/I44ZOR/g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCr8vtlQ+IoJ2yfanyfv9sq68g0OY4s9lG+NyVpK/gV7QIhALfMPtQUPmcrDwa724ynCCiUCzXt7EAJpmhkG23hvMY1"}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.1.0_1529089046562_0.9552215273575675"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.1.1":{"name":"remote-data-component","version":"0.1.1","description":"","main":"src/main.js","scripts":{"watch":"webpack --watch","build":"webpack"},"author":{"name":"Parth Narielwala"},"license":"MIT","devDependencies":{"babel-core":"^6.26.3","babel-loader":"^7.1.4","babel-plugin-transform-flow-strip-types":"^6.22.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","flow-bin":"^0.72.0","webpack":"^4.8.3","webpack-cli":"^2.1.3","webpack-dev-server":"^3.1.4"},"dependencies":{"react":"^16.3.2"},"gitHead":"354be0b43367aecd9367c9d1cd8b222b4305cfcf","_id":"remote-data-component@0.1.1","_shasum":"d8638c4a127017e651a8ff502ce01600c0ba7148","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"shasum":"d8638c4a127017e651a8ff502ce01600c0ba7148","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.1.1.tgz","fileCount":8,"unpackedSize":15317,"integrity":"sha512-IhWxkdILwhOpqZaXAqQtj9lqsY+G6onOyt7vkjCW2jd9zL2eLCUo3dIbE5Yhe5nEIQ8tEpeuVFmEFGD3DHJ/IQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCF2mF0lsZfufjiDZbN/rMGpUYBaSphlmoVgAPuXa3jKAIgNu1xRSuLVy1uakczqpnJrOMJUwpvlnI36r1xsQoHLBA="}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.1.1_1529091712749_0.4532417257623076"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.1.2":{"name":"remote-data-component","version":"0.1.2","description":"","main":"src/index.js","scripts":{"watch":"webpack --watch","build":"webpack"},"author":{"name":"Parth Narielwala"},"license":"MIT","devDependencies":{"babel-core":"^6.26.3","babel-loader":"^7.1.4","babel-plugin-transform-flow-strip-types":"^6.22.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","flow-bin":"^0.72.0","webpack":"^4.8.3","webpack-cli":"^2.1.3","webpack-dev-server":"^3.1.4"},"dependencies":{"react":"^16.3.2"},"gitHead":"354be0b43367aecd9367c9d1cd8b222b4305cfcf","_id":"remote-data-component@0.1.2","_shasum":"056fe973f58ce91484b9f043df55e4e83d748031","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"shasum":"056fe973f58ce91484b9f043df55e4e83d748031","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.1.2.tgz","fileCount":8,"unpackedSize":15318,"integrity":"sha512-7u1Ju8EGJ9fUabJV1e9ch12LhkWEmsLhyaYaoHBSdh6tm17T/OaO5ec3H+EZ2YpVaV7QI5PlWMEInBNn+IaWdA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHlwTImt4YLWBmBr7UIHKqrqj2b5hnoviknD4hk6KsdrAiEAlm+i36ZVCi4yp0QxJ+C6VM1uUpd2JnS2zqYtYglvLg8="}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.1.2_1529091793802_0.4131292887697964"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.1.3":{"name":"remote-data-component","version":"0.1.3","description":"","main":"dist/main.js","scripts":{"watch":"webpack --watch","build":"webpack"},"author":{"name":"Parth Narielwala"},"license":"MIT","devDependencies":{"babel-core":"^6.26.3","babel-loader":"^7.1.4","babel-plugin-transform-flow-strip-types":"^6.22.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","flow-bin":"^0.72.0","webpack":"^4.8.3","webpack-cli":"^2.1.3","webpack-dev-server":"^3.1.4"},"dependencies":{"react":"^16.3.2"},"gitHead":"354be0b43367aecd9367c9d1cd8b222b4305cfcf","_id":"remote-data-component@0.1.3","_shasum":"938f6bc63dc741b0b81cf8fbc4c7e93d62bc38f8","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"shasum":"938f6bc63dc741b0b81cf8fbc4c7e93d62bc38f8","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.1.3.tgz","fileCount":8,"unpackedSize":15273,"integrity":"sha512-1e6C4g68T9YozTSRJ7ABjQow+ahWBbeCGhS1YaTK0v3MZXGxfDL5JfqZzzcBJBAr5NW1pJhZ8PSO+mFHGexrwg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQClLdIZrtzo/qwLQUeot+RMS05ES6DYtPIHBVueamQrbwIhANqjwhWbQZmbn7mNYBX3TcZ6G3+PNpsZ0TmefnGxUSOe"}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.1.3_1529092693192_0.964948156738966"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.1.4":{"name":"remote-data-component","version":"0.1.4","description":"","main":"lib/index.js","scripts":{"watch":"webpack --watch","build":"webpack"},"author":{"name":"Parth Narielwala"},"license":"MIT","devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.3","babel-loader":"^7.1.4","babel-plugin-transform-flow-strip-types":"^6.22.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","flow-bin":"^0.72.0","webpack":"^4.8.3","webpack-cli":"^2.1.3","webpack-dev-server":"^3.1.4"},"dependencies":{"react":"^16.3.2"},"gitHead":"354be0b43367aecd9367c9d1cd8b222b4305cfcf","_id":"remote-data-component@0.1.4","_shasum":"2e2040b4ee27a539d9224105277ef28a377f3cc2","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"shasum":"2e2040b4ee27a539d9224105277ef28a377f3cc2","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.1.4.tgz","fileCount":8,"unpackedSize":15590,"integrity":"sha512-J+IjSBfPk3llw4D+Cd+wBHrXat9SplMrfM9Dx2D0mre01R0j30kNwAtXFrQ603fXOD74zIRI1/N2kAM4viLvOA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDu1AzkfWyFFngLEd9of/yapBW0i+4ZqU3zHR8JESNa/AIhAJQCiCed2/BvXTWeseeWL1si+Ve0g2way+AZLvR6P9vq"}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.1.4_1529093966125_0.6472698420438994"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.1.5":{"name":"remote-data-component","version":"0.1.5","description":"","main":"lib/index.js","scripts":{"watch":"webpack --watch","build":"webpack"},"author":{"name":"Parth Narielwala"},"license":"MIT","devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.3","babel-loader":"^7.1.4","babel-plugin-transform-flow-strip-types":"^6.22.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","flow-bin":"^0.72.0","webpack":"^4.8.3","webpack-cli":"^2.1.3","webpack-dev-server":"^3.1.4"},"dependencies":{"react":"^16.3.2"},"gitHead":"354be0b43367aecd9367c9d1cd8b222b4305cfcf","_id":"remote-data-component@0.1.5","_shasum":"5c979bf7db22e4b76ed8a9f3e08f8940fdcf8313","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"shasum":"5c979bf7db22e4b76ed8a9f3e08f8940fdcf8313","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.1.5.tgz","fileCount":9,"unpackedSize":45587,"integrity":"sha512-DgGhzC5Z5j5kvi7ZEmDfWD7uPnIK7BG72VAieKzXCjxriosMtEyfV9HtjSGiwNJbow9y5vIZ3byDWJS31d1DHg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAcP6yTEPMzgIoMDS7mBZkAKIF+LbVm9bJrvC23eHdFwIgcHp2ZKt/VQhivIXFNM5d0kfGRU1Z/OuYkTaWaY3hE/8="}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.1.5_1529095209453_0.8728107371441407"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.1.6":{"name":"remote-data-component","version":"0.1.6","description":"","main":"lib/index.js","scripts":{"watch":"webpack --watch","build":"webpack"},"author":{"name":"Parth Narielwala"},"license":"MIT","devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.3","babel-loader":"^7.1.4","babel-plugin-transform-flow-strip-types":"^6.22.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","flow-bin":"^0.72.0","webpack":"^4.8.3","webpack-cli":"^2.1.3","webpack-dev-server":"^3.1.4"},"dependencies":{"react":"^16.3.2"},"gitHead":"354be0b43367aecd9367c9d1cd8b222b4305cfcf","_id":"remote-data-component@0.1.6","_shasum":"dc238877938d07588dc38d2043a7cddbd7a400b7","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"shasum":"dc238877938d07588dc38d2043a7cddbd7a400b7","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.1.6.tgz","fileCount":9,"unpackedSize":45615,"integrity":"sha512-fvumGEbPh6dNxFcCy6M6uH9oQoDzsHfgi4MQqYpnJbIDbCDymaVmF6wOhsGoQigdqgQHK/JdJFR4sw+4CAvXkg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMaUWNA8Ne/NK+5feNodsADlEZBwI5Ou/OwV85oBqwcQIgAgdBXFjERblsLZT1LviTvo+sFreujyGn9PleCP9PIdA="}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.1.6_1529097169808_0.4511236530028093"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.1.7":{"name":"remote-data-component","version":"0.1.7","description":"","main":"lib/index.js","scripts":{"watch":"webpack --watch","build":"webpack"},"author":{"name":"Parth Narielwala"},"license":"MIT","devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.3","babel-loader":"^7.1.4","babel-plugin-transform-flow-strip-types":"^6.22.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","flow-bin":"^0.72.0","webpack":"^4.8.3","webpack-cli":"^2.1.3","webpack-dev-server":"^3.1.4"},"dependencies":{"react":"^16.3.2"},"gitHead":"354be0b43367aecd9367c9d1cd8b222b4305cfcf","_id":"remote-data-component@0.1.7","_shasum":"423af68c3bd4d149aa869b852f7a4357f8f390ac","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"shasum":"423af68c3bd4d149aa869b852f7a4357f8f390ac","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.1.7.tgz","fileCount":9,"unpackedSize":45688,"integrity":"sha512-Q9Q3n+/2ix1P3KFp+lS4lNhEMQohw34i9cCh44fPOSz2pM5FZGnmQncNB5OM4FLEyyMmbOEFYvlE3bneQJS4LA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNqKpDlaDPEaqVdnnsW4xfjhDu9Hwyybl3GqKS88B82QIgelRlVZw8yDiI7NoJGmt3C2qI4BGkEmMYSoMUouc+5no="}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.1.7_1529097347323_0.48238952574758476"},"_hasShrinkwrap":false},"0.2.0-alpha.3":{"name":"remote-data-component","author":{"name":"Parth Narielwala"},"license":"MIT","homepage":"https://github.com/pnarielwala/react-redux-remote-data","version":"0.2.0-alpha.3","main":"dist/index.js","module":"dist/index.js","scripts":{"start":"react-scripts start","build-examples":"react-scripts build","test":"react-scripts test --env=jsdom","eject":"react-scripts eject","build":"npm run build:clean && npm run build:lib && npm run build:flow","build:clean":"rm -rf dist","build:lib":"NODE_ENV=production babel src/lib --out-dir dist --copy-files --ignore __tests__,spec.js,test.js,__snapshots__","build:flow":"flow-copy-source -v -i '**/__tests__/**' src/lib dist"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"src/**/*.{js,json,scss,md}":["prettier --write","git add"]},"devDependencies":{"babel-cli":"^6.26.0","babel-plugin-transform-flow-strip-types":"^6.22.0","flow-bin":"^0.92.0","flow-copy-source":"^2.0.2","husky":"^1.3.1","lint-staged":"^8.1.3","react":"^16.3.2","react-dom":"^16.3.2","react-scripts":"1.1.4","react-test-renderer":"^16.3.2","redux-saga":"^1.0.1"},"peerDependencies":{"react":"^15.x || ^16.x","react-dom":"^15.x || ^16.x","redux-saga":"^0.x  || ^1.x"},"readme":"# remote-data-component\n\nA library to allow for better remote data UI managment.\n\nLearn more: https://medium.com/unpacking-trunk-club/using-redux-and-redux-saga-to-handle-api-calls-18964d234660\n\n## Installation\n\n```\nnpm install remote-data-component\n```\n\n## Usage\n\n### RemoteDataT\nThis type signifies how remote data should be perceived in correlation to this package and it's components and functions\n\n```js\ntype RemoteDataT<D, E, M = any> =\n  | { phase: 'NOT_ASKED', meta?: M }\n  | { phase: 'PENDING', meta?: M }\n  | { phase: 'SUCCESS', data: D, meta?: M }\n  | { phase: 'ERROR', error: ?E, meta?: M }\n```\n\nLearn more about Union Types\n\n[Flow](https://flow.org/en/docs/types/unions/) [Typescript](https://www.typescriptlang.org/docs/handbook/advanced-types.html)\n\n### RemoteDataComponent\n\nThis component allows a component to be rendered differently for different phases of remote data calls\n\n| Prop | Required | Type | Description |\n|---|---|---|---|\n| data | yes | `{[key: string]: RemoteDataT<*, *>}` | Object containing API data in the `RemoteDataT` type |\n| renderNotAsked | | `() => React.Node` | Renders component when not API calls have been started |\n| renderPending | | `() => React.Node` | Renders when at least ONE call is pending |\n| renderSuccess | | `() => React.Node` | Renders when ALL calls are successful |\n| renderError | | `() => React.Node` | Renders when at leaset ONE call has an error |\n\n```js\nimport React from 'react'\nimport RemoteDataComponent from 'RemoteDataComponent'\n\nclass MyComponent extends React.Component {\n  render() {\n    const { MyDataOne, MyDataTwo } = this.props\n\n    return (\n      <RemoteDataComponent\n        data={{ MyDataOne, MyDataTwo }}\n        renderNotAsked={() => <Empty />}\n        renderPending={() => <Loading />}\n        renderError={() => <Error />}\n        renderSuccess={data => (\n          <Content one={ data.MyDataOne.data } two={ data.MyDataTwo.data } />\n        )}\n      />\n    )\n  }\n}\n```\n\n### onStateTransition\n\nThis utils function is meant to be called when some actions should be taken when a call transitions (eg. `PENDING` -> `SUCCESS` or `PENDING` -> `ERROR`)\n\n| Parameter | Required | Type | Description |\n|---|---|---|---|\n| prevState | yes | `RemoteDataT<*, *>` | Previous API call object |\n| nextState | yes | `RemoteDataT<*, *>` | Next API call object |\n| onSuccess | | `() => void` | Called when state transistion from `non-Success` to `Success` |\n| onError | | `() => void` | Called when state transistion from `non-Error` to `Error` |\n| onPending | | `() => void` | Called when state transistion from `non-Pending` to `Pending` |\n| onInit | | `() => void` | Called when state transistion from `non-Init` to `Init` |\n\n```js\nimport React from 'react'\nimport { onStateTransition } from 'RemoteDataComponent'\n\nclass MyComponent extends React.Component {\n  componentDidUpdate(prevProps) {\n    onStateTransition({\n      prevState: prevProps.MyData,\n      nextState: this.props.MyData,\n      onSuccess: () => console.log('Success!')\n      onError: () => console.warn('Error!')\n    })\n  }\n}\n```\n\n### remoteDataReducer\n\nThis utils function is meant to create a reducer function that facilitates the `RemoteDataT` API call concept\n\n| Parameter | Required | Type | Description |\n|---|---|---|---|\n| prefix | yes | `string` | Prefix string to prefix action types (eg. `MyData/PENDING`) |\n| enhancer | yes | `(state: StateT, action: ActionT) => StateT` | Custom reducer that can be called to account for other action types |\n\n```js\nimport { remoteDataReducer } from 'remote-data-component'\n\nexport default remoteDataReducer('MyData')\n```\n","readmeFilename":"README.md","gitHead":"34b5adcda700eb9f6ddc5133fa66a109edac2524","description":"A library to allow for better remote data UI managment.","_id":"remote-data-component@0.2.0-alpha.3","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"integrity":"sha512-7ya7hj8WLoeXBHifcMyn3WlbKS6Go2XXBoyUAIrYC8szrT8mlhp41Fh5st7r1iUQguxR5xRuUadVXTJAmmOm6g==","shasum":"7815822460ec3802dd129f151f437b80a82c7b9b","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.2.0-alpha.3.tgz","fileCount":18,"unpackedSize":19964,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWeiRCRA9TVsSAnZWagAAPwUP/ibNLK3sXcAcItkOVhqX\ndbL8Bbhdhp7F9Sb2ACoTbnLZqS1SFp00B+UMTvKPEHDR9GnZFkDuyBEILyYe\ncv+X6NJD/tZO7iJGhlv2Spv2ARH8Mg8e747+JCqTViROJzTMBCzI7bqweFon\nNEkV6EabB1T5k6YBFv2HVQ7sgSAz7BIppVcSz94R/T94n7pVPdTEKpYFxq8q\n4LzBDN/KV/xQjGk+njK3PvMWzU/mPHHqfAP0AmxsmUnto7wIZdu0MvDxAeA2\nFCY8RGKfopz3f2SMgqilYop/NDGPOJ9kLt/XoJ90w7hLuJaBlH0DNcGzCYpx\nWd+JBIqo1TmsGj5nkggsPR7XhTuiijYucoK4yV/KZ6v+sVHvTqfNLcrVu84s\nJMRGbc72yk9ZUC4ZBv9u4IcZiir7EeBRJobcOPj391cXMNsIm87XG7IE35YK\nZisI8qgjpcpWin9CnziT/0lcYMgbjXLFui2z24do3agSwd/RJQi4+2wCdxRe\nXlGYqlA1ouNZEvlveqNSsl2tyY85aW750GFCZ+fTn8Fg5DM6NTRrjSO2MkUe\n0K8KD37V+YWyzQc7pdoNTNWMS+4aWLjAeLyAUis6V3PtxRNbFPYnumZifI/V\nPRlL8qcA0VV0gwX4hrgEKMRSVTtXgqoYHnKWNxExxu1CDFIiJuv6gWhubDTq\nx2oT\r\n=mb29\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnO7UFtJqgdSWchaOWZIFsC+uwtbBrh5+D5hkwZRhTtQIhAO96nnhz0iP3LB9k5gSnK4jyFB+a0Lg51CDWEsSObDBU"}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.2.0-alpha.3_1549396113169_0.8975438703569742"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.2.0-alpha.4":{"name":"remote-data-component","author":{"name":"Parth Narielwala"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/pnarielwala/react-redux-remote-data.git"},"version":"0.2.0-alpha.4","main":"dist/index.js","module":"dist/index.js","scripts":{"start":"react-scripts start","build-examples":"react-scripts build","test":"react-scripts test --env=jsdom","eject":"react-scripts eject","build":"npm run build:clean && npm run build:lib && npm run build:flow","build:clean":"rm -rf dist","build:lib":"NODE_ENV=production babel src/lib --out-dir dist --copy-files --ignore __tests__,spec.js,test.js,__snapshots__","build:flow":"flow-copy-source -v -i '**/__tests__/**' src/lib dist"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"src/**/*.{js,json,scss,md}":["prettier --write","git add"]},"devDependencies":{"babel-cli":"^6.26.0","babel-plugin-transform-flow-strip-types":"^6.22.0","flow-bin":"^0.92.0","flow-copy-source":"^2.0.2","husky":"^1.3.1","lint-staged":"^8.1.3","react":"^16.3.2","react-dom":"^16.3.2","react-scripts":"1.1.4","react-test-renderer":"^16.3.2","redux-saga":"^1.0.1"},"peerDependencies":{"react":"^15.x || ^16.x","react-dom":"^15.x || ^16.x","redux-saga":"^0.x  || ^1.x"},"readme":"# remote-data-component\n\nA library to allow for better remote data UI managment.\n\nLearn more: https://medium.com/unpacking-trunk-club/using-redux-and-redux-saga-to-handle-api-calls-18964d234660\n\n## Installation\n\n```\nnpm install remote-data-component\n```\n\n## Usage\n\n### RemoteDataT\nThis type signifies how remote data should be perceived in correlation to this package and it's components and functions\n\n```js\ntype RemoteDataT<D, E, M = any> =\n  | { phase: 'NOT_ASKED', meta?: M }\n  | { phase: 'PENDING', meta?: M }\n  | { phase: 'SUCCESS', data: D, meta?: M }\n  | { phase: 'ERROR', error: ?E, meta?: M }\n```\n\nLearn more about Union Types\n\n[Flow](https://flow.org/en/docs/types/unions/) [Typescript](https://www.typescriptlang.org/docs/handbook/advanced-types.html)\n\n### RemoteDataComponent\n\nThis component allows a component to be rendered differently for different phases of remote data calls\n\n| Prop | Required | Type | Description |\n|---|---|---|---|\n| data | yes | `{[key: string]: RemoteDataT<*, *>}` | Object containing API data in the `RemoteDataT` type |\n| renderNotAsked | | `() => React.Node` | Renders component when not API calls have been started |\n| renderPending | | `() => React.Node` | Renders when at least ONE call is pending |\n| renderSuccess | | `() => React.Node` | Renders when ALL calls are successful |\n| renderError | | `() => React.Node` | Renders when at leaset ONE call has an error |\n\n```js\nimport React from 'react'\nimport RemoteDataComponent from 'RemoteDataComponent'\n\nclass MyComponent extends React.Component {\n  render() {\n    const { MyDataOne, MyDataTwo } = this.props\n\n    return (\n      <RemoteDataComponent\n        data={{ MyDataOne, MyDataTwo }}\n        renderNotAsked={() => <Empty />}\n        renderPending={() => <Loading />}\n        renderError={() => <Error />}\n        renderSuccess={data => (\n          <Content one={ data.MyDataOne.data } two={ data.MyDataTwo.data } />\n        )}\n      />\n    )\n  }\n}\n```\n\n### onStateTransition\n\nThis utils function is meant to be called when some actions should be taken when a call transitions (eg. `PENDING` -> `SUCCESS` or `PENDING` -> `ERROR`)\n\n| Parameter | Required | Type | Description |\n|---|---|---|---|\n| prevState | yes | `RemoteDataT<*, *>` | Previous API call object |\n| nextState | yes | `RemoteDataT<*, *>` | Next API call object |\n| onSuccess | | `() => void` | Called when state transistion from `non-Success` to `Success` |\n| onError | | `() => void` | Called when state transistion from `non-Error` to `Error` |\n| onPending | | `() => void` | Called when state transistion from `non-Pending` to `Pending` |\n| onInit | | `() => void` | Called when state transistion from `non-Init` to `Init` |\n\n```js\nimport React from 'react'\nimport { onStateTransition } from 'RemoteDataComponent'\n\nclass MyComponent extends React.Component {\n  componentDidUpdate(prevProps) {\n    onStateTransition({\n      prevState: prevProps.MyData,\n      nextState: this.props.MyData,\n      onSuccess: () => console.log('Success!')\n      onError: () => console.warn('Error!')\n    })\n  }\n}\n```\n\n### remoteDataReducer\n\nThis utils function is meant to create a reducer function that facilitates the `RemoteDataT` API call concept\n\n| Parameter | Required | Type | Description |\n|---|---|---|---|\n| prefix | yes | `string` | Prefix string to prefix action types (eg. `MyData/PENDING`) |\n| enhancer | yes | `(state: StateT, action: ActionT) => StateT` | Custom reducer that can be called to account for other action types |\n\n```js\nimport { remoteDataReducer } from 'remote-data-component'\n\nexport default remoteDataReducer('MyData')\n```\n","readmeFilename":"README.md","gitHead":"34b5adcda700eb9f6ddc5133fa66a109edac2524","description":"A library to allow for better remote data UI managment.","bugs":{"url":"https://github.com/pnarielwala/react-redux-remote-data/issues"},"homepage":"https://github.com/pnarielwala/react-redux-remote-data#readme","_id":"remote-data-component@0.2.0-alpha.4","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"integrity":"sha512-ZFkzyskqSgAAxy8aynVUez/R9VQPerJW2cLQO+zrbtiiWYYtW2d9ukzxjxiwR+DY+v9VZcZhgcUuT5IFYtMIuQ==","shasum":"d91a4572065873df75f971e3de00b3dcbb0142fb","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.2.0-alpha.4.tgz","fileCount":18,"unpackedSize":20002,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWemdCRA9TVsSAnZWagAA/DAP/RqQpoGDF9g+Th6AQUuX\nwA+Vv2P8IPywCQ7klpKEoo37kYJTC6U2O6LZfskm67k0CLWXFh30f4qBBGwL\nXw2gwVJXTzjwK9pDFLX0mmDllQdxn0oIpokrivVgSCP9OGj0LClCXeXbhKVG\nWzITOlBeVv82mjRZBL3FuVmRxYJz9TJ43GzfVcaEr6l5cFKtEYY9Vefb/bWH\nJiRBs3I/5I/tWgM7aV8+YzXPgDfQjdmtxKBRkug8pRBhXGElZj245pLBg7fx\nMkeL49D8L7DYj6rCtGdzGkJnaFaiHU8guelTksL5USSOMkcKJNFKJEQfRSOR\nXvZP67X621kUb2A4lS6jYBXwaNe8a7yRb3gz6kFPmlJgVMPPWHDAyvfnmhyA\n2j9EOn5+gBS/mYVbTEYDJPwV9KHvKVcmZnLmuOPhuOmKTzYU4dqcVETbV1TL\n7lkNphLYa23H5/aADY07H91FqeqIv/i9POlm8OW6GHYpqzl1XOLbixR3FnuP\nIr1y32MXWYJWEYYolorlMb/C5SOBosOs++osP57xP5WwLy4upRpAFmvAPnTV\nZN1ocNFiCSEQMQjK8xmomYCzYjhOykrheiDlU4Zj0vzjvJvtLLNalf3FqCMg\nzbv+d9V7xPkYBkUMhWLpGg3p+VC5sEDtzezO1JQRqZ/NzSaXd7NaUppDcF9x\naQpD\r\n=xwCC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG25oONrvAlOWBcq42hKS4IuAkE1HwPlWhbhamrjvlGEAiBLDSRy+1vs9N4xZaA7fsdVkYYeuXHfZhE4J2yBlkNbJA=="}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.2.0-alpha.4_1549396380405_0.19829659322841953"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.2.0-alpha.5":{"name":"remote-data-component","author":{"name":"Parth Narielwala"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/pnarielwala/react-redux-remote-data.git"},"version":"0.2.0-alpha.5","main":"dist/index.js","module":"dist/index.js","scripts":{"start":"react-scripts start","build-examples":"react-scripts build","test":"react-scripts test --env=jsdom","eject":"react-scripts eject","build":"npm run build:clean && npm run build:lib && npm run build:flow","build:clean":"rm -rf dist","build:lib":"NODE_ENV=production babel src/lib --out-dir dist --copy-files --ignore __tests__,spec.js,test.js,__snapshots__","build:flow":"flow-copy-source -v -i '**/__tests__/**' src/lib dist"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"src/**/*.{js,json,scss,md}":["prettier --write","git add"]},"devDependencies":{"babel-cli":"^6.26.0","babel-plugin-transform-flow-strip-types":"^6.22.0","flow-bin":"^0.92.0","flow-copy-source":"^2.0.2","husky":"^1.3.1","lint-staged":"^8.1.3","react":"^16.3.2","react-dom":"^16.3.2","react-scripts":"1.1.4","react-test-renderer":"^16.3.2","redux-saga":"^1.0.1"},"peerDependencies":{"react":"^15.x || ^16.x","react-dom":"^15.x || ^16.x","redux-saga":"^0.x  || ^1.x"},"readme":"# remote-data-component\n\nA library to allow for better remote data UI managment.\n\nLearn more: https://medium.com/unpacking-trunk-club/using-redux-and-redux-saga-to-handle-api-calls-18964d234660\n\n## Installation\n\n```\nnpm install remote-data-component\n```\n\n## Usage\n\n### RemoteDataT\nThis type signifies how remote data should be perceived in correlation to this package and it's components and functions\n\n```js\ntype RemoteDataT<D, E, M = any> =\n  | { phase: 'NOT_ASKED', meta?: M }\n  | { phase: 'PENDING', meta?: M }\n  | { phase: 'SUCCESS', data: D, meta?: M }\n  | { phase: 'ERROR', error: ?E, meta?: M }\n```\n\nLearn more about Union Types\n\n[Flow](https://flow.org/en/docs/types/unions/) [Typescript](https://www.typescriptlang.org/docs/handbook/advanced-types.html)\n\n### RemoteDataComponent\n\nThis component allows a component to be rendered differently for different phases of remote data calls\n\n| Prop | Required | Type | Description |\n|---|---|---|---|\n| data | yes | `{[key: string]: RemoteDataT<*, *>}` | Object containing API data in the `RemoteDataT` type |\n| renderNotAsked | | `() => React.Node` | Renders component when not API calls have been started |\n| renderPending | | `() => React.Node` | Renders when at least ONE call is pending |\n| renderSuccess | | `() => React.Node` | Renders when ALL calls are successful |\n| renderError | | `() => React.Node` | Renders when at leaset ONE call has an error |\n\n```js\nimport React from 'react'\nimport RemoteDataComponent from 'RemoteDataComponent'\n\nclass MyComponent extends React.Component {\n  render() {\n    const { MyDataOne, MyDataTwo } = this.props\n\n    return (\n      <RemoteDataComponent\n        data={{ MyDataOne, MyDataTwo }}\n        renderNotAsked={() => <Empty />}\n        renderPending={() => <Loading />}\n        renderError={() => <Error />}\n        renderSuccess={data => (\n          <Content one={ data.MyDataOne.data } two={ data.MyDataTwo.data } />\n        )}\n      />\n    )\n  }\n}\n```\n\n### onStateTransition\n\nThis utils function is meant to be called when some actions should be taken when a call transitions (eg. `PENDING` -> `SUCCESS` or `PENDING` -> `ERROR`)\n\n| Parameter | Required | Type | Description |\n|---|---|---|---|\n| prevState | yes | `RemoteDataT<*, *>` | Previous API call object |\n| nextState | yes | `RemoteDataT<*, *>` | Next API call object |\n| onSuccess | | `() => void` | Called when state transistion from `non-Success` to `Success` |\n| onError | | `() => void` | Called when state transistion from `non-Error` to `Error` |\n| onPending | | `() => void` | Called when state transistion from `non-Pending` to `Pending` |\n| onInit | | `() => void` | Called when state transistion from `non-Init` to `Init` |\n\n```js\nimport React from 'react'\nimport { onStateTransition } from 'RemoteDataComponent'\n\nclass MyComponent extends React.Component {\n  componentDidUpdate(prevProps) {\n    onStateTransition({\n      prevState: prevProps.MyData,\n      nextState: this.props.MyData,\n      onSuccess: () => console.log('Success!')\n      onError: () => console.warn('Error!')\n    })\n  }\n}\n```\n\n### remoteDataReducer\n\nThis utils function is meant to create a reducer function that facilitates the `RemoteDataT` API call concept\n\n| Parameter | Required | Type | Description |\n|---|---|---|---|\n| prefix | yes | `string` | Prefix string to prefix action types (eg. `MyData/PENDING`) |\n| enhancer | yes | `(state: StateT, action: ActionT) => StateT` | Custom reducer that can be called to account for other action types |\n\n```js\nimport { remoteDataReducer } from 'remote-data-component'\n\nexport default remoteDataReducer('MyData')\n```\n","readmeFilename":"README.md","gitHead":"34b5adcda700eb9f6ddc5133fa66a109edac2524","description":"A library to allow for better remote data UI managment.","bugs":{"url":"https://github.com/pnarielwala/react-redux-remote-data/issues"},"homepage":"https://github.com/pnarielwala/react-redux-remote-data#readme","_id":"remote-data-component@0.2.0-alpha.5","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"integrity":"sha512-3fGWJTEl5j7BfGmL0NopN6PfFpk/5XGQRcljacUt888xX1AmJMgduodVRF6SJKQ/pa3zoLuZdTDix0BO3/LaMA==","shasum":"7bc99d654032389c974df31d3690c975c1de8a3d","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.2.0-alpha.5.tgz","fileCount":18,"unpackedSize":20002,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWepUCRA9TVsSAnZWagAALIYP/3aeqVkro+n9iB9eEEkx\nVR5nR5gXWl3dgsp91gUYz0+W6Kt5IpaHn2Sc/e/WoJzxVgwd/DAfTbuyGDGL\nsqGXZo/k0zWFYW5GDWGL0yYsbzy6Gc7Xkq4T11j0OJYx/EinHmvWycg12pRT\nEmMhHyVdhcU5ZZNvwNm8xkJ9xXm5pvUxaRjRm8AzvbXHn74nTbJCLMpSfLMT\n9a/NPWXDxboRBMYTaW+SFXPGJht2MfuS8If9K9jbY9Criok8TIJvVNM4z+bF\nMjmXWHkVDsaQu6O7GIlPYl4jMKI/f/WSekSvPbS9q3pGEhC0kfL/WbmXN5+7\nNnNnMaM79K0sn2589EIzs6iyiP1kucwZP0ZNs2EuqO/VYArrFCHY4pkzUaQ4\nhpvEcFNjDSUqpqISZnIGhBExykkGLAjkB3giQNi2hVvSoHCl1LNcO2KSF0vU\nCftYgmXZNe8AFYWtz+RlbiX+M+a2pKWOVwfBjhZKWTd3r1VBPTGsDU9EEoJP\nglNMceOlf32AqHAtZ1SYvp5QZev7Dv2ExZoX79FezUhWzGjdfbpEheLHygnI\nlIFI2Sls0ixCrC+WGzV6KgSm3C3ETTuE71co0vNZ2e7kT+zBjqTrpijrA4sr\nPAIvzQp1GrHqBfwIL0lvXhNRL6cDoMAk8Fo8yghysjxF31//Cij/RMSj1QuB\nqIIf\r\n=QS9X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEmnMOWEXhTdUyLOkt5U39jyP3wJRSV5tdRFDeaIq2dcAiEA4TAalvCSBZPu1kvguPsJ5bOary246yV4dKasAKxR1DI="}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.2.0-alpha.5_1549396563936_0.9038561511452008"},"_hasShrinkwrap":false,"deprecated":"outdated"},"0.2.0-alpha.6":{"name":"remote-data-component","author":{"name":"Parth Narielwala"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/pnarielwala/react-redux-remote-data.git"},"version":"0.2.0-alpha.6","main":"dist/index.js","module":"dist/index.js","scripts":{"start":"react-scripts start","build-examples":"react-scripts build","test":"react-scripts test --env=jsdom","eject":"react-scripts eject","build":"npm run build:clean && npm run build:lib && npm run build:flow","build:clean":"rm -rf dist","build:lib":"NODE_ENV=production babel src/lib --out-dir dist --copy-files --ignore __tests__,spec.js,test.js,__snapshots__","build:flow":"flow-copy-source -v -i '**/__tests__/**' src/lib dist"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"src/**/*.{js,json,scss,md}":["prettier --write","git add"]},"devDependencies":{"babel-cli":"^6.26.0","babel-plugin-transform-flow-strip-types":"^6.22.0","flow-bin":"^0.92.0","flow-copy-source":"^2.0.2","husky":"^1.3.1","lint-staged":"^8.1.3","react":"^16.3.2","react-dom":"^16.3.2","react-scripts":"1.1.4","react-test-renderer":"^16.3.2","redux-saga":"^1.0.1"},"peerDependencies":{"react":"^15.x || ^16.x","react-dom":"^15.x || ^16.x","redux-saga":"^0.x  || ^1.x"},"readme":"# remote-data-component\n\nA library to allow for better remote data UI managment.\n\nLearn more: https://medium.com/unpacking-trunk-club/using-redux-and-redux-saga-to-handle-api-calls-18964d234660\n\n## Installation\n\n```\nnpm install remote-data-component\n```\n\n## Usage\n\n### RemoteDataT\nThis type signifies how remote data should be perceived in correlation to this package and it's components and functions\n\n```js\ntype RemoteDataT<D, E, M = any> =\n  | { phase: 'NOT_ASKED', meta?: M }\n  | { phase: 'PENDING', meta?: M }\n  | { phase: 'SUCCESS', data: D, meta?: M }\n  | { phase: 'ERROR', error: ?E, meta?: M }\n```\n\nLearn more about Union Types\n\n[Flow](https://flow.org/en/docs/types/unions/) [Typescript](https://www.typescriptlang.org/docs/handbook/advanced-types.html)\n\n### RemoteDataComponent\n\nThis component allows a component to be rendered differently for different phases of remote data calls\n\n| Prop | Required | Type | Description |\n|---|---|---|---|\n| data | yes | `{[key: string]: RemoteDataT<*, *>}` | Object containing API data in the `RemoteDataT` type |\n| renderNotAsked | | `() => React.Node` | Renders component when not API calls have been started |\n| renderPending | | `() => React.Node` | Renders when at least ONE call is pending |\n| renderSuccess | | `() => React.Node` | Renders when ALL calls are successful |\n| renderError | | `() => React.Node` | Renders when at leaset ONE call has an error |\n\n```js\nimport React from 'react'\nimport RemoteDataComponent from 'RemoteDataComponent'\n\nclass MyComponent extends React.Component {\n  render() {\n    const { MyDataOne, MyDataTwo } = this.props\n\n    return (\n      <RemoteDataComponent\n        data={{ MyDataOne, MyDataTwo }}\n        renderNotAsked={() => <Empty />}\n        renderPending={() => <Loading />}\n        renderError={() => <Error />}\n        renderSuccess={data => (\n          <Content one={ data.MyDataOne.data } two={ data.MyDataTwo.data } />\n        )}\n      />\n    )\n  }\n}\n```\n\n### onStateTransition\n\nThis utils function is meant to be called when some actions should be taken when a call transitions (eg. `PENDING` -> `SUCCESS` or `PENDING` -> `ERROR`)\n\n| Parameter | Required | Type | Description |\n|---|---|---|---|\n| prevState | yes | `RemoteDataT<*, *>` | Previous API call object |\n| nextState | yes | `RemoteDataT<*, *>` | Next API call object |\n| onSuccess | | `() => void` | Called when state transistion from `non-Success` to `Success` |\n| onError | | `() => void` | Called when state transistion from `non-Error` to `Error` |\n| onPending | | `() => void` | Called when state transistion from `non-Pending` to `Pending` |\n| onInit | | `() => void` | Called when state transistion from `non-Init` to `Init` |\n\n```js\nimport React from 'react'\nimport { onStateTransition } from 'RemoteDataComponent'\n\nclass MyComponent extends React.Component {\n  componentDidUpdate(prevProps) {\n    onStateTransition({\n      prevState: prevProps.MyData,\n      nextState: this.props.MyData,\n      onSuccess: () => console.log('Success!')\n      onError: () => console.warn('Error!')\n    })\n  }\n}\n```\n\n### remoteDataReducer\n\nThis utils function is meant to create a reducer function that facilitates the `RemoteDataT` API call concept\n\n| Parameter | Required | Type | Description |\n|---|---|---|---|\n| prefix | yes | `string` | Prefix string to prefix action types (eg. `MyData/PENDING`) |\n| enhancer | yes | `(state: StateT, action: ActionT) => StateT` | Custom reducer that can be called to account for other action types |\n\n```js\nimport { remoteDataReducer } from 'remote-data-component'\n\nexport default remoteDataReducer('MyData')\n```\n","readmeFilename":"README.md","gitHead":"34b5adcda700eb9f6ddc5133fa66a109edac2524","description":"A library to allow for better remote data UI managment.","bugs":{"url":"https://github.com/pnarielwala/react-redux-remote-data/issues"},"homepage":"https://github.com/pnarielwala/react-redux-remote-data#readme","_id":"remote-data-component@0.2.0-alpha.6","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"pnarielwala","email":"pnarielwala@gmail.com"},"dist":{"integrity":"sha512-E4OMb5kv/TW18Nvxr1rV14iLXSeU4jJhMvcB9hyT1P4bfhdnYiyQRy2FlU7cXX7j5coYZ4rDkJPlBwDgdBNz3A==","shasum":"1d5f2136565971ce25e44800f5fad5b64c0e462d","tarball":"https://registry.npmjs.org/remote-data-component/-/remote-data-component-0.2.0-alpha.6.tgz","fileCount":18,"unpackedSize":20006,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWerECRA9TVsSAnZWagAAqLAP/3PN5qccfC+EsRnLV+pf\nKlGUSPGVlLbaK8K2ySfzfP5r42NJbZaOQWZzjUAb3Ppcxxmrts9e8N/+cjvm\nUX/2hhgpQG5cT2Vh/H+ObXoxdXEyl3y6a0PHkVmrW7NHRy3XQ/zFO59TC/Nt\nbgCpJWjNdMJiFXPYjr8HHdEIw7FFyBBAODavo+fWv1zhKegv+nfc6NiesSJg\nePR8khrpce8tP+l79b0pU55FdXzswhvUxYUFV9tbA7FY0ofH2gtwLZWdXdlZ\nd7scll+DWQMq6ZCcT3bfxTtApUwXAn8G8qJ+edM9WJuc1VldDQq0rnc6g4dm\nIGQ/XSIyut7daL3+whHStOJndanSn9q28CD5yzVSStu574rhY9F6J0kDxJ63\n0iDAxa+4BtudeB+fDM0mkpyrgNI6JFbKBLyTMC4bTbX9W0Vyv9unejUvIIQD\nyZ46KWscACmams/rRt6dYj3FESxD+J9bLV4F3SAdJOriwBdEOjdiE5p6kAMu\nQyZPsalq9IcEq3Itybq9EduCc57/WC2j9gBDFD+zD+yiG0KSDyVo28wWFsOV\ntjaQD1XgYwTqhDAJqNSXn1hsjdqRNkbvTZ5dm6uReSRFQZVlk73IIB9UiyWb\nwZDkVh5yteY22CKgKv+qz5WNROryLU27uvZ+MWJryjg/PjGqFKCHZBsd2ALt\nkTsD\r\n=AbQl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDl6cKxxEB78CAg16kENzEdzrBJTU7Da/My3fQwx/dx/AIgORncln0HfLhBnk0JMTe8ZG/mFNRUYMytx9ID0z5iIDg="}]},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/remote-data-component_0.2.0-alpha.6_1549396676453_0.2759261548053977"},"_hasShrinkwrap":false}},"time":{"created":"2018-06-15T18:57:26.561Z","0.1.0":"2018-06-15T18:57:26.605Z","modified":"2022-06-26T11:07:00.493Z","0.1.1":"2018-06-15T19:41:52.831Z","0.1.2":"2018-06-15T19:43:13.881Z","0.1.3":"2018-06-15T19:58:13.241Z","0.1.4":"2018-06-15T20:19:26.186Z","0.1.5":"2018-06-15T20:40:09.574Z","0.1.6":"2018-06-15T21:12:49.858Z","0.1.7":"2018-06-15T21:15:47.423Z","0.2.0-alpha.1":"2019-02-04T23:23:40.378Z","0.2.0-alpha.0":"2019-02-05T16:19:00.866Z","0.2.0-alpha.2":"2019-02-05T19:47:54.415Z","0.2.0-alpha.3":"2019-02-05T19:48:33.284Z","0.2.0-alpha.4":"2019-02-05T19:53:00.655Z","0.2.0-alpha.5":"2019-02-05T19:56:04.044Z","0.2.0-alpha.6":"2019-02-05T19:57:56.535Z"},"maintainers":[{"name":"pnarielwala","email":"pnarielwala@gmail.com"}],"author":{"name":"Parth Narielwala"},"license":"MIT","readme":"","readmeFilename":""}