@or-sdk/contacts 3.3.1-beta.1889.0 → 3.3.1-beta.1904.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/cjs/Contacts.js +1 -1
- package/dist/cjs/Contacts.js.map +1 -1
- package/dist/cjs/api/contactApi.js +14 -107
- package/dist/cjs/api/contactApi.js.map +1 -1
- package/dist/cjs/constants.js +1 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/types.js.map +1 -1
- package/dist/esm/Contacts.js +1 -1
- package/dist/esm/Contacts.js.map +1 -1
- package/dist/esm/api/contactApi.js +9 -59
- package/dist/esm/api/contactApi.js.map +1 -1
- package/dist/esm/constants.js +1 -1
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/types.js.map +1 -1
- package/dist/types/api/contactApi.d.ts +3 -13
- package/dist/types/api/contactApi.d.ts.map +1 -1
- package/dist/types/constants.d.ts +1 -1
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/types.d.ts +1 -5
- package/dist/types/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/Contacts.ts +1 -1
- package/src/api/contactApi.ts +14 -95
- package/src/constants.ts +7 -1
- package/src/types.ts +1 -5
package/dist/cjs/Contacts.js
CHANGED
|
@@ -46,7 +46,7 @@ var Contacts = (function (_super) {
|
|
|
46
46
|
_this.batchProcessApi = new batchProcessApi_1.default(apiCall);
|
|
47
47
|
_this.contactBookApi = new api_1.ContactBookApi(apiCall);
|
|
48
48
|
_this.migrationsApi = new api_1.MigrationsApi(apiCall);
|
|
49
|
-
_this.contactApi = new api_1.ContactApi(apiCall, _this.batchProcessApi
|
|
49
|
+
_this.contactApi = new api_1.ContactApi(apiCall, _this.batchProcessApi);
|
|
50
50
|
_this.fieldSchemaApi = new api_1.FieldSchemaApi(apiCall);
|
|
51
51
|
_this.schemaPresetApi = new api_1.SchemaPresetApi(apiCall);
|
|
52
52
|
_this.filterApi = new api_1.FilterApi(apiCall);
|
package/dist/cjs/Contacts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Contacts.js","sourceRoot":"","sources":["../../src/Contacts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAgD;AAChD,iCAA0C;AAE1C,yCAAmD;AACnD,6BASe;AACf,uCAAsC;AACtC,0EAAoD;AASpD;IAA8B,4BAAI;IAiBhC,kBAAY,MAAsB;QAAlC,iBAqBC;QApBS,IAAA,KAAK,GAAmE,MAAM,MAAzE,EAAE,YAAY,GAAqD,MAAM,aAA3D,EAAE,cAAc,GAAqC,MAAM,eAA3C,EAAE,SAAS,GAA0B,MAAM,UAAhC,EAAE,mBAAmB,GAAK,MAAM,oBAAX,CAAY;gBACvF,6BACE,KAAK,OAAA,EACL,YAAY,cAAA,EACZ,UAAU,EAAE,gCAAoB,EAChC,UAAU,EAAE,cAAc,EAC1B,SAAS,WAAA,IACN,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAA,uBAAe,GAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACjE;QAEF,IAAM,OAAO,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC1C,KAAI,CAAC,eAAe,GAAG,IAAI,yBAAe,CAAC,OAAO,CAAC,CAAC;QACpD,KAAI,CAAC,cAAc,GAAG,IAAI,oBAAc,CAAC,OAAO,CAAC,CAAC;QAClD,KAAI,CAAC,aAAa,GAAG,IAAI,mBAAa,CAAC,OAAO,CAAC,CAAC;QAChD,KAAI,CAAC,UAAU,GAAG,IAAI,gBAAU,CAAC,OAAO,EAAE,KAAI,CAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"Contacts.js","sourceRoot":"","sources":["../../src/Contacts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAgD;AAChD,iCAA0C;AAE1C,yCAAmD;AACnD,6BASe;AACf,uCAAsC;AACtC,0EAAoD;AASpD;IAA8B,4BAAI;IAiBhC,kBAAY,MAAsB;QAAlC,iBAqBC;QApBS,IAAA,KAAK,GAAmE,MAAM,MAAzE,EAAE,YAAY,GAAqD,MAAM,aAA3D,EAAE,cAAc,GAAqC,MAAM,eAA3C,EAAE,SAAS,GAA0B,MAAM,UAAhC,EAAE,mBAAmB,GAAK,MAAM,oBAAX,CAAY;gBACvF,6BACE,KAAK,OAAA,EACL,YAAY,cAAA,EACZ,UAAU,EAAE,gCAAoB,EAChC,UAAU,EAAE,cAAc,EAC1B,SAAS,WAAA,IACN,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAA,uBAAe,GAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACjE;QAEF,IAAM,OAAO,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC1C,KAAI,CAAC,eAAe,GAAG,IAAI,yBAAe,CAAC,OAAO,CAAC,CAAC;QACpD,KAAI,CAAC,cAAc,GAAG,IAAI,oBAAc,CAAC,OAAO,CAAC,CAAC;QAClD,KAAI,CAAC,aAAa,GAAG,IAAI,mBAAa,CAAC,OAAO,CAAC,CAAC;QAChD,KAAI,CAAC,UAAU,GAAG,IAAI,gBAAU,CAAC,OAAO,EAAE,KAAI,CAAC,eAAe,CAAC,CAAC;QAChE,KAAI,CAAC,cAAc,GAAG,IAAI,oBAAc,CAAC,OAAO,CAAC,CAAC;QAClD,KAAI,CAAC,eAAe,GAAG,IAAI,qBAAe,CAAC,OAAO,CAAC,CAAC;QACpD,KAAI,CAAC,SAAS,GAAG,IAAI,eAAS,CAAC,OAAO,CAAC,CAAC;QACxC,KAAI,CAAC,8BAA8B,GAAG,IAAI,oCAA8B,CAAC,OAAO,CAAC,CAAC;QAClF,KAAI,CAAC,aAAa,GAAG,IAAI,mBAAa,CAAC,OAAO,CAAC,CAAC;;IAClD,CAAC;IAED,6BAAU,GAAV,UAAW,CAAa;;QACtB,IAAI,CAAC,CAAC,YAAY,KAAI,MAAA,CAAC,CAAC,QAAQ,0CAAE,IAAI,CAAA,EAAE;YAEhC,IAAA,KAA0B,CAAC,CAAC,QAAQ,CAAC,IAAW,EAA9C,UAAU,gBAAA,EAAE,OAAO,aAA2B,CAAC;YACvD,OAAO,IAAI,mBAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;SACnD;QACD,OAAO,iBAAM,UAAU,YAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IAEH,eAAC;AAAD,CAAC,AAjDD,CAA8B,WAAI,GAiDjC;AAjDY,4BAAQ"}
|
|
@@ -81,11 +81,10 @@ var constants_1 = require("../constants");
|
|
|
81
81
|
var apiError_1 = require("../apiError");
|
|
82
82
|
var ContactApi = (function (_super) {
|
|
83
83
|
__extends(ContactApi, _super);
|
|
84
|
-
function ContactApi(apiCall, batchProcessApi
|
|
84
|
+
function ContactApi(apiCall, batchProcessApi) {
|
|
85
85
|
var _this = _super.call(this, apiCall) || this;
|
|
86
86
|
_this.apiCall = apiCall;
|
|
87
87
|
_this.batchProcessApi = batchProcessApi;
|
|
88
|
-
_this.bookServiceApi = bookServiceApi;
|
|
89
88
|
_this.apiBasePath = 'contact';
|
|
90
89
|
return _this;
|
|
91
90
|
}
|
|
@@ -119,7 +118,7 @@ var ContactApi = (function (_super) {
|
|
|
119
118
|
});
|
|
120
119
|
};
|
|
121
120
|
ContactApi.prototype.deleteMulti = function (data) {
|
|
122
|
-
if ((Array.isArray(data.ids) && data.ids.length
|
|
121
|
+
if ((Array.isArray(data.ids) && data.ids.length > constants_1.CONTACTS_DELETE_MAX_AMOUNT) || data.all) {
|
|
123
122
|
return this.bulkDeleteContacts(data);
|
|
124
123
|
}
|
|
125
124
|
return this.apiCall({
|
|
@@ -128,62 +127,6 @@ var ContactApi = (function (_super) {
|
|
|
128
127
|
data: data,
|
|
129
128
|
});
|
|
130
129
|
};
|
|
131
|
-
ContactApi.prototype.deleteContactsByBook = function (bookId, notifyEventProxy) {
|
|
132
|
-
if (notifyEventProxy === void 0) { notifyEventProxy = false; }
|
|
133
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
134
|
-
var contacts;
|
|
135
|
-
return __generator(this, function (_a) {
|
|
136
|
-
switch (_a.label) {
|
|
137
|
-
case 0: return [4, this.listContact({ contact_book: bookId })];
|
|
138
|
-
case 1:
|
|
139
|
-
contacts = _a.sent();
|
|
140
|
-
return [2, this.bulkDeleteContacts({
|
|
141
|
-
ids: contacts.items.map(function (_a) {
|
|
142
|
-
var id = _a.id;
|
|
143
|
-
return id;
|
|
144
|
-
}),
|
|
145
|
-
contact_book: bookId,
|
|
146
|
-
notifyEventProxy: notifyEventProxy,
|
|
147
|
-
})];
|
|
148
|
-
}
|
|
149
|
-
});
|
|
150
|
-
});
|
|
151
|
-
};
|
|
152
|
-
ContactApi.prototype.initDeleteBookContactsBulk = function (bookId, notifyEventProxy) {
|
|
153
|
-
if (notifyEventProxy === void 0) { notifyEventProxy = false; }
|
|
154
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
155
|
-
var contactsCount, contacts, id;
|
|
156
|
-
return __generator(this, function (_a) {
|
|
157
|
-
switch (_a.label) {
|
|
158
|
-
case 0: return [4, this.bookServiceApi.getContactBook(bookId)];
|
|
159
|
-
case 1:
|
|
160
|
-
contactsCount = (_a.sent()).contactsCount;
|
|
161
|
-
return [4, this.listContact({
|
|
162
|
-
contact_book: bookId,
|
|
163
|
-
size: constants_1.CONTACTS_DELETE_MAX_AMOUNT,
|
|
164
|
-
})];
|
|
165
|
-
case 2:
|
|
166
|
-
contacts = _a.sent();
|
|
167
|
-
id = (0, uuid_1.v4)();
|
|
168
|
-
return [4, this.runSingleDeleteContactsBulk({
|
|
169
|
-
ids: contacts.items.map(function (_a) {
|
|
170
|
-
var id = _a.id;
|
|
171
|
-
return id;
|
|
172
|
-
}),
|
|
173
|
-
contact_book: bookId,
|
|
174
|
-
notifyEventProxy: notifyEventProxy,
|
|
175
|
-
}, false, id)];
|
|
176
|
-
case 3:
|
|
177
|
-
_a.sent();
|
|
178
|
-
return [2, {
|
|
179
|
-
batchId: id,
|
|
180
|
-
totalBatches: Math.floor(contactsCount / 50),
|
|
181
|
-
firstBatchSize: constants_1.CONTACTS_DELETE_MAX_AMOUNT,
|
|
182
|
-
}];
|
|
183
|
-
}
|
|
184
|
-
});
|
|
185
|
-
});
|
|
186
|
-
};
|
|
187
130
|
ContactApi.prototype.createContact = function (data) {
|
|
188
131
|
return this.apiCall({
|
|
189
132
|
method: 'POST',
|
|
@@ -278,59 +221,20 @@ var ContactApi = (function (_super) {
|
|
|
278
221
|
};
|
|
279
222
|
ContactApi.prototype.bulkDeleteContacts = function (data) {
|
|
280
223
|
return __awaiter(this, void 0, void 0, function () {
|
|
281
|
-
var
|
|
224
|
+
var batchProcess;
|
|
282
225
|
return __generator(this, function (_a) {
|
|
283
226
|
switch (_a.label) {
|
|
284
|
-
case 0:
|
|
285
|
-
ids = data.ids, contact_book = data.contact_book, all = data.all, rest = __rest(data, ["ids", "contact_book", "all"]);
|
|
286
|
-
if (!all) return [3, 2];
|
|
287
|
-
if (!contact_book) {
|
|
288
|
-
throw new apiError_1.ApiError(400, 'contact_book should be provided in case if "all" is true');
|
|
289
|
-
}
|
|
290
|
-
return [4, this.deleteContactsByBook(contact_book)];
|
|
291
|
-
case 1: return [2, _a.sent()];
|
|
292
|
-
case 2:
|
|
293
|
-
if (!ids) {
|
|
294
|
-
throw new apiError_1.ApiError(400, 'Provide either "contact_book" or "all"');
|
|
295
|
-
}
|
|
296
|
-
batchSize = constants_1.CONTACTS_DELETE_MAX_AMOUNT;
|
|
297
|
-
i = 0;
|
|
298
|
-
_a.label = 3;
|
|
299
|
-
case 3:
|
|
300
|
-
if (!(i < ids.length)) return [3, 6];
|
|
301
|
-
chunk = ids.slice(i, i + batchSize);
|
|
302
|
-
return [4, this.runSingleDeleteContactsBulk(__assign({ ids: chunk, contact_book: contact_book }, rest))];
|
|
303
|
-
case 4:
|
|
304
|
-
_a.sent();
|
|
305
|
-
_a.label = 5;
|
|
306
|
-
case 5:
|
|
307
|
-
i += batchSize;
|
|
308
|
-
return [3, 3];
|
|
309
|
-
case 6: return [2];
|
|
310
|
-
}
|
|
311
|
-
});
|
|
312
|
-
});
|
|
313
|
-
};
|
|
314
|
-
ContactApi.prototype.runSingleDeleteContactsBulk = function (data, withPoling, batchId) {
|
|
315
|
-
if (withPoling === void 0) { withPoling = true; }
|
|
316
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
317
|
-
var id;
|
|
318
|
-
var _this = this;
|
|
319
|
-
return __generator(this, function (_a) {
|
|
320
|
-
switch (_a.label) {
|
|
321
|
-
case 0:
|
|
322
|
-
id = batchId || (0, uuid_1.v4)();
|
|
323
|
-
this.apiCall({
|
|
227
|
+
case 0: return [4, this.apiCall({
|
|
324
228
|
method: 'DELETE',
|
|
325
229
|
route: "".concat(this.apiBasePath, "/bulk"),
|
|
326
|
-
data:
|
|
327
|
-
});
|
|
328
|
-
if (!withPoling) return [3, 2];
|
|
329
|
-
return [4, (0, utils_1.debouncePromise)(function () { return _this.polling(id); }, 3000)];
|
|
230
|
+
data: data,
|
|
231
|
+
})];
|
|
330
232
|
case 1:
|
|
233
|
+
batchProcess = _a.sent();
|
|
234
|
+
return [4, this.polling(batchProcess.id)];
|
|
235
|
+
case 2:
|
|
331
236
|
_a.sent();
|
|
332
|
-
|
|
333
|
-
case 2: return [2];
|
|
237
|
+
return [2];
|
|
334
238
|
}
|
|
335
239
|
});
|
|
336
240
|
});
|
|
@@ -407,7 +311,7 @@ var ContactApi = (function (_super) {
|
|
|
407
311
|
ContactApi.prototype.polling = function (batchId, repeats) {
|
|
408
312
|
if (repeats === void 0) { repeats = 0; }
|
|
409
313
|
return __awaiter(this, void 0, void 0, function () {
|
|
410
|
-
var batchProcess, e_2;
|
|
314
|
+
var batchProcess, counter, e_2;
|
|
411
315
|
var _this = this;
|
|
412
316
|
return __generator(this, function (_a) {
|
|
413
317
|
switch (_a.label) {
|
|
@@ -416,6 +320,8 @@ var ContactApi = (function (_super) {
|
|
|
416
320
|
return [4, (0, utils_1.debouncePromise)(function () { return _this.batchProcessApi.getBatchProcess(batchId); }, 1000)];
|
|
417
321
|
case 1:
|
|
418
322
|
batchProcess = _a.sent();
|
|
323
|
+
counter = batchCounters[batchId] || 0;
|
|
324
|
+
batchCounters[batchId] = counter + 1;
|
|
419
325
|
return [3, 5];
|
|
420
326
|
case 2:
|
|
421
327
|
e_2 = _a.sent();
|
|
@@ -443,4 +349,5 @@ var ContactApi = (function (_super) {
|
|
|
443
349
|
return ContactApi;
|
|
444
350
|
}(baseApi_1.BaseApi));
|
|
445
351
|
exports.default = ContactApi;
|
|
352
|
+
var batchCounters = {};
|
|
446
353
|
//# sourceMappingURL=contactApi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contactApi.js","sourceRoot":"","sources":["../../../src/api/contactApi.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA0B;AAE1B,mEAiBsC;AAEtC,qCAAoC;AAEpC,kCAAoF;
|
|
1
|
+
{"version":3,"file":"contactApi.js","sourceRoot":"","sources":["../../../src/api/contactApi.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/constants.js
CHANGED
|
@@ -4,5 +4,5 @@ exports.CONTACTS_DELETE_MAX_AMOUNT = exports.FAILED_REQUEST_REPEATS = exports.RE
|
|
|
4
4
|
exports.CONTACTS_SERVICE_KEY = 'contacts-api';
|
|
5
5
|
exports.REQUEST_PAYLOAD_MAX_BYTES = 150000;
|
|
6
6
|
exports.FAILED_REQUEST_REPEATS = 3;
|
|
7
|
-
exports.CONTACTS_DELETE_MAX_AMOUNT =
|
|
7
|
+
exports.CONTACTS_DELETE_MAX_AMOUNT = 5;
|
|
8
8
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,cAAc,CAAC;AAEtC,QAAA,yBAAyB,GAAG,MAAM,CAAC;AAEnC,QAAA,sBAAsB,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,cAAc,CAAC;AAEtC,QAAA,yBAAyB,GAAG,MAAM,CAAC;AAEnC,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAQ3B,QAAA,0BAA0B,GAAG,CAAC,CAAC"}
|
package/dist/cjs/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAGA,+DAA6C;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAGA,+DAA6C;AAG7C,qCAA+E;AAAtE,sGAAA,cAAc,OAAA"}
|
package/dist/esm/Contacts.js
CHANGED
|
@@ -13,7 +13,7 @@ export class Contacts extends Base {
|
|
|
13
13
|
this.batchProcessApi = new BatchProcessApi(apiCall);
|
|
14
14
|
this.contactBookApi = new ContactBookApi(apiCall);
|
|
15
15
|
this.migrationsApi = new MigrationsApi(apiCall);
|
|
16
|
-
this.contactApi = new ContactApi(apiCall, this.batchProcessApi
|
|
16
|
+
this.contactApi = new ContactApi(apiCall, this.batchProcessApi);
|
|
17
17
|
this.fieldSchemaApi = new FieldSchemaApi(apiCall);
|
|
18
18
|
this.schemaPresetApi = new SchemaPresetApi(apiCall);
|
|
19
19
|
this.filterApi = new FilterApi(apiCall);
|
package/dist/esm/Contacts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Contacts.js","sourceRoot":"","sources":["../../src/Contacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,IAAI,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EACL,cAAc,EACd,aAAa,EACb,UAAU,EACV,cAAc,EACd,eAAe,EACf,SAAS,EACT,8BAA8B,EAC9B,aAAa,GACd,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,eAAe,MAAM,uBAAuB,CAAC;AASpD,MAAM,OAAO,QAAS,SAAQ,IAAI;IAiBhC,YAAY,MAAsB;QAChC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAC;QACvF,KAAK,iBACH,KAAK;YACL,YAAY,EACZ,UAAU,EAAE,oBAAoB,EAChC,UAAU,EAAE,cAAc,EAC1B,SAAS,IACN,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACjE,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"Contacts.js","sourceRoot":"","sources":["../../src/Contacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,IAAI,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EACL,cAAc,EACd,aAAa,EACb,UAAU,EACV,cAAc,EACd,eAAe,EACf,SAAS,EACT,8BAA8B,EAC9B,aAAa,GACd,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,eAAe,MAAM,uBAAuB,CAAC;AASpD,MAAM,OAAO,QAAS,SAAQ,IAAI;IAiBhC,YAAY,MAAsB;QAChC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAC;QACvF,KAAK,iBACH,KAAK;YACL,YAAY,EACZ,UAAU,EAAE,oBAAoB,EAChC,UAAU,EAAE,cAAc,EAC1B,SAAS,IACN,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACjE,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAChE,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,8BAA8B,GAAG,IAAI,8BAA8B,CAAC,OAAO,CAAC,CAAC;QAClF,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,UAAU,CAAC,CAAa;;QACtB,IAAI,CAAC,CAAC,YAAY,KAAI,MAAA,CAAC,CAAC,QAAQ,0CAAE,IAAI,CAAA,EAAE;YAEtC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAW,CAAC;YACvD,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;SACnD;QACD,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;CAEF"}
|
|
@@ -23,13 +23,12 @@ import { BatchProcessStatus, } from '@onereach/types-contacts-api';
|
|
|
23
23
|
import { BaseApi } from './baseApi';
|
|
24
24
|
import { getObjectSizeInBytes, chunkArrByMaxSize, debouncePromise } from '../utils';
|
|
25
25
|
import { REQUEST_PAYLOAD_MAX_BYTES, FAILED_REQUEST_REPEATS, CONTACTS_DELETE_MAX_AMOUNT } from '../constants';
|
|
26
|
-
import {
|
|
26
|
+
import { CreateContactsBatchError } from '../apiError';
|
|
27
27
|
export default class ContactApi extends BaseApi {
|
|
28
|
-
constructor(apiCall, batchProcessApi
|
|
28
|
+
constructor(apiCall, batchProcessApi) {
|
|
29
29
|
super(apiCall);
|
|
30
30
|
this.apiCall = apiCall;
|
|
31
31
|
this.batchProcessApi = batchProcessApi;
|
|
32
|
-
this.bookServiceApi = bookServiceApi;
|
|
33
32
|
this.apiBasePath = 'contact';
|
|
34
33
|
}
|
|
35
34
|
getContact(id, params) {
|
|
@@ -61,7 +60,7 @@ export default class ContactApi extends BaseApi {
|
|
|
61
60
|
});
|
|
62
61
|
}
|
|
63
62
|
deleteMulti(data) {
|
|
64
|
-
if ((Array.isArray(data.ids) && data.ids.length
|
|
63
|
+
if ((Array.isArray(data.ids) && data.ids.length > CONTACTS_DELETE_MAX_AMOUNT) || data.all) {
|
|
65
64
|
return this.bulkDeleteContacts(data);
|
|
66
65
|
}
|
|
67
66
|
return this.apiCall({
|
|
@@ -70,36 +69,6 @@ export default class ContactApi extends BaseApi {
|
|
|
70
69
|
data,
|
|
71
70
|
});
|
|
72
71
|
}
|
|
73
|
-
deleteContactsByBook(bookId, notifyEventProxy = false) {
|
|
74
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
-
const contacts = yield this.listContact({ contact_book: bookId });
|
|
76
|
-
return this.bulkDeleteContacts({
|
|
77
|
-
ids: contacts.items.map(({ id }) => id),
|
|
78
|
-
contact_book: bookId,
|
|
79
|
-
notifyEventProxy,
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
initDeleteBookContactsBulk(bookId, notifyEventProxy = false) {
|
|
84
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
85
|
-
const { contactsCount } = yield this.bookServiceApi.getContactBook(bookId);
|
|
86
|
-
const contacts = yield this.listContact({
|
|
87
|
-
contact_book: bookId,
|
|
88
|
-
size: CONTACTS_DELETE_MAX_AMOUNT,
|
|
89
|
-
});
|
|
90
|
-
const id = v4();
|
|
91
|
-
yield this.runSingleDeleteContactsBulk({
|
|
92
|
-
ids: contacts.items.map(({ id }) => id),
|
|
93
|
-
contact_book: bookId,
|
|
94
|
-
notifyEventProxy,
|
|
95
|
-
}, false, id);
|
|
96
|
-
return {
|
|
97
|
-
batchId: id,
|
|
98
|
-
totalBatches: Math.floor(contactsCount / 50),
|
|
99
|
-
firstBatchSize: CONTACTS_DELETE_MAX_AMOUNT,
|
|
100
|
-
};
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
72
|
createContact(data) {
|
|
104
73
|
return this.apiCall({
|
|
105
74
|
method: 'POST',
|
|
@@ -171,34 +140,12 @@ export default class ContactApi extends BaseApi {
|
|
|
171
140
|
}
|
|
172
141
|
bulkDeleteContacts(data) {
|
|
173
142
|
return __awaiter(this, void 0, void 0, function* () {
|
|
174
|
-
const
|
|
175
|
-
if (all) {
|
|
176
|
-
if (!contact_book) {
|
|
177
|
-
throw new ApiError(400, 'contact_book should be provided in case if "all" is true');
|
|
178
|
-
}
|
|
179
|
-
return yield this.deleteContactsByBook(contact_book);
|
|
180
|
-
}
|
|
181
|
-
if (!ids) {
|
|
182
|
-
throw new ApiError(400, 'Provide either "contact_book" or "all"');
|
|
183
|
-
}
|
|
184
|
-
const batchSize = CONTACTS_DELETE_MAX_AMOUNT;
|
|
185
|
-
for (let i = 0; i < ids.length; i += batchSize) {
|
|
186
|
-
const chunk = ids.slice(i, i + batchSize);
|
|
187
|
-
yield this.runSingleDeleteContactsBulk(Object.assign({ ids: chunk, contact_book }, rest));
|
|
188
|
-
}
|
|
189
|
-
});
|
|
190
|
-
}
|
|
191
|
-
runSingleDeleteContactsBulk(data, withPoling = true, batchId) {
|
|
192
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
193
|
-
const id = batchId || v4();
|
|
194
|
-
this.apiCall({
|
|
143
|
+
const batchProcess = yield this.apiCall({
|
|
195
144
|
method: 'DELETE',
|
|
196
145
|
route: `${this.apiBasePath}/bulk`,
|
|
197
|
-
data
|
|
146
|
+
data,
|
|
198
147
|
});
|
|
199
|
-
|
|
200
|
-
yield debouncePromise(() => this.polling(id), 3000);
|
|
201
|
-
}
|
|
148
|
+
yield this.polling(batchProcess.id);
|
|
202
149
|
});
|
|
203
150
|
}
|
|
204
151
|
createContactsInMultiBatches(contactsChunks, data) {
|
|
@@ -245,6 +192,8 @@ export default class ContactApi extends BaseApi {
|
|
|
245
192
|
let batchProcess;
|
|
246
193
|
try {
|
|
247
194
|
batchProcess = yield debouncePromise(() => this.batchProcessApi.getBatchProcess(batchId), 1000);
|
|
195
|
+
const counter = batchCounters[batchId] || 0;
|
|
196
|
+
batchCounters[batchId] = counter + 1;
|
|
248
197
|
}
|
|
249
198
|
catch (e) {
|
|
250
199
|
if (repeats < FAILED_REQUEST_REPEATS
|
|
@@ -266,4 +215,5 @@ export default class ContactApi extends BaseApi {
|
|
|
266
215
|
});
|
|
267
216
|
}
|
|
268
217
|
}
|
|
218
|
+
const batchCounters = {};
|
|
269
219
|
//# sourceMappingURL=contactApi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contactApi.js","sourceRoot":"","sources":["../../../src/api/contactApi.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAE1B,OAAO,EAEL,kBAAkB,GAenB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"contactApi.js","sourceRoot":"","sources":["../../../src/api/contactApi.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/constants.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export const CONTACTS_SERVICE_KEY = 'contacts-api';
|
|
2
2
|
export const REQUEST_PAYLOAD_MAX_BYTES = 150000;
|
|
3
3
|
export const FAILED_REQUEST_REPEATS = 3;
|
|
4
|
-
export const CONTACTS_DELETE_MAX_AMOUNT =
|
|
4
|
+
export const CONTACTS_DELETE_MAX_AMOUNT = 5;
|
|
5
5
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAEnD,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAEhD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAEnD,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAEhD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAQxC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC"}
|
package/dist/esm/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAGA,cAAc,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAGA,cAAc,8BAA8B,CAAC;AAG7C,OAAO,EAAE,cAAc,EAAmC,MAAM,cAAc,CAAC"}
|
|
@@ -1,27 +1,18 @@
|
|
|
1
|
-
import { ContactParamsDto, ContactResponseDto, CreateContactDto, CreateMultipleContactsDto, DeleteContactParamsDto, FindAllParamsDto, LinkContactMultiParamsDto, LinkContactParamsDto, MergeContactParamsDto, UnlinkContactMultiParamsDto, UnlinkContactParamsDto, UpdateContactDto } from '@onereach/types-contacts-api';
|
|
1
|
+
import { ContactParamsDto, ContactResponseDto, CreateContactDto, CreateMultipleContactsDto, DeleteContactMultiParamsDto, DeleteContactParamsDto, FindAllParamsDto, LinkContactMultiParamsDto, LinkContactParamsDto, MergeContactParamsDto, UnlinkContactMultiParamsDto, UnlinkContactParamsDto, UpdateContactDto } from '@onereach/types-contacts-api';
|
|
2
2
|
import { CalApiParams, List } from '@or-sdk/base';
|
|
3
3
|
import { BaseApi } from './baseApi';
|
|
4
4
|
import BatchProcessApi from './batchProcessApi';
|
|
5
5
|
import { InitCreateBatchResponse } from '../types';
|
|
6
|
-
import ContactBookApi from './contactBookApi';
|
|
7
|
-
import { DeleteContactsData } from '../types';
|
|
8
6
|
export default class ContactApi extends BaseApi {
|
|
9
7
|
protected readonly apiCall: <T>(params: CalApiParams) => Promise<T>;
|
|
10
8
|
private batchProcessApi;
|
|
11
|
-
|
|
12
|
-
constructor(apiCall: <T>(params: CalApiParams) => Promise<T>, batchProcessApi: BatchProcessApi, bookServiceApi: ContactBookApi);
|
|
9
|
+
constructor(apiCall: <T>(params: CalApiParams) => Promise<T>, batchProcessApi: BatchProcessApi);
|
|
13
10
|
private readonly apiBasePath;
|
|
14
11
|
getContact(id: string, params: ContactParamsDto): Promise<ContactResponseDto>;
|
|
15
12
|
listContact(data?: FindAllParamsDto): Promise<List<ContactResponseDto>>;
|
|
16
13
|
updateContact(id: string, data: UpdateContactDto): Promise<ContactResponseDto>;
|
|
17
14
|
deleteContact(id: string, data: DeleteContactParamsDto): Promise<void>;
|
|
18
|
-
deleteMulti(data:
|
|
19
|
-
deleteContactsByBook(bookId: string, notifyEventProxy?: boolean): Promise<void>;
|
|
20
|
-
initDeleteBookContactsBulk(bookId: string, notifyEventProxy?: boolean): Promise<{
|
|
21
|
-
batchId: string;
|
|
22
|
-
totalBatches: number;
|
|
23
|
-
firstBatchSize: number;
|
|
24
|
-
}>;
|
|
15
|
+
deleteMulti(data: DeleteContactMultiParamsDto): Promise<void>;
|
|
25
16
|
createContact(data: CreateContactDto): Promise<ContactResponseDto>;
|
|
26
17
|
bulkCreateContacts(data: CreateMultipleContactsDto): Promise<void>;
|
|
27
18
|
initCreateBatch(data: CreateMultipleContactsDto): Promise<InitCreateBatchResponse>;
|
|
@@ -31,7 +22,6 @@ export default class ContactApi extends BaseApi {
|
|
|
31
22
|
unlinkContact(id: string, data: UnlinkContactParamsDto): Promise<void>;
|
|
32
23
|
unlinkContactsMulti(data: UnlinkContactMultiParamsDto): Promise<void>;
|
|
33
24
|
private bulkDeleteContacts;
|
|
34
|
-
private runSingleDeleteContactsBulk;
|
|
35
25
|
private createContactsInMultiBatches;
|
|
36
26
|
private createContactsInSingleBatch;
|
|
37
27
|
private polling;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contactApi.d.ts","sourceRoot":"","sources":["../../../src/api/contactApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,gBAAgB,EAEhB,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"contactApi.d.ts","sourceRoot":"","sources":["../../../src/api/contactApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,gBAAgB,EAEhB,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,2BAA2B,EAC3B,sBAAsB,EACtB,gBAAgB,EAChB,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,uBAAuB,EAA8B,MAAM,UAAU,CAAC;AAI/E,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,OAAO;IAE3C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,eAAe;gBADJ,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,EAC3D,eAAe,EAAE,eAAe;IAK1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IAOzC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAY7E,WAAW,CAAC,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAa3E,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAa9E,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAatE,WAAW,CAAC,IAAI,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC;IAe7D,aAAa,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkB5D,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBlE,eAAe,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IA2BxF,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAanF,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlE,iBAAiB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAajE,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAYtE,mBAAmB,CAAC,IAAI,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC;YAQvD,kBAAkB;YASlB,4BAA4B;YA6B5B,2BAA2B;YAqB3B,OAAO;CAiCtB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const CONTACTS_SERVICE_KEY = "contacts-api";
|
|
2
2
|
export declare const REQUEST_PAYLOAD_MAX_BYTES = 150000;
|
|
3
3
|
export declare const FAILED_REQUEST_REPEATS = 3;
|
|
4
|
-
export declare const CONTACTS_DELETE_MAX_AMOUNT =
|
|
4
|
+
export declare const CONTACTS_DELETE_MAX_AMOUNT = 5;
|
|
5
5
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AAEnD,eAAO,MAAM,yBAAyB,SAAS,CAAC;AAEhD,eAAO,MAAM,sBAAsB,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AAEnD,eAAO,MAAM,yBAAyB,SAAS,CAAC;AAEhD,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAQxC,eAAO,MAAM,0BAA0B,IAAI,CAAC"}
|
package/dist/types/types.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Token } from '@or-sdk/base';
|
|
2
|
-
import { BatchProcessStatus, ContactBookParamsDto, ListApiParams, OrderParams
|
|
2
|
+
import { BatchProcessStatus, ContactBookParamsDto, ListApiParams, OrderParams } from '@onereach/types-contacts-api';
|
|
3
3
|
import { OrderOptions, PaginationOptions } from '@or-sdk/base';
|
|
4
4
|
export * from '@onereach/types-contacts-api';
|
|
5
|
-
declare type OptionalBy<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
|
|
6
5
|
export { OrderDirection, PaginationOptions, OrderOptions } from '@or-sdk/base';
|
|
7
6
|
export declare type ContactsConfig = {
|
|
8
7
|
token: Token;
|
|
@@ -24,9 +23,6 @@ export declare type InitCreateBatchResponse = {
|
|
|
24
23
|
firstChunkSize: number;
|
|
25
24
|
batchId: string;
|
|
26
25
|
};
|
|
27
|
-
export declare type DeleteContactsData = OptionalBy<DeleteContactMultiParamsDto, 'ids'> & {
|
|
28
|
-
all?: boolean;
|
|
29
|
-
};
|
|
30
26
|
export declare type TrackBatchProcessResponse = {
|
|
31
27
|
status: BatchProcessStatus;
|
|
32
28
|
errors?: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,aAAa,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACpH,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC/D,cAAc,8BAA8B,CAAC;AAG7C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE/E,oBAAY,cAAc,GAAG;IAI3B,KAAK,EAAE,KAAK,CAAC;IAKb,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,SAAS,CAAC,EAAE,MAAM,CAAC;IAOnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AAGF,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB,CAAC,oBAAoB,CAAC;IAChF,aAAa,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,YAAY,CAAC;CACvD;AAED,oBAAY,iBAAiB,CAAC,CAAC,SAAS,aAAa,GAAG,WAAW,IACjE,IAAI,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAAC,iBAAiB,GAAG,YAAY,CAAC,CAAC;AAEjF,oBAAY,0BAA0B,GAAE;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,oBAAY,uBAAuB,GAAG;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,yBAAyB,GAAG;IACtC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "3.3.1-beta.
|
|
2
|
+
"version": "3.3.1-beta.1904.0",
|
|
3
3
|
"name": "@or-sdk/contacts",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"module": "dist/esm/index.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"access": "public"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@onereach/types-contacts-api": "4.
|
|
27
|
+
"@onereach/types-contacts-api": "4.9.2-beta.2343.0",
|
|
28
28
|
"@or-sdk/base": "^0.29.0",
|
|
29
29
|
"agentkeepalive": "^4.5.0",
|
|
30
30
|
"uuid": "^8.3.2"
|
package/src/Contacts.ts
CHANGED
|
@@ -54,7 +54,7 @@ export class Contacts extends Base {
|
|
|
54
54
|
this.batchProcessApi = new BatchProcessApi(apiCall);
|
|
55
55
|
this.contactBookApi = new ContactBookApi(apiCall);
|
|
56
56
|
this.migrationsApi = new MigrationsApi(apiCall);
|
|
57
|
-
this.contactApi = new ContactApi(apiCall, this.batchProcessApi
|
|
57
|
+
this.contactApi = new ContactApi(apiCall, this.batchProcessApi);
|
|
58
58
|
this.fieldSchemaApi = new FieldSchemaApi(apiCall);
|
|
59
59
|
this.schemaPresetApi = new SchemaPresetApi(apiCall);
|
|
60
60
|
this.filterApi = new FilterApi(apiCall);
|
package/src/api/contactApi.ts
CHANGED
|
@@ -23,16 +23,13 @@ import { BaseApi } from './baseApi';
|
|
|
23
23
|
import BatchProcessApi from './batchProcessApi';
|
|
24
24
|
import { getObjectSizeInBytes, chunkArrByMaxSize, debouncePromise } from '../utils';
|
|
25
25
|
import { InitCreateBatchResponse, CreateContactsBatchResults } from '../types';
|
|
26
|
-
import ContactBookApi from './contactBookApi';
|
|
27
26
|
import { REQUEST_PAYLOAD_MAX_BYTES, FAILED_REQUEST_REPEATS, CONTACTS_DELETE_MAX_AMOUNT } from '../constants';
|
|
28
27
|
import { ApiError, CreateContactsBatchError } from '../apiError';
|
|
29
|
-
import { DeleteContactsData } from '../types';
|
|
30
28
|
|
|
31
29
|
export default class ContactApi extends BaseApi {
|
|
32
30
|
constructor(
|
|
33
31
|
protected readonly apiCall: <T>(params: CalApiParams) => Promise<T>,
|
|
34
|
-
private batchProcessApi: BatchProcessApi
|
|
35
|
-
private bookServiceApi: ContactBookApi
|
|
32
|
+
private batchProcessApi: BatchProcessApi
|
|
36
33
|
) {
|
|
37
34
|
super(apiCall);
|
|
38
35
|
}
|
|
@@ -92,11 +89,11 @@ export default class ContactApi extends BaseApi {
|
|
|
92
89
|
|
|
93
90
|
|
|
94
91
|
/**
|
|
95
|
-
* @description Delete
|
|
92
|
+
* @description Delete Contact
|
|
96
93
|
* @param data
|
|
97
94
|
*/
|
|
98
|
-
deleteMulti(data:
|
|
99
|
-
if ((Array.isArray(data.ids) && data.ids.length
|
|
95
|
+
deleteMulti(data: DeleteContactMultiParamsDto): Promise<void> {
|
|
96
|
+
if ((Array.isArray(data.ids) && data.ids.length > CONTACTS_DELETE_MAX_AMOUNT) || data.all) {
|
|
100
97
|
return this.bulkDeleteContacts(data);
|
|
101
98
|
}
|
|
102
99
|
return this.apiCall({
|
|
@@ -106,52 +103,6 @@ export default class ContactApi extends BaseApi {
|
|
|
106
103
|
});
|
|
107
104
|
}
|
|
108
105
|
|
|
109
|
-
/**
|
|
110
|
-
* @description Delete all contacts from a book
|
|
111
|
-
*/
|
|
112
|
-
async deleteContactsByBook(bookId: string, notifyEventProxy = false): Promise<void> {
|
|
113
|
-
const contacts = await this.listContact({ contact_book: bookId });
|
|
114
|
-
return this.bulkDeleteContacts({
|
|
115
|
-
ids: contacts.items.map(({ id }) => id),
|
|
116
|
-
contact_book: bookId,
|
|
117
|
-
notifyEventProxy,
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* Initiates bulk of deleting all contacts from a certain book.
|
|
123
|
-
* The only first batch is going to be executed and the only - its
|
|
124
|
-
* process id is returned in the response.
|
|
125
|
-
* Tracking of the batch status is possible with trackBatchProcess
|
|
126
|
-
* from BatchProcessApi
|
|
127
|
-
*
|
|
128
|
-
* @see batchProcessApi.trackBatchProcess
|
|
129
|
-
*/
|
|
130
|
-
async initDeleteBookContactsBulk(bookId: string, notifyEventProxy = false) {
|
|
131
|
-
const { contactsCount } = await this.bookServiceApi.getContactBook(bookId);
|
|
132
|
-
const contacts = await this.listContact({
|
|
133
|
-
contact_book: bookId,
|
|
134
|
-
size: CONTACTS_DELETE_MAX_AMOUNT,
|
|
135
|
-
});
|
|
136
|
-
|
|
137
|
-
const id = v4();
|
|
138
|
-
await this.runSingleDeleteContactsBulk(
|
|
139
|
-
{
|
|
140
|
-
ids: contacts.items.map(({ id }) => id),
|
|
141
|
-
contact_book: bookId,
|
|
142
|
-
notifyEventProxy,
|
|
143
|
-
},
|
|
144
|
-
false,
|
|
145
|
-
id
|
|
146
|
-
);
|
|
147
|
-
|
|
148
|
-
return {
|
|
149
|
-
batchId: id,
|
|
150
|
-
totalBatches: Math.floor(contactsCount / 50),
|
|
151
|
-
firstBatchSize: CONTACTS_DELETE_MAX_AMOUNT,
|
|
152
|
-
};
|
|
153
|
-
}
|
|
154
|
-
|
|
155
106
|
/**
|
|
156
107
|
* @description Create Contact
|
|
157
108
|
* @param data
|
|
@@ -212,6 +163,7 @@ export default class ContactApi extends BaseApi {
|
|
|
212
163
|
};
|
|
213
164
|
}
|
|
214
165
|
|
|
166
|
+
|
|
215
167
|
/**
|
|
216
168
|
* @description Merge two Contacts into one
|
|
217
169
|
* @param id Contact id TO which the data will be merged
|
|
@@ -275,50 +227,13 @@ export default class ContactApi extends BaseApi {
|
|
|
275
227
|
});
|
|
276
228
|
}
|
|
277
229
|
|
|
278
|
-
private async bulkDeleteContacts(data:
|
|
279
|
-
const
|
|
280
|
-
if (all) {
|
|
281
|
-
if (!contact_book) {
|
|
282
|
-
throw new ApiError(400, 'contact_book should be provided in case if "all" is true');
|
|
283
|
-
}
|
|
284
|
-
return await this.deleteContactsByBook(contact_book);
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
if (!ids) {
|
|
288
|
-
throw new ApiError(400, 'Provide either "contact_book" or "all"');
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
const batchSize = CONTACTS_DELETE_MAX_AMOUNT;
|
|
292
|
-
for (let i = 0;i < ids.length;i += batchSize) {
|
|
293
|
-
const chunk = ids.slice(i, i + batchSize);
|
|
294
|
-
await this.runSingleDeleteContactsBulk({
|
|
295
|
-
ids: chunk,
|
|
296
|
-
contact_book,
|
|
297
|
-
...rest,
|
|
298
|
-
});
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
private async runSingleDeleteContactsBulk(
|
|
303
|
-
data: DeleteContactMultiParamsDto,
|
|
304
|
-
withPoling = true,
|
|
305
|
-
batchId?: string,
|
|
306
|
-
): Promise<void> {
|
|
307
|
-
const id = batchId || v4();
|
|
308
|
-
|
|
309
|
-
this.apiCall<BatchProcessResponseDto>({
|
|
230
|
+
private async bulkDeleteContacts(data: DeleteContactMultiParamsDto): Promise<void> {
|
|
231
|
+
const batchProcess = await this.apiCall<BatchProcessResponseDto>({
|
|
310
232
|
method: 'DELETE',
|
|
311
233
|
route: `${this.apiBasePath}/bulk`,
|
|
312
|
-
data
|
|
313
|
-
...data,
|
|
314
|
-
batchId: id,
|
|
315
|
-
},
|
|
234
|
+
data,
|
|
316
235
|
});
|
|
317
|
-
|
|
318
|
-
if (withPoling) {
|
|
319
|
-
// giving time to 2 lambdas to wake up (1 - create Batch and 2 - ping batch status)
|
|
320
|
-
await debouncePromise(() => this.polling(id), 3000);
|
|
321
|
-
}
|
|
236
|
+
await this.polling(batchProcess.id);
|
|
322
237
|
}
|
|
323
238
|
|
|
324
239
|
private async createContactsInMultiBatches(
|
|
@@ -372,10 +287,12 @@ export default class ContactApi extends BaseApi {
|
|
|
372
287
|
* Pols specific batch process until status of it isn't turned from 'pending to something else.
|
|
373
288
|
*/
|
|
374
289
|
private async polling(batchId: string, repeats = 0): Promise<BatchProcessResponseDto> {
|
|
375
|
-
let batchProcess: BatchProcessResponseDto;
|
|
376
290
|
|
|
291
|
+
let batchProcess: BatchProcessResponseDto;
|
|
377
292
|
try {
|
|
378
293
|
batchProcess = await debouncePromise(() => this.batchProcessApi.getBatchProcess(batchId), 1000);
|
|
294
|
+
const counter = batchCounters[batchId] || 0;
|
|
295
|
+
batchCounters[batchId] = counter + 1;
|
|
379
296
|
} catch (e) {
|
|
380
297
|
if (
|
|
381
298
|
repeats < FAILED_REQUEST_REPEATS
|
|
@@ -403,3 +320,5 @@ export default class ContactApi extends BaseApi {
|
|
|
403
320
|
: batchProcess;
|
|
404
321
|
}
|
|
405
322
|
}
|
|
323
|
+
|
|
324
|
+
const batchCounters: Record<string, number> = {};
|
package/src/constants.ts
CHANGED
|
@@ -4,4 +4,10 @@ export const REQUEST_PAYLOAD_MAX_BYTES = 150000;
|
|
|
4
4
|
|
|
5
5
|
export const FAILED_REQUEST_REPEATS = 3;
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* 5 selected experimentally
|
|
9
|
+
* Since contacts deleting assumes cascading on related field values and deleting
|
|
10
|
+
* relations in contact_book_contact table, it results in huge amount of queries
|
|
11
|
+
* which sent simultaneously might kill connection to the DB.
|
|
12
|
+
*/
|
|
13
|
+
export const CONTACTS_DELETE_MAX_AMOUNT = 5;
|
package/src/types.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { Token } from '@or-sdk/base';
|
|
2
|
-
import { BatchProcessStatus, ContactBookParamsDto, ListApiParams, OrderParams
|
|
2
|
+
import { BatchProcessStatus, ContactBookParamsDto, ListApiParams, OrderParams } from '@onereach/types-contacts-api';
|
|
3
3
|
import { OrderOptions, PaginationOptions } from '@or-sdk/base';
|
|
4
4
|
export * from '@onereach/types-contacts-api';
|
|
5
5
|
|
|
6
|
-
type OptionalBy<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
|
|
7
|
-
|
|
8
6
|
//re-export types
|
|
9
7
|
export { OrderDirection, PaginationOptions, OrderOptions } from '@or-sdk/base';
|
|
10
8
|
|
|
@@ -53,8 +51,6 @@ export type InitCreateBatchResponse = {
|
|
|
53
51
|
batchId: string;
|
|
54
52
|
};
|
|
55
53
|
|
|
56
|
-
export type DeleteContactsData = OptionalBy<DeleteContactMultiParamsDto, 'ids'> & { all?: boolean;};
|
|
57
|
-
|
|
58
54
|
export type TrackBatchProcessResponse = {
|
|
59
55
|
status: BatchProcessStatus;
|
|
60
56
|
errors?: string[];
|