prostgles-server 4.2.162 → 4.2.164

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.
@@ -1,7 +1,14 @@
1
1
  import { Email, SMTPConfig } from "./AuthTypes";
2
+ import nodemailer from "nodemailer";
3
+ import SESTransport from "nodemailer/lib/ses-transport";
4
+ type SESTransporter = nodemailer.Transporter<SESTransport.SentMessageInfo, SESTransport.Options>;
5
+ type SMTPTransporter = nodemailer.Transporter<nodemailer.SentMessageInfo, nodemailer.TransportOptions>;
6
+ type Transporter = SESTransporter | SMTPTransporter;
2
7
  /**
3
8
  * Allows sending emails using nodemailer default config or AWS SES
4
9
  * https://www.nodemailer.com/transports/ses/
5
10
  */
6
11
  export declare const sendEmail: (smptConfig: SMTPConfig, email: Email) => Promise<unknown>;
12
+ export declare const getOrSetTransporter: (smptConfig: SMTPConfig) => Transporter;
13
+ export {};
7
14
  //# sourceMappingURL=sendEmail.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sendEmail.d.ts","sourceRoot":"","sources":["../../lib/Auth/sendEmail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAWhD;;;GAGG;AACH,eAAO,MAAM,SAAS,eAAgB,UAAU,SAAS,KAAK,qBAQ7D,CAAA"}
1
+ {"version":3,"file":"sendEmail.d.ts","sourceRoot":"","sources":["../../lib/Auth/sendEmail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,YAAY,MAAM,8BAA8B,CAAC;AAExD,KAAK,cAAc,GAAI,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;AAClG,KAAK,eAAe,GAAG,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;AACvG,KAAK,WAAW,GAAG,cAAc,GAAG,eAAe,CAAC;AAIpD;;;GAGG;AACH,eAAO,MAAM,SAAS,eAAgB,UAAU,SAAS,KAAK,qBAG7D,CAAA;AAED,eAAO,MAAM,mBAAmB,eAAgB,UAAU,gBAOzD,CAAA"}
@@ -1,22 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sendEmail = void 0;
3
+ exports.getOrSetTransporter = exports.sendEmail = void 0;
4
4
  const nodemailer_1 = require("nodemailer");
5
- const client_ses_1 = require("@aws-sdk/client-ses");
5
+ const aws = require("@aws-sdk/client-ses");
6
6
  const transporterCache = new Map();
7
7
  /**
8
8
  * Allows sending emails using nodemailer default config or AWS SES
9
9
  * https://www.nodemailer.com/transports/ses/
10
10
  */
11
11
  const sendEmail = (smptConfig, email) => {
12
+ const transporter = (0, exports.getOrSetTransporter)(smptConfig);
13
+ return send(transporter, email);
14
+ };
15
+ exports.sendEmail = sendEmail;
16
+ const getOrSetTransporter = (smptConfig) => {
12
17
  const configStr = JSON.stringify(smptConfig);
13
18
  const transporter = transporterCache.get(configStr) ?? getTransporter(smptConfig);
14
19
  if (!transporterCache.has(configStr)) {
15
20
  transporterCache.set(configStr, transporter);
16
21
  }
17
- return send(transporter, email);
22
+ return transporter;
18
23
  };
19
- exports.sendEmail = sendEmail;
24
+ exports.getOrSetTransporter = getOrSetTransporter;
20
25
  const getTransporter = (smptConfig) => {
21
26
  let transporter;
22
27
  if (smptConfig.type === "aws-ses") {
@@ -25,7 +30,7 @@ const getTransporter = (smptConfig) => {
25
30
  * max 1 messages/second
26
31
  */
27
32
  sendingRate = 1 } = smptConfig;
28
- const ses = new client_ses_1.default.SES({
33
+ const ses = new aws.SES({
29
34
  apiVersion: "2010-12-01",
30
35
  region,
31
36
  credentials: {
@@ -34,7 +39,7 @@ const getTransporter = (smptConfig) => {
34
39
  }
35
40
  });
36
41
  transporter = nodemailer_1.default.createTransport({
37
- SES: { ses, aws: client_ses_1.default },
42
+ SES: { ses, aws },
38
43
  maxConnections: 1,
39
44
  sendingRate
40
45
  });
@@ -1 +1 @@
1
- {"version":3,"file":"sendEmail.js","sourceRoot":"","sources":["../../lib/Auth/sendEmail.ts"],"names":[],"mappings":";;;AACA,2CAAoC;AACpC,oDAAsC;AAOtC,MAAM,gBAAgB,GAA6B,IAAI,GAAG,EAAE,CAAC;AAE7D;;;GAGG;AACI,MAAM,SAAS,GAAG,CAAC,UAAsB,EAAE,KAAY,EAAE,EAAE;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;IAClF,IAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC;QACnC,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;AAClC,CAAC,CAAA;AARY,QAAA,SAAS,aAQrB;AAED,MAAM,cAAc,GAAG,CAAC,UAAsB,EAAE,EAAE;IAChD,IAAI,WAAoC,CAAC;IACzC,IAAG,UAAU,CAAC,IAAI,KAAK,SAAS,EAAC,CAAC;QAChC,MAAM,EACJ,MAAM,EACN,WAAW,EACX,eAAe;QACf;;WAEG;QACH,WAAW,GAAG,CAAC,EAChB,GAAG,UAAU,CAAC;QACf,MAAM,GAAG,GAAG,IAAI,oBAAG,CAAC,GAAG,CAAC;YACtB,UAAU,EAAE,YAAY;YACxB,MAAM;YACN,WAAW,EAAE;gBACX,WAAW;gBACX,eAAe;aAChB;SACF,CAAC,CAAC;QAEH,WAAW,GAAG,oBAAU,CAAC,eAAe,CAAC;YACvC,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAH,oBAAG,EAAE;YACjB,cAAc,EAAE,CAAC;YACjB,WAAW;SACZ,CAAC,CAAC;IAEL,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;QACtD,WAAW,GAAG,oBAAU,CAAC,eAAe,CAAC;YACvC,IAAI;YACJ,IAAI;YACJ,MAAM;YACN,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACrB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC,CAAA;AAED,MAAM,IAAI,GAAG,CAAC,WAAwB,EAAE,KAAY,EAAE,EAAE;IACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;YAC5B,IAAI,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;gBACzB,WAAW,CAAC,QAAQ,CAClB,KAAK,EACL,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;oBACZ,IAAG,GAAG,EAAC,CAAC;wBACN,MAAM,CAAC,GAAG,CAAC,CAAC;oBACd,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAI,CAAC,CAAC;oBAChB,CAAC;gBACH,CAAC,CACF,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"sendEmail.js","sourceRoot":"","sources":["../../lib/Auth/sendEmail.ts"],"names":[],"mappings":";;;AACA,2CAAoC;AACpC,2CAA2C;AAO3C,MAAM,gBAAgB,GAA6B,IAAI,GAAG,EAAE,CAAC;AAE7D;;;GAGG;AACI,MAAM,SAAS,GAAG,CAAC,UAAsB,EAAE,KAAY,EAAE,EAAE;IAChE,MAAM,WAAW,GAAG,IAAA,2BAAmB,EAAC,UAAU,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;AAClC,CAAC,CAAA;AAHY,QAAA,SAAS,aAGrB;AAEM,MAAM,mBAAmB,GAAG,CAAC,UAAsB,EAAE,EAAE;IAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;IAClF,IAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC;QACnC,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAA;AAPY,QAAA,mBAAmB,uBAO/B;AAED,MAAM,cAAc,GAAG,CAAC,UAAsB,EAAE,EAAE;IAChD,IAAI,WAAoC,CAAC;IACzC,IAAG,UAAU,CAAC,IAAI,KAAK,SAAS,EAAC,CAAC;QAChC,MAAM,EACJ,MAAM,EACN,WAAW,EACX,eAAe;QACf;;WAEG;QACH,WAAW,GAAG,CAAC,EAChB,GAAG,UAAU,CAAC;QACf,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC;YACtB,UAAU,EAAE,YAAY;YACxB,MAAM;YACN,WAAW,EAAE;gBACX,WAAW;gBACX,eAAe;aAChB;SACF,CAAC,CAAC;QAEH,WAAW,GAAG,oBAAU,CAAC,eAAe,CAAC;YACvC,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;YACjB,cAAc,EAAE,CAAC;YACjB,WAAW;SACZ,CAAC,CAAC;IAEL,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;QACtD,WAAW,GAAG,oBAAU,CAAC,eAAe,CAAC;YACvC,IAAI;YACJ,IAAI;YACJ,MAAM;YACN,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACrB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC,CAAA;AAED,MAAM,IAAI,GAAG,CAAC,WAAwB,EAAE,KAAY,EAAE,EAAE;IACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;YAC5B,IAAI,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;gBACzB,WAAW,CAAC,QAAQ,CAClB,KAAK,EACL,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;oBACZ,IAAG,GAAG,EAAC,CAAC;wBACN,MAAM,CAAC,GAAG,CAAC,CAAC;oBACd,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAI,CAAC,CAAC;oBAChB,CAAC;gBACH,CAAC,CACF,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"setAuthProviders.d.ts","sourceRoot":"","sources":["../../lib/Auth/setAuthProviders.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAKzC,OAAO,EAAE,gBAAgB,EAA6B,MAAM,iBAAiB,CAAC;AAG9E,OAAO,EAA0B,WAAW,EAAsB,MAAM,eAAe,CAAC;AACxF,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAKnC,eAAO,MAAM,4BAA4B,QAAS,SAAS,WAAW,cAAc,QAAQ,MAAM,SAKjG,CAAA;AAED,wBAAsB,gBAAgB,CAAE,IAAI,EAAE,WAAW,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,iBAuFjH;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,GAAG,SAAS,CAgBzF"}
1
+ {"version":3,"file":"setAuthProviders.d.ts","sourceRoot":"","sources":["../../lib/Auth/setAuthProviders.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAKzC,OAAO,EAAE,gBAAgB,EAA6B,MAAM,iBAAiB,CAAC;AAG9E,OAAO,EAA0B,WAAW,EAAsB,MAAM,eAAe,CAAC;AACxF,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAMnC,eAAO,MAAM,4BAA4B,QAAS,SAAS,WAAW,cAAc,QAAQ,MAAM,SAKjG,CAAA;AAED,wBAAsB,gBAAgB,CAAE,IAAI,EAAE,WAAW,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,iBAuFjH;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,GAAG,SAAS,CAgBzF"}
@@ -11,6 +11,7 @@ const FileManager_1 = require("../FileManager/FileManager");
11
11
  const AuthHandler_1 = require("./AuthHandler");
12
12
  const setEmailProvider_1 = require("./setEmailProvider");
13
13
  /** For some reason normal import is undefined */
14
+ // const passport = require("passport") as typeof import("passport");
14
15
  const passport = require("passport");
15
16
  const upsertNamedExpressMiddleware = (app, handler, name) => {
16
17
  const funcName = name;
@@ -1 +1 @@
1
- {"version":3,"file":"setAuthProviders.js","sourceRoot":"","sources":["../../lib/Auth/setAuthProviders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setAuthProviders.js","sourceRoot":"","sources":["../../lib/Auth/setAuthProviders.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setEmailProvider.d.ts","sourceRoot":"","sources":["../../lib/Auth/setEmailProvider.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,SAAS,CAAC;AACxB,OAAO,EAA0B,WAAW,EAAa,MAAM,eAAe,CAAC;AAK/E,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,iBA4DvE"}
1
+ {"version":3,"file":"setEmailProvider.d.ts","sourceRoot":"","sources":["../../lib/Auth/setEmailProvider.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,SAAS,CAAC;AACxB,OAAO,EAA0B,WAAW,EAAa,MAAM,eAAe,CAAC;AAK/E,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,iBAuEvE"}
@@ -11,6 +11,17 @@ async function setEmailProvider(app) {
11
11
  if (websiteUrl) {
12
12
  await checkDmarc(websiteUrl);
13
13
  }
14
+ /**
15
+ * Setup nodemailer transporters
16
+ */
17
+ if (email.signupType === "withPassword") {
18
+ if (email.emailConfirmation) {
19
+ tryGetTransporter(email.emailConfirmation.smtp);
20
+ }
21
+ }
22
+ else {
23
+ tryGetTransporter(email.emailMagicLink.smtp);
24
+ }
14
25
  app.post(AuthHandler_1.AUTH_ROUTES_AND_PARAMS.emailSignup, async (req, res) => {
15
26
  const { username, password } = req.body;
16
27
  let validationError = "";
@@ -83,4 +94,12 @@ const checkDmarc = async (websiteUrl) => {
83
94
  console.log("DMARC set to reject");
84
95
  }
85
96
  };
97
+ const tryGetTransporter = (smtp) => {
98
+ try {
99
+ (0, sendEmail_1.getOrSetTransporter)(smtp);
100
+ }
101
+ catch (err) {
102
+ console.error("Failed to set email transporter", err);
103
+ }
104
+ };
86
105
  //# sourceMappingURL=setEmailProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setEmailProvider.js","sourceRoot":"","sources":["../../lib/Auth/setEmailProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setEmailProvider.js","sourceRoot":"","sources":["../../lib/Auth/setEmailProvider.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Email, SMTPConfig } from "./AuthTypes";
2
2
  import nodemailer from "nodemailer";
3
- import aws from "@aws-sdk/client-ses";
3
+ import * as aws from "@aws-sdk/client-ses";
4
4
  import SESTransport from "nodemailer/lib/ses-transport";
5
5
 
6
6
  type SESTransporter = nodemailer.Transporter<SESTransport.SentMessageInfo, SESTransport.Options>;
@@ -14,13 +14,17 @@ const transporterCache: Map<string, Transporter> = new Map();
14
14
  * https://www.nodemailer.com/transports/ses/
15
15
  */
16
16
  export const sendEmail = (smptConfig: SMTPConfig, email: Email) => {
17
+ const transporter = getOrSetTransporter(smptConfig);
18
+ return send(transporter, email);
19
+ }
20
+
21
+ export const getOrSetTransporter = (smptConfig: SMTPConfig) => {
17
22
  const configStr = JSON.stringify(smptConfig);
18
23
  const transporter = transporterCache.get(configStr) ?? getTransporter(smptConfig);
19
24
  if(!transporterCache.has(configStr)){
20
25
  transporterCache.set(configStr, transporter);
21
26
  }
22
-
23
- return send(transporter, email);
27
+ return transporter;
24
28
  }
25
29
 
26
30
  const getTransporter = (smptConfig: SMTPConfig) => {
@@ -11,7 +11,8 @@ import { AUTH_ROUTES_AND_PARAMS, AuthHandler, getLoginClientInfo } from "./AuthH
11
11
  import { Auth } from './AuthTypes';
12
12
  import { setEmailProvider } from "./setEmailProvider";
13
13
  /** For some reason normal import is undefined */
14
- const passport = require("passport") as typeof import("passport");
14
+ // const passport = require("passport") as typeof import("passport");
15
+ import * as passport from "passport";
15
16
 
16
17
  export const upsertNamedExpressMiddleware = (app: e.Express, handler: RequestHandler, name: string) => {
17
18
  const funcName = name;
@@ -1,7 +1,7 @@
1
1
  import e from "express";
2
2
  import { AUTH_ROUTES_AND_PARAMS, AuthHandler, HTTPCODES } from "./AuthHandler";
3
3
  import { Email, SMTPConfig } from "./AuthTypes";
4
- import { sendEmail } from "./sendEmail";
4
+ import { getOrSetTransporter, sendEmail } from "./sendEmail";
5
5
  import { promises } from "node:dns";
6
6
 
7
7
  export async function setEmailProvider(this: AuthHandler, app: e.Express) {
@@ -12,6 +12,17 @@ export async function setEmailProvider(this: AuthHandler, app: e.Express) {
12
12
  await checkDmarc(websiteUrl);
13
13
  }
14
14
 
15
+ /**
16
+ * Setup nodemailer transporters
17
+ */
18
+ if(email.signupType === "withPassword"){
19
+ if(email.emailConfirmation){
20
+ tryGetTransporter(email.emailConfirmation.smtp);
21
+ }
22
+ } else {
23
+ tryGetTransporter(email.emailMagicLink.smtp);
24
+ }
25
+
15
26
  app.post(AUTH_ROUTES_AND_PARAMS.emailSignup, async (req, res) => {
16
27
  const { username, password } = req.body;
17
28
  let validationError = "";
@@ -82,4 +93,12 @@ const checkDmarc = async (websiteUrl: string) => {
82
93
  } else {
83
94
  console.log("DMARC set to reject")
84
95
  }
96
+ }
97
+
98
+ const tryGetTransporter = (smtp: SMTPConfig) => {
99
+ try {
100
+ getOrSetTransporter(smtp);
101
+ } catch(err) {
102
+ console.error("Failed to set email transporter", err);
103
+ }
85
104
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prostgles-server",
3
- "version": "4.2.162",
3
+ "version": "4.2.164",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",