@arikajs/mail 0.1.0 → 0.1.4
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/README.md +3 -3
- package/dist/MailManager.d.ts.map +1 -1
- package/dist/MailManager.js +12 -0
- package/dist/MailManager.js.map +1 -1
- package/dist/Transport/MailgunTransport.d.ts +8 -0
- package/dist/Transport/MailgunTransport.d.ts.map +1 -0
- package/dist/Transport/MailgunTransport.js +24 -0
- package/dist/Transport/MailgunTransport.js.map +1 -0
- package/dist/Transport/SendGridTransport.d.ts +8 -0
- package/dist/Transport/SendGridTransport.d.ts.map +1 -0
- package/dist/Transport/SendGridTransport.js +22 -0
- package/dist/Transport/SendGridTransport.js.map +1 -0
- package/dist/Transport/SesTransport.d.ts +8 -0
- package/dist/Transport/SesTransport.d.ts.map +1 -0
- package/dist/Transport/SesTransport.js +28 -0
- package/dist/Transport/SesTransport.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/dist/src/Contracts/Transport.d.ts +4 -0
- package/dist/src/Contracts/Transport.d.ts.map +1 -0
- package/dist/src/Contracts/Transport.js +3 -0
- package/dist/src/Contracts/Transport.js.map +1 -0
- package/dist/src/MailManager.d.ts +13 -0
- package/dist/src/MailManager.d.ts.map +1 -0
- package/dist/src/MailManager.js +69 -0
- package/dist/src/MailManager.js.map +1 -0
- package/dist/src/Mailable.d.ts +21 -0
- package/dist/src/Mailable.d.ts.map +1 -0
- package/dist/src/Mailable.js +32 -0
- package/dist/src/Mailable.js.map +1 -0
- package/dist/src/Mailer.d.ts +31 -0
- package/dist/src/Mailer.d.ts.map +1 -0
- package/dist/src/Mailer.js +89 -0
- package/dist/src/Mailer.js.map +1 -0
- package/dist/src/Message.d.ts +45 -0
- package/dist/src/Message.d.ts.map +1 -0
- package/dist/src/Message.js +77 -0
- package/dist/src/Message.js.map +1 -0
- package/dist/src/Transport/ArrayTransport.d.ts +14 -0
- package/dist/src/Transport/ArrayTransport.d.ts.map +1 -0
- package/dist/src/Transport/ArrayTransport.js +25 -0
- package/dist/src/Transport/ArrayTransport.js.map +1 -0
- package/dist/src/Transport/LogTransport.d.ts +5 -0
- package/dist/src/Transport/LogTransport.d.ts.map +1 -0
- package/dist/src/Transport/LogTransport.js +12 -0
- package/dist/src/Transport/LogTransport.js.map +1 -0
- package/dist/src/Transport/MailgunTransport.d.ts +8 -0
- package/dist/src/Transport/MailgunTransport.d.ts.map +1 -0
- package/dist/src/Transport/MailgunTransport.js +24 -0
- package/dist/src/Transport/MailgunTransport.js.map +1 -0
- package/dist/src/Transport/SendGridTransport.d.ts +8 -0
- package/dist/src/Transport/SendGridTransport.d.ts.map +1 -0
- package/dist/src/Transport/SendGridTransport.js +22 -0
- package/dist/src/Transport/SendGridTransport.js.map +1 -0
- package/dist/src/Transport/SesTransport.d.ts +8 -0
- package/dist/src/Transport/SesTransport.d.ts.map +1 -0
- package/dist/src/Transport/SesTransport.js +28 -0
- package/dist/src/Transport/SesTransport.js.map +1 -0
- package/dist/src/Transport/SmtpTransport.d.ts +8 -0
- package/dist/src/Transport/SmtpTransport.d.ts.map +1 -0
- package/dist/src/Transport/SmtpTransport.js +30 -0
- package/dist/src/Transport/SmtpTransport.js.map +1 -0
- package/dist/src/index.d.ts +17 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +46 -0
- package/dist/src/index.js.map +1 -0
- package/dist/tests/Mail.test.d.ts +2 -0
- package/dist/tests/Mail.test.d.ts.map +1 -0
- package/dist/tests/Mail.test.js +43 -0
- package/dist/tests/Mail.test.js.map +1 -0
- package/dist/tests/TransportResolution.test.d.ts +2 -0
- package/dist/tests/TransportResolution.test.d.ts.map +1 -0
- package/dist/tests/TransportResolution.test.js +52 -0
- package/dist/tests/TransportResolution.test.js.map +1 -0
- package/package.json +6 -3
package/README.md
CHANGED
|
@@ -145,9 +145,9 @@ export default {
|
|
|
145
145
|
| **SMTP** | ✅ Supported | Standard SMTP delivery |
|
|
146
146
|
| **Log** | ✅ Supported | Logs emails to console (for local dev) |
|
|
147
147
|
| **Array** | ✅ Supported | Stores emails in memory (for testing) |
|
|
148
|
-
| SES |
|
|
149
|
-
| Mailgun |
|
|
150
|
-
| SendGrid |
|
|
148
|
+
| SES | ✅ Supported | Amazon SES driver |
|
|
149
|
+
| Mailgun | ✅ Supported | Mailgun API driver |
|
|
150
|
+
| SendGrid | ✅ Supported | SendGrid API driver |
|
|
151
151
|
|
|
152
152
|
---
|
|
153
153
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MailManager.d.ts","sourceRoot":"","sources":["../src/MailManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAKhD,qBAAa,WAAW;IAKR,OAAO,CAAC,MAAM;IAAO,OAAO,CAAC,YAAY,CAAC;IAJtD,OAAO,CAAC,OAAO,CAAkC;IAEjD,OAAO,CAAC,cAAc,CAAgD;gBAElD,MAAM,EAAE,GAAG,EAAU,YAAY,CAAC,EAAE,YAAY,YAAA;IAE7D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG;IAKrD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAUpC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"MailManager.d.ts","sourceRoot":"","sources":["../src/MailManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAKhD,qBAAa,WAAW;IAKR,OAAO,CAAC,MAAM;IAAO,OAAO,CAAC,YAAY,CAAC;IAJtD,OAAO,CAAC,OAAO,CAAkC;IAEjD,OAAO,CAAC,cAAc,CAAgD;gBAElD,MAAM,EAAE,GAAG,EAAU,YAAY,CAAC,EAAE,YAAY,YAAA;IAE7D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG;IAKrD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAUpC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IA0ChC,EAAE,CAAC,KAAK,EAAE,GAAG;CAGvB"}
|
package/dist/MailManager.js
CHANGED
|
@@ -37,6 +37,18 @@ class MailManager {
|
|
|
37
37
|
case 'smtp':
|
|
38
38
|
transport = new SmtpTransport_1.SmtpTransport(config);
|
|
39
39
|
break;
|
|
40
|
+
case 'ses':
|
|
41
|
+
const { SesTransport } = require('./Transport/SesTransport');
|
|
42
|
+
transport = new SesTransport(config);
|
|
43
|
+
break;
|
|
44
|
+
case 'mailgun':
|
|
45
|
+
const { MailgunTransport } = require('./Transport/MailgunTransport');
|
|
46
|
+
transport = new MailgunTransport(config);
|
|
47
|
+
break;
|
|
48
|
+
case 'sendgrid':
|
|
49
|
+
const { SendGridTransport } = require('./Transport/SendGridTransport');
|
|
50
|
+
transport = new SendGridTransport(config);
|
|
51
|
+
break;
|
|
40
52
|
case 'log':
|
|
41
53
|
transport = new LogTransport_1.LogTransport();
|
|
42
54
|
break;
|
package/dist/MailManager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MailManager.js","sourceRoot":"","sources":["../src/MailManager.ts"],"names":[],"mappings":";;;AACA,qCAAgD;AAChD,6DAA0D;AAC1D,2DAAwD;AACxD,+DAA4D;AAE5D,MAAa,WAAW;IAKpB,YAAoB,MAAW,EAAU,YAA2B;QAAhD,WAAM,GAAN,MAAM,CAAK;QAAU,iBAAY,GAAZ,YAAY,CAAe;QAJ5D,YAAO,GAAwB,IAAI,GAAG,EAAE,CAAC;QAEzC,mBAAc,GAAsC,IAAI,GAAG,EAAE,CAAC;IAEE,CAAC;IAElE,MAAM,CAAC,MAAc,EAAE,QAA8B;QACxD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,IAAa;QACvB,MAAM,UAAU,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAE/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;IACzC,CAAC;IAES,OAAO,CAAC,IAAY;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,mBAAmB,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,SAAS,CAAC;QAEd,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAE,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACJ,QAAQ,MAAM,CAAC,SAAS,EAAE,CAAC;gBACvB,KAAK,MAAM;oBACP,SAAS,GAAG,IAAI,6BAAa,CAAC,MAAM,CAAC,CAAC;oBACtC,MAAM;gBACV,KAAK,KAAK;oBACN,SAAS,GAAG,IAAI,2BAAY,EAAE,CAAC;oBAC/B,MAAM;gBACV,KAAK,OAAO;oBACR,SAAS,GAAG,IAAI,+BAAc,EAAE,CAAC;oBACjC,MAAM;gBACV;oBACI,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC;QAED,OAAO,IAAI,eAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAEM,EAAE,CAAC,KAAU;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACJ;
|
|
1
|
+
{"version":3,"file":"MailManager.js","sourceRoot":"","sources":["../src/MailManager.ts"],"names":[],"mappings":";;;AACA,qCAAgD;AAChD,6DAA0D;AAC1D,2DAAwD;AACxD,+DAA4D;AAE5D,MAAa,WAAW;IAKpB,YAAoB,MAAW,EAAU,YAA2B;QAAhD,WAAM,GAAN,MAAM,CAAK;QAAU,iBAAY,GAAZ,YAAY,CAAe;QAJ5D,YAAO,GAAwB,IAAI,GAAG,EAAE,CAAC;QAEzC,mBAAc,GAAsC,IAAI,GAAG,EAAE,CAAC;IAEE,CAAC;IAElE,MAAM,CAAC,MAAc,EAAE,QAA8B;QACxD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,IAAa;QACvB,MAAM,UAAU,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAE/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;IACzC,CAAC;IAES,OAAO,CAAC,IAAY;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,mBAAmB,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,SAAS,CAAC;QAEd,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAE,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACJ,QAAQ,MAAM,CAAC,SAAS,EAAE,CAAC;gBACvB,KAAK,MAAM;oBACP,SAAS,GAAG,IAAI,6BAAa,CAAC,MAAM,CAAC,CAAC;oBACtC,MAAM;gBACV,KAAK,KAAK;oBACN,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;oBAC7D,SAAS,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;oBACrC,MAAM;gBACV,KAAK,SAAS;oBACV,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;oBACrE,SAAS,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;oBACzC,MAAM;gBACV,KAAK,UAAU;oBACX,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;oBACvE,SAAS,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;oBAC1C,MAAM;gBACV,KAAK,KAAK;oBACN,SAAS,GAAG,IAAI,2BAAY,EAAE,CAAC;oBAC/B,MAAM;gBACV,KAAK,OAAO;oBACR,SAAS,GAAG,IAAI,+BAAc,EAAE,CAAC;oBACjC,MAAM;gBACV;oBACI,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC;QAED,OAAO,IAAI,eAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAEM,EAAE,CAAC,KAAU;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACJ;AAnED,kCAmEC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Transport } from '../Contracts/Transport';
|
|
2
|
+
import { Transporter } from 'nodemailer';
|
|
3
|
+
export declare class MailgunTransport implements Transport {
|
|
4
|
+
protected transporter: Transporter;
|
|
5
|
+
constructor(config: any);
|
|
6
|
+
send(message: any): Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=MailgunTransport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MailgunTransport.d.ts","sourceRoot":"","sources":["../../src/Transport/MailgunTransport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGrD,qBAAa,gBAAiB,YAAW,SAAS;IAC9C,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;gBAEvB,MAAM,EAAE,GAAG;IAUjB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAG1C"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.MailgunTransport = void 0;
|
|
7
|
+
const nodemailer_1 = __importDefault(require("nodemailer"));
|
|
8
|
+
const mg = require('nodemailer-mailgun-transport');
|
|
9
|
+
class MailgunTransport {
|
|
10
|
+
constructor(config) {
|
|
11
|
+
this.transporter = nodemailer_1.default.createTransport(mg({
|
|
12
|
+
auth: {
|
|
13
|
+
api_key: config.key,
|
|
14
|
+
domain: config.domain,
|
|
15
|
+
},
|
|
16
|
+
host: config.host || 'api.mailgun.net',
|
|
17
|
+
}));
|
|
18
|
+
}
|
|
19
|
+
async send(message) {
|
|
20
|
+
return await this.transporter.sendMail(message);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.MailgunTransport = MailgunTransport;
|
|
24
|
+
//# sourceMappingURL=MailgunTransport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MailgunTransport.js","sourceRoot":"","sources":["../../src/Transport/MailgunTransport.ts"],"names":[],"mappings":";;;;;;AAEA,4DAAqD;AACrD,MAAM,EAAE,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;AAEnD,MAAa,gBAAgB;IAGzB,YAAY,MAAW;QACnB,IAAI,CAAC,WAAW,GAAG,oBAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YAC7C,IAAI,EAAE;gBACF,OAAO,EAAE,MAAM,CAAC,GAAG;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;aACxB;YACD,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,iBAAiB;SACzC,CAAC,CAAC,CAAC;IACR,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAY;QACnB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;CACJ;AAhBD,4CAgBC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Transport } from '../Contracts/Transport';
|
|
2
|
+
import { Transporter } from 'nodemailer';
|
|
3
|
+
export declare class SendGridTransport implements Transport {
|
|
4
|
+
protected transporter: Transporter;
|
|
5
|
+
constructor(config: any);
|
|
6
|
+
send(message: any): Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=SendGridTransport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SendGridTransport.d.ts","sourceRoot":"","sources":["../../src/Transport/SendGridTransport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGrD,qBAAa,iBAAkB,YAAW,SAAS;IAC/C,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;gBAEvB,MAAM,EAAE,GAAG;IAQjB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAG1C"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SendGridTransport = void 0;
|
|
7
|
+
const nodemailer_1 = __importDefault(require("nodemailer"));
|
|
8
|
+
const sgTransport = require('nodemailer-sendgrid-transport');
|
|
9
|
+
class SendGridTransport {
|
|
10
|
+
constructor(config) {
|
|
11
|
+
this.transporter = nodemailer_1.default.createTransport(sgTransport({
|
|
12
|
+
auth: {
|
|
13
|
+
api_key: config.key,
|
|
14
|
+
},
|
|
15
|
+
}));
|
|
16
|
+
}
|
|
17
|
+
async send(message) {
|
|
18
|
+
return await this.transporter.sendMail(message);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.SendGridTransport = SendGridTransport;
|
|
22
|
+
//# sourceMappingURL=SendGridTransport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SendGridTransport.js","sourceRoot":"","sources":["../../src/Transport/SendGridTransport.ts"],"names":[],"mappings":";;;;;;AAEA,4DAAqD;AACrD,MAAM,WAAW,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;AAE7D,MAAa,iBAAiB;IAG1B,YAAY,MAAW;QACnB,IAAI,CAAC,WAAW,GAAG,oBAAU,CAAC,eAAe,CAAC,WAAW,CAAC;YACtD,IAAI,EAAE;gBACF,OAAO,EAAE,MAAM,CAAC,GAAG;aACtB;SACJ,CAAC,CAAC,CAAC;IACR,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAY;QACnB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;CACJ;AAdD,8CAcC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Transport } from '../Contracts/Transport';
|
|
2
|
+
import { Transporter } from 'nodemailer';
|
|
3
|
+
export declare class SesTransport implements Transport {
|
|
4
|
+
protected transporter: Transporter;
|
|
5
|
+
constructor(config: any);
|
|
6
|
+
send(message: any): Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=SesTransport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SesTransport.d.ts","sourceRoot":"","sources":["../../src/Transport/SesTransport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGrD,qBAAa,YAAa,YAAW,SAAS;IAC1C,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;gBAEvB,MAAM,EAAE,GAAG;IAejB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAG1C"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SesTransport = void 0;
|
|
7
|
+
const nodemailer_1 = __importDefault(require("nodemailer"));
|
|
8
|
+
const client_ses_1 = require("@aws-sdk/client-ses");
|
|
9
|
+
class SesTransport {
|
|
10
|
+
constructor(config) {
|
|
11
|
+
const ses = new client_ses_1.SES({
|
|
12
|
+
apiVersion: '2010-12-01',
|
|
13
|
+
region: config.region,
|
|
14
|
+
credentials: {
|
|
15
|
+
accessKeyId: config.key,
|
|
16
|
+
secretAccessKey: config.secret,
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
this.transporter = nodemailer_1.default.createTransport({
|
|
20
|
+
SES: { ses, aws: { SendRawEmailCommand: client_ses_1.SendRawEmailCommand } },
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
async send(message) {
|
|
24
|
+
return await this.transporter.sendMail(message);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.SesTransport = SesTransport;
|
|
28
|
+
//# sourceMappingURL=SesTransport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SesTransport.js","sourceRoot":"","sources":["../../src/Transport/SesTransport.ts"],"names":[],"mappings":";;;;;;AAEA,4DAAqD;AACrD,oDAA+D;AAE/D,MAAa,YAAY;IAGrB,YAAY,MAAW;QACnB,MAAM,GAAG,GAAG,IAAI,gBAAG,CAAC;YAChB,UAAU,EAAE,YAAY;YACxB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,WAAW,EAAE;gBACT,WAAW,EAAE,MAAM,CAAC,GAAG;gBACvB,eAAe,EAAE,MAAM,CAAC,MAAM;aACjC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,GAAG,oBAAU,CAAC,eAAe,CAAC;YAC1C,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,mBAAmB,EAAnB,gCAAmB,EAAE,EAAE;SAC7C,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAY;QACnB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;CACJ;AArBD,oCAqBC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,6 +5,9 @@ export { Mailable } from './Mailable';
|
|
|
5
5
|
export { Message, Attachment, Address } from './Message';
|
|
6
6
|
export { Transport } from './Contracts/Transport';
|
|
7
7
|
export { SmtpTransport } from './Transport/SmtpTransport';
|
|
8
|
+
export { SesTransport } from './Transport/SesTransport';
|
|
9
|
+
export { MailgunTransport } from './Transport/MailgunTransport';
|
|
10
|
+
export { SendGridTransport } from './Transport/SendGridTransport';
|
|
8
11
|
export declare class Mail {
|
|
9
12
|
static setManager(manager: MailManager): void;
|
|
10
13
|
static extend(driver: string, callback: (config: any) => any): MailManager;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIlE,qBAAa,IAAI;IACb,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW;IAItC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG;IAO5D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG;IAOpB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM;CAM9B"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Mail = exports.SmtpTransport = exports.Message = exports.Mailable = exports.PendingMail = exports.Mailer = exports.MailManager = void 0;
|
|
3
|
+
exports.Mail = exports.SendGridTransport = exports.MailgunTransport = exports.SesTransport = exports.SmtpTransport = exports.Message = exports.Mailable = exports.PendingMail = exports.Mailer = exports.MailManager = void 0;
|
|
4
4
|
var MailManager_1 = require("./MailManager");
|
|
5
5
|
Object.defineProperty(exports, "MailManager", { enumerable: true, get: function () { return MailManager_1.MailManager; } });
|
|
6
6
|
var Mailer_1 = require("./Mailer");
|
|
@@ -12,6 +12,12 @@ var Message_1 = require("./Message");
|
|
|
12
12
|
Object.defineProperty(exports, "Message", { enumerable: true, get: function () { return Message_1.Message; } });
|
|
13
13
|
var SmtpTransport_1 = require("./Transport/SmtpTransport");
|
|
14
14
|
Object.defineProperty(exports, "SmtpTransport", { enumerable: true, get: function () { return SmtpTransport_1.SmtpTransport; } });
|
|
15
|
+
var SesTransport_1 = require("./Transport/SesTransport");
|
|
16
|
+
Object.defineProperty(exports, "SesTransport", { enumerable: true, get: function () { return SesTransport_1.SesTransport; } });
|
|
17
|
+
var MailgunTransport_1 = require("./Transport/MailgunTransport");
|
|
18
|
+
Object.defineProperty(exports, "MailgunTransport", { enumerable: true, get: function () { return MailgunTransport_1.MailgunTransport; } });
|
|
19
|
+
var SendGridTransport_1 = require("./Transport/SendGridTransport");
|
|
20
|
+
Object.defineProperty(exports, "SendGridTransport", { enumerable: true, get: function () { return SendGridTransport_1.SendGridTransport; } });
|
|
15
21
|
let mailManager;
|
|
16
22
|
class Mail {
|
|
17
23
|
static setManager(manager) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAGA,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,mCAA6D;AAApD,gGAAA,MAAM,OAAA;AAAE,qGAAA,WAAW,OAAA;AAC5B,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,qCAAyD;AAAhD,kGAAA,OAAO,OAAA;AAEhB,2DAA0D;AAAjD,8GAAA,aAAa,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAGA,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,mCAA6D;AAApD,gGAAA,MAAM,OAAA;AAAE,qGAAA,WAAW,OAAA;AAC5B,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,qCAAyD;AAAhD,kGAAA,OAAO,OAAA;AAEhB,2DAA0D;AAAjD,8GAAA,aAAa,OAAA;AACtB,yDAAwD;AAA/C,4GAAA,YAAY,OAAA;AACrB,iEAAgE;AAAvD,oHAAA,gBAAgB,OAAA;AACzB,mEAAkE;AAAzD,sHAAA,iBAAiB,OAAA;AAE1B,IAAI,WAAwB,CAAC;AAE7B,MAAa,IAAI;IACb,MAAM,CAAC,UAAU,CAAC,OAAoB;QAClC,WAAW,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,MAAc,EAAE,QAA8B;QACxD,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAC9F,CAAC;QACD,OAAO,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,EAAE,CAAC,KAAU;QAChB,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAC9F,CAAC;QACD,OAAO,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,IAAa;QACvB,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAC9F,CAAC;QACD,OAAO,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;CACJ;AAzBD,oBAyBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../../../src/Contracts/Transport.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACtB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Transport.js","sourceRoot":"","sources":["../../../src/Contracts/Transport.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Mailer, ViewRenderer } from './Mailer';
|
|
2
|
+
export declare class MailManager {
|
|
3
|
+
private config;
|
|
4
|
+
private viewRenderer?;
|
|
5
|
+
private mailers;
|
|
6
|
+
private customCreators;
|
|
7
|
+
constructor(config: any, viewRenderer?: ViewRenderer | undefined);
|
|
8
|
+
extend(driver: string, callback: (config: any) => any): this;
|
|
9
|
+
mailer(name?: string): Mailer;
|
|
10
|
+
protected resolve(name: string): Mailer;
|
|
11
|
+
to(users: any): import("./Mailer").PendingMail;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=MailManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MailManager.d.ts","sourceRoot":"","sources":["../../src/MailManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAKhD,qBAAa,WAAW;IAKR,OAAO,CAAC,MAAM;IAAO,OAAO,CAAC,YAAY,CAAC;IAJtD,OAAO,CAAC,OAAO,CAAkC;IAEjD,OAAO,CAAC,cAAc,CAAgD;gBAElD,MAAM,EAAE,GAAG,EAAU,YAAY,CAAC,EAAE,YAAY,YAAA;IAE7D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG;IAKrD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAUpC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IA0ChC,EAAE,CAAC,KAAK,EAAE,GAAG;CAGvB"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MailManager = void 0;
|
|
4
|
+
const Mailer_1 = require("./Mailer");
|
|
5
|
+
const SmtpTransport_1 = require("./Transport/SmtpTransport");
|
|
6
|
+
const LogTransport_1 = require("./Transport/LogTransport");
|
|
7
|
+
const ArrayTransport_1 = require("./Transport/ArrayTransport");
|
|
8
|
+
class MailManager {
|
|
9
|
+
constructor(config, viewRenderer) {
|
|
10
|
+
this.config = config;
|
|
11
|
+
this.viewRenderer = viewRenderer;
|
|
12
|
+
this.mailers = new Map();
|
|
13
|
+
this.customCreators = new Map();
|
|
14
|
+
}
|
|
15
|
+
extend(driver, callback) {
|
|
16
|
+
this.customCreators.set(driver, callback);
|
|
17
|
+
return this;
|
|
18
|
+
}
|
|
19
|
+
mailer(name) {
|
|
20
|
+
const mailerName = name || this.config.default;
|
|
21
|
+
if (!this.mailers.has(mailerName)) {
|
|
22
|
+
this.mailers.set(mailerName, this.resolve(mailerName));
|
|
23
|
+
}
|
|
24
|
+
return this.mailers.get(mailerName);
|
|
25
|
+
}
|
|
26
|
+
resolve(name) {
|
|
27
|
+
const config = this.config.mailers[name];
|
|
28
|
+
if (!config) {
|
|
29
|
+
throw new Error(`Mailer [${name}] is not defined.`);
|
|
30
|
+
}
|
|
31
|
+
let transport;
|
|
32
|
+
if (this.customCreators.has(config.transport)) {
|
|
33
|
+
transport = this.customCreators.get(config.transport)(config);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
switch (config.transport) {
|
|
37
|
+
case 'smtp':
|
|
38
|
+
transport = new SmtpTransport_1.SmtpTransport(config);
|
|
39
|
+
break;
|
|
40
|
+
case 'ses':
|
|
41
|
+
const { SesTransport } = require('./Transport/SesTransport');
|
|
42
|
+
transport = new SesTransport(config);
|
|
43
|
+
break;
|
|
44
|
+
case 'mailgun':
|
|
45
|
+
const { MailgunTransport } = require('./Transport/MailgunTransport');
|
|
46
|
+
transport = new MailgunTransport(config);
|
|
47
|
+
break;
|
|
48
|
+
case 'sendgrid':
|
|
49
|
+
const { SendGridTransport } = require('./Transport/SendGridTransport');
|
|
50
|
+
transport = new SendGridTransport(config);
|
|
51
|
+
break;
|
|
52
|
+
case 'log':
|
|
53
|
+
transport = new LogTransport_1.LogTransport();
|
|
54
|
+
break;
|
|
55
|
+
case 'array':
|
|
56
|
+
transport = new ArrayTransport_1.ArrayTransport();
|
|
57
|
+
break;
|
|
58
|
+
default:
|
|
59
|
+
throw new Error(`Unsupported transport driver [${config.transport}].`);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return new Mailer_1.Mailer(name, transport, this.viewRenderer);
|
|
63
|
+
}
|
|
64
|
+
to(users) {
|
|
65
|
+
return this.mailer().to(users);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.MailManager = MailManager;
|
|
69
|
+
//# sourceMappingURL=MailManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MailManager.js","sourceRoot":"","sources":["../../src/MailManager.ts"],"names":[],"mappings":";;;AACA,qCAAgD;AAChD,6DAA0D;AAC1D,2DAAwD;AACxD,+DAA4D;AAE5D,MAAa,WAAW;IAKpB,YAAoB,MAAW,EAAU,YAA2B;QAAhD,WAAM,GAAN,MAAM,CAAK;QAAU,iBAAY,GAAZ,YAAY,CAAe;QAJ5D,YAAO,GAAwB,IAAI,GAAG,EAAE,CAAC;QAEzC,mBAAc,GAAsC,IAAI,GAAG,EAAE,CAAC;IAEE,CAAC;IAElE,MAAM,CAAC,MAAc,EAAE,QAA8B;QACxD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,IAAa;QACvB,MAAM,UAAU,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAE/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;IACzC,CAAC;IAES,OAAO,CAAC,IAAY;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,mBAAmB,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,SAAS,CAAC;QAEd,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAE,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACJ,QAAQ,MAAM,CAAC,SAAS,EAAE,CAAC;gBACvB,KAAK,MAAM;oBACP,SAAS,GAAG,IAAI,6BAAa,CAAC,MAAM,CAAC,CAAC;oBACtC,MAAM;gBACV,KAAK,KAAK;oBACN,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;oBAC7D,SAAS,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;oBACrC,MAAM;gBACV,KAAK,SAAS;oBACV,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;oBACrE,SAAS,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;oBACzC,MAAM;gBACV,KAAK,UAAU;oBACX,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;oBACvE,SAAS,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;oBAC1C,MAAM;gBACV,KAAK,KAAK;oBACN,SAAS,GAAG,IAAI,2BAAY,EAAE,CAAC;oBAC/B,MAAM;gBACV,KAAK,OAAO;oBACR,SAAS,GAAG,IAAI,+BAAc,EAAE,CAAC;oBACjC,MAAM;gBACV;oBACI,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC;QAED,OAAO,IAAI,eAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAEM,EAAE,CAAC,KAAU;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACJ;AAnED,kCAmEC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare abstract class Mailable {
|
|
2
|
+
subjectLine?: string;
|
|
3
|
+
viewPath?: string;
|
|
4
|
+
viewData: any;
|
|
5
|
+
textContent?: string;
|
|
6
|
+
attachments: any[];
|
|
7
|
+
fromAddress?: string | {
|
|
8
|
+
name: string;
|
|
9
|
+
address: string;
|
|
10
|
+
};
|
|
11
|
+
abstract build(): this;
|
|
12
|
+
subject(subject: string): this;
|
|
13
|
+
view(path: string, data?: any): this;
|
|
14
|
+
text(content: string): this;
|
|
15
|
+
attach(path: string): this;
|
|
16
|
+
from(address: string | {
|
|
17
|
+
name: string;
|
|
18
|
+
address: string;
|
|
19
|
+
}): this;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=Mailable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Mailable.d.ts","sourceRoot":"","sources":["../../src/Mailable.ts"],"names":[],"mappings":"AACA,8BAAsB,QAAQ;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,GAAG,CAAM;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,GAAG,EAAE,CAAM;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAEhE,QAAQ,CAAC,KAAK,IAAI,IAAI;IAEf,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,GAAQ;IAMjC,IAAI,CAAC,OAAO,EAAE,MAAM;IAKpB,MAAM,CAAC,IAAI,EAAE,MAAM;IAKnB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAIlE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Mailable = void 0;
|
|
4
|
+
class Mailable {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.viewData = {};
|
|
7
|
+
this.attachments = [];
|
|
8
|
+
}
|
|
9
|
+
subject(subject) {
|
|
10
|
+
this.subjectLine = subject;
|
|
11
|
+
return this;
|
|
12
|
+
}
|
|
13
|
+
view(path, data = {}) {
|
|
14
|
+
this.viewPath = path;
|
|
15
|
+
this.viewData = data;
|
|
16
|
+
return this;
|
|
17
|
+
}
|
|
18
|
+
text(content) {
|
|
19
|
+
this.textContent = content;
|
|
20
|
+
return this;
|
|
21
|
+
}
|
|
22
|
+
attach(path) {
|
|
23
|
+
this.attachments.push({ path });
|
|
24
|
+
return this;
|
|
25
|
+
}
|
|
26
|
+
from(address) {
|
|
27
|
+
this.fromAddress = address;
|
|
28
|
+
return this;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.Mailable = Mailable;
|
|
32
|
+
//# sourceMappingURL=Mailable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Mailable.js","sourceRoot":"","sources":["../../src/Mailable.ts"],"names":[],"mappings":";;;AACA,MAAsB,QAAQ;IAA9B;QAGW,aAAQ,GAAQ,EAAE,CAAC;QAEnB,gBAAW,GAAU,EAAE,CAAC;IA8BnC,CAAC;IAzBU,OAAO,CAAC,OAAe;QAC1B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,IAAI,CAAC,IAAY,EAAE,OAAY,EAAE;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,IAAI,CAAC,OAAe;QACvB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,IAAY;QACtB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,IAAI,CAAC,OAAmD;QAC3D,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAnCD,4BAmCC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Transport } from './Contracts/Transport';
|
|
2
|
+
import { Mailable } from './Mailable';
|
|
3
|
+
import { Message, Address } from './Message';
|
|
4
|
+
export interface ViewRenderer {
|
|
5
|
+
render(view: string, data: any): Promise<string>;
|
|
6
|
+
}
|
|
7
|
+
export declare class Mailer {
|
|
8
|
+
protected name: string;
|
|
9
|
+
protected transport: Transport;
|
|
10
|
+
protected viewRenderer?: ViewRenderer | undefined;
|
|
11
|
+
constructor(name: string, transport: Transport, viewRenderer?: ViewRenderer | undefined);
|
|
12
|
+
to(users: string | Address | (string | Address)[]): PendingMail;
|
|
13
|
+
send(viewPath: string, data: any, callback: (message: Message) => void): Promise<void>;
|
|
14
|
+
sendMailable(mailable: Mailable): Promise<void>;
|
|
15
|
+
sendRaw(message: any): Promise<void>;
|
|
16
|
+
getRenderer(): ViewRenderer | undefined;
|
|
17
|
+
}
|
|
18
|
+
export declare class PendingMail {
|
|
19
|
+
protected mailer: Mailer;
|
|
20
|
+
protected message: Message;
|
|
21
|
+
protected viewPath?: string;
|
|
22
|
+
protected viewData: any;
|
|
23
|
+
constructor(mailer: Mailer);
|
|
24
|
+
to(users: string | Address | (string | Address)[]): this;
|
|
25
|
+
subject(subject: string): this;
|
|
26
|
+
text(content: string): this;
|
|
27
|
+
view(path: string, data?: any): this;
|
|
28
|
+
attach(path: string): this;
|
|
29
|
+
send(mailable?: Mailable): Promise<void>;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=Mailer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Mailer.d.ts","sourceRoot":"","sources":["../../src/Mailer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAc,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzD,MAAM,WAAW,YAAY;IACzB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACpD;AAED,qBAAa,MAAM;IAEX,SAAS,CAAC,IAAI,EAAE,MAAM;IACtB,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,SAAS,CAAC,YAAY,CAAC,EAAE,YAAY;gBAF3B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,SAAS,EACpB,YAAY,CAAC,EAAE,YAAY,YAAA;IAGzC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE;IAI3C,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;IAYtE,YAAY,CAAC,QAAQ,EAAE,QAAQ;IAI/B,OAAO,CAAC,OAAO,EAAE,GAAG;IAI1B,WAAW;CAGd;AAED,qBAAa,WAAW;IAKR,SAAS,CAAC,MAAM,EAAE,MAAM;IAJpC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAM;gBAEP,MAAM,EAAE,MAAM;IAIpC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE;IAKjD,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,IAAI,CAAC,OAAO,EAAE,MAAM;IAKpB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,GAAQ;IAMjC,MAAM,CAAC,IAAI,EAAE,MAAM;IAKb,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ;CA4BjC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PendingMail = exports.Mailer = void 0;
|
|
4
|
+
const Message_1 = require("./Message");
|
|
5
|
+
class Mailer {
|
|
6
|
+
constructor(name, transport, viewRenderer) {
|
|
7
|
+
this.name = name;
|
|
8
|
+
this.transport = transport;
|
|
9
|
+
this.viewRenderer = viewRenderer;
|
|
10
|
+
}
|
|
11
|
+
to(users) {
|
|
12
|
+
return new PendingMail(this).to(users);
|
|
13
|
+
}
|
|
14
|
+
async send(viewPath, data, callback) {
|
|
15
|
+
const message = new Message_1.Message();
|
|
16
|
+
callback(message);
|
|
17
|
+
if (viewPath && this.viewRenderer) {
|
|
18
|
+
const html = await this.viewRenderer.render(viewPath, data);
|
|
19
|
+
message.htmlContent(html);
|
|
20
|
+
}
|
|
21
|
+
return this.transport.send(message.getPayload());
|
|
22
|
+
}
|
|
23
|
+
async sendMailable(mailable) {
|
|
24
|
+
return this.sendRaw(mailable);
|
|
25
|
+
}
|
|
26
|
+
async sendRaw(message) {
|
|
27
|
+
return this.transport.send(message);
|
|
28
|
+
}
|
|
29
|
+
getRenderer() {
|
|
30
|
+
return this.viewRenderer;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.Mailer = Mailer;
|
|
34
|
+
class PendingMail {
|
|
35
|
+
constructor(mailer) {
|
|
36
|
+
this.mailer = mailer;
|
|
37
|
+
this.viewData = {};
|
|
38
|
+
this.message = new Message_1.Message();
|
|
39
|
+
}
|
|
40
|
+
to(users) {
|
|
41
|
+
this.message.to(users);
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
44
|
+
subject(subject) {
|
|
45
|
+
this.message.subject(subject);
|
|
46
|
+
return this;
|
|
47
|
+
}
|
|
48
|
+
text(content) {
|
|
49
|
+
this.message.textContent(content);
|
|
50
|
+
return this;
|
|
51
|
+
}
|
|
52
|
+
view(path, data = {}) {
|
|
53
|
+
this.viewPath = path;
|
|
54
|
+
this.viewData = data;
|
|
55
|
+
return this;
|
|
56
|
+
}
|
|
57
|
+
attach(path) {
|
|
58
|
+
this.message.attach({ path });
|
|
59
|
+
return this;
|
|
60
|
+
}
|
|
61
|
+
async send(mailable) {
|
|
62
|
+
if (mailable) {
|
|
63
|
+
mailable.build();
|
|
64
|
+
if (mailable.subjectLine)
|
|
65
|
+
this.message.subject(mailable.subjectLine);
|
|
66
|
+
if (mailable.fromAddress)
|
|
67
|
+
this.message.from(mailable.fromAddress);
|
|
68
|
+
if (mailable.textContent)
|
|
69
|
+
this.message.textContent(mailable.textContent);
|
|
70
|
+
if (mailable.viewPath) {
|
|
71
|
+
this.viewPath = mailable.viewPath;
|
|
72
|
+
this.viewData = mailable.viewData;
|
|
73
|
+
}
|
|
74
|
+
if (mailable.attachments) {
|
|
75
|
+
mailable.attachments.forEach(att => this.message.attach(att));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (this.viewPath) {
|
|
79
|
+
const renderer = this.mailer.getRenderer();
|
|
80
|
+
if (renderer) {
|
|
81
|
+
const html = await renderer.render(this.viewPath, this.viewData);
|
|
82
|
+
this.message.htmlContent(html);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return this.mailer.sendRaw(this.message.getPayload());
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
exports.PendingMail = PendingMail;
|
|
89
|
+
//# sourceMappingURL=Mailer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Mailer.js","sourceRoot":"","sources":["../../src/Mailer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export interface Attachment {
|
|
2
|
+
filename?: string;
|
|
3
|
+
path?: string;
|
|
4
|
+
content?: string | Buffer;
|
|
5
|
+
contentType?: string;
|
|
6
|
+
cid?: string;
|
|
7
|
+
encoding?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface Address {
|
|
10
|
+
name: string;
|
|
11
|
+
address: string;
|
|
12
|
+
}
|
|
13
|
+
export declare class Message {
|
|
14
|
+
protected _to: (string | Address)[];
|
|
15
|
+
protected _cc: (string | Address)[];
|
|
16
|
+
protected _bcc: (string | Address)[];
|
|
17
|
+
protected _from?: string | Address;
|
|
18
|
+
protected _replyTo?: string | Address;
|
|
19
|
+
protected _subject?: string;
|
|
20
|
+
protected _text?: string;
|
|
21
|
+
protected _html?: string;
|
|
22
|
+
protected _attachments: Attachment[];
|
|
23
|
+
constructor();
|
|
24
|
+
to(address: string | Address | (string | Address)[]): this;
|
|
25
|
+
cc(address: string | Address | (string | Address)[]): this;
|
|
26
|
+
bcc(address: string | Address | (string | Address)[]): this;
|
|
27
|
+
from(address: string | Address): this;
|
|
28
|
+
replyTo(address: string | Address): this;
|
|
29
|
+
subject(subject: string): this;
|
|
30
|
+
textContent(content: string): this;
|
|
31
|
+
htmlContent(content: string): this;
|
|
32
|
+
attach(attachment: Attachment): this;
|
|
33
|
+
getPayload(): {
|
|
34
|
+
to: (string | Address)[];
|
|
35
|
+
cc: (string | Address)[];
|
|
36
|
+
bcc: (string | Address)[];
|
|
37
|
+
from: string | Address | undefined;
|
|
38
|
+
replyTo: string | Address | undefined;
|
|
39
|
+
subject: string | undefined;
|
|
40
|
+
text: string | undefined;
|
|
41
|
+
html: string | undefined;
|
|
42
|
+
attachments: Attachment[];
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=Message.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../src/Message.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,OAAO;IAChB,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAM;IACzC,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAM;IACzC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAM;IAC1C,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACnC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACtC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAM;;IAI1C,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE;IASnD,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE;IASnD,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE;IASpD,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAK9B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAKjC,OAAO,CAAC,OAAO,EAAE,MAAM;IAKvB,WAAW,CAAC,OAAO,EAAE,MAAM;IAK3B,WAAW,CAAC,OAAO,EAAE,MAAM;IAK3B,MAAM,CAAC,UAAU,EAAE,UAAU;IAK7B,UAAU;;;;;;;;;;;CAab"}
|