12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.responseToError = void 0;
- const _ = require("lodash");
- const error_1 = require("./error");
- function responseToError(response, body) {
- if (response.statusCode < 400) {
- return;
- }
- if (typeof body === "string") {
- if (response.statusCode === 404) {
- body = {
- error: {
- message: "Not Found",
- },
- };
- }
- else {
- body = {
- error: {
- message: body,
- },
- };
- }
- }
- if (typeof body !== "object") {
- try {
- body = JSON.parse(body);
- }
- catch (e) {
- body = {};
- }
- }
- if (!body.error) {
- const errMessage = response.statusCode === 404 ? "Not Found" : "Unknown Error";
- body.error = {
- message: errMessage,
- };
- }
- const message = "HTTP Error: " + response.statusCode + ", " + (body.error.message || body.error);
- let exitCode;
- if (response.statusCode >= 500) {
- exitCode = 2;
- }
- else {
- exitCode = 1;
- }
- _.unset(response, "request.headers");
- return new error_1.FirebaseError(message, {
- context: {
- body: body,
- response: response,
- },
- exit: exitCode,
- status: response.statusCode,
- });
- }
- exports.responseToError = responseToError;
|