UNPKG

@tulioncds/nestjs-nats-streaming-transport

Version:

Fork Nats Streaming Transport for NestJS - Auto Reconnect stan

32 lines 1.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createConnection = void 0; const nats = require("nats"); const stan = require("node-nats-streaming"); const createConnection = async (clusterID, clientID, connectOptions, onReconnect) => { const nc = await nats.connect({ url: connectOptions.url, servers: connectOptions.servers, encoding: 'binary', reconnect: connectOptions.reconnect, maxPingOut: connectOptions.maxPingOut, maxReconnectAttempts: connectOptions.maxReconnectAttempts, reconnectTimeWait: connectOptions.reconnectTimeWait, verbose: connectOptions.verbose, waitOnFirstConnect: connectOptions.waitOnFirstConnect, pingInterval: connectOptions.pingInterval }); let sc = stan.connect(clusterID, clientID, { nc }); nc.on('reconnect', () => { sc = stan.connect(clusterID, clientID, { nc }); sc.on('connect', () => { onReconnect(sc); }); }); return new Promise((resolve, reject) => { sc.on('connect', () => resolve(sc)); sc.on('error', err => reject(err)); }); }; exports.createConnection = createConnection; //# sourceMappingURL=create-stan-connection.js.map