@typetron/framework 0.5.36 → 0.5.38
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/Framework/Readme.md +1 -0
- package/Mail/Readme.md +8 -2
- package/build/Framework/Config/MailConfig.d.ts +2 -1
- package/build/Framework/Config/MailConfig.d.ts.map +1 -1
- package/build/Framework/Config/MailConfig.js +1 -0
- package/build/Framework/Config/MailConfig.js.map +1 -1
- package/build/Framework/Providers/MailProvider.js +1 -1
- package/build/Framework/Providers/MailProvider.js.map +1 -1
- package/build/Framework/Providers/WebsocketsProvider.d.ts.map +1 -1
- package/build/Framework/Providers/WebsocketsProvider.js +9 -1
- package/build/Framework/Providers/WebsocketsProvider.js.map +1 -1
- package/build/Mail/Mailer.d.ts +2 -1
- package/build/Mail/Mailer.d.ts.map +1 -1
- package/build/Mail/Mailer.js +4 -1
- package/build/Mail/Mailer.js.map +1 -1
- package/build/Mail/PendingMail.js +1 -1
- package/build/Mail/PendingMail.js.map +1 -1
- package/package.json +1 -1
package/Framework/Readme.md
CHANGED
|
@@ -62,6 +62,7 @@ assets are served when `staticAssets` entries are present.
|
|
|
62
62
|
|
|
63
63
|
`MailConfig.default` supports `memory`, `SendGrid`, and `Cloudflare`. Cloudflare requires `mailers.Cloudflare.accountId` and
|
|
64
64
|
`mailers.Cloudflare.apiToken`; see [Mail configuration](../Mail/Readme.md#cloudflare).
|
|
65
|
+
Optional `MailConfig.replyTo` sets the default Reply-To; explicit per-message values override it.
|
|
65
66
|
|
|
66
67
|
Authentication configuration must provide a signing `signature`. If it is missing, application creation throws an error stating that
|
|
67
68
|
`APP_SECRET` is not set up.
|
package/Mail/Readme.md
CHANGED
|
@@ -18,8 +18,7 @@ performs the delivery.
|
|
|
18
18
|
## Configuration
|
|
19
19
|
|
|
20
20
|
Applications normally register `MailProvider` and configure `MailConfig`. The `default` mailer may be `memory`, `SendGrid`, or `Cloudflare`,
|
|
21
|
-
and `from`
|
|
22
|
-
supplies the default sender.
|
|
21
|
+
and `from` supplies the default sender. Optional `replyTo` supplies the default reply address.
|
|
23
22
|
|
|
24
23
|
```ts
|
|
25
24
|
import { MailConfig } from '@Typetron/Framework'
|
|
@@ -30,12 +29,19 @@ export default new MailConfig({
|
|
|
30
29
|
email: 'hello@example.com',
|
|
31
30
|
name: 'Typetron',
|
|
32
31
|
},
|
|
32
|
+
replyTo: 'support@example.com',
|
|
33
33
|
})
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
The SendGrid transport also requires `mailers.SendGrid.key`. Constructing `Mailer` without a transport throws an error instructing the
|
|
37
37
|
application to register `MailProvider` or bind a mailer manually.
|
|
38
38
|
|
|
39
|
+
`replyTo` accepts an email string, a `{email, name?}` address, or an array of these. It applies to outgoing messages without an explicit
|
|
40
|
+
Reply-To, including messages passed directly to `Mailer.send`. A fluent `.replyTo(...)` overrides the mailable's own `replyTo`, which
|
|
41
|
+
in turn overrides the configured default. Without a default, messages with no explicit Reply-To leave it unset.
|
|
42
|
+
|
|
43
|
+
For manual setup, pass the default as the third argument: `new Mailer(from, transport, replyTo)`.
|
|
44
|
+
|
|
39
45
|
## Defining Mailables
|
|
40
46
|
|
|
41
47
|
Represent a reusable message by extending `Mailable` and implementing `content`:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseConfig } from './BaseConfig';
|
|
2
|
-
import type { CloudflareTransportConfig } from '@Typetron/Mail';
|
|
2
|
+
import type { CloudflareTransportConfig, Mailable } from '@Typetron/Mail';
|
|
3
3
|
export type Mailers = keyof MailConfig['mailers'];
|
|
4
4
|
export declare class MailConfig extends BaseConfig<MailConfig> {
|
|
5
5
|
default: Mailers;
|
|
@@ -7,6 +7,7 @@ export declare class MailConfig extends BaseConfig<MailConfig> {
|
|
|
7
7
|
email: string;
|
|
8
8
|
name?: string;
|
|
9
9
|
};
|
|
10
|
+
replyTo?: Mailable['replyTo'];
|
|
10
11
|
mailers: {
|
|
11
12
|
memory: any;
|
|
12
13
|
SendGrid?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MailConfig.d.ts","sourceRoot":"","sources":["../../../Framework/Config/MailConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"MailConfig.d.ts","sourceRoot":"","sources":["../../../Framework/Config/MailConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,KAAK,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzE,MAAM,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAA;AAEjD,qBAAa,UAAW,SAAQ,UAAU,CAAC,UAAU,CAAC;IAClD,OAAO,EAAE,OAAO,CAA6C;IAE7D,IAAI,EAAE;QACF,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAA;IAED,OAAO,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;IAE7B,OAAO,EAAE;QACL,MAAM,EAAE,GAAG,CAAC;QAEZ,QAAQ,CAAC,EAAE;YACP,GAAG,EAAE,MAAM,CAAC;SACf,CAAC;QACF,UAAU,CAAC,EAAE,yBAAyB,CAAC;QACvC,GAAG,CAAC,EAAE,EAEL,CAAC;QACF,OAAO,CAAC,EAAE,EAET,CAAC;QACF,QAAQ,CAAC,EAAE,EAEV,CAAC;KAEL,CAAA;CACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MailConfig.js","sourceRoot":"","sources":["../../../Framework/Config/MailConfig.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAKzC,MAAa,UAAW,SAAQ,uBAAsB;IAClD,OAAO,GAAY,OAAO,CAAC,GAAG,EAAE,MAAiB,IAAI,QAAQ,CAAA;IAE7D,IAAI,CAGH;IAED,OAAO,CAiBN;CACJ;
|
|
1
|
+
{"version":3,"file":"MailConfig.js","sourceRoot":"","sources":["../../../Framework/Config/MailConfig.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAKzC,MAAa,UAAW,SAAQ,uBAAsB;IAClD,OAAO,GAAY,OAAO,CAAC,GAAG,EAAE,MAAiB,IAAI,QAAQ,CAAA;IAE7D,IAAI,CAGH;IAED,OAAO,CAAsB;IAE7B,OAAO,CAiBN;CACJ;AA5BD,gCA4BC"}
|
|
@@ -37,7 +37,7 @@ class MailProvider extends Provider_1.Provider {
|
|
|
37
37
|
config;
|
|
38
38
|
register() {
|
|
39
39
|
const transport = mailers[this.config.default]?.(this.app, this.config);
|
|
40
|
-
this.app.set(Mail_1.Mailer, new Mail_1.Mailer(this.config.from, transport));
|
|
40
|
+
this.app.set(Mail_1.Mailer, new Mail_1.Mailer(this.config.from, transport, this.config.replyTo));
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
exports.MailProvider = MailProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MailProvider.js","sourceRoot":"","sources":["../../../Framework/Providers/MailProvider.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;AAEZ,mDAAuD;AACvD,0CAAsC;AACtC,sCAA+C;AAC/C,yCAAwF;AAExF,mFAA+E;AAE/E,MAAM,OAAO,GAAgE;IACzE,MAAM,EAAE,CAAC,GAAc,EAAE,MAAkB,EAAE,EAAE;QAC3C,OAAO,IAAI,sBAAe,EAAE,CAAA;IAChC,CAAC;IACD,QAAQ,EAAE,CAAC,GAAc,EAAE,MAAkB,EAAE,EAAE;QAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;YACjC,MAAM,IAAI,gBAAS,CAAC,yBAAyB,EAAE,EAAC,QAAQ,EAAE,UAAU,EAAC,CAAC,CAAA;QAC1E,CAAC;QAED,OAAO,IAAI,qCAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC9D,CAAC;IACD,UAAU,EAAE,CAAC,GAAc,EAAE,MAAkB,EAAE,EAAE;QAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,UAAU,CAAA;QAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,gBAAS,CAAC,gDAAgD,EAAE,EAAC,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAA;QACnG,CAAC;QACD,OAAO,IAAI,0BAAmB,CAAC,OAAO,CAAC,CAAA;IAC3C,CAAC;CACJ,CAAA;AAED,MAAa,YAAa,SAAQ,mBAAQ;IAEtC,MAAM,CAAY;IAEX,QAAQ;QACX,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAM,EAAE,IAAI,aAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"MailProvider.js","sourceRoot":"","sources":["../../../Framework/Providers/MailProvider.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;AAEZ,mDAAuD;AACvD,0CAAsC;AACtC,sCAA+C;AAC/C,yCAAwF;AAExF,mFAA+E;AAE/E,MAAM,OAAO,GAAgE;IACzE,MAAM,EAAE,CAAC,GAAc,EAAE,MAAkB,EAAE,EAAE;QAC3C,OAAO,IAAI,sBAAe,EAAE,CAAA;IAChC,CAAC;IACD,QAAQ,EAAE,CAAC,GAAc,EAAE,MAAkB,EAAE,EAAE;QAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;YACjC,MAAM,IAAI,gBAAS,CAAC,yBAAyB,EAAE,EAAC,QAAQ,EAAE,UAAU,EAAC,CAAC,CAAA;QAC1E,CAAC;QAED,OAAO,IAAI,qCAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC9D,CAAC;IACD,UAAU,EAAE,CAAC,GAAc,EAAE,MAAkB,EAAE,EAAE;QAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,UAAU,CAAA;QAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,gBAAS,CAAC,gDAAgD,EAAE,EAAC,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAA;QACnG,CAAC;QACD,OAAO,IAAI,0BAAmB,CAAC,OAAO,CAAC,CAAA;IAC3C,CAAC;CACJ,CAAA;AAED,MAAa,YAAa,SAAQ,mBAAQ;IAEtC,MAAM,CAAY;IAEX,QAAQ;QACX,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAM,EAAE,IAAI,aAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;IACtF,CAAC;CACJ;AARD,oCAQC;AANG;IADC,IAAA,kBAAM,GAAE;8BACD,mBAAU;4CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebsocketsProvider.d.ts","sourceRoot":"","sources":["../../../Framework/Providers/WebsocketsProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAGrC,OAAO,EAAE,qBAAqB,EAAuB,MAAM,mBAAmB,CAAA;AAC9E,OAAO,EAAuB,OAAO,EAAa,MAAM,yBAAyB,CAAA;AASjF,qBAAa,kBAAmB,SAAQ,QAAQ;IAG5C,SAAS,EAAE,SAAS,CAAA;IAGpB,OAAO,EAAE,OAAO,CAAA;IAGhB,YAAY,EAAE,qBAAqB,CAAA;IAEnC,QAAQ,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"WebsocketsProvider.d.ts","sourceRoot":"","sources":["../../../Framework/Providers/WebsocketsProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAGrC,OAAO,EAAE,qBAAqB,EAAuB,MAAM,mBAAmB,CAAA;AAC9E,OAAO,EAAuB,OAAO,EAAa,MAAM,yBAAyB,CAAA;AASjF,qBAAa,kBAAmB,SAAQ,QAAQ;IAG5C,SAAS,EAAE,SAAS,CAAA;IAGpB,OAAO,EAAE,OAAO,CAAA;IAGhB,YAAY,EAAE,qBAAqB,CAAA;IAEnC,QAAQ,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAqIlB,YAAY;CAS7B"}
|
|
@@ -132,7 +132,15 @@ class WebsocketsProvider extends Provider_1.Provider {
|
|
|
132
132
|
}
|
|
133
133
|
},
|
|
134
134
|
dropped: (ws, message) => {
|
|
135
|
-
|
|
135
|
+
const decodedMessage = stringDecoder.decode(message);
|
|
136
|
+
let loggedMessage;
|
|
137
|
+
try {
|
|
138
|
+
loggedMessage = JSON.parse(decodedMessage, (_key, value) => typeof value === 'string' ? value.slice(0, 200) : value);
|
|
139
|
+
}
|
|
140
|
+
catch {
|
|
141
|
+
loggedMessage = decodedMessage.slice(0, 200);
|
|
142
|
+
}
|
|
143
|
+
console.info('socket dropped', ws.getUserData(), loggedMessage);
|
|
136
144
|
}
|
|
137
145
|
}).listen(port, (listenSocket) => {
|
|
138
146
|
if (listenSocket) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebsocketsProvider.js","sourceRoot":"","sources":["../../../Framework/Providers/WebsocketsProvider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"WebsocketsProvider.js","sourceRoot":"","sources":["../../../Framework/Providers/WebsocketsProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAsC;AACtC,+CAAmD;AACnD,sCAAqC;AACrC,mDAA6D;AAC7D,+BAAkC;AAClC,4CAA8E;AAC9E,wDAAiF;AAEjF,iEAA6D;AAE7D,IAAK,sBAGJ;AAHD,WAAK,sBAAsB;IACvB,mCAAS,CAAA;IACT,yCAAe,CAAA;AACnB,CAAC,EAHI,sBAAsB,KAAtB,sBAAsB,QAG1B;AAED,MAAa,kBAAmB,SAAQ,mBAAQ;IAG5C,SAAS,CAAW;IAGpB,OAAO,CAAS;IAGhB,YAAY,CAAuB;IAEnC,QAAQ;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAA;QAE1C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;QACtE,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,kBAAW,EAAE,CAAA;QAEvC,wIAAwI;QACxI,yIAAyI;QACzI,MAAM,aAAa,GAAG,IAAI,OAAO,EAAmB,CAAA;QAEpD,MAAM,GAAG,GAAG,IAAA,oBAAG,GAAE,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;YAC9B,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE;gBACV,GAAG,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAA;YACvF,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;YAEP,2CAA2C;YAC3C,WAAW,EAAE,EAAE;YACf,eAAe,EAAE,IAAI,GAAG,IAAI,GAAG,CAAC,EAAI,0BAA0B;YAC9D,2DAA2D;YAC3D,yCAAyC;YACzC,yBAAyB;YACzB,gBAAgB,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;YAElC,IAAI,EAAE,CAAC,MAAuB,EAAE,EAAE;gBAC9B,MAAM,aAAa,GAAG,IAAI,sBAAS,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,CAAA;gBACxF,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YACpE,CAAC;YACD,KAAK,EAAE,KAAK,EAAE,MAAuB,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;gBACpD,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACzB,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;gBACxE,MAAM,cAAc,GAAG,MAAkD,CAAA;gBACzE,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;oBACxE,OAAO,CAAC,IAAI,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAA;gBAChD,CAAC,CAAC,CAAA;YACN,CAAC;YAED,8EAA8E;YAC9E,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;gBACzC,IAAI,IAAmB,CAAA;gBACvB,IAAI,CAAC;oBACD,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;oBAC9C,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC/B,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBACd,MAAM,KAAK,GAAG,MAAe,CAAA;oBAC7B,MAAM,YAAY,GAAG;wBACjB,OAAO,EAAE;4BACL,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC;yBACpE;wBACD,MAAM,EAAE,sBAAsB,CAAC,KAAK;qBACvC,CAAA;oBACD,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC5B,OAAM;oBACV,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;wBACb,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;oBAC7D,CAAC,CAAC,CAAA;oBACF,OAAM;gBACV,CAAC;gBAED,IAAI,CAAC;oBACD,MAAM,cAAc,GAAG,MAAkD,CAAA;oBACzE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;oBACxE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;oBAC1B,MAAM,YAAY,GAA4B;wBAE1C,MAAM;wBACN,OAAO,EAAE,QAAQ,CAAC,IAAI;wBACtB,MAAM,EAAE,sBAAsB,CAAC,EAAE;wBAEjC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC;qBACnB,CAAA;oBACD,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;wBACnD,YAAY,CAAC,MAAM,GAAG,sBAAsB,CAAC,EAAE,CAAA;oBACnD,CAAC;yBAAM,CAAC;wBACJ,YAAY,CAAC,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAA;oBACtD,CAAC;oBAED,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC5B,OAAM;oBACV,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;wBACb,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;oBAC7D,CAAC,CAAC,CAAA;gBAEN,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,MAAM,KAAK,GAAG,GAAgB,CAAA;oBAC9B,MAAM,YAAY,GAAwB;wBACtC,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,MAAM,EAAE,sBAAsB,CAAC,KAAK;wBACpC,OAAO,EAAE;4BACL,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC;4BAC/C,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC;yBAClE;wBACD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC;qBACrB,CAAA;oBACD,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;wBACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAoB,CAAA;wBACzE,YAAY,CAAC,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;oBACxD,CAAC;oBACD,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;oBAC3B,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC5B,OAAM;oBACV,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;wBACb,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;oBAC7D,CAAC,CAAC,CAAA;gBACN,CAAC;YAEL,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE;gBACrB,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;gBACpD,IAAI,aAAsB,CAAA;gBAC1B,IAAI,CAAC;oBACD,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,KAAc,EAAE,EAAE,CAChE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;gBAChE,CAAC;gBAAC,MAAM,CAAC;oBACL,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;gBAChD,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,aAAa,CAAC,CAAA;YACnE,CAAC;SAEJ,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,EAAE;YAC7B,IAAI,YAAY,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAA;YAC5D,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,SAAoB,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAgB;QACxF,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;QAEtD,+HAA+H;QAC/H,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE;YACrC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAA;QACrD,CAAC,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;CACJ;AAzJD,gDAyJC;AAtJG;IADC,IAAA,kBAAM,GAAE;8BACE,kBAAS;qDAAA;AAGpB;IADC,IAAA,kBAAM,GAAE;8BACA,oBAAO;mDAAA;AAGhB;IADC,IAAA,kBAAM,GAAE;8BACK,4BAAqB;wDAAA"}
|
package/build/Mail/Mailer.d.ts
CHANGED
|
@@ -4,8 +4,9 @@ import { Mailable } from './Mailable';
|
|
|
4
4
|
import { MailAddress } from '@Typetron/Mail/MailAddress';
|
|
5
5
|
export declare class Mailer {
|
|
6
6
|
from: MailAddress;
|
|
7
|
+
replyTo?: Mailable['replyTo'];
|
|
7
8
|
transport: MailTransport;
|
|
8
|
-
constructor(from: MailAddress, transport?: MailTransport);
|
|
9
|
+
constructor(from: MailAddress, transport?: MailTransport, replyTo?: Mailable['replyTo']);
|
|
9
10
|
to(email: string): PendingMail;
|
|
10
11
|
send(message: Mailable): Promise<import("./SentMessage").SentMessage>;
|
|
11
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mailer.d.ts","sourceRoot":"","sources":["../../Mail/Mailer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,qBAAa,MAAM;IAGI,IAAI,EAAE,WAAW;
|
|
1
|
+
{"version":3,"file":"Mailer.d.ts","sourceRoot":"","sources":["../../Mail/Mailer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,qBAAa,MAAM;IAGI,IAAI,EAAE,WAAW;IAAoC,OAAO,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;IAFrG,SAAS,EAAE,aAAa,CAAA;gBAEL,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,aAAa,EAAS,OAAO,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;IAQrG,EAAE,CAAC,KAAK,EAAE,MAAM;IAOV,IAAI,CAAC,OAAO,EAAE,QAAQ;CAI/B"}
|
package/build/Mail/Mailer.js
CHANGED
|
@@ -4,9 +4,11 @@ exports.Mailer = void 0;
|
|
|
4
4
|
const PendingMail_1 = require("./PendingMail");
|
|
5
5
|
class Mailer {
|
|
6
6
|
from;
|
|
7
|
+
replyTo;
|
|
7
8
|
transport;
|
|
8
|
-
constructor(from, transport) {
|
|
9
|
+
constructor(from, transport, replyTo) {
|
|
9
10
|
this.from = from;
|
|
11
|
+
this.replyTo = replyTo;
|
|
10
12
|
if (!transport) {
|
|
11
13
|
throw new Error('Please add the MailProvider in your app in order to use the Mailing feature, ' +
|
|
12
14
|
'or manually add a Mailer instance in the app container ');
|
|
@@ -20,6 +22,7 @@ class Mailer {
|
|
|
20
22
|
return mail;
|
|
21
23
|
}
|
|
22
24
|
async send(message) {
|
|
25
|
+
message.replyTo ??= this.replyTo;
|
|
23
26
|
return await this.transport.send(message);
|
|
24
27
|
}
|
|
25
28
|
}
|
package/build/Mail/Mailer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mailer.js","sourceRoot":"","sources":["../../Mail/Mailer.ts"],"names":[],"mappings":";;;AACA,+CAA2C;AAI3C,MAAa,MAAM;IAGI;
|
|
1
|
+
{"version":3,"file":"Mailer.js","sourceRoot":"","sources":["../../Mail/Mailer.ts"],"names":[],"mappings":";;;AACA,+CAA2C;AAI3C,MAAa,MAAM;IAGI;IAAqD;IAFxE,SAAS,CAAe;IAExB,YAAmB,IAAiB,EAAE,SAAyB,EAAS,OAA6B;QAAlF,SAAI,GAAJ,IAAI,CAAa;QAAoC,YAAO,GAAP,OAAO,CAAsB;QACjG,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,+EAA+E;gBAC3F,yDAAyD,CAAC,CAAA;QAClE,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC9B,CAAC;IAED,EAAE,CAAC,KAAa;QACZ,MAAM,IAAI,GAAG,IAAI,yBAAW,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpB,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;QACd,OAAO,IAAI,CAAA;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAiB;QACxB,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAA;QAChC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7C,CAAC;CACJ;AAtBD,wBAsBC"}
|
|
@@ -44,7 +44,7 @@ class PendingMail {
|
|
|
44
44
|
mail.subject = this.details.subject;
|
|
45
45
|
mail.from = this.details.from;
|
|
46
46
|
mail.to = this.details.to;
|
|
47
|
-
mail.replyTo = this.details.replyTo;
|
|
47
|
+
mail.replyTo = this.details.replyTo ?? mail.replyTo;
|
|
48
48
|
mail.cc = this.details.cc;
|
|
49
49
|
mail.bcc = this.details.bcc;
|
|
50
50
|
return this.mailer.send(mail);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PendingMail.js","sourceRoot":"","sources":["../../Mail/PendingMail.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AAGrC,MAAa,WAAW;IAYA;IAVpB,OAAO,GAQH,EAAC,IAAI,EAAE,EAAE,EAAC,CAAA;IAEd,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAClC,CAAC;IAED,OAAO,CAAC,OAAe;QACnB,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAA;QAC9B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,IAAI,CAAC,KAA2B;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;QACzB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,EAAE,CAAC,KAA2B;QAC1B,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,CAAA;QACvB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,OAAO,CAAC,KAA2B;QAC/B,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAK,CAAA;QAC5B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,EAAE,CAAC,KAA2B;QAC1B,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,CAAA;QACvB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,GAAG,CAAC,KAA2B;QAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,KAAK,CAAA;QACxB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAsD;QAC7D,IAAI,IAAI,CAAA;QACR,IAAI,IAAI,YAAY,mBAAQ,EAAE,CAAC;YAC3B,IAAI,GAAG,IAAI,CAAA;QACf,CAAC;aAAM,CAAC;YACJ,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAA;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACpB,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA;QAC7B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"PendingMail.js","sourceRoot":"","sources":["../../Mail/PendingMail.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AAGrC,MAAa,WAAW;IAYA;IAVpB,OAAO,GAQH,EAAC,IAAI,EAAE,EAAE,EAAC,CAAA;IAEd,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAClC,CAAC;IAED,OAAO,CAAC,OAAe;QACnB,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAA;QAC9B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,IAAI,CAAC,KAA2B;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;QACzB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,EAAE,CAAC,KAA2B;QAC1B,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,CAAA;QACvB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,OAAO,CAAC,KAA2B;QAC/B,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAK,CAAA;QAC5B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,EAAE,CAAC,KAA2B;QAC1B,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,CAAA;QACvB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,GAAG,CAAC,KAA2B;QAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,KAAK,CAAA;QACxB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAsD;QAC7D,IAAI,IAAI,CAAA;QACR,IAAI,IAAI,YAAY,mBAAQ,EAAE,CAAC;YAC3B,IAAI,GAAG,IAAI,CAAA;QACf,CAAC;aAAM,CAAC;YACJ,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAA;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACpB,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA;QAC7B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAA;QACnD,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;QACzB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAA;QAE3B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;CACJ;AA/DD,kCA+DC"}
|