UNPKG

@rafikidota/eidolon

Version:

Sometimes, the best way to solve your own problems is to help someone else.

80 lines 3.54 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var NatsModule_1; Object.defineProperty(exports, "__esModule", { value: true }); exports.NatsModule = void 0; const common_1 = require("@nestjs/common"); const config_1 = require("@nestjs/config"); const microservices_1 = require("@nestjs/microservices"); const config_2 = require("@nestjs/config"); const microservices_2 = require("@nestjs/microservices"); const nats_service_1 = require("./nats.service"); const env_1 = require("./env"); const env_2 = require("./env"); const constants_1 = require("../../constants"); const constants_2 = require("../../constants"); const constants_3 = require("../../constants"); let NatsModule = NatsModule_1 = class NatsModule { static forRoot(options = {}) { const { isGlobal = false } = options; return { module: NatsModule_1, global: isGlobal, imports: [ config_1.ConfigModule.forRoot({ load: [env_1.NatsEnvConfig], validationSchema: env_2.NatsConfigValidationSchema, }), microservices_1.ClientsModule.registerAsync([ { name: constants_1.NATS_SERVICE, imports: [config_1.ConfigModule], inject: [config_2.ConfigService], useFactory: (service) => { const envServers = service.get(constants_3.NATS_SERVERS_URL) || []; const envServer = service.get(constants_2.NATS_SERVER_URL); const servers = new Set(envServers); if (envServer) { servers.add(envServer); } return { transport: microservices_2.Transport.NATS, options: { servers: Array.from(servers) }, }; }, }, ]), ], exports: [nats_service_1.NatsService], providers: [nats_service_1.NatsService], }; } static register(options) { const { isGlobal = false, servers = [] } = options; return { module: NatsModule_1, global: isGlobal, imports: [ microservices_1.ClientsModule.register([ { name: constants_1.NATS_SERVICE, transport: microservices_2.Transport.NATS, options: { servers }, }, ]), ], exports: [nats_service_1.NatsService], providers: [nats_service_1.NatsService], }; } }; exports.NatsModule = NatsModule; exports.NatsModule = NatsModule = NatsModule_1 = __decorate([ (0, common_1.Module)({}) ], NatsModule); //# sourceMappingURL=nats.module.js.map