UNPKG

@proofkit/fmodata

Version:

FileMaker OData API client

26 lines (25 loc) 929 B
import { SchemaLockedError, ODataError, HTTPError } from "../errors.js"; import { safeJsonParse } from "./sanitize-json.js"; async function parseErrorResponse(response, url) { var _a; let errorBody; try { if ((_a = response.headers.get("content-type")) == null ? void 0 : _a.includes("application/json")) { errorBody = await safeJsonParse(response); } } catch { } if (errorBody == null ? void 0 : errorBody.error) { const errorCode = errorBody.error.code; const errorMessage = errorBody.error.message || response.statusText; if (errorCode === "303" || errorCode === 303) { return new SchemaLockedError(url, errorMessage, errorBody.error); } return new ODataError(url, errorMessage, String(errorCode), errorBody.error); } return new HTTPError(url, response.status, response.statusText, errorBody); } export { parseErrorResponse }; //# sourceMappingURL=error-parser.js.map