UNPKG

@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.

40 lines (38 loc) 1.3 kB
import { ApiError } from "./chunk-FLBIVOHD.mjs"; import { HumanReadableSchemaError } from "./chunk-WKR62SAR.mjs"; // src/error/errorHandler.ts import ServerLogger from "@smooai/logger/AwsLambdaLogger"; import { ZodError } from "zod"; import { fromZodError } from "zod-validation-error"; var logger = new ServerLogger(); async function errorHandler(handler, ...args) { try { return await handler(...args); } catch (error) { if (error instanceof ApiError) { logger.error(error, `An API error occurred: Status: ${error.status} (${error.statusText}); Message: ${error.message}`); throw error; } else if (error instanceof HumanReadableSchemaError) { logger.error(error, `A schema validation error occurred: ${error.message}`); throw error; } else if (error instanceof ZodError) { const validationError = fromZodError(error); logger.error(error, `A validation error occurred: ${validationError.toString()}`); 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; } } } export { errorHandler }; //# sourceMappingURL=chunk-J4AMGXE3.mjs.map