@visulima/email 1.0.0-alpha.2 → 1.0.0-alpha.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +246 -0
- package/LICENSE.md +536 -899
- package/README.md +36 -21
- package/dist/crypto/index.d.ts +147 -4
- package/dist/crypto/index.js +1 -1
- package/dist/index.d.ts +785 -9
- package/dist/index.js +1 -1
- package/dist/packem_shared/{DkimSigner-pFd4c3fZ.js → DkimSigner-CT2DSHD1.js} +4 -4
- package/dist/packem_shared/Mail-D93oo_9g.js +1 -0
- package/dist/packem_shared/MailMessage-BvaH5tZZ.js +1 -0
- package/dist/packem_shared/{SmimeEncrypter-CBevU534.js → SmimeEncrypter-ZhHEgDwY.js} +2 -2
- package/dist/packem_shared/{SmimeSigner-CObA4jzT.js → SmimeSigner-CYSVF6ez.js} +1 -1
- package/dist/packem_shared/{ahaSendProvider-DlFKEQ6D.js → ahaSendProvider-DOAAW65O.js} +1 -1
- package/dist/packem_shared/{attachment-processor-2rHmfa7j.js → attachment-processor-DsmIomKc.js} +1 -1
- package/dist/packem_shared/{awsSesProvider-Ba-eVJxZ.js → awsSesProvider-DX1630Ms.js} +7 -7
- package/dist/packem_shared/azureProvider-EkNYKAiF.js +1 -0
- package/dist/packem_shared/{brevoProvider-5p6jjiK9.js → brevoProvider-CkR4U4RD.js} +1 -1
- package/dist/packem_shared/build-mime-message-6xstxaUV.js +2 -0
- package/dist/packem_shared/defineProvider-CtLH0VBE.js +1 -0
- package/dist/packem_shared/detectMimeType-bo5oxfnt.js +1 -0
- package/dist/packem_shared/failoverProvider-W5ctAhdC.js +1 -0
- package/dist/packem_shared/httpProvider-DUg1AQfO.js +1 -0
- package/dist/packem_shared/{infobipProvider-CtLwrUaP.js → infobipProvider-BhTsWi7e.js} +1 -1
- package/dist/packem_shared/{mailCrabProvider-CM_CFDca.js → mailCrabProvider-B7H6HwWu.js} +1 -1
- package/dist/packem_shared/mailPaceProvider-DRt6Z9Hr.js +1 -0
- package/dist/packem_shared/{mailerSendProvider-CeeIXFnW.js → mailerSendProvider-Dx_iHInH.js} +1 -1
- package/dist/packem_shared/mailgunProvider-ChkLGZZW.js +1 -0
- package/dist/packem_shared/mailjetProvider-BMRhNe6H.js +1 -0
- package/dist/packem_shared/{mailomatProvider-DMQmjKHT.js → mailomatProvider-CydV-JB6.js} +1 -1
- package/dist/packem_shared/{mailtrapProvider-BN3UBEQw.js → mailtrapProvider-CuAfJWDr.js} +1 -1
- package/dist/packem_shared/{make-request-BDzF9W9D.js → make-request-CaT4d5oC.js} +1 -1
- package/dist/packem_shared/{mandrillProvider-370y7CLu.js → mandrillProvider-BBeLbaw0.js} +1 -1
- package/dist/packem_shared/mockProvider-C0P1lKOy.js +1 -0
- package/dist/packem_shared/{nodemailerProvider-_w8QXMU-.js → nodemailerProvider-DFcvoVFv.js} +1 -1
- package/dist/packem_shared/{opentelemetryProvider-C_ZXOLSd.js → opentelemetryProvider-Dwv88G3O.js} +1 -1
- package/dist/packem_shared/{plunkProvider-DfJumQ4U.js → plunkProvider-BQyjG6YT.js} +1 -1
- package/dist/packem_shared/{postalProvider-Bavx2FcH.js → postalProvider-DPHQ620q.js} +1 -1
- package/dist/packem_shared/{postmarkProvider-DFC0uvjO.js → postmarkProvider-bMTC2gdJ.js} +1 -1
- package/dist/packem_shared/provider.d-DcfYeGJJ.d.ts +28 -0
- package/dist/packem_shared/readFile-BAVMZg5e-C4whBIPd.js +1 -0
- package/dist/packem_shared/resendProvider-Cns1tvF5.js +1 -0
- package/dist/packem_shared/roundRobinProvider-FvZQKl6n.js +1 -0
- package/dist/packem_shared/{scalewayProvider-be1HPimL.js → scalewayProvider-O1dHz7iJ.js} +1 -1
- package/dist/packem_shared/{sendGridProvider-BVI1sq3n.js → sendGridProvider-DmywC-eT.js} +1 -1
- package/dist/packem_shared/{smtpProvider-BV-ufR53.js → smtpProvider-Unjao_fn.js} +8 -8
- package/dist/packem_shared/sweegoProvider-D086G6xG.js +1 -0
- package/dist/packem_shared/types.d-CNnnk-Ya.d.ts +102 -0
- package/dist/packem_shared/types.d-nyR1ty1Q.d.ts +9 -0
- package/dist/packem_shared/types.d-wwpgA3to.d.ts +204 -0
- package/dist/packem_shared/validate-email-options-DPo3SgC0.js +1 -0
- package/dist/packem_shared/zeptomailProvider-DKKEpEsW.js +1 -0
- package/dist/providers/ahasend/index.d.ts +36 -3
- package/dist/providers/ahasend/index.js +1 -1
- package/dist/providers/aws-ses/index.d.ts +47 -3
- package/dist/providers/aws-ses/index.js +1 -1
- package/dist/providers/azure/index.d.ts +52 -3
- package/dist/providers/azure/index.js +1 -1
- package/dist/providers/brevo/index.d.ts +65 -3
- package/dist/providers/brevo/index.js +1 -1
- package/dist/providers/failover/index.d.ts +27 -3
- package/dist/providers/failover/index.js +1 -1
- package/dist/providers/http/index.d.ts +35 -3
- package/dist/providers/http/index.js +1 -1
- package/dist/providers/infobip/index.d.ts +56 -3
- package/dist/providers/infobip/index.js +1 -1
- package/dist/providers/mailcrab/index.d.ts +32 -3
- package/dist/providers/mailcrab/index.js +1 -1
- package/dist/providers/mailersend/index.d.ts +51 -3
- package/dist/providers/mailersend/index.js +1 -1
- package/dist/providers/mailgun/index.d.ts +73 -3
- package/dist/providers/mailgun/index.js +1 -1
- package/dist/providers/mailjet/index.d.ts +72 -3
- package/dist/providers/mailjet/index.js +1 -1
- package/dist/providers/mailomat/index.d.ts +40 -3
- package/dist/providers/mailomat/index.js +1 -1
- package/dist/providers/mailpace/index.d.ts +52 -3
- package/dist/providers/mailpace/index.js +1 -1
- package/dist/providers/mailtrap/index.d.ts +44 -3
- package/dist/providers/mailtrap/index.js +1 -1
- package/dist/providers/mandrill/index.d.ts +87 -3
- package/dist/providers/mandrill/index.js +1 -1
- package/dist/providers/mock/index.d.ts +59 -3
- package/dist/providers/mock/index.js +1 -1
- package/dist/providers/nodemailer/index.d.ts +38 -3
- package/dist/providers/nodemailer/index.js +1 -1
- package/dist/providers/opentelemetry/index.d.ts +529 -3
- package/dist/providers/opentelemetry/index.js +1 -1
- package/dist/providers/plunk/index.d.ts +38 -3
- package/dist/providers/plunk/index.js +1 -1
- package/dist/providers/postal/index.d.ts +48 -3
- package/dist/providers/postal/index.js +1 -1
- package/dist/providers/postmark/index.d.ts +60 -3
- package/dist/providers/postmark/index.js +1 -1
- package/dist/providers/resend/index.d.ts +51 -3
- package/dist/providers/resend/index.js +1 -1
- package/dist/providers/roundrobin/index.d.ts +27 -3
- package/dist/providers/roundrobin/index.js +1 -1
- package/dist/providers/scaleway/index.d.ts +44 -3
- package/dist/providers/scaleway/index.js +1 -1
- package/dist/providers/sendgrid/index.d.ts +84 -3
- package/dist/providers/sendgrid/index.js +1 -1
- package/dist/providers/smtp/index.d.ts +71 -3
- package/dist/providers/smtp/index.js +1 -1
- package/dist/providers/sweego/index.d.ts +40 -3
- package/dist/providers/sweego/index.js +1 -1
- package/dist/providers/zeptomail/index.d.ts +37 -3
- package/dist/providers/zeptomail/index.js +1 -1
- package/dist/template-engines/handlebars.d.ts +23 -22
- package/dist/template-engines/handlebars.js +1 -1
- package/dist/template-engines/html-to-text.d.ts +24 -24
- package/dist/template-engines/mjml.d.ts +10 -10
- package/dist/template-engines/react-email.d.ts +9 -9
- package/dist/template-engines/vue-email.d.ts +9 -9
- package/dist/utils/cache.d.ts +49 -48
- package/dist/utils/format-email-address.d.ts +8 -7
- package/dist/utils/normalize-email-aliases.d.ts +20 -20
- package/dist/utils/parse-address.d.ts +18 -17
- package/dist/utils/parse-address.js +1 -1
- package/dist/utils/validation/check-mx-records.d.ts +36 -35
- package/dist/utils/validation/disposable-email-domains.d.ts +1 -13
- package/dist/utils/validation/role-accounts.d.ts +18 -18
- package/dist/utils/validation/validate-email.d.ts +5 -5
- package/dist/utils/validation/verify-email.d.ts +45 -42
- package/dist/utils/validation/verify-email.js +1 -1
- package/dist/utils/validation/verify-smtp.d.ts +35 -34
- package/dist/utils/validation/verify-smtp.js +1 -1
- package/package.json +61 -61
- package/dist/attachment-helpers.d.ts +0 -64
- package/dist/crypto/dkim-signer.d.ts +0 -48
- package/dist/crypto/smime-encrypter.d.ts +0 -53
- package/dist/crypto/smime-signer.d.ts +0 -48
- package/dist/crypto/types.d.ts +0 -101
- package/dist/draft-mail-message.d.ts +0 -13
- package/dist/errors/email-error.d.ts +0 -17
- package/dist/errors/required-option-error.d.ts +0 -10
- package/dist/mail-message.d.ts +0 -425
- package/dist/mail.d.ts +0 -206
- package/dist/packem_shared/Mail-6Bltpy_p.js +0 -1
- package/dist/packem_shared/MailMessage-B76GPBBA.js +0 -1
- package/dist/packem_shared/azureProvider-CQYAkgVF.js +0 -1
- package/dist/packem_shared/build-mime-message-IYaUqqPJ.js +0 -2
- package/dist/packem_shared/defineProvider-B9rSklAJ.js +0 -1
- package/dist/packem_shared/detectMimeType-S8WRsNtY.js +0 -1
- package/dist/packem_shared/failoverProvider-CAHQQueo.js +0 -1
- package/dist/packem_shared/httpProvider-CZD6LZX3.js +0 -1
- package/dist/packem_shared/mailPaceProvider-B6yKvh6z.js +0 -1
- package/dist/packem_shared/mailgunProvider-mmjKzouh.js +0 -1
- package/dist/packem_shared/mailjetProvider-DwN6i0VA.js +0 -1
- package/dist/packem_shared/mockProvider-DN5ZwutD.js +0 -1
- package/dist/packem_shared/readFile-BlZxbhCU-C8bCdiA2.js +0 -1
- package/dist/packem_shared/resendProvider-CfqU7UdE.js +0 -1
- package/dist/packem_shared/roundRobinProvider-1WQnuKR8.js +0 -1
- package/dist/packem_shared/sweegoProvider-7419CSAq.js +0 -1
- package/dist/packem_shared/validate-email-options-DfJ7llf8.js +0 -1
- package/dist/packem_shared/zeptomailProvider-C2lh0Xmo.js +0 -1
- package/dist/providers/ahasend/provider.d.ts +0 -7
- package/dist/providers/ahasend/types.d.ts +0 -28
- package/dist/providers/aws-ses/provider.d.ts +0 -8
- package/dist/providers/aws-ses/types.d.ts +0 -38
- package/dist/providers/azure/provider.d.ts +0 -7
- package/dist/providers/azure/types.d.ts +0 -44
- package/dist/providers/brevo/provider.d.ts +0 -7
- package/dist/providers/brevo/types.d.ts +0 -57
- package/dist/providers/failover/provider.d.ts +0 -7
- package/dist/providers/failover/types.d.ts +0 -19
- package/dist/providers/http/provider.d.ts +0 -7
- package/dist/providers/http/types.d.ts +0 -27
- package/dist/providers/infobip/provider.d.ts +0 -7
- package/dist/providers/infobip/types.d.ts +0 -48
- package/dist/providers/mailcrab/provider.d.ts +0 -9
- package/dist/providers/mailcrab/types.d.ts +0 -22
- package/dist/providers/mailersend/provider.d.ts +0 -7
- package/dist/providers/mailersend/types.d.ts +0 -43
- package/dist/providers/mailgun/provider.d.ts +0 -7
- package/dist/providers/mailgun/types.d.ts +0 -65
- package/dist/providers/mailjet/provider.d.ts +0 -7
- package/dist/providers/mailjet/types.d.ts +0 -64
- package/dist/providers/mailomat/provider.d.ts +0 -7
- package/dist/providers/mailomat/types.d.ts +0 -32
- package/dist/providers/mailpace/provider.d.ts +0 -7
- package/dist/providers/mailpace/types.d.ts +0 -44
- package/dist/providers/mailtrap/provider.d.ts +0 -7
- package/dist/providers/mailtrap/types.d.ts +0 -36
- package/dist/providers/mandrill/provider.d.ts +0 -7
- package/dist/providers/mandrill/types.d.ts +0 -79
- package/dist/providers/mock/provider.d.ts +0 -8
- package/dist/providers/mock/types.d.ts +0 -50
- package/dist/providers/nodemailer/provider.d.ts +0 -7
- package/dist/providers/nodemailer/types.d.ts +0 -30
- package/dist/providers/opentelemetry/provider.d.ts +0 -8
- package/dist/providers/opentelemetry/types.d.ts +0 -31
- package/dist/providers/plunk/provider.d.ts +0 -7
- package/dist/providers/plunk/types.d.ts +0 -30
- package/dist/providers/postal/provider.d.ts +0 -7
- package/dist/providers/postal/types.d.ts +0 -40
- package/dist/providers/postmark/provider.d.ts +0 -7
- package/dist/providers/postmark/types.d.ts +0 -52
- package/dist/providers/provider.d.ts +0 -27
- package/dist/providers/resend/provider.d.ts +0 -7
- package/dist/providers/resend/types.d.ts +0 -43
- package/dist/providers/roundrobin/provider.d.ts +0 -7
- package/dist/providers/roundrobin/types.d.ts +0 -19
- package/dist/providers/scaleway/provider.d.ts +0 -7
- package/dist/providers/scaleway/types.d.ts +0 -36
- package/dist/providers/sendgrid/provider.d.ts +0 -7
- package/dist/providers/sendgrid/types.d.ts +0 -76
- package/dist/providers/smtp/provider.d.ts +0 -7
- package/dist/providers/smtp/types.d.ts +0 -63
- package/dist/providers/sweego/provider.d.ts +0 -7
- package/dist/providers/sweego/types.d.ts +0 -32
- package/dist/providers/utils/address-formatter.d.ts +0 -139
- package/dist/providers/utils/attachment-processor.d.ts +0 -58
- package/dist/providers/utils/index.d.ts +0 -4
- package/dist/providers/utils/payload-builder.d.ts +0 -78
- package/dist/providers/utils/provider-base.d.ts +0 -69
- package/dist/providers/zeptomail/provider.d.ts +0 -7
- package/dist/providers/zeptomail/types.d.ts +0 -29
- package/dist/template-engines/types.d.ts +0 -8
- package/dist/types.d.ts +0 -203
- package/dist/utils/build-mime-message.d.ts +0 -8
- package/dist/utils/create-logger.d.ts +0 -16
- package/dist/utils/format-email-addresses.d.ts +0 -8
- package/dist/utils/generate-boundary.d.ts +0 -7
- package/dist/utils/generate-message-id.d.ts +0 -6
- package/dist/utils/headers-to-record.d.ts +0 -9
- package/dist/utils/is-port-available.d.ts +0 -9
- package/dist/utils/make-request.d.ts +0 -18
- package/dist/utils/retry.d.ts +0 -10
- package/dist/utils/sanitize-header.d.ts +0 -14
- package/dist/utils/to-base64.d.ts +0 -8
- package/dist/utils/validation/validate-email-options.d.ts +0 -8
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* MailerSend configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface MailerSendConfig extends BaseConfig {
|
|
6
|
-
/**
|
|
7
|
-
* MailerSend API token
|
|
8
|
-
*/
|
|
9
|
-
apiToken: string;
|
|
10
|
-
/**
|
|
11
|
-
* MailerSend API endpoint
|
|
12
|
-
* Defaults to: https://api.mailersend.com
|
|
13
|
-
*/
|
|
14
|
-
endpoint?: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* MailerSend-specific email options
|
|
18
|
-
*/
|
|
19
|
-
export interface MailerSendEmailOptions extends EmailOptions {
|
|
20
|
-
/**
|
|
21
|
-
* Domain ID (optional, for domain-specific sending)
|
|
22
|
-
*/
|
|
23
|
-
domainId?: string;
|
|
24
|
-
/**
|
|
25
|
-
* Personalization (per-recipient variables)
|
|
26
|
-
*/
|
|
27
|
-
personalization?: {
|
|
28
|
-
data: Record<string, unknown>;
|
|
29
|
-
email: string;
|
|
30
|
-
}[];
|
|
31
|
-
/**
|
|
32
|
-
* Scheduled at (Unix timestamp)
|
|
33
|
-
*/
|
|
34
|
-
scheduledAt?: number;
|
|
35
|
-
/**
|
|
36
|
-
* MailerSend template ID for template-based emails
|
|
37
|
-
*/
|
|
38
|
-
templateId?: string;
|
|
39
|
-
/**
|
|
40
|
-
* Template variables for MailerSend templates
|
|
41
|
-
*/
|
|
42
|
-
templateVariables?: Record<string, unknown>;
|
|
43
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { MailgunConfig, MailgunEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Mailgun Provider for sending emails through Mailgun API
|
|
5
|
-
*/
|
|
6
|
-
declare const mailgunProvider: ProviderFactory<MailgunConfig, unknown, MailgunEmailOptions>;
|
|
7
|
-
export default mailgunProvider;
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Mailgun configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface MailgunConfig extends BaseConfig {
|
|
6
|
-
/**
|
|
7
|
-
* Mailgun API key
|
|
8
|
-
*/
|
|
9
|
-
apiKey: string;
|
|
10
|
-
/**
|
|
11
|
-
* Mailgun domain (required for sending emails)
|
|
12
|
-
*/
|
|
13
|
-
domain: string;
|
|
14
|
-
/**
|
|
15
|
-
* Mailgun API endpoint
|
|
16
|
-
* Defaults to US endpoint: https://api.mailgun.net
|
|
17
|
-
* Use https://api.eu.mailgun.net for EU accounts
|
|
18
|
-
*/
|
|
19
|
-
endpoint?: string;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Mailgun-specific email options
|
|
23
|
-
*/
|
|
24
|
-
export interface MailgunEmailOptions extends EmailOptions {
|
|
25
|
-
/**
|
|
26
|
-
* Campaign ID for tracking
|
|
27
|
-
*/
|
|
28
|
-
campaignId?: string;
|
|
29
|
-
/**
|
|
30
|
-
* Enable/disable click tracking
|
|
31
|
-
*/
|
|
32
|
-
clickTracking?: boolean;
|
|
33
|
-
/**
|
|
34
|
-
* Delivery time (Unix timestamp or RFC 2822 date)
|
|
35
|
-
*/
|
|
36
|
-
deliveryTime?: string | number;
|
|
37
|
-
/**
|
|
38
|
-
* Enable/disable open tracking
|
|
39
|
-
*/
|
|
40
|
-
openTracking?: boolean;
|
|
41
|
-
/**
|
|
42
|
-
* Require TLS
|
|
43
|
-
*/
|
|
44
|
-
requireTls?: boolean;
|
|
45
|
-
/**
|
|
46
|
-
* Skip verification
|
|
47
|
-
*/
|
|
48
|
-
skipVerification?: boolean;
|
|
49
|
-
/**
|
|
50
|
-
* Mailgun template name
|
|
51
|
-
*/
|
|
52
|
-
template?: string;
|
|
53
|
-
/**
|
|
54
|
-
* Template variables for Mailgun templates
|
|
55
|
-
*/
|
|
56
|
-
templateVariables?: Record<string, unknown>;
|
|
57
|
-
/**
|
|
58
|
-
* Test mode - emails won't actually be sent
|
|
59
|
-
*/
|
|
60
|
-
testMode?: boolean;
|
|
61
|
-
/**
|
|
62
|
-
* Enable/disable unsubscribe tracking
|
|
63
|
-
*/
|
|
64
|
-
unsubscribeTracking?: boolean;
|
|
65
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { MailjetConfig, MailjetEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Mailjet Provider for sending emails through Mailjet API.
|
|
5
|
-
*/
|
|
6
|
-
declare const provider: ProviderFactory<MailjetConfig, unknown, MailjetEmailOptions>;
|
|
7
|
-
export default provider;
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Mailjet configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface MailjetConfig extends BaseConfig {
|
|
6
|
-
/**
|
|
7
|
-
* Mailjet API Key
|
|
8
|
-
*/
|
|
9
|
-
apiKey: string;
|
|
10
|
-
/**
|
|
11
|
-
* Mailjet API Secret
|
|
12
|
-
*/
|
|
13
|
-
apiSecret: string;
|
|
14
|
-
/**
|
|
15
|
-
* Mailjet API endpoint
|
|
16
|
-
* Defaults to: https://api.mailjet.com
|
|
17
|
-
*/
|
|
18
|
-
endpoint?: string;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Mailjet-specific email options
|
|
22
|
-
*/
|
|
23
|
-
export interface MailjetEmailOptions extends Omit<EmailOptions, "priority"> {
|
|
24
|
-
/**
|
|
25
|
-
* Custom campaign name
|
|
26
|
-
*/
|
|
27
|
-
campaign?: string;
|
|
28
|
-
/**
|
|
29
|
-
* Custom ID for tracking
|
|
30
|
-
*/
|
|
31
|
-
customId?: string;
|
|
32
|
-
/**
|
|
33
|
-
* Deduplicate campaign (prevent duplicate emails)
|
|
34
|
-
*/
|
|
35
|
-
deduplicateCampaign?: boolean;
|
|
36
|
-
/**
|
|
37
|
-
* Delivery time (Unix timestamp)
|
|
38
|
-
*/
|
|
39
|
-
deliveryTime?: number;
|
|
40
|
-
/**
|
|
41
|
-
* Event payload (for webhooks)
|
|
42
|
-
*/
|
|
43
|
-
eventPayload?: string;
|
|
44
|
-
/**
|
|
45
|
-
* Priority (1-5, where 1 is highest)
|
|
46
|
-
*/
|
|
47
|
-
priority?: number;
|
|
48
|
-
/**
|
|
49
|
-
* Mailjet template ID for template-based emails
|
|
50
|
-
*/
|
|
51
|
-
templateId?: number;
|
|
52
|
-
/**
|
|
53
|
-
* Template language (for multilingual templates)
|
|
54
|
-
*/
|
|
55
|
-
templateLanguage?: boolean;
|
|
56
|
-
/**
|
|
57
|
-
* Template variables for Mailjet templates
|
|
58
|
-
*/
|
|
59
|
-
templateVariables?: Record<string, unknown>;
|
|
60
|
-
/**
|
|
61
|
-
* URL tags (for tracking)
|
|
62
|
-
*/
|
|
63
|
-
urlTags?: Record<string, string>;
|
|
64
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { MailomatConfig, MailomatEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Mailomat Provider for sending emails through Mailomat API.
|
|
5
|
-
*/
|
|
6
|
-
declare const mailomatProvider: ProviderFactory<MailomatConfig, unknown, MailomatEmailOptions>;
|
|
7
|
-
export default mailomatProvider;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Mailomat configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface MailomatConfig extends BaseConfig {
|
|
6
|
-
/**
|
|
7
|
-
* Mailomat API key
|
|
8
|
-
*/
|
|
9
|
-
apiKey: string;
|
|
10
|
-
/**
|
|
11
|
-
* Mailomat API endpoint
|
|
12
|
-
* Defaults to: https://api.mailomat.com
|
|
13
|
-
*/
|
|
14
|
-
endpoint?: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Mailomat-specific email options
|
|
18
|
-
*/
|
|
19
|
-
export interface MailomatEmailOptions extends EmailOptions {
|
|
20
|
-
/**
|
|
21
|
-
* Tags for categorization
|
|
22
|
-
*/
|
|
23
|
-
tags?: string[];
|
|
24
|
-
/**
|
|
25
|
-
* Mailomat template ID for template-based emails
|
|
26
|
-
*/
|
|
27
|
-
templateId?: string;
|
|
28
|
-
/**
|
|
29
|
-
* Template variables for Mailomat templates
|
|
30
|
-
*/
|
|
31
|
-
templateVariables?: Record<string, unknown>;
|
|
32
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { MailPaceConfig, MailPaceEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* MailPace Provider for sending emails through MailPace API.
|
|
5
|
-
*/
|
|
6
|
-
declare const mailPaceProvider: ProviderFactory<MailPaceConfig, unknown, MailPaceEmailOptions>;
|
|
7
|
-
export default mailPaceProvider;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* MailPace configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface MailPaceConfig extends BaseConfig {
|
|
6
|
-
/**
|
|
7
|
-
* MailPace API token
|
|
8
|
-
*/
|
|
9
|
-
apiToken: string;
|
|
10
|
-
/**
|
|
11
|
-
* MailPace API endpoint
|
|
12
|
-
* Defaults to: https://app.mailpace.com/api/v1
|
|
13
|
-
*/
|
|
14
|
-
endpoint?: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* MailPace-specific email options
|
|
18
|
-
*/
|
|
19
|
-
export interface MailPaceEmailOptions extends Omit<EmailOptions, "attachments"> {
|
|
20
|
-
/**
|
|
21
|
-
* Attachments (MailPace specific format)
|
|
22
|
-
*/
|
|
23
|
-
attachments?: {
|
|
24
|
-
content: string;
|
|
25
|
-
content_type?: string;
|
|
26
|
-
name: string;
|
|
27
|
-
}[];
|
|
28
|
-
/**
|
|
29
|
-
* List unsubscribe header
|
|
30
|
-
*/
|
|
31
|
-
listUnsubscribe?: string;
|
|
32
|
-
/**
|
|
33
|
-
* Tags for categorization
|
|
34
|
-
*/
|
|
35
|
-
tags?: string[];
|
|
36
|
-
/**
|
|
37
|
-
* MailPace template ID for template-based emails
|
|
38
|
-
*/
|
|
39
|
-
templateId?: number;
|
|
40
|
-
/**
|
|
41
|
-
* Template variables for MailPace templates
|
|
42
|
-
*/
|
|
43
|
-
templateVariables?: Record<string, unknown>;
|
|
44
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { MailtrapConfig, MailtrapEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Mailtrap Provider for sending emails through Mailtrap API
|
|
5
|
-
*/
|
|
6
|
-
declare const mailtrapProvider: ProviderFactory<MailtrapConfig, unknown, MailtrapEmailOptions>;
|
|
7
|
-
export default mailtrapProvider;
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Mailtrap configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface MailtrapConfig extends BaseConfig {
|
|
6
|
-
/**
|
|
7
|
-
* Mailtrap API token
|
|
8
|
-
*/
|
|
9
|
-
apiToken: string;
|
|
10
|
-
/**
|
|
11
|
-
* Mailtrap API endpoint
|
|
12
|
-
* Defaults to: https://send.api.mailtrap.io
|
|
13
|
-
*/
|
|
14
|
-
endpoint?: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Mailtrap-specific email options
|
|
18
|
-
*/
|
|
19
|
-
export interface MailtrapEmailOptions extends EmailOptions {
|
|
20
|
-
/**
|
|
21
|
-
* Category for categorization
|
|
22
|
-
*/
|
|
23
|
-
category?: string;
|
|
24
|
-
/**
|
|
25
|
-
* Custom variables (key-value pairs)
|
|
26
|
-
*/
|
|
27
|
-
customVariables?: Record<string, unknown>;
|
|
28
|
-
/**
|
|
29
|
-
* Mailtrap template UUID for template-based emails
|
|
30
|
-
*/
|
|
31
|
-
templateUuid?: string;
|
|
32
|
-
/**
|
|
33
|
-
* Template variables for Mailtrap templates
|
|
34
|
-
*/
|
|
35
|
-
templateVariables?: Record<string, unknown>;
|
|
36
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { MandrillConfig, MandrillEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Mandrill Provider for sending emails through Mandrill API
|
|
5
|
-
*/
|
|
6
|
-
declare const mandrillProvider: ProviderFactory<MandrillConfig, unknown, MandrillEmailOptions>;
|
|
7
|
-
export default mandrillProvider;
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Mandrill configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface MandrillConfig extends BaseConfig {
|
|
6
|
-
/**
|
|
7
|
-
* Mandrill API key
|
|
8
|
-
*/
|
|
9
|
-
apiKey: string;
|
|
10
|
-
/**
|
|
11
|
-
* Mandrill API endpoint
|
|
12
|
-
* Defaults to: https://mandrillapp.com/api/1.0
|
|
13
|
-
*/
|
|
14
|
-
endpoint?: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Mandrill-specific email options
|
|
18
|
-
*/
|
|
19
|
-
export interface MandrillEmailOptions extends EmailOptions {
|
|
20
|
-
/**
|
|
21
|
-
* Global merge variables
|
|
22
|
-
*/
|
|
23
|
-
globalMergeVars?: {
|
|
24
|
-
content: unknown;
|
|
25
|
-
name: string;
|
|
26
|
-
}[];
|
|
27
|
-
/**
|
|
28
|
-
* Google Analytics campaign
|
|
29
|
-
*/
|
|
30
|
-
googleAnalyticsCampaign?: string;
|
|
31
|
-
/**
|
|
32
|
-
* Google Analytics domains
|
|
33
|
-
*/
|
|
34
|
-
googleAnalyticsDomains?: string[];
|
|
35
|
-
/**
|
|
36
|
-
* Per-recipient merge variables
|
|
37
|
-
*/
|
|
38
|
-
mergeVars?: {
|
|
39
|
-
rcpt: string;
|
|
40
|
-
vars: {
|
|
41
|
-
content: unknown;
|
|
42
|
-
name: string;
|
|
43
|
-
}[];
|
|
44
|
-
}[];
|
|
45
|
-
/**
|
|
46
|
-
* Metadata (key-value pairs)
|
|
47
|
-
*/
|
|
48
|
-
metadata?: Record<string, string>;
|
|
49
|
-
/**
|
|
50
|
-
* Send at timestamp (ISO 8601 format)
|
|
51
|
-
*/
|
|
52
|
-
sendAt?: string;
|
|
53
|
-
/**
|
|
54
|
-
* Subaccount ID
|
|
55
|
-
*/
|
|
56
|
-
subaccount?: string;
|
|
57
|
-
/**
|
|
58
|
-
* Tags for categorization
|
|
59
|
-
*/
|
|
60
|
-
tags?: string[];
|
|
61
|
-
/**
|
|
62
|
-
* Template content (for template-based emails)
|
|
63
|
-
*/
|
|
64
|
-
templateContent?: {
|
|
65
|
-
content: string;
|
|
66
|
-
name: string;
|
|
67
|
-
}[];
|
|
68
|
-
/**
|
|
69
|
-
* Mandrill template name
|
|
70
|
-
*/
|
|
71
|
-
templateName?: string;
|
|
72
|
-
/**
|
|
73
|
-
* Template variables (merge vars)
|
|
74
|
-
*/
|
|
75
|
-
templateVariables?: {
|
|
76
|
-
content: unknown;
|
|
77
|
-
name: string;
|
|
78
|
-
}[];
|
|
79
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { MockConfig, MockEmailEntry, MockEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Mock Provider for testing emails without actually sending them
|
|
5
|
-
* Stores emails in memory for later retrieval and inspection
|
|
6
|
-
*/
|
|
7
|
-
declare const mockProvider: ProviderFactory<MockConfig, MockEmailEntry[], MockEmailOptions>;
|
|
8
|
-
export default mockProvider;
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions, EmailResult, Receipt } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Random delay range configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface RandomDelayRange {
|
|
6
|
-
max: number;
|
|
7
|
-
min: number;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Mock configuration for testing
|
|
11
|
-
*/
|
|
12
|
-
export interface MockConfig extends BaseConfig {
|
|
13
|
-
/**
|
|
14
|
-
* Default response to return for send operations
|
|
15
|
-
*/
|
|
16
|
-
defaultResponse?: Receipt;
|
|
17
|
-
/**
|
|
18
|
-
* Delay in milliseconds before resolving (default: 0)
|
|
19
|
-
* Useful for testing async behavior
|
|
20
|
-
*/
|
|
21
|
-
delay?: number;
|
|
22
|
-
/**
|
|
23
|
-
* Failure rate (0-1) for simulating random failures (default: 0)
|
|
24
|
-
* 0 = never fail, 1 = always fail
|
|
25
|
-
*/
|
|
26
|
-
failureRate?: number;
|
|
27
|
-
/**
|
|
28
|
-
* Random delay range in milliseconds
|
|
29
|
-
* When set, delay will be randomly chosen between min and max
|
|
30
|
-
*/
|
|
31
|
-
randomDelayRange?: RandomDelayRange;
|
|
32
|
-
/**
|
|
33
|
-
* Whether to simulate failures (default: false)
|
|
34
|
-
* When true, sendEmail will return an error
|
|
35
|
-
*/
|
|
36
|
-
simulateFailure?: boolean;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Mock-specific email options
|
|
40
|
-
*/
|
|
41
|
-
export type MockEmailOptions = EmailOptions;
|
|
42
|
-
/**
|
|
43
|
-
* Stored email entry in mock provider
|
|
44
|
-
*/
|
|
45
|
-
export interface MockEmailEntry {
|
|
46
|
-
id: string;
|
|
47
|
-
options: EmailOptions;
|
|
48
|
-
result: EmailResult;
|
|
49
|
-
timestamp: Date;
|
|
50
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { NodemailerConfig, NodemailerEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Nodemailer Provider for sending emails via nodemailer
|
|
5
|
-
*/
|
|
6
|
-
declare const nodemailerProvider: ProviderFactory<NodemailerConfig, unknown, NodemailerEmailOptions>;
|
|
7
|
-
export default nodemailerProvider;
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailAddress, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Nodemailer configuration
|
|
4
|
-
* Accepts any nodemailer transport configuration
|
|
5
|
-
* Common transports: SMTP, Sendmail, SES, etc.
|
|
6
|
-
*/
|
|
7
|
-
export interface NodemailerConfig extends BaseConfig {
|
|
8
|
-
/**
|
|
9
|
-
* Default from address (optional, can be overridden per email)
|
|
10
|
-
*/
|
|
11
|
-
defaultFrom?: EmailAddress;
|
|
12
|
-
/**
|
|
13
|
-
* Nodemailer transport configuration
|
|
14
|
-
* Can be a transport object or a transport name (e.g., 'smtp', 'sendmail')
|
|
15
|
-
* For SMTP: { host, port, secure, auth: { user, pass } }
|
|
16
|
-
* For Sendmail: { path: '/usr/sbin/sendmail' }
|
|
17
|
-
* For SES: { SES: { ... } }
|
|
18
|
-
* See: https://nodemailer.com/transports/
|
|
19
|
-
*/
|
|
20
|
-
transport: Record<string, unknown> | string;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Nodemailer-specific email options
|
|
24
|
-
*/
|
|
25
|
-
export interface NodemailerEmailOptions extends EmailOptions {
|
|
26
|
-
/**
|
|
27
|
-
* Override transport for this specific email
|
|
28
|
-
*/
|
|
29
|
-
transportOverride?: Record<string, unknown> | string;
|
|
30
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { EmailOptions } from "../../types.d.ts";
|
|
2
|
-
import type { Provider, ProviderFactory } from "../provider.d.ts";
|
|
3
|
-
import type { OpenTelemetryConfig } from "./types.d.ts";
|
|
4
|
-
/**
|
|
5
|
-
* OpenTelemetry Provider for instrumenting email sending with OpenTelemetry traces and metrics
|
|
6
|
-
*/
|
|
7
|
-
declare const opentelemetryProvider: ProviderFactory<OpenTelemetryConfig, Provider<unknown, unknown, EmailOptions>, EmailOptions>;
|
|
8
|
-
export default opentelemetryProvider;
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { Tracer } from "@opentelemetry/api";
|
|
2
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
3
|
-
import type { Provider, ProviderFactory } from "../provider.d.ts";
|
|
4
|
-
/**
|
|
5
|
-
* OpenTelemetry configuration
|
|
6
|
-
*/
|
|
7
|
-
export interface OpenTelemetryConfig extends BaseConfig {
|
|
8
|
-
/**
|
|
9
|
-
* The provider to wrap with OpenTelemetry instrumentation
|
|
10
|
-
* Can be a Provider instance or ProviderFactory function
|
|
11
|
-
*/
|
|
12
|
-
provider: Provider | ProviderFactory;
|
|
13
|
-
/**
|
|
14
|
-
* Whether to record email content in spans (default: false)
|
|
15
|
-
* When false, only metadata is recorded
|
|
16
|
-
*/
|
|
17
|
-
recordContent?: boolean;
|
|
18
|
-
/**
|
|
19
|
-
* Service name for OpenTelemetry spans (default: "email")
|
|
20
|
-
*/
|
|
21
|
-
serviceName?: string;
|
|
22
|
-
/**
|
|
23
|
-
* Optional OpenTelemetry tracer instance
|
|
24
|
-
* If not provided, uses the global tracer
|
|
25
|
-
*/
|
|
26
|
-
tracer?: Tracer;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* OpenTelemetry-specific email options
|
|
30
|
-
*/
|
|
31
|
-
export type OpenTelemetryEmailOptions = EmailOptions;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { PlunkConfig, PlunkEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Plunk Provider for sending emails through Plunk API.
|
|
5
|
-
*/
|
|
6
|
-
declare const plunkProvider: ProviderFactory<PlunkConfig, unknown, PlunkEmailOptions>;
|
|
7
|
-
export default plunkProvider;
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Plunk configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface PlunkConfig extends BaseConfig {
|
|
6
|
-
apiKey: string;
|
|
7
|
-
endpoint?: string;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Plunk-specific email options
|
|
11
|
-
*/
|
|
12
|
-
export interface PlunkEmailOptions extends EmailOptions {
|
|
13
|
-
/**
|
|
14
|
-
* Data to pass to the email template
|
|
15
|
-
*/
|
|
16
|
-
data?: Record<string, unknown>;
|
|
17
|
-
/**
|
|
18
|
-
* Subscriber email (used for tracking and analytics)
|
|
19
|
-
* If not provided, uses the first 'to' address
|
|
20
|
-
*/
|
|
21
|
-
subscriber?: string;
|
|
22
|
-
/**
|
|
23
|
-
* Subscriber ID (optional identifier for the subscriber)
|
|
24
|
-
*/
|
|
25
|
-
subscriberId?: string;
|
|
26
|
-
/**
|
|
27
|
-
* Template ID for template-based emails
|
|
28
|
-
*/
|
|
29
|
-
templateId?: string;
|
|
30
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { PostalConfig, PostalEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Postal Provider for sending emails through Postal API.
|
|
5
|
-
*/
|
|
6
|
-
declare const postalProvider: ProviderFactory<PostalConfig, unknown, PostalEmailOptions>;
|
|
7
|
-
export default postalProvider;
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, EmailOptions } from "../../types.d.ts";
|
|
2
|
-
/**
|
|
3
|
-
* Postal configuration
|
|
4
|
-
*/
|
|
5
|
-
export interface PostalConfig extends BaseConfig {
|
|
6
|
-
/**
|
|
7
|
-
* Postal server API key
|
|
8
|
-
*/
|
|
9
|
-
apiKey: string;
|
|
10
|
-
/**
|
|
11
|
-
* Postal API endpoint
|
|
12
|
-
* Defaults to: https://{host}/api/v1
|
|
13
|
-
*/
|
|
14
|
-
endpoint?: string;
|
|
15
|
-
/**
|
|
16
|
-
* Postal server host
|
|
17
|
-
*/
|
|
18
|
-
host: string;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Postal-specific email options
|
|
22
|
-
*/
|
|
23
|
-
export interface PostalEmailOptions extends EmailOptions {
|
|
24
|
-
/**
|
|
25
|
-
* Postal message ID (for tracking)
|
|
26
|
-
*/
|
|
27
|
-
postalMessageId?: string;
|
|
28
|
-
/**
|
|
29
|
-
* Tags for categorization
|
|
30
|
-
*/
|
|
31
|
-
tags?: string[];
|
|
32
|
-
/**
|
|
33
|
-
* Postal template ID for template-based emails
|
|
34
|
-
*/
|
|
35
|
-
templateId?: number;
|
|
36
|
-
/**
|
|
37
|
-
* Template variables for Postal templates
|
|
38
|
-
*/
|
|
39
|
-
templateVariables?: Record<string, unknown>;
|
|
40
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProviderFactory } from "../provider.d.ts";
|
|
2
|
-
import type { PostmarkConfig, PostmarkEmailOptions } from "./types.d.ts";
|
|
3
|
-
/**
|
|
4
|
-
* Postmark Provider for sending emails through Postmark API.
|
|
5
|
-
*/
|
|
6
|
-
declare const postmarkProvider: ProviderFactory<PostmarkConfig, unknown, PostmarkEmailOptions>;
|
|
7
|
-
export default postmarkProvider;
|