prostgles-server 4.2.156 → 4.2.158

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/Auth/AuthHandler.d.ts +2 -0
  2. package/dist/Auth/AuthHandler.d.ts.map +1 -1
  3. package/dist/Auth/AuthHandler.js +4 -2
  4. package/dist/Auth/AuthHandler.js.map +1 -1
  5. package/dist/Auth/AuthTypes.d.ts +63 -16
  6. package/dist/Auth/AuthTypes.d.ts.map +1 -1
  7. package/dist/Auth/sendEmail.d.ts +7 -0
  8. package/dist/Auth/sendEmail.d.ts.map +1 -0
  9. package/dist/Auth/sendEmail.js +69 -0
  10. package/dist/Auth/sendEmail.js.map +1 -0
  11. package/dist/Auth/setAuthProviders.d.ts +4 -4
  12. package/dist/Auth/setAuthProviders.d.ts.map +1 -1
  13. package/dist/Auth/setAuthProviders.js +30 -52
  14. package/dist/Auth/setAuthProviders.js.map +1 -1
  15. package/dist/Auth/setEmailProvider.d.ts +4 -0
  16. package/dist/Auth/setEmailProvider.d.ts.map +1 -0
  17. package/dist/Auth/setEmailProvider.js +86 -0
  18. package/dist/Auth/setEmailProvider.js.map +1 -0
  19. package/dist/Auth/setupAuthRoutes.js +1 -1
  20. package/dist/Auth/setupAuthRoutes.js.map +1 -1
  21. package/dist/Prostgles.d.ts +1 -0
  22. package/dist/Prostgles.d.ts.map +1 -1
  23. package/dist/Prostgles.js +6 -0
  24. package/dist/Prostgles.js.map +1 -1
  25. package/dist/initProstgles.d.ts.map +1 -1
  26. package/dist/initProstgles.js +2 -6
  27. package/dist/initProstgles.js.map +1 -1
  28. package/lib/Auth/AuthHandler.ts +4 -2
  29. package/lib/Auth/AuthTypes.ts +55 -18
  30. package/lib/Auth/sendEmail.ts +83 -0
  31. package/lib/Auth/setAuthProviders.ts +42 -65
  32. package/lib/Auth/setEmailProvider.ts +85 -0
  33. package/lib/Auth/setupAuthRoutes.ts +1 -1
  34. package/lib/Prostgles.ts +6 -0
  35. package/lib/initProstgles.ts +2 -5
  36. package/package.json +11 -7
  37. package/tests/client/package-lock.json +8 -2689
  38. package/tests/client/package.json +1 -1
  39. package/tests/server/index.ts +5 -3
  40. package/tests/server/package-lock.json +11 -3
@@ -18,6 +18,8 @@ export declare const AUTH_ROUTES_AND_PARAMS: {
18
18
  readonly logoutGetPath: "/logout";
19
19
  readonly magicLinksRoute: "/magic-link";
20
20
  readonly magicLinksExpressRoute: "/magic-link/:id";
21
+ readonly confirmEmail: "/confirm-email";
22
+ readonly confirmEmailExpressRoute: "/confirm-email/:id";
21
23
  readonly catchAll: "*";
22
24
  };
23
25
  export declare class AuthHandler {
@@ -1 +1 @@
1
- {"version":3,"file":"AuthHandler.d.ts","sourceRoot":"","sources":["../../lib/Auth/AuthHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACtH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGrE,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAKrI,eAAO,MAAM,SAAS;;;;;CAKrB,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAS,iBAAiB,KAAG,iBAAiB,GAAG,eAqB/E,CAAA;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;CAUzB,CAAC;AAEX,qBAAa,WAAW;IACtB,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC;IAC/B,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACtB,GAAG,EAAE,eAAe,CAAC;IACrB,EAAE,EAAE,EAAE,CAAC;gBAEK,SAAS,EAAE,SAAS;IAQhC,IAAI,UAAU,WAEb;IAED,WAAW,QAAS,MAAM,GAAG,SAAS,wBAIrC;IAED,YAAY,UAAW,MAAM,GAAG,SAAS,mBAAmB,MAAM,8BAKjE;IAED,WAAW,aAAc,MAAM,aAU9B;IAED,8BAA8B,WAAY;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;KAAE,KAAK;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,GAAG,EAAE,UAAU,CAAA;KAAE,UAkCnH;IAED,OAAO,cAAqB;QAAE,OAAO,EAAE,UAAU,CAAC;KAAE,KAAG,QAAQ,UAAU,CAAC,CAezE;IAED,IAAI,sBAA8B;IAElC,YAAY,QAAS,UAAU,+BAQ9B;IAED,OAAO,aAIN;IAED,aAAa,+DAgCZ;IAED,cAAc,WAAkB,WAAW,UAAU,eAAe,KAAG,QAAQ,YAAY,CAAC,CAqB1F;IAEF,0BAA0B,QAAe,UAAU,OAAO,UAAU,eAAe,WAAW,mBAkB7F;IAGD;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;IA4CpD;;OAEG;IACH,aAAa,gBAAiB,WAAW,GAAG,SAAS,KAAG,MAAM,GAAG,SAAS,CAOzE;IAEK,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAgE9F,oBAAoB,WAAY,YAAY,WAAW,YAAY,KAAG,OAAO,CAc5E;IAED,aAAa,cAAqB,KAAK,WAAW,EAAE,QAAQ,GAAG,SAAS,CAAC;cAAmB,gBAAgB;kBAAY,UAAU;OA6CjI;CACF"}
1
+ {"version":3,"file":"AuthHandler.d.ts","sourceRoot":"","sources":["../../lib/Auth/AuthHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACtH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGrE,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAKrI,eAAO,MAAM,SAAS;;;;;CAKrB,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAS,iBAAiB,KAAG,iBAAiB,GAAG,eAqB/E,CAAA;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;;;CAYzB,CAAC;AAEX,qBAAa,WAAW;IACtB,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC;IAC/B,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACtB,GAAG,EAAE,eAAe,CAAC;IACrB,EAAE,EAAE,EAAE,CAAC;gBAEK,SAAS,EAAE,SAAS;IAQhC,IAAI,UAAU,WAEb;IAED,WAAW,QAAS,MAAM,GAAG,SAAS,wBAIrC;IAED,YAAY,UAAW,MAAM,GAAG,SAAS,mBAAmB,MAAM,8BAKjE;IAED,WAAW,aAAc,MAAM,aAU9B;IAED,8BAA8B,WAAY;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;KAAE,KAAK;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,GAAG,EAAE,UAAU,CAAA;KAAE,UAkCnH;IAED,OAAO,cAAqB;QAAE,OAAO,EAAE,UAAU,CAAC;KAAE,KAAG,QAAQ,UAAU,CAAC,CAezE;IAED,IAAI,sBAA8B;IAElC,YAAY,QAAS,UAAU,+BAQ9B;IAED,OAAO,aAIN;IAED,aAAa,+DAgCZ;IAED,cAAc,WAAkB,WAAW,UAAU,eAAe,KAAG,QAAQ,YAAY,CAAC,CAqB1F;IAEF,0BAA0B,QAAe,UAAU,OAAO,UAAU,eAAe,WAAW,mBAkB7F;IAGD;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;IA4CpD;;OAEG;IACH,aAAa,gBAAiB,WAAW,GAAG,SAAS,KAAG,MAAM,GAAG,SAAS,CAOzE;IAEK,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAgE9F,oBAAoB,WAAY,YAAY,WAAW,YAAY,KAAG,OAAO,CAc5E;IAED,aAAa,cAAqB,KAAK,WAAW,EAAE,QAAQ,GAAG,SAAS,CAAC;cAAmB,gBAAgB;kBAAY,UAAU;OA6CjI;CACF"}
@@ -46,6 +46,8 @@ exports.AUTH_ROUTES_AND_PARAMS = {
46
46
  logoutGetPath: "/logout",
47
47
  magicLinksRoute: "/magic-link",
48
48
  magicLinksExpressRoute: "/magic-link/:id",
49
+ confirmEmail: "/confirm-email",
50
+ confirmEmailExpressRoute: "/confirm-email/:id",
49
51
  catchAll: "*",
50
52
  };
51
53
  class AuthHandler {
@@ -146,8 +148,8 @@ class AuthHandler {
146
148
  };
147
149
  destroy = () => {
148
150
  const app = this.opts?.expressConfig?.app;
149
- const { login, logoutGetPath, magicLinksExpressRoute, catchAll, loginWithProvider, emailSignup, magicLinksRoute } = exports.AUTH_ROUTES_AND_PARAMS;
150
- (0, FileManager_1.removeExpressRoute)(app, [login, logoutGetPath, magicLinksExpressRoute, catchAll, loginWithProvider, emailSignup, magicLinksRoute]);
151
+ const { login, logoutGetPath, magicLinksExpressRoute, catchAll, loginWithProvider, emailSignup, magicLinksRoute, confirmEmail, confirmEmailExpressRoute } = exports.AUTH_ROUTES_AND_PARAMS;
152
+ (0, FileManager_1.removeExpressRoute)(app, [login, logoutGetPath, magicLinksExpressRoute, catchAll, loginWithProvider, emailSignup, magicLinksRoute, confirmEmail, confirmEmailExpressRoute]);
151
153
  };
152
154
  throttledFunc = (func, throttle = 500) => {
153
155
  return new Promise(async (resolve, reject) => {
@@ -1 +1 @@
1
- {"version":3,"file":"AuthHandler.js","sourceRoot":"","sources":["../../lib/Auth/AuthHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthHandler.js","sourceRoot":"","sources":["../../lib/Auth/AuthHandler.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import type { StrategyOptions as GoogleStrategy, Profile as GoogleProfile } from
8
8
  import type { StrategyOptions as GitHubStrategy, Profile as GitHubProfile } from "passport-github2";
9
9
  import type { MicrosoftStrategyOptions } from "passport-microsoft";
10
10
  import type { StrategyOptions as FacebookStrategy, Profile as FacebookProfile } from "passport-facebook";
11
+ import Mail from "nodemailer/lib/mailer";
11
12
  type Awaitable<T> = T | Promise<T>;
12
13
  export type ExpressReq = Request;
13
14
  export type ExpressRes = Response;
@@ -44,26 +45,70 @@ type ThirdPartyProviders = {
44
45
  authOpts?: AuthenticateOptions;
45
46
  };
46
47
  };
47
- type SMTPConfig = {
48
- type: "aws-ses" | "smtp";
48
+ export type SMTPConfig = {
49
+ type: "smtp";
49
50
  host: string;
50
51
  port: number;
51
52
  secure: boolean;
52
- auth: {
53
- user: string;
54
- pass: string;
55
- };
53
+ user: string;
54
+ pass: string;
55
+ } | {
56
+ type: "aws-ses";
57
+ region: string;
58
+ accessKeyId: string;
59
+ secretAccessKey: string;
60
+ /**
61
+ * Sending rate per second
62
+ * Defaults to 1
63
+ */
64
+ sendingRate?: number;
65
+ };
66
+ export type Email = {
67
+ from: string;
68
+ to: string;
69
+ subject: string;
70
+ html: string;
71
+ text?: string;
72
+ attachments?: {
73
+ filename: string;
74
+ content: string;
75
+ }[] | Mail.Attachment[];
56
76
  };
57
- type RegistrationProviders = ThirdPartyProviders & {
58
- email?: {
59
- signupType: "withMagicLink" | "withPassword";
77
+ type EmailWithoutTo = Omit<Email, "to">;
78
+ type EmailProvider = {
79
+ signupType: "withMagicLink";
80
+ onRegistered: (data: {
81
+ username: string;
82
+ }) => void | Promise<void>;
83
+ emailMagicLink: {
84
+ onSend: (data: {
85
+ email: string;
86
+ magicLinkPath: string;
87
+ }) => EmailWithoutTo | Promise<EmailWithoutTo>;
60
88
  smtp: SMTPConfig;
61
- } | {
62
- signupType: "withPassword";
63
- /**
64
- * If provided, the user will be required to confirm their email address
65
- */
66
- smtp?: SMTPConfig;
89
+ };
90
+ } | {
91
+ signupType: "withPassword";
92
+ onRegistered: (data: {
93
+ username: string;
94
+ password: string;
95
+ }) => void | Promise<void>;
96
+ /**
97
+ * Defaults to 8
98
+ */
99
+ minPasswordLength: number;
100
+ /**
101
+ * If provided, the user will be required to confirm their email address
102
+ */
103
+ emailConfirmation?: {
104
+ onSend: (data: {
105
+ email: string;
106
+ confirmationUrlPath: string;
107
+ }) => EmailWithoutTo | Promise<EmailWithoutTo>;
108
+ smtp: SMTPConfig;
109
+ onConfirmed: (data: {
110
+ confirmationUrlPath: string;
111
+ }) => void | Promise<void>;
67
112
  };
68
113
  };
69
114
  export type AuthProviderUserData = {
@@ -94,7 +139,9 @@ export type RegistrationData = {
94
139
  password: string;
95
140
  };
96
141
  } | AuthProviderUserData;
97
- export type AuthRegistrationConfig<S> = RegistrationProviders & {
142
+ export type AuthRegistrationConfig<S> = {
143
+ email?: EmailProvider;
144
+ OAuthProviders?: ThirdPartyProviders;
98
145
  /**
99
146
  * Required for social login callback
100
147
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AuthTypes.d.ts","sourceRoot":"","sources":["../../lib/Auth/AuthTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthTypes.d.ts","sourceRoot":"","sources":["../../lib/Auth/AuthTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Email, SMTPConfig } from "./AuthTypes";
2
+ /**
3
+ * Allows sending emails using nodemailer default config or AWS SES
4
+ * https://www.nodemailer.com/transports/ses/
5
+ */
6
+ export declare const sendEmail: (smptConfig: SMTPConfig, email: Email) => Promise<unknown>;
7
+ //# sourceMappingURL=sendEmail.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendEmail = void 0;
4
+ const nodemailer_1 = require("nodemailer");
5
+ const client_ses_1 = require("@aws-sdk/client-ses");
6
+ const transporterCache = new Map();
7
+ /**
8
+ * Allows sending emails using nodemailer default config or AWS SES
9
+ * https://www.nodemailer.com/transports/ses/
10
+ */
11
+ const sendEmail = (smptConfig, email) => {
12
+ const configStr = JSON.stringify(smptConfig);
13
+ const transporter = transporterCache.get(configStr) ?? getTransporter(smptConfig);
14
+ if (!transporterCache.has(configStr)) {
15
+ transporterCache.set(configStr, transporter);
16
+ }
17
+ return send(transporter, email);
18
+ };
19
+ exports.sendEmail = sendEmail;
20
+ const getTransporter = (smptConfig) => {
21
+ let transporter;
22
+ if (smptConfig.type === "aws-ses") {
23
+ const { region, accessKeyId, secretAccessKey,
24
+ /**
25
+ * max 1 messages/second
26
+ */
27
+ sendingRate = 1 } = smptConfig;
28
+ const ses = new client_ses_1.default.SES({
29
+ apiVersion: "2010-12-01",
30
+ region,
31
+ credentials: {
32
+ accessKeyId,
33
+ secretAccessKey
34
+ }
35
+ });
36
+ transporter = nodemailer_1.default.createTransport({
37
+ SES: { ses, aws: client_ses_1.default },
38
+ maxConnections: 1,
39
+ sendingRate
40
+ });
41
+ }
42
+ else {
43
+ const { user, pass, host, port, secure } = smptConfig;
44
+ transporter = nodemailer_1.default.createTransport({
45
+ host,
46
+ port,
47
+ secure,
48
+ auth: { user, pass }
49
+ });
50
+ }
51
+ return transporter;
52
+ };
53
+ const send = (transporter, email) => {
54
+ return new Promise((resolve, reject) => {
55
+ transporter.once('idle', () => {
56
+ if (transporter.isIdle()) {
57
+ transporter.sendMail(email, (err, info) => {
58
+ if (err) {
59
+ reject(err);
60
+ }
61
+ else {
62
+ resolve(info);
63
+ }
64
+ });
65
+ }
66
+ });
67
+ });
68
+ };
69
+ //# sourceMappingURL=sendEmail.js.map
@@ -0,0 +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,11 +1,11 @@
1
1
  /// <reference types="express-serve-static-core" />
2
2
  /// <reference types="passport" />
3
- import { Auth } from './AuthTypes';
4
- import { AuthSocketSchema } from "prostgles-types";
5
- import { AuthHandler } from "./AuthHandler";
6
3
  import type e from "express";
7
4
  import { RequestHandler } from "express";
5
+ import { AuthSocketSchema } from "prostgles-types";
6
+ import { AuthHandler } from "./AuthHandler";
7
+ import { Auth } from './AuthTypes';
8
8
  export declare const upsertNamedExpressMiddleware: (app: e.Express, handler: RequestHandler, name: string) => void;
9
- export declare function setAuthProviders(this: AuthHandler, { registrations, app }: Required<Auth>["expressConfig"]): void;
9
+ export declare function setAuthProviders(this: AuthHandler, { registrations, app }: Required<Auth>["expressConfig"]): Promise<void>;
10
10
  export declare function getProviders(this: AuthHandler): AuthSocketSchema["providers"] | undefined;
11
11
  //# sourceMappingURL=setAuthProviders.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setAuthProviders.d.ts","sourceRoot":"","sources":["../../lib/Auth/setAuthProviders.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAOnC,OAAO,EAAE,gBAAgB,EAA+B,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAA0B,WAAW,EAAsB,MAAM,eAAe,CAAC;AACxF,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAKzC,eAAO,MAAM,4BAA4B,QAAS,SAAS,WAAW,cAAc,QAAQ,MAAM,SAKjG,CAAA;AAED,wBAAgB,gBAAgB,CAAE,IAAI,EAAE,WAAW,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,QA2G3G;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,GAAG,SAAS,CAoBzF"}
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,iBAwFjH;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,GAAG,SAAS,CAgBzF"}
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getProviders = exports.setAuthProviders = exports.upsertNamedExpressMiddleware = void 0;
4
- /** For some reason normal import is undefined */
5
- const passport = require("passport");
6
- const passport_google_oauth20_1 = require("passport-google-oauth20");
4
+ const passport_facebook_1 = require("passport-facebook");
7
5
  const passport_github2_1 = require("passport-github2");
6
+ const passport_google_oauth20_1 = require("passport-google-oauth20");
8
7
  const passport_microsoft_1 = require("passport-microsoft");
9
- const passport_facebook_1 = require("passport-facebook");
10
8
  const prostgles_types_1 = require("prostgles-types");
11
- const AuthHandler_1 = require("./AuthHandler");
12
- const FileManager_1 = require("../FileManager/FileManager");
13
9
  const dboBuilderUtils_1 = require("../DboBuilder/dboBuilderUtils");
10
+ const FileManager_1 = require("../FileManager/FileManager");
11
+ const AuthHandler_1 = require("./AuthHandler");
12
+ const setEmailProvider_1 = require("./setEmailProvider");
13
+ /** For some reason normal import is undefined */
14
+ const passport = require("passport");
14
15
  const upsertNamedExpressMiddleware = (app, handler, name) => {
15
16
  const funcName = name;
16
17
  Object.defineProperty(handler, "name", { value: funcName });
@@ -18,47 +19,25 @@ const upsertNamedExpressMiddleware = (app, handler, name) => {
18
19
  app.use(handler);
19
20
  };
20
21
  exports.upsertNamedExpressMiddleware = upsertNamedExpressMiddleware;
21
- function setAuthProviders({ registrations, app }) {
22
+ async function setAuthProviders({ registrations, app }) {
22
23
  if (!registrations)
23
24
  return;
24
- const { email, onRegister, onProviderLoginFail, onProviderLoginStart, websiteUrl, ...providers } = registrations;
25
- if (email) {
26
- app.post(AuthHandler_1.AUTH_ROUTES_AND_PARAMS.emailSignup, async (req, res) => {
27
- const { username, password } = req.body;
28
- if (typeof username !== "string" || typeof password !== "string") {
29
- res.status(400).json({ msg: "Invalid username or password" });
30
- return;
31
- }
32
- await onRegister({ provider: "email", profile: { username, password } });
33
- });
34
- }
35
- if (!(0, prostgles_types_1.isEmpty)(providers)) {
36
- (0, exports.upsertNamedExpressMiddleware)(app, passport.initialize(), "prostglesPassportMiddleware");
25
+ const { onRegister, onProviderLoginFail, onProviderLoginStart, websiteUrl, OAuthProviders } = registrations;
26
+ await setEmailProvider_1.setEmailProvider.bind(this)(app);
27
+ if (!OAuthProviders || (0, prostgles_types_1.isEmpty)(OAuthProviders)) {
28
+ return;
37
29
  }
38
- ([
39
- providers.google && {
40
- providerName: "google",
41
- config: providers.google,
42
- strategy: passport_google_oauth20_1.Strategy,
43
- },
44
- providers.github && {
45
- providerName: "github",
46
- config: providers.github,
47
- strategy: passport_github2_1.Strategy,
48
- },
49
- providers.facebook && {
50
- providerName: "facebook",
51
- config: providers.facebook,
52
- strategy: passport_facebook_1.Strategy,
53
- },
54
- providers.microsoft && {
55
- providerName: "microsoft",
56
- config: providers.microsoft,
57
- strategy: passport_microsoft_1.Strategy,
30
+ (0, exports.upsertNamedExpressMiddleware)(app, passport.initialize(), "prostglesPassportMiddleware");
31
+ (0, prostgles_types_1.getObjectEntries)(OAuthProviders).forEach(([providerName, providerConfig]) => {
32
+ if (!providerConfig?.clientID) {
33
+ return;
58
34
  }
59
- ])
60
- .filter(prostgles_types_1.isDefined)
61
- .forEach(({ config: { authOpts, ...config }, strategy, providerName, }) => {
35
+ const { authOpts, ...config } = providerConfig;
36
+ const strategy = providerName === "google" ? passport_google_oauth20_1.Strategy :
37
+ providerName === "github" ? passport_github2_1.Strategy :
38
+ providerName === "facebook" ? passport_facebook_1.Strategy :
39
+ providerName === "microsoft" ? passport_microsoft_1.Strategy :
40
+ undefined;
62
41
  const callbackPath = `${AuthHandler_1.AUTH_ROUTES_AND_PARAMS.loginWithProvider}/${providerName}/callback`;
63
42
  passport.use(new strategy({
64
43
  ...config,
@@ -74,7 +53,8 @@ function setAuthProviders({ registrations, app }) {
74
53
  const clientInfo = (0, AuthHandler_1.getLoginClientInfo)({ httpReq: req });
75
54
  const db = this.db;
76
55
  const dbo = this.dbo;
77
- const startCheck = await onProviderLoginStart({ provider: providerName, req, res, clientInfo, db, dbo });
56
+ const args = { provider: providerName, req, res, clientInfo, db, dbo };
57
+ const startCheck = await onProviderLoginStart(args);
78
58
  if ("error" in startCheck) {
79
59
  res.status(500).json({ error: startCheck.error });
80
60
  return;
@@ -85,7 +65,7 @@ function setAuthProviders({ registrations, app }) {
85
65
  failWithError: true,
86
66
  }, async (error, _profile, authInfo) => {
87
67
  if (error) {
88
- await onProviderLoginFail({ provider: providerName, error, req, res, clientInfo, db, dbo });
68
+ await onProviderLoginFail({ ...args, error });
89
69
  res.status(500).json({
90
70
  error: "Failed to login with provider",
91
71
  });
@@ -98,7 +78,7 @@ function setAuthProviders({ registrations, app }) {
98
78
  }
99
79
  })(req, res);
100
80
  }
101
- catch (e) {
81
+ catch (_e) {
102
82
  res.status(500).json({ error: "Something went wrong" });
103
83
  }
104
84
  });
@@ -109,14 +89,12 @@ function getProviders() {
109
89
  const { registrations } = this.opts?.expressConfig ?? {};
110
90
  if (!registrations)
111
91
  return undefined;
112
- const {
113
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
114
- email, websiteUrl, onRegister, onProviderLoginFail, onProviderLoginStart, ...providers } = registrations;
115
- if ((0, prostgles_types_1.isEmpty)(providers))
92
+ const { OAuthProviders } = registrations;
93
+ if (!OAuthProviders || (0, prostgles_types_1.isEmpty)(OAuthProviders))
116
94
  return undefined;
117
95
  const result = {};
118
- (0, prostgles_types_1.getKeys)(providers).forEach(providerName => {
119
- if (providers[providerName]?.clientID) {
96
+ (0, prostgles_types_1.getObjectEntries)(OAuthProviders).forEach(([providerName, config]) => {
97
+ if (config?.clientID) {
120
98
  result[providerName] = {
121
99
  url: `${AuthHandler_1.AUTH_ROUTES_AND_PARAMS.loginWithProvider}/${providerName}`,
122
100
  };
@@ -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":";;;AAEA,yDAAiE;AACjE,uDAA8D;AAC9D,qEAAqE;AACrE,2DAAmE;AACnE,qDAA8E;AAC9E,mEAAiE;AACjE,4DAAsE;AACtE,+CAAwF;AAExF,yDAAsD;AACtD,iDAAiD;AACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAA8B,CAAC;AAE3D,MAAM,4BAA4B,GAAG,CAAC,GAAc,EAAE,OAAuB,EAAE,IAAY,EAAE,EAAE;IACpG,MAAM,QAAQ,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5D,IAAA,sCAAwB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACpC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACnB,CAAC,CAAA;AALY,QAAA,4BAA4B,gCAKxC;AAEM,KAAK,UAAU,gBAAgB,CAAqB,EAAE,aAAa,EAAE,GAAG,EAAmC;IAChH,IAAG,CAAC,aAAa;QAAE,OAAO;IAC1B,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC;IAE5G,MAAM,mCAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAEvC,IAAG,CAAC,cAAc,IAAI,IAAA,yBAAO,EAAC,cAAc,CAAC,EAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IAED,IAAA,oCAA4B,EAAC,GAAG,EAAE,QAAQ,CAAC,UAAU,EAAE,EAAE,6BAA6B,CAAC,CAAC;IAExF,IAAA,kCAAgB,EAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,EAAE;QAE1E,IAAG,CAAC,cAAc,EAAE,QAAQ,EAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,cAAc,CAAC;QAE/C,MAAM,QAAQ,GAAG,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,kCAAc,CAAC,CAAC;YAC3D,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,2BAAc,CAAC,CAAC;gBAC5C,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,4BAAgB,CAAC,CAAC;oBAChD,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC,6BAAiB,CAAC,CAAC;wBAClD,SAAS,CACV;QAED,MAAM,YAAY,GAAG,GAAG,oCAAsB,CAAC,iBAAiB,IAAI,YAAY,WAAW,CAAC;QAC5F,QAAQ,CAAC,GAAG,CACV,IAAK,QAAkC,CACrC;YACE,GAAG,MAAM;YACT,WAAW,EAAE,GAAG,UAAU,GAAG,YAAY,EAAE;SAC5C,EACD,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;YACjD,0FAA0F;YAC1F,MAAM,UAAU,CAAC,EAAE,QAAQ,EAAE,YAAwB,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;YAC7F,OAAO,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC,CACF,CACF,CAAC;QAEF,GAAG,CAAC,GAAG,CAAC,GAAG,oCAAsB,CAAC,iBAAiB,IAAI,YAAY,EAAE,EACnE,QAAQ,CAAC,YAAY,CAAC,YAAY,EAAE,QAAQ,IAAI,EAAE,CAAC,CACpD,CAAC;QAEF,GAAG,CAAC,GAAG,CACL,YAAY,EACZ,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACjB,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,IAAA,gCAAkB,EAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;gBACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;gBACnB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAU,CAAC;gBAC5B,MAAM,IAAI,GAAG,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;gBACvE,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,CAAC;gBACpD,IAAG,OAAO,IAAI,UAAU,EAAC,CAAC;oBACxB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;oBAClD,OAAO;gBACT,CAAC;gBACD,QAAQ,CAAC,YAAY,CACnB,YAAY,EACZ;oBACE,OAAO,EAAE,KAAK;oBACd,eAAe,EAAE,QAAQ;oBACzB,aAAa,EAAE,IAAI;iBACpB,EACD,KAAK,EAAE,KAAU,EAAE,QAAa,EAAE,QAAa,EAAE,EAAE;oBACjD,IAAG,KAAK,EAAC,CAAC;wBACR,MAAM,mBAAmB,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;wBAC9C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;4BACnB,KAAK,EAAE,+BAA+B;yBACvC,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,QAAQ,EAAE,CAAC;6BACnG,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE;4BAChB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAA,kCAAgB,EAAC,CAAC,CAAC,CAAC,CAAC;wBAC5C,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CACF,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAEd,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CACF,CAAC;IAEJ,CAAC,CAAC,CAAC;AACL,CAAC;AAxFD,4CAwFC;AAED,SAAgB,YAAY;IAC1B,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,aAAa,IAAI,EAAE,CAAA;IACxD,IAAG,CAAC,aAAa;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,EAAG,cAAc,EAAE,GAAG,aAAa,CAAC;IAC1C,IAAG,CAAC,cAAc,IAAI,IAAA,yBAAO,EAAC,cAAc,CAAC;QAAE,OAAO,SAAS,CAAC;IAEhE,MAAM,MAAM,GAAkC,EAAE,CAAA;IAChD,IAAA,kCAAgB,EAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,EAAE;QAClE,IAAG,MAAM,EAAE,QAAQ,EAAC,CAAC;YACnB,MAAM,CAAC,YAAY,CAAC,GAAG;gBACrB,GAAG,EAAE,GAAG,oCAAsB,CAAC,iBAAiB,IAAI,YAAY,EAAE;aACnE,CAAA;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAhBD,oCAgBC"}
@@ -0,0 +1,4 @@
1
+ import e from "express";
2
+ import { AuthHandler } from "./AuthHandler";
3
+ export declare function setEmailProvider(this: AuthHandler, app: e.Express): Promise<void>;
4
+ //# sourceMappingURL=setEmailProvider.d.ts.map
@@ -0,0 +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,EAAE,MAAM,eAAe,CAAC;AAKpE,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,iBA4DvE"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setEmailProvider = void 0;
4
+ const AuthHandler_1 = require("./AuthHandler");
5
+ const sendEmail_1 = require("./sendEmail");
6
+ const node_dns_1 = require("node:dns");
7
+ async function setEmailProvider(app) {
8
+ const { email, websiteUrl } = this.opts?.expressConfig?.registrations ?? {};
9
+ if (!email)
10
+ return;
11
+ if (websiteUrl) {
12
+ await checkDmarc(websiteUrl);
13
+ }
14
+ app.post(AuthHandler_1.AUTH_ROUTES_AND_PARAMS.emailSignup, async (req, res) => {
15
+ const { username, password } = req.body;
16
+ let validationError = "";
17
+ if (typeof username !== "string") {
18
+ validationError = "Invalid username";
19
+ }
20
+ if (email.signupType === "withPassword") {
21
+ const { minPasswordLength = 8 } = email;
22
+ if (typeof password !== "string") {
23
+ validationError = "Invalid password";
24
+ }
25
+ else if (password.length < minPasswordLength) {
26
+ validationError = `Password must be at least ${minPasswordLength} characters long`;
27
+ }
28
+ }
29
+ if (validationError) {
30
+ res.status(400).json({ error: validationError });
31
+ return;
32
+ }
33
+ try {
34
+ let emailMessage;
35
+ if (email.signupType === "withPassword") {
36
+ if (email.emailConfirmation) {
37
+ const { onSend, smtp } = email.emailConfirmation;
38
+ const message = await onSend({ email: username, confirmationUrlPath: `${websiteUrl}${AuthHandler_1.AUTH_ROUTES_AND_PARAMS.confirmEmail}` });
39
+ emailMessage = { message: { ...message, to: username }, smtp };
40
+ }
41
+ }
42
+ else {
43
+ const { emailMagicLink } = email;
44
+ const message = await emailMagicLink.onSend({ email: username, magicLinkPath: `${websiteUrl}${AuthHandler_1.AUTH_ROUTES_AND_PARAMS.magicLinksRoute}` });
45
+ emailMessage = { message: { ...message, to: username }, smtp: emailMagicLink.smtp };
46
+ }
47
+ if (emailMessage) {
48
+ await (0, sendEmail_1.sendEmail)(emailMessage.smtp, emailMessage.message);
49
+ res.json({ msg: "Email sent" });
50
+ }
51
+ }
52
+ catch {
53
+ res.status(500).json({ error: "Failed to send email" });
54
+ }
55
+ });
56
+ if (email.signupType === "withPassword" && email.emailConfirmation) {
57
+ app.get(AuthHandler_1.AUTH_ROUTES_AND_PARAMS.confirmEmailExpressRoute, async (req, res) => {
58
+ const { id } = req.params ?? {};
59
+ try {
60
+ await email.emailConfirmation?.onConfirmed({ confirmationUrlPath: id });
61
+ res.json({ msg: "Email confirmed" });
62
+ }
63
+ catch (_e) {
64
+ res.status(500).json({ error: "Failed to confirm email" });
65
+ }
66
+ });
67
+ }
68
+ }
69
+ exports.setEmailProvider = setEmailProvider;
70
+ const checkDmarc = async (websiteUrl) => {
71
+ const { host } = new URL(websiteUrl);
72
+ const ignoredHosts = ["localhost", "127.0.0.1"];
73
+ if (!host || ignoredHosts.includes(host)) {
74
+ return;
75
+ }
76
+ const dmarc = await node_dns_1.promises.resolveTxt(`_dmarc.${host}`);
77
+ const dmarkTxt = dmarc[0]?.[0];
78
+ if (!dmarkTxt?.includes("v=DMARC1") ||
79
+ (!dmarkTxt?.includes("p=reject") && !dmarkTxt?.includes("p=quarantine"))) {
80
+ throw new Error("DMARC not set to reject/quarantine");
81
+ }
82
+ else {
83
+ console.log("DMARC set to reject");
84
+ }
85
+ };
86
+ //# sourceMappingURL=setEmailProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setEmailProvider.js","sourceRoot":"","sources":["../../lib/Auth/setEmailProvider.ts"],"names":[],"mappings":"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"}