UNPKG

kafka-pub-sub

Version:

Enterprise-grade Kafka publish/subscribe library for Node.js — producer pool, batch sending, DLQ, SSL/SASL, multi-broker, and real-world industry examples.

24 lines (18 loc) 623 B
const Joi = require('joi'); /** * Validates Kafka message headers. * * @param {Object} headers - The headers object to validate. * @throws {Error} When headers is missing or not a plain object. */ const validateHeaders = (headers) => { if (headers === undefined || headers === null) { throw new Error('Invalid headers: No headers found'); } const schema = Joi.object().keys().unknown(); const { error } = schema.prefs({ errors: { label: 'key' } }).validate(headers); if (error) { throw new Error('Invalid headers: The type of headers should be object'); } }; module.exports = validateHeaders;