UNPKG

lml-main

Version:

This is now a mono repository published into many standalone packages.

20 lines 1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const lodash_1 = require("lodash"); const redux_observable_1 = require("redux-observable"); const cosmo_redux_api_1 = require("@lml/cosmo-redux-api"); exports.ensureJobsAreInState = (action$, store) => action$.ofType(cosmo_redux_api_1.FETCH_CONSOLIDATIONS.SUCCESS) .map(action => { const state = store.getState(); const consolidations = action.result.reduce((acc, curr) => { const jobs = curr.jobs || curr.Jobs; return lodash_1.union(acc, jobs.map(j => j.refId)); }, []); const jobs = cosmo_redux_api_1.getJobKeys(state); const jobsNotInState = lodash_1.difference(consolidations, jobs); return jobsNotInState.length ? cosmo_redux_api_1.fetchJobsByIdBatch(jobsNotInState) : { type: 'ALL_CONSOLIDATIONS_IN_STATE' }; }); exports.fetchConsolidationEpics = redux_observable_1.combineEpics(exports.ensureJobsAreInState); //# sourceMappingURL=fetch-consolidations.js.map