UNPKG

component-dbs-core

Version:

DTO objects shared among device backend

55 lines 2.55 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.validateDeviceTokenMiddleware = exports.checkDeviceStatusMiddleware = exports.accessTokenMiddleware = exports.logMiddleware = void 0; const devices_1 = require("./devices"); exports.logMiddleware = (event, context, next) => __awaiter(void 0, void 0, void 0, function* () { console.log('receive event ', event, 'context', context); return next(event, context); }); exports.accessTokenMiddleware = (event, context, next) => __awaiter(void 0, void 0, void 0, function* () { try { context.accessToken = event.request.headers.authorization; yield context.app .get(devices_1.DeviceVerification) .checkAccessToken(context.accessToken); } catch (err) { console.error(err); throw new Error('Access token is invalid.'); } return next(event, context); }); exports.checkDeviceStatusMiddleware = (event, context, next) => __awaiter(void 0, void 0, void 0, function* () { const status = yield context.app .get(devices_1.DeviceService) .getDeviceStatus(event.args.deviceUuid); if (status !== "ACTIVE" /* ACTIVE */) { throw new Error(`Device status is ${status}.`); } return next(event, context); }); exports.validateDeviceTokenMiddleware = (event, context, next) => __awaiter(void 0, void 0, void 0, function* () { try { const isDeviceTokenValid = yield context.app .get(devices_1.DeviceVerification) .isDeviceTokenValid(event.args.deviceUuid, context.accessToken); if (!isDeviceTokenValid) { throw new Error("Access token and device id don't match."); } } catch (err) { console.error(err); throw err; } return next(event, context); }); //# sourceMappingURL=middlewares.js.map