@spinajs/email 2.0.46 → 2.0.49
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 +11 -11
- package/lib/cli/SendEmail.d.ts +1 -0
- package/lib/cli/SendEmail.d.ts.map +1 -0
- package/lib/cli/SendEmail.js +17 -43
- package/lib/cli/SendEmail.js.map +1 -1
- package/lib/config/email.d.ts +1 -0
- package/lib/config/email.d.ts.map +1 -0
- package/lib/config/email.js +3 -5
- package/lib/config/email.js.map +1 -1
- package/lib/events/EmailSent.d.ts +2 -1
- package/lib/events/EmailSent.d.ts.map +1 -0
- package/lib/events/EmailSent.js +6 -9
- package/lib/events/EmailSent.js.map +1 -1
- package/lib/index.d.ts +6 -5
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +20 -40
- package/lib/index.js.map +1 -1
- package/lib/interfaces.d.ts +2 -1
- package/lib/interfaces.d.ts.map +1 -0
- package/lib/interfaces.js +12 -17
- package/lib/interfaces.js.map +1 -1
- package/lib/jobs/EmailSend.d.ts +2 -1
- package/lib/jobs/EmailSend.d.ts.map +1 -0
- package/lib/jobs/EmailSend.js +7 -10
- package/lib/jobs/EmailSend.js.map +1 -1
- package/lib/schemas/email.smtp.configuration.d.ts +1 -0
- package/lib/schemas/email.smtp.configuration.d.ts.map +1 -0
- package/lib/schemas/email.smtp.configuration.js +1 -3
- package/lib/schemas/email.smtp.configuration.js.map +1 -1
- package/lib/transports.d.ts +2 -1
- package/lib/transports.d.ts.map +1 -0
- package/lib/transports.js +6 -9
- package/lib/transports.js.map +1 -1
- package/package.json +59 -60
package/README.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
# `email`
|
|
2
|
-
|
|
3
|
-
> TODO: description
|
|
4
|
-
|
|
5
|
-
## Usage
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
const email = require('email');
|
|
9
|
-
|
|
10
|
-
// TODO: DEMONSTRATE API
|
|
11
|
-
```
|
|
1
|
+
# `email`
|
|
2
|
+
|
|
3
|
+
> TODO: description
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
const email = require('email');
|
|
9
|
+
|
|
10
|
+
// TODO: DEMONSTRATE API
|
|
11
|
+
```
|
package/lib/cli/SendEmail.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SendEmail.d.ts","sourceRoot":"","sources":["../../src/cli/SendEmail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAG3D,OAAO,EAAU,IAAI,EAAE,MAAM,cAAc,CAAC;AAG5C,UAAU,YAAY;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAQa,gBAAiB,SAAQ,UAAU;IAE9C,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC;IAEP,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;CA6B3D"}
|
package/lib/cli/SendEmail.js
CHANGED
|
@@ -1,48 +1,22 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
6
|
};
|
|
24
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
|
-
if (mod && mod.__esModule) return mod;
|
|
26
|
-
var result = {};
|
|
27
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
28
|
-
__setModuleDefault(result, mod);
|
|
29
|
-
return result;
|
|
30
|
-
};
|
|
31
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
32
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
33
9
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
const index_1 = require("./../index");
|
|
41
|
-
let SendEmailCommand = class SendEmailCommand extends cli_1.CliCommand {
|
|
10
|
+
import { CliCommand, Command, Option } from '@spinajs/cli';
|
|
11
|
+
import { DI } from '@spinajs/di';
|
|
12
|
+
import * as fs from 'fs';
|
|
13
|
+
import { Logger } from '@spinajs/log';
|
|
14
|
+
import { DefaultEmailService } from './../index.js';
|
|
15
|
+
let SendEmailCommand = class SendEmailCommand extends CliCommand {
|
|
42
16
|
async execute(options) {
|
|
43
17
|
this.Log.trace(`Sending email with options options: ${JSON.stringify(options)}`);
|
|
44
18
|
try {
|
|
45
|
-
const emails = await
|
|
19
|
+
const emails = await DI.resolve(DefaultEmailService);
|
|
46
20
|
let model = {};
|
|
47
21
|
if (options.model && fs.existsSync(options.model)) {
|
|
48
22
|
this.Log.trace(`Found model file at ${options.model}, trying to load model data ... `);
|
|
@@ -66,18 +40,18 @@ let SendEmailCommand = class SendEmailCommand extends cli_1.CliCommand {
|
|
|
66
40
|
}
|
|
67
41
|
};
|
|
68
42
|
__decorate([
|
|
69
|
-
|
|
43
|
+
Logger('email'),
|
|
70
44
|
__metadata("design:type", Object)
|
|
71
45
|
], SendEmailCommand.prototype, "Log", void 0);
|
|
72
46
|
SendEmailCommand = __decorate([
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
47
|
+
Command('email-send', 'Sends email, mainly for testing purpose or scheduled tasks'),
|
|
48
|
+
Option('-c, --connection [connection]', true, 'name of connection'),
|
|
49
|
+
Option('-f, --from [from]', true, 'from email'),
|
|
50
|
+
Option('-t, --to [to]', true, 'receipients, can be many ( comma separated )'),
|
|
51
|
+
Option('-e, --template [template]', false, 'template name'),
|
|
52
|
+
Option('-m, --model [model]', false, 'path to model data for template, in json format'),
|
|
53
|
+
Option('-s, --subject [model]', true, 'subject'),
|
|
54
|
+
Option('-c, --content [content]', false, 'text content if template is not provided')
|
|
81
55
|
], SendEmailCommand);
|
|
82
|
-
|
|
56
|
+
export { SendEmailCommand };
|
|
83
57
|
//# sourceMappingURL=SendEmail.js.map
|
package/lib/cli/SendEmail.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendEmail.js","sourceRoot":"","sources":["../../src/cli/SendEmail.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SendEmail.js","sourceRoot":"","sources":["../../src/cli/SendEmail.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,MAAM,EAAQ,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAoB7C,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAAU;IAIvC,KAAK,CAAC,OAAO,CAAC,OAAqB;QACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uCAAuC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEjF,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;YACrD,IAAI,KAAK,GAAG,EAAE,CAAC;YAEf,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACjD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uBAAuB,OAAO,CAAC,KAAK,kCAAkC,CAAC,CAAC;gBAEvF,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;gBACpE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;aAC3B;YAED,MAAM,MAAM,CAAC,IAAI,CAAC;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;gBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,IAAI,EAAE,OAAO,CAAC,OAAO;aACtB,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,+BAA+B,OAAO,CAAC,EAAE,WAAW,OAAO,CAAC,IAAI,cAAc,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;SACnH;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,8BAA8B,GAAG,CAAC,OAAO,YAAY,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;SAClF;IACH,CAAC;CACF,CAAA;AAhCC;IAAC,MAAM,CAAC,OAAO,CAAC;;6CACI;AAFT,gBAAgB;IAR5B,OAAO,CAAC,YAAY,EAAE,4DAA4D,CAAC;IACnF,MAAM,CAAC,+BAA+B,EAAE,IAAI,EAAE,oBAAoB,CAAC;IACnE,MAAM,CAAC,mBAAmB,EAAE,IAAI,EAAE,YAAY,CAAC;IAC/C,MAAM,CAAC,eAAe,EAAE,IAAI,EAAE,8CAA8C,CAAC;IAC7E,MAAM,CAAC,2BAA2B,EAAE,KAAK,EAAE,eAAe,CAAC;IAC3D,MAAM,CAAC,qBAAqB,EAAE,KAAK,EAAE,iDAAiD,CAAC;IACvF,MAAM,CAAC,uBAAuB,EAAE,IAAI,EAAE,SAAS,CAAC;IAChD,MAAM,CAAC,yBAAyB,EAAE,KAAK,EAAE,0CAA0C,CAAC;GACxE,gBAAgB,CAiC5B;SAjCY,gBAAgB"}
|
package/lib/config/email.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/config/email.ts"],"names":[],"mappings":"AAMA,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BV,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
package/lib/config/email.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const path_1 = require("path");
|
|
1
|
+
import { join, normalize, resolve } from 'path';
|
|
4
2
|
function dir(path) {
|
|
5
|
-
return
|
|
3
|
+
return resolve(normalize(join(__dirname, path)));
|
|
6
4
|
}
|
|
7
5
|
const email = {
|
|
8
6
|
system: {
|
|
@@ -31,5 +29,5 @@ const email = {
|
|
|
31
29
|
],
|
|
32
30
|
},
|
|
33
31
|
};
|
|
34
|
-
|
|
32
|
+
export default email;
|
|
35
33
|
//# sourceMappingURL=email.js.map
|
package/lib/config/email.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/config/email.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/config/email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEhD,SAAS,GAAG,CAAC,IAAY;IACvB,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE;QACN,IAAI,EAAE;YACJ,GAAG,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACtB,IAAI,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;SACzB;KACF;IACD,KAAK,EAAE;QACL,kCAAkC;QAClC,KAAK,EAAE,wBAAwB;KAChC;IACD,KAAK,EAAE;QACL,OAAO,EAAE;YACP,YAAY,EAAE,EAAE,UAAU,EAAE,wBAAwB,EAAE;YACtD,SAAS,EAAE,EAAE,UAAU,EAAE,wBAAwB,EAAE;SACpD;QAED,0DAA0D;QAC1D,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,wBAAwB;gBAC9B,OAAO,EAAE,sBAAsB;gBAC/B,mBAAmB,EAAE,YAAY;gBACjC,mBAAmB,EAAE,cAAc;aACpC;SACF;KACF;CACF,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { QueueEvent } from '@spinajs/queue';
|
|
2
2
|
import { DateTime } from 'luxon';
|
|
3
|
-
import { IEmail } from '../interfaces';
|
|
3
|
+
import { IEmail } from '../interfaces.js';
|
|
4
4
|
export declare class EmailSent extends QueueEvent {
|
|
5
5
|
Connection?: string;
|
|
6
6
|
From: string;
|
|
@@ -21,3 +21,4 @@ export declare class EmailSent extends QueueEvent {
|
|
|
21
21
|
SentAt: DateTime;
|
|
22
22
|
constructor(email: IEmail);
|
|
23
23
|
}
|
|
24
|
+
//# sourceMappingURL=EmailSent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailSent.d.ts","sourceRoot":"","sources":["../../src/events/EmailSent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAS,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,qBACa,SAAU,SAAQ,UAAU;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,IAAI,EAAE,MAAM,CAAC;IAEb,EAAE,EAAE,MAAM,EAAE,CAAC;IAEpB;;OAEG;IACI,QAAQ,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACI,KAAK,CAAC,EAAE,GAAG,CAAC;IAEZ,OAAO,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACI,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,QAAQ,CAAC;gBAEZ,KAAK,EAAE,MAAM;CAa1B"}
|
package/lib/events/EmailSent.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -8,11 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
9
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const luxon_1 = require("luxon");
|
|
15
|
-
let EmailSent = class EmailSent extends queue_1.QueueEvent {
|
|
10
|
+
import { QueueEvent, Event } from '@spinajs/queue';
|
|
11
|
+
import { DateTime } from 'luxon';
|
|
12
|
+
let EmailSent = class EmailSent extends QueueEvent {
|
|
16
13
|
constructor(email) {
|
|
17
14
|
super();
|
|
18
15
|
this.Connection = email.connection;
|
|
@@ -22,12 +19,12 @@ let EmailSent = class EmailSent extends queue_1.QueueEvent {
|
|
|
22
19
|
this.Model = email.model;
|
|
23
20
|
this.Subject = email.subject;
|
|
24
21
|
this.Content = email.text;
|
|
25
|
-
this.SentAt =
|
|
22
|
+
this.SentAt = DateTime.now();
|
|
26
23
|
}
|
|
27
24
|
};
|
|
28
25
|
EmailSent = __decorate([
|
|
29
|
-
|
|
26
|
+
Event(),
|
|
30
27
|
__metadata("design:paramtypes", [Object])
|
|
31
28
|
], EmailSent);
|
|
32
|
-
|
|
29
|
+
export { EmailSent };
|
|
33
30
|
//# sourceMappingURL=EmailSent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmailSent.js","sourceRoot":"","sources":["../../src/events/EmailSent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EmailSent.js","sourceRoot":"","sources":["../../src/events/EmailSent.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAI1B,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,UAAU;IA0BvC,YAAY,KAAa;QACvB,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;QAE1B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;CACF,CAAA;AAvCY,SAAS;IADrB,KAAK,EAAE;;GACK,SAAS,CAuCrB;SAvCY,SAAS"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Bootstrapper } from '@spinajs/di';
|
|
2
|
-
import { IEmail, EmailService } from './interfaces';
|
|
3
|
-
import { EmailSend } from './jobs/EmailSend';
|
|
4
|
-
export * from './interfaces';
|
|
5
|
-
export * from './transports';
|
|
6
|
-
export * from './jobs/EmailSend';
|
|
2
|
+
import { IEmail, EmailService } from './interfaces.js';
|
|
3
|
+
import { EmailSend } from './jobs/EmailSend.js';
|
|
4
|
+
export * from './interfaces.js';
|
|
5
|
+
export * from './transports.js';
|
|
6
|
+
export * from './jobs/EmailSend.js';
|
|
7
7
|
export declare class LogBotstrapper extends Bootstrapper {
|
|
8
8
|
bootstrap(): void;
|
|
9
9
|
}
|
|
@@ -21,3 +21,4 @@ export declare class DefaultEmailService extends EmailService {
|
|
|
21
21
|
sendDeferred(email: IEmail): Promise<EmailSend>;
|
|
22
22
|
processDefferedEmails(): Promise<void>;
|
|
23
23
|
}
|
|
24
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAM,YAAY,EAAc,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AAEpC,qBACa,cAAe,SAAQ,YAAY;IACvC,SAAS,IAAI,IAAI;CAGzB;AAED;;GAEG;AACH,qBACa,mBAAoB,SAAQ,YAAY;IACnD;;;;;OAKG;IACU,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAQ/C,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;CAGpD"}
|
package/lib/index.js
CHANGED
|
@@ -1,51 +1,31 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
14
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
15
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
16
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
17
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
18
6
|
};
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const interfaces_1 = require("./interfaces");
|
|
30
|
-
const email_smtp_configuration_1 = __importDefault(require("./schemas/email.smtp.configuration"));
|
|
31
|
-
const EmailSent_1 = require("./events/EmailSent");
|
|
32
|
-
const EmailSend_1 = require("./jobs/EmailSend");
|
|
33
|
-
__exportStar(require("./interfaces"), exports);
|
|
34
|
-
__exportStar(require("./transports"), exports);
|
|
35
|
-
__exportStar(require("./jobs/EmailSend"), exports);
|
|
36
|
-
let LogBotstrapper = class LogBotstrapper extends di_1.Bootstrapper {
|
|
7
|
+
import { InvalidOperation } from '../../exceptions/lib/index.js';
|
|
8
|
+
import { DI, Bootstrapper, Injectable } from '@spinajs/di';
|
|
9
|
+
import { EmailService } from './interfaces.js';
|
|
10
|
+
import CONFIGURATION_SCHEMA from './schemas/email.smtp.configuration.js';
|
|
11
|
+
import { EmailSent } from './events/EmailSent.js';
|
|
12
|
+
import { EmailSend } from './jobs/EmailSend.js';
|
|
13
|
+
export * from './interfaces.js';
|
|
14
|
+
export * from './transports.js';
|
|
15
|
+
export * from './jobs/EmailSend.js';
|
|
16
|
+
let LogBotstrapper = class LogBotstrapper extends Bootstrapper {
|
|
37
17
|
bootstrap() {
|
|
38
|
-
|
|
18
|
+
DI.register(CONFIGURATION_SCHEMA).asValue('__configurationSchema__');
|
|
39
19
|
}
|
|
40
20
|
};
|
|
41
21
|
LogBotstrapper = __decorate([
|
|
42
|
-
|
|
22
|
+
Injectable(Bootstrapper)
|
|
43
23
|
], LogBotstrapper);
|
|
44
|
-
|
|
24
|
+
export { LogBotstrapper };
|
|
45
25
|
/**
|
|
46
26
|
* Email sending service.
|
|
47
27
|
*/
|
|
48
|
-
let DefaultEmailService = class DefaultEmailService extends
|
|
28
|
+
let DefaultEmailService = class DefaultEmailService extends EmailService {
|
|
49
29
|
/**
|
|
50
30
|
*
|
|
51
31
|
* Tries to sends email immediately
|
|
@@ -54,24 +34,24 @@ let DefaultEmailService = class DefaultEmailService extends interfaces_1.EmailSe
|
|
|
54
34
|
*/
|
|
55
35
|
async send(email) {
|
|
56
36
|
if (!this.Senders.has(email.connection)) {
|
|
57
|
-
throw new
|
|
37
|
+
throw new InvalidOperation(`Email sender ${email.connection} not exists. Please check your configuration files.`);
|
|
58
38
|
}
|
|
59
39
|
await this.Senders.get(email.connection).send(email);
|
|
60
40
|
// inform others of email event
|
|
61
|
-
await this.Queue.emit(new
|
|
41
|
+
await this.Queue.emit(new EmailSent(email));
|
|
62
42
|
}
|
|
63
43
|
async sendDeferred(email) {
|
|
64
|
-
const dEmail = new
|
|
44
|
+
const dEmail = new EmailSend();
|
|
65
45
|
dEmail.hydrate(email);
|
|
66
46
|
await this.Queue.emit(dEmail);
|
|
67
47
|
return dEmail;
|
|
68
48
|
}
|
|
69
49
|
async processDefferedEmails() {
|
|
70
|
-
await this.Queue.consume(
|
|
50
|
+
await this.Queue.consume(EmailSend);
|
|
71
51
|
}
|
|
72
52
|
};
|
|
73
53
|
DefaultEmailService = __decorate([
|
|
74
|
-
|
|
54
|
+
Injectable(EmailService)
|
|
75
55
|
], DefaultEmailService);
|
|
76
|
-
|
|
56
|
+
export { DefaultEmailService };
|
|
77
57
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAU,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,oBAAoB,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AAG7B,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,YAAY;IACvC,SAAS;QACd,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACvE,CAAC;CACF,CAAA;AAJY,cAAc;IAD1B,UAAU,CAAC,YAAY,CAAC;GACZ,cAAc,CAI1B;SAJY,cAAc;AAM3B;;GAEG;AAEI,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,YAAY;IACnD;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CAAC,KAAa;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;YACvC,MAAM,IAAI,gBAAgB,CAAC,gBAAgB,KAAK,CAAC,UAAU,qDAAqD,CAAC,CAAC;SACnH;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAErD,+BAA+B;QAC/B,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9C,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,KAAa;QACrC,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtB,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE9B,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,qBAAqB;QAChC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;CACF,CAAA;AA7BY,mBAAmB;IAD/B,UAAU,CAAC,YAAY,CAAC;GACZ,mBAAmB,CA6B/B;SA7BY,mBAAmB"}
|
package/lib/interfaces.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AsyncService, IInstanceCheck, IMappableService } from '@spinajs/di';
|
|
2
2
|
import { Log } from '@spinajs/log';
|
|
3
3
|
import { QueueService } from '@spinajs/queue';
|
|
4
|
-
import { EmailSend } from './jobs/EmailSend';
|
|
4
|
+
import { EmailSend } from './jobs/EmailSend.js';
|
|
5
5
|
export declare abstract class EmailSender extends AsyncService implements IInstanceCheck, IMappableService {
|
|
6
6
|
Options: EmailConnectionOptions;
|
|
7
7
|
get ServiceName(): string;
|
|
@@ -112,3 +112,4 @@ export declare abstract class EmailService extends AsyncService {
|
|
|
112
112
|
*/
|
|
113
113
|
abstract processDefferedEmails(): Promise<void>;
|
|
114
114
|
}
|
|
115
|
+
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAc,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,GAAG,EAAU,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,8BAAsB,WAAY,SAAQ,YAAa,YAAW,cAAc,EAAE,gBAAgB;IACzF,OAAO,EAAE,sBAAsB,CAAC;IAEvC,IAAW,WAAW,WAErB;IAED,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEpC,iBAAiB,CAAC,eAAe,EAAE,GAAG,GAAG,OAAO;CAGxD;AAED,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,EAAE,CAAC;IAEb,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;IAEd,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IAEf,IAAI,EAAE,MAAM,CAAC;IAEb,UAAU,EAAE,MAAM,CAAC;IAEnB,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAEnC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,sBAAsB,EAAE,CAAC;IACtC,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT;;WAEG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,8BAAsB,YAAa,SAAQ,YAAY;IAErD,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;IAGnB,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAG5C,SAAS,CAAC,aAAa,EAAE,kBAAkB,CAAC;IAG5C,SAAS,CAAC,KAAK,EAAE,YAAY,CAAC;IAE9B;;;;;OAKG;aACa,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAElD;;;;;;OAMG;aACa,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAE/D;;OAEG;aACa,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;CACvD"}
|
package/lib/interfaces.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -8,13 +7,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
9
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const queue_1 = require("@spinajs/queue");
|
|
17
|
-
class EmailSender extends di_1.AsyncService {
|
|
10
|
+
import { AsyncService, Autoinject } from '@spinajs/di';
|
|
11
|
+
import { Log, Logger } from '@spinajs/log';
|
|
12
|
+
import { AutoinjectService, Config } from '@spinajs/configuration';
|
|
13
|
+
import { QueueService } from '@spinajs/queue';
|
|
14
|
+
export class EmailSender extends AsyncService {
|
|
18
15
|
get ServiceName() {
|
|
19
16
|
return this.Options.name;
|
|
20
17
|
}
|
|
@@ -22,24 +19,22 @@ class EmailSender extends di_1.AsyncService {
|
|
|
22
19
|
return this.Options.name === creationOptions[0].name;
|
|
23
20
|
}
|
|
24
21
|
}
|
|
25
|
-
|
|
26
|
-
class EmailService extends di_1.AsyncService {
|
|
22
|
+
export class EmailService extends AsyncService {
|
|
27
23
|
}
|
|
28
24
|
__decorate([
|
|
29
|
-
|
|
30
|
-
__metadata("design:type",
|
|
25
|
+
Logger('email'),
|
|
26
|
+
__metadata("design:type", Log)
|
|
31
27
|
], EmailService.prototype, "Log", void 0);
|
|
32
28
|
__decorate([
|
|
33
|
-
|
|
29
|
+
AutoinjectService('email.connections', EmailSender),
|
|
34
30
|
__metadata("design:type", Map)
|
|
35
31
|
], EmailService.prototype, "Senders", void 0);
|
|
36
32
|
__decorate([
|
|
37
|
-
|
|
33
|
+
Config('email'),
|
|
38
34
|
__metadata("design:type", Object)
|
|
39
35
|
], EmailService.prototype, "Configuration", void 0);
|
|
40
36
|
__decorate([
|
|
41
|
-
|
|
42
|
-
__metadata("design:type",
|
|
37
|
+
Autoinject(QueueService),
|
|
38
|
+
__metadata("design:type", QueueService)
|
|
43
39
|
], EmailService.prototype, "Queue", void 0);
|
|
44
|
-
exports.EmailService = EmailService;
|
|
45
40
|
//# sourceMappingURL=interfaces.js.map
|
package/lib/interfaces.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAoC,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,OAAgB,WAAY,SAAQ,YAAY;IAGpD,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAIM,iBAAiB,CAAC,eAAoB;QAC3C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvD,CAAC;CACF;AAwGD,MAAM,OAAgB,YAAa,SAAQ,YAAY;CAkCtD;AAjCC;IAAC,MAAM,CAAC,OAAO,CAAC;8BACD,GAAG;yCAAC;AAEnB;IAAC,iBAAiB,CAAC,mBAAmB,EAAE,WAAW,CAAC;8BACjC,GAAG;6CAAsB;AAE5C;IAAC,MAAM,CAAC,OAAO,CAAC;;mDAC4B;AAE5C;IAAC,UAAU,CAAC,YAAY,CAAC;8BACR,YAAY;2CAAC"}
|
package/lib/jobs/EmailSend.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { QueueJob } from '@spinajs/queue';
|
|
2
|
-
import { IEmail, IEmailAttachement } from '../interfaces';
|
|
2
|
+
import { IEmail, IEmailAttachement } from '../interfaces.js';
|
|
3
3
|
/**
|
|
4
4
|
* Job for sending emails in background
|
|
5
5
|
*/
|
|
@@ -28,3 +28,4 @@ export declare class EmailSend extends QueueJob implements IEmail {
|
|
|
28
28
|
error?: undefined;
|
|
29
29
|
}>;
|
|
30
30
|
}
|
|
31
|
+
//# sourceMappingURL=EmailSend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailSend.d.ts","sourceRoot":"","sources":["../../src/jobs/EmailSend.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAO,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAgB,MAAM,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE3E;;GAEG;AACH,qBACa,SAAU,SAAQ,QAAS,YAAW,MAAM;IAChD,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IAEX,OAAO;;;;;;;CAerB"}
|
package/lib/jobs/EmailSend.js
CHANGED
|
@@ -1,22 +1,19 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
6
|
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const queue_1 = require("@spinajs/queue");
|
|
12
|
-
const interfaces_1 = require("../interfaces");
|
|
7
|
+
import { DI } from '@spinajs/di';
|
|
8
|
+
import { QueueJob, Job } from '@spinajs/queue';
|
|
9
|
+
import { EmailService } from '../interfaces.js';
|
|
13
10
|
/**
|
|
14
11
|
* Job for sending emails in background
|
|
15
12
|
*/
|
|
16
|
-
let EmailSend = class EmailSend extends
|
|
13
|
+
let EmailSend = class EmailSend extends QueueJob {
|
|
17
14
|
async execute() {
|
|
18
15
|
try {
|
|
19
|
-
const emails = await
|
|
16
|
+
const emails = await DI.resolve(EmailService);
|
|
20
17
|
await emails.send(this);
|
|
21
18
|
}
|
|
22
19
|
catch (err) {
|
|
@@ -31,7 +28,7 @@ let EmailSend = class EmailSend extends queue_1.QueueJob {
|
|
|
31
28
|
}
|
|
32
29
|
};
|
|
33
30
|
EmailSend = __decorate([
|
|
34
|
-
|
|
31
|
+
Job()
|
|
35
32
|
], EmailSend);
|
|
36
|
-
|
|
33
|
+
export { EmailSend };
|
|
37
34
|
//# sourceMappingURL=EmailSend.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmailSend.js","sourceRoot":"","sources":["../../src/jobs/EmailSend.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EmailSend.js","sourceRoot":"","sources":["../../src/jobs/EmailSend.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAA6B,MAAM,kBAAkB,CAAC;AAE3E;;GAEG;AAEI,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,QAAQ;IAkB9B,KAAK,CAAC,OAAO;QAClB,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAC9C,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACzB;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO;gBACL,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,GAAG;aACX,CAAC;SACH;QAED,OAAO;YACL,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;CACF,CAAA;AAjCY,SAAS;IADrB,GAAG,EAAE;GACO,SAAS,CAiCrB;SAjCY,SAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.smtp.configuration.d.ts","sourceRoot":"","sources":["../../src/schemas/email.smtp.configuration.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCzB,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
const CONFIGURATION_SCHEMA = {
|
|
4
2
|
$id: 'spinajs/email.configuration.schema.json',
|
|
5
3
|
$configurationModule: 'email',
|
|
@@ -35,5 +33,5 @@ const CONFIGURATION_SCHEMA = {
|
|
|
35
33
|
},
|
|
36
34
|
required: ['name', 'sender'],
|
|
37
35
|
};
|
|
38
|
-
|
|
36
|
+
export default CONFIGURATION_SCHEMA;
|
|
39
37
|
//# sourceMappingURL=email.smtp.configuration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.smtp.configuration.js","sourceRoot":"","sources":["../../src/schemas/email.smtp.configuration.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"email.smtp.configuration.js","sourceRoot":"","sources":["../../src/schemas/email.smtp.configuration.ts"],"names":[],"mappings":"AAAA,MAAM,oBAAoB,GAAG;IAC3B,GAAG,EAAE,yCAAyC;IAC9C,oBAAoB,EAAE,OAAO;IAC7B,WAAW,EAAE,sDAAsD;IACnE,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE;YACX,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,IAAI;YACjB,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;qBACf;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC7B;qBACF;iBACF;aACF;SACF;KACF;IACD,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;CAC7B,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
package/lib/transports.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EmailSender } from './interfaces';
|
|
1
|
+
import { EmailSender } from './interfaces.js';
|
|
2
2
|
/**
|
|
3
3
|
* Transport that does nothing.
|
|
4
4
|
*
|
|
@@ -7,3 +7,4 @@ import { EmailSender } from './interfaces';
|
|
|
7
7
|
export declare class BlackHoleEmailTransport extends EmailSender {
|
|
8
8
|
send(): Promise<void>;
|
|
9
9
|
}
|
|
10
|
+
//# sourceMappingURL=transports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transports.d.ts","sourceRoot":"","sources":["../src/transports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AACH,qBAEa,uBAAwB,SAAQ,WAAW;IACzC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CACnC"}
|
package/lib/transports.js
CHANGED
|
@@ -1,25 +1,22 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
6
|
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const di_1 = require("@spinajs/di");
|
|
11
|
-
const interfaces_1 = require("./interfaces");
|
|
7
|
+
import { Injectable, NewInstance } from '@spinajs/di';
|
|
8
|
+
import { EmailSender } from './interfaces.js';
|
|
12
9
|
/**
|
|
13
10
|
* Transport that does nothing.
|
|
14
11
|
*
|
|
15
12
|
* Used for testing, or when we want temporarly disable siding emails
|
|
16
13
|
*/
|
|
17
|
-
let BlackHoleEmailTransport = class BlackHoleEmailTransport extends
|
|
14
|
+
let BlackHoleEmailTransport = class BlackHoleEmailTransport extends EmailSender {
|
|
18
15
|
async send() { }
|
|
19
16
|
};
|
|
20
17
|
BlackHoleEmailTransport = __decorate([
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
Injectable(),
|
|
19
|
+
NewInstance()
|
|
23
20
|
], BlackHoleEmailTransport);
|
|
24
|
-
|
|
21
|
+
export { BlackHoleEmailTransport };
|
|
25
22
|
//# sourceMappingURL=transports.js.map
|
package/lib/transports.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transports.js","sourceRoot":"","sources":["../src/transports.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transports.js","sourceRoot":"","sources":["../src/transports.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AAGI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,WAAW;IAC/C,KAAK,CAAC,IAAI,KAAmB,CAAC;CACtC,CAAA;AAFY,uBAAuB;IAFnC,UAAU,EAAE;IACZ,WAAW,EAAE;GACD,uBAAuB,CAEnC;SAFY,uBAAuB"}
|
package/package.json
CHANGED
|
@@ -1,60 +1,59 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@spinajs/email",
|
|
3
|
-
"version": "2.0.
|
|
4
|
-
"description": "sending emails easy & reliable way",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
|
|
9
|
-
"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
"
|
|
24
|
-
|
|
25
|
-
"
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
"spinajs"
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
"@types/luxon": "^2.
|
|
45
|
-
"@types/node": "^
|
|
46
|
-
"@types/nodemailer": "^6.4.
|
|
47
|
-
},
|
|
48
|
-
"dependencies": {
|
|
49
|
-
"@spinajs/cli": "^2.0.46",
|
|
50
|
-
"@spinajs/configuration": "^2.0.46",
|
|
51
|
-
"@spinajs/di": "^2.0.46",
|
|
52
|
-
"@spinajs/exceptions": "^2.0.39",
|
|
53
|
-
"@spinajs/
|
|
54
|
-
"@spinajs/
|
|
55
|
-
"@spinajs/
|
|
56
|
-
"
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@spinajs/email",
|
|
3
|
+
"version": "2.0.49",
|
|
4
|
+
"description": "sending emails easy & reliable way",
|
|
5
|
+
"exports": "./lib/index.js",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"private": false,
|
|
8
|
+
"engines": {
|
|
9
|
+
"node": ">=16.11"
|
|
10
|
+
},
|
|
11
|
+
"scripts": {
|
|
12
|
+
"build": "npm run clean && npm run compile",
|
|
13
|
+
"compile": "tsc -b tsconfig.json",
|
|
14
|
+
"rimraf": "./node_modules/rimraf/bin.js",
|
|
15
|
+
"clean": "rimraf lib/ && rimraf tsconfig.tsbuildinfo",
|
|
16
|
+
"test": "ts-mocha -p tsconfig.json test/**/*.test.ts",
|
|
17
|
+
"coverage": "nyc npm run test",
|
|
18
|
+
"build-docs": "rimraf docs && typedoc --options typedoc.json src/",
|
|
19
|
+
"format": "prettier --write \"src/**/*.ts\"",
|
|
20
|
+
"lint": "eslint -c .eslintrc.cjs --ext .ts src --fix",
|
|
21
|
+
"preversion": "npm run lint",
|
|
22
|
+
"version": "npm run format && git add -A src",
|
|
23
|
+
"postinstall": "npm run build"
|
|
24
|
+
},
|
|
25
|
+
"files": [
|
|
26
|
+
"lib/**/*"
|
|
27
|
+
],
|
|
28
|
+
"types": "lib",
|
|
29
|
+
"repository": {
|
|
30
|
+
"type": "git",
|
|
31
|
+
"url": "git+https://github.com/spinajs/main.git"
|
|
32
|
+
},
|
|
33
|
+
"keywords": [
|
|
34
|
+
"spinajs",
|
|
35
|
+
"http"
|
|
36
|
+
],
|
|
37
|
+
"author": "SpinaJS <spinajs@coderush.pl> (https://github.com/spinajs/main)",
|
|
38
|
+
"license": "MIT",
|
|
39
|
+
"bugs": {
|
|
40
|
+
"url": "https://github.com/spinajs/main/issues"
|
|
41
|
+
},
|
|
42
|
+
"homepage": "https://github.com/spinajs/main#readme",
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@types/luxon": "^3.2.0",
|
|
45
|
+
"@types/node": "^18.11.18",
|
|
46
|
+
"@types/nodemailer": "^6.4.7"
|
|
47
|
+
},
|
|
48
|
+
"dependencies": {
|
|
49
|
+
"@spinajs/cli": "^2.0.46",
|
|
50
|
+
"@spinajs/configuration": "^2.0.46",
|
|
51
|
+
"@spinajs/di": "^2.0.46",
|
|
52
|
+
"@spinajs/exceptions": "^2.0.39",
|
|
53
|
+
"@spinajs/intl": "^2.0.46",
|
|
54
|
+
"@spinajs/log": "^2.0.46",
|
|
55
|
+
"@spinajs/queue": "^2.0.46",
|
|
56
|
+
"luxon": "^3.2.1"
|
|
57
|
+
},
|
|
58
|
+
"gitHead": "002dc553b0ffffd72193d0121ac425a4083bc9ee"
|
|
59
|
+
}
|