UNPKG

@harmonyjs/controller-persistence-events

Version:

Persistence events to SocketIO controller for Harmony

48 lines (40 loc) 1.4 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); /* * The Persistence Events Controller transfers Persistence Events to SocketIO layer */ const ControllerPersistenceEvents = function ControllerPersistenceEvents(config) { return { name: 'ControllerPersistenceEvents', async initialize({ logger, socket }) { const { events } = config; events.on('updated', ({ model, document }) => { var _a, _b; socket.to('persistence-events').emit(`${model.name}-updated`, (_a = document) === null || _a === void 0 ? void 0 : _a._id); socket.to('persistence-events').emit(`${model.name}-saved`, (_b = document) === null || _b === void 0 ? void 0 : _b._id); }); events.on('removed', ({ model, document }) => { var _a, _b; socket.to('persistence-events').emit(`${model.name}-updated`, (_a = document) === null || _a === void 0 ? void 0 : _a._id); socket.to('persistence-events').emit(`${model.name}-removed`, (_b = document) === null || _b === void 0 ? void 0 : _b._id); }); socket.on('connection', s => { s.join('persistence-events'); }); logger.info('Persistence events are forwarded to Socket.IO'); } }; }; exports.default = ControllerPersistenceEvents; //# sourceMappingURL=index.js.map