@smooai/utils
Version:
A collection of shared utilities and tools used across SmooAI projects. This package provides common functionality to standardize and simplify development across all SmooAI repositories.
36 lines (35 loc) • 1.56 kB
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const require_chunk = require("../chunk-CoPdw6nB.cjs");
const require_validation_standardSchema = require("../validation/standardSchema.cjs");
const require_api_ApiError = require("../api/ApiError.cjs");
let zod = require("zod");
let _smooai_logger_AwsServerLogger = require("@smooai/logger/AwsServerLogger");
_smooai_logger_AwsServerLogger = require_chunk.__toESM(_smooai_logger_AwsServerLogger);
//#region src/error/errorHandler.ts
const logger = new _smooai_logger_AwsServerLogger.default();
async function errorHandler(handler, ...args) {
try {
return await handler(...args);
} catch (error) {
if (error instanceof require_api_ApiError.ApiError) {
logger.error(error, `An API error occurred: Status: ${error.status} (${error.statusText}); Message: ${error.message}`);
throw error;
} else if (error instanceof require_validation_standardSchema.HumanReadableSchemaError) {
logger.error(error, `A schema validation error occurred: ${error.message}`);
throw error;
} else if (error instanceof zod.ZodError) {
const prettyError = zod.z.prettifyError(error);
logger.error(error, `A validation error occurred: ${prettyError}`);
throw error;
} else if (error instanceof Error) {
logger.error(error, `An unexpected error occurred: ${error.message}`);
throw error;
} else {
logger.error(error, `An unexpected error occurred: ${error}`);
throw error;
}
}
}
//#endregion
exports.errorHandler = errorHandler;
//# sourceMappingURL=errorHandler.cjs.map