UNPKG

dash-renderer

Version:

render dash components in react

31 lines (30 loc) 1.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = loading; var _ramda = require("ramda"); function loading() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'LOADED': return action.payload.reduce((acc, load) => { var loadPath = [JSON.stringify(load.path)]; var prev = (0, _ramda.pathOr)([], loadPath, acc); return (0, _ramda.assocPath)(loadPath, prev.filter(loading => loading.property !== load.property), acc); }, state); case 'LOADING': return action.payload.reduce((acc, load) => { var loadPath = [JSON.stringify(load.path)]; var prev = (0, _ramda.pathOr)([], loadPath, acc); if (!(0, _ramda.includes)(load, prev)) { // duplicate outputs prev.push(load); } return (0, _ramda.assocPath)(loadPath, prev, acc); }, state); default: return state; } }