/
vasya2
/
var
Обзор
Документация
Войти
/
vasya2
/
var
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
api/src/plugins/mailer.ts
40 строк
774 B
Oliver Eyton-Williams
chore(api): migrate to fastify v5 (#57576)
02 июн 2025, 05:37
Не верифицирован
02 июн 2025, 05:37
89402ca
Код
Авторство
О чём код?
import type { FastifyPluginCallback } from 'fastify'; import fp from 'fastify-plugin'; declare module 'fastify' { interface FastifyInstance { sendEmail: SendEmail; } } export type SendEmailArgs = { to: string; from: string; subject: string; text: string; cc?: string; }; type SendEmail = (args: SendEmailArgs) => Promise<void>; export interface MailProvider { send: SendEmail; } const plugin: FastifyPluginCallback<{ provider: MailProvider }> = ( fastify, options, done ) => { const { provider } = options; fastify.decorate('sendEmail', async (args: SendEmailArgs) => { const logger = fastify.log.child({ args }); logger.info('Sending Email'); return await provider.send(args); }); done(); }; export default fp(plugin);