@message-queue-toolkit/sns
Version:
SNS adapter for message-queue-toolkit
36 lines • 1.31 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.SnsConsumerErrorResolver = void 0;
const node_util_1 = require("node:util");
const node_core_1 = require("@lokalise/node-core");
const core_1 = require("@message-queue-toolkit/core");
const zod_1 = require("zod");
class SnsConsumerErrorResolver {
processError(error) {
if (node_util_1.types.isNativeError(error) && error?.name === 'SyntaxError') {
return new core_1.MessageInvalidFormatError({
message: error.message,
});
}
if (error instanceof zod_1.ZodError) {
return new core_1.MessageValidationError({
message: error.message,
details: {
error: error.issues,
},
});
}
if ((0, node_core_1.isStandardizedError)(error)) {
return new node_core_1.InternalError({
message: error.message,
errorCode: error.code,
});
}
return new node_core_1.InternalError({
message: 'Error processing message',
errorCode: 'INTERNAL_ERROR',
});
}
}
exports.SnsConsumerErrorResolver = SnsConsumerErrorResolver;
//# sourceMappingURL=SnsConsumerErrorResolver.js.map
;