@impruthvi/nodemail 0.5.0 → 0.7.0

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.
Files changed (62) hide show
  1. package/README.md +165 -15
  2. package/dist/core/MailFacade.d.ts +17 -10
  3. package/dist/core/MailFacade.d.ts.map +1 -1
  4. package/dist/core/MailFacade.js +104 -5
  5. package/dist/core/MailFacade.js.map +1 -1
  6. package/dist/core/MailManager.d.ts +13 -1
  7. package/dist/core/MailManager.d.ts.map +1 -1
  8. package/dist/core/MailManager.js +111 -0
  9. package/dist/core/MailManager.js.map +1 -1
  10. package/dist/core/Mailable.d.ts +1 -0
  11. package/dist/core/Mailable.d.ts.map +1 -1
  12. package/dist/core/Mailable.js +4 -0
  13. package/dist/core/Mailable.js.map +1 -1
  14. package/dist/index.d.ts +4 -1
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +10 -2
  17. package/dist/index.js.map +1 -1
  18. package/dist/markdown/MarkdownMailable.d.ts +10 -0
  19. package/dist/markdown/MarkdownMailable.d.ts.map +1 -0
  20. package/dist/markdown/MarkdownMailable.js +42 -0
  21. package/dist/markdown/MarkdownMailable.js.map +1 -0
  22. package/dist/markdown/MarkdownRenderer.d.ts +26 -0
  23. package/dist/markdown/MarkdownRenderer.d.ts.map +1 -0
  24. package/dist/markdown/MarkdownRenderer.js +121 -0
  25. package/dist/markdown/MarkdownRenderer.js.map +1 -0
  26. package/dist/markdown/index.d.ts +6 -0
  27. package/dist/markdown/index.d.ts.map +1 -0
  28. package/dist/markdown/index.js +10 -0
  29. package/dist/markdown/index.js.map +1 -0
  30. package/dist/markdown/themes/default.d.ts +7 -0
  31. package/dist/markdown/themes/default.d.ts.map +1 -0
  32. package/dist/markdown/themes/default.js +248 -0
  33. package/dist/markdown/themes/default.js.map +1 -0
  34. package/dist/queue/QueueManager.d.ts +21 -0
  35. package/dist/queue/QueueManager.d.ts.map +1 -0
  36. package/dist/queue/QueueManager.js +131 -0
  37. package/dist/queue/QueueManager.js.map +1 -0
  38. package/dist/queue/drivers/BullDriver.d.ts +16 -0
  39. package/dist/queue/drivers/BullDriver.d.ts.map +1 -0
  40. package/dist/queue/drivers/BullDriver.js +137 -0
  41. package/dist/queue/drivers/BullDriver.js.map +1 -0
  42. package/dist/queue/drivers/BullMQDriver.d.ts +18 -0
  43. package/dist/queue/drivers/BullMQDriver.d.ts.map +1 -0
  44. package/dist/queue/drivers/BullMQDriver.js +150 -0
  45. package/dist/queue/drivers/BullMQDriver.js.map +1 -0
  46. package/dist/queue/index.d.ts +4 -0
  47. package/dist/queue/index.d.ts.map +1 -0
  48. package/dist/queue/index.js +10 -0
  49. package/dist/queue/index.js.map +1 -0
  50. package/dist/testing/AssertableMessage.d.ts +3 -0
  51. package/dist/testing/AssertableMessage.d.ts.map +1 -1
  52. package/dist/testing/AssertableMessage.js +12 -0
  53. package/dist/testing/AssertableMessage.js.map +1 -1
  54. package/dist/testing/MailFake.d.ts +10 -8
  55. package/dist/testing/MailFake.d.ts.map +1 -1
  56. package/dist/testing/MailFake.js +6 -0
  57. package/dist/testing/MailFake.js.map +1 -1
  58. package/dist/types/index.d.ts +54 -0
  59. package/dist/types/index.d.ts.map +1 -1
  60. package/examples/markdown-mail.ts +219 -0
  61. package/examples/queue-example.ts +313 -0
  62. package/package.json +1 -1
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [![npm version](https://badge.fury.io/js/@impruthvi%2Fnodemail.svg)](https://www.npmjs.com/package/@impruthvi/nodemail)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
5
  [![TypeScript](https://img.shields.io/badge/TypeScript-5.6-blue.svg)](https://www.typescriptlang.org/)
6
- [![Tests](https://img.shields.io/badge/tests-172%20passing-brightgreen)](https://github.com/impruthvi/nodemail)
6
+ [![Tests](https://img.shields.io/badge/tests-246%20passing-brightgreen)](https://github.com/impruthvi/nodemail)
7
7
  [![Coverage](https://img.shields.io/badge/coverage-85%25-brightgreen)](https://github.com/impruthvi/nodemail)
8
8
 
9
9
  **@impruthvi/nodemail** brings the simplicity and elegance of Laravel's Mail system to the Node.js ecosystem with full TypeScript support.
@@ -12,7 +12,7 @@
12
12
 
13
13
  A lightweight, developer-friendly email library where you can:
14
14
  - Switch email providers by just changing environment variables
15
- - Use elegant, class-based Mailable patterns
15
+ - Use elegant, class-based Mailable patterns
16
16
  - Keep your package lightweight (install only what you need)
17
17
  - Write clean, maintainable email code
18
18
 
@@ -20,10 +20,12 @@ Inspired by [Laravel's Mail system](https://laravel.com/docs/mail).
20
20
 
21
21
  ## ✨ Features
22
22
 
23
- ### ✅ Available Now (v0.5.0)
23
+ ### ✅ Available Now (v0.7.0)
24
24
  - 🎯 **Multiple Providers** - SMTP (Nodemailer), SendGrid, AWS SES, Mailgun, Resend, Postmark
25
25
  - 🎨 **Template Engines** - Handlebars, EJS, Pug support with dynamic loading
26
26
  - 📝 **Mailable Classes** - Reusable email definitions with template support
27
+ - 📋 **Markdown Mail** - Write emails in Markdown with components (button, panel, table)
28
+ - 📦 **Queue Support** - Background email sending with Bull/BullMQ
27
29
  - 🧪 **Testing Utilities** - Mail::fake() for testing (Laravel-style assertions)
28
30
  - 🪶 **Lightweight** - Only ~25MB with SMTP, install additional providers as needed
29
31
  - 🔒 **Type-Safe** - Full TypeScript support with strict typing
@@ -33,10 +35,9 @@ Inspired by [Laravel's Mail system](https://laravel.com/docs/mail).
33
35
 
34
36
  ### 🚧 Coming Soon
35
37
  - 🔔 **Notifications** - Multi-channel notification system
36
- - 📋 **Markdown Mail** - Beautiful emails from markdown
37
- - 📦 **Queue Support** - Background email sending (Bull/BullMQ)
38
38
  - 🌍 **i18n Support** - Multi-language emails
39
39
  - 🚀 **More Providers** - Mailtrap and others
40
+ - 🎨 **Enhanced CLI** - Command-line tools for queue management
40
41
 
41
42
  ## 📦 Installation
42
43
 
@@ -46,7 +47,7 @@ npm install @impruthvi/nodemail
46
47
 
47
48
  Or install a specific version:
48
49
  ```bash
49
- npm install @impruthvi/nodemail@0.5.0
50
+ npm install @impruthvi/nodemail@0.7.0
50
51
  ```
51
52
 
52
53
  **Lightweight by default!** Only includes SMTP support (~25MB).
@@ -85,6 +86,12 @@ npm install ejs
85
86
  npm install pug
86
87
  ```
87
88
 
89
+ ### Adding Markdown Mail Support (Optional)
90
+
91
+ ```bash
92
+ npm install marked juice
93
+ ```
94
+
88
95
  ## 🚀 Quick Start
89
96
 
90
97
  ### SMTP (Nodemailer)
@@ -284,6 +291,132 @@ await Mail.to('user@example.com')
284
291
  .send();
285
292
  ```
286
293
 
294
+ ## 📋 Markdown Mail
295
+
296
+ Write beautiful emails in Markdown with built-in components. Requires `npm install marked juice`.
297
+
298
+ ### MarkdownMailable
299
+
300
+ ```typescript
301
+ import { MarkdownMailable, Mail } from '@impruthvi/nodemail';
302
+
303
+ class WelcomeEmail extends MarkdownMailable {
304
+ constructor(
305
+ private user: { name: string },
306
+ private appName: string
307
+ ) {
308
+ super();
309
+ }
310
+
311
+ build(): this {
312
+ return this
313
+ .subject(`Welcome to ${this.appName}!`)
314
+ .from('noreply@example.com')
315
+ .markdown(`# Welcome, {{name}}!
316
+
317
+ Thank you for joining **{{appName}}**.
318
+
319
+ [button url="https://example.com/start" color="primary"]Get Started[/button]
320
+
321
+ [panel]Need help? Contact support@example.com[/panel]`, {
322
+ name: this.user.name,
323
+ appName: this.appName,
324
+ });
325
+ }
326
+ }
327
+
328
+ await Mail.to('user@example.com').send(new WelcomeEmail(user, 'My App'));
329
+ ```
330
+
331
+ ### Components
332
+
333
+ **Button** - Call-to-action buttons with color variants:
334
+ ```markdown
335
+ [button url="https://example.com" color="primary"]Click Here[/button]
336
+ [button url="https://example.com" color="success"]Confirm[/button]
337
+ [button url="https://example.com" color="error"]Delete[/button]
338
+ ```
339
+
340
+ **Panel** - Bordered callout sections:
341
+ ```markdown
342
+ [panel]
343
+ **Important:** This is a highlighted notice.
344
+ [/panel]
345
+ ```
346
+
347
+ **Table** - Styled table wrapper:
348
+ ```markdown
349
+ [table]
350
+ | Name | Price |
351
+ |-------|--------|
352
+ | Item | $9.99 |
353
+ [/table]
354
+ ```
355
+
356
+ ### Custom Themes
357
+
358
+ ```typescript
359
+ class BrandedEmail extends MarkdownMailable {
360
+ build(): this {
361
+ return this
362
+ .subject('Update')
363
+ .markdown('# News\n\nLatest updates...')
364
+ .theme({
365
+ css: 'h1 { color: #e94560; } .button-primary { background: #e94560; }',
366
+ headerHtml: '<img src="https://example.com/logo.png" alt="Logo">',
367
+ footerHtml: '<p>&copy; 2026 Company</p>',
368
+ });
369
+ }
370
+ }
371
+ ```
372
+
373
+ ### Markdown Configuration
374
+
375
+ ```typescript
376
+ Mail.configure({
377
+ // ... mailer config
378
+ markdown: {
379
+ theme: {
380
+ css: '/* custom global CSS */',
381
+ headerHtml: '<img src="logo.png">',
382
+ footerHtml: '<p>Footer</p>',
383
+ },
384
+ customCss: '.button { border-radius: 8px; }',
385
+ },
386
+ });
387
+ ```
388
+
389
+ ## 📦 Queue Support
390
+
391
+ Send emails in the background with Bull or BullMQ. Requires `npm install bullmq` (or `bull`).
392
+
393
+ ```typescript
394
+ Mail.configure({
395
+ // ... mailer config
396
+ queue: {
397
+ driver: 'bullmq',
398
+ connection: { host: 'localhost', port: 6379 },
399
+ retries: 3,
400
+ backoff: { type: 'exponential', delay: 1000 },
401
+ },
402
+ });
403
+
404
+ // Queue immediately
405
+ await Mail.to('user@example.com')
406
+ .subject('Welcome!')
407
+ .html('<h1>Welcome!</h1>')
408
+ .queue();
409
+
410
+ // Delayed sending (60 seconds)
411
+ await Mail.to('user@example.com').later(60, new WelcomeEmail(user));
412
+
413
+ // Scheduled delivery
414
+ await Mail.to('user@example.com').at(new Date('2026-12-25'), new ChristmasEmail());
415
+
416
+ // Process queued emails (in worker)
417
+ await Mail.processQueue();
418
+ ```
419
+
287
420
  ## 📨 Complete Fluent API
288
421
 
289
422
  ```typescript
@@ -427,6 +560,11 @@ sent.subjectContains('Welcome'); // Subject contains
427
560
  sent.htmlContains('Hello'); // HTML contains
428
561
  sent.textContains('Hello'); // Plain text contains
429
562
 
563
+ // Check markdown
564
+ sent.isMarkdown(); // Was built from markdown
565
+ sent.getMarkdown(); // Get raw markdown source
566
+ sent.markdownContains('[button'); // Markdown source contains
567
+
430
568
  // Check attachments
431
569
  sent.hasAttachments(); // Has any attachments
432
570
  sent.hasAttachment('file.pdf'); // Has specific attachment
@@ -478,15 +616,27 @@ sent.getHtml(); // Get HTML content
478
616
  - ✅ assertSent(), assertNotSent(), assertNothingSent()
479
617
  - ✅ assertQueued(), assertNothingQueued()
480
618
  - ✅ AssertableMessage with inspection methods
481
- - ✅ Comprehensive test suite (172 tests)
482
- - ✅ 85%+ code coverage
483
619
 
484
- **Phase 6: Advanced Features** 🚧 Coming Soon
485
- - Queue integration (Bull/BullMQ)
486
- - CLI tools
487
- - Markdown mail support
488
- - Multi-channel notifications
489
- - i18n support
620
+ **Phase 6: Queue Management** Complete (v0.6.0)
621
+ - QueueManager with Bull and BullMQ drivers
622
+ - Immediate, delayed, and scheduled sending
623
+ - Automatic retries with configurable backoff
624
+ - MailFake queue assertion support
625
+
626
+ **Phase 7: Markdown Mail** ✅ Complete (v0.7.0)
627
+ - ✅ MarkdownMailable base class
628
+ - ✅ MarkdownRenderer with CSS inlining
629
+ - ✅ Components: button, panel, table
630
+ - ✅ Default responsive email theme
631
+ - ✅ Custom themes and CSS support
632
+ - ✅ AssertableMessage markdown assertions
633
+ - ✅ 246 passing tests
634
+
635
+ **Phase 8+** 🚧 Coming Soon
636
+ - 🔔 Notifications - Multi-channel notification system
637
+ - 🌍 i18n Support - Multi-language emails
638
+ - 🎨 Enhanced CLI - Command-line tools
639
+ - 🚀 More Providers - Mailtrap and others
490
640
 
491
641
  ## 🤝 Contributing
492
642
 
@@ -549,7 +699,7 @@ Unlike other packages that bundle everything:
549
699
  - **Type-Safe**: Full TypeScript support with strict typing
550
700
  - **Developer-Friendly**: Clean, intuitive API
551
701
  - **Production-Ready**: Built with best practices
552
- - **Well-Tested**: 172 passing tests with 85%+ coverage
702
+ - **Well-Tested**: 246 passing tests with 85%+ coverage
553
703
 
554
704
  ## 📄 License
555
705
 
@@ -1,5 +1,5 @@
1
1
  import { MailManager } from './MailManager';
2
- import type { MailConfig, MailOptions, MailResponse } from '../types';
2
+ import type { MailConfig, MailOptions, MailResponse, QueueJobResult } from '../types';
3
3
  import type { Mailable } from './Mailable';
4
4
  import { MailFake } from '../testing/MailFake';
5
5
  import type { AssertableMessage } from '../testing/AssertableMessage';
@@ -13,19 +13,23 @@ declare class MailFacade {
13
13
  static to(address: string | string[]): FakeableMessageBuilder;
14
14
  static mailer(name: string): MailManager;
15
15
  static send(mailable: Mailable): Promise<MailResponse>;
16
+ static queue(mailable: Mailable): Promise<QueueJobResult>;
17
+ static later(mailable: Mailable, delaySeconds: number): Promise<QueueJobResult>;
18
+ static at(mailable: Mailable, date: Date): Promise<QueueJobResult>;
19
+ static processQueue(queueName?: string): Promise<void>;
16
20
  static fake(): MailFake;
17
21
  static restore(): void;
18
22
  static getFake(): MailFake | null;
19
- static assertSent<T extends Mailable>(mailableClass: new (...args: unknown[]) => T, callback?: (message: AssertableMessage) => boolean): void;
20
- static assertSentCount<T extends Mailable>(mailableClass: new (...args: unknown[]) => T, count: number): void;
21
- static assertNotSent<T extends Mailable>(mailableClass: new (...args: unknown[]) => T, callback?: (message: AssertableMessage) => boolean): void;
23
+ static assertSent<T extends Mailable>(mailableClass: new (...args: any[]) => T, callback?: (message: AssertableMessage) => boolean): void;
24
+ static assertSentCount<T extends Mailable>(mailableClass: new (...args: any[]) => T, count: number): void;
25
+ static assertNotSent<T extends Mailable>(mailableClass: new (...args: any[]) => T, callback?: (message: AssertableMessage) => boolean): void;
22
26
  static assertNothingSent(): void;
23
- static assertQueued<T extends Mailable>(mailableClass: new (...args: unknown[]) => T, callback?: (message: AssertableMessage) => boolean): void;
24
- static assertQueuedCount<T extends Mailable>(mailableClass: new (...args: unknown[]) => T, count: number): void;
25
- static assertNotQueued<T extends Mailable>(mailableClass: new (...args: unknown[]) => T, callback?: (message: AssertableMessage) => boolean): void;
27
+ static assertQueued<T extends Mailable>(mailableClass: new (...args: any[]) => T, callback?: (message: AssertableMessage) => boolean): void;
28
+ static assertQueuedCount<T extends Mailable>(mailableClass: new (...args: any[]) => T, count: number): void;
29
+ static assertNotQueued<T extends Mailable>(mailableClass: new (...args: any[]) => T, callback?: (message: AssertableMessage) => boolean): void;
26
30
  static assertNothingQueued(): void;
27
- static sent<T extends Mailable>(mailableClass?: new (...args: unknown[]) => T): AssertableMessage[];
28
- static queued<T extends Mailable>(mailableClass?: new (...args: unknown[]) => T): AssertableMessage[];
31
+ static sent<T extends Mailable>(mailableClass?: new (...args: any[]) => T): AssertableMessage[];
32
+ static queued<T extends Mailable>(mailableClass?: new (...args: any[]) => T): AssertableMessage[];
29
33
  static hasSent(): boolean;
30
34
  static hasQueued(): boolean;
31
35
  }
@@ -45,7 +49,10 @@ declare class FakeableMessageBuilder {
45
49
  template(template: string): this;
46
50
  data(data: Record<string, unknown>): this;
47
51
  send(mailable?: Mailable): Promise<MailResponse>;
48
- queue(mailable?: Mailable): Promise<MailResponse>;
52
+ queue(mailable?: Mailable): Promise<QueueJobResult>;
53
+ later(delaySeconds: number, mailable?: Mailable): Promise<QueueJobResult>;
54
+ at(date: Date, mailable?: Mailable): Promise<QueueJobResult>;
55
+ private getMailOptions;
49
56
  }
50
57
  export { MailFacade as Mail };
51
58
  //# sourceMappingURL=MailFacade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MailFacade.d.ts","sourceRoot":"","sources":["../../src/core/MailFacade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MailFacade.d.ts","sourceRoot":"","sources":["../../src/core/MailFacade.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,39 @@ class MailFacade {
37
37
  mailable.setMailManager(this.getInstance());
38
38
  return mailable.send();
39
39
  }
40
+ static async queue(mailable) {
41
+ if (this.isFaking()) {
42
+ const options = mailable.getMailOptions();
43
+ await this.fakeInstance.queue(options, mailable);
44
+ return { success: true, jobId: `fake-${Date.now()}`, queue: 'mail' };
45
+ }
46
+ mailable.setMailManager(this.getInstance());
47
+ return this.getInstance().queue(mailable.getMailOptions());
48
+ }
49
+ static async later(mailable, delaySeconds) {
50
+ if (this.isFaking()) {
51
+ const options = mailable.getMailOptions();
52
+ await this.fakeInstance.later(options, delaySeconds, mailable);
53
+ return { success: true, jobId: `fake-${Date.now()}`, queue: 'mail' };
54
+ }
55
+ mailable.setMailManager(this.getInstance());
56
+ return this.getInstance().later(mailable.getMailOptions(), delaySeconds);
57
+ }
58
+ static async at(mailable, date) {
59
+ if (this.isFaking()) {
60
+ const options = mailable.getMailOptions();
61
+ await this.fakeInstance.at(options, date, mailable);
62
+ return { success: true, jobId: `fake-${Date.now()}`, queue: 'mail' };
63
+ }
64
+ mailable.setMailManager(this.getInstance());
65
+ return this.getInstance().at(mailable.getMailOptions(), date);
66
+ }
67
+ static async processQueue(queueName) {
68
+ if (this.isFaking()) {
69
+ return;
70
+ }
71
+ return this.getInstance().processQueue(queueName);
72
+ }
40
73
  static fake() {
41
74
  this.fakeInstance = new MailFake_1.MailFake(this.config || undefined);
42
75
  return this.fakeInstance;
@@ -204,14 +237,80 @@ class FakeableMessageBuilder {
204
237
  if (this.manager instanceof MailFake_1.MailFake) {
205
238
  if (mailable) {
206
239
  const mailOptions = mailable.getMailOptions();
207
- return this.manager.queue({ ...mailOptions, to: this.options.to }, mailable);
240
+ await this.manager.queue({ ...mailOptions, to: this.options.to }, mailable);
208
241
  }
209
- if (!this.options.subject) {
210
- throw new Error('Email subject is required');
242
+ else {
243
+ if (!this.options.subject) {
244
+ throw new Error('Email subject is required');
245
+ }
246
+ await this.manager.queue(this.options);
247
+ }
248
+ return { success: true, jobId: `fake-${Date.now()}`, queue: 'mail' };
249
+ }
250
+ const realManager = this.manager;
251
+ if (!(realManager instanceof MailManager_1.MailManager)) {
252
+ throw new Error('Invalid mail manager');
253
+ }
254
+ const mailOptions = this.getMailOptions(mailable);
255
+ return realManager.queue(mailOptions);
256
+ }
257
+ async later(delaySeconds, mailable) {
258
+ if (this.manager instanceof MailFake_1.MailFake) {
259
+ if (mailable) {
260
+ const mailOptions = mailable.getMailOptions();
261
+ await this.manager.later({ ...mailOptions, to: this.options.to }, delaySeconds, mailable);
262
+ }
263
+ else {
264
+ if (!this.options.subject) {
265
+ throw new Error('Email subject is required');
266
+ }
267
+ await this.manager.later(this.options, delaySeconds);
268
+ }
269
+ return { success: true, jobId: `fake-${Date.now()}`, queue: 'mail' };
270
+ }
271
+ const realManager = this.manager;
272
+ if (!(realManager instanceof MailManager_1.MailManager)) {
273
+ throw new Error('Invalid mail manager');
274
+ }
275
+ const mailOptions = this.getMailOptions(mailable);
276
+ return realManager.later(mailOptions, delaySeconds);
277
+ }
278
+ async at(date, mailable) {
279
+ if (this.manager instanceof MailFake_1.MailFake) {
280
+ if (mailable) {
281
+ const mailOptions = mailable.getMailOptions();
282
+ await this.manager.at({ ...mailOptions, to: this.options.to }, date, mailable);
283
+ }
284
+ else {
285
+ if (!this.options.subject) {
286
+ throw new Error('Email subject is required');
287
+ }
288
+ await this.manager.at(this.options, date);
211
289
  }
212
- return this.manager.queue(this.options);
290
+ return { success: true, jobId: `fake-${Date.now()}`, queue: 'mail' };
291
+ }
292
+ const realManager = this.manager;
293
+ if (!(realManager instanceof MailManager_1.MailManager)) {
294
+ throw new Error('Invalid mail manager');
295
+ }
296
+ const mailOptions = this.getMailOptions(mailable);
297
+ return realManager.at(mailOptions, date);
298
+ }
299
+ getMailOptions(mailable) {
300
+ if (mailable) {
301
+ if (this.manager instanceof MailManager_1.MailManager) {
302
+ mailable.setMailManager(this.manager);
303
+ }
304
+ const mailOptions = mailable.getMailOptions();
305
+ return {
306
+ ...mailOptions,
307
+ to: this.options.to,
308
+ };
309
+ }
310
+ if (!this.options.subject) {
311
+ throw new Error('Email subject is required');
213
312
  }
214
- throw new Error('Queue functionality not yet implemented. Use Mail.fake() for testing queue assertions.');
313
+ return this.options;
215
314
  }
216
315
  }
217
316
  //# sourceMappingURL=MailFacade.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MailFacade.js","sourceRoot":"","sources":["../../src/core/MailFacade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MailFacade.js","sourceRoot":"","sources":["../../src/core/MailFacade.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,18 @@
1
- import type { MailConfig, MailOptions, MailResponse, Attachment } from '../types';
1
+ import type { MailConfig, MailOptions, MailResponse, Attachment, QueueJobResult } from '../types';
2
+ import { QueueManager } from '../queue/QueueManager';
2
3
  export declare class MailManager {
3
4
  private config;
4
5
  private providers;
5
6
  private templateEngine?;
7
+ private queueManager?;
6
8
  constructor(config: MailConfig);
7
9
  private initializeTemplateEngine;
10
+ private initializeQueueManager;
11
+ getQueueManager(): QueueManager | undefined;
12
+ queue(options: MailOptions): Promise<QueueJobResult>;
13
+ later(options: MailOptions, delaySeconds: number): Promise<QueueJobResult>;
14
+ at(options: MailOptions, date: Date): Promise<QueueJobResult>;
15
+ processQueue(queueName?: string): Promise<void>;
8
16
  private createProvider;
9
17
  private getProvider;
10
18
  to(address: string | string[]): MessageBuilder;
@@ -28,5 +36,9 @@ export declare class MessageBuilder {
28
36
  template(template: string): this;
29
37
  data(data: Record<string, unknown>): this;
30
38
  send(mailable?: import('./Mailable').Mailable): Promise<MailResponse>;
39
+ queue(mailable?: import('./Mailable').Mailable): Promise<QueueJobResult>;
40
+ later(delaySeconds: number, mailable?: import('./Mailable').Mailable): Promise<QueueJobResult>;
41
+ at(date: Date, mailable?: import('./Mailable').Mailable): Promise<QueueJobResult>;
42
+ private getMailOptions;
31
43
  }
32
44
  //# sourceMappingURL=MailManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MailManager.d.ts","sourceRoot":"","sources":["../../src/core/MailManager.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,YAAY,EAEZ,UAAU,EACX,MAAM,UAAU,CAAC;AAYlB,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,cAAc,CAAC,CAAiB;gBAE5B,MAAM,EAAE,UAAU;IAS9B,OAAO,CAAC,wBAAwB;IA0ChC,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,WAAW;IAyBnB,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAO7B,MAAM,CAAC,IAAI,EAAE,MAAM;IAab,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAiBvD,gBAAgB,IAAI,MAAM;CAG3B;AAKD,qBAAa,cAAc;IAIvB,OAAO,CAAC,OAAO;IAHV,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAM;gBAGhC,OAAO,EAAE,WAAW,EAC5B,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE;IAKvB,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,IAAI,CAAC,IAAI,EAAE,MAAM;IAKjB,IAAI,CAAC,IAAI,EAAE,MAAM;IAKjB,IAAI,CAAC,IAAI,EAAE,MAAM;IAKjB,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE;IAKxB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAK1B,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,WAAW,CAAC,WAAW,EAAE,UAAU,EAAE;IAKrC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAKvC,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAKzB,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAK5B,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC;CAoB5E"}
1
+ {"version":3,"file":"MailManager.d.ts","sourceRoot":"","sources":["../../src/core/MailManager.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,YAAY,EAEZ,UAAU,EACV,cAAc,EACf,MAAM,UAAU,CAAC;AAWlB,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIrD,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,YAAY,CAAC,CAAe;gBAExB,MAAM,EAAE,UAAU;IAU9B,OAAO,CAAC,wBAAwB;IA0ChC,OAAO,CAAC,sBAAsB;IAU9B,eAAe,IAAI,YAAY,GAAG,SAAS;IAOrC,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;IAUpD,KAAK,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAU1E,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC;IAU7D,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrD,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,WAAW;IAyBnB,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAO7B,MAAM,CAAC,IAAI,EAAE,MAAM;IAab,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAkFvD,gBAAgB,IAAI,MAAM;CAG3B;AAKD,qBAAa,cAAc;IAIvB,OAAO,CAAC,OAAO;IAHV,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAM;gBAGhC,OAAO,EAAE,WAAW,EAC5B,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE;IAKvB,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,IAAI,CAAC,IAAI,EAAE,MAAM;IAKjB,IAAI,CAAC,IAAI,EAAE,MAAM;IAKjB,IAAI,CAAC,IAAI,EAAE,MAAM;IAKjB,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE;IAKxB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAK1B,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,WAAW,CAAC,WAAW,EAAE,UAAU,EAAE;IAKrC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAKvC,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAKzB,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAK5B,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC;IAwBrE,KAAK,CAAC,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC;IAQxE,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC;IAQ9F,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC;IAQvF,OAAO,CAAC,cAAc;CAgBvB"}