Pure Saga
Pure saga is a functional implementation of generator based asynchronous flow manager based on effects yielding. It has been inspired with redux-saga.
Installation
Via npm:
npm i pure-saga
Or via unpkg.com:
Usage
Pure-saga allows developer to define custom effects to implement any behavior.
It has pretty simple interface createSaga(generatorFunc, sagaEffects)
. This
function returns promisified saga generator. See example below of how to use it.
Example
This example shows how to create API for saga like this:
; // Side effects handlers get instructions generated by factories and produce// result. Side effect could return promises.const effectHandlers = apimethod...args storage storage; // Define some goodies for easy effect creation.const createEffect = type payload; // Effects factoryconst effects = storage: ; // Example saga generator function { // Retrieve user calling api.loadUser method const user = effects; // Put user to storage effectsstorage;} // Create methodconst loadUser = ; // Use it;
Testing
Test example.
{ const user = effect; return user;} ;
License
MIT.