@brightchain/brightchain-api-lib 0.29.11 → 0.29.14
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/package.json +3 -3
- package/src/lib/application.d.ts.map +1 -1
- package/src/lib/application.js +42 -26
- package/src/lib/application.js.map +1 -1
- package/src/lib/enumerations/email-services.d.ts +7 -0
- package/src/lib/enumerations/email-services.d.ts.map +1 -0
- package/src/lib/enumerations/email-services.js +11 -0
- package/src/lib/enumerations/email-services.js.map +1 -0
- package/src/lib/environment.d.ts +32 -7
- package/src/lib/environment.d.ts.map +1 -1
- package/src/lib/environment.js +55 -21
- package/src/lib/environment.js.map +1 -1
- package/src/lib/interfaces/environment.d.ts +5 -0
- package/src/lib/interfaces/environment.d.ts.map +1 -1
- package/src/lib/interfaces/index.d.ts +1 -0
- package/src/lib/interfaces/index.d.ts.map +1 -1
- package/src/lib/interfaces/postfix-email-service-config.d.ts +29 -0
- package/src/lib/interfaces/postfix-email-service-config.d.ts.map +1 -0
- package/src/lib/interfaces/postfix-email-service-config.js +3 -0
- package/src/lib/interfaces/postfix-email-service-config.js.map +1 -0
- package/src/lib/routers/api.d.ts.map +1 -1
- package/src/lib/routers/api.js +2 -2
- package/src/lib/routers/api.js.map +1 -1
- package/src/lib/services/auth.d.ts +4 -4
- package/src/lib/services/auth.d.ts.map +1 -1
- package/src/lib/services/auth.js +6 -2
- package/src/lib/services/auth.js.map +1 -1
- package/src/lib/services/emailGateway/emailGatewayConfig.d.ts +60 -2
- package/src/lib/services/emailGateway/emailGatewayConfig.d.ts.map +1 -1
- package/src/lib/services/emailGateway/emailGatewayConfig.js +73 -1
- package/src/lib/services/emailGateway/emailGatewayConfig.js.map +1 -1
- package/src/lib/services/emailGateway/index.d.ts +1 -0
- package/src/lib/services/emailGateway/index.d.ts.map +1 -1
- package/src/lib/services/emailGateway/index.js +1 -0
- package/src/lib/services/emailGateway/index.js.map +1 -1
- package/src/lib/services/emailGateway/testModeTransports.d.ts +106 -0
- package/src/lib/services/emailGateway/testModeTransports.d.ts.map +1 -0
- package/src/lib/services/emailGateway/testModeTransports.js +174 -0
- package/src/lib/services/emailGateway/testModeTransports.js.map +1 -0
- package/src/lib/services/index.d.ts +2 -1
- package/src/lib/services/index.d.ts.map +1 -1
- package/src/lib/services/index.js +2 -1
- package/src/lib/services/index.js.map +1 -1
- package/src/lib/services/postfixEmail.d.ts +91 -0
- package/src/lib/services/postfixEmail.d.ts.map +1 -0
- package/src/lib/services/postfixEmail.js +184 -0
- package/src/lib/services/postfixEmail.js.map +1 -0
- package/src/lib/services/{email.d.ts → sesEmail.d.ts} +3 -3
- package/src/lib/services/sesEmail.d.ts.map +1 -0
- package/src/lib/services/{email.js → sesEmail.js} +4 -4
- package/src/lib/services/sesEmail.js.map +1 -0
- package/src/lib/services/email.d.ts.map +0 -1
- package/src/lib/services/email.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,SAAS,CAAC;AAC7B,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,iCAAiC,CAAC;AACrD,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,kCAAkC,CAAC;AACtD,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,WAAW,CAAC;AAC/B,mBAAmB,gCAAgC,CAAC;AACpD,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,qBAAqB,CAAC;AAGzC,mBAAmB,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,SAAS,CAAC;AAC7B,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,iCAAiC,CAAC;AACrD,mBAAmB,gCAAgC,CAAC;AACpD,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,kCAAkC,CAAC;AACtD,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,WAAW,CAAC;AAC/B,mBAAmB,gCAAgC,CAAC;AACpD,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,qBAAqB,CAAC;AAGzC,mBAAmB,cAAc,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration options for PostfixEmailService.
|
|
3
|
+
*/
|
|
4
|
+
export interface IPostfixEmailServiceConfig {
|
|
5
|
+
/** Postfix SMTP host (default: from gateway config or 'localhost') */
|
|
6
|
+
host?: string;
|
|
7
|
+
/** Postfix SMTP port (default: from gateway config or 25) */
|
|
8
|
+
port?: number;
|
|
9
|
+
/** Optional SMTP authentication credentials */
|
|
10
|
+
auth?: {
|
|
11
|
+
user: string;
|
|
12
|
+
pass: string;
|
|
13
|
+
};
|
|
14
|
+
/** Sender email address (required) */
|
|
15
|
+
emailSender: string;
|
|
16
|
+
/** Whether to disable email sending (for testing) */
|
|
17
|
+
disableEmailSend?: boolean;
|
|
18
|
+
/** Enable debug logging */
|
|
19
|
+
debug?: boolean;
|
|
20
|
+
/** Connection timeout in milliseconds (default: 10000) */
|
|
21
|
+
connectionTimeout?: number;
|
|
22
|
+
/** Socket timeout in milliseconds (default: 10000) */
|
|
23
|
+
socketTimeout?: number;
|
|
24
|
+
/** Use TLS (default: false for local Postfix) */
|
|
25
|
+
secure?: boolean;
|
|
26
|
+
/** Ignore TLS certificate errors (default: true for local dev) */
|
|
27
|
+
ignoreTLS?: boolean;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=postfix-email-service-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postfix-email-service-config.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/interfaces/postfix-email-service-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,IAAI,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kEAAkE;IAClE,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postfix-email-service-config.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/interfaces/postfix-email-service-config.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":"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"}
|
package/src/lib/routers/api.js
CHANGED
|
@@ -25,7 +25,7 @@ const scbl_1 = require("../controllers/api/scbl");
|
|
|
25
25
|
const sync_1 = require("../controllers/api/sync");
|
|
26
26
|
const unifiedNotifications_1 = require("../controllers/api/unifiedNotifications");
|
|
27
27
|
const user_1 = require("../controllers/api/user");
|
|
28
|
-
const
|
|
28
|
+
const sesEmail_1 = require("../services/sesEmail");
|
|
29
29
|
/**
|
|
30
30
|
* Router for the API.
|
|
31
31
|
*
|
|
@@ -71,7 +71,7 @@ class ApiRouter extends node_express_suite_1.BrightDbApiRouter {
|
|
|
71
71
|
constructor(application) {
|
|
72
72
|
super(application);
|
|
73
73
|
this.brightchainApplication = application;
|
|
74
|
-
this.emailService = new
|
|
74
|
+
this.emailService = new sesEmail_1.SESEmailService(application);
|
|
75
75
|
this.keyWrappingService = new node_express_suite_2.KeyWrappingService();
|
|
76
76
|
const config = {
|
|
77
77
|
curveName: appConstants_1.AppConstants.ECIES.CURVE_NAME,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":";;;AAqBA,wEAA4F;AAE5F,oEAA2E;AAC3E,4EAE6C;AAC7C,kDAA+C;AAG/C,sDAA6D;AAC7D,4DAMsC;AACtC,8DAAqE;AAErE,gDAAuD;AACvD,0DAAgE;AAChE,oEAA0E;AAC1E,kDAAyD;AACzD,sDAA4D;AAC5D,sDAA6D;AAC7D,sDAA4D;AAC5D,sDAA6D;AAC7D,kDAAyD;AACzD,oEAG0C;AAC1C,0DAAiE;AACjE,oDAA2D;AAC3D,sDAA6D;AAC7D,kDAAyD;AACzD,kDAAyD;AACzD,kFAAwF;AACxF,kDAAyD;AAEzD,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Member, PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
1
|
+
import { EnergyAccountStore, MemberStore } from '@brightchain/brightchain-lib';
|
|
3
2
|
import { BrightDbAuthService } from '@brightchain/node-express-suite';
|
|
3
|
+
import { Member, PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
4
|
+
import { IEmailService } from '@digitaldefiance/node-express-suite';
|
|
4
5
|
import { IRequestUserDTO } from '@digitaldefiance/suite-core-lib';
|
|
5
6
|
import { IBrightChainApplication } from '../interfaces/application';
|
|
6
7
|
import { DefaultBackendIdType } from '../shared-types';
|
|
7
8
|
import { BrightChainAuthenticationProvider } from './brightchain-authentication-provider';
|
|
8
|
-
import { EmailService } from './email';
|
|
9
9
|
/**
|
|
10
10
|
* BrightChain domain-specific AuthService.
|
|
11
11
|
*
|
|
@@ -16,7 +16,7 @@ import { EmailService } from './email';
|
|
|
16
16
|
export declare class AuthService<TID extends PlatformID = DefaultBackendIdType> extends BrightDbAuthService<TID> {
|
|
17
17
|
private emailService;
|
|
18
18
|
private brightchainApplication;
|
|
19
|
-
constructor(application: IBrightChainApplication<TID>, memberStore: MemberStore, energyStore: EnergyAccountStore, emailService:
|
|
19
|
+
constructor(application: IBrightChainApplication<TID>, memberStore: MemberStore, energyStore: EnergyAccountStore, emailService: IEmailService, jwtSecret: string, authProvider?: BrightChainAuthenticationProvider<TID>);
|
|
20
20
|
/**
|
|
21
21
|
* Override sendWelcomeEmail to use the SES-based EmailService.
|
|
22
22
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAClB,WAAW,EAEZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,mBAAmB,EAEpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAEL,MAAM,EACN,UAAU,EAEX,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,aAAa,EAEd,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,iCAAiC,EAAE,MAAM,uCAAuC,CAAC;AAE1F;;;;;;GAMG;AACH,qBAAa,WAAW,CACtB,GAAG,SAAS,UAAU,GAAG,oBAAoB,CAC7C,SAAQ,mBAAmB,CAAC,GAAG,CAAC;IAChC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,sBAAsB,CAA+B;gBAG3D,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC,EACzC,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,kBAAkB,EAC/B,YAAY,EAAE,aAAa,EAC3B,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,iCAAiC,CAAC,GAAG,CAAC;IAkBvD;;OAEG;cACsB,gBAAgB,CACvC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAyBhB;;;;;;;;;;OAUG;IACY,0BAA0B,CACvC,mBAAmB,EAAE,MAAM,EAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;QACT,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;KACjC,CAAC;CA+LH"}
|
package/src/lib/services/auth.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AuthService = void 0;
|
|
4
4
|
const brightchain_lib_1 = require("@brightchain/brightchain-lib");
|
|
5
|
-
const node_ecies_lib_1 = require("@digitaldefiance/node-ecies-lib");
|
|
6
5
|
const node_express_suite_1 = require("@brightchain/node-express-suite");
|
|
6
|
+
const node_ecies_lib_1 = require("@digitaldefiance/node-ecies-lib");
|
|
7
7
|
const node_express_suite_2 = require("@digitaldefiance/node-express-suite");
|
|
8
8
|
/**
|
|
9
9
|
* BrightChain domain-specific AuthService.
|
|
@@ -19,7 +19,11 @@ class AuthService extends node_express_suite_1.BrightDbAuthService {
|
|
|
19
19
|
// IBrightChainApplication extends IApplication which is compatible with
|
|
20
20
|
// IBrightDbApplication for the fields BrightDbAuthService needs
|
|
21
21
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
22
|
-
super(
|
|
22
|
+
super(
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
24
|
+
application, memberStore, energyStore, jwtSecret,
|
|
25
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
26
|
+
authProvider);
|
|
23
27
|
this.emailService = emailService;
|
|
24
28
|
this.brightchainApplication = application;
|
|
25
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/auth.ts"],"names":[],"mappings":";;;AAAA,kEAKsC;AACtC,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,17 +12,62 @@
|
|
|
12
12
|
* @module emailGatewayConfig
|
|
13
13
|
*/
|
|
14
14
|
import { type ISpamThresholds } from '@brightchain/brightchain-lib';
|
|
15
|
+
/**
|
|
16
|
+
* Test mode configuration for the Email Gateway.
|
|
17
|
+
*
|
|
18
|
+
* When `testMode.enabled` is true, the gateway operates in a localhost-only
|
|
19
|
+
* sandbox that doesn't require real DNS, MX records, or external connectivity.
|
|
20
|
+
*
|
|
21
|
+
* @see Requirement 8.8 — Test mode for local development
|
|
22
|
+
*/
|
|
23
|
+
export interface ITestModeConfig {
|
|
24
|
+
/** Whether test mode is enabled. env: GATEWAY_TEST_MODE. */
|
|
25
|
+
enabled: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* When true, outbound mail is captured to the catchall directory instead
|
|
28
|
+
* of being delivered via SMTP. Useful for inspecting sent messages.
|
|
29
|
+
* env: GATEWAY_TEST_CATCHALL.
|
|
30
|
+
*/
|
|
31
|
+
catchallEnabled: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Directory where caught outbound messages are stored (Maildir format).
|
|
34
|
+
* env: GATEWAY_TEST_CATCHALL_DIR.
|
|
35
|
+
*/
|
|
36
|
+
catchallDirectory: string;
|
|
37
|
+
/**
|
|
38
|
+
* When true, skip DKIM signing (useful when no real key is available).
|
|
39
|
+
* env: GATEWAY_TEST_SKIP_DKIM.
|
|
40
|
+
*/
|
|
41
|
+
skipDkim: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* When true, skip spam filtering (useful when SpamAssassin/Rspamd not running).
|
|
44
|
+
* env: GATEWAY_TEST_SKIP_SPAM.
|
|
45
|
+
*/
|
|
46
|
+
skipSpamFilter: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* When true, accept all recipients without querying the lookup service.
|
|
49
|
+
* env: GATEWAY_TEST_ACCEPT_ALL_RECIPIENTS.
|
|
50
|
+
*/
|
|
51
|
+
acceptAllRecipients: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* List of test recipient addresses that are always accepted (even if not
|
|
54
|
+
* in the user registry). Comma-separated. env: GATEWAY_TEST_RECIPIENTS.
|
|
55
|
+
*/
|
|
56
|
+
testRecipients: string[];
|
|
57
|
+
}
|
|
15
58
|
/**
|
|
16
59
|
* Complete configuration for the Email Gateway.
|
|
17
60
|
*
|
|
18
61
|
* Each field maps to an environment variable (noted in comments) with a
|
|
19
62
|
* default value applied by `loadGatewayConfig()` when the variable is unset.
|
|
20
63
|
*
|
|
21
|
-
* @see Requirements 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.7
|
|
64
|
+
* @see Requirements 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.7, 8.8
|
|
22
65
|
*/
|
|
23
66
|
export interface IEmailGatewayConfig {
|
|
24
67
|
/** Canonical email domain for this BrightChain instance (from environment.emailDomain / EMAIL_DOMAIN env var). Req 8.1 */
|
|
25
68
|
canonicalDomain: string;
|
|
69
|
+
/** Test mode configuration for local development. Req 8.8 */
|
|
70
|
+
testMode: ITestModeConfig;
|
|
26
71
|
/** Postfix MTA hostname. env: GATEWAY_POSTFIX_HOST. Req 8.2 */
|
|
27
72
|
postfixHost: string;
|
|
28
73
|
/** Postfix MTA port. env: GATEWAY_POSTFIX_PORT. Req 8.2 */
|
|
@@ -66,9 +111,22 @@ export interface IEmailGatewayConfig {
|
|
|
66
111
|
* `environment.emailDomain`). All other settings are read from their
|
|
67
112
|
* respective `GATEWAY_*` env vars with sensible defaults.
|
|
68
113
|
*
|
|
114
|
+
* When `GATEWAY_TEST_MODE=true`, the gateway operates in a localhost-only
|
|
115
|
+
* sandbox suitable for development and testing without real DNS or MX records.
|
|
116
|
+
*
|
|
69
117
|
* @returns A fully populated `IEmailGatewayConfig`.
|
|
70
118
|
*
|
|
71
|
-
* @see Requirements 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.7
|
|
119
|
+
* @see Requirements 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.7, 8.8
|
|
72
120
|
*/
|
|
73
121
|
export declare function loadGatewayConfig(): IEmailGatewayConfig;
|
|
122
|
+
/**
|
|
123
|
+
* Create a test mode configuration preset for local development.
|
|
124
|
+
*
|
|
125
|
+
* This is a convenience function that returns a config with all test mode
|
|
126
|
+
* features enabled, suitable for devcontainer or CI environments.
|
|
127
|
+
*
|
|
128
|
+
* @param overrides - Optional overrides for specific config values
|
|
129
|
+
* @returns A fully populated `IEmailGatewayConfig` with test mode enabled
|
|
130
|
+
*/
|
|
131
|
+
export declare function createTestModeConfig(overrides?: Partial<IEmailGatewayConfig>): IEmailGatewayConfig;
|
|
74
132
|
//# sourceMappingURL=emailGatewayConfig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emailGatewayConfig.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/emailGatewayConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,KAAK,eAAe,EACrB,MAAM,8BAA8B,CAAC;AAEtC;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC,0HAA0H;IAC1H,eAAe,EAAE,MAAM,CAAC;IAExB,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IAEpB,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IAEpB,6GAA6G;IAC7G,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAE7C,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IAEpB,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAC;IAErB,0GAA0G;IAC1G,iBAAiB,EAAE,MAAM,CAAC;IAE1B,2FAA2F;IAC3F,cAAc,EAAE,MAAM,CAAC;IAEvB,qFAAqF;IACrF,mBAAmB,EAAE,MAAM,CAAC;IAE5B,+FAA+F;IAC/F,mBAAmB,EAAE,MAAM,CAAC;IAE5B,kGAAkG;IAClG,8BAA8B,EAAE,MAAM,CAAC;IAEvC,oEAAoE;IACpE,UAAU,EAAE,cAAc,GAAG,QAAQ,CAAC;IAEtC,4GAA4G;IAC5G,cAAc,EAAE,eAAe,CAAC;IAEhC,4FAA4F;IAC5F,gBAAgB,EAAE,MAAM,CAAC;IAEzB,uFAAuF;IACvF,aAAa,EAAE,MAAM,CAAC;IAEtB,6FAA6F;IAC7F,kBAAkB,EAAE,MAAM,CAAC;IAE3B,wGAAwG;IACxG,mBAAmB,EAAE,MAAM,CAAC;CAC7B;
|
|
1
|
+
{"version":3,"file":"emailGatewayConfig.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/emailGatewayConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,KAAK,eAAe,EACrB,MAAM,8BAA8B,CAAC;AAEtC;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,4DAA4D;IAC5D,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,mBAAmB,EAAE,OAAO,CAAC;IAE7B;;;OAGG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC,0HAA0H;IAC1H,eAAe,EAAE,MAAM,CAAC;IAExB,6DAA6D;IAC7D,QAAQ,EAAE,eAAe,CAAC;IAE1B,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IAEpB,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IAEpB,6GAA6G;IAC7G,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAE7C,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IAEpB,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAC;IAErB,0GAA0G;IAC1G,iBAAiB,EAAE,MAAM,CAAC;IAE1B,2FAA2F;IAC3F,cAAc,EAAE,MAAM,CAAC;IAEvB,qFAAqF;IACrF,mBAAmB,EAAE,MAAM,CAAC;IAE5B,+FAA+F;IAC/F,mBAAmB,EAAE,MAAM,CAAC;IAE5B,kGAAkG;IAClG,8BAA8B,EAAE,MAAM,CAAC;IAEvC,oEAAoE;IACpE,UAAU,EAAE,cAAc,GAAG,QAAQ,CAAC;IAEtC,4GAA4G;IAC5G,cAAc,EAAE,eAAe,CAAC;IAEhC,4FAA4F;IAC5F,gBAAgB,EAAE,MAAM,CAAC;IAEzB,uFAAuF;IACvF,aAAa,EAAE,MAAM,CAAC;IAEtB,6FAA6F;IAC7F,kBAAkB,EAAE,MAAM,CAAC;IAE3B,wGAAwG;IACxG,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAoHD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,IAAI,mBAAmB,CAwDvD;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACvC,mBAAmB,CAerB"}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
16
|
exports.loadGatewayConfig = loadGatewayConfig;
|
|
17
|
+
exports.createTestModeConfig = createTestModeConfig;
|
|
17
18
|
/** Default mail drop directory path */
|
|
18
19
|
const DEFAULT_MAIL_DROP_DIR = '/var/spool/brightchain/incoming/';
|
|
19
20
|
/** Default error directory path */
|
|
@@ -32,10 +33,36 @@ const DEFAULT_RETRY_MAX_COUNT = 5;
|
|
|
32
33
|
const DEFAULT_RETRY_MAX_DURATION = 48 * 60 * 60 * 1000;
|
|
33
34
|
/** Default retry base interval: 60 seconds in ms */
|
|
34
35
|
const DEFAULT_RETRY_BASE_INTERVAL = 60_000;
|
|
36
|
+
/** Default test catchall directory */
|
|
37
|
+
const DEFAULT_TEST_CATCHALL_DIR = '/var/spool/brightchain/catchall/';
|
|
35
38
|
/** Default probable spam score threshold */
|
|
36
39
|
const DEFAULT_SPAM_PROBABLE = 5.0;
|
|
37
40
|
/** Default definite spam score threshold */
|
|
38
41
|
const DEFAULT_SPAM_DEFINITE = 10.0;
|
|
42
|
+
/**
|
|
43
|
+
* Parse a boolean from an environment variable.
|
|
44
|
+
* Accepts 'true', '1', 'yes' as truthy values (case-insensitive).
|
|
45
|
+
*/
|
|
46
|
+
function envBool(name, defaultValue) {
|
|
47
|
+
const raw = process.env[name];
|
|
48
|
+
if (raw === undefined || raw === '') {
|
|
49
|
+
return defaultValue;
|
|
50
|
+
}
|
|
51
|
+
return ['true', '1', 'yes'].includes(raw.toLowerCase());
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Parse a comma-separated list from an environment variable.
|
|
55
|
+
*/
|
|
56
|
+
function envList(name, defaultValue) {
|
|
57
|
+
const raw = process.env[name];
|
|
58
|
+
if (raw === undefined || raw === '') {
|
|
59
|
+
return defaultValue;
|
|
60
|
+
}
|
|
61
|
+
return raw
|
|
62
|
+
.split(',')
|
|
63
|
+
.map((s) => s.trim())
|
|
64
|
+
.filter((s) => s.length > 0);
|
|
65
|
+
}
|
|
39
66
|
/**
|
|
40
67
|
* Parse an integer from an environment variable, returning a default if unset or invalid.
|
|
41
68
|
*/
|
|
@@ -65,6 +92,22 @@ function envString(name, defaultValue) {
|
|
|
65
92
|
const raw = process.env[name];
|
|
66
93
|
return raw !== undefined && raw !== '' ? raw : defaultValue;
|
|
67
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* Load the test mode configuration from environment variables.
|
|
97
|
+
*
|
|
98
|
+
* @returns A fully populated `ITestModeConfig`.
|
|
99
|
+
*/
|
|
100
|
+
function loadTestModeConfig() {
|
|
101
|
+
return {
|
|
102
|
+
enabled: envBool('GATEWAY_TEST_MODE', false),
|
|
103
|
+
catchallEnabled: envBool('GATEWAY_TEST_CATCHALL', false),
|
|
104
|
+
catchallDirectory: envString('GATEWAY_TEST_CATCHALL_DIR', DEFAULT_TEST_CATCHALL_DIR),
|
|
105
|
+
skipDkim: envBool('GATEWAY_TEST_SKIP_DKIM', false),
|
|
106
|
+
skipSpamFilter: envBool('GATEWAY_TEST_SKIP_SPAM', false),
|
|
107
|
+
acceptAllRecipients: envBool('GATEWAY_TEST_ACCEPT_ALL_RECIPIENTS', false),
|
|
108
|
+
testRecipients: envList('GATEWAY_TEST_RECIPIENTS', []),
|
|
109
|
+
};
|
|
110
|
+
}
|
|
68
111
|
/**
|
|
69
112
|
* Load the Email Gateway configuration from environment variables.
|
|
70
113
|
*
|
|
@@ -72,15 +115,19 @@ function envString(name, defaultValue) {
|
|
|
72
115
|
* `environment.emailDomain`). All other settings are read from their
|
|
73
116
|
* respective `GATEWAY_*` env vars with sensible defaults.
|
|
74
117
|
*
|
|
118
|
+
* When `GATEWAY_TEST_MODE=true`, the gateway operates in a localhost-only
|
|
119
|
+
* sandbox suitable for development and testing without real DNS or MX records.
|
|
120
|
+
*
|
|
75
121
|
* @returns A fully populated `IEmailGatewayConfig`.
|
|
76
122
|
*
|
|
77
|
-
* @see Requirements 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.7
|
|
123
|
+
* @see Requirements 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.7, 8.8
|
|
78
124
|
*/
|
|
79
125
|
function loadGatewayConfig() {
|
|
80
126
|
const postfixUser = process.env['GATEWAY_POSTFIX_USER'];
|
|
81
127
|
const postfixPass = process.env['GATEWAY_POSTFIX_PASS'];
|
|
82
128
|
return {
|
|
83
129
|
canonicalDomain: envString('EMAIL_DOMAIN', 'example.com'),
|
|
130
|
+
testMode: loadTestModeConfig(),
|
|
84
131
|
postfixHost: envString('GATEWAY_POSTFIX_HOST', 'localhost'),
|
|
85
132
|
postfixPort: envInt('GATEWAY_POSTFIX_PORT', 25),
|
|
86
133
|
postfixAuth: postfixUser && postfixPass
|
|
@@ -104,4 +151,29 @@ function loadGatewayConfig() {
|
|
|
104
151
|
retryBaseIntervalMs: envInt('GATEWAY_RETRY_BASE_INTERVAL', DEFAULT_RETRY_BASE_INTERVAL),
|
|
105
152
|
};
|
|
106
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* Create a test mode configuration preset for local development.
|
|
156
|
+
*
|
|
157
|
+
* This is a convenience function that returns a config with all test mode
|
|
158
|
+
* features enabled, suitable for devcontainer or CI environments.
|
|
159
|
+
*
|
|
160
|
+
* @param overrides - Optional overrides for specific config values
|
|
161
|
+
* @returns A fully populated `IEmailGatewayConfig` with test mode enabled
|
|
162
|
+
*/
|
|
163
|
+
function createTestModeConfig(overrides) {
|
|
164
|
+
const baseConfig = loadGatewayConfig();
|
|
165
|
+
return {
|
|
166
|
+
...baseConfig,
|
|
167
|
+
testMode: {
|
|
168
|
+
enabled: true,
|
|
169
|
+
catchallEnabled: true,
|
|
170
|
+
catchallDirectory: DEFAULT_TEST_CATCHALL_DIR,
|
|
171
|
+
skipDkim: true,
|
|
172
|
+
skipSpamFilter: true,
|
|
173
|
+
acceptAllRecipients: true,
|
|
174
|
+
testRecipients: [],
|
|
175
|
+
},
|
|
176
|
+
...overrides,
|
|
177
|
+
};
|
|
178
|
+
}
|
|
107
179
|
//# sourceMappingURL=emailGatewayConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emailGatewayConfig.js","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/emailGatewayConfig.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;
|
|
1
|
+
{"version":3,"file":"emailGatewayConfig.js","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/emailGatewayConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC"}
|
|
@@ -23,4 +23,5 @@ tslib_1.__exportStar(require("./outboundQueue"), exports);
|
|
|
23
23
|
tslib_1.__exportStar(require("./outboundQueueStore"), exports);
|
|
24
24
|
tslib_1.__exportStar(require("./recipientLookupService"), exports);
|
|
25
25
|
tslib_1.__exportStar(require("./retryBackoff"), exports);
|
|
26
|
+
tslib_1.__exportStar(require("./testModeTransports"), exports);
|
|
26
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,2DAAiC;AACjC,4DAAkC;AAClC,8DAAoC;AACpC,+DAAqC;AACrC,gEAAsC;AACtC,iEAAuC;AACvC,6DAAmC;AACnC,mEAAyC;AACzC,0DAAgC;AAChC,+DAAqC;AACrC,mEAAyC;AACzC,yDAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,2DAAiC;AACjC,4DAAkC;AAClC,8DAAoC;AACpC,+DAAqC;AACrC,gEAAsC;AACtC,iEAAuC;AACvC,6DAAmC;AACnC,mEAAyC;AACzC,0DAAgC;AAChC,+DAAqC;AACrC,mEAAyC;AACzC,yDAA+B;AAC/B,+DAAqC"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Test Mode Transports for Email Gateway
|
|
3
|
+
*
|
|
4
|
+
* Provides mock/stub implementations of IPostfixTransport and IDkimSigner
|
|
5
|
+
* for use in test mode. These capture outbound mail to the filesystem
|
|
6
|
+
* instead of delivering via SMTP, enabling local development and testing
|
|
7
|
+
* without real DNS, MX records, or external connectivity.
|
|
8
|
+
*
|
|
9
|
+
* @see Requirement 8.8 — Test mode for local development
|
|
10
|
+
* @module testModeTransports
|
|
11
|
+
*/
|
|
12
|
+
import type { IEmailGatewayConfig } from './emailGatewayConfig';
|
|
13
|
+
import type { IDkimSigner, IPostfixTransport, IPostfixTransportResult } from './outboundDeliveryWorker';
|
|
14
|
+
/**
|
|
15
|
+
* A captured email message stored by the CatchallTransport.
|
|
16
|
+
*/
|
|
17
|
+
export interface ICapturedEmail {
|
|
18
|
+
/** Envelope sender address */
|
|
19
|
+
from: string;
|
|
20
|
+
/** Envelope recipient addresses */
|
|
21
|
+
to: string[];
|
|
22
|
+
/** Raw RFC 5322 message bytes */
|
|
23
|
+
rawMessage: Uint8Array;
|
|
24
|
+
/** Timestamp when the message was captured */
|
|
25
|
+
capturedAt: Date;
|
|
26
|
+
/** Filename in the catchall directory */
|
|
27
|
+
filename: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Test transport that captures outbound mail to the filesystem instead of
|
|
31
|
+
* delivering via SMTP. Messages are stored in Maildir format in the
|
|
32
|
+
* configured catchall directory.
|
|
33
|
+
*
|
|
34
|
+
* This enables inspection of sent messages during development and testing.
|
|
35
|
+
*
|
|
36
|
+
* @see Requirement 8.8 — Test mode for local development
|
|
37
|
+
*/
|
|
38
|
+
export declare class CatchallTransport implements IPostfixTransport {
|
|
39
|
+
private readonly config;
|
|
40
|
+
/** In-memory list of captured emails (for programmatic access in tests) */
|
|
41
|
+
private readonly captured;
|
|
42
|
+
constructor(config: IEmailGatewayConfig);
|
|
43
|
+
/**
|
|
44
|
+
* Capture a message to the catchall directory instead of sending via SMTP.
|
|
45
|
+
*
|
|
46
|
+
* @param from - Envelope sender address
|
|
47
|
+
* @param to - Envelope recipient addresses
|
|
48
|
+
* @param rawMessage - Complete RFC 5322 message bytes
|
|
49
|
+
* @returns Always returns success (250)
|
|
50
|
+
*/
|
|
51
|
+
send(from: string, to: string[], rawMessage: Uint8Array): Promise<IPostfixTransportResult>;
|
|
52
|
+
/**
|
|
53
|
+
* Get all captured emails (for programmatic access in tests).
|
|
54
|
+
*/
|
|
55
|
+
getCapturedEmails(): readonly ICapturedEmail[];
|
|
56
|
+
/**
|
|
57
|
+
* Clear all captured emails (for test cleanup).
|
|
58
|
+
*/
|
|
59
|
+
clearCaptured(): void;
|
|
60
|
+
/**
|
|
61
|
+
* Get the most recently captured email.
|
|
62
|
+
*/
|
|
63
|
+
getLastCaptured(): ICapturedEmail | undefined;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* No-op DKIM signer for test mode. Returns the message unchanged.
|
|
67
|
+
*
|
|
68
|
+
* Use this when DKIM signing should be skipped (e.g., no real key available).
|
|
69
|
+
*
|
|
70
|
+
* @see Requirement 8.8 — Test mode for local development
|
|
71
|
+
*/
|
|
72
|
+
export declare class NoOpDkimSigner implements IDkimSigner {
|
|
73
|
+
/**
|
|
74
|
+
* Return the message unchanged (no DKIM signature applied).
|
|
75
|
+
*/
|
|
76
|
+
sign(rawMessage: Uint8Array, _domain: string, _selector: string): Promise<Uint8Array>;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Test DKIM signer that adds a fake DKIM-Signature header for testing.
|
|
80
|
+
*
|
|
81
|
+
* The signature is not cryptographically valid but allows testing the
|
|
82
|
+
* DKIM signing flow without real key material.
|
|
83
|
+
*/
|
|
84
|
+
export declare class FakeDkimSigner implements IDkimSigner {
|
|
85
|
+
/**
|
|
86
|
+
* Add a fake DKIM-Signature header to the message.
|
|
87
|
+
*/
|
|
88
|
+
sign(rawMessage: Uint8Array, domain: string, selector: string): Promise<Uint8Array>;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Factory function to create the appropriate transport based on config.
|
|
92
|
+
*
|
|
93
|
+
* @param config - Gateway configuration
|
|
94
|
+
* @param productionTransport - The real transport to use in production mode
|
|
95
|
+
* @returns CatchallTransport in test mode with catchall enabled, otherwise productionTransport
|
|
96
|
+
*/
|
|
97
|
+
export declare function createTransport(config: IEmailGatewayConfig, productionTransport: IPostfixTransport): IPostfixTransport;
|
|
98
|
+
/**
|
|
99
|
+
* Factory function to create the appropriate DKIM signer based on config.
|
|
100
|
+
*
|
|
101
|
+
* @param config - Gateway configuration
|
|
102
|
+
* @param productionSigner - The real signer to use in production mode
|
|
103
|
+
* @returns NoOpDkimSigner if test mode with skipDkim, otherwise productionSigner
|
|
104
|
+
*/
|
|
105
|
+
export declare function createDkimSigner(config: IEmailGatewayConfig, productionSigner: IDkimSigner): IDkimSigner;
|
|
106
|
+
//# sourceMappingURL=testModeTransports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testModeTransports.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/services/emailGateway/testModeTransports.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,iCAAiC;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,8CAA8C;IAC9C,UAAU,EAAE,IAAI,CAAC;IACjB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,YAAW,iBAAiB;IAI7C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,2EAA2E;IAC3E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;gBAEpB,MAAM,EAAE,mBAAmB;IAgBxD;;;;;;;OAOG;IACG,IAAI,CACR,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EAAE,EACZ,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,uBAAuB,CAAC;IA0CnC;;OAEG;IACH,iBAAiB,IAAI,SAAS,cAAc,EAAE;IAI9C;;OAEG;IACH,aAAa,IAAI,IAAI;IAIrB;;OAEG;IACH,eAAe,IAAI,cAAc,GAAG,SAAS;CAG9C;AAED;;;;;;GAMG;AACH,qBAAa,cAAe,YAAW,WAAW;IAChD;;OAEG;IACG,IAAI,CACR,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,CAAC;CAGvB;AAED;;;;;GAKG;AACH,qBAAa,cAAe,YAAW,WAAW;IAChD;;OAEG;IACG,IAAI,CACR,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,UAAU,CAAC;CAevB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,mBAAmB,EAC3B,mBAAmB,EAAE,iBAAiB,GACrC,iBAAiB,CAKnB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,mBAAmB,EAC3B,gBAAgB,EAAE,WAAW,GAC5B,WAAW,CAKb"}
|