UNPKG

nestjs-auto-reflect-metadata-emitter

Version:

[![Actions Status](https://github.com/Codibre/nestjs-auto-reflect-metadata-emitter/workflows/build/badge.svg)](https://github.com/Codibre/nestjs-auto-reflect-metadata-emitter/actions) [![Actions Status](https://github.com/Codibre/nestjs-auto-reflect-metad

31 lines 1.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getHandlersMeta = getHandlersMeta; exports.defineCommandHandlers = defineCommandHandlers; exports.defineQueryHandlers = defineQueryHandlers; const fluent_iterable_1 = require("@codibre/fluent-iterable"); const decorator_helpers_1 = require("../decorator-helpers"); const meta_info_1 = require("../meta-info"); let cqrs; function getHandlersMeta(handlers) { return (0, fluent_iterable_1.fluentObject)(handlers) .map(1) .map((cls) => ({ cls, command: (0, meta_info_1.getClassMetadata)(cls)?.methods.get('execute')?.args[0], })) .filter('command'); } function defineCommandHandlers(handlers) { cqrs ??= require('@nestjs/cqrs'); getHandlersMeta(handlers).forEach((meta) => { (0, decorator_helpers_1.applyClassDecorators)(meta.cls, [cqrs.CommandHandler(meta.command)]); }); } function defineQueryHandlers(handlers) { cqrs ??= require('@nestjs/cqrs'); getHandlersMeta(handlers).forEach((meta) => { (0, decorator_helpers_1.applyClassDecorators)(meta.cls, [cqrs.QueryHandler(meta.command)]); }); } //# sourceMappingURL=handler-helpers.js.map