@nestjstools/messaging-nats-extension
Version:
Extension to handle messages and dispatch them over Nats
34 lines • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.StorageType = exports.NatsJetStreamChannelConfig = void 0;
const messaging_1 = require("@nestjstools/messaging");
class NatsJetStreamChannelConfig extends messaging_1.ChannelConfig {
connectionUris;
streamConfig;
consumerConfig;
constructor({ connectionUris, name, enableConsumer, avoidErrorsForNotExistedHandlers, middlewares, normalizer, streamConfig, consumerConfig, }) {
super(name, avoidErrorsForNotExistedHandlers, middlewares, enableConsumer, normalizer);
this.connectionUris =
typeof connectionUris === 'string' ? [connectionUris] : connectionUris;
this.streamConfig = {
autoUpdate: streamConfig.autoUpdate ?? false,
maxBytes: streamConfig.maxBytes ?? 1000,
maxMsgs: streamConfig.maxMsgs ?? 10_000_000,
streamName: streamConfig.streamName,
deliverSubjects: streamConfig.deliverSubjects,
storageType: streamConfig.storageType ?? StorageType.Memory,
};
this.consumerConfig = {
autoUpdate: streamConfig.autoUpdate ?? false,
durableName: consumerConfig.durableName,
subject: consumerConfig.subject,
};
}
}
exports.NatsJetStreamChannelConfig = NatsJetStreamChannelConfig;
var StorageType;
(function (StorageType) {
StorageType["File"] = "file";
StorageType["Memory"] = "memory";
})(StorageType || (exports.StorageType = StorageType = {}));
//# sourceMappingURL=nats-jet-stream-channel.config.js.map