UNPKG

@boomerang-io/utils

Version:

A library of reusable utilities and hooks for React webapps on the Boomerang platform.

49 lines (39 loc) 1.35 kB
import isPlainObject from "lodash/isPlainObject"; export default function formatErrorMessage(_ref) { var _error$response; var error = _ref.error, _ref$defaultTitle = _ref.defaultTitle, defaultTitle = _ref$defaultTitle === void 0 ? "Request Failed" : _ref$defaultTitle, _ref$defaultMessage = _ref.defaultMessage, defaultMessage = _ref$defaultMessage === void 0 ? "Please try again" : _ref$defaultMessage; var title = defaultTitle; var message = defaultMessage; var data = error === null || error === void 0 ? void 0 : (_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.data; // No data, bail early and return default messages if (!data) { return { title: title, message: message }; } // if returning an object for the title if (isPlainObject(data.error)) { var errorObj = data.error; if (errorObj.message) { title = errorObj.message; } } else { var errorTitle = data.error || data.title; if (errorTitle) { title = errorTitle; } // set message if its there var errorMessage = data.detail || data.message; if (errorMessage) { message = errorMessage; } } title = "".concat(title, "."); message = "".concat(message, "."); return { title: title, message: message }; }