kafka-console
Version:
39 lines (38 loc) • 1.19 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.raw = exports.js = exports.json = void 0;
exports.getFormatter = getFormatter;
const path_1 = __importDefault(require("path"));
const vm_1 = require("vm");
exports.json = {
encode: (value) => JSON.stringify(value),
decode: (value) => JSON.parse(value.toString()),
};
exports.js = {
encode: (value) => JSON.stringify(value, null, ' '),
decode: (value) => {
const m = { exports: {} };
(0, vm_1.runInNewContext)(value.toString(), { module: m });
return m.exports;
},
};
exports.raw = {
encode: (value) => value,
decode: (value) => value.toString('utf8'),
};
function getFormatter(format) {
switch (format) {
case 'json':
return exports.json;
case 'js':
return exports.js;
case 'raw':
return exports.raw;
default:
const modulePath = path_1.default.resolve(process.cwd(), format);
return require(modulePath);
}
}
;