@dereekb/nestjs 9.9.2 → 9.9.4

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/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [9.9.4](https://github.com/dereekb/dbx-components/compare/v9.9.3-dev...v9.9.4) (2022-09-19)
6
+
7
+
8
+
9
+ ## [9.9.3](https://github.com/dereekb/dbx-components/compare/v9.9.2-dev...v9.9.3) (2022-09-19)
10
+
11
+
12
+
5
13
  ## [9.9.2](https://github.com/dereekb/dbx-components/compare/v9.9.1-dev...v9.9.2) (2022-09-19)
6
14
 
7
15
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/nestjs/mailgun",
3
- "version": "9.9.2",
3
+ "version": "9.9.4",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "typings": "./src/index.d.ts",
@@ -9,13 +9,13 @@
9
9
  "@nestjs/common": "^9.0.0",
10
10
  "mailgun.js": "^8.0.0",
11
11
  "form-data": "4.0.0",
12
- "@dereekb/util": "9.9.2",
12
+ "@dereekb/util": "9.9.4",
13
13
  "lodash.isequal": "^4.5.0",
14
14
  "make-error": "^1.3.0",
15
15
  "class-validator": "^0.13.2",
16
16
  "ts-essentials": "^9.1.2",
17
17
  "extra-set": "^2.2.11",
18
- "@dereekb/nestjs": "9.9.2",
18
+ "@dereekb/nestjs": "9.9.4",
19
19
  "@nestjs/config": "^2.0.1",
20
20
  "tslib": "^2.0.0"
21
21
  }
@@ -15,6 +15,17 @@ export declare abstract class MailgunServiceConfig {
15
15
  * Additional messages config
16
16
  */
17
17
  messages: {
18
+ /**
19
+ * Whether or not to send test emails to Mailgun. Defaults to false.
20
+ *
21
+ * NOTE: Mailgun charges for any sent testmode emails to non-sandbox domains.
22
+ */
23
+ sendTestEmails?: boolean;
24
+ /**
25
+ * Global recipient variable prefix to use in emails. Adds each recipient variable to the template variables list with the given prefix.
26
+ *
27
+ * If false, the recipient variables are not added to the variables list.
28
+ */
18
29
  recipientVariablePrefix?: string | false;
19
30
  };
20
31
  static assertValidConfig(config: MailgunServiceConfig): void;
@@ -1 +1 @@
1
- {"version":3,"file":"mailgun.config.js","sourceRoot":"","sources":["../../../../../../packages/nestjs/mailgun/src/lib/mailgun.config.ts"],"names":[],"mappings":";;;AAIA,MAAsB,oBAAoB;IAqBxC,MAAM,CAAC,iBAAiB,CAAC,MAA4B;QACnD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;SACnD;aAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC9C;aAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;aAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;aAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SAC1D;IACH,CAAC;CACF;AAlCD,oDAkCC"}
1
+ {"version":3,"file":"mailgun.config.js","sourceRoot":"","sources":["../../../../../../packages/nestjs/mailgun/src/lib/mailgun.config.ts"],"names":[],"mappings":";;;AAIA,MAAsB,oBAAoB;IAgCxC,MAAM,CAAC,iBAAiB,CAAC,MAA4B;QACnD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;SACnD;aAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC9C;aAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;aAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;aAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SAC1D;IACH,CAAC;CACF;AA7CD,oDA6CC"}
@@ -32,9 +32,13 @@ export interface MailgunTemplateEmailParameters {
32
32
  */
33
33
  templateVariables?: Record<string, any>;
34
34
  /**
35
- * Sends a test email to the Mailgun API
35
+ * Whether or not this is considered a test email.
36
36
  */
37
37
  testEmail?: boolean;
38
+ /**
39
+ * Overrides the global configuration for sending test emails to force sending. Useful when debugging specific tests.
40
+ */
41
+ sendTestEmails?: true | undefined;
38
42
  }
39
43
  export interface MailgunTemplateEmailRequest extends MailgunEmailRequest, MailgunTemplateEmailParameters {
40
44
  /**
@@ -53,7 +57,7 @@ export interface ConvertMailgunTemplateEmailRequestToMailgunMessageDataConfig {
53
57
  readonly request: MailgunTemplateEmailRequest;
54
58
  readonly defaultSender?: string;
55
59
  readonly recipientVariablePrefix?: Maybe<string | false>;
56
- readonly testEnvironment?: boolean;
60
+ readonly isTestingEnvironment?: boolean;
57
61
  }
58
62
  export declare function convertMailgunTemplateEmailRequestToMailgunMessageData(config: ConvertMailgunTemplateEmailRequestToMailgunMessageDataConfig): MailgunMessageData;
59
63
  export declare function convertMailgunRecipientsToStrings(recipients: MailgunRecipient[]): EmailParticipantString[];
@@ -5,7 +5,7 @@ const nestjs_1 = require("@dereekb/nestjs");
5
5
  const util_1 = require("@dereekb/util");
6
6
  exports.DEFAULT_RECIPIENT_VARIABLE_PREFIX = 'recipient-';
7
7
  function convertMailgunTemplateEmailRequestToMailgunMessageData(config) {
8
- const { request, defaultSender, testEnvironment, recipientVariablePrefix = exports.DEFAULT_RECIPIENT_VARIABLE_PREFIX } = config;
8
+ const { request, defaultSender, isTestingEnvironment: testEnvironment, recipientVariablePrefix = exports.DEFAULT_RECIPIENT_VARIABLE_PREFIX } = config;
9
9
  const toInput = (0, util_1.asArray)(request.to).map((x) => (Object.assign(Object.assign({}, x), { email: x.email.toLowerCase() })));
10
10
  const from = request.from ? convertMailgunRecipientToString(request.from) : defaultSender;
11
11
  const to = convertMailgunRecipientsToStrings(toInput);
@@ -1 +1 @@
1
- {"version":3,"file":"mailgun.js","sourceRoot":"","sources":["../../../../../../packages/nestjs/mailgun/src/lib/mailgun.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mailgun.js","sourceRoot":"","sources":["../../../../../../packages/nestjs/mailgun/src/lib/mailgun.ts"],"names":[],"mappings":"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"}
@@ -15,16 +15,25 @@ let MailgunService = class MailgunService {
15
15
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
16
16
  const domain = this.mailgunApi.domain;
17
17
  const sender = this.mailgunApi.sender;
18
- const testEnvironment = this.serverEnvironmentService.isTestingEnv;
18
+ const isTestingEnvironment = this.serverEnvironmentService.isTestingEnv;
19
19
  const { recipientVariablePrefix } = this.mailgunApi.config.messages;
20
- const data = (0, mailgun_1.convertMailgunTemplateEmailRequestToMailgunMessageData)({ request, defaultSender: sender, recipientVariablePrefix, testEnvironment });
20
+ const data = (0, mailgun_1.convertMailgunTemplateEmailRequestToMailgunMessageData)({ request, defaultSender: sender, recipientVariablePrefix, isTestingEnvironment });
21
21
  let result;
22
- try {
23
- result = yield this.mailgunApi.messages.create(domain, data);
22
+ const shouldSend = !isTestingEnvironment || request.sendTestEmails || this.mailgunApi.config.messages.sendTestEmails;
23
+ if (shouldSend) {
24
+ try {
25
+ result = yield this.mailgunApi.messages.create(domain, data);
26
+ }
27
+ catch (e) {
28
+ console.error('Failed sending email: ', e);
29
+ throw e;
30
+ }
24
31
  }
25
- catch (e) {
26
- console.error('Failed sending email: ', e);
27
- throw e;
32
+ else {
33
+ result = {
34
+ status: 200,
35
+ message: 'Success. Env prevented sending email.'
36
+ };
28
37
  }
29
38
  return result;
30
39
  });
@@ -1 +1 @@
1
- {"version":3,"file":"mailgun.service.js","sourceRoot":"","sources":["../../../../../../packages/nestjs/mailgun/src/lib/mailgun.service.ts"],"names":[],"mappings":";;;;AAAA,4CAA2D;AAC3D,2CAA4C;AAC5C,uCAA+I;AAC/I,+CAA2C;AAG3C,IAAa,cAAc,GAA3B,MAAa,cAAc;IACzB,YAA4B,UAAsB,EAAW,wBAAkD;QAAnF,eAAU,GAAV,UAAU,CAAY;QAAW,6BAAwB,GAAxB,wBAAwB,CAA0B;IAAG,CAAC;IAE7G,iBAAiB,CAAC,OAAoC;;YAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACtC,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC;YACnE,MAAM,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC;YACpE,MAAM,IAAI,GAAG,IAAA,gEAAsD,EAAC,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,uBAAuB,EAAE,eAAe,EAAE,CAAC,CAAC;YAElJ,IAAI,MAAM,CAAC;YAEX,IAAI;gBACF,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;aAC9D;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;gBAC3C,MAAM,CAAC,CAAC;aACT;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;CACF,CAAA;AArBY,cAAc;IAD1B,IAAA,mBAAU,GAAE;6CAE6B,wBAAU,EAAqC,iCAAwB;GADpG,cAAc,CAqB1B;AArBY,wCAAc"}
1
+ {"version":3,"file":"mailgun.service.js","sourceRoot":"","sources":["../../../../../../packages/nestjs/mailgun/src/lib/mailgun.service.ts"],"names":[],"mappings":";;;;AAAA,4CAA2D;AAC3D,2CAA4C;AAC5C,uCAA+I;AAC/I,+CAA2C;AAG3C,IAAa,cAAc,GAA3B,MAAa,cAAc;IACzB,YAA4B,UAAsB,EAAW,wBAAkD;QAAnF,eAAU,GAAV,UAAU,CAAY;QAAW,6BAAwB,GAAxB,wBAAwB,CAA0B;IAAG,CAAC;IAE7G,iBAAiB,CAAC,OAAoC;;YAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACtC,MAAM,oBAAoB,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC;YACxE,MAAM,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC;YACpE,MAAM,IAAI,GAAG,IAAA,gEAAsD,EAAC,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,CAAC,CAAC;YAEvJ,IAAI,MAAqC,CAAC;YAE1C,MAAM,UAAU,GAAG,CAAC,oBAAoB,IAAI,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;YAErH,IAAI,UAAU,EAAE;gBACd,IAAI;oBACF,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;iBAC9D;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;oBAC3C,MAAM,CAAC,CAAC;iBACT;aACF;iBAAM;gBACL,MAAM,GAAG;oBACP,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,uCAAuC;iBACjD,CAAC;aACH;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;CACF,CAAA;AA9BY,cAAc;IAD1B,IAAA,mBAAU,GAAE;6CAE6B,wBAAU,EAAqC,iCAAwB;GADpG,cAAc,CA8B1B;AA9BY,wCAAc"}
@@ -11,7 +11,9 @@ const mailgun_config_1 = require("./mailgun.config");
11
11
  const mailgun_service_1 = require("./mailgun.service");
12
12
  function mailgunServiceConfigFactory(configService, serverEnvironmentService) {
13
13
  var _a, _b, _c;
14
- const useSandbox = (_a = configService.get('USE_MAILGUN_SANDBOX')) !== null && _a !== void 0 ? _a : false;
14
+ const isTestingEnv = serverEnvironmentService.isTestingEnv;
15
+ const useSandbox = (_a = configService.get('USE_MAILGUN_SANDBOX')) !== null && _a !== void 0 ? _a : isTestingEnv;
16
+ const sendTestEmails = configService.get('MAILGUN_SEND_TEST_EMAILS') || false;
15
17
  let key = configService.get('MAILGUN_API_KEY');
16
18
  let domain = configService.get('MAILGUN_DOMAIN');
17
19
  if (useSandbox) {
@@ -35,10 +37,10 @@ function mailgunServiceConfigFactory(configService, serverEnvironmentService) {
35
37
  throw new Error('MAILGUN_SENDER_EMAIL is required but was not configured.');
36
38
  }
37
39
  else if (!key) {
38
- throw new Error('MAILGUN_API_KEY is required but was not configured.');
40
+ throw new Error('MAILGUN_API_KEY (or MAILGUN_SANDBOX_API_KEY for tests) is required but was not configured.');
39
41
  }
40
42
  else if (!domain) {
41
- throw new Error('MAILGUN_DOMAIN is required but was not configured.');
43
+ throw new Error('MAILGUN_DOMAIN (or MAILGUN_SANDBOX_DOMAIN for tests) is required but was not configured.');
42
44
  }
43
45
  const config = {
44
46
  mailgun: {
@@ -52,6 +54,7 @@ function mailgunServiceConfigFactory(configService, serverEnvironmentService) {
52
54
  email
53
55
  }),
54
56
  messages: {
57
+ sendTestEmails,
55
58
  recipientVariablePrefix
56
59
  }
57
60
  };
@@ -1 +1 @@
1
- {"version":3,"file":"mailgun.service.module.js","sourceRoot":"","sources":["../../../../../../packages/nestjs/mailgun/src/lib/mailgun.service.module.ts"],"names":[],"mappings":";;;;AAAA,4CAA2D;AAC3D,2CAAwC;AACxC,2CAA6D;AAC7D,uCAA4D;AAC5D,+CAA2C;AAC3C,qDAAwD;AACxD,uDAAmD;AAEnD,SAAgB,2BAA2B,CAAC,aAA4B,EAAE,wBAAkD;;IAC1H,MAAM,UAAU,GAAG,MAAA,aAAa,CAAC,GAAG,CAAU,qBAAqB,CAAC,mCAAI,KAAK,CAAC;IAE9E,IAAI,GAAG,GAAG,aAAa,CAAC,GAAG,CAAS,iBAAiB,CAAC,CAAC;IACvD,IAAI,MAAM,GAAG,aAAa,CAAC,GAAG,CAAS,gBAAgB,CAAC,CAAC;IAEzD,IAAI,UAAU,EAAE;QACd,GAAG,GAAG,aAAa,CAAC,GAAG,CAAS,yBAAyB,CAAC,CAAC;QAC3D,MAAM,GAAG,aAAa,CAAC,GAAG,CAAS,wBAAwB,CAAC,CAAC;QAE7D,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,gIAAgI,CAAC,CAAC;SACnJ;aAAM,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE;YACjD,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,MAAM,CAAC,CAAC;SACvD;KACF;SAAM,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE;QACjD,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,MAAM,CAAC,CAAC;KAC1D;IAED,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAS,qBAAqB,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAS,sBAAsB,CAAC,CAAC;IAChE,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAS,iBAAiB,CAAC,CAAC;IACzD,MAAM,uBAAuB,GAAG,MAAA,aAAa,CAAC,GAAG,CAA6B,4CAA4C,CAAC,mCAAI,SAAS,CAAC;IAEzI,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;KAC7E;SAAM,IAAI,CAAC,GAAG,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;KACxE;SAAM,IAAI,CAAC,MAAM,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;KACvE;IAED,MAAM,MAAM,GAAyB;QACnC,OAAO,EAAE;YACP,QAAQ,EAAE,MAAA,aAAa,CAAC,GAAG,CAAS,kBAAkB,CAAC,mCAAI,KAAK;YAChE,GAAG;YACH,GAAG;SACJ;QACD,MAAM;QACN,MAAM,EAAE,IAAA,yCAA+B,EAAC;YACtC,IAAI;YACJ,KAAK;SACN,CAAC;QACF,QAAQ,EAAE;YACR,uBAAuB;SACxB;KACF,CAAC;IAEF,qCAAoB,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAlDD,kEAkDC;AAeD,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;CAAG,CAAA;AAAvB,oBAAoB;IAbhC,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,qBAAY,CAAC;QACvB,SAAS,EAAE;YACT;gBACE,OAAO,EAAE,qCAAoB;gBAC7B,MAAM,EAAE,CAAC,sBAAa,EAAE,iCAAwB,CAAC;gBACjD,UAAU,EAAE,2BAA2B;aACxC;YACD,wBAAU;YACV,gCAAc;SACf;QACD,OAAO,EAAE,CAAC,wBAAU,EAAE,gCAAc,CAAC;KACtC,CAAC;GACW,oBAAoB,CAAG;AAAvB,oDAAoB"}
1
+ {"version":3,"file":"mailgun.service.module.js","sourceRoot":"","sources":["../../../../../../packages/nestjs/mailgun/src/lib/mailgun.service.module.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/nestjs",
3
- "version": "9.9.2",
3
+ "version": "9.9.4",
4
4
  "type": "commonjs",
5
5
  "exports": {
6
6
  ".": {
@@ -25,7 +25,7 @@
25
25
  "peerDependencies": {
26
26
  "@nestjs/common": "^9.0.0",
27
27
  "@nestjs/config": "^2.0.1",
28
- "@dereekb/util": "9.9.2",
28
+ "@dereekb/util": "9.9.4",
29
29
  "lodash.isequal": "^4.5.0",
30
30
  "make-error": "^1.3.0",
31
31
  "class-validator": "^0.13.2",
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@dereekb/nestjs/stripe",
3
- "version": "9.9.2",
3
+ "version": "9.9.4",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "typings": "./src/index.d.ts",
7
7
  "dependencies": {},
8
8
  "peerDependencies": {
9
- "@dereekb/util": "9.9.2",
9
+ "@dereekb/util": "9.9.4",
10
10
  "lodash.isequal": "^4.5.0",
11
11
  "make-error": "^1.3.0",
12
12
  "class-validator": "^0.13.2",
@@ -15,7 +15,7 @@
15
15
  "stripe": "^9.1.0",
16
16
  "@nestjs/common": "^9.0.0",
17
17
  "@nestjs/config": "^2.0.1",
18
- "@dereekb/nestjs": "9.9.2",
18
+ "@dereekb/nestjs": "9.9.4",
19
19
  "tslib": "^2.0.0"
20
20
  }
21
21
  }