mobrix-engine-plugin-epics
v1.0.2
Published
Use redux-observable epics inside MoBrix-engine system
Downloads
3
Readme
MoBrix-engine-plugin-epics
Use redux-observable epics with MoBrix-engine system
Summary
Getting started
Installation
Check MoBrix-engine guide to init the system
If you want to use this plugin with MoBrix-engine, install it:
npm i mobrix-engine-plugin-epics
Usage
Include this plugin inside your MoBrix-engine config file, and optionally set the epics
field as an array, containing all the epics you want to use:
const epicsPlugin = require("mobrix-engine-plugin-epics");
const { createMoBrixEngineAction } = require("mobrix-engine-tools");
const customActionOne = createMoBrixEngineAction("@@custom/action-one");
const customActionTwo = createMoBrixEngineAction("@@custom/action-two");
const config = {
appName: "custom-app",
plugins: [epicsPlugin],
epics: [
(actions$) =>
actions$.pipe(filter(customActionOne), mapTo(customActionTwo)),
],
};
module.exports = { config };
Integration with other plugins
- This plugin expose some fields to work with any other plugin. If you want to interact with it, using your custom plugin, add an
interaction
withepics
plugin, and add your custom epic to the given epics array:
//Just a skeleton of a custom plugin that interacts with router plugin
const customPlugin = () => ({
// Custom plugin stuffs
interactions: [
{
plugin: "mobrix-engine-epics",
effect: (epics) => {
// Custom plugin stuffs
//Add the custom epic
epics.push((actions$) =>
actions$.pipe(filter(customActionOne), mapTo(customActionTwo))
);
return epics;
},
},
],
});
Included libraries
- [redux-observable]https://redux-observable.js.org/) - to use Epics
- MoBrix-engine-types - to use MoBrix-engine type definitions inside the plugin
- This library is written entirely with Typescript
Authors
License
This project is licensed under the MIT License - see the LICENSE file for details