UNPKG

nestwhats

Version:

A whatsapp-web.js wrapper for NestJS to create WhatsApp bots

65 lines (64 loc) 3.05 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 __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var NestWhatsModule_1; Object.defineProperty(exports, "__esModule", { value: true }); exports.NestWhatsModule = void 0; const common_1 = require("@nestjs/common"); const core_1 = require("@nestjs/core"); const qrcode_1 = require("qrcode"); const whatsapp_web_js_1 = require("whatsapp-web.js"); const commands_module_1 = require("./commands/commands.module"); const listeners_1 = require("./listeners"); const nestwhats_explorer_service_1 = require("./nestwhats-explorer.service"); const nestwhats_module_definition_1 = require("./nestwhats.module-definition"); const ProvidersMap = require("./providers"); const Providers = Object.values(ProvidersMap); let NestWhatsModule = NestWhatsModule_1 = class NestWhatsModule extends nestwhats_module_definition_1.ConfigurableModuleClass { constructor(client) { super(); this.client = client; this.logger = new common_1.Logger(NestWhatsModule_1.name); } onApplicationBootstrap() { this.client.initialize(); } onApplicationShutdown(signal) { this.client.destroy(); } onModuleInit() { this.client.once(whatsapp_web_js_1.Events.QR_RECEIVED, (qr) => { (0, qrcode_1.toString)(qr, { type: "terminal", small: true }, (err, url) => { if (err) { this.logger.error(`Error generating QR code: ${err.message}`); return; } this.logger.verbose("Scan the QR code below to authenticate:"); console.log(url); }); }); } }; exports.NestWhatsModule = NestWhatsModule; exports.NestWhatsModule = NestWhatsModule = NestWhatsModule_1 = __decorate([ (0, common_1.Global)(), (0, common_1.Module)({ imports: [core_1.DiscoveryModule, listeners_1.ListenersModule, commands_module_1.CommandsModule], providers: [nestwhats_explorer_service_1.ExplorerService, ...Providers], exports: [ listeners_1.ListenersModule, commands_module_1.CommandsModule, nestwhats_explorer_service_1.ExplorerService, ...Providers, nestwhats_module_definition_1.NESTWHATS_MODULE_OPTIONS, ], }), __metadata("design:paramtypes", [whatsapp_web_js_1.Client]) ], NestWhatsModule);