open-nomad/ui/app/utils/json-with-default.js

11 lines
366 B
JavaScript
Raw Normal View History

2018-11-02 05:07:58 +00:00
import { copy } from '@ember/object/internals';
// Used with fetch.
// Fetch only goes into the promise catch if there is a network error.
// This means that handling a 4xx or 5xx error is the responsibility
// of the developer.
const jsonWithDefault = defaultResponse => res =>
res.ok ? res.json() : copy(defaultResponse, true);
export default jsonWithDefault;