@creator.co/wapi 1.0.12 → 1.1.0

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/dist/index.d.ts CHANGED
@@ -3,5 +3,6 @@ import Utils from "./src/API/Utils";
3
3
  import EventProcessor from "./src/BaseEvent/EventProcessor";
4
4
  import Process from "./src/BaseEvent/Process";
5
5
  import Transaction from "./src/BaseEvent/Transaction";
6
+ import Mailer from "./src/Mailer/Mailer";
6
7
  import Publisher from "./src/Publisher/Publisher";
7
- export { Transaction, Process, EventProcessor, Publisher, Response, Utils, };
8
+ export { Transaction, Process, EventProcessor, Publisher, Mailer, Response, Utils, };
package/dist/index.js CHANGED
@@ -1,11 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Utils = exports.Response = exports.Publisher = exports.EventProcessor = exports.Process = exports.Transaction = void 0;
4
- // Base Events
5
- //
3
+ exports.Utils = exports.Response = exports.Mailer = exports.Publisher = exports.EventProcessor = exports.Process = exports.Transaction = void 0;
6
4
  var Response_1 = require("./src/API/Response");
7
5
  exports.Response = Response_1.default;
8
- //Helpers
9
6
  var Utils_1 = require("./src/API/Utils");
10
7
  exports.Utils = Utils_1.default;
11
8
  var EventProcessor_1 = require("./src/BaseEvent/EventProcessor");
@@ -14,7 +11,8 @@ var Process_1 = require("./src/BaseEvent/Process");
14
11
  exports.Process = Process_1.default;
15
12
  var Transaction_1 = require("./src/BaseEvent/Transaction");
16
13
  exports.Transaction = Transaction_1.default;
17
- //
14
+ var Mailer_1 = require("./src/Mailer/Mailer");
15
+ exports.Mailer = Mailer_1.default;
18
16
  var Publisher_1 = require("./src/Publisher/Publisher");
19
17
  exports.Publisher = Publisher_1.default;
20
18
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,cAAc;AACd,EAAE;AACF,+CAAyC;AAiBvC,mBAjBK,kBAAQ,CAiBL;AAhBV,SAAS;AACT,yCAAmC;AAiBjC,gBAjBK,eAAK,CAiBL;AAhBP,iEAA2D;AAUzD,yBAVK,wBAAc,CAUL;AAThB,mDAA6C;AAQ3C,kBARK,iBAAO,CAQL;AAPT,2DAAqD;AAMnD,sBANK,qBAAW,CAML;AALb,EAAE;AACF,uDAAiD;AAQ/C,oBARK,mBAAS,CAQL"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,+CAAyC;AAiBvC,mBAjBK,kBAAQ,CAiBL;AAhBV,yCAAmC;AAkBjC,gBAlBK,eAAK,CAkBL;AAjBP,iEAA2D;AAUzD,yBAVK,wBAAc,CAUL;AAThB,mDAA6C;AAQ3C,kBARK,iBAAO,CAQL;AAPT,2DAAqD;AAMnD,sBANK,qBAAW,CAML;AALb,8CAAwC;AAUtC,iBAVK,gBAAM,CAUL;AATR,uDAAiD;AAQ/C,oBARK,mBAAS,CAQL"}
@@ -233,16 +233,17 @@ var Logger = /** @class */ (function () {
233
233
  }
234
234
  };
235
235
  Logger.prototype._callerName = function (index) {
236
+ var _a, _b, _c, _d, _e, _f;
236
237
  var safeIndex = Math.min(index, stackTrace.get().length);
237
238
  if (stackTrace.get()[safeIndex]) {
238
239
  var callerName = stackTrace.get()[safeIndex]
239
240
  ? stackTrace.get()[safeIndex].getTypeName()
240
241
  : null;
241
242
  if (!callerName) {
242
- callerName = stackTrace.get()[safeIndex].getFileName().split("/");
243
- callerName = callerName.slice(callerName.indexOf("src")).join("/");
243
+ callerName = (_c = (_b = (_a = stackTrace === null || stackTrace === void 0 ? void 0 : stackTrace.get()) === null || _a === void 0 ? void 0 : _a[safeIndex]) === null || _b === void 0 ? void 0 : _b.getFileName()) === null || _c === void 0 ? void 0 : _c.split("/");
244
+ callerName = (_d = callerName === null || callerName === void 0 ? void 0 : callerName.slice(callerName === null || callerName === void 0 ? void 0 : callerName.indexOf("src"))) === null || _d === void 0 ? void 0 : _d.join("/");
244
245
  }
245
- return callerName + ":" + stackTrace.get()[safeIndex].getLineNumber();
246
+ return callerName + ":" + ((_f = (_e = stackTrace === null || stackTrace === void 0 ? void 0 : stackTrace.get()) === null || _e === void 0 ? void 0 : _e[safeIndex]) === null || _f === void 0 ? void 0 : _f.getLineNumber());
246
247
  }
247
248
  return "";
248
249
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../../src/Logger/Logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../../src/Logger/Logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export default class Mailer {
2
+ private readonly from;
3
+ private readonly templateDefaultFile;
4
+ private readonly transporter;
5
+ constructor(defaultFrom: string, region: string);
6
+ sendTemplatedEmail(to: string | Array<string>, templates: string | Array<string>, data: object, optionalCC?: string | Array<string>, optionalAttachments?: any[]): Promise<any>;
7
+ private chooseTemplate;
8
+ private canRenderTemplate;
9
+ }
@@ -0,0 +1,166 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ Object.defineProperty(exports, "__esModule", { value: true });
50
+ var SES = require("@aws-sdk/client-ses");
51
+ var credential_provider_node_1 = require("@aws-sdk/credential-provider-node");
52
+ var Email = require("email-templates");
53
+ var nodemailer = require("nodemailer");
54
+ var Mailer = /** @class */ (function () {
55
+ function Mailer(defaultFrom, region) {
56
+ this.templateDefaultFile = "html";
57
+ this.from = defaultFrom;
58
+ this.transporter = nodemailer.createTransport({
59
+ SES: {
60
+ ses: new SES.SESClient({
61
+ credentials: (0, credential_provider_node_1.defaultProvider)(),
62
+ apiVersion: "2010-12-01",
63
+ region: region,
64
+ }),
65
+ aws: SES,
66
+ },
67
+ });
68
+ }
69
+ //to can be an array or just one address
70
+ Mailer.prototype.sendTemplatedEmail = function (to, templates, data, optionalCC,
71
+ // TODO: improve attachment type -> Attachment
72
+ optionalAttachments) {
73
+ return __awaiter(this, void 0, void 0, function () {
74
+ var email, resp, chosenTemplate, e_1;
75
+ return __generator(this, function (_a) {
76
+ switch (_a.label) {
77
+ case 0:
78
+ email = new Email({
79
+ message: __assign(__assign({ from: this.from, to: to }, (optionalAttachments ? { attachments: optionalAttachments } : {})), (optionalCC ? { cc: optionalCC } : {})),
80
+ transport: this.transporter,
81
+ send: true,
82
+ });
83
+ resp = null;
84
+ _a.label = 1;
85
+ case 1:
86
+ _a.trys.push([1, 4, , 5]);
87
+ return [4 /*yield*/, this.chooseTemplate(templates, data)];
88
+ case 2:
89
+ chosenTemplate = _a.sent();
90
+ return [4 /*yield*/, email.send({ template: chosenTemplate, locals: data })];
91
+ case 3:
92
+ resp = _a.sent();
93
+ console.debug("Mailer resp:", resp);
94
+ return [3 /*break*/, 5];
95
+ case 4:
96
+ e_1 = _a.sent();
97
+ console.error("Mailer error:", e_1);
98
+ return [3 /*break*/, 5];
99
+ case 5: return [2 /*return*/, resp];
100
+ }
101
+ });
102
+ });
103
+ };
104
+ /* private */
105
+ Mailer.prototype.chooseTemplate = function (templates, data) {
106
+ return __awaiter(this, void 0, void 0, function () {
107
+ var _i, templates_1, template;
108
+ return __generator(this, function (_a) {
109
+ switch (_a.label) {
110
+ case 0:
111
+ if (!Array.isArray(templates)) return [3 /*break*/, 5];
112
+ _i = 0, templates_1 = templates;
113
+ _a.label = 1;
114
+ case 1:
115
+ if (!(_i < templates_1.length)) return [3 /*break*/, 4];
116
+ template = templates_1[_i];
117
+ return [4 /*yield*/, this.canRenderTemplate(template, data)];
118
+ case 2:
119
+ if (_a.sent())
120
+ return [2 /*return*/, template];
121
+ _a.label = 3;
122
+ case 3:
123
+ _i++;
124
+ return [3 /*break*/, 1];
125
+ case 4: return [3 /*break*/, 7];
126
+ case 5:
127
+ if (!templates) return [3 /*break*/, 7];
128
+ return [4 /*yield*/, this.canRenderTemplate(templates, data)];
129
+ case 6:
130
+ if (_a.sent())
131
+ return [2 /*return*/, templates];
132
+ _a.label = 7;
133
+ case 7: throw new Error("Could not render email with template ".concat(templates, " and following data. Please, check logs above! ") +
134
+ JSON.stringify(data, null, 2));
135
+ }
136
+ });
137
+ });
138
+ };
139
+ Mailer.prototype.canRenderTemplate = function (template, data) {
140
+ return __awaiter(this, void 0, void 0, function () {
141
+ var validRenderResp, email, e_2;
142
+ return __generator(this, function (_a) {
143
+ switch (_a.label) {
144
+ case 0:
145
+ validRenderResp = null;
146
+ _a.label = 1;
147
+ case 1:
148
+ _a.trys.push([1, 3, , 4]);
149
+ email = new Email();
150
+ return [4 /*yield*/, email.render("".concat(template, "/").concat(this.templateDefaultFile), data)];
151
+ case 2:
152
+ validRenderResp = _a.sent();
153
+ return [3 /*break*/, 4];
154
+ case 3:
155
+ e_2 = _a.sent();
156
+ console.log("Error while checking renderability of email template ".concat(template), e_2);
157
+ return [3 /*break*/, 4];
158
+ case 4: return [2 /*return*/, validRenderResp != null];
159
+ }
160
+ });
161
+ });
162
+ };
163
+ return Mailer;
164
+ }());
165
+ exports.default = Mailer;
166
+ //# sourceMappingURL=Mailer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Mailer.js","sourceRoot":"","sources":["../../../src/Mailer/Mailer.ts"],"names":[],"mappings":"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"}
package/index.ts CHANGED
@@ -1,14 +1,11 @@
1
- // Base Events
2
- //
3
1
  import Response from "./src/API/Response"
4
- //Helpers
5
2
  import Utils from "./src/API/Utils"
6
3
  import EventProcessor from "./src/BaseEvent/EventProcessor"
7
4
  import Process from "./src/BaseEvent/Process"
8
5
  import Transaction from "./src/BaseEvent/Transaction"
9
- //
6
+ import Mailer from "./src/Mailer/Mailer"
10
7
  import Publisher from "./src/Publisher/Publisher"
11
- //
8
+
12
9
  export {
13
10
  //Base Events
14
11
  Transaction,
@@ -16,6 +13,7 @@ export {
16
13
  EventProcessor,
17
14
  //Client
18
15
  Publisher,
16
+ Mailer,
19
17
  //Responses
20
18
  Response,
21
19
  //Helpers
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@creator.co/wapi",
3
- "version": "1.0.12",
3
+ "version": "1.1.0",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -14,19 +14,24 @@
14
14
  "author": "",
15
15
  "license": "ISC",
16
16
  "dependencies": {
17
+ "@aws-sdk/client-ses": "^3.414.0",
17
18
  "@aws-sdk/client-sns": "^3.398.0",
19
+ "@aws-sdk/credential-provider-node": "^3.414.0",
20
+ "@types/email-templates": "^10.0.1",
21
+ "@types/nodemailer": "^6.4.10",
18
22
  "abind": "^1.0.5",
23
+ "email-templates": "^11.1.1",
19
24
  "json-stringify-safe": "^5.0.1",
20
25
  "sha1": "^1.1.1",
21
26
  "stack-trace": "0.0.10"
22
27
  },
23
28
  "devDependencies": {
24
29
  "@types/aws-lambda": "^8.10.119",
25
- "eslint-config-prettier": "^9.0.0",
26
30
  "@types/node": "^20.5.7",
27
31
  "@typescript-eslint/eslint-plugin": "^6.5.0",
28
32
  "@typescript-eslint/parser": "^6.5.0",
29
33
  "eslint": "^8.48.0",
34
+ "eslint-config-prettier": "^9.0.0",
30
35
  "eslint-plugin-import": "^2.28.1",
31
36
  "eslint-plugin-prettier": "^5.0.0",
32
37
  "prettier": "^3.0.3"
@@ -148,10 +148,10 @@ export default class Logger {
148
148
  ? stackTrace.get()[safeIndex].getTypeName()
149
149
  : null
150
150
  if (!callerName) {
151
- callerName = stackTrace.get()[safeIndex].getFileName().split("/")
152
- callerName = callerName.slice(callerName.indexOf("src")).join("/")
151
+ callerName = stackTrace?.get()?.[safeIndex]?.getFileName()?.split("/")
152
+ callerName = callerName?.slice(callerName?.indexOf("src"))?.join("/")
153
153
  }
154
- return callerName + ":" + stackTrace.get()[safeIndex].getLineNumber()
154
+ return callerName + ":" + stackTrace?.get()?.[safeIndex]?.getLineNumber()
155
155
  }
156
156
  return ""
157
157
  }
@@ -0,0 +1,96 @@
1
+ import * as SES from "@aws-sdk/client-ses"
2
+ import { defaultProvider } from "@aws-sdk/credential-provider-node"
3
+ import * as Email from "email-templates"
4
+ import * as nodemailer from "nodemailer"
5
+ import SESTransport = require("nodemailer/lib/ses-transport")
6
+
7
+ export default class Mailer {
8
+ private readonly from: string
9
+ private readonly templateDefaultFile: string = "html"
10
+ private readonly transporter: ReturnType<
11
+ typeof nodemailer.createTransport<SESTransport.SentMessageInfo>
12
+ >
13
+ constructor(defaultFrom: string, region: string) {
14
+ this.from = defaultFrom
15
+ this.transporter = nodemailer.createTransport({
16
+ SES: {
17
+ ses: new SES.SESClient({
18
+ credentials: defaultProvider(),
19
+ apiVersion: "2010-12-01",
20
+ region,
21
+ }),
22
+ aws: SES,
23
+ },
24
+ })
25
+ }
26
+
27
+ //to can be an array or just one address
28
+ async sendTemplatedEmail(
29
+ to: string | Array<string>,
30
+ templates: string | Array<string>,
31
+ data: object,
32
+ optionalCC?: string | Array<string>,
33
+ // TODO: improve attachment type -> Attachment
34
+ optionalAttachments?: any[],
35
+ ) {
36
+ //Generate emails
37
+ const email = new Email({
38
+ message: {
39
+ from: this.from,
40
+ to: to,
41
+ ...(optionalAttachments ? { attachments: optionalAttachments } : {}),
42
+ ...(optionalCC ? { cc: optionalCC } : {}),
43
+ },
44
+ transport: this.transporter,
45
+ send: true,
46
+ })
47
+ //
48
+ let resp = null
49
+ try {
50
+ const chosenTemplate = await this.chooseTemplate(templates, data)
51
+ resp = await email.send({ template: chosenTemplate, locals: data })
52
+ console.debug("Mailer resp:", resp)
53
+ } catch (e) {
54
+ console.error("Mailer error:", e)
55
+ }
56
+ return resp
57
+ }
58
+
59
+ /* private */
60
+ private async chooseTemplate(
61
+ templates: string | Array<string>,
62
+ data: object,
63
+ ): Promise<string> {
64
+ if (Array.isArray(templates)) {
65
+ //For each template check if can render it
66
+ for (const template of templates) {
67
+ if (await this.canRenderTemplate(template, data)) return template
68
+ }
69
+ } else if (templates) {
70
+ if (await this.canRenderTemplate(templates, data)) return templates
71
+ }
72
+ throw new Error(
73
+ `Could not render email with template ${templates} and following data. Please, check logs above! ` +
74
+ JSON.stringify(data, null, 2),
75
+ )
76
+ }
77
+ private async canRenderTemplate(
78
+ template: string,
79
+ data: object,
80
+ ): Promise<boolean> {
81
+ let validRenderResp = null
82
+ try {
83
+ const email = new Email()
84
+ validRenderResp = await email.render(
85
+ `${template}/${this.templateDefaultFile}`,
86
+ data,
87
+ )
88
+ } catch (e) {
89
+ console.log(
90
+ `Error while checking renderability of email template ${template}`,
91
+ e,
92
+ )
93
+ }
94
+ return validRenderResp != null
95
+ }
96
+ }