@comet/brevo-api 9.0.0-beta.2 → 9.0.0-beta.3
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/blacklisted-contacts/blacklisted-contacts.service.js +18 -30
- package/lib/blacklisted-contacts/blacklisted-contacts.service.js.map +1 -1
- package/lib/brevo-api/brevo-api-campaigns.service.js +121 -187
- package/lib/brevo-api/brevo-api-campaigns.service.js.map +1 -1
- package/lib/brevo-api/brevo-api-contact.service.d.ts.map +1 -1
- package/lib/brevo-api/brevo-api-contact.service.js +195 -283
- package/lib/brevo-api/brevo-api-contact.service.js.map +1 -1
- package/lib/brevo-api/brevo-api-folders.service.js +19 -47
- package/lib/brevo-api/brevo-api-folders.service.js.map +1 -1
- package/lib/brevo-api/brevo-api-sender.service.js +8 -19
- package/lib/brevo-api/brevo-api-sender.service.js.map +1 -1
- package/lib/brevo-api/brevo-api-transactional-mails.service.js +22 -32
- package/lib/brevo-api/brevo-api-transactional-mails.service.js.map +1 -1
- package/lib/brevo-api/brevo-api.utils.d.ts +1 -1
- package/lib/brevo-api/brevo-api.utils.d.ts.map +1 -1
- package/lib/brevo-api/dto/brevo-api-campaign.d.ts +1 -1
- package/lib/brevo-api/dto/brevo-api-campaign.d.ts.map +1 -1
- package/lib/brevo-config/brevo-config.resolver.js +67 -106
- package/lib/brevo-config/brevo-config.resolver.js.map +1 -1
- package/lib/brevo-contact/brevo-contact-import.console.js +24 -39
- package/lib/brevo-contact/brevo-contact-import.console.js.map +1 -1
- package/lib/brevo-contact/brevo-contact-import.resolver.js +27 -38
- package/lib/brevo-contact/brevo-contact-import.resolver.js.map +1 -1
- package/lib/brevo-contact/brevo-contact-import.service.d.ts.map +1 -1
- package/lib/brevo-contact/brevo-contact-import.service.js +108 -146
- package/lib/brevo-contact/brevo-contact-import.service.js.map +1 -1
- package/lib/brevo-contact/brevo-contact.console.js +20 -31
- package/lib/brevo-contact/brevo-contact.console.js.map +1 -1
- package/lib/brevo-contact/brevo-contact.resolver.d.ts.map +1 -1
- package/lib/brevo-contact/brevo-contact.resolver.js +154 -181
- package/lib/brevo-contact/brevo-contact.resolver.js.map +1 -1
- package/lib/brevo-contact/brevo-contacts.service.js +88 -103
- package/lib/brevo-contact/brevo-contacts.service.js.map +1 -1
- package/lib/brevo-contact/ecg-rtr-list/ecg-rtr-list.service.js +36 -48
- package/lib/brevo-contact/ecg-rtr-list/ecg-rtr-list.service.js.map +1 -1
- package/lib/brevo-contact/validator/redirect-url.validator.js +10 -21
- package/lib/brevo-contact/validator/redirect-url.validator.js.map +1 -1
- package/lib/brevo-email-import-log/brevo-email-import-log.service.js +14 -26
- package/lib/brevo-email-import-log/brevo-email-import-log.service.js.map +1 -1
- package/lib/config/brevo-module.config.d.ts +8 -8
- package/lib/config/brevo-module.config.d.ts.map +1 -1
- package/lib/email-campaign/email-campaign.resolver.js +112 -143
- package/lib/email-campaign/email-campaign.resolver.js.map +1 -1
- package/lib/email-campaign/email-campaigns.service.js +77 -94
- package/lib/email-campaign/email-campaigns.service.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240115095733.js +2 -13
- package/lib/mikro-orm/migrations/Migration20240115095733.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240118144808.js +3 -14
- package/lib/mikro-orm/migrations/Migration20240118144808.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240123145606.js +4 -15
- package/lib/mikro-orm/migrations/Migration20240123145606.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240527112204.js +2 -13
- package/lib/mikro-orm/migrations/Migration20240527112204.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240619092554.js +2 -13
- package/lib/mikro-orm/migrations/Migration20240619092554.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240619145217.js +2 -13
- package/lib/mikro-orm/migrations/Migration20240619145217.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240621102349.js +4 -15
- package/lib/mikro-orm/migrations/Migration20240621102349.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240819214939.js +7 -18
- package/lib/mikro-orm/migrations/Migration20240819214939.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240830112400.js +3 -14
- package/lib/mikro-orm/migrations/Migration20240830112400.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20241016123307.js +2 -13
- package/lib/mikro-orm/migrations/Migration20241016123307.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20241018110515.js +2 -13
- package/lib/mikro-orm/migrations/Migration20241018110515.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20241022144400.js +2 -13
- package/lib/mikro-orm/migrations/Migration20241022144400.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20241024071748.js +2 -13
- package/lib/mikro-orm/migrations/Migration20241024071748.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20241119101706.js +3 -14
- package/lib/mikro-orm/migrations/Migration20241119101706.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250221073825.js +2 -13
- package/lib/mikro-orm/migrations/Migration20250221073825.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250317131301.js +2 -13
- package/lib/mikro-orm/migrations/Migration20250317131301.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250321132034.js +2 -13
- package/lib/mikro-orm/migrations/Migration20250321132034.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250703155205.js +7 -18
- package/lib/mikro-orm/migrations/Migration20250703155205.js.map +1 -1
- package/lib/mikro-orm/migrations/migrations.d.ts +1 -1
- package/lib/mikro-orm/migrations/migrations.d.ts.map +1 -1
- package/lib/target-group/target-group.resolver.d.ts.map +1 -1
- package/lib/target-group/target-group.resolver.js +93 -115
- 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 +87 -105
- package/lib/target-group/target-groups.service.js.map +1 -1
- package/lib/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +18 -15
|
@@ -11,15 +11,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
15
|
exports.createBrevoContactImportResolver = createBrevoContactImportResolver;
|
|
25
16
|
const cms_api_1 = require("@comet/cms-api");
|
|
@@ -46,35 +37,33 @@ function createBrevoContactImportResolver({ Scope, BrevoContact, }) {
|
|
|
46
37
|
this.entityManager = entityManager;
|
|
47
38
|
this.fileUploadsService = fileUploadsService;
|
|
48
39
|
}
|
|
49
|
-
startBrevoContactImport(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
}
|
|
77
|
-
});
|
|
40
|
+
async startBrevoContactImport({ fileId, targetGroupIds, scope, sendDoubleOptIn }, user) {
|
|
41
|
+
const importId = (0, uuid_1.v4)();
|
|
42
|
+
const fileUpload = await this.fileUploadRepository.findOne(fileId);
|
|
43
|
+
if (!fileUpload) {
|
|
44
|
+
throw new Error("File not found");
|
|
45
|
+
}
|
|
46
|
+
try {
|
|
47
|
+
const fileContent = await this.fileUploadsService.getFileContent(fileUpload);
|
|
48
|
+
const redirectUrl = this.config.brevo.resolveConfig(scope).redirectUrlForImport;
|
|
49
|
+
const result = await this.brevoContactImportService.importContactsFromCsv({
|
|
50
|
+
fileStream: stream_1.Readable.from(fileContent),
|
|
51
|
+
scope,
|
|
52
|
+
redirectUrl,
|
|
53
|
+
targetGroupIds,
|
|
54
|
+
sendDoubleOptIn,
|
|
55
|
+
responsibleUserId: user.id,
|
|
56
|
+
importId,
|
|
57
|
+
});
|
|
58
|
+
await this.fileUploadsService.delete(fileUpload);
|
|
59
|
+
await this.entityManager.flush();
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
await this.fileUploadsService.delete(fileUpload);
|
|
64
|
+
await this.entityManager.flush();
|
|
65
|
+
throw error;
|
|
66
|
+
}
|
|
78
67
|
}
|
|
79
68
|
};
|
|
80
69
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-contact-import.resolver.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.resolver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"brevo-contact-import.resolver.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-contact-import.service.d.ts","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAMzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,uBAAuB,EAAgC,MAAM,wCAAwC,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAE/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAUvD,qBACa,oBAAoB;IAE7B,OAAO,EAAE,MAAM,CAAC;IAGhB,OAAO,EAAE,MAAM,CAAC;IAGhB,MAAM,EAAE,MAAM,CAAC;IAGf,WAAW,EAAE,MAAM,CAAC;IAGpB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAGxC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAG7C,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,UAAU,2BAA2B;IACjC,UAAU,EAAE,QAAQ,CAAC;IACrB,KAAK,EAAE,2BAA2B,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBACa,yBAAyB;IAED,OAAO,CAAC,QAAQ,CAAC,MAAM;IACpD,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBALzB,MAAM,EAAE,iBAAiB,EACtD,uBAAuB,EAAE,uBAAuB,EAChD,oBAAoB,EAAE,oBAAoB,EAC1C,mBAAmB,EAAE,mBAAmB,EACF,qBAAqB,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,EAClE,qBAAqB,EAAE,gBAAgB,CAAC,oBAAoB,CAAC;IAG7G,qBAAqB,CAAC,EACxB,UAAU,EACV,KAAK,EACL,WAAW,EACX,eAAe,EACf,cAAmB,EACnB,aAAqB,EACrB,iBAAiB,EACjB,QAAQ,GACX,EAAE,2BAA2B,GAAG,OAAO,CAAC,oBAAoB,CAAC;YAsFhD,0BAA0B;
|
|
1
|
+
{"version":3,"file":"brevo-contact-import.service.d.ts","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAMzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,uBAAuB,EAAgC,MAAM,wCAAwC,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAE/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAUvD,qBACa,oBAAoB;IAE7B,OAAO,EAAE,MAAM,CAAC;IAGhB,OAAO,EAAE,MAAM,CAAC;IAGhB,MAAM,EAAE,MAAM,CAAC;IAGf,WAAW,EAAE,MAAM,CAAC;IAGpB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAGxC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAG7C,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,UAAU,2BAA2B;IACjC,UAAU,EAAE,QAAQ,CAAC;IACrB,KAAK,EAAE,2BAA2B,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBACa,yBAAyB;IAED,OAAO,CAAC,QAAQ,CAAC,MAAM;IACpD,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBALzB,MAAM,EAAE,iBAAiB,EACtD,uBAAuB,EAAE,uBAAuB,EAChD,oBAAoB,EAAE,oBAAoB,EAC1C,mBAAmB,EAAE,mBAAmB,EACF,qBAAqB,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,EAClE,qBAAqB,EAAE,gBAAgB,CAAC,oBAAoB,CAAC;IAG7G,qBAAqB,CAAC,EACxB,UAAU,EACV,KAAK,EACL,WAAW,EACX,eAAe,EACf,cAAmB,EACnB,aAAqB,EACrB,iBAAiB,EACjB,QAAQ,GACX,EAAE,2BAA2B,GAAG,OAAO,CAAC,oBAAoB,CAAC;YAsFhD,0BAA0B;IAmDxC,OAAO,CAAC,UAAU;YAYJ,aAAa;IA4B3B,OAAO,CAAC,6BAA6B;CAexC"}
|
|
@@ -44,33 +44,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
44
44
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
45
45
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
46
46
|
};
|
|
47
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
48
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
49
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
50
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
51
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
52
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
53
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
54
|
-
});
|
|
55
|
-
};
|
|
56
|
-
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
57
|
-
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
58
|
-
var m = o[Symbol.asyncIterator], i;
|
|
59
|
-
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
60
|
-
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
61
|
-
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
62
|
-
};
|
|
63
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
64
|
-
var t = {};
|
|
65
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
66
|
-
t[p] = s[p];
|
|
67
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
68
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
69
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
70
|
-
t[p[i]] = s[p[i]];
|
|
71
|
-
}
|
|
72
|
-
return t;
|
|
73
|
-
};
|
|
74
47
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
75
48
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
76
49
|
};
|
|
@@ -139,147 +112,136 @@ let BrevoContactImportService = class BrevoContactImportService {
|
|
|
139
112
|
this.targetGroupRepository = targetGroupRepository;
|
|
140
113
|
this.brevoConfigRepository = brevoConfigRepository;
|
|
141
114
|
}
|
|
142
|
-
importContactsFromCsv(
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
115
|
+
async importContactsFromCsv({ fileStream, scope, redirectUrl, sendDoubleOptIn, targetGroupIds = [], isAdminImport = false, responsibleUserId, importId, }) {
|
|
116
|
+
const failedColumns = [];
|
|
117
|
+
const blacklistedColumns = [];
|
|
118
|
+
const targetGroups = await this.targetGroupRepository.find({ id: { $in: targetGroupIds } });
|
|
119
|
+
const contactSource = brevo_email_import_log_entity_factory_1.ContactSource.csvImport;
|
|
120
|
+
for (const targetGroup of targetGroups) {
|
|
121
|
+
if (targetGroup.isMainList) {
|
|
122
|
+
throw new Error("Main lists are not allowed as target groups for import");
|
|
123
|
+
}
|
|
124
|
+
if (!(0, lodash_isequal_1.default)(targetGroup.scope, scope)) {
|
|
125
|
+
throw new Error("Target group scope does not match the scope of the import file");
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
const manuallyAssignedBrevoContacts = await Promise.all(targetGroups.map((targetGroup) => {
|
|
129
|
+
return this.targetGroupsService.createIfNotExistsManuallyAssignedContactsTargetGroup(targetGroup);
|
|
130
|
+
}));
|
|
131
|
+
const targetGroupBrevoIds = [...targetGroups.map((targetGroup) => targetGroup.brevoId), ...manuallyAssignedBrevoContacts];
|
|
132
|
+
const rows = fileStream.pipe(csv.parse({ headers: true, delimiter: ";", ignoreEmpty: true })).on("error", (error) => {
|
|
133
|
+
throw error;
|
|
134
|
+
});
|
|
135
|
+
let created = 0;
|
|
136
|
+
let updated = 0;
|
|
137
|
+
let failed = 0;
|
|
138
|
+
let blacklisted = 0;
|
|
139
|
+
for await (const row of rows) {
|
|
140
|
+
if (isAdminImport && created + updated + failed + blacklisted > 100) {
|
|
141
|
+
return {
|
|
142
|
+
created,
|
|
143
|
+
updated,
|
|
144
|
+
failed,
|
|
145
|
+
blacklisted,
|
|
146
|
+
failedColumns,
|
|
147
|
+
blacklistedColumns,
|
|
148
|
+
errorMessage: "Too many contacts. Currently we only support 100 contacts at once, the first 100 contacts were handled. Please split the file and try again with the remaining contacts.",
|
|
149
|
+
};
|
|
156
150
|
}
|
|
157
|
-
const manuallyAssignedBrevoContacts = yield Promise.all(targetGroups.map((targetGroup) => {
|
|
158
|
-
return this.targetGroupsService.createIfNotExistsManuallyAssignedContactsTargetGroup(targetGroup);
|
|
159
|
-
}));
|
|
160
|
-
const targetGroupBrevoIds = [...targetGroups.map((targetGroup) => targetGroup.brevoId), ...manuallyAssignedBrevoContacts];
|
|
161
|
-
const rows = fileStream.pipe(csv.parse({ headers: true, delimiter: ";", ignoreEmpty: true })).on("error", (error) => {
|
|
162
|
-
throw error;
|
|
163
|
-
});
|
|
164
|
-
let created = 0;
|
|
165
|
-
let updated = 0;
|
|
166
|
-
let failed = 0;
|
|
167
|
-
let blacklisted = 0;
|
|
168
151
|
try {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
}
|
|
184
|
-
try {
|
|
185
|
-
const contactData = yield this.processCsvRow(row, redirectUrl);
|
|
186
|
-
const result = yield this.createOrUpdateBrevoContact(contactData, scope, targetGroupBrevoIds, sendDoubleOptIn, responsibleUserId, contactSource, importId);
|
|
187
|
-
switch (result) {
|
|
188
|
-
case "created":
|
|
189
|
-
created++;
|
|
190
|
-
break;
|
|
191
|
-
case "updated":
|
|
192
|
-
updated++;
|
|
193
|
-
break;
|
|
194
|
-
case "blacklisted":
|
|
195
|
-
blacklistedColumns.push(row);
|
|
196
|
-
blacklisted++;
|
|
197
|
-
break;
|
|
198
|
-
case "error":
|
|
199
|
-
failedColumns.push(row);
|
|
200
|
-
failed++;
|
|
201
|
-
break;
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
catch (validationError) {
|
|
205
|
-
console.error(validationError);
|
|
152
|
+
const contactData = await this.processCsvRow(row, redirectUrl);
|
|
153
|
+
const result = await this.createOrUpdateBrevoContact(contactData, scope, targetGroupBrevoIds, sendDoubleOptIn, responsibleUserId, contactSource, importId);
|
|
154
|
+
switch (result) {
|
|
155
|
+
case "created":
|
|
156
|
+
created++;
|
|
157
|
+
break;
|
|
158
|
+
case "updated":
|
|
159
|
+
updated++;
|
|
160
|
+
break;
|
|
161
|
+
case "blacklisted":
|
|
162
|
+
blacklistedColumns.push(row);
|
|
163
|
+
blacklisted++;
|
|
164
|
+
break;
|
|
165
|
+
case "error":
|
|
206
166
|
failedColumns.push(row);
|
|
207
167
|
failed++;
|
|
208
|
-
|
|
168
|
+
break;
|
|
209
169
|
}
|
|
210
170
|
}
|
|
211
|
-
catch (
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
}
|
|
216
|
-
finally { if (e_1) throw e_1.error; }
|
|
171
|
+
catch (validationError) {
|
|
172
|
+
console.error(validationError);
|
|
173
|
+
failedColumns.push(row);
|
|
174
|
+
failed++;
|
|
217
175
|
}
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
}
|
|
176
|
+
}
|
|
177
|
+
if (created + updated + failed === 0) {
|
|
178
|
+
return { created, updated, failed, blacklisted, failedColumns, blacklistedColumns, errorMessage: "No contacts found." };
|
|
179
|
+
}
|
|
180
|
+
return { created, updated, failed, blacklisted, failedColumns, blacklistedColumns };
|
|
223
181
|
}
|
|
224
|
-
createOrUpdateBrevoContact(contact, scope, targetGroupBrevoIds, sendDoubleOptIn, responsibleUserId, contactSource, importId) {
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
return "updated";
|
|
233
|
-
}
|
|
234
|
-
else if (!brevoContact) {
|
|
235
|
-
const brevoConfig = yield this.brevoConfigRepository.findOneOrFail({ scope });
|
|
236
|
-
const success = yield this.brevoContactsService.createContact(Object.assign(Object.assign({}, contact), { scope, templateId: brevoConfig.doubleOptInTemplateId, listIds: [mainTargetGroupForScope.brevoId, ...targetGroupBrevoIds], sendDoubleOptIn,
|
|
237
|
-
responsibleUserId,
|
|
238
|
-
contactSource }));
|
|
239
|
-
if (!success)
|
|
240
|
-
return "blacklisted";
|
|
241
|
-
if (success)
|
|
242
|
-
return "created";
|
|
182
|
+
async createOrUpdateBrevoContact(contact, scope, targetGroupBrevoIds, sendDoubleOptIn, responsibleUserId, contactSource, importId) {
|
|
183
|
+
try {
|
|
184
|
+
const brevoContact = await this.brevoApiContactsService.findContact(contact.email, scope);
|
|
185
|
+
const mainTargetGroupForScope = await this.targetGroupsService.createIfNotExistMainTargetGroupForScope(scope);
|
|
186
|
+
if (brevoContact && !brevoContact.emailBlacklisted) {
|
|
187
|
+
const updatedBrevoContact = await this.brevoApiContactsService.updateContact(brevoContact.id, { ...contact, listIds: [mainTargetGroupForScope.brevoId, ...targetGroupBrevoIds, ...brevoContact.listIds] }, scope, sendDoubleOptIn, responsibleUserId, contactSource, importId);
|
|
188
|
+
if (updatedBrevoContact) {
|
|
189
|
+
return "updated";
|
|
243
190
|
}
|
|
244
191
|
}
|
|
245
|
-
|
|
246
|
-
|
|
192
|
+
else if (!brevoContact) {
|
|
193
|
+
const brevoConfig = await this.brevoConfigRepository.findOneOrFail({ scope });
|
|
194
|
+
const success = await this.brevoContactsService.createContact({
|
|
195
|
+
...contact,
|
|
196
|
+
scope,
|
|
197
|
+
templateId: brevoConfig.doubleOptInTemplateId,
|
|
198
|
+
listIds: [mainTargetGroupForScope.brevoId, ...targetGroupBrevoIds],
|
|
199
|
+
sendDoubleOptIn,
|
|
200
|
+
responsibleUserId,
|
|
201
|
+
contactSource,
|
|
202
|
+
});
|
|
203
|
+
if (!success) {
|
|
204
|
+
return "blacklisted";
|
|
205
|
+
}
|
|
206
|
+
if (success) {
|
|
207
|
+
return "created";
|
|
208
|
+
}
|
|
247
209
|
}
|
|
248
|
-
|
|
249
|
-
|
|
210
|
+
}
|
|
211
|
+
catch (err) {
|
|
212
|
+
console.error(err);
|
|
213
|
+
}
|
|
214
|
+
return "error";
|
|
250
215
|
}
|
|
251
216
|
parseValue({ value, key }) {
|
|
252
|
-
var _a;
|
|
253
217
|
if (this.config.brevo.BrevoContactAttributes) {
|
|
254
|
-
const designType =
|
|
218
|
+
const designType = Reflect.getMetadata("design:type", this.config.brevo.BrevoContactAttributes.prototype, key.toUpperCase())?.name;
|
|
255
219
|
if (designType === "Array") {
|
|
256
220
|
return value.trim() === "" ? [] : value.split(",").map((item) => item.trim());
|
|
257
221
|
}
|
|
258
222
|
}
|
|
259
223
|
return value;
|
|
260
224
|
}
|
|
261
|
-
processCsvRow(row, redirectUrlForImport) {
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
mappedRow.email = row[key];
|
|
267
|
-
}
|
|
268
|
-
else {
|
|
269
|
-
mappedRow[key.toUpperCase()] = this.parseValue({ value: row[key], key });
|
|
270
|
-
}
|
|
225
|
+
async processCsvRow(row, redirectUrlForImport) {
|
|
226
|
+
const mappedRow = this.createValidateableCsvRowClass();
|
|
227
|
+
for (const key in row) {
|
|
228
|
+
if (key.toLowerCase() === "email") {
|
|
229
|
+
mappedRow.email = row[key];
|
|
271
230
|
}
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
throw errors;
|
|
231
|
+
else {
|
|
232
|
+
mappedRow[key.toUpperCase()] = this.parseValue({ value: row[key], key });
|
|
275
233
|
}
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
234
|
+
}
|
|
235
|
+
const errors = (0, class_validator_1.validateSync)(mappedRow);
|
|
236
|
+
if (errors.length > 0) {
|
|
237
|
+
throw errors;
|
|
238
|
+
}
|
|
239
|
+
const { email, ...data } = mappedRow;
|
|
240
|
+
return {
|
|
241
|
+
email: mappedRow.email,
|
|
242
|
+
redirectionUrl: redirectUrlForImport,
|
|
243
|
+
attributes: { ...data },
|
|
244
|
+
};
|
|
283
245
|
}
|
|
284
246
|
createValidateableCsvRowClass() {
|
|
285
247
|
if (this.config.brevo.BrevoContactAttributes) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-contact-import.service.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"brevo-contact-import.service.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,15 +8,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
14
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
15
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
16
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
17
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
18
|
-
});
|
|
19
|
-
};
|
|
20
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
12
|
exports.DeleteUnsubscribedBrevoContactsConsole = void 0;
|
|
22
13
|
const postgresql_1 = require("@mikro-orm/postgresql");
|
|
@@ -30,28 +21,26 @@ let DeleteUnsubscribedBrevoContactsConsole = class DeleteUnsubscribedBrevoContac
|
|
|
30
21
|
this.targetGroupsService = targetGroupsService;
|
|
31
22
|
this.orm = orm;
|
|
32
23
|
}
|
|
33
|
-
run() {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
54
|
-
});
|
|
24
|
+
async run() {
|
|
25
|
+
const offset = 0;
|
|
26
|
+
const limit = 50;
|
|
27
|
+
const where = { isMainList: true };
|
|
28
|
+
const [targetGroups] = await this.targetGroupsService.findTargetGroups({ offset, limit, where });
|
|
29
|
+
for (const targetGroup of targetGroups) {
|
|
30
|
+
let hasMoreContacts = false;
|
|
31
|
+
let offset = 0;
|
|
32
|
+
do {
|
|
33
|
+
const contacts = await this.brevoApiContactsService.findContacts(limit, offset, {
|
|
34
|
+
scope: targetGroup.scope,
|
|
35
|
+
});
|
|
36
|
+
const blacklistedContacts = contacts.filter((contact) => contact.emailBlacklisted === true);
|
|
37
|
+
if (blacklistedContacts.length > 0) {
|
|
38
|
+
await this.brevoApiContactsService.deleteContacts(blacklistedContacts, { scope: targetGroup.scope });
|
|
39
|
+
}
|
|
40
|
+
hasMoreContacts = !(contacts.length < limit);
|
|
41
|
+
offset += limit;
|
|
42
|
+
} while (hasMoreContacts);
|
|
43
|
+
}
|
|
55
44
|
}
|
|
56
45
|
};
|
|
57
46
|
exports.DeleteUnsubscribedBrevoContactsConsole = DeleteUnsubscribedBrevoContactsConsole;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brevo-contact.console.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact.console.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"brevo-contact.console.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact.console.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAuE;AACvE,mDAAwD;AAExD,sFAAiF;AACjF,iFAA4E;AAMrE,IAAM,sCAAsC,GAA5C,MAAM,sCAAuC,SAAQ,8BAAa;IACrE,YACqB,uBAAgD,EAChD,mBAAwC,EACxC,GAAa;QAE9B,KAAK,EAAE,CAAC;QAJS,4BAAuB,GAAvB,uBAAuB,CAAyB;QAChD,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,QAAG,GAAH,GAAG,CAAU;IAGlC,CAAC;IAGK,AAAN,KAAK,CAAC,GAAG;QACL,MAAM,MAAM,GAAG,CAAC,CAAC;QACjB,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QAEnC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjG,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACrC,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;YAEf,GAAG,CAAC;gBACA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE;oBAC5E,KAAK,EAAE,WAAW,CAAC,KAAK;iBAC3B,CAAC,CAAC;gBAEH,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC;gBAE5F,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjC,MAAM,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;gBACzG,CAAC;gBAED,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC;YACpB,CAAC,QAAQ,eAAe,EAAE;QAC9B,CAAC;IACL,CAAC;CACJ,CAAA;AArCY,wFAAsC;AAUzC;IADL,IAAA,iCAAoB,GAAE;;;;iEA2BtB;iDApCQ,sCAAsC;IAJlD,IAAA,wBAAO,EAAC;QACL,IAAI,EAAE,oCAAoC;QAC1C,WAAW,EAAE,+BAA+B;KAC/C,CAAC;qCAGgD,mDAAuB;QAC3B,2CAAmB;QACnC,qBAAQ;GAJzB,sCAAsC,CAqClD"}
|
|
@@ -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;AAU9C,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,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAExF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAIxE,wBAAgB,0BAA0B,CAAC,EACvC,YAAY,EACZ,0BAA0B,EAC1B,KAAK,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,GACxB,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,qBAAqB,EAAE,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC5D,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;AAU9C,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,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAExF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAIxE,wBAAgB,0BAA0B,CAAC,EACvC,YAAY,EACZ,0BAA0B,EAC1B,KAAK,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,GACxB,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,qBAAqB,EAAE,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC5D,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;CAC5C,GAAG,IAAI,CAAC,OAAO,CAAC,CA6ThB"}
|