@winible/winible-typed 2.65.1 → 2.66.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.
@@ -25,6 +25,11 @@ ConversionLog.init({
25
25
  allowNull: false,
26
26
  field: "transaction_id",
27
27
  },
28
+ relatedCampaigns: {
29
+ type: sequelize_1.DataTypes.JSONB,
30
+ allowNull: true,
31
+ field: "related_campaigns",
32
+ },
28
33
  createdAt: {
29
34
  type: sequelize_1.DataTypes.DATE,
30
35
  allowNull: false,
@@ -1 +1 @@
1
- {"version":3,"file":"conversion-log.js","sourceRoot":"","sources":["../../event-collector-models/conversion-log.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AAEnB,kEAAuC;AACvC,0DAAiC;AAEjC,MAAM,aAAc,SAAQ,iBAG3B;CAKA;AAED,aAAa,CAAC,IAAI,CAChB;IACE,EAAE,EAAE;QACF,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,YAAY,EAAE,qBAAS,CAAC,MAAM;QAC9B,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,IAAI;KACZ;IACD,SAAS,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,aAAa;KACrB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,gBAAgB;KACxB;IACD,SAAS,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,qBAAS,CAAC,GAAG;QAC3B,UAAU,EAAE,IAAI;KACjB;CACF,EACD;IACE,SAAS,EAAT,sBAAS;IACT,SAAS,EAAE,gBAAgB;IAC3B,UAAU,EAAE,KAAK;CAClB,CACF,CAAC;AAEF,aAAa,CAAC,SAAS,CAAC,kBAAO,EAAE;IAC/B,UAAU,EAAE,WAAW;IACvB,EAAE,EAAE,SAAS;IACb,SAAS,EAAE,IAAI;CAChB,CAAC,CAAC;AAEH,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"conversion-log.js","sourceRoot":"","sources":["../../event-collector-models/conversion-log.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AAEnB,kEAAuC;AACvC,0DAAiC;AAEjC,MAAM,aAAc,SAAQ,iBAG3B;CAMA;AAED,aAAa,CAAC,IAAI,CAChB;IACE,EAAE,EAAE;QACF,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,YAAY,EAAE,qBAAS,CAAC,MAAM;QAC9B,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,IAAI;KACZ;IACD,SAAS,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,aAAa;KACrB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,gBAAgB;KACxB;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,qBAAS,CAAC,KAAK;QACrB,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,mBAAmB;KAC3B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,qBAAS,CAAC,GAAG;QAC3B,UAAU,EAAE,IAAI;KACjB;CACF,EACD;IACE,SAAS,EAAT,sBAAS;IACT,SAAS,EAAE,gBAAgB;IAC3B,UAAU,EAAE,KAAK;CAClB,CACF,CAAC;AAEF,aAAa,CAAC,SAAS,CAAC,kBAAO,EAAE;IAC/B,UAAU,EAAE,WAAW;IACvB,EAAE,EAAE,SAAS;IACb,SAAS,EAAE,IAAI;CAChB,CAAC,CAAC;AAEH,kBAAe,aAAa,CAAC"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildEmailQueueInput = exports.buildSmsQueueInput = void 0;
4
+ const CLIENT_URL = process.env.CLIENT_URL;
5
+ const VARIABLE_MAP = {
6
+ FIRST_NAME: "{FIRST_NAME}",
7
+ CHECKOUT_URL: "{CHECKOUT_URL}",
8
+ PLAN_NAME: "{PLAN_NAME}",
9
+ FOR_PROMOTION: "{FOR_PROMOTION}",
10
+ JOINED_PLAN_NAME: "{JOINED_PLAN_NAME}",
11
+ };
12
+ const buildReplacements = (contact, campaignMessage) => {
13
+ let replacements = {};
14
+ const subject = (campaignMessage.subject || "").replace(/<[^>]*>/g, "");
15
+ const content = campaignMessage.content || "";
16
+ const metadata = campaignMessage.metadata || {};
17
+ const dynamicFields = metadata.dynamicFields || {};
18
+ if (subject.includes(VARIABLE_MAP.FIRST_NAME) ||
19
+ content.includes(VARIABLE_MAP.FIRST_NAME)) {
20
+ replacements[VARIABLE_MAP.FIRST_NAME] = contact.firstName || "";
21
+ }
22
+ if (subject.includes(VARIABLE_MAP.CHECKOUT_URL) ||
23
+ content.includes(VARIABLE_MAP.CHECKOUT_URL)) {
24
+ const checkoutUrl = dynamicFields.checkoutUrl || `${CLIENT_URL}/404`;
25
+ replacements[VARIABLE_MAP.CHECKOUT_URL] = checkoutUrl;
26
+ }
27
+ if (subject.includes(VARIABLE_MAP.PLAN_NAME) ||
28
+ content.includes(VARIABLE_MAP.PLAN_NAME)) {
29
+ const planName = dynamicFields.planName || "";
30
+ replacements[VARIABLE_MAP.PLAN_NAME] = planName;
31
+ }
32
+ if (subject.includes(VARIABLE_MAP.FOR_PROMOTION) ||
33
+ content.includes(VARIABLE_MAP.FOR_PROMOTION)) {
34
+ const promotion = dynamicFields.promotion || "";
35
+ replacements[VARIABLE_MAP.FOR_PROMOTION] = promotion;
36
+ }
37
+ return replacements;
38
+ };
39
+ /**
40
+ * Builds a single SMS queue input object.
41
+ */
42
+ const buildSmsQueueInput = (senderId, contact, campaignMessage, scheduleSendTime // Optional: Used for absolute/relative timing
43
+ ) => {
44
+ const replacements = buildReplacements(contact, campaignMessage);
45
+ const configuration = {
46
+ replacements,
47
+ };
48
+ if (scheduleSendTime) {
49
+ configuration.scheduleSendTime = scheduleSendTime;
50
+ }
51
+ return {
52
+ campaignId: campaignMessage.campaignId,
53
+ campaignMessageId: campaignMessage.id,
54
+ senderId,
55
+ contactId: contact.id,
56
+ contactPhoneNumber: contact.phoneNumber || "",
57
+ configuration: configuration,
58
+ };
59
+ };
60
+ exports.buildSmsQueueInput = buildSmsQueueInput;
61
+ /**
62
+ * Builds a single Email queue input object.
63
+ */
64
+ const buildEmailQueueInput = (senderId, contact, campaignMessage, scheduleSendTime // Optional: Used for absolute/relative timing
65
+ ) => {
66
+ const replacements = buildReplacements(contact, campaignMessage);
67
+ const configuration = {
68
+ replacements,
69
+ };
70
+ if (scheduleSendTime) {
71
+ configuration.scheduleSendTime = scheduleSendTime;
72
+ }
73
+ return {
74
+ campaignId: campaignMessage.campaignId,
75
+ campaignMessageId: campaignMessage.id,
76
+ senderId,
77
+ contactId: contact.id,
78
+ contactEmail: contact.email || "",
79
+ configuration: configuration,
80
+ };
81
+ };
82
+ exports.buildEmailQueueInput = buildEmailQueueInput;
83
+ exports.default = { buildReplacements };
84
+ //# sourceMappingURL=campaignUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"campaignUtils.js","sourceRoot":"","sources":["../../utils/campaignUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.campaignUtils = void 0;
7
+ var campaignUtils_1 = require("./campaignUtils");
8
+ Object.defineProperty(exports, "campaignUtils", { enumerable: true, get: function () { return __importDefault(campaignUtils_1).default; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":";;;;;;AAAA,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB"}
@@ -16,6 +16,7 @@ class ConversionLog extends Model<
16
16
  declare id: CreationOptional<string>;
17
17
  declare sendLogId: string;
18
18
  declare transactionId: string;
19
+ declare relatedCampaigns: object;
19
20
  declare createdAt: CreationOptional<Date>;
20
21
  }
21
22
 
@@ -37,6 +38,11 @@ ConversionLog.init(
37
38
  allowNull: false,
38
39
  field: "transaction_id",
39
40
  },
41
+ relatedCampaigns: {
42
+ type: DataTypes.JSONB,
43
+ allowNull: true,
44
+ field: "related_campaigns",
45
+ },
40
46
  createdAt: {
41
47
  type: DataTypes.DATE,
42
48
  allowNull: false,
package/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "name": "@winible/winible-typed",
3
- "version": "2.65.1",
3
+ "version": "2.66.0",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "./dist/index.d.ts",
7
7
  "exports": {
8
8
  ".": "./dist/index.js",
9
9
  "./dist/src/types": "./dist/src/types.js",
10
- "./event-collector-models": "./dist/event-collector-models/index.js"
10
+ "./event-collector-models": "./dist/event-collector-models/index.js",
11
+ "./util": "./dist/util/index.js"
11
12
  },
12
13
  "scripts": {
13
14
  "start": "nf start",
@@ -72,7 +73,7 @@
72
73
  "typescript": "^4.8.4"
73
74
  },
74
75
  "engines": {
75
- "node": "14.x"
76
+ "node": ">=16.x"
76
77
  },
77
78
  "files": [
78
79
  "typed-model/**/*",