UNPKG

@aimee-blue/ab-service-kit

Version:
49 lines (39 loc) 1.61 kB
"use strict"; var _ws = _interopRequireDefault(require("ws")); var _rxjs = require("rxjs"); var _sockets = require("./shared/sockets"); var _joi = _interopRequireDefault(require("joi")); var _operators = require("rxjs/operators"); var _shared = require("./shared"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const url = 'http://localhost:4010/events'; async function start() { const logger = (0, _shared.defaultBasicLogger)(); const ws = new _ws.default(url); const socket = Object.assign(ws, { id: 'test-socket', closingByKit: false }); process.stdin.setEncoding('utf8'); const data = (0, _rxjs.fromEvent)(process.stdin, 'data'); const allData = (0, _sockets.dataStreamFromSocket)(socket); const actions = (0, _sockets.actionStreamFromSocket)(allData, () => _joi.default.object()); const jobs = (0, _rxjs.merge)(actions.pipe((0, _operators.concatMap)(action => { logger.log(' -> Received', action); return (0, _rxjs.empty)(); }))); const subscriptions = new _rxjs.Subscription(); subscriptions.add((0, _sockets.pipeStreamIntoSocket)(data.pipe((0, _operators.map)(text => ({ type: 'TEST', text: text.replace('\n', '') })), (0, _operators.tap)(action => { logger.log(' <- Sending', action); })), socket)); return jobs.pipe((0, _operators.finalize)(() => { subscriptions.unsubscribe(); }), (0, _operators.ignoreElements)(), (0, _operators.endWith)()).toPromise(); } start().catch(err => { (0, _shared.defaultBasicLogger)().error('', err); }); //# sourceMappingURL=hitSocket.js.map