UNPKG

@cleardu/rmq

Version:

Nest - modern, fast, powerful node.js web framework (@rmq)

90 lines (89 loc) 3.66 kB
"use strict"; var RmqBroadCastModule_1; Object.defineProperty(exports, "__esModule", { value: true }); exports.RmqBroadCastModule = void 0; const tslib_1 = require("tslib"); const common_1 = require("@nestjs/common"); const rmq_service_1 = require("./rmq.service"); const rmq_broadcast_module_definition_1 = require("./rmq-broadcast.module-definition"); const nestjs_rabbitmq_1 = require("@golevelup/nestjs-rabbitmq"); let RmqBroadCastModule = RmqBroadCastModule_1 = class RmqBroadCastModule extends rmq_broadcast_module_definition_1.RmqBroadcastModuleDefinition.ConfigurableModuleClass { static forRoot(options) { return { module: RmqBroadCastModule_1, imports: [ nestjs_rabbitmq_1.RabbitMQModule.forRoot(nestjs_rabbitmq_1.RabbitMQModule, { exchanges: [ { name: 'agent.exchange', type: 'fanout', }, { name: 'call.exchange', type: 'fanout', }, ], uri: options.config.uri, connectionInitOptions: { wait: false }, enableControllerDiscovery: true, channels: { 'socket-channel': { prefetchCount: 15, default: true, }, }, }), ], exports: [ nestjs_rabbitmq_1.RabbitMQModule, RmqBroadCastModule_1, nestjs_rabbitmq_1.AmqpConnection, nestjs_rabbitmq_1.AmqpConnectionManager, ], }; } static forRootAsync(options) { return { module: RmqBroadCastModule_1, imports: [ ...(options.imports || []), nestjs_rabbitmq_1.RabbitMQModule.forRootAsync(nestjs_rabbitmq_1.RabbitMQModule, { useFactory: async (...args) => { const opt = await options.useFactory(...args); return { exchanges: [ { name: 'agent.exchange', type: 'fanout', }, { name: 'call.exchange', type: 'fanout', }, ], uri: opt.config?.uri || '', connectionInitOptions: { wait: false }, enableControllerDiscovery: true, channels: { 'socket-channel': { prefetchCount: 15, default: true, }, }, }; }, inject: options.inject || [], imports: options.imports || [], }), ], exports: [nestjs_rabbitmq_1.RabbitMQModule, RmqBroadCastModule_1], }; } }; exports.RmqBroadCastModule = RmqBroadCastModule; exports.RmqBroadCastModule = RmqBroadCastModule = RmqBroadCastModule_1 = tslib_1.__decorate([ (0, common_1.Module)({ providers: [rmq_service_1.RmqService], exports: [], }) ], RmqBroadCastModule);