{"_id":"@mongodb-js/hadron-app-registry-redux-middleware","_rev":"76-445d9937ab8990e958cceec7aefab860","name":"@mongodb-js/hadron-app-registry-redux-middleware","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.1":{"name":"@mongodb-js/hadron-app-registry-redux-middleware","version":"1.0.1","keywords":["hadron-app-registry","redux","middleware"],"author":{"name":"Matt Fairbrass","email":"matt.fairbrass@mongodb.com"},"license":"Apache-2.0","_id":"@mongodb-js/hadron-app-registry-redux-middleware@1.0.1","maintainers":[{"name":"aherlihy","email":"anna@mongodb.com"},{"name":"alena.khineika","email":"alena.khineika@gmail.com"},{"name":"christkv","email":"christkv@gmail.com"},{"name":"cilix","email":"matthewlevenstein@gmail.com"},{"name":"daprahamian","email":"dan.aprahamian@gmail.com"},{"name":"deepshah","email":"deepcshah@gmail.com"},{"name":"dpercy","email":"davetp425@gmail.com"},{"name":"durran","email":"durran@gmail.com"},{"name":"fredtruman","email":"fred.truman@mongodb.com"},{"name":"glowe","email":"graham.lowe@gmail.com"},{"name":"hswolff","email":"hello@hswolff.com"},{"name":"imlucas","email":"hrabovsky.lucas@gmail.com"},{"name":"jeff-allen-mongo","email":"jeffrey.allen@10gen.com"},{"name":"jimol","email":"jim.oleary@gmail.com"},{"name":"jon.franco","email":"jon.franco@mongodb.com"},{"name":"jrbalsano","email":"jrbalsano@gmail.com"},{"name":"justinjmoses","email":"justinjmoses@gmail.com"},{"name":"kay-kim","email":"kay@mongodb.com"},{"name":"lrlna","email":"shestak.irina@gmail.com"},{"name":"matt_d_rat","email":"matt@mattfairbrass.com"},{"name":"mbroadst","email":"mbroadst@gmail.com"},{"name":"micheal.parks","email":"michealparks1989@gmail.com"},{"name":"mongodb-js-user","email":"dana.groff+mongodb-js@mongodb.com"},{"name":"mpobrien","email":"mpobrien005@gmail.com"},{"name":"pzrq","email":"peter@peterjs.com"},{"name":"redondos","email":"aolivera@gmail.com"},{"name":"rhysm","email":"rhys.howell@10gen.com"},{"name":"rueckstiess","email":"thomas@rueckstiess.net"},{"name":"sampoonachot","email":"joy.sampoonachot@10gen.com"},{"name":"samweaver","email":"samuel.james.weaver@gmail.com"},{"name":"satyasinha","email":"satyendra.n.sinha@gmail.com"},{"name":"schwartzrw","email":"schwartzrw@gmail.com"},{"name":"terakilobyte","email":"terakilobyte@gmail.com"},{"name":"tomhollander","email":"tomhollander@hotmail.com"}],"homepage":"https://github.com/mongodb-js/hadron-app-registry-redux-middleware#readme","bugs":{"url":"https://github.com/mongodb-js/hadron-app-registry-redux-middleware/issues"},"dist":{"shasum":"e978d4a13b7f170d1245fd56af5dd03614af1e86","tarball":"https://registry.npmjs.org/@mongodb-js/hadron-app-registry-redux-middleware/-/hadron-app-registry-redux-middleware-1.0.1.tgz","fileCount":6,"integrity":"sha512-uRLMDVaEZ5exOqKo2ljBYpHLgqloQe8JDNHPMwaaSrV2Go8rqQA3oVMI7uw2k+Vm2PYpyZiH1fyL6mE0m/zPig==","signatures":[{"sig":"MEYCIQCiumNQl9CuO0dslMk4zN+8RBRrjFSvnZCl/bclGNRBIgIhAP+dYsXwOcqbu2PW9bYNX7sLStM6L6MOvX0yb7ZBLUtZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20060},"main":"lib/hadron-app-registry-redux-middleware.js","module":"src/index.js","gitHead":"b950e4ce84a35a09525bb6f7966fe1282f5ca805","scripts":{"test":"cross-env nyc npm run test:single && nyc report --reporter=lcov","check":"mongodb-js-precommit './src/**/*{.js,.jsx}'","clean":"rimraf lib","compile":"cross-env NODE_ENV=production webpack --config ./config/webpack.prod.config.js --progress","precompile":"npm run clean","test:watch":"cross-env NODE_ENV=test mocha-webpack \"./src/**/*.spec.js\" --watch","test:single":"cross-env NODE_ENV=test mocha-webpack \"./src/**/*.spec.js\""},"_npmUser":{"name":"matt_d_rat","email":"matt@mattfairbrass.com"},"precommit":["check"],"repository":{"url":"git+https://github.com/mongodb-js/hadron-app-registry-redux-middleware.git","type":"git"},"_npmVersion":"5.7.1","description":"Redux middleware for interfacing with the Hadron App Registry","directories":{},"_nodeVersion":"7.4.0","dependencies":{"redux":"^3.7.2","hadron-app-registry":"^7.1.0"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^11.4.1","chai":"^4.1.2","jsdom":"^11.6.2","mocha":"^5.0.4","sinon":"^4.4.2","rimraf":"^2.6.2","webpack":"^3.10.0","cross-env":"^5.1.4","@babel/cli":"^7.0.0-beta.40","babel-core":"^6.26.0","pre-commit":"^1.2.2","sinon-chai":"^3.0.0","@babel/core":"^7.0.0-beta.40","babel-loader":"^8.0.0-beta.2","jsdom-global":"^3.0.2","mocha-webpack":"^1.0.1","webpack-merge":"^4.1.2","@babel/preset-env":"^7.0.0-beta.40","mongodb-js-precommit":"^0.4.0","@babel/preset-stage-2":"^7.0.0-beta.40","webpack-node-externals":"^1.6.0","uglifyjs-webpack-plugin":"^1.2.2","eslint-config-mongodb-js":"^2.3.0","istanbul-instrumenter-loader":"^3.0.0"},"peerDependencies":{"redux":"^3.7.2","hadron-app-registry":"^7.1.0"},"_npmOperationalInternal":{"tmp":"tmp/hadron-app-registry-redux-middleware_1.0.1_1520837635788_0.7620334287129931","host":"s3://npm-registry-packages"}}},"time":{"created":"2018-03-12T06:53:55.786Z","modified":"2026-07-15T15:34:19.529Z","1.0.1":"2018-03-12T06:53:55.865Z"},"bugs":{"url":"https://github.com/mongodb-js/hadron-app-registry-redux-middleware/issues"},"author":{"name":"Matt Fairbrass","email":"matt.fairbrass@mongodb.com"},"license":"Apache-2.0","homepage":"https://github.com/mongodb-js/hadron-app-registry-redux-middleware#readme","keywords":["hadron-app-registry","redux","middleware"],"repository":{"url":"git+https://github.com/mongodb-js/hadron-app-registry-redux-middleware.git","type":"git"},"description":"Redux middleware for interfacing with the Hadron App Registry","maintainers":[{"email":"satya@mongodb.com","name":"satyasinha"},{"email":"kristina.stefanova@mongodb.com","name":"kristina.stefano"},{"email":"nathan.smyth@10gen.com","name":"jarjee"},{"email":"iteng@mongodb.com","name":"devtoolsbot"},{"email":"james.wang@mongodb.com","name":"mongo-j"},{"email":"neal.beeken@mongodb.com","name":"nbbeeken"},{"email":"dbx-node@mongodb.com","name":"dbx-node"},{"email":"devtools-npm-user@mongodb.com","name":"devtools-npm-user"}],"readme":"# hadron-app-registry-redux-middleware\n[![][travis_img]][travis_url]\n\n[Redux](https://redux.js.org) middleware which wraps the [Hadron App Registry](https://github.com/mongodb-js/hadron-app-registry) to facilitate the integration between Hadron App components which may use different state or store implementations (eg: [Reflux](https://github.com/reflux/refluxjs), [MobX](https://github.com/mobxjs/mobx)).\n\nThe middleware listens to relevant Hadron App Registry events and dispatches them as Redux actions. It is also able to intercept relevant dispatched Redux actions and emit them as events in the Hadron App Registry.\n\n## Getting Started\n\n```\n$ npm install --save @mongodb-js/hadron-app-registry-redux-middleware\n```\n\nor\n\n```\n$ yarn add @mongodb-js/hadron-app-registry-redux-middleware\n```\n\nAlternatively, you may use the provided UMD builds directly in the `<script>` tag of an HTML page.\n\n## Usage Example\n\nCreate and apply the middleware to the Redux store, passing an instance of the `hadron-app-registry` as the first argument, along with any mappings for `eventsToActions` and `actionsToEvents`.\n\n```javascript\nimport { createStore, applyMiddleware } from 'redux';\nimport AppRegistry from 'hadron-app-registry';\nimport hadronAppRegistryReduxMiddleware from '@mongodb-js/hadron-app-registry-redux-middleware';\nimport reducers from './reducers';\n\nconst appRegistry = new AppRegistry();\n\n// map appRegistry event names (key) to Redux action types (value)\nconst eventsToActions = {\n  'foo': 'BAR'\n};\n\n// map Redux action types (key) to appRegistry event names (value)\nconst actionsToEvents = {\n  'FIZZ': 'buzz'\n};\n\nlet store = createStore(\n  reducers,\n  applyMiddleware(\n    hadronAppRegistryReduxMiddleware(\n      appRegistry,\n      eventsToActions,\n      actionsToEvents\n    )\n  )\n);\n```\n\n## Demo Example\n\nThis project also includes an example demonstrating the middleware in action:\n\n![][demo_img]\n\nTo run the demo, clone this project and execute the following:\n\n```bash\n$: cd ./examples/react\n$: npm install\n$: npm start\n```\n\n## Change Log\n\nThis project adheres to [Semantic Versioning](http://semver.org/).\nEvery release, along with the migration instructions, is documented on the Github [Releases](https://github.com/reactjs/redux/releases) page.\n\n## License\n\nApache 2.0\n\n[travis_img]: https://img.shields.io/travis/mongodb-js/hadron-app-registry-redux-middleware.svg?style=flat-square\n[travis_url]: https://travis-ci.org/mongodb-js/hadron-app-registry-redux-middleware\n[demo_img]: demo.gif\n","readmeFilename":"README.md"}