Add validation for beforeSend hook to ensure required properties remain intact

- Validate that 'from' field is not removed
- Validate that 'to' field is not removed or emptied
- Validate that 'subject' field is not removed
- Validate that at least 'html' or 'text' content exists
- Throw clear error messages if validation fails
- Bump version to 0.1.21
This commit is contained in:
2025-09-14 12:27:43 +02:00
parent 0d6d07de85
commit ea7d8dfdd5
4 changed files with 148 additions and 2 deletions

View File

@@ -248,6 +248,10 @@ export interface Email {
* Sender email address (optional, uses default if not provided)
*/
from?: string | null;
/**
* Sender display name (optional, e.g., "John Doe" for "John Doe <john@example.com>")
*/
fromName?: string | null;
/**
* Reply-to email address
*/
@@ -543,6 +547,7 @@ export interface EmailsSelect<T extends boolean = true> {
cc?: T;
bcc?: T;
from?: T;
fromName?: T;
replyTo?: T;
subject?: T;
html?: T;
@@ -675,6 +680,18 @@ export interface TaskSendEmail {
* Optional comma-separated list of BCC email addresses
*/
bcc?: string | null;
/**
* Optional sender email address (uses default if not provided)
*/
from?: string | null;
/**
* Optional sender display name (e.g., "John Doe")
*/
fromName?: string | null;
/**
* Optional reply-to email address
*/
replyTo?: string | null;
/**
* Optional date/time to schedule email for future delivery
*/
@@ -684,7 +701,9 @@ export interface TaskSendEmail {
*/
priority?: number | null;
};
output?: unknown;
output: {
id?: string | null;
};
}
/**
* This interface was referenced by `Config`'s JSON-Schema