ai-utils.js
Version:
Build AI applications, chatbots, and agents with JavaScript and TypeScript.
37 lines (36 loc) • 1.5 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.failedCohereCallResponseHandler = exports.CohereError = exports.cohereErrorDataSchema = void 0;
const secure_json_parse_1 = __importDefault(require("secure-json-parse"));
const zod_1 = require("zod");
const ApiCallError_js_1 = require("../../util/api/ApiCallError.cjs");
exports.cohereErrorDataSchema = zod_1.z.object({
message: zod_1.z.string(),
});
class CohereError extends ApiCallError_js_1.ApiCallError {
constructor({ data, statusCode, url, requestBodyValues, message = data.message, }) {
super({ message, statusCode, requestBodyValues, url });
Object.defineProperty(this, "data", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
this.data = data;
}
}
exports.CohereError = CohereError;
const failedCohereCallResponseHandler = async ({ response, url, requestBodyValues }) => {
const responseBody = await response.text();
const parsedError = exports.cohereErrorDataSchema.parse(secure_json_parse_1.default.parse(responseBody));
return new CohereError({
url,
requestBodyValues,
statusCode: response.status,
data: parsedError,
});
};
exports.failedCohereCallResponseHandler = failedCohereCallResponseHandler;