@regulaforensics/facesdk-webclient 3.1.0 → 4.1.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.
Files changed (217) hide show
  1. package/.github/workflows/run-smoke-test.yml +8 -2
  2. package/dist/cjs-es5/api/group-api.js +695 -0
  3. package/dist/cjs-es5/api/matching-api.js +101 -127
  4. package/dist/cjs-es5/api/person-api.js +952 -0
  5. package/dist/cjs-es5/api/search-api.js +200 -0
  6. package/dist/cjs-es5/api.js +5 -2
  7. package/dist/cjs-es5/base.js +2 -2
  8. package/dist/cjs-es5/common.js +235 -0
  9. package/dist/cjs-es5/configuration.js +17 -2
  10. package/dist/cjs-es5/ext/face-sdk.js +7 -1
  11. package/dist/cjs-es5/ext/group-api.js +47 -0
  12. package/dist/cjs-es5/ext/index.js +1 -2
  13. package/dist/cjs-es5/ext/matching-api.js +7 -11
  14. package/dist/cjs-es5/ext/person-api.js +61 -0
  15. package/dist/cjs-es5/ext/search-api.js +33 -0
  16. package/dist/cjs-es5/index.js +1 -2
  17. package/dist/cjs-es5/models/crop.js +16 -0
  18. package/dist/cjs-es5/models/detect-request.js +1 -1
  19. package/dist/cjs-es5/models/detect-response-all-of.js +1 -1
  20. package/dist/cjs-es5/models/detect-response.js +1 -1
  21. package/dist/cjs-es5/models/detect-result.js +1 -1
  22. package/dist/cjs-es5/models/detection-face.js +1 -1
  23. package/dist/cjs-es5/models/detection-quality.js +16 -0
  24. package/dist/cjs-es5/models/detection.js +1 -1
  25. package/dist/cjs-es5/models/face-align-type-quality.js +29 -0
  26. package/dist/cjs-es5/models/face-image-quality-groups.js +31 -0
  27. package/dist/cjs-es5/models/face-quality-config-name.js +66 -0
  28. package/dist/cjs-es5/models/face-quality-scenarios.js +31 -0
  29. package/dist/cjs-es5/models/face-quality-status.js +27 -0
  30. package/dist/cjs-es5/models/face-recognition-result-code.js +1 -6
  31. package/dist/cjs-es5/models/face-sdkresult-code.js +35 -36
  32. package/dist/cjs-es5/models/face-sdkresult.js +1 -1
  33. package/dist/cjs-es5/models/group-all-of.js +16 -0
  34. package/dist/cjs-es5/models/group-page-all-of.js +16 -0
  35. package/dist/cjs-es5/models/group-page.js +16 -0
  36. package/dist/cjs-es5/models/group-to-create.js +16 -0
  37. package/dist/cjs-es5/models/group.js +16 -0
  38. package/dist/cjs-es5/models/image-fields-image.js +16 -0
  39. package/dist/cjs-es5/models/image-fields.js +16 -0
  40. package/dist/cjs-es5/models/image-page-all-of.js +16 -0
  41. package/dist/cjs-es5/models/image-page.js +16 -0
  42. package/dist/cjs-es5/models/image-source.js +10 -11
  43. package/dist/cjs-es5/models/image.js +16 -0
  44. package/dist/cjs-es5/models/index.js +55 -16
  45. package/dist/cjs-es5/models/match-image-detection.js +1 -1
  46. package/dist/cjs-es5/models/match-image-result.js +1 -1
  47. package/dist/cjs-es5/models/match-image.js +1 -1
  48. package/dist/cjs-es5/models/match-request.js +1 -1
  49. package/dist/cjs-es5/models/match-response-all-of.js +1 -1
  50. package/dist/cjs-es5/models/match-response.js +1 -1
  51. package/dist/cjs-es5/models/operation-log.js +16 -0
  52. package/dist/cjs-es5/models/output-image-params.js +16 -0
  53. package/dist/cjs-es5/models/page.js +16 -0
  54. package/dist/cjs-es5/models/person-all-of.js +16 -0
  55. package/dist/cjs-es5/models/person-fields.js +16 -0
  56. package/dist/cjs-es5/models/person.js +16 -0
  57. package/dist/cjs-es5/models/persons-page-all-of.js +16 -0
  58. package/dist/cjs-es5/models/persons-page.js +16 -0
  59. package/dist/cjs-es5/models/process-param.js +16 -0
  60. package/dist/cjs-es5/models/quality-config.js +16 -0
  61. package/dist/cjs-es5/models/quality-detail.js +16 -0
  62. package/dist/cjs-es5/models/quality-details-groups.js +16 -0
  63. package/dist/cjs-es5/models/quality-request.js +16 -0
  64. package/dist/cjs-es5/models/recognize-image-all-of.js +16 -0
  65. package/dist/cjs-es5/models/recognize-image.js +16 -0
  66. package/dist/cjs-es5/models/search-person-all-of.js +16 -0
  67. package/dist/cjs-es5/models/search-person.js +16 -0
  68. package/dist/cjs-es5/models/search-request-all-of.js +16 -0
  69. package/dist/cjs-es5/models/search-request.js +16 -0
  70. package/dist/cjs-es5/models/search-result-all-of.js +16 -0
  71. package/dist/cjs-es5/models/search-result.js +16 -0
  72. package/dist/cjs-es5/models/update-group.js +16 -0
  73. package/dist/esm-es5/api/group-api.js +692 -0
  74. package/dist/esm-es5/api/matching-api.js +100 -126
  75. package/dist/esm-es5/api/person-api.js +949 -0
  76. package/dist/esm-es5/api/search-api.js +197 -0
  77. package/dist/esm-es5/api.js +5 -2
  78. package/dist/esm-es5/base.js +2 -2
  79. package/dist/esm-es5/common.js +232 -0
  80. package/dist/esm-es5/configuration.js +17 -2
  81. package/dist/esm-es5/ext/face-sdk.js +7 -1
  82. package/dist/esm-es5/ext/group-api.js +44 -0
  83. package/dist/esm-es5/ext/index.js +1 -2
  84. package/dist/esm-es5/ext/matching-api.js +5 -9
  85. package/dist/esm-es5/ext/person-api.js +58 -0
  86. package/dist/esm-es5/ext/search-api.js +30 -0
  87. package/dist/esm-es5/index.js +1 -2
  88. package/dist/esm-es5/models/crop.js +14 -0
  89. package/dist/esm-es5/models/detect-request.js +1 -1
  90. package/dist/esm-es5/models/detect-response-all-of.js +1 -1
  91. package/dist/esm-es5/models/detect-response.js +1 -1
  92. package/dist/esm-es5/models/detect-result.js +1 -1
  93. package/dist/esm-es5/models/detection-face.js +1 -1
  94. package/dist/esm-es5/models/detection-quality.js +14 -0
  95. package/dist/esm-es5/models/detection.js +1 -1
  96. package/dist/esm-es5/models/face-align-type-quality.js +26 -0
  97. package/dist/esm-es5/models/face-image-quality-groups.js +28 -0
  98. package/dist/esm-es5/models/face-quality-config-name.js +63 -0
  99. package/dist/esm-es5/models/face-quality-scenarios.js +28 -0
  100. package/dist/esm-es5/models/face-quality-status.js +24 -0
  101. package/dist/esm-es5/models/face-recognition-result-code.js +1 -3
  102. package/dist/esm-es5/models/face-sdkresult-code.js +35 -36
  103. package/dist/esm-es5/models/face-sdkresult.js +1 -1
  104. package/dist/esm-es5/models/group-all-of.js +14 -0
  105. package/dist/esm-es5/models/group-page-all-of.js +14 -0
  106. package/dist/esm-es5/models/group-page.js +14 -0
  107. package/dist/esm-es5/models/group-to-create.js +14 -0
  108. package/dist/esm-es5/models/group.js +14 -0
  109. package/dist/esm-es5/models/image-fields-image.js +14 -0
  110. package/dist/esm-es5/models/image-fields.js +14 -0
  111. package/dist/esm-es5/models/image-page-all-of.js +14 -0
  112. package/dist/esm-es5/models/image-page.js +14 -0
  113. package/dist/esm-es5/models/image-source.js +10 -11
  114. package/dist/esm-es5/models/image.js +14 -0
  115. package/dist/esm-es5/models/index.js +55 -16
  116. package/dist/esm-es5/models/match-image-detection.js +1 -1
  117. package/dist/esm-es5/models/match-image-result.js +1 -1
  118. package/dist/esm-es5/models/match-image.js +1 -1
  119. package/dist/esm-es5/models/match-request.js +1 -1
  120. package/dist/esm-es5/models/match-response-all-of.js +1 -1
  121. package/dist/esm-es5/models/match-response.js +1 -1
  122. package/dist/esm-es5/models/operation-log.js +14 -0
  123. package/dist/esm-es5/models/output-image-params.js +14 -0
  124. package/dist/esm-es5/models/page.js +14 -0
  125. package/dist/esm-es5/models/person-all-of.js +14 -0
  126. package/dist/esm-es5/models/person-fields.js +14 -0
  127. package/dist/esm-es5/models/person.js +14 -0
  128. package/dist/esm-es5/models/persons-page-all-of.js +14 -0
  129. package/dist/esm-es5/models/persons-page.js +14 -0
  130. package/dist/esm-es5/models/process-param.js +14 -0
  131. package/dist/esm-es5/models/quality-config.js +14 -0
  132. package/dist/esm-es5/models/quality-detail.js +14 -0
  133. package/dist/esm-es5/models/quality-details-groups.js +14 -0
  134. package/dist/esm-es5/models/quality-request.js +14 -0
  135. package/dist/esm-es5/models/recognize-image-all-of.js +14 -0
  136. package/dist/esm-es5/models/recognize-image.js +14 -0
  137. package/dist/esm-es5/models/search-person-all-of.js +14 -0
  138. package/dist/esm-es5/models/search-person.js +14 -0
  139. package/dist/esm-es5/models/search-request-all-of.js +14 -0
  140. package/dist/esm-es5/models/search-request.js +14 -0
  141. package/dist/esm-es5/models/search-result-all-of.js +14 -0
  142. package/dist/esm-es5/models/search-result.js +14 -0
  143. package/dist/esm-es5/models/update-group.js +14 -0
  144. package/package.json +1 -1
  145. package/setup.sh +7 -0
  146. package/src/api/group-api.ts +592 -0
  147. package/src/api/matching-api.ts +151 -171
  148. package/src/api/person-api.ts +831 -0
  149. package/src/api/search-api.ts +133 -0
  150. package/src/api.ts +4 -1
  151. package/src/base.ts +3 -3
  152. package/src/common.ts +138 -0
  153. package/src/configuration.ts +26 -1
  154. package/src/ext/face-sdk.ts +10 -0
  155. package/src/ext/group-api.ts +34 -0
  156. package/src/ext/index.ts +0 -1
  157. package/src/ext/matching-api.ts +7 -11
  158. package/src/ext/person-api.ts +51 -0
  159. package/src/ext/search-api.ts +14 -0
  160. package/src/index.ts +0 -1
  161. package/src/models/crop.ts +49 -0
  162. package/src/models/detect-request.ts +21 -9
  163. package/src/models/detect-response-all-of.ts +2 -3
  164. package/src/models/detect-response.ts +1 -2
  165. package/src/models/detect-result.ts +17 -5
  166. package/src/models/detection-face.ts +7 -8
  167. package/src/models/detection-quality.ts +57 -0
  168. package/src/models/detection.ts +21 -8
  169. package/src/models/face-align-type-quality.ts +34 -0
  170. package/src/models/face-image-quality-groups.ts +36 -0
  171. package/src/models/face-quality-config-name.ts +71 -0
  172. package/src/models/face-quality-scenarios.ts +36 -0
  173. package/src/models/face-quality-status.ts +32 -0
  174. package/src/models/face-recognition-result-code.ts +0 -4
  175. package/src/models/face-sdkresult-code.ts +37 -34
  176. package/src/models/face-sdkresult.ts +2 -3
  177. package/src/models/group-all-of.ts +36 -0
  178. package/src/models/group-page-all-of.ts +31 -0
  179. package/src/models/group-page.ts +26 -0
  180. package/src/models/group-to-create.ts +36 -0
  181. package/src/models/group.ts +25 -0
  182. package/src/models/image-fields-image.ts +37 -0
  183. package/src/models/image-fields.ts +31 -0
  184. package/src/models/image-page-all-of.ts +31 -0
  185. package/src/models/image-page.ts +26 -0
  186. package/src/models/image-source.ts +12 -9
  187. package/src/models/image.ts +54 -0
  188. package/src/models/index.ts +54 -15
  189. package/src/models/match-image-detection.ts +5 -6
  190. package/src/models/match-image-result.ts +11 -12
  191. package/src/models/match-image.ts +5 -6
  192. package/src/models/match-request.ts +9 -4
  193. package/src/models/match-response-all-of.ts +3 -4
  194. package/src/models/match-response.ts +1 -2
  195. package/src/models/operation-log.ts +42 -0
  196. package/src/models/output-image-params.ts +37 -0
  197. package/src/models/page.ts +36 -0
  198. package/src/models/person-all-of.ts +42 -0
  199. package/src/models/person-fields.ts +36 -0
  200. package/src/models/person.ts +26 -0
  201. package/src/models/persons-page-all-of.ts +31 -0
  202. package/src/models/persons-page.ts +26 -0
  203. package/src/models/process-param.ts +51 -0
  204. package/src/models/quality-config.ts +37 -0
  205. package/src/models/quality-detail.ts +57 -0
  206. package/src/models/quality-details-groups.ts +50 -0
  207. package/src/models/quality-request.ts +37 -0
  208. package/src/models/recognize-image-all-of.ts +30 -0
  209. package/src/models/recognize-image.ts +25 -0
  210. package/src/models/search-person-all-of.ts +31 -0
  211. package/src/models/search-person.ts +26 -0
  212. package/src/models/search-request-all-of.ts +42 -0
  213. package/src/models/search-request.ts +26 -0
  214. package/src/models/search-result-all-of.ts +30 -0
  215. package/src/models/search-result.ts +26 -0
  216. package/src/models/update-group.ts +36 -0
  217. package/update-models.sh +1 -1
@@ -0,0 +1,133 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Regula FaceSDK Web API
5
+ * Regula FaceSDK Web API
6
+ *
7
+ * The version of the OpenAPI document: 3.2.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';
17
+ import { Configuration } from '../configuration';
18
+ // Some imports not used depending on template conditions
19
+ // @ts-ignore
20
+ import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../common';
21
+ // @ts-ignore
22
+ import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';
23
+ // @ts-ignore
24
+ import { OperationLog } from '../models';
25
+ // @ts-ignore
26
+ import { SearchRequest } from '../models';
27
+ // @ts-ignore
28
+ import { SearchResult } from '../models';
29
+ /**
30
+ * SearchApi - axios parameter creator
31
+ * @export
32
+ */
33
+ export const SearchApiAxiosParamCreator = function (configuration?: Configuration) {
34
+ return {
35
+ /**
36
+ *
37
+ * @summary Find person by image in groups.
38
+ * @param {SearchRequest} searchRequest
39
+ * @param {*} [options] Override http request option.
40
+ * @throws {RequiredError}
41
+ */
42
+ search: async (searchRequest: SearchRequest, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
43
+ // verify required parameter 'searchRequest' is not null or undefined
44
+ assertParamExists('search', 'searchRequest', searchRequest)
45
+ const localVarPath = `/api/search`;
46
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
48
+ let baseOptions;
49
+ if (configuration) {
50
+ baseOptions = configuration.baseOptions;
51
+ }
52
+
53
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
54
+ const localVarHeaderParameter = {} as any;
55
+ const localVarQueryParameter = {} as any;
56
+
57
+
58
+
59
+ localVarHeaderParameter['Content-Type'] = 'application/json';
60
+
61
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
62
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
64
+ localVarRequestOptions.data = serializeDataIfNeeded(searchRequest, localVarRequestOptions, configuration)
65
+
66
+ return {
67
+ url: toPathString(localVarUrlObj),
68
+ options: localVarRequestOptions,
69
+ };
70
+ },
71
+ }
72
+ };
73
+
74
+ /**
75
+ * SearchApi - functional programming interface
76
+ * @export
77
+ */
78
+ export const SearchApiFp = function(configuration?: Configuration) {
79
+ const localVarAxiosParamCreator = SearchApiAxiosParamCreator(configuration)
80
+ return {
81
+ /**
82
+ *
83
+ * @summary Find person by image in groups.
84
+ * @param {SearchRequest} searchRequest
85
+ * @param {*} [options] Override http request option.
86
+ * @throws {RequiredError}
87
+ */
88
+ async search(searchRequest: SearchRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SearchResult>> {
89
+ const localVarAxiosArgs = await localVarAxiosParamCreator.search(searchRequest, options);
90
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
91
+ },
92
+ }
93
+ };
94
+
95
+ /**
96
+ * SearchApi - factory interface
97
+ * @export
98
+ */
99
+ export const SearchApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
100
+ const localVarFp = SearchApiFp(configuration)
101
+ return {
102
+ /**
103
+ *
104
+ * @summary Find person by image in groups.
105
+ * @param {SearchRequest} searchRequest
106
+ * @param {*} [options] Override http request option.
107
+ * @throws {RequiredError}
108
+ */
109
+ search(searchRequest: SearchRequest, options?: any): AxiosPromise<SearchResult> {
110
+ return localVarFp.search(searchRequest, options).then((request) => request(axios, basePath));
111
+ },
112
+ };
113
+ };
114
+
115
+ /**
116
+ * SearchApi - object-oriented interface
117
+ * @export
118
+ * @class SearchApi
119
+ * @extends {BaseAPI}
120
+ */
121
+ export class SearchApi extends BaseAPI {
122
+ /**
123
+ *
124
+ * @summary Find person by image in groups.
125
+ * @param {SearchRequest} searchRequest
126
+ * @param {*} [options] Override http request option.
127
+ * @throws {RequiredError}
128
+ * @memberof SearchApi
129
+ */
130
+ public search(searchRequest: SearchRequest, options?: AxiosRequestConfig) {
131
+ return SearchApiFp(this.configuration).search(searchRequest, options).then((request) => request(this.axios, this.basePath));
132
+ }
133
+ }
package/src/api.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Regula FaceSDK Web API
5
5
  * Regula FaceSDK Web API
6
6
  *
7
- * The version of the OpenAPI document: 0.1.0
7
+ * The version of the OpenAPI document: 3.2.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -14,5 +14,8 @@
14
14
 
15
15
 
16
16
 
17
+ export * from './api/group-api';
17
18
  export * from './api/matching-api';
19
+ export * from './api/person-api';
20
+ export * from './api/search-api';
18
21
 
package/src/base.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Regula FaceSDK Web API
5
5
  * Regula FaceSDK Web API
6
6
  *
7
- * The version of the OpenAPI document: 0.1.0
7
+ * The version of the OpenAPI document: 3.2.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -16,7 +16,7 @@
16
16
  import { Configuration } from "./configuration";
17
17
  // Some imports not used depending on template conditions
18
18
  // @ts-ignore
19
- import globalAxios, { AxiosPromise, AxiosInstance } from 'axios';
19
+ import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';
20
20
 
21
21
  export const BASE_PATH = "http://localhost:41101".replace(/\/+$/, "");
22
22
 
@@ -38,7 +38,7 @@ export const COLLECTION_FORMATS = {
38
38
  */
39
39
  export interface RequestArgs {
40
40
  url: string;
41
- options: any;
41
+ options: AxiosRequestConfig;
42
42
  }
43
43
 
44
44
  /**
package/src/common.ts ADDED
@@ -0,0 +1,138 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Regula FaceSDK Web API
5
+ * Regula FaceSDK Web API
6
+ *
7
+ * The version of the OpenAPI document: 3.2.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ import { Configuration } from "./configuration";
17
+ import { RequiredError, RequestArgs } from "./base";
18
+ import { AxiosInstance, AxiosResponse } from 'axios';
19
+
20
+ /**
21
+ *
22
+ * @export
23
+ */
24
+ export const DUMMY_BASE_URL = 'https://example.com'
25
+
26
+ /**
27
+ *
28
+ * @throws {RequiredError}
29
+ * @export
30
+ */
31
+ export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) {
32
+ if (paramValue === null || paramValue === undefined) {
33
+ throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`);
34
+ }
35
+ }
36
+
37
+ /**
38
+ *
39
+ * @export
40
+ */
41
+ export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) {
42
+ if (configuration && configuration.apiKey) {
43
+ const localVarApiKeyValue = typeof configuration.apiKey === 'function'
44
+ ? await configuration.apiKey(keyParamName)
45
+ : await configuration.apiKey;
46
+ object[keyParamName] = localVarApiKeyValue;
47
+ }
48
+ }
49
+
50
+ /**
51
+ *
52
+ * @export
53
+ */
54
+ export const setBasicAuthToObject = function (object: any, configuration?: Configuration) {
55
+ if (configuration && (configuration.username || configuration.password)) {
56
+ object["auth"] = { username: configuration.username, password: configuration.password };
57
+ }
58
+ }
59
+
60
+ /**
61
+ *
62
+ * @export
63
+ */
64
+ export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) {
65
+ if (configuration && configuration.accessToken) {
66
+ const accessToken = typeof configuration.accessToken === 'function'
67
+ ? await configuration.accessToken()
68
+ : await configuration.accessToken;
69
+ object["Authorization"] = "Bearer " + accessToken;
70
+ }
71
+ }
72
+
73
+ /**
74
+ *
75
+ * @export
76
+ */
77
+ export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) {
78
+ if (configuration && configuration.accessToken) {
79
+ const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
80
+ ? await configuration.accessToken(name, scopes)
81
+ : await configuration.accessToken;
82
+ object["Authorization"] = "Bearer " + localVarAccessTokenValue;
83
+ }
84
+ }
85
+
86
+ /**
87
+ *
88
+ * @export
89
+ */
90
+ export const setSearchParams = function (url: URL, ...objects: any[]) {
91
+ const searchParams = new URLSearchParams(url.search);
92
+ for (const object of objects) {
93
+ for (const key in object) {
94
+ if (Array.isArray(object[key])) {
95
+ searchParams.delete(key);
96
+ for (const item of object[key]) {
97
+ searchParams.append(key, item);
98
+ }
99
+ } else {
100
+ searchParams.set(key, object[key]);
101
+ }
102
+ }
103
+ }
104
+ url.search = searchParams.toString();
105
+ }
106
+
107
+ /**
108
+ *
109
+ * @export
110
+ */
111
+ export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) {
112
+ const nonString = typeof value !== 'string';
113
+ const needsSerialization = nonString && configuration && configuration.isJsonMime
114
+ ? configuration.isJsonMime(requestOptions.headers['Content-Type'])
115
+ : nonString;
116
+ return needsSerialization
117
+ ? JSON.stringify(value !== undefined ? value : {})
118
+ : (value || "");
119
+ }
120
+
121
+ /**
122
+ *
123
+ * @export
124
+ */
125
+ export const toPathString = function (url: URL) {
126
+ return url.pathname + url.search + url.hash
127
+ }
128
+
129
+ /**
130
+ *
131
+ * @export
132
+ */
133
+ export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) {
134
+ return <T = unknown, R = AxiosResponse<T>>(axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
135
+ const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url};
136
+ return axios.request<T, R>(axiosRequestArgs);
137
+ };
138
+ }
@@ -4,7 +4,7 @@
4
4
  * Regula FaceSDK Web API
5
5
  * Regula FaceSDK Web API
6
6
  *
7
- * The version of the OpenAPI document: 0.1.0
7
+ * The version of the OpenAPI document: 3.2.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -20,6 +20,7 @@ export interface ConfigurationParameters {
20
20
  accessToken?: string | Promise<string> | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise<string>);
21
21
  basePath?: string;
22
22
  baseOptions?: any;
23
+ formDataCtor?: new () => any;
23
24
  }
24
25
 
25
26
  export class Configuration {
@@ -64,6 +65,14 @@ export class Configuration {
64
65
  * @memberof Configuration
65
66
  */
66
67
  baseOptions?: any;
68
+ /**
69
+ * The FormData constructor that will be used to create multipart form data
70
+ * requests. You can inject this here so that execution environments that
71
+ * do not support the FormData class can still run the generated client.
72
+ *
73
+ * @type {new () => FormData}
74
+ */
75
+ formDataCtor?: new () => any;
67
76
 
68
77
  constructor(param: ConfigurationParameters = {}) {
69
78
  this.apiKey = param.apiKey;
@@ -72,5 +81,21 @@ export class Configuration {
72
81
  this.accessToken = param.accessToken;
73
82
  this.basePath = param.basePath;
74
83
  this.baseOptions = param.baseOptions;
84
+ this.formDataCtor = param.formDataCtor;
85
+ }
86
+
87
+ /**
88
+ * Check if the given MIME is a JSON MIME.
89
+ * JSON MIME examples:
90
+ * application/json
91
+ * application/json; charset=UTF8
92
+ * APPLICATION/JSON
93
+ * application/vnd.company+json
94
+ * @param mime - MIME (Multipurpose Internet Mail Extensions)
95
+ * @return True if the given MIME is JSON, false otherwise.
96
+ */
97
+ public isJsonMime(mime: string): boolean {
98
+ const jsonMime: RegExp = new RegExp('^(application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(;.*)?$', 'i');
99
+ return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');
75
100
  }
76
101
  }
@@ -2,11 +2,21 @@ import {BASE_PATH} from "../base.js";
2
2
  import {Configuration} from "../configuration.js";
3
3
  import globalAxios, {AxiosInstance} from "axios";
4
4
  import {MatchingApi} from "./matching-api.js";
5
+ import {GroupApi} from "./group-api";
6
+ import {PersonApi} from "./person-api";
7
+ import {SearchApi} from "./search-api";
5
8
 
6
9
  export class FaceSdk {
7
10
  matchingApi: MatchingApi;
11
+ groupApi: GroupApi;
12
+ personApi: PersonApi;
13
+ searchApi: SearchApi;
14
+
8
15
 
9
16
  constructor(configuration?: Configuration, protected basePath: string = BASE_PATH, protected axios: AxiosInstance = globalAxios) {
10
17
  this.matchingApi = new MatchingApi(configuration, basePath, axios)
18
+ this.groupApi = new GroupApi(configuration, basePath, axios)
19
+ this.personApi = new PersonApi(configuration, basePath, axios)
20
+ this.searchApi = new SearchApi(configuration, basePath, axios)
11
21
  }
12
22
  }
@@ -0,0 +1,34 @@
1
+ import {GroupApi as GenGroupApi} from "../api/group-api";
2
+ import {GroupToCreate, UpdateGroup} from "../models";
3
+ import {AxiosRequestConfig} from "axios";
4
+
5
+ export class GroupApi extends GenGroupApi {
6
+ createGroup(groupToCreate: GroupToCreate, options?: AxiosRequestConfig): any {
7
+ return super.createGroup(groupToCreate, options).then(r => r.data);
8
+ }
9
+
10
+ deleteGroup(groupId: number, options?: AxiosRequestConfig): any {
11
+ return super.deleteGroup(groupId, options).then(r => r.data);
12
+ }
13
+
14
+ getAllGroups(page: number, size: number, options?: AxiosRequestConfig): any {
15
+ return super.getAllGroups(page, size, options).then(r => r.data);
16
+ }
17
+
18
+ getAllPersonsByGroupId(page: number, size: number, groupId: number, options?: AxiosRequestConfig): any {
19
+ return super.getAllPersonsByGroupId(page, size, groupId, options).then(r => r.data);
20
+ }
21
+
22
+ getGroup(groupId: number, options?: AxiosRequestConfig): any {
23
+ return super.getGroup(groupId, options).then(r => r.data);
24
+ }
25
+
26
+ updateGroup(groupId: number, groupToCreate: GroupToCreate, options?: AxiosRequestConfig): any {
27
+ return super.updateGroup(groupId, groupToCreate, options).then(r => r.data);
28
+ }
29
+
30
+ updatePersonsInGroup(groupId: number, updateGroup: UpdateGroup, options?: AxiosRequestConfig): any {
31
+ return super.updatePersonsInGroup(groupId, updateGroup, options).then(r => r.data);
32
+ }
33
+
34
+ }
package/src/ext/index.ts CHANGED
@@ -1,2 +1 @@
1
- export * from './matching-api.js';
2
1
  export * from './face-sdk.js';
@@ -1,12 +1,12 @@
1
1
  import {MatchingApi as GenMatchingApi} from "../api/matching-api.js";
2
- import {MatchRequest, MatchResponse, DetectRequest, DetectResponse, ImageSource} from "../models/index.js";
2
+ import {MatchRequest, DetectRequest, ImageSource} from "../models/index.js";
3
3
 
4
4
  // @ts-ignore
5
- import converter from "base64-arraybuffer";
5
+ import * as converter from "base64-arraybuffer";
6
6
 
7
7
  export class MatchingApi extends GenMatchingApi {
8
8
 
9
- match(compareRequest: MatchRequest, options?: any): Promise<MatchResponse> {
9
+ match(compareRequest: MatchRequest, options?: any): any {
10
10
  for (const image of compareRequest.images) {
11
11
  if (!image.type) {
12
12
  image.type = ImageSource.LIVE
@@ -15,18 +15,14 @@ export class MatchingApi extends GenMatchingApi {
15
15
  image.data = converter.encode(image.data)
16
16
  }
17
17
  }
18
- return super.matchGen(compareRequest, options).then(r => r.data);
19
- }
20
18
 
21
- // deprecated, use match()
22
- compare(compareRequest: MatchRequest, options?: any): Promise<MatchResponse> {
23
- return this.match(compareRequest, options)
19
+ return super.match(compareRequest, options).then(r => r.data);
24
20
  }
25
21
 
26
- detect(detectRequest: DetectRequest, options?: any): Promise<DetectResponse> {
27
- if (typeof detectRequest.image !== "string") {
22
+ detect(detectRequest: DetectRequest, options?: any): any {
23
+ if (detectRequest.image && typeof detectRequest.image !== "string") {
28
24
  detectRequest.image = converter.encode(detectRequest.image)
29
25
  }
30
- return super.detectGen(detectRequest, options).then(r => r.data)
26
+ return super.detect(detectRequest, options).then(r => r.data)
31
27
  }
32
28
  }
@@ -0,0 +1,51 @@
1
+ import {PersonApi as GenPersonApi} from "../api/person-api";
2
+
3
+ // @ts-ignore
4
+ import * as converter from "base64-arraybuffer";
5
+ import {ImageFields, PersonFields} from "../models";
6
+ import {AxiosRequestConfig} from "axios";
7
+
8
+ export class PersonApi extends GenPersonApi {
9
+ createPerson(personFields: PersonFields, options?: AxiosRequestConfig): any {
10
+ return super.createPerson(personFields, options).then(r => r.data);
11
+ }
12
+
13
+ addImageToPerson(personId: number, imageFields: ImageFields, options?: AxiosRequestConfig): any {
14
+ if (imageFields.image.content && typeof imageFields.image.content !== "string") {
15
+ imageFields.image.content = converter.encode(imageFields.image.content)
16
+ }
17
+ return super.addImageToPerson(personId, imageFields, options).then(r => r.data);
18
+ }
19
+
20
+ deleteImageOfPerson(imageId: number, personId: number, options?: AxiosRequestConfig): any {
21
+ return super.deleteImageOfPerson(imageId, personId, options).then(r => r.data);
22
+ }
23
+
24
+ deletePerson(personId: number, options?: AxiosRequestConfig): any {
25
+ return super.deletePerson(personId, options).then(r => r.data);
26
+ }
27
+
28
+ getAllGroupsByPersonId(page: number, size: number, personId: number, options?: AxiosRequestConfig): any {
29
+ return super.getAllGroupsByPersonId(page, size, personId, options).then(r => r.data);
30
+ }
31
+
32
+ getAllImagesByPersonId(page: number, size: number, personId: number, options?: AxiosRequestConfig): any {
33
+ return super.getAllImagesByPersonId(page, size, personId, options).then(r => r.data);
34
+ }
35
+
36
+ getAllPersons(page: number, size: number, options?: AxiosRequestConfig): any {
37
+ return super.getAllPersons(page, size, options).then(r => r.data);
38
+ }
39
+
40
+ getImageOfPerson(imageId: number, personId: number, options?: AxiosRequestConfig): any {
41
+ return super.getImageOfPerson(imageId, personId, options).then(r => r.data);
42
+ }
43
+
44
+ getPerson(personId: number, options?: AxiosRequestConfig): any {
45
+ return super.getPerson(personId, options).then(r => r.data);
46
+ }
47
+
48
+ updatePerson(personId: number, personFields: PersonFields, options?: AxiosRequestConfig): any {
49
+ return super.updatePerson(personId, personFields, options).then(r => r.data);
50
+ }
51
+ }
@@ -0,0 +1,14 @@
1
+ import {SearchApi as GenSearchApi} from "../api/search-api";
2
+ import * as converter from "base64-arraybuffer";
3
+ import {SearchRequest} from "../models";
4
+ import {AxiosRequestConfig} from "axios";
5
+
6
+
7
+ export class SearchApi extends GenSearchApi {
8
+ search(searchRequest: SearchRequest, options?: AxiosRequestConfig): any {
9
+ if (searchRequest.image.content && typeof searchRequest.image.content !== "string") {
10
+ searchRequest.image.content = converter.encode(searchRequest.image.content)
11
+ }
12
+ return super.search(searchRequest, options).then(r => r.data);
13
+ }
14
+ }
package/src/index.ts CHANGED
@@ -16,4 +16,3 @@
16
16
  export * from './ext/index.js';
17
17
  export * from "./configuration.js";
18
18
  export * from "./models/index.js";
19
- export * from "./models/face-recognition-result-code.js"
@@ -0,0 +1,49 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Regula FaceSDK Web API
5
+ * Regula FaceSDK Web API
6
+ *
7
+ * The version of the OpenAPI document: 3.2.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ import { FaceAlignTypeQuality } from './face-align-type-quality';
17
+
18
+ /**
19
+ *
20
+ * @export
21
+ * @interface Crop
22
+ */
23
+ export interface Crop {
24
+ /**
25
+ *
26
+ * @type {FaceAlignTypeQuality}
27
+ * @memberof Crop
28
+ */
29
+ 'type'?: FaceAlignTypeQuality;
30
+ /**
31
+ *
32
+ * @type {Array<number>}
33
+ * @memberof Crop
34
+ */
35
+ 'padColor'?: Array<number>;
36
+ /**
37
+ * The resize value in case type matches this value. It it doesn\'t, no resize is done.
38
+ * @type {Array<number>}
39
+ * @memberof Crop
40
+ */
41
+ 'size'?: Array<number>;
42
+ /**
43
+ * Whether to return the coordinates of the rectangle with the face in the original image prepared for the face crop.
44
+ * @type {boolean}
45
+ * @memberof Crop
46
+ */
47
+ 'returnOriginalRect'?: boolean;
48
+ }
49
+
@@ -4,7 +4,7 @@
4
4
  * Regula FaceSDK Web API
5
5
  * Regula FaceSDK Web API
6
6
  *
7
- * The version of the OpenAPI document: 0.1.0
7
+ * The version of the OpenAPI document: 3.2.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -13,6 +13,7 @@
13
13
  */
14
14
 
15
15
 
16
+ import { ProcessParam } from './process-param';
16
17
  import { ImageData } from './image-data';
17
18
 
18
19
  /**
@@ -21,30 +22,41 @@ import { ImageData } from './image-data';
21
22
  * @interface DetectRequest
22
23
  */
23
24
  export interface DetectRequest {
25
+ /**
26
+ *
27
+ * @type {string}
28
+ * @memberof DetectRequest
29
+ */
30
+ 'tag'?: string;
31
+ /**
32
+ *
33
+ * @type {ProcessParam}
34
+ * @memberof DetectRequest
35
+ */
36
+ 'processParam'?: ProcessParam;
24
37
  /**
25
38
  *
26
39
  * @type {ImageData}
27
40
  * @memberof DetectRequest
28
41
  */
29
- image?: ImageData;
42
+ 'image'?: ImageData;
30
43
  /**
31
- * Enable formatted detections\' thumbnails in the response
44
+ * Whether to return the cropped portrains with the detected faces.
32
45
  * @type {boolean}
33
46
  * @memberof DetectRequest
34
47
  */
35
- thumbnails?: boolean;
48
+ 'thumbnails'?: boolean;
36
49
  /**
37
- * Enable face attributions detection, such as age or emotion and etc.
50
+ * Whether to evaluate attributes, such as age and emotions.
38
51
  * @type {boolean}
39
52
  * @memberof DetectRequest
40
53
  */
41
- attributes?: boolean;
54
+ 'attributes'?: boolean;
42
55
  /**
43
- * True - main face; false - all faces.
56
+ * Whether to detect the only central face (true) or all the faces (false).
44
57
  * @type {boolean}
45
58
  * @memberof DetectRequest
46
59
  */
47
- onlyCentralFace?: boolean;
60
+ 'onlyCentralFace'?: boolean;
48
61
  }
49
62
 
50
-
@@ -4,7 +4,7 @@
4
4
  * Regula FaceSDK Web API
5
5
  * Regula FaceSDK Web API
6
6
  *
7
- * The version of the OpenAPI document: 0.1.0
7
+ * The version of the OpenAPI document: 3.2.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -26,7 +26,6 @@ export interface DetectResponseAllOf {
26
26
  * @type {DetectResult}
27
27
  * @memberof DetectResponseAllOf
28
28
  */
29
- results?: DetectResult;
29
+ 'results'?: DetectResult;
30
30
  }
31
31
 
32
-