UNPKG

blips

Version:

State management for the GraphQL heads

18 lines (14 loc) 852 B
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; import { isEmpty } from './isEmpty'; import { isNil } from './isNil'; import { isType } from './isType'; import { when } from './when'; export function mergeErrorList(errors) { var merged = errors.reduce(function (obj, err) { var _extends2; if (isNil(err) || isEmpty(err)) return obj; var operationName = err.path ? err.path[0] : isType('object', err) ? err.constructor.name : 'Errors'; return _extends({}, obj, (_extends2 = {}, _extends2[operationName] = [].concat(obj[operationName] || [], [err]), _extends2)); }, {}); return when(isEmpty, function () {}, merged); }