UNPKG

@datastax/astra-db-ts

Version:
81 lines (80 loc) 2.8 kB
"use strict"; // Copyright Datastax, Inc // SPDX-License-Identifier: Apache-2.0 Object.defineProperty(exports, "__esModule", { value: true }); exports.DevOpsAPIResponseError = exports.DevOpsAPITimeoutError = exports.DevOpsAPIError = void 0; const timeouts_js_1 = require("../lib/api/timeouts/timeouts.js"); class DevOpsAPIError extends Error { } exports.DevOpsAPIError = DevOpsAPIError; class DevOpsAPITimeoutError extends DevOpsAPIError { constructor(info, types) { super(timeouts_js_1.Timeouts.fmtTimeoutMsg(info.timeoutManager, types)); Object.defineProperty(this, "url", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "timeout", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "timedOutCategories", { enumerable: true, configurable: true, writable: true, value: void 0 }); this.url = info.url; this.timeout = info.timeoutManager.initial(); this.timedOutCategories = types; this.name = 'DevOpsAPITimeoutError'; } static mk(info, types) { return new DevOpsAPITimeoutError(info, types); } } exports.DevOpsAPITimeoutError = DevOpsAPITimeoutError; class DevOpsAPIResponseError extends DevOpsAPIError { constructor(resp, data) { const errors = data?.errors ?? []; const maybeMsg = errors.find((e) => e.message)?.message; const message = (maybeMsg) ? `${maybeMsg}${errors.length > 1 ? ` (+ ${errors.length - 1} more errors)` : ''}` : `Something went wrong (${errors.length} errors)`; super(message); Object.defineProperty(this, "errors", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "status", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "raw", { enumerable: true, configurable: true, writable: true, value: void 0 }); this.errors = extractErrorDescriptors(data); this.status = resp.status; this.raw = resp; this.name = 'DevOpsAPIResponseError'; } } exports.DevOpsAPIResponseError = DevOpsAPIResponseError; function extractErrorDescriptors(data) { const errors = data?.errors || []; return errors.map((e) => ({ id: e.ID, message: e.message, })); }