@comet/brevo-api 2.0.0-canary-20240613061021 → 2.0.0-canary-20240708071523
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/lib/brevo-api/brevo-api-campaigns.service.d.ts +11 -17
- package/lib/brevo-api/brevo-api-campaigns.service.d.ts.map +1 -1
- package/lib/brevo-api/brevo-api-campaigns.service.js +51 -24
- package/lib/brevo-api/brevo-api-campaigns.service.js.map +1 -1
- package/lib/brevo-api/brevo-api-contact.service.d.ts +17 -17
- package/lib/brevo-api/brevo-api-contact.service.d.ts.map +1 -1
- package/lib/brevo-api/brevo-api-contact.service.js +43 -33
- package/lib/brevo-api/brevo-api-contact.service.js.map +1 -1
- package/lib/brevo-api/brevo-api.module.d.ts.map +1 -1
- package/lib/brevo-api/brevo-api.module.js +2 -3
- package/lib/brevo-api/brevo-api.module.js.map +1 -1
- package/lib/brevo-contact/brevo-contact.resolver.d.ts.map +1 -1
- package/lib/brevo-contact/brevo-contact.resolver.js +18 -15
- package/lib/brevo-contact/brevo-contact.resolver.js.map +1 -1
- package/lib/brevo-contact/brevo-contacts.service.d.ts.map +1 -1
- package/lib/brevo-contact/brevo-contacts.service.js +1 -1
- package/lib/brevo-contact/brevo-contacts.service.js.map +1 -1
- package/lib/brevo-module.d.ts.map +1 -1
- package/lib/brevo-module.js +0 -7
- package/lib/brevo-module.js.map +1 -1
- package/lib/config/brevo-module.config.d.ts +8 -2
- package/lib/config/brevo-module.config.d.ts.map +1 -1
- package/lib/email-campaign/email-campaign.module.d.ts +1 -3
- package/lib/email-campaign/email-campaign.module.d.ts.map +1 -1
- package/lib/email-campaign/email-campaign.module.js +2 -2
- package/lib/email-campaign/email-campaign.module.js.map +1 -1
- package/lib/email-campaign/email-campaign.resolver.d.ts.map +1 -1
- package/lib/email-campaign/email-campaign.resolver.js +13 -11
- package/lib/email-campaign/email-campaign.resolver.js.map +1 -1
- package/lib/email-campaign/email-campaigns.service.d.ts +6 -7
- package/lib/email-campaign/email-campaigns.service.d.ts.map +1 -1
- package/lib/email-campaign/email-campaigns.service.js +13 -20
- package/lib/email-campaign/email-campaigns.service.js.map +1 -1
- package/lib/target-group/target-group.resolver.d.ts.map +1 -1
- package/lib/target-group/target-group.resolver.js +6 -6
- package/lib/target-group/target-group.resolver.js.map +1 -1
- package/lib/target-group/target-groups.service.d.ts.map +1 -1
- package/lib/target-group/target-groups.service.js +4 -4
- package/lib/target-group/target-groups.service.js.map +1 -1
- package/lib/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/lib/brevo-api/brevo-api-sender.service.d.ts +0 -9
- package/lib/brevo-api/brevo-api-sender.service.d.ts.map +0 -1
- package/lib/brevo-api/brevo-api-sender.service.js +0 -73
- package/lib/brevo-api/brevo-api-sender.service.js.map +0 -1
- package/lib/brevo-config/brevo-config.module.d.ts +0 -12
- package/lib/brevo-config/brevo-config.module.d.ts.map +0 -1
- package/lib/brevo-config/brevo-config.module.js +0 -29
- package/lib/brevo-config/brevo-config.module.js.map +0 -1
- package/lib/brevo-config/brevo-config.resolver.d.ts +0 -8
- package/lib/brevo-config/brevo-config.resolver.d.ts.map +0 -1
- package/lib/brevo-config/brevo-config.resolver.js +0 -130
- package/lib/brevo-config/brevo-config.resolver.js.map +0 -1
- package/lib/brevo-config/dto/brevo-config.input.d.ts +0 -7
- package/lib/brevo-config/dto/brevo-config.input.d.ts.map +0 -1
- package/lib/brevo-config/dto/brevo-config.input.js +0 -40
- package/lib/brevo-config/dto/brevo-config.input.js.map +0 -1
- package/lib/brevo-config/entities/brevo-config-entity.factory.d.ts +0 -18
- package/lib/brevo-config/entities/brevo-config-entity.factory.d.ts.map +0 -1
- package/lib/brevo-config/entities/brevo-config-entity.factory.js +0 -71
- package/lib/brevo-config/entities/brevo-config-entity.factory.js.map +0 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as SibApiV3Sdk from "@sendinblue/client";
|
|
2
|
+
import { EmailCampaignScopeInterface } from "src/types";
|
|
2
3
|
import { BrevoModuleConfig } from "../config/brevo-module.config";
|
|
3
4
|
import { EmailCampaignInterface } from "../email-campaign/entities/email-campaign-entity.factory";
|
|
4
5
|
import { SendingState } from "../email-campaign/sending-state.enum";
|
|
@@ -6,34 +7,27 @@ import { BrevoApiCampaign } from "./dto/brevo-api-campaign";
|
|
|
6
7
|
import { BrevoApiCampaignStatistics } from "./dto/brevo-api-campaign-statistics";
|
|
7
8
|
export declare class BrevoApiCampaignsService {
|
|
8
9
|
private readonly config;
|
|
9
|
-
private readonly
|
|
10
|
+
private readonly campaignsApis;
|
|
10
11
|
constructor(config: BrevoModuleConfig);
|
|
12
|
+
private getCampaignsApi;
|
|
11
13
|
getSendingInformationFromBrevoCampaign(campaign: BrevoApiCampaign): SendingState;
|
|
12
|
-
createBrevoCampaign({ campaign, htmlContent,
|
|
14
|
+
createBrevoCampaign({ campaign, htmlContent, scheduledAt, }: {
|
|
13
15
|
campaign: EmailCampaignInterface;
|
|
14
16
|
htmlContent: string;
|
|
15
|
-
sender: {
|
|
16
|
-
name: string;
|
|
17
|
-
mail: string;
|
|
18
|
-
};
|
|
19
17
|
scheduledAt?: Date;
|
|
20
18
|
}): Promise<number>;
|
|
21
|
-
updateBrevoCampaign({ id, campaign, htmlContent, scheduledAt,
|
|
19
|
+
updateBrevoCampaign({ id, campaign, htmlContent, scheduledAt, }: {
|
|
22
20
|
id: number;
|
|
23
21
|
campaign: EmailCampaignInterface;
|
|
24
22
|
htmlContent: string;
|
|
25
|
-
sender: {
|
|
26
|
-
name: string;
|
|
27
|
-
mail: string;
|
|
28
|
-
};
|
|
29
23
|
scheduledAt?: Date;
|
|
30
24
|
}): Promise<boolean>;
|
|
31
|
-
sendBrevoCampaign(
|
|
32
|
-
updateBrevoCampaignStatus(
|
|
33
|
-
sendTestEmail(
|
|
34
|
-
loadBrevoCampaignsByIds(ids: number[]): Promise<BrevoApiCampaign[]>;
|
|
35
|
-
loadBrevoCampaignById(
|
|
36
|
-
loadBrevoCampaignStatisticsById(
|
|
25
|
+
sendBrevoCampaign(campaign: EmailCampaignInterface): Promise<boolean>;
|
|
26
|
+
updateBrevoCampaignStatus(campaign: EmailCampaignInterface, updatedStatus: SibApiV3Sdk.UpdateCampaignStatus.StatusEnum): Promise<boolean>;
|
|
27
|
+
sendTestEmail(campaign: EmailCampaignInterface, emails: string[]): Promise<boolean>;
|
|
28
|
+
loadBrevoCampaignsByIds(ids: number[], scope: EmailCampaignScopeInterface): Promise<BrevoApiCampaign[]>;
|
|
29
|
+
loadBrevoCampaignById(campaign: EmailCampaignInterface): Promise<BrevoApiCampaign>;
|
|
30
|
+
loadBrevoCampaignStatisticsById(campaign: EmailCampaignInterface): Promise<BrevoApiCampaignStatistics>;
|
|
37
31
|
private getCampaignsResponse;
|
|
38
32
|
}
|
|
39
33
|
//# sourceMappingURL=brevo-api-campaigns.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-api-campaigns.service.d.ts","sourceRoot":"","sources":["../../src/brevo-api/brevo-api-campaigns.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"brevo-api-campaigns.service.d.ts","sourceRoot":"","sources":["../../src/brevo-api/brevo-api-campaigns.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAExD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0DAA0D,CAAC;AAClG,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAEjF,qBACa,wBAAwB;IAGQ,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFhE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoD;gBAExB,MAAM,EAAE,iBAAiB;IAEnF,OAAO,CAAC,eAAe;IAgBhB,sCAAsC,CAAC,QAAQ,EAAE,gBAAgB,GAAG,YAAY;IAU1E,mBAAmB,CAAC,EAC7B,QAAQ,EACR,WAAW,EACX,WAAW,GACd,EAAE;QACC,QAAQ,EAAE,sBAAsB,CAAC;QACjC,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,IAAI,CAAC;KACtB,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBN,mBAAmB,CAAC,EAC7B,EAAE,EACF,QAAQ,EACR,WAAW,EACX,WAAW,GACd,EAAE;QACC,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,sBAAsB,CAAC;QACjC,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,IAAI,CAAC;KACtB,GAAG,OAAO,CAAC,OAAO,CAAC;IAiBP,iBAAiB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC;IASrE,yBAAyB,CAClC,QAAQ,EAAE,sBAAsB,EAChC,aAAa,EAAE,WAAW,CAAC,oBAAoB,CAAC,UAAU,GAC3D,OAAO,CAAC,OAAO,CAAC;IAWN,aAAa,CAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IASnF,uBAAuB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,2BAA2B,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IASvG,qBAAqB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAUlF,+BAA+B,CAAC,QAAQ,EAAE,sBAAsB,GAAG,OAAO,CAAC,0BAA0B,CAAC;YAUpG,oBAAoB;CA4BtC"}
|
|
@@ -76,8 +76,18 @@ const sending_state_enum_1 = require("../email-campaign/sending-state.enum");
|
|
|
76
76
|
let BrevoApiCampaignsService = class BrevoApiCampaignsService {
|
|
77
77
|
constructor(config) {
|
|
78
78
|
this.config = config;
|
|
79
|
-
this.
|
|
80
|
-
|
|
79
|
+
this.campaignsApis = new Map();
|
|
80
|
+
}
|
|
81
|
+
getCampaignsApi(scope) {
|
|
82
|
+
const existingCampaignsApiForScope = this.campaignsApis.get(JSON.stringify(scope));
|
|
83
|
+
if (existingCampaignsApiForScope) {
|
|
84
|
+
return existingCampaignsApiForScope;
|
|
85
|
+
}
|
|
86
|
+
const { apiKey } = this.config.brevo.resolveConfig(scope);
|
|
87
|
+
const campaignsApi = new SibApiV3Sdk.EmailCampaignsApi();
|
|
88
|
+
campaignsApi.setApiKey(SibApiV3Sdk.EmailCampaignsApiApiKeys.apiKey, apiKey);
|
|
89
|
+
this.campaignsApis.set(JSON.stringify(scope), campaignsApi);
|
|
90
|
+
return campaignsApi;
|
|
81
91
|
}
|
|
82
92
|
getSendingInformationFromBrevoCampaign(campaign) {
|
|
83
93
|
if (campaign.status === "sent") {
|
|
@@ -88,64 +98,75 @@ let BrevoApiCampaignsService = class BrevoApiCampaignsService {
|
|
|
88
98
|
}
|
|
89
99
|
return sending_state_enum_1.SendingState.DRAFT;
|
|
90
100
|
}
|
|
91
|
-
createBrevoCampaign({ campaign, htmlContent,
|
|
101
|
+
createBrevoCampaign({ campaign, htmlContent, scheduledAt, }) {
|
|
92
102
|
var _a;
|
|
93
103
|
return __awaiter(this, void 0, void 0, function* () {
|
|
94
104
|
const targetGroup = yield ((_a = campaign.targetGroup) === null || _a === void 0 ? void 0 : _a.load());
|
|
105
|
+
const { sender } = this.config.brevo.resolveConfig(campaign.scope);
|
|
95
106
|
const emailCampaign = {
|
|
96
107
|
name: campaign.title,
|
|
97
108
|
subject: campaign.subject,
|
|
98
|
-
sender: { name: sender.name, email: sender.
|
|
109
|
+
sender: { name: sender.name, email: sender.email },
|
|
99
110
|
recipients: { listIds: targetGroup ? [targetGroup === null || targetGroup === void 0 ? void 0 : targetGroup.brevoId] : [] },
|
|
100
111
|
htmlContent,
|
|
101
112
|
scheduledAt: scheduledAt === null || scheduledAt === void 0 ? void 0 : scheduledAt.toISOString(),
|
|
102
113
|
};
|
|
103
|
-
const data = yield this.
|
|
114
|
+
const data = yield this.getCampaignsApi(campaign.scope).createEmailCampaign(emailCampaign);
|
|
104
115
|
return data.body.id;
|
|
105
116
|
});
|
|
106
117
|
}
|
|
107
|
-
updateBrevoCampaign({ id, campaign, htmlContent, scheduledAt,
|
|
118
|
+
updateBrevoCampaign({ id, campaign, htmlContent, scheduledAt, }) {
|
|
108
119
|
var _a;
|
|
109
120
|
return __awaiter(this, void 0, void 0, function* () {
|
|
110
121
|
const targetGroup = yield ((_a = campaign.targetGroup) === null || _a === void 0 ? void 0 : _a.load());
|
|
122
|
+
const { sender } = this.config.brevo.resolveConfig(campaign.scope);
|
|
111
123
|
const emailCampaign = {
|
|
112
124
|
name: campaign.title,
|
|
113
125
|
subject: campaign.subject,
|
|
114
|
-
sender: { name: sender.name, mail: sender.
|
|
126
|
+
sender: { name: sender.name, mail: sender.email },
|
|
115
127
|
recipients: { listIds: targetGroup ? [targetGroup === null || targetGroup === void 0 ? void 0 : targetGroup.brevoId] : [] },
|
|
116
128
|
htmlContent,
|
|
117
129
|
scheduledAt: scheduledAt === null || scheduledAt === void 0 ? void 0 : scheduledAt.toISOString(),
|
|
118
130
|
};
|
|
119
|
-
const result = yield this.
|
|
131
|
+
const result = yield this.getCampaignsApi(campaign.scope).updateEmailCampaign(id, emailCampaign);
|
|
120
132
|
return result.response.statusCode === 204;
|
|
121
133
|
});
|
|
122
134
|
}
|
|
123
|
-
sendBrevoCampaign(
|
|
135
|
+
sendBrevoCampaign(campaign) {
|
|
124
136
|
return __awaiter(this, void 0, void 0, function* () {
|
|
125
|
-
|
|
137
|
+
if (!campaign.brevoId) {
|
|
138
|
+
throw new Error("Campaign has no brevoId");
|
|
139
|
+
}
|
|
140
|
+
const result = yield this.getCampaignsApi(campaign.scope).sendEmailCampaignNow(campaign.brevoId);
|
|
126
141
|
return result.response.statusCode === 204;
|
|
127
142
|
});
|
|
128
143
|
}
|
|
129
|
-
updateBrevoCampaignStatus(
|
|
144
|
+
updateBrevoCampaignStatus(campaign, updatedStatus) {
|
|
130
145
|
return __awaiter(this, void 0, void 0, function* () {
|
|
146
|
+
if (!campaign.brevoId) {
|
|
147
|
+
throw new Error("Campaign has no brevoId");
|
|
148
|
+
}
|
|
131
149
|
const status = new SibApiV3Sdk.UpdateCampaignStatus();
|
|
132
|
-
status.status =
|
|
133
|
-
const result = yield this.
|
|
150
|
+
status.status = updatedStatus;
|
|
151
|
+
const result = yield this.getCampaignsApi(campaign.scope).updateCampaignStatus(campaign.brevoId, status);
|
|
134
152
|
return result.response.statusCode === 204;
|
|
135
153
|
});
|
|
136
154
|
}
|
|
137
|
-
sendTestEmail(
|
|
155
|
+
sendTestEmail(campaign, emails) {
|
|
138
156
|
return __awaiter(this, void 0, void 0, function* () {
|
|
139
|
-
|
|
157
|
+
if (!campaign.brevoId) {
|
|
158
|
+
throw new Error("Campaign has no brevoId");
|
|
159
|
+
}
|
|
160
|
+
const result = yield this.getCampaignsApi(campaign.scope).sendTestEmail(campaign.brevoId, { emailTo: emails });
|
|
140
161
|
return result.response.statusCode === 204;
|
|
141
162
|
});
|
|
142
163
|
}
|
|
143
|
-
loadBrevoCampaignsByIds(ids) {
|
|
164
|
+
loadBrevoCampaignsByIds(ids, scope) {
|
|
144
165
|
var _a, e_1, _b, _c;
|
|
145
166
|
return __awaiter(this, void 0, void 0, function* () {
|
|
146
167
|
const campaigns = [];
|
|
147
168
|
try {
|
|
148
|
-
for (var _d = true, _e = __asyncValues(yield this.getCampaignsResponse(ids)), _f; _f = yield _e.next(), _a = _f.done, !_a;) {
|
|
169
|
+
for (var _d = true, _e = __asyncValues(yield this.getCampaignsResponse(ids, scope)), _f; _f = yield _e.next(), _a = _f.done, !_a;) {
|
|
149
170
|
_c = _f.value;
|
|
150
171
|
_d = false;
|
|
151
172
|
try {
|
|
@@ -167,25 +188,31 @@ let BrevoApiCampaignsService = class BrevoApiCampaignsService {
|
|
|
167
188
|
return campaigns;
|
|
168
189
|
});
|
|
169
190
|
}
|
|
170
|
-
loadBrevoCampaignById(
|
|
191
|
+
loadBrevoCampaignById(campaign) {
|
|
171
192
|
return __awaiter(this, void 0, void 0, function* () {
|
|
172
|
-
|
|
193
|
+
if (!campaign.brevoId) {
|
|
194
|
+
throw new Error("Campaign has no brevoId");
|
|
195
|
+
}
|
|
196
|
+
const response = yield this.getCampaignsApi(campaign.scope).getEmailCampaign(campaign.brevoId);
|
|
173
197
|
return response.body;
|
|
174
198
|
});
|
|
175
199
|
}
|
|
176
|
-
loadBrevoCampaignStatisticsById(
|
|
200
|
+
loadBrevoCampaignStatisticsById(campaign) {
|
|
177
201
|
return __awaiter(this, void 0, void 0, function* () {
|
|
178
|
-
|
|
179
|
-
|
|
202
|
+
if (!campaign.brevoId) {
|
|
203
|
+
throw new Error("Campaign has no brevoId");
|
|
204
|
+
}
|
|
205
|
+
const brevoCampaign = yield this.getCampaignsApi(campaign.scope).getEmailCampaign(campaign.brevoId);
|
|
206
|
+
return brevoCampaign.body.statistics.campaignStats[0];
|
|
180
207
|
});
|
|
181
208
|
}
|
|
182
|
-
getCampaignsResponse(ids, status) {
|
|
209
|
+
getCampaignsResponse(ids, scope, status) {
|
|
183
210
|
var _a;
|
|
184
211
|
return __asyncGenerator(this, arguments, function* getCampaignsResponse_1() {
|
|
185
212
|
let offset = 0;
|
|
186
213
|
const limit = 100;
|
|
187
214
|
while (true) {
|
|
188
|
-
const campaignsResponse = yield __await(this.
|
|
215
|
+
const campaignsResponse = yield __await(this.getCampaignsApi(scope).getEmailCampaigns(undefined, status, undefined, undefined, undefined, limit, offset));
|
|
189
216
|
const campaignArray = ((_a = campaignsResponse.body.campaigns) !== null && _a !== void 0 ? _a : []).filter((item) => ids.includes(item.id));
|
|
190
217
|
if (campaignArray.length === 0) {
|
|
191
218
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-api-campaigns.service.js","sourceRoot":"","sources":["../../src/brevo-api/brevo-api-campaigns.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,gEAAkD;
|
|
1
|
+
{"version":3,"file":"brevo-api-campaigns.service.js","sourceRoot":"","sources":["../../src/brevo-api/brevo-api-campaigns.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as SibApiV3Sdk from "@sendinblue/client";
|
|
2
|
-
import { BrevoContactAttributesInterface } from "src/types";
|
|
2
|
+
import { BrevoContactAttributesInterface, EmailCampaignScopeInterface } from "src/types";
|
|
3
3
|
import { BrevoContactInterface } from "../brevo-contact/dto/brevo-contact.factory";
|
|
4
4
|
import { BrevoModuleConfig } from "../config/brevo-module.config";
|
|
5
|
-
import { TargetGroupInputInterface } from "../target-group/dto/target-group-input.factory";
|
|
6
5
|
import { BrevoApiContactList } from "./dto/brevo-api-contact-list";
|
|
7
6
|
export interface CreateDoubleOptInContactData {
|
|
8
7
|
email: string;
|
|
@@ -11,26 +10,27 @@ export interface CreateDoubleOptInContactData {
|
|
|
11
10
|
}
|
|
12
11
|
export declare class BrevoApiContactsService {
|
|
13
12
|
private readonly config;
|
|
14
|
-
private readonly
|
|
13
|
+
private readonly contactsApis;
|
|
15
14
|
constructor(config: BrevoModuleConfig);
|
|
16
|
-
|
|
15
|
+
private getContactsApi;
|
|
16
|
+
createDoubleOptInBrevoContact({ email, redirectionUrl, attributes }: CreateDoubleOptInContactData, brevoIds: number[], templateId: number, scope: EmailCampaignScopeInterface): Promise<boolean>;
|
|
17
17
|
updateContact(id: number, { blocked, attributes, listIds, unlinkListIds, }: {
|
|
18
18
|
blocked?: boolean;
|
|
19
19
|
attributes?: BrevoContactAttributesInterface;
|
|
20
20
|
listIds?: number[];
|
|
21
21
|
unlinkListIds?: number[];
|
|
22
|
-
}): Promise<BrevoContactInterface>;
|
|
23
|
-
updateMultipleContacts(contacts: SibApiV3Sdk.UpdateBatchContactsContacts[]): Promise<boolean>;
|
|
24
|
-
deleteContact(id: number): Promise<boolean>;
|
|
25
|
-
findContact(id: number): Promise<BrevoContactInterface>;
|
|
26
|
-
getContactInfoByEmail(email: string): Promise<BrevoContactInterface | undefined>;
|
|
27
|
-
findContactsByListId(id: number, limit: number, offset: number): Promise<[BrevoContactInterface[], number]>;
|
|
28
|
-
blacklistMultipleContacts(emails: string[]): Promise<void>;
|
|
29
|
-
createBrevoContactList(
|
|
30
|
-
updateBrevoContactList(id: number, title: string): Promise<boolean>;
|
|
31
|
-
deleteBrevoContactList(id: number): Promise<boolean>;
|
|
32
|
-
findBrevoContactListById(id: number): Promise<BrevoApiContactList>;
|
|
33
|
-
findBrevoContactListsByIds(ids: number[]): Promise<BrevoApiContactList[]>;
|
|
34
|
-
getBrevoContactListResponses(): AsyncGenerator<BrevoApiContactList, void, undefined>;
|
|
22
|
+
}, scope: EmailCampaignScopeInterface): Promise<BrevoContactInterface>;
|
|
23
|
+
updateMultipleContacts(contacts: SibApiV3Sdk.UpdateBatchContactsContacts[], scope: EmailCampaignScopeInterface): Promise<boolean>;
|
|
24
|
+
deleteContact(id: number, scope: EmailCampaignScopeInterface): Promise<boolean>;
|
|
25
|
+
findContact(id: number, scope: EmailCampaignScopeInterface): Promise<BrevoContactInterface>;
|
|
26
|
+
getContactInfoByEmail(email: string, scope: EmailCampaignScopeInterface): Promise<BrevoContactInterface | undefined>;
|
|
27
|
+
findContactsByListId(id: number, limit: number, offset: number, scope: EmailCampaignScopeInterface): Promise<[BrevoContactInterface[], number]>;
|
|
28
|
+
blacklistMultipleContacts(emails: string[], scope: EmailCampaignScopeInterface): Promise<void>;
|
|
29
|
+
createBrevoContactList(title: string, scope: EmailCampaignScopeInterface): Promise<number | undefined>;
|
|
30
|
+
updateBrevoContactList(id: number, title: string, scope: EmailCampaignScopeInterface): Promise<boolean>;
|
|
31
|
+
deleteBrevoContactList(id: number, scope: EmailCampaignScopeInterface): Promise<boolean>;
|
|
32
|
+
findBrevoContactListById(id: number, scope: EmailCampaignScopeInterface): Promise<BrevoApiContactList>;
|
|
33
|
+
findBrevoContactListsByIds(ids: number[], scope: EmailCampaignScopeInterface): Promise<BrevoApiContactList[]>;
|
|
34
|
+
getBrevoContactListResponses(scope: EmailCampaignScopeInterface): AsyncGenerator<BrevoApiContactList, void, undefined>;
|
|
35
35
|
}
|
|
36
36
|
//# sourceMappingURL=brevo-api-contact.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-api-contact.service.d.ts","sourceRoot":"","sources":["../../src/brevo-api/brevo-api-contact.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,+BAA+B,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"brevo-api-contact.service.d.ts","sourceRoot":"","sources":["../../src/brevo-api/brevo-api-contact.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,10 +76,20 @@ const brevo_api_utils_1 = require("./brevo-api.utils");
|
|
|
76
76
|
let BrevoApiContactsService = class BrevoApiContactsService {
|
|
77
77
|
constructor(config) {
|
|
78
78
|
this.config = config;
|
|
79
|
-
this.
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
79
|
+
this.contactsApis = new Map();
|
|
80
|
+
}
|
|
81
|
+
getContactsApi(scope) {
|
|
82
|
+
const existingContactsApiForScope = this.contactsApis.get(JSON.stringify(scope));
|
|
83
|
+
if (existingContactsApiForScope) {
|
|
84
|
+
return existingContactsApiForScope;
|
|
85
|
+
}
|
|
86
|
+
const { apiKey } = this.config.brevo.resolveConfig(scope);
|
|
87
|
+
const contactsApi = new SibApiV3Sdk.ContactsApi();
|
|
88
|
+
contactsApi.setApiKey(SibApiV3Sdk.ContactsApiApiKeys.apiKey, apiKey);
|
|
89
|
+
this.contactsApis.set(JSON.stringify(scope), contactsApi);
|
|
90
|
+
return contactsApi;
|
|
91
|
+
}
|
|
92
|
+
createDoubleOptInBrevoContact({ email, redirectionUrl, attributes }, brevoIds, templateId, scope) {
|
|
83
93
|
return __awaiter(this, void 0, void 0, function* () {
|
|
84
94
|
const contact = {
|
|
85
95
|
email,
|
|
@@ -88,41 +98,41 @@ let BrevoApiContactsService = class BrevoApiContactsService {
|
|
|
88
98
|
redirectionUrl,
|
|
89
99
|
attributes,
|
|
90
100
|
};
|
|
91
|
-
const { response } = yield this.
|
|
101
|
+
const { response } = yield this.getContactsApi(scope).createDoiContact(contact);
|
|
92
102
|
return response.statusCode === 204 || response.statusCode === 201;
|
|
93
103
|
});
|
|
94
104
|
}
|
|
95
|
-
updateContact(id, { blocked, attributes, listIds, unlinkListIds, }) {
|
|
105
|
+
updateContact(id, { blocked, attributes, listIds, unlinkListIds, }, scope) {
|
|
96
106
|
return __awaiter(this, void 0, void 0, function* () {
|
|
97
107
|
const idAsString = id.toString();
|
|
98
|
-
yield this.
|
|
99
|
-
return this.findContact(id);
|
|
108
|
+
yield this.getContactsApi(scope).updateContact(idAsString, { emailBlacklisted: blocked, attributes, listIds, unlinkListIds }, scope);
|
|
109
|
+
return this.findContact(id, scope);
|
|
100
110
|
});
|
|
101
111
|
}
|
|
102
|
-
updateMultipleContacts(contacts) {
|
|
112
|
+
updateMultipleContacts(contacts, scope) {
|
|
103
113
|
return __awaiter(this, void 0, void 0, function* () {
|
|
104
|
-
const { response } = yield this.
|
|
114
|
+
const { response } = yield this.getContactsApi(scope).updateBatchContacts({ contacts });
|
|
105
115
|
return response.statusCode === 204;
|
|
106
116
|
});
|
|
107
117
|
}
|
|
108
|
-
deleteContact(id) {
|
|
118
|
+
deleteContact(id, scope) {
|
|
109
119
|
return __awaiter(this, void 0, void 0, function* () {
|
|
110
120
|
const idAsString = id.toString();
|
|
111
|
-
const { response } = yield this.
|
|
121
|
+
const { response } = yield this.getContactsApi(scope).deleteContact(idAsString);
|
|
112
122
|
return response.statusCode === 204;
|
|
113
123
|
});
|
|
114
124
|
}
|
|
115
|
-
findContact(id) {
|
|
125
|
+
findContact(id, scope) {
|
|
116
126
|
return __awaiter(this, void 0, void 0, function* () {
|
|
117
127
|
const idAsString = id.toString();
|
|
118
|
-
const { body } = yield this.
|
|
128
|
+
const { body } = yield this.getContactsApi(scope).getContactInfo(idAsString);
|
|
119
129
|
return body;
|
|
120
130
|
});
|
|
121
131
|
}
|
|
122
|
-
getContactInfoByEmail(email) {
|
|
132
|
+
getContactInfoByEmail(email, scope) {
|
|
123
133
|
return __awaiter(this, void 0, void 0, function* () {
|
|
124
134
|
try {
|
|
125
|
-
const data = yield this.
|
|
135
|
+
const data = yield this.getContactsApi(scope).getContactInfo(email);
|
|
126
136
|
const contact = data.body;
|
|
127
137
|
if (!contact)
|
|
128
138
|
return undefined;
|
|
@@ -136,52 +146,52 @@ let BrevoApiContactsService = class BrevoApiContactsService {
|
|
|
136
146
|
}
|
|
137
147
|
});
|
|
138
148
|
}
|
|
139
|
-
findContactsByListId(id, limit, offset) {
|
|
149
|
+
findContactsByListId(id, limit, offset, scope) {
|
|
140
150
|
return __awaiter(this, void 0, void 0, function* () {
|
|
141
|
-
const data = yield this.
|
|
151
|
+
const data = yield this.getContactsApi(scope).getContactsFromList(id, undefined, limit, offset);
|
|
142
152
|
return [data.body.contacts, data.body.count];
|
|
143
153
|
});
|
|
144
154
|
}
|
|
145
|
-
blacklistMultipleContacts(emails) {
|
|
155
|
+
blacklistMultipleContacts(emails, scope) {
|
|
146
156
|
return __awaiter(this, void 0, void 0, function* () {
|
|
147
157
|
const blacklistedContacts = emails.map((email) => ({ email, emailBlacklisted: true }));
|
|
148
|
-
yield this.
|
|
158
|
+
yield this.getContactsApi(scope).updateBatchContacts({ contacts: blacklistedContacts });
|
|
149
159
|
});
|
|
150
160
|
}
|
|
151
|
-
createBrevoContactList(
|
|
161
|
+
createBrevoContactList(title, scope) {
|
|
152
162
|
return __awaiter(this, void 0, void 0, function* () {
|
|
153
163
|
const contactList = {
|
|
154
|
-
name:
|
|
164
|
+
name: title,
|
|
155
165
|
folderId: 1,
|
|
156
166
|
};
|
|
157
|
-
const data = yield this.
|
|
167
|
+
const data = yield this.getContactsApi(scope).createList(contactList);
|
|
158
168
|
return data.body.id;
|
|
159
169
|
});
|
|
160
170
|
}
|
|
161
|
-
updateBrevoContactList(id, title) {
|
|
171
|
+
updateBrevoContactList(id, title, scope) {
|
|
162
172
|
return __awaiter(this, void 0, void 0, function* () {
|
|
163
|
-
const data = yield this.
|
|
173
|
+
const data = yield this.getContactsApi(scope).updateList(id, { name: title });
|
|
164
174
|
return data.response.statusCode === 204;
|
|
165
175
|
});
|
|
166
176
|
}
|
|
167
|
-
deleteBrevoContactList(id) {
|
|
177
|
+
deleteBrevoContactList(id, scope) {
|
|
168
178
|
return __awaiter(this, void 0, void 0, function* () {
|
|
169
|
-
const data = yield this.
|
|
179
|
+
const data = yield this.getContactsApi(scope).deleteList(id);
|
|
170
180
|
return data.response.statusCode === 204;
|
|
171
181
|
});
|
|
172
182
|
}
|
|
173
|
-
findBrevoContactListById(id) {
|
|
183
|
+
findBrevoContactListById(id, scope) {
|
|
174
184
|
return __awaiter(this, void 0, void 0, function* () {
|
|
175
|
-
const data = yield this.
|
|
185
|
+
const data = yield this.getContactsApi(scope).getList(id);
|
|
176
186
|
return data.body;
|
|
177
187
|
});
|
|
178
188
|
}
|
|
179
|
-
findBrevoContactListsByIds(ids) {
|
|
189
|
+
findBrevoContactListsByIds(ids, scope) {
|
|
180
190
|
var _a, e_1, _b, _c;
|
|
181
191
|
return __awaiter(this, void 0, void 0, function* () {
|
|
182
192
|
const lists = [];
|
|
183
193
|
try {
|
|
184
|
-
for (var _d = true, _e = __asyncValues(yield this.getBrevoContactListResponses()), _f; _f = yield _e.next(), _a = _f.done, !_a;) {
|
|
194
|
+
for (var _d = true, _e = __asyncValues(yield this.getBrevoContactListResponses(scope)), _f; _f = yield _e.next(), _a = _f.done, !_a;) {
|
|
185
195
|
_c = _f.value;
|
|
186
196
|
_d = false;
|
|
187
197
|
try {
|
|
@@ -205,13 +215,13 @@ let BrevoApiContactsService = class BrevoApiContactsService {
|
|
|
205
215
|
return lists;
|
|
206
216
|
});
|
|
207
217
|
}
|
|
208
|
-
getBrevoContactListResponses() {
|
|
218
|
+
getBrevoContactListResponses(scope) {
|
|
209
219
|
var _a;
|
|
210
220
|
return __asyncGenerator(this, arguments, function* getBrevoContactListResponses_1() {
|
|
211
221
|
const limit = 50;
|
|
212
222
|
let offset = 0;
|
|
213
223
|
while (true) {
|
|
214
|
-
const listsResponse = yield __await(this.
|
|
224
|
+
const listsResponse = yield __await(this.getContactsApi(scope).getLists(limit, offset));
|
|
215
225
|
const lists = (_a = listsResponse.body.lists) !== null && _a !== void 0 ? _a : [];
|
|
216
226
|
if (lists.length === 0) {
|
|
217
227
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-api-contact.service.js","sourceRoot":"","sources":["../../src/brevo-api/brevo-api-contact.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,gEAAkD;AAKlD,6EAAuE;
|
|
1
|
+
{"version":3,"file":"brevo-api-contact.service.js","sourceRoot":"","sources":["../../src/brevo-api/brevo-api-contact.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,gEAAkD;AAKlD,6EAAuE;AACvE,uDAAqD;AAU9C,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAGhC,YAA0D,MAAyB;QAAzB,WAAM,GAAN,MAAM,CAAmB;QAFlE,iBAAY,GAAG,IAAI,GAAG,EAAmC,CAAC;IAEW,CAAC;IAE/E,cAAc,CAAC,KAAkC;QACrD,MAAM,2BAA2B,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAEjF,IAAI,2BAA2B,EAAE;YAC7B,OAAO,2BAA2B,CAAC;SACtC;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC;QAClD,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAErE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QAE1D,OAAO,WAAW,CAAC;IACvB,CAAC;IAEY,6BAA6B,CACtC,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,EAAgC,EACnE,QAAkB,EAClB,UAAkB,EAClB,KAAkC;;YAElC,MAAM,OAAO,GAAG;gBACZ,KAAK;gBACL,cAAc,EAAE,QAAQ;gBACxB,UAAU;gBACV,cAAc;gBACd,UAAU;aACb,CAAC;YACF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAEhF,OAAO,QAAQ,CAAC,UAAU,KAAK,GAAG,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,CAAC;QACtE,CAAC;KAAA;IAEY,aAAa,CACtB,EAAU,EACV,EACI,OAAO,EACP,UAAU,EACV,OAAO,EACP,aAAa,GACmG,EACpH,KAAkC;;YAElC,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,gBAAgB,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,KAAK,CAAC,CAAC;YACrI,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;KAAA;IAEY,sBAAsB,CAAC,QAAmD,EAAE,KAAkC;;YACvH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;YACxF,OAAO,QAAQ,CAAC,UAAU,KAAK,GAAG,CAAC;QACvC,CAAC;KAAA;IAEY,aAAa,CAAC,EAAU,EAAE,KAAkC;;YACrE,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAEhF,OAAO,QAAQ,CAAC,UAAU,KAAK,GAAG,CAAC;QACvC,CAAC;KAAA;IAEY,WAAW,CAAC,EAAU,EAAE,KAAkC;;YACnE,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAE7E,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEY,qBAAqB,CAAC,KAAa,EAAE,KAAkC;;YAChF,IAAI;gBACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBACpE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC1B,IAAI,CAAC,OAAO;oBAAE,OAAO,SAAS,CAAC;gBAC/B,OAAO,OAAO,CAAC;aAClB;YAAC,OAAO,KAAK,EAAE;gBAEZ,IAAI,IAAA,kCAAgB,EAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE;oBAC9D,OAAO,SAAS,CAAC;iBACpB;gBACD,MAAM,KAAK,CAAC;aACf;QACL,CAAC;KAAA;IAEY,oBAAoB,CAC7B,EAAU,EACV,KAAa,EACb,MAAc,EACd,KAAkC;;YAElC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAEhG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC;KAAA;IAEY,yBAAyB,CAAC,MAAgB,EAAE,KAAkC;;YACvF,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAEvF,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAC5F,CAAC;KAAA;IAEY,sBAAsB,CAAC,KAAa,EAAE,KAAkC;;YACjF,MAAM,WAAW,GAAG;gBAChB,IAAI,EAAE,KAAK;gBACX,QAAQ,EAAE,CAAC;aACd,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACtE,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,CAAC;KAAA;IAEY,sBAAsB,CAAC,EAAU,EAAE,KAAa,EAAE,KAAkC;;YAC7F,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9E,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,GAAG,CAAC;QAC5C,CAAC;KAAA;IAEY,sBAAsB,CAAC,EAAU,EAAE,KAAkC;;YAC9E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC7D,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,GAAG,CAAC;QAC5C,CAAC;KAAA;IAEY,wBAAwB,CAAC,EAAU,EAAE,KAAkC;;YAChF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC,IAAI,CAAC;QACrB,CAAC;KAAA;IAEY,0BAA0B,CAAC,GAAa,EAAE,KAAkC;;;YACrF,MAAM,KAAK,GAA0B,EAAE,CAAC;;gBACxC,KAAyB,eAAA,KAAA,cAAA,MAAM,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAA,IAAA;oBAA9C,cAA8C;oBAA9C,WAA8C;;wBAA5D,MAAM,IAAI,KAAA,CAAA;wBACjB,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;4BACvB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACpB;;;;;iBACJ;;;;;;;;;YAED,OAAO,KAAK,CAAC;;KAChB;IAEM,4BAA4B,CAAC,KAAkC;;;YAClE,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,IAAI,MAAM,GAAG,CAAC,CAAC;YAEf,OAAO,IAAI,EAAE;gBACT,MAAM,aAAa,GAAG,cAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA,CAAC;gBAC/E,MAAM,KAAK,GAAG,MAAA,aAAa,CAAC,IAAI,CAAC,KAAK,mCAAI,EAAE,CAAC;gBAE7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;oBACpB,MAAM;iBACT;gBACD,cAAA,KAAK,CAAC,CAAC,iBAAA,cAAA,KAAK,CAAA,CAAA,CAAA,CAAC;gBAEb,MAAM,IAAI,KAAK,CAAC;aACnB;;KACJ;CACJ,CAAA;AA7JY,uBAAuB;IADnC,IAAA,mBAAU,GAAE;IAII,WAAA,IAAA,eAAM,EAAC,4CAAmB,CAAC,CAAA;;GAH/B,uBAAuB,CA6JnC;AA7JY,0DAAuB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-api.module.d.ts","sourceRoot":"","sources":["../../src/brevo-api/brevo-api.module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"brevo-api.module.d.ts","sourceRoot":"","sources":["../../src/brevo-api/brevo-api.module.ts"],"names":[],"mappings":"AAMA,qBAKa,cAAc;CAAG"}
|
|
@@ -11,14 +11,13 @@ const common_1 = require("@nestjs/common");
|
|
|
11
11
|
const config_module_1 = require("../config/config.module");
|
|
12
12
|
const brevo_api_campaigns_service_1 = require("./brevo-api-campaigns.service");
|
|
13
13
|
const brevo_api_contact_service_1 = require("./brevo-api-contact.service");
|
|
14
|
-
const brevo_api_sender_service_1 = require("./brevo-api-sender.service");
|
|
15
14
|
let BrevoApiModule = class BrevoApiModule {
|
|
16
15
|
};
|
|
17
16
|
BrevoApiModule = __decorate([
|
|
18
17
|
(0, common_1.Module)({
|
|
19
18
|
imports: [config_module_1.ConfigModule],
|
|
20
|
-
providers: [brevo_api_contact_service_1.BrevoApiContactsService, brevo_api_campaigns_service_1.BrevoApiCampaignsService
|
|
21
|
-
exports: [brevo_api_contact_service_1.BrevoApiContactsService, brevo_api_campaigns_service_1.BrevoApiCampaignsService
|
|
19
|
+
providers: [brevo_api_contact_service_1.BrevoApiContactsService, brevo_api_campaigns_service_1.BrevoApiCampaignsService],
|
|
20
|
+
exports: [brevo_api_contact_service_1.BrevoApiContactsService, brevo_api_campaigns_service_1.BrevoApiCampaignsService],
|
|
22
21
|
})
|
|
23
22
|
], BrevoApiModule);
|
|
24
23
|
exports.BrevoApiModule = BrevoApiModule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-api.module.js","sourceRoot":"","sources":["../../src/brevo-api/brevo-api.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AAExC,2DAAuD;AACvD,+EAAyE;AACzE,2EAAsE;
|
|
1
|
+
{"version":3,"file":"brevo-api.module.js","sourceRoot":"","sources":["../../src/brevo-api/brevo-api.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AAExC,2DAAuD;AACvD,+EAAyE;AACzE,2EAAsE;AAO/D,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,cAAc;IAL1B,IAAA,eAAM,EAAC;QACJ,OAAO,EAAE,CAAC,4BAAY,CAAC;QACvB,SAAS,EAAE,CAAC,mDAAuB,EAAE,sDAAwB,CAAC;QAC9D,OAAO,EAAE,CAAC,mDAAuB,EAAE,sDAAwB,CAAC;KAC/D,CAAC;GACW,cAAc,CAAG;AAAjB,wCAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-contact.resolver.d.ts","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact.resolver.ts"],"names":[],"mappings":"AAGA,OAAO,EAAU,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAQ9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAGvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAoC,MAAM,mCAAmC,CAAC;AAEjH,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAIxE,wBAAgB,0BAA0B,CAAC,EACvC,YAAY,EACZ,0BAA0B,EAC1B,KAAK,EACL,iBAAiB,EACjB,uBAAuB,GAC1B,EAAE;IACC,YAAY,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC1C,0BAA0B,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC1D,iBAAiB,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACpD,uBAAuB,EAAE,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACnE,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;CAC5C,GAAG,IAAI,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"brevo-contact.resolver.d.ts","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact.resolver.ts"],"names":[],"mappings":"AAGA,OAAO,EAAU,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAQ9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAGvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAoC,MAAM,mCAAmC,CAAC;AAEjH,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAIxE,wBAAgB,0BAA0B,CAAC,EACvC,YAAY,EACZ,0BAA0B,EAC1B,KAAK,EACL,iBAAiB,EACjB,uBAAuB,GAC1B,EAAE;IACC,YAAY,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC1C,0BAA0B,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC1D,iBAAiB,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACpD,uBAAuB,EAAE,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACnE,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;CAC5C,GAAG,IAAI,CAAC,OAAO,CAAC,CAiKhB"}
|