UNPKG

verusd-web

Version:

A Verus Blockchain library that enables a bi-directional communication with the Verus and other Verus PBaas chains.

56 lines 5.71 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.VerusdWeb = void 0; const HttpServer_1 = require("./HttpServer"); const ZmqClient_1 = require("./ZmqClient"); const WsServer_1 = require("./WsServer"); const ZmqEventsHandlerProvider_1 = require("./ZmqEventsHandlerProvider"); const RpcService_1 = require("./RpcService"); const RpcServiceConfig_1 = require("./RpcServiceConfig"); class VerusdWeb { get zmq() { return this.zmqEventsProvider; } constructor(config) { var _a, _b, _c; this.clientHooks = []; this.customApiRoutes = []; this.daemonConfig = config.daemonConfig; this.localServerConfig = config.localServerConfig; this.wsServer = new WsServer_1.WsServer(); this.zmqEventsProvider = new ZmqEventsHandlerProvider_1.ZmqEventsHandlerProvider(this.wsServer); const zmqEventsHandler = this.zmqEventsProvider.eventsHandler; this.zmqClient = new ZmqClient_1.ZmqClient(this.daemonConfig.zmq.host, this.daemonConfig.zmq.port, this.wsServer, zmqEventsHandler); this.customApiRoutes = (config.localServerConfig.customApiRoutes !== undefined) ? config.localServerConfig.customApiRoutes : []; this.clientHooks = (((_a = config.localServerConfig.ws) === null || _a === void 0 ? void 0 : _a.clientHooks) !== undefined) ? config.localServerConfig.ws.clientHooks : []; this.httpServer = new HttpServer_1.HttpServer({ port: this.localServerConfig.port, wsServer: this.wsServer, clientHooks: this.clientHooks, customApiRoutes: this.customApiRoutes, apiToken: (_b = config.localServerConfig.apiToken) !== null && _b !== void 0 ? _b : '' }); this.initDaemonRpcConnection((_c = config === null || config === void 0 ? void 0 : config.localServerConfig.excludedMethods) !== null && _c !== void 0 ? _c : []); } open() { this.httpServer.open(); this.zmqClient.connect(); return this; } close() { if (this.zmqClient != undefined) { this.zmqClient.disconnect(); } if (this.httpServer != undefined) { this.httpServer.close(); } return true; } initDaemonRpcConnection(excludedMethods) { const host = (this.daemonConfig.port === undefined) ? this.daemonConfig.host : `${this.daemonConfig.host}:${this.daemonConfig.port}`; RpcServiceConfig_1.RpcServiceConfig.set(excludedMethods); RpcService_1.RpcService.init(host, 'Basic ' + btoa(`${this.daemonConfig.user}:${this.daemonConfig.password}`)); } } exports.VerusdWeb = VerusdWeb; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmVydXNkV2ViLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9WZXJ1c2RXZWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQTJFO0FBQzNFLDJDQUF3QztBQUN4Qyx5Q0FBc0M7QUFDdEMseUVBQXNFO0FBQ3RFLDZDQUEwQztBQUMxQyx5REFBc0Q7QUE2QnRELE1BQWEsU0FBUztJQVVsQixJQUFJLEdBQUcsS0FBK0IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO0lBRXRFLFlBQVksTUFBdUI7O1FBTjNCLGdCQUFXLEdBQWlDLEVBQUUsQ0FBQztRQUMvQyxvQkFBZSxHQUFrQixFQUFFLENBQUM7UUFNeEMsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLG1CQUFRLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxtREFBd0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFckUsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDO1FBRTlELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxxQkFBUyxDQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksRUFDMUIsSUFBSSxDQUFDLFFBQVEsRUFDYixnQkFBZ0IsQ0FDbkIsQ0FBQztRQUVGLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsZUFBZSxLQUFLLFNBQVMsQ0FBQyxDQUFBLENBQUMsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDL0gsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUEsTUFBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsRUFBRSwwQ0FBRSxXQUFXLE1BQUssU0FBUyxDQUFDLENBQUEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7UUFFekgsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLHVCQUFVLENBQUM7WUFDN0IsSUFBSSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJO1lBQ2pDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLFFBQVEsRUFBRSxNQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLG1DQUFJLEVBQUU7U0FDcEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLGlCQUFpQixDQUFDLGVBQWUsbUNBQUksRUFBRSxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVELElBQUk7UUFDQSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFHLElBQUksQ0FBQyxTQUFTLElBQUksU0FBUyxFQUFFLENBQUM7WUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQUMsQ0FBQztRQUNoRSxJQUFHLElBQUksQ0FBQyxVQUFVLElBQUksU0FBUyxFQUFFLENBQUM7WUFBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQUMsQ0FBQztRQUM3RCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU8sdUJBQXVCLENBQUMsZUFBeUI7UUFDckQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDeEIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTFELG1DQUFnQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN0Qyx1QkFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7Q0FDSjtBQTdERCw4QkE2REMifQ==