@kb0912/notification-brevo 1.0.3 → 1.0.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.
|
@@ -49,6 +49,16 @@ class BrevoProviderService extends utils_1.AbstractNotificationProviderService {
|
|
|
49
49
|
this.apiInstance = new Brevo.TransactionalEmailsApi();
|
|
50
50
|
this.apiInstance.setApiKey(Brevo.TransactionalEmailsApiApiKeys.apiKey, this.options.apiKey);
|
|
51
51
|
}
|
|
52
|
+
humanPrice(amount, currencyCode) {
|
|
53
|
+
if (!amount)
|
|
54
|
+
return "0.00";
|
|
55
|
+
const formatter = new Intl.NumberFormat([], {
|
|
56
|
+
style: "currency",
|
|
57
|
+
currencyDisplay: "narrowSymbol",
|
|
58
|
+
currency: currencyCode.toUpperCase(), // "VND"
|
|
59
|
+
});
|
|
60
|
+
return formatter.format(amount);
|
|
61
|
+
}
|
|
52
62
|
async send(notification) {
|
|
53
63
|
const { to, template, data } = notification;
|
|
54
64
|
let templateId;
|
|
@@ -80,19 +90,19 @@ class BrevoProviderService extends utils_1.AbstractNotificationProviderService {
|
|
|
80
90
|
currency_code: order?.currency_code,
|
|
81
91
|
date_placed: new Date(order?.created_at).toLocaleDateString(),
|
|
82
92
|
display_id: order?.display_id,
|
|
83
|
-
total:
|
|
93
|
+
total: this.humanPrice(order?.total, order?.currency_code),
|
|
84
94
|
customer_name: `${order?.shipping_address?.first_name} ${order?.shipping_address?.last_name}`, // Full name
|
|
85
95
|
items: order?.items.map((item) => ({
|
|
86
96
|
...item,
|
|
87
|
-
unit_price:
|
|
88
|
-
total:
|
|
97
|
+
unit_price: this.humanPrice(item.unit_price, order?.currency_code),
|
|
98
|
+
total: this.humanPrice(item.total, order?.currency_code),
|
|
89
99
|
thumbnail: item.thumbnail,
|
|
90
100
|
title: item.product_title,
|
|
91
101
|
description: item.product_description
|
|
92
102
|
})),
|
|
93
103
|
shipping_address: order?.shipping_address,
|
|
94
104
|
billing_address: order?.billing_address,
|
|
95
|
-
shipping_subtotal:
|
|
105
|
+
shipping_subtotal: this.humanPrice(order?.shipping_subtotal, order?.currency_code),
|
|
96
106
|
shipping_methods: order?.shipping_methods,
|
|
97
107
|
payment_collections: order?.payment_collections[0]?.payments.map(payment => ({
|
|
98
108
|
...payment,
|
|
@@ -118,18 +128,20 @@ class BrevoProviderService extends utils_1.AbstractNotificationProviderService {
|
|
|
118
128
|
break;
|
|
119
129
|
case "cart.abandoned":
|
|
120
130
|
templateId = parseInt(this.options.abandonedCartTemplateId);
|
|
131
|
+
const cart = data.cart;
|
|
121
132
|
params = {
|
|
122
|
-
cart_id:
|
|
123
|
-
created_at:
|
|
124
|
-
name:
|
|
125
|
-
phone:
|
|
126
|
-
|
|
133
|
+
cart_id: cart?.id,
|
|
134
|
+
created_at: cart?.created_at,
|
|
135
|
+
name: cart?.name,
|
|
136
|
+
phone: cart?.phone,
|
|
137
|
+
currency_code: cart?.currency_code,
|
|
138
|
+
item: cart?.items.map((item) => ({
|
|
127
139
|
...item,
|
|
128
|
-
unit_price:
|
|
129
|
-
total:
|
|
140
|
+
unit_price: this.humanPrice(item.unit_price, cart?.currency_code),
|
|
141
|
+
total: this.humanPrice(item.total, cart?.currency_code),
|
|
130
142
|
thumbnail: item.thumbnail,
|
|
131
143
|
title: item.product_title,
|
|
132
|
-
description: item.product_description
|
|
144
|
+
description: item.product_description,
|
|
133
145
|
})),
|
|
134
146
|
};
|
|
135
147
|
break;
|
|
@@ -165,4 +177,4 @@ class BrevoProviderService extends utils_1.AbstractNotificationProviderService {
|
|
|
165
177
|
}
|
|
166
178
|
BrevoProviderService.identifier = "brevo";
|
|
167
179
|
exports.default = BrevoProviderService;
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
180
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL25vdGlmaWNhdGlvbnMtYnJldm8vc2VydmljZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFHbUM7QUFNbkMsdURBQXlDO0FBS3pDLE1BQU0sb0JBQXFCLFNBQVEsMkNBQW1DO0lBT3BFLFlBQVksRUFBRSxNQUFNLEVBQXNCLEVBQUUsT0FBNEI7UUFDdEUsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUVyQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN6QixNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5Qiw4QkFBOEIsQ0FDL0IsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN2QixNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QixpQ0FBaUMsQ0FDbEMsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksS0FBSyxDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQ3hCLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxNQUFNLEVBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUNwQixDQUFDO0lBQ0osQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFNLEVBQUUsWUFBWTtRQUM3QixJQUFJLENBQUMsTUFBTTtZQUNULE9BQU8sTUFBTSxDQUFDO1FBRWhCLE1BQU0s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
|
|
@@ -14,6 +14,7 @@ exports.sendAbandonedCartWorkflow = (0, workflows_sdk_1.createWorkflow)("send-ab
|
|
|
14
14
|
"customer.first_name",
|
|
15
15
|
"customer.last_name",
|
|
16
16
|
"customer.phone",
|
|
17
|
+
"currency_code",
|
|
17
18
|
"items.*"
|
|
18
19
|
],
|
|
19
20
|
filters: { id: cartId },
|
|
@@ -44,4 +45,4 @@ exports.sendAbandonedCartWorkflow = (0, workflows_sdk_1.createWorkflow)("send-ab
|
|
|
44
45
|
const notificationStep = (0, send_notification_1.sendNotificationStep)(notificationData);
|
|
45
46
|
return new workflows_sdk_1.WorkflowResponse(notificationStep);
|
|
46
47
|
});
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1hYmFuZG9uZWQtY2FydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc2VuZC1hYmFuZG9uZWQtY2FydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBK0c7QUFDL0csNERBQWdFO0FBQ2hFLGlFQUFpRTtBQU9wRCxRQUFBLHlCQUF5QixHQUFHLElBQUEsOEJBQWMsRUFDckQscUJBQXFCLEVBQ3JCLENBQUMsRUFBRSxNQUFNLEVBQWlCLEVBQUUsRUFBRTtJQUM1QixNQUFNLFFBQVEsR0FBRyxJQUFBLDhCQUFpQixFQUFDO1FBQ2pDLE1BQU0sRUFBRSxNQUFNO1FBQ2QsTUFBTSxFQUFFO1lBQ04sSUFBSTtZQUNKLE9BQU87WUFDUCxZQUFZO1lBQ1oscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLFNBQVM7U0FDVjtRQUNELE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7S0FDeEIsQ0FBQyxDQUFDO0lBRUgsTUFBTSx1QkFBdUIsR0FBRyxJQUFBLDBCQUFVLEVBQ3hDLHFDQUFxQyxFQUNyQyxLQUFLLEVBQUUsS0FBc0IsRUFBRSxFQUFFO1FBQy9CLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDekIsNkNBQTZDO1FBRTdDLE1BQU0sZ0JBQWdCLEdBQTRCO1lBQ2hEO2dCQUNFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSztnQkFDbEIsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLElBQUksRUFBRTtvQkFDSixJQUFJLEVBQUU7d0JBQ0osRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO3dCQUNmLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVTt3QkFDL0IsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxTQUFTLElBQUksRUFBRSxDQUFDO3dCQUN4RixLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxLQUFLLElBQUksd0JBQXdCO3dCQUMzRCxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUM7cUJBQzVEO2lCQUNGO2FBQ0Y7U0FDRixDQUFDO1FBRUYsOEVBQThFO1FBQzlFLE9BQU8sSUFBSSw0QkFBWSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDNUMsQ0FBQyxDQUNGLENBQUM7SUFFRixNQUFNLGdCQUFnQixHQUFHLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNELE1BQU0sZ0JBQWdCLEdBQUcsSUFBQSx3Q0FBb0IsRUFBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRWhFLE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ2hELENBQUMsQ0FDRixDQUFDIn0=
|