@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.
- package/dist/cjs-es5/api/group-api.js +99 -50
- package/dist/cjs-es5/api/matching-api.js +116 -19
- package/dist/cjs-es5/api/person-api.js +141 -71
- package/dist/cjs-es5/api/search-api.js +15 -8
- package/dist/cjs-es5/ext/group-api.js +15 -15
- package/dist/cjs-es5/ext/matching-api.js +5 -5
- package/dist/cjs-es5/ext/person-api.js +21 -21
- package/dist/cjs-es5/ext/search-api.js +3 -3
- package/dist/cjs-es5/models/index.js +10 -2
- package/dist/cjs-es5/models/match-and-search-request-all-of-images.js +16 -0
- package/dist/cjs-es5/models/match-and-search-request-all-of.js +16 -0
- package/dist/cjs-es5/models/match-and-search-request.js +16 -0
- package/dist/cjs-es5/models/match-and-search-response-all-of-detections.js +16 -0
- package/dist/cjs-es5/models/match-and-search-response-all-of.js +16 -0
- package/dist/cjs-es5/models/match-and-search-response.js +16 -0
- package/dist/cjs-es5/models/person-with-images-all-of.js +16 -0
- package/dist/cjs-es5/models/person-with-images.js +16 -0
- package/dist/cjs-es5/models/search-parameters.js +16 -0
- package/dist/esm-es5/api/group-api.js +99 -50
- package/dist/esm-es5/api/matching-api.js +116 -19
- package/dist/esm-es5/api/person-api.js +141 -71
- package/dist/esm-es5/api/search-api.js +15 -8
- package/dist/esm-es5/ext/group-api.js +15 -15
- package/dist/esm-es5/ext/matching-api.js +5 -5
- package/dist/esm-es5/ext/person-api.js +21 -21
- package/dist/esm-es5/ext/search-api.js +3 -3
- package/dist/esm-es5/models/index.js +10 -2
- package/dist/esm-es5/models/match-and-search-request-all-of-images.js +14 -0
- package/dist/esm-es5/models/match-and-search-request-all-of.js +14 -0
- package/dist/esm-es5/models/match-and-search-request.js +14 -0
- package/dist/esm-es5/models/match-and-search-response-all-of-detections.js +14 -0
- package/dist/esm-es5/models/match-and-search-response-all-of.js +14 -0
- package/dist/esm-es5/models/match-and-search-response.js +14 -0
- package/dist/esm-es5/models/person-with-images-all-of.js +14 -0
- package/dist/esm-es5/models/person-with-images.js +14 -0
- package/dist/esm-es5/models/search-parameters.js +14 -0
- package/package.json +1 -1
- package/src/api/group-api.ts +105 -49
- package/src/api/matching-api.ts +115 -18
- package/src/api/person-api.ts +150 -70
- package/src/api/search-api.ts +15 -7
- package/src/ext/group-api.ts +14 -14
- package/src/ext/matching-api.ts +4 -4
- package/src/ext/person-api.ts +20 -20
- package/src/ext/search-api.ts +2 -2
- package/src/models/crop.ts +1 -1
- package/src/models/image.ts +12 -0
- package/src/models/index.ts +9 -1
- package/src/models/match-and-search-request-all-of-images.ts +38 -0
- package/src/models/match-and-search-request-all-of.ts +31 -0
- package/src/models/match-and-search-request.ts +26 -0
- package/src/models/match-and-search-response-all-of-detections.ts +45 -0
- package/src/models/match-and-search-response-all-of.ts +50 -0
- package/src/models/match-and-search-response.ts +28 -0
- package/src/models/person-with-images-all-of.ts +31 -0
- package/src/models/person-with-images.ts +26 -0
- package/src/models/recognize-image-all-of.ts +6 -0
- package/src/models/search-parameters.ts +42 -0
- package/src/models/search-request.ts +2 -2
|
@@ -88,10 +88,11 @@ export var MatchingApiAxiosParamCreator = function (configuration) {
|
|
|
88
88
|
*
|
|
89
89
|
* @summary Detect facial coordinates
|
|
90
90
|
* @param {DetectRequest} detectRequest
|
|
91
|
+
* @param {string} [xRequestID]
|
|
91
92
|
* @param {*} [options] Override http request option.
|
|
92
93
|
* @throws {RequiredError}
|
|
93
94
|
*/
|
|
94
|
-
detect: function (detectRequest, options) {
|
|
95
|
+
detect: function (detectRequest, xRequestID, options) {
|
|
95
96
|
if (options === void 0) { options = {}; }
|
|
96
97
|
return __awaiter(_this, void 0, void 0, function () {
|
|
97
98
|
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
|
|
@@ -106,6 +107,9 @@ export var MatchingApiAxiosParamCreator = function (configuration) {
|
|
|
106
107
|
localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options);
|
|
107
108
|
localVarHeaderParameter = {};
|
|
108
109
|
localVarQueryParameter = {};
|
|
110
|
+
if (xRequestID !== undefined && xRequestID !== null) {
|
|
111
|
+
localVarHeaderParameter['X-RequestID'] = String(xRequestID);
|
|
112
|
+
}
|
|
109
113
|
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
110
114
|
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
111
115
|
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
@@ -120,12 +124,13 @@ export var MatchingApiAxiosParamCreator = function (configuration) {
|
|
|
120
124
|
},
|
|
121
125
|
/**
|
|
122
126
|
*
|
|
123
|
-
* @summary Compare provided face images in all combinations and return similarity score for each pair.
|
|
127
|
+
* @summary Compare provided face images in all combinations and return the similarity score for each pair.
|
|
124
128
|
* @param {MatchRequest} matchRequest
|
|
129
|
+
* @param {string} [xRequestID]
|
|
125
130
|
* @param {*} [options] Override http request option.
|
|
126
131
|
* @throws {RequiredError}
|
|
127
132
|
*/
|
|
128
|
-
match: function (matchRequest, options) {
|
|
133
|
+
match: function (matchRequest, xRequestID, options) {
|
|
129
134
|
if (options === void 0) { options = {}; }
|
|
130
135
|
return __awaiter(_this, void 0, void 0, function () {
|
|
131
136
|
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
|
|
@@ -140,6 +145,9 @@ export var MatchingApiAxiosParamCreator = function (configuration) {
|
|
|
140
145
|
localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options);
|
|
141
146
|
localVarHeaderParameter = {};
|
|
142
147
|
localVarQueryParameter = {};
|
|
148
|
+
if (xRequestID !== undefined && xRequestID !== null) {
|
|
149
|
+
localVarHeaderParameter['X-RequestID'] = String(xRequestID);
|
|
150
|
+
}
|
|
143
151
|
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
144
152
|
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
145
153
|
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
@@ -152,6 +160,44 @@ export var MatchingApiAxiosParamCreator = function (configuration) {
|
|
|
152
160
|
});
|
|
153
161
|
});
|
|
154
162
|
},
|
|
163
|
+
/**
|
|
164
|
+
*
|
|
165
|
+
* @summary Match and Search in one request
|
|
166
|
+
* @param {MatchAndSearchRequest} matchAndSearchRequest
|
|
167
|
+
* @param {string} [xRequestID]
|
|
168
|
+
* @param {*} [options] Override http request option.
|
|
169
|
+
* @throws {RequiredError}
|
|
170
|
+
*/
|
|
171
|
+
matchAndSearch: function (matchAndSearchRequest, xRequestID, options) {
|
|
172
|
+
if (options === void 0) { options = {}; }
|
|
173
|
+
return __awaiter(_this, void 0, void 0, function () {
|
|
174
|
+
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
|
|
175
|
+
return __generator(this, function (_a) {
|
|
176
|
+
// verify required parameter 'matchAndSearchRequest' is not null or undefined
|
|
177
|
+
assertParamExists('matchAndSearch', 'matchAndSearchRequest', matchAndSearchRequest);
|
|
178
|
+
localVarPath = "/api/match_and_search";
|
|
179
|
+
localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
180
|
+
if (configuration) {
|
|
181
|
+
baseOptions = configuration.baseOptions;
|
|
182
|
+
}
|
|
183
|
+
localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options);
|
|
184
|
+
localVarHeaderParameter = {};
|
|
185
|
+
localVarQueryParameter = {};
|
|
186
|
+
if (xRequestID !== undefined && xRequestID !== null) {
|
|
187
|
+
localVarHeaderParameter['X-RequestID'] = String(xRequestID);
|
|
188
|
+
}
|
|
189
|
+
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
190
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
191
|
+
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
192
|
+
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
|
|
193
|
+
localVarRequestOptions.data = serializeDataIfNeeded(matchAndSearchRequest, localVarRequestOptions, configuration);
|
|
194
|
+
return [2 /*return*/, {
|
|
195
|
+
url: toPathString(localVarUrlObj),
|
|
196
|
+
options: localVarRequestOptions,
|
|
197
|
+
}];
|
|
198
|
+
});
|
|
199
|
+
});
|
|
200
|
+
},
|
|
155
201
|
};
|
|
156
202
|
};
|
|
157
203
|
/**
|
|
@@ -165,15 +211,16 @@ export var MatchingApiFp = function (configuration) {
|
|
|
165
211
|
*
|
|
166
212
|
* @summary Detect facial coordinates
|
|
167
213
|
* @param {DetectRequest} detectRequest
|
|
214
|
+
* @param {string} [xRequestID]
|
|
168
215
|
* @param {*} [options] Override http request option.
|
|
169
216
|
* @throws {RequiredError}
|
|
170
217
|
*/
|
|
171
|
-
detect: function (detectRequest, options) {
|
|
218
|
+
detect: function (detectRequest, xRequestID, options) {
|
|
172
219
|
return __awaiter(this, void 0, void 0, function () {
|
|
173
220
|
var localVarAxiosArgs;
|
|
174
221
|
return __generator(this, function (_a) {
|
|
175
222
|
switch (_a.label) {
|
|
176
|
-
case 0: return [4 /*yield*/, localVarAxiosParamCreator.detect(detectRequest, options)];
|
|
223
|
+
case 0: return [4 /*yield*/, localVarAxiosParamCreator.detect(detectRequest, xRequestID, options)];
|
|
177
224
|
case 1:
|
|
178
225
|
localVarAxiosArgs = _a.sent();
|
|
179
226
|
return [2 /*return*/, createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)];
|
|
@@ -183,17 +230,39 @@ export var MatchingApiFp = function (configuration) {
|
|
|
183
230
|
},
|
|
184
231
|
/**
|
|
185
232
|
*
|
|
186
|
-
* @summary Compare provided face images in all combinations and return similarity score for each pair.
|
|
233
|
+
* @summary Compare provided face images in all combinations and return the similarity score for each pair.
|
|
187
234
|
* @param {MatchRequest} matchRequest
|
|
235
|
+
* @param {string} [xRequestID]
|
|
188
236
|
* @param {*} [options] Override http request option.
|
|
189
237
|
* @throws {RequiredError}
|
|
190
238
|
*/
|
|
191
|
-
match: function (matchRequest, options) {
|
|
239
|
+
match: function (matchRequest, xRequestID, options) {
|
|
192
240
|
return __awaiter(this, void 0, void 0, function () {
|
|
193
241
|
var localVarAxiosArgs;
|
|
194
242
|
return __generator(this, function (_a) {
|
|
195
243
|
switch (_a.label) {
|
|
196
|
-
case 0: return [4 /*yield*/, localVarAxiosParamCreator.match(matchRequest, options)];
|
|
244
|
+
case 0: return [4 /*yield*/, localVarAxiosParamCreator.match(matchRequest, xRequestID, options)];
|
|
245
|
+
case 1:
|
|
246
|
+
localVarAxiosArgs = _a.sent();
|
|
247
|
+
return [2 /*return*/, createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)];
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
});
|
|
251
|
+
},
|
|
252
|
+
/**
|
|
253
|
+
*
|
|
254
|
+
* @summary Match and Search in one request
|
|
255
|
+
* @param {MatchAndSearchRequest} matchAndSearchRequest
|
|
256
|
+
* @param {string} [xRequestID]
|
|
257
|
+
* @param {*} [options] Override http request option.
|
|
258
|
+
* @throws {RequiredError}
|
|
259
|
+
*/
|
|
260
|
+
matchAndSearch: function (matchAndSearchRequest, xRequestID, options) {
|
|
261
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
262
|
+
var localVarAxiosArgs;
|
|
263
|
+
return __generator(this, function (_a) {
|
|
264
|
+
switch (_a.label) {
|
|
265
|
+
case 0: return [4 /*yield*/, localVarAxiosParamCreator.matchAndSearch(matchAndSearchRequest, xRequestID, options)];
|
|
197
266
|
case 1:
|
|
198
267
|
localVarAxiosArgs = _a.sent();
|
|
199
268
|
return [2 /*return*/, createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)];
|
|
@@ -214,21 +283,34 @@ export var MatchingApiFactory = function (configuration, basePath, axios) {
|
|
|
214
283
|
*
|
|
215
284
|
* @summary Detect facial coordinates
|
|
216
285
|
* @param {DetectRequest} detectRequest
|
|
286
|
+
* @param {string} [xRequestID]
|
|
217
287
|
* @param {*} [options] Override http request option.
|
|
218
288
|
* @throws {RequiredError}
|
|
219
289
|
*/
|
|
220
|
-
detect: function (detectRequest, options) {
|
|
221
|
-
return localVarFp.detect(detectRequest, options).then(function (request) { return request(axios, basePath); });
|
|
290
|
+
detect: function (detectRequest, xRequestID, options) {
|
|
291
|
+
return localVarFp.detect(detectRequest, xRequestID, options).then(function (request) { return request(axios, basePath); });
|
|
222
292
|
},
|
|
223
293
|
/**
|
|
224
294
|
*
|
|
225
|
-
* @summary Compare provided face images in all combinations and return similarity score for each pair.
|
|
295
|
+
* @summary Compare provided face images in all combinations and return the similarity score for each pair.
|
|
226
296
|
* @param {MatchRequest} matchRequest
|
|
297
|
+
* @param {string} [xRequestID]
|
|
298
|
+
* @param {*} [options] Override http request option.
|
|
299
|
+
* @throws {RequiredError}
|
|
300
|
+
*/
|
|
301
|
+
match: function (matchRequest, xRequestID, options) {
|
|
302
|
+
return localVarFp.match(matchRequest, xRequestID, options).then(function (request) { return request(axios, basePath); });
|
|
303
|
+
},
|
|
304
|
+
/**
|
|
305
|
+
*
|
|
306
|
+
* @summary Match and Search in one request
|
|
307
|
+
* @param {MatchAndSearchRequest} matchAndSearchRequest
|
|
308
|
+
* @param {string} [xRequestID]
|
|
227
309
|
* @param {*} [options] Override http request option.
|
|
228
310
|
* @throws {RequiredError}
|
|
229
311
|
*/
|
|
230
|
-
|
|
231
|
-
return localVarFp.
|
|
312
|
+
matchAndSearch: function (matchAndSearchRequest, xRequestID, options) {
|
|
313
|
+
return localVarFp.matchAndSearch(matchAndSearchRequest, xRequestID, options).then(function (request) { return request(axios, basePath); });
|
|
232
314
|
},
|
|
233
315
|
};
|
|
234
316
|
};
|
|
@@ -247,27 +329,42 @@ var MatchingApi = /** @class */ (function (_super) {
|
|
|
247
329
|
*
|
|
248
330
|
* @summary Detect facial coordinates
|
|
249
331
|
* @param {DetectRequest} detectRequest
|
|
332
|
+
* @param {string} [xRequestID]
|
|
250
333
|
* @param {*} [options] Override http request option.
|
|
251
334
|
* @throws {RequiredError}
|
|
252
335
|
* @memberof MatchingApi
|
|
253
336
|
*/
|
|
254
|
-
MatchingApi.prototype.detect = function (detectRequest, options) {
|
|
337
|
+
MatchingApi.prototype.detect = function (detectRequest, xRequestID, options) {
|
|
255
338
|
var _this = this;
|
|
256
|
-
return MatchingApiFp(this.configuration).detect(detectRequest, options).then(function (request) { return request(_this.axios, _this.basePath); });
|
|
339
|
+
return MatchingApiFp(this.configuration).detect(detectRequest, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
|
|
257
340
|
};
|
|
258
341
|
/**
|
|
259
342
|
*
|
|
260
|
-
* @summary Compare provided face images in all combinations and return similarity score for each pair.
|
|
343
|
+
* @summary Compare provided face images in all combinations and return the similarity score for each pair.
|
|
261
344
|
* @param {MatchRequest} matchRequest
|
|
345
|
+
* @param {string} [xRequestID]
|
|
346
|
+
* @param {*} [options] Override http request option.
|
|
347
|
+
* @throws {RequiredError}
|
|
348
|
+
* @memberof MatchingApi
|
|
349
|
+
*/
|
|
350
|
+
MatchingApi.prototype.match = function (matchRequest, xRequestID, options) {
|
|
351
|
+
var _this = this;
|
|
352
|
+
return MatchingApiFp(this.configuration).match(matchRequest, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
|
|
353
|
+
};
|
|
354
|
+
/**
|
|
355
|
+
*
|
|
356
|
+
* @summary Match and Search in one request
|
|
357
|
+
* @param {MatchAndSearchRequest} matchAndSearchRequest
|
|
358
|
+
* @param {string} [xRequestID]
|
|
262
359
|
* @param {*} [options] Override http request option.
|
|
263
360
|
* @throws {RequiredError}
|
|
264
361
|
* @memberof MatchingApi
|
|
265
362
|
*/
|
|
266
|
-
MatchingApi.prototype.
|
|
363
|
+
MatchingApi.prototype.matchAndSearch = function (matchAndSearchRequest, xRequestID, options) {
|
|
267
364
|
var _this = this;
|
|
268
|
-
return MatchingApiFp(this.configuration).
|
|
365
|
+
return MatchingApiFp(this.configuration).matchAndSearch(matchAndSearchRequest, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
|
|
269
366
|
};
|
|
270
367
|
return MatchingApi;
|
|
271
368
|
}(BaseAPI));
|
|
272
369
|
export { MatchingApi };
|
|
273
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
370
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2hpbmctYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9tYXRjaGluZy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCLG9CQUFvQjtBQUNwQjs7Ozs7Ozs7OztHQVVHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0gsT0FBTyxXQUFnRSxNQUFNLE9BQU8sQ0FBQztBQUVyRix5REFBeUQ7QUFDekQsYUFBYTtBQUNiLE9BQU8sRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQW9GLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxZQUFZLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDN04sYUFBYTtBQUNiLE9BQU8sRUFBRSxTQUFTLEVBQW1DLE9BQU8sRUFBaUIsTUFBTSxTQUFTLENBQUM7QUFhN0Y7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLElBQU0sNEJBQTRCLEdBQUcsVUFBVSxhQUE2QjtJQUF2QyxpQkE4SDNDO0lBN0hHLE9BQU87UUFDSDs7Ozs7OztXQU9HO1FBQ0gsTUFBTSxFQUFFLFVBQU8sYUFBNEIsRUFBRSxVQUFtQixFQUFFLE9BQWdDO1lBQWhDLHdCQUFBLEVBQUEsWUFBZ0M7Ozs7b0JBQzlGLHFFQUFxRTtvQkFDckUsaUJBQWlCLENBQUMsUUFBUSxFQUFFLGVBQWUsRUFBRSxhQUFhLENBQUMsQ0FBQTtvQkFDckQsWUFBWSxHQUFHLGFBQWEsQ0FBQztvQkFFN0IsY0FBYyxHQUFHLElBQUksR0FBRyxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQztvQkFFN0QsSUFBSSxhQUFhLEVBQUU7d0JBQ2YsV0FBVyxHQUFHLGFBQWEsQ0FBQyxXQUFXLENBQUM7cUJBQzNDO29CQUVLLHNCQUFzQix1QkFBSyxNQUFNLEVBQUUsTUFBTSxJQUFLLFdBQVcsR0FBSyxPQUFPLENBQUMsQ0FBQztvQkFD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
|