UNPKG

@sourceloop/ctrl-plane-tenant-management-service

Version:

Tenant Management microservice for SaaS control plane

30 lines 1.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.WebhookHelperService = void 0; const tslib_1 = require("tslib"); const core_1 = require("@loopback/core"); const rest_1 = require("@loopback/rest"); const keys_1 = require("../keys"); let WebhookHelperService = class WebhookHelperService { constructor(getHandlers) { this.getHandlers = getHandlers; } async process(dto) { const handlers = await this.getHandlers(); const handler = handlers.find(h => h.type === dto.type); if (handler) { await handler.handle(dto); } else { throw new rest_1.HttpErrors.UnprocessableEntity('Invalid type of webhook'); } } }; exports.WebhookHelperService = WebhookHelperService; exports.WebhookHelperService = WebhookHelperService = tslib_1.__decorate([ (0, core_1.injectable)({ scope: core_1.BindingScope.TRANSIENT }), (0, core_1.extensionPoint)(keys_1.WebhookHandlerEP.key), tslib_1.__param(0, (0, core_1.extensions)()), tslib_1.__metadata("design:paramtypes", [Function]) ], WebhookHelperService); //# sourceMappingURL=webhook-helper.service.js.map