UNPKG

blips

Version:

State management for the GraphQL heads

27 lines (17 loc) 992 B
'use strict'; exports.__esModule = true; 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; }; exports.mergeErrorList = mergeErrorList; var _isEmpty = require('./isEmpty'); var _isNil = require('./isNil'); var _isType = require('./isType'); var _when = require('./when'); function mergeErrorList(errors) { var merged = errors.reduce(function (obj, err) { var _extends2; if ((0, _isNil.isNil)(err) || (0, _isEmpty.isEmpty)(err)) return obj; var operationName = err.path ? err.path[0] : (0, _isType.isType)('object', err) ? err.constructor.name : 'Errors'; return _extends({}, obj, (_extends2 = {}, _extends2[operationName] = [].concat(obj[operationName] || [], [err]), _extends2)); }, {}); return (0, _when.when)(_isEmpty.isEmpty, function () {}, merged); }