@regulaforensics/facesdk-webclient 4.1.3 → 4.1.5

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.
Files changed (59) hide show
  1. package/dist/cjs-es5/api/group-api.js +99 -50
  2. package/dist/cjs-es5/api/matching-api.js +116 -19
  3. package/dist/cjs-es5/api/person-api.js +141 -71
  4. package/dist/cjs-es5/api/search-api.js +15 -8
  5. package/dist/cjs-es5/ext/group-api.js +15 -15
  6. package/dist/cjs-es5/ext/matching-api.js +5 -5
  7. package/dist/cjs-es5/ext/person-api.js +21 -21
  8. package/dist/cjs-es5/ext/search-api.js +3 -3
  9. package/dist/cjs-es5/models/index.js +10 -2
  10. package/dist/cjs-es5/models/match-and-search-request-all-of-images.js +16 -0
  11. package/dist/cjs-es5/models/match-and-search-request-all-of.js +16 -0
  12. package/dist/cjs-es5/models/match-and-search-request.js +16 -0
  13. package/dist/cjs-es5/models/match-and-search-response-all-of-detections.js +16 -0
  14. package/dist/cjs-es5/models/match-and-search-response-all-of.js +16 -0
  15. package/dist/cjs-es5/models/match-and-search-response.js +16 -0
  16. package/dist/cjs-es5/models/person-with-images-all-of.js +16 -0
  17. package/dist/cjs-es5/models/person-with-images.js +16 -0
  18. package/dist/cjs-es5/models/search-parameters.js +16 -0
  19. package/dist/esm-es5/api/group-api.js +99 -50
  20. package/dist/esm-es5/api/matching-api.js +116 -19
  21. package/dist/esm-es5/api/person-api.js +141 -71
  22. package/dist/esm-es5/api/search-api.js +15 -8
  23. package/dist/esm-es5/ext/group-api.js +15 -15
  24. package/dist/esm-es5/ext/matching-api.js +5 -5
  25. package/dist/esm-es5/ext/person-api.js +21 -21
  26. package/dist/esm-es5/ext/search-api.js +3 -3
  27. package/dist/esm-es5/models/index.js +10 -2
  28. package/dist/esm-es5/models/match-and-search-request-all-of-images.js +14 -0
  29. package/dist/esm-es5/models/match-and-search-request-all-of.js +14 -0
  30. package/dist/esm-es5/models/match-and-search-request.js +14 -0
  31. package/dist/esm-es5/models/match-and-search-response-all-of-detections.js +14 -0
  32. package/dist/esm-es5/models/match-and-search-response-all-of.js +14 -0
  33. package/dist/esm-es5/models/match-and-search-response.js +14 -0
  34. package/dist/esm-es5/models/person-with-images-all-of.js +14 -0
  35. package/dist/esm-es5/models/person-with-images.js +14 -0
  36. package/dist/esm-es5/models/search-parameters.js +14 -0
  37. package/package.json +1 -1
  38. package/src/api/group-api.ts +105 -49
  39. package/src/api/matching-api.ts +115 -18
  40. package/src/api/person-api.ts +150 -70
  41. package/src/api/search-api.ts +15 -7
  42. package/src/ext/group-api.ts +14 -14
  43. package/src/ext/matching-api.ts +4 -4
  44. package/src/ext/person-api.ts +20 -20
  45. package/src/ext/search-api.ts +2 -2
  46. package/src/models/crop.ts +1 -1
  47. package/src/models/image.ts +12 -0
  48. package/src/models/index.ts +9 -1
  49. package/src/models/match-and-search-request-all-of-images.ts +38 -0
  50. package/src/models/match-and-search-request-all-of.ts +31 -0
  51. package/src/models/match-and-search-request.ts +26 -0
  52. package/src/models/match-and-search-response-all-of-detections.ts +45 -0
  53. package/src/models/match-and-search-response-all-of.ts +50 -0
  54. package/src/models/match-and-search-response.ts +28 -0
  55. package/src/models/person-with-images-all-of.ts +31 -0
  56. package/src/models/person-with-images.ts +26 -0
  57. package/src/models/recognize-image-all-of.ts +6 -0
  58. package/src/models/search-parameters.ts +42 -0
  59. package/src/models/search-request.ts +2 -2
@@ -92,10 +92,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
92
92
  * @summary Add person image
93
93
  * @param {number} personId Person ID.
94
94
  * @param {ImageFields} imageFields Image to add.
95
+ * @param {string} [xRequestID]
95
96
  * @param {*} [options] Override http request option.
96
97
  * @throws {RequiredError}
97
98
  */
98
- addImageToPerson: function (personId, imageFields, options) {
99
+ addImageToPerson: function (personId, imageFields, xRequestID, options) {
99
100
  if (options === void 0) { options = {}; }
100
101
  return __awaiter(_this, void 0, void 0, function () {
101
102
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -113,6 +114,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
113
114
  localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options);
114
115
  localVarHeaderParameter = {};
115
116
  localVarQueryParameter = {};
117
+ if (xRequestID !== undefined && xRequestID !== null) {
118
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
119
+ }
116
120
  localVarHeaderParameter['Content-Type'] = 'application/json';
117
121
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
118
122
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
@@ -129,10 +133,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
129
133
  *
130
134
  * @summary Create person
131
135
  * @param {PersonFields} personFields
136
+ * @param {string} [xRequestID]
132
137
  * @param {*} [options] Override http request option.
133
138
  * @throws {RequiredError}
134
139
  */
135
- createPerson: function (personFields, options) {
140
+ createPerson: function (personFields, xRequestID, options) {
136
141
  if (options === void 0) { options = {}; }
137
142
  return __awaiter(_this, void 0, void 0, function () {
138
143
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -147,6 +152,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
147
152
  localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options);
148
153
  localVarHeaderParameter = {};
149
154
  localVarQueryParameter = {};
155
+ if (xRequestID !== undefined && xRequestID !== null) {
156
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
157
+ }
150
158
  localVarHeaderParameter['Content-Type'] = 'application/json';
151
159
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
152
160
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
@@ -164,10 +172,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
164
172
  * @summary Delete image of person
165
173
  * @param {number} imageId Image ID.
166
174
  * @param {number} personId Person ID.
175
+ * @param {string} [xRequestID]
167
176
  * @param {*} [options] Override http request option.
168
177
  * @throws {RequiredError}
169
178
  */
170
- deleteImageOfPerson: function (imageId, personId, options) {
179
+ deleteImageOfPerson: function (imageId, personId, xRequestID, options) {
171
180
  if (options === void 0) { options = {}; }
172
181
  return __awaiter(_this, void 0, void 0, function () {
173
182
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -186,6 +195,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
186
195
  localVarRequestOptions = __assign(__assign({ method: 'DELETE' }, baseOptions), options);
187
196
  localVarHeaderParameter = {};
188
197
  localVarQueryParameter = {};
198
+ if (xRequestID !== undefined && xRequestID !== null) {
199
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
200
+ }
189
201
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
190
202
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
191
203
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -200,10 +212,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
200
212
  *
201
213
  * @summary Delete person
202
214
  * @param {number} personId Person ID.
215
+ * @param {string} [xRequestID]
203
216
  * @param {*} [options] Override http request option.
204
217
  * @throws {RequiredError}
205
218
  */
206
- deletePerson: function (personId, options) {
219
+ deletePerson: function (personId, xRequestID, options) {
207
220
  if (options === void 0) { options = {}; }
208
221
  return __awaiter(_this, void 0, void 0, function () {
209
222
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -219,6 +232,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
219
232
  localVarRequestOptions = __assign(__assign({ method: 'DELETE' }, baseOptions), options);
220
233
  localVarHeaderParameter = {};
221
234
  localVarQueryParameter = {};
235
+ if (xRequestID !== undefined && xRequestID !== null) {
236
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
237
+ }
222
238
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
223
239
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
224
240
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -235,10 +251,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
235
251
  * @param {number} page The page number to get a list of persons or groups.
236
252
  * @param {number} size The page size with a list of persons or groups, items.
237
253
  * @param {number} personId Person ID.
254
+ * @param {string} [xRequestID]
238
255
  * @param {*} [options] Override http request option.
239
256
  * @throws {RequiredError}
240
257
  */
241
- getAllGroupsByPersonId: function (page, size, personId, options) {
258
+ getAllGroupsByPersonId: function (page, size, personId, xRequestID, options) {
242
259
  if (options === void 0) { options = {}; }
243
260
  return __awaiter(_this, void 0, void 0, function () {
244
261
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -264,6 +281,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
264
281
  if (size !== undefined) {
265
282
  localVarQueryParameter['size'] = size;
266
283
  }
284
+ if (xRequestID !== undefined && xRequestID !== null) {
285
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
286
+ }
267
287
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
268
288
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
269
289
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -280,10 +300,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
280
300
  * @param {number} page The page number to get a list of persons or groups.
281
301
  * @param {number} size The page size with a list of persons or groups, items.
282
302
  * @param {number} personId Person ID.
303
+ * @param {string} [xRequestID]
283
304
  * @param {*} [options] Override http request option.
284
305
  * @throws {RequiredError}
285
306
  */
286
- getAllImagesByPersonId: function (page, size, personId, options) {
307
+ getAllImagesByPersonId: function (page, size, personId, xRequestID, options) {
287
308
  if (options === void 0) { options = {}; }
288
309
  return __awaiter(_this, void 0, void 0, function () {
289
310
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -309,6 +330,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
309
330
  if (size !== undefined) {
310
331
  localVarQueryParameter['size'] = size;
311
332
  }
333
+ if (xRequestID !== undefined && xRequestID !== null) {
334
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
335
+ }
312
336
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
313
337
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
314
338
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -324,10 +348,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
324
348
  * @summary Get persons
325
349
  * @param {number} page The page number to get a list of persons or groups.
326
350
  * @param {number} size The page size with a list of persons or groups, items.
351
+ * @param {string} [xRequestID]
327
352
  * @param {*} [options] Override http request option.
328
353
  * @throws {RequiredError}
329
354
  */
330
- getAllPersons: function (page, size, options) {
355
+ getAllPersons: function (page, size, xRequestID, options) {
331
356
  if (options === void 0) { options = {}; }
332
357
  return __awaiter(_this, void 0, void 0, function () {
333
358
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -350,6 +375,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
350
375
  if (size !== undefined) {
351
376
  localVarQueryParameter['size'] = size;
352
377
  }
378
+ if (xRequestID !== undefined && xRequestID !== null) {
379
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
380
+ }
353
381
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
354
382
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
355
383
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -365,10 +393,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
365
393
  * @summary Get person image by id
366
394
  * @param {number} imageId Image ID.
367
395
  * @param {number} personId Person ID.
396
+ * @param {string} [xRequestID]
368
397
  * @param {*} [options] Override http request option.
369
398
  * @throws {RequiredError}
370
399
  */
371
- getImageOfPerson: function (imageId, personId, options) {
400
+ getImageOfPerson: function (imageId, personId, xRequestID, options) {
372
401
  if (options === void 0) { options = {}; }
373
402
  return __awaiter(_this, void 0, void 0, function () {
374
403
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -387,6 +416,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
387
416
  localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
388
417
  localVarHeaderParameter = {};
389
418
  localVarQueryParameter = {};
419
+ if (xRequestID !== undefined && xRequestID !== null) {
420
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
421
+ }
390
422
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
391
423
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
392
424
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -401,10 +433,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
401
433
  *
402
434
  * @summary Get person
403
435
  * @param {number} personId Person ID.
436
+ * @param {string} [xRequestID]
404
437
  * @param {*} [options] Override http request option.
405
438
  * @throws {RequiredError}
406
439
  */
407
- getPerson: function (personId, options) {
440
+ getPerson: function (personId, xRequestID, options) {
408
441
  if (options === void 0) { options = {}; }
409
442
  return __awaiter(_this, void 0, void 0, function () {
410
443
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -420,6 +453,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
420
453
  localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
421
454
  localVarHeaderParameter = {};
422
455
  localVarQueryParameter = {};
456
+ if (xRequestID !== undefined && xRequestID !== null) {
457
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
458
+ }
423
459
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
424
460
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
425
461
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -435,10 +471,11 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
435
471
  * @summary Update person
436
472
  * @param {number} personId Person ID.
437
473
  * @param {PersonFields} personFields Request body for the Person to update.
474
+ * @param {string} [xRequestID]
438
475
  * @param {*} [options] Override http request option.
439
476
  * @throws {RequiredError}
440
477
  */
441
- updatePerson: function (personId, personFields, options) {
478
+ updatePerson: function (personId, personFields, xRequestID, options) {
442
479
  if (options === void 0) { options = {}; }
443
480
  return __awaiter(_this, void 0, void 0, function () {
444
481
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -456,6 +493,9 @@ exports.PersonApiAxiosParamCreator = function (configuration) {
456
493
  localVarRequestOptions = __assign(__assign({ method: 'PUT' }, baseOptions), options);
457
494
  localVarHeaderParameter = {};
458
495
  localVarQueryParameter = {};
496
+ if (xRequestID !== undefined && xRequestID !== null) {
497
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
498
+ }
459
499
  localVarHeaderParameter['Content-Type'] = 'application/json';
460
500
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
461
501
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
@@ -482,15 +522,16 @@ exports.PersonApiFp = function (configuration) {
482
522
  * @summary Add person image
483
523
  * @param {number} personId Person ID.
484
524
  * @param {ImageFields} imageFields Image to add.
525
+ * @param {string} [xRequestID]
485
526
  * @param {*} [options] Override http request option.
486
527
  * @throws {RequiredError}
487
528
  */
488
- addImageToPerson: function (personId, imageFields, options) {
529
+ addImageToPerson: function (personId, imageFields, xRequestID, options) {
489
530
  return __awaiter(this, void 0, void 0, function () {
490
531
  var localVarAxiosArgs;
491
532
  return __generator(this, function (_a) {
492
533
  switch (_a.label) {
493
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.addImageToPerson(personId, imageFields, options)];
534
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.addImageToPerson(personId, imageFields, xRequestID, options)];
494
535
  case 1:
495
536
  localVarAxiosArgs = _a.sent();
496
537
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -502,15 +543,16 @@ exports.PersonApiFp = function (configuration) {
502
543
  *
503
544
  * @summary Create person
504
545
  * @param {PersonFields} personFields
546
+ * @param {string} [xRequestID]
505
547
  * @param {*} [options] Override http request option.
506
548
  * @throws {RequiredError}
507
549
  */
508
- createPerson: function (personFields, options) {
550
+ createPerson: function (personFields, xRequestID, options) {
509
551
  return __awaiter(this, void 0, void 0, function () {
510
552
  var localVarAxiosArgs;
511
553
  return __generator(this, function (_a) {
512
554
  switch (_a.label) {
513
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.createPerson(personFields, options)];
555
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.createPerson(personFields, xRequestID, options)];
514
556
  case 1:
515
557
  localVarAxiosArgs = _a.sent();
516
558
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -523,15 +565,16 @@ exports.PersonApiFp = function (configuration) {
523
565
  * @summary Delete image of person
524
566
  * @param {number} imageId Image ID.
525
567
  * @param {number} personId Person ID.
568
+ * @param {string} [xRequestID]
526
569
  * @param {*} [options] Override http request option.
527
570
  * @throws {RequiredError}
528
571
  */
529
- deleteImageOfPerson: function (imageId, personId, options) {
572
+ deleteImageOfPerson: function (imageId, personId, xRequestID, options) {
530
573
  return __awaiter(this, void 0, void 0, function () {
531
574
  var localVarAxiosArgs;
532
575
  return __generator(this, function (_a) {
533
576
  switch (_a.label) {
534
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.deleteImageOfPerson(imageId, personId, options)];
577
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.deleteImageOfPerson(imageId, personId, xRequestID, options)];
535
578
  case 1:
536
579
  localVarAxiosArgs = _a.sent();
537
580
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -543,15 +586,16 @@ exports.PersonApiFp = function (configuration) {
543
586
  *
544
587
  * @summary Delete person
545
588
  * @param {number} personId Person ID.
589
+ * @param {string} [xRequestID]
546
590
  * @param {*} [options] Override http request option.
547
591
  * @throws {RequiredError}
548
592
  */
549
- deletePerson: function (personId, options) {
593
+ deletePerson: function (personId, xRequestID, options) {
550
594
  return __awaiter(this, void 0, void 0, function () {
551
595
  var localVarAxiosArgs;
552
596
  return __generator(this, function (_a) {
553
597
  switch (_a.label) {
554
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.deletePerson(personId, options)];
598
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.deletePerson(personId, xRequestID, options)];
555
599
  case 1:
556
600
  localVarAxiosArgs = _a.sent();
557
601
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -565,15 +609,16 @@ exports.PersonApiFp = function (configuration) {
565
609
  * @param {number} page The page number to get a list of persons or groups.
566
610
  * @param {number} size The page size with a list of persons or groups, items.
567
611
  * @param {number} personId Person ID.
612
+ * @param {string} [xRequestID]
568
613
  * @param {*} [options] Override http request option.
569
614
  * @throws {RequiredError}
570
615
  */
571
- getAllGroupsByPersonId: function (page, size, personId, options) {
616
+ getAllGroupsByPersonId: function (page, size, personId, xRequestID, options) {
572
617
  return __awaiter(this, void 0, void 0, function () {
573
618
  var localVarAxiosArgs;
574
619
  return __generator(this, function (_a) {
575
620
  switch (_a.label) {
576
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllGroupsByPersonId(page, size, personId, options)];
621
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllGroupsByPersonId(page, size, personId, xRequestID, options)];
577
622
  case 1:
578
623
  localVarAxiosArgs = _a.sent();
579
624
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -587,15 +632,16 @@ exports.PersonApiFp = function (configuration) {
587
632
  * @param {number} page The page number to get a list of persons or groups.
588
633
  * @param {number} size The page size with a list of persons or groups, items.
589
634
  * @param {number} personId Person ID.
635
+ * @param {string} [xRequestID]
590
636
  * @param {*} [options] Override http request option.
591
637
  * @throws {RequiredError}
592
638
  */
593
- getAllImagesByPersonId: function (page, size, personId, options) {
639
+ getAllImagesByPersonId: function (page, size, personId, xRequestID, options) {
594
640
  return __awaiter(this, void 0, void 0, function () {
595
641
  var localVarAxiosArgs;
596
642
  return __generator(this, function (_a) {
597
643
  switch (_a.label) {
598
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllImagesByPersonId(page, size, personId, options)];
644
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllImagesByPersonId(page, size, personId, xRequestID, options)];
599
645
  case 1:
600
646
  localVarAxiosArgs = _a.sent();
601
647
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -608,15 +654,16 @@ exports.PersonApiFp = function (configuration) {
608
654
  * @summary Get persons
609
655
  * @param {number} page The page number to get a list of persons or groups.
610
656
  * @param {number} size The page size with a list of persons or groups, items.
657
+ * @param {string} [xRequestID]
611
658
  * @param {*} [options] Override http request option.
612
659
  * @throws {RequiredError}
613
660
  */
614
- getAllPersons: function (page, size, options) {
661
+ getAllPersons: function (page, size, xRequestID, options) {
615
662
  return __awaiter(this, void 0, void 0, function () {
616
663
  var localVarAxiosArgs;
617
664
  return __generator(this, function (_a) {
618
665
  switch (_a.label) {
619
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllPersons(page, size, options)];
666
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllPersons(page, size, xRequestID, options)];
620
667
  case 1:
621
668
  localVarAxiosArgs = _a.sent();
622
669
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -629,15 +676,16 @@ exports.PersonApiFp = function (configuration) {
629
676
  * @summary Get person image by id
630
677
  * @param {number} imageId Image ID.
631
678
  * @param {number} personId Person ID.
679
+ * @param {string} [xRequestID]
632
680
  * @param {*} [options] Override http request option.
633
681
  * @throws {RequiredError}
634
682
  */
635
- getImageOfPerson: function (imageId, personId, options) {
683
+ getImageOfPerson: function (imageId, personId, xRequestID, options) {
636
684
  return __awaiter(this, void 0, void 0, function () {
637
685
  var localVarAxiosArgs;
638
686
  return __generator(this, function (_a) {
639
687
  switch (_a.label) {
640
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.getImageOfPerson(imageId, personId, options)];
688
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.getImageOfPerson(imageId, personId, xRequestID, options)];
641
689
  case 1:
642
690
  localVarAxiosArgs = _a.sent();
643
691
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -649,15 +697,16 @@ exports.PersonApiFp = function (configuration) {
649
697
  *
650
698
  * @summary Get person
651
699
  * @param {number} personId Person ID.
700
+ * @param {string} [xRequestID]
652
701
  * @param {*} [options] Override http request option.
653
702
  * @throws {RequiredError}
654
703
  */
655
- getPerson: function (personId, options) {
704
+ getPerson: function (personId, xRequestID, options) {
656
705
  return __awaiter(this, void 0, void 0, function () {
657
706
  var localVarAxiosArgs;
658
707
  return __generator(this, function (_a) {
659
708
  switch (_a.label) {
660
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.getPerson(personId, options)];
709
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.getPerson(personId, xRequestID, options)];
661
710
  case 1:
662
711
  localVarAxiosArgs = _a.sent();
663
712
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -670,15 +719,16 @@ exports.PersonApiFp = function (configuration) {
670
719
  * @summary Update person
671
720
  * @param {number} personId Person ID.
672
721
  * @param {PersonFields} personFields Request body for the Person to update.
722
+ * @param {string} [xRequestID]
673
723
  * @param {*} [options] Override http request option.
674
724
  * @throws {RequiredError}
675
725
  */
676
- updatePerson: function (personId, personFields, options) {
726
+ updatePerson: function (personId, personFields, xRequestID, options) {
677
727
  return __awaiter(this, void 0, void 0, function () {
678
728
  var localVarAxiosArgs;
679
729
  return __generator(this, function (_a) {
680
730
  switch (_a.label) {
681
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.updatePerson(personId, personFields, options)];
731
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.updatePerson(personId, personFields, xRequestID, options)];
682
732
  case 1:
683
733
  localVarAxiosArgs = _a.sent();
684
734
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -700,42 +750,46 @@ exports.PersonApiFactory = function (configuration, basePath, axios) {
700
750
  * @summary Add person image
701
751
  * @param {number} personId Person ID.
702
752
  * @param {ImageFields} imageFields Image to add.
753
+ * @param {string} [xRequestID]
703
754
  * @param {*} [options] Override http request option.
704
755
  * @throws {RequiredError}
705
756
  */
706
- addImageToPerson: function (personId, imageFields, options) {
707
- return localVarFp.addImageToPerson(personId, imageFields, options).then(function (request) { return request(axios, basePath); });
757
+ addImageToPerson: function (personId, imageFields, xRequestID, options) {
758
+ return localVarFp.addImageToPerson(personId, imageFields, xRequestID, options).then(function (request) { return request(axios, basePath); });
708
759
  },
709
760
  /**
710
761
  *
711
762
  * @summary Create person
712
763
  * @param {PersonFields} personFields
764
+ * @param {string} [xRequestID]
713
765
  * @param {*} [options] Override http request option.
714
766
  * @throws {RequiredError}
715
767
  */
716
- createPerson: function (personFields, options) {
717
- return localVarFp.createPerson(personFields, options).then(function (request) { return request(axios, basePath); });
768
+ createPerson: function (personFields, xRequestID, options) {
769
+ return localVarFp.createPerson(personFields, xRequestID, options).then(function (request) { return request(axios, basePath); });
718
770
  },
719
771
  /**
720
772
  *
721
773
  * @summary Delete image of person
722
774
  * @param {number} imageId Image ID.
723
775
  * @param {number} personId Person ID.
776
+ * @param {string} [xRequestID]
724
777
  * @param {*} [options] Override http request option.
725
778
  * @throws {RequiredError}
726
779
  */
727
- deleteImageOfPerson: function (imageId, personId, options) {
728
- return localVarFp.deleteImageOfPerson(imageId, personId, options).then(function (request) { return request(axios, basePath); });
780
+ deleteImageOfPerson: function (imageId, personId, xRequestID, options) {
781
+ return localVarFp.deleteImageOfPerson(imageId, personId, xRequestID, options).then(function (request) { return request(axios, basePath); });
729
782
  },
730
783
  /**
731
784
  *
732
785
  * @summary Delete person
733
786
  * @param {number} personId Person ID.
787
+ * @param {string} [xRequestID]
734
788
  * @param {*} [options] Override http request option.
735
789
  * @throws {RequiredError}
736
790
  */
737
- deletePerson: function (personId, options) {
738
- return localVarFp.deletePerson(personId, options).then(function (request) { return request(axios, basePath); });
791
+ deletePerson: function (personId, xRequestID, options) {
792
+ return localVarFp.deletePerson(personId, xRequestID, options).then(function (request) { return request(axios, basePath); });
739
793
  },
740
794
  /**
741
795
  *
@@ -743,11 +797,12 @@ exports.PersonApiFactory = function (configuration, basePath, axios) {
743
797
  * @param {number} page The page number to get a list of persons or groups.
744
798
  * @param {number} size The page size with a list of persons or groups, items.
745
799
  * @param {number} personId Person ID.
800
+ * @param {string} [xRequestID]
746
801
  * @param {*} [options] Override http request option.
747
802
  * @throws {RequiredError}
748
803
  */
749
- getAllGroupsByPersonId: function (page, size, personId, options) {
750
- return localVarFp.getAllGroupsByPersonId(page, size, personId, options).then(function (request) { return request(axios, basePath); });
804
+ getAllGroupsByPersonId: function (page, size, personId, xRequestID, options) {
805
+ return localVarFp.getAllGroupsByPersonId(page, size, personId, xRequestID, options).then(function (request) { return request(axios, basePath); });
751
806
  },
752
807
  /**
753
808
  *
@@ -755,54 +810,59 @@ exports.PersonApiFactory = function (configuration, basePath, axios) {
755
810
  * @param {number} page The page number to get a list of persons or groups.
756
811
  * @param {number} size The page size with a list of persons or groups, items.
757
812
  * @param {number} personId Person ID.
813
+ * @param {string} [xRequestID]
758
814
  * @param {*} [options] Override http request option.
759
815
  * @throws {RequiredError}
760
816
  */
761
- getAllImagesByPersonId: function (page, size, personId, options) {
762
- return localVarFp.getAllImagesByPersonId(page, size, personId, options).then(function (request) { return request(axios, basePath); });
817
+ getAllImagesByPersonId: function (page, size, personId, xRequestID, options) {
818
+ return localVarFp.getAllImagesByPersonId(page, size, personId, xRequestID, options).then(function (request) { return request(axios, basePath); });
763
819
  },
764
820
  /**
765
821
  *
766
822
  * @summary Get persons
767
823
  * @param {number} page The page number to get a list of persons or groups.
768
824
  * @param {number} size The page size with a list of persons or groups, items.
825
+ * @param {string} [xRequestID]
769
826
  * @param {*} [options] Override http request option.
770
827
  * @throws {RequiredError}
771
828
  */
772
- getAllPersons: function (page, size, options) {
773
- return localVarFp.getAllPersons(page, size, options).then(function (request) { return request(axios, basePath); });
829
+ getAllPersons: function (page, size, xRequestID, options) {
830
+ return localVarFp.getAllPersons(page, size, xRequestID, options).then(function (request) { return request(axios, basePath); });
774
831
  },
775
832
  /**
776
833
  *
777
834
  * @summary Get person image by id
778
835
  * @param {number} imageId Image ID.
779
836
  * @param {number} personId Person ID.
837
+ * @param {string} [xRequestID]
780
838
  * @param {*} [options] Override http request option.
781
839
  * @throws {RequiredError}
782
840
  */
783
- getImageOfPerson: function (imageId, personId, options) {
784
- return localVarFp.getImageOfPerson(imageId, personId, options).then(function (request) { return request(axios, basePath); });
841
+ getImageOfPerson: function (imageId, personId, xRequestID, options) {
842
+ return localVarFp.getImageOfPerson(imageId, personId, xRequestID, options).then(function (request) { return request(axios, basePath); });
785
843
  },
786
844
  /**
787
845
  *
788
846
  * @summary Get person
789
847
  * @param {number} personId Person ID.
848
+ * @param {string} [xRequestID]
790
849
  * @param {*} [options] Override http request option.
791
850
  * @throws {RequiredError}
792
851
  */
793
- getPerson: function (personId, options) {
794
- return localVarFp.getPerson(personId, options).then(function (request) { return request(axios, basePath); });
852
+ getPerson: function (personId, xRequestID, options) {
853
+ return localVarFp.getPerson(personId, xRequestID, options).then(function (request) { return request(axios, basePath); });
795
854
  },
796
855
  /**
797
856
  *
798
857
  * @summary Update person
799
858
  * @param {number} personId Person ID.
800
859
  * @param {PersonFields} personFields Request body for the Person to update.
860
+ * @param {string} [xRequestID]
801
861
  * @param {*} [options] Override http request option.
802
862
  * @throws {RequiredError}
803
863
  */
804
- updatePerson: function (personId, personFields, options) {
805
- return localVarFp.updatePerson(personId, personFields, options).then(function (request) { return request(axios, basePath); });
864
+ updatePerson: function (personId, personFields, xRequestID, options) {
865
+ return localVarFp.updatePerson(personId, personFields, xRequestID, options).then(function (request) { return request(axios, basePath); });
806
866
  },
807
867
  };
808
868
  };
@@ -822,50 +882,54 @@ var PersonApi = /** @class */ (function (_super) {
822
882
  * @summary Add person image
823
883
  * @param {number} personId Person ID.
824
884
  * @param {ImageFields} imageFields Image to add.
885
+ * @param {string} [xRequestID]
825
886
  * @param {*} [options] Override http request option.
826
887
  * @throws {RequiredError}
827
888
  * @memberof PersonApi
828
889
  */
829
- PersonApi.prototype.addImageToPerson = function (personId, imageFields, options) {
890
+ PersonApi.prototype.addImageToPerson = function (personId, imageFields, xRequestID, options) {
830
891
  var _this = this;
831
- return exports.PersonApiFp(this.configuration).addImageToPerson(personId, imageFields, options).then(function (request) { return request(_this.axios, _this.basePath); });
892
+ return exports.PersonApiFp(this.configuration).addImageToPerson(personId, imageFields, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
832
893
  };
833
894
  /**
834
895
  *
835
896
  * @summary Create person
836
897
  * @param {PersonFields} personFields
898
+ * @param {string} [xRequestID]
837
899
  * @param {*} [options] Override http request option.
838
900
  * @throws {RequiredError}
839
901
  * @memberof PersonApi
840
902
  */
841
- PersonApi.prototype.createPerson = function (personFields, options) {
903
+ PersonApi.prototype.createPerson = function (personFields, xRequestID, options) {
842
904
  var _this = this;
843
- return exports.PersonApiFp(this.configuration).createPerson(personFields, options).then(function (request) { return request(_this.axios, _this.basePath); });
905
+ return exports.PersonApiFp(this.configuration).createPerson(personFields, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
844
906
  };
845
907
  /**
846
908
  *
847
909
  * @summary Delete image of person
848
910
  * @param {number} imageId Image ID.
849
911
  * @param {number} personId Person ID.
912
+ * @param {string} [xRequestID]
850
913
  * @param {*} [options] Override http request option.
851
914
  * @throws {RequiredError}
852
915
  * @memberof PersonApi
853
916
  */
854
- PersonApi.prototype.deleteImageOfPerson = function (imageId, personId, options) {
917
+ PersonApi.prototype.deleteImageOfPerson = function (imageId, personId, xRequestID, options) {
855
918
  var _this = this;
856
- return exports.PersonApiFp(this.configuration).deleteImageOfPerson(imageId, personId, options).then(function (request) { return request(_this.axios, _this.basePath); });
919
+ return exports.PersonApiFp(this.configuration).deleteImageOfPerson(imageId, personId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
857
920
  };
858
921
  /**
859
922
  *
860
923
  * @summary Delete person
861
924
  * @param {number} personId Person ID.
925
+ * @param {string} [xRequestID]
862
926
  * @param {*} [options] Override http request option.
863
927
  * @throws {RequiredError}
864
928
  * @memberof PersonApi
865
929
  */
866
- PersonApi.prototype.deletePerson = function (personId, options) {
930
+ PersonApi.prototype.deletePerson = function (personId, xRequestID, options) {
867
931
  var _this = this;
868
- return exports.PersonApiFp(this.configuration).deletePerson(personId, options).then(function (request) { return request(_this.axios, _this.basePath); });
932
+ return exports.PersonApiFp(this.configuration).deletePerson(personId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
869
933
  };
870
934
  /**
871
935
  *
@@ -873,13 +937,14 @@ var PersonApi = /** @class */ (function (_super) {
873
937
  * @param {number} page The page number to get a list of persons or groups.
874
938
  * @param {number} size The page size with a list of persons or groups, items.
875
939
  * @param {number} personId Person ID.
940
+ * @param {string} [xRequestID]
876
941
  * @param {*} [options] Override http request option.
877
942
  * @throws {RequiredError}
878
943
  * @memberof PersonApi
879
944
  */
880
- PersonApi.prototype.getAllGroupsByPersonId = function (page, size, personId, options) {
945
+ PersonApi.prototype.getAllGroupsByPersonId = function (page, size, personId, xRequestID, options) {
881
946
  var _this = this;
882
- return exports.PersonApiFp(this.configuration).getAllGroupsByPersonId(page, size, personId, options).then(function (request) { return request(_this.axios, _this.basePath); });
947
+ return exports.PersonApiFp(this.configuration).getAllGroupsByPersonId(page, size, personId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
883
948
  };
884
949
  /**
885
950
  *
@@ -887,66 +952,71 @@ var PersonApi = /** @class */ (function (_super) {
887
952
  * @param {number} page The page number to get a list of persons or groups.
888
953
  * @param {number} size The page size with a list of persons or groups, items.
889
954
  * @param {number} personId Person ID.
955
+ * @param {string} [xRequestID]
890
956
  * @param {*} [options] Override http request option.
891
957
  * @throws {RequiredError}
892
958
  * @memberof PersonApi
893
959
  */
894
- PersonApi.prototype.getAllImagesByPersonId = function (page, size, personId, options) {
960
+ PersonApi.prototype.getAllImagesByPersonId = function (page, size, personId, xRequestID, options) {
895
961
  var _this = this;
896
- return exports.PersonApiFp(this.configuration).getAllImagesByPersonId(page, size, personId, options).then(function (request) { return request(_this.axios, _this.basePath); });
962
+ return exports.PersonApiFp(this.configuration).getAllImagesByPersonId(page, size, personId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
897
963
  };
898
964
  /**
899
965
  *
900
966
  * @summary Get persons
901
967
  * @param {number} page The page number to get a list of persons or groups.
902
968
  * @param {number} size The page size with a list of persons or groups, items.
969
+ * @param {string} [xRequestID]
903
970
  * @param {*} [options] Override http request option.
904
971
  * @throws {RequiredError}
905
972
  * @memberof PersonApi
906
973
  */
907
- PersonApi.prototype.getAllPersons = function (page, size, options) {
974
+ PersonApi.prototype.getAllPersons = function (page, size, xRequestID, options) {
908
975
  var _this = this;
909
- return exports.PersonApiFp(this.configuration).getAllPersons(page, size, options).then(function (request) { return request(_this.axios, _this.basePath); });
976
+ return exports.PersonApiFp(this.configuration).getAllPersons(page, size, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
910
977
  };
911
978
  /**
912
979
  *
913
980
  * @summary Get person image by id
914
981
  * @param {number} imageId Image ID.
915
982
  * @param {number} personId Person ID.
983
+ * @param {string} [xRequestID]
916
984
  * @param {*} [options] Override http request option.
917
985
  * @throws {RequiredError}
918
986
  * @memberof PersonApi
919
987
  */
920
- PersonApi.prototype.getImageOfPerson = function (imageId, personId, options) {
988
+ PersonApi.prototype.getImageOfPerson = function (imageId, personId, xRequestID, options) {
921
989
  var _this = this;
922
- return exports.PersonApiFp(this.configuration).getImageOfPerson(imageId, personId, options).then(function (request) { return request(_this.axios, _this.basePath); });
990
+ return exports.PersonApiFp(this.configuration).getImageOfPerson(imageId, personId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
923
991
  };
924
992
  /**
925
993
  *
926
994
  * @summary Get person
927
995
  * @param {number} personId Person ID.
996
+ * @param {string} [xRequestID]
928
997
  * @param {*} [options] Override http request option.
929
998
  * @throws {RequiredError}
930
999
  * @memberof PersonApi
931
1000
  */
932
- PersonApi.prototype.getPerson = function (personId, options) {
1001
+ PersonApi.prototype.getPerson = function (personId, xRequestID, options) {
933
1002
  var _this = this;
934
- return exports.PersonApiFp(this.configuration).getPerson(personId, options).then(function (request) { return request(_this.axios, _this.basePath); });
1003
+ return exports.PersonApiFp(this.configuration).getPerson(personId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
935
1004
  };
936
1005
  /**
937
1006
  *
938
1007
  * @summary Update person
939
1008
  * @param {number} personId Person ID.
940
1009
  * @param {PersonFields} personFields Request body for the Person to update.
1010
+ * @param {string} [xRequestID]
941
1011
  * @param {*} [options] Override http request option.
942
1012
  * @throws {RequiredError}
943
1013
  * @memberof PersonApi
944
1014
  */
945
- PersonApi.prototype.updatePerson = function (personId, personFields, options) {
1015
+ PersonApi.prototype.updatePerson = function (personId, personFields, xRequestID, options) {
946
1016
  var _this = this;
947
- return exports.PersonApiFp(this.configuration).updatePerson(personId, personFields, options).then(function (request) { return request(_this.axios, _this.basePath); });
1017
+ return exports.PersonApiFp(this.configuration).updatePerson(personId, personFields, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
948
1018
  };
949
1019
  return PersonApi;
950
1020
  }(base_1.BaseAPI));
951
1021
  exports.PersonApi = PersonApi;
952
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGkvcGVyc29uLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLG9CQUFvQjtBQUNwQjs7Ozs7Ozs7OztHQVVHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHSCwrQkFBcUY7QUFFckYseURBQXlEO0FBQ3pELGFBQWE7QUFDYixvQ0FBNk47QUFDN04sYUFBYTtBQUNiLGdDQUE2RjtBQWlCN0Y7OztHQUdHO0FBQ1UsUUFBQSwwQkFBMEIsR0FBRyxVQUFVLGFBQTZCO0lBQXZDLGlCQW1aekM7SUFsWkcsT0FBTztRQUNIOzs7Ozs7O1dBT0c7UUFDSCxnQkFBZ0IsRUFBRSxVQUFPLFFBQWdCLEVBQUUsV0FBd0IsRUFBRSxPQUFnQztZQUFoQyx3QkFBQSxFQUFBLFlBQWdDOzs7O29CQUNqRyxnRUFBZ0U7b0JBQ2hFLDBCQUFpQixDQUFDLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQTtvQkFDM0QsbUVBQW1FO29CQUNuRSwwQkFBaUIsQ0FBQyxrQkFBa0IsRUFBRSxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUE7b0JBQzNELFlBQVksR0FBRyxpQ0FBaUM7eUJBQ2pELE9BQU8sQ0FBQyxNQUFJLFdBQVcsTUFBRyxFQUFFLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBRWpFLGNBQWMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxZQUFZLEVBQUUsdUJBQWMsQ0FBQyxDQUFDO29CQUU3RCxJQUFJLGFBQWEsRUFBRTt3QkFDZixXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztxQkFDM0M7b0JBRUssc0JBQXNCLHVCQUFLLE1BQU0sRUFBRSxNQUFNLElBQUssV0FBVyxHQUFLLE9BQU8sQ0FBQyxDQUFDO29C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
1022
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGkvcGVyc29uLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLG9CQUFvQjtBQUNwQjs7Ozs7Ozs7OztHQVVHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHSCwrQkFBcUY7QUFFckYseURBQXlEO0FBQ3pELGFBQWE7QUFDYixvQ0FBNk47QUFDN04sYUFBYTtBQUNiLGdDQUE2RjtBQWlCN0Y7OztHQUdHO0FBQ1UsUUFBQSwwQkFBMEIsR0FBRyxVQUFVLGFBQTZCO0lBQXZDLGlCQXFjekM7SUFwY0csT0FBTztRQUNIOzs7Ozs7OztXQVFHO1FBQ0gsZ0JBQWdCLEVBQUUsVUFBTyxRQUFnQixFQUFFLFdBQXdCLEVBQUUsVUFBbUIsRUFBRSxPQUFnQztZQUFoQyx3QkFBQSxFQUFBLFlBQWdDOzs7O29CQUN0SCxnRUFBZ0U7b0JBQ2hFLDBCQUFpQixDQUFDLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQTtvQkFDM0QsbUVBQW1FO29CQUNuRSwwQkFBaUIsQ0FBQyxrQkFBa0IsRUFBRSxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUE7b0JBQzNELFlBQVksR0FBRyxpQ0FBaUM7eUJBQ2pELE9BQU8sQ0FBQyxNQUFJLFdBQVcsTUFBRyxFQUFFLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBRWpFLGNBQWMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxZQUFZLEVBQUUsdUJBQWMsQ0FBQyxDQUFDO29CQUU3RCxJQUFJLGFBQWEsRUFBRTt3QkFDZixXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztxQkFDM0M7b0JBRUssc0JBQXNCLHVCQUFLLE1BQU0sRUFBRSxNQUFNLElBQUssV0FBVyxHQUFLLE9BQU8s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