/
githubmirror
/
nest
Обзор
Документация
Войти
/
githubmirror
/
nest
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
integration/discovery/src/webhooks.explorer.ts
39 строк
1 KB
Kamil Myśliwiec
build: use strict null checks part 5
26 ноя 2024, 16:39
Не верифицирован
26 ноя 2024, 16:39
7d3e5c1
Код
Авторство
О чём код?
import { Injectable } from '@nestjs/common'; import { DiscoveryService, MetadataScanner } from '@nestjs/core'; import { Webhook, WebhookHandler } from './decorators/webhook.decorators'; @Injectable() export class WebhooksExplorer { constructor( private readonly discoveryService: DiscoveryService, private readonly metadataScanner: MetadataScanner, ) {} getWebhooks() { const webhooks = this.discoveryService.getProviders({ metadataKey: Webhook.KEY, }); return webhooks.map(wrapper => { const { name } = this.discoveryService.getMetadataByDecorator( Webhook, wrapper, )!; return { name, handlers: this.metadataScanner .getAllMethodNames(wrapper.metatype!.prototype) .map(methodName => { const { event } = this.discoveryService.getMetadataByDecorator( WebhookHandler, wrapper, methodName, )!; return { methodName, event, }; }), }; }); } }