From 6ad90874cfc18672a2c21ddc28c218d74c04ba90 Mon Sep 17 00:00:00 2001 From: Bas van den Aakster Date: Sat, 13 Sep 2025 22:39:28 +0200 Subject: [PATCH] Refactor `sendEmail` to improve type safety and align with `BaseEmail` interface - Replace `Email` with `BaseEmail` for stricter type validation. - Update `SendEmailOptions` and `sendEmail` typing for improved extensibility. --- package.json | 2 +- src/sendEmail.ts | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 2079d14..1c4829a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@xtr-dev/payload-mailing", - "version": "0.1.9", + "version": "0.1.10", "description": "Template-based email system with scheduling and job processing for PayloadCMS", "type": "module", "main": "dist/index.js", diff --git a/src/sendEmail.ts b/src/sendEmail.ts index aeb28bd..0d76ade 100644 --- a/src/sendEmail.ts +++ b/src/sendEmail.ts @@ -1,9 +1,10 @@ import { Payload } from 'payload' import { getMailing, renderTemplate, parseAndValidateEmails } from './utils/helpers.js' import {Email} from "./payload-types.js" +import {BaseEmail} from "./types/index.js" // Options for sending emails -export interface SendEmailOptions { +export interface SendEmailOptions { // Template-based email template?: { slug: string @@ -35,7 +36,7 @@ export interface SendEmailOptions { * }) * ``` */ -export const sendEmail = async ( +export const sendEmail = async ( payload: Payload, options: SendEmailOptions ): Promise => {