UNPKG

component-dbs-core

Version:

DTO objects shared among device backend

40 lines 1.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.onDeviceTableStreamHandler = void 0; const component_core_1 = require("@npco/component-core"); const depositService_1 = require("../deposits/depositService"); const transactionService_1 = require("../transactions/transactionService"); const middlewares_1 = require("../middlewares"); const appModule_1 = require("../appModule"); const devices_1 = require("../devices"); exports.onDeviceTableStreamHandler = component_core_1.withMiddlewares((event, context) => { const { app } = context; const stream = {}; event.Records.forEach((record) => { const eventType = record.dynamodb.Keys.type.S.split('.')[0]; if (typeof stream[eventType] === 'undefined') { stream[eventType] = []; } stream[eventType].push(record); }); Object.keys(stream).forEach((eventType) => { const records = stream[eventType]; switch (eventType) { case 'deposit': { app.get(depositService_1.DepositService).onDepositStream(records); break; } case 'transaction': { app.get(transactionService_1.TransactionService).onTransactionStream(records); break; } case 'settings': { app.get(devices_1.DeviceService).onDeviceSettingsStream(records); break; } default: break; } }); }, [middlewares_1.logMiddleware, component_core_1.bootstrapNestJSMiddleware(appModule_1.AppModule)]); //# sourceMappingURL=deviceTableStreamHandler.js.map