@ivamuno/nestjs-openapi
Version:
31 lines (30 loc) • 1.1 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.AsyncapiTransformer = void 0;
class AsyncapiTransformer {
normalizeChannels(denormalizedDocs) {
const flatChannels = denormalizedDocs.map((d) => {
const key = d.root.name;
const value = {
description: d.root.description,
bindings: d.root.bindings,
parameters: d.root.parameters,
subscribe: d.operations.sub,
publish: d.operations.pub,
};
return { key, value };
});
const channels = flatChannels.reduce((acc, it) => {
if (acc[it.key]) {
acc[it.key].publish = acc[it.key].publish || it.value.publish;
acc[it.key].subscribe = acc[it.key].subscribe || it.value.subscribe;
}
else {
acc[it.key] = it.value;
}
return acc;
}, {});
return { channels };
}
}
exports.AsyncapiTransformer = AsyncapiTransformer;
;