1 | 'use strict';
|
2 |
|
3 | const sagaBuilder = require('./builders/sagaBuilder');
|
4 |
|
5 | const loader = require('./loader');
|
6 |
|
7 | const buildSagas = (collections, definitions, customApiBuilder) => Object.entries(collections).reduce(
|
8 | (sagas, [sagaName, saga]) => {
|
9 | const sagaFile = saga.path;
|
10 | sagas[sagaName] = sagaBuilder(require(sagaFile), customApiBuilder, definitions);
|
11 | return sagas;
|
12 | },
|
13 | {},
|
14 | );
|
15 |
|
16 |
|
17 |
|
18 | module.exports = (sagas, definitions, customApiBuilder) => {
|
19 | if (typeof sagas === 'string' || sagas instanceof String)
|
20 | sagas = loader(sagas);
|
21 | return buildSagas(sagas, definitions, customApiBuilder);
|
22 | };
|