@sectester/core 0.41.1 → 0.43.2
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sectester/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.43.2",
|
|
4
4
|
"description": "The core package can be used to obtain a config including credentials from different sources, and provide a simplified abstraction to handle events and commands.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
package/src/api/ApiClient.d.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
export interface ApiRequestInit extends RequestInit {
|
|
2
|
+
handle409Redirects?: boolean;
|
|
3
|
+
}
|
|
1
4
|
export interface ApiClient {
|
|
2
|
-
request(path: string, options?:
|
|
5
|
+
request(path: string, options?: ApiRequestInit): Promise<Response>;
|
|
3
6
|
}
|
|
4
7
|
export declare const ApiClient: unique symbol;
|
package/src/api/ApiClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiClient.js","sourceRoot":"","sources":["../../../../../packages/core/src/api/ApiClient.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ApiClient.js","sourceRoot":"","sources":["../../../../../packages/core/src/api/ApiClient.ts"],"names":[],"mappings":";;;AAQa,QAAA,SAAS,GAAkB,MAAM,CAAC,WAAW,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ApiClient } from './ApiClient';
|
|
1
|
+
import { ApiClient, ApiRequestInit } from './ApiClient';
|
|
2
2
|
import { RetryConfig } from './RetryHandler';
|
|
3
3
|
export interface ApiConfig {
|
|
4
4
|
baseUrl: string;
|
|
@@ -14,7 +14,7 @@ export declare class FetchApiClient implements ApiClient {
|
|
|
14
14
|
private readonly retryHandler;
|
|
15
15
|
private readonly rateLimiter;
|
|
16
16
|
constructor(config: ApiConfig);
|
|
17
|
-
request(path: string, options?:
|
|
17
|
+
request(path: string, options?: ApiRequestInit): Promise<Response>;
|
|
18
18
|
private makeRequest;
|
|
19
19
|
private handleResponse;
|
|
20
20
|
private createHeaders;
|
|
@@ -20,14 +20,15 @@ class FetchApiClient {
|
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
22
|
request(path, options) {
|
|
23
|
-
var _a;
|
|
23
|
+
var _a, _b;
|
|
24
24
|
const url = new URL(path, this.config.baseUrl);
|
|
25
25
|
const requestOptions = {
|
|
26
26
|
redirect: 'follow',
|
|
27
27
|
keepalive: true,
|
|
28
28
|
...options,
|
|
29
29
|
headers: this.createHeaders(options === null || options === void 0 ? void 0 : options.headers),
|
|
30
|
-
method: ((_a = options === null || options === void 0 ? void 0 : options.method) !== null && _a !== void 0 ? _a : 'GET').toUpperCase()
|
|
30
|
+
method: ((_a = options === null || options === void 0 ? void 0 : options.method) !== null && _a !== void 0 ? _a : 'GET').toUpperCase(),
|
|
31
|
+
handle409Redirects: (_b = options === null || options === void 0 ? void 0 : options.handle409Redirects) !== null && _b !== void 0 ? _b : true
|
|
31
32
|
};
|
|
32
33
|
const idempotent = FetchApiClient.IDEMPOTENT_METHODS.has(requestOptions.method);
|
|
33
34
|
return this.retryHandler.executeWithRetry(() => this.makeRequest(url, requestOptions), {
|
|
@@ -37,18 +38,21 @@ class FetchApiClient {
|
|
|
37
38
|
}
|
|
38
39
|
async makeRequest(url, options) {
|
|
39
40
|
var _a, _b;
|
|
40
|
-
const
|
|
41
|
+
const { handle409Redirects = true, ...requestOptions } = options !== null && options !== void 0 ? options : {};
|
|
42
|
+
const signal = (_a = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.signal) !== null && _a !== void 0 ? _a : AbortSignal.timeout((_b = this.config.timeout) !== null && _b !== void 0 ? _b : 10000);
|
|
41
43
|
const response = await fetch(url, {
|
|
42
|
-
...
|
|
44
|
+
...requestOptions,
|
|
43
45
|
signal
|
|
44
46
|
});
|
|
45
|
-
return this.handleResponse(response);
|
|
47
|
+
return this.handleResponse(response, handle409Redirects);
|
|
46
48
|
}
|
|
47
49
|
// eslint-disable-next-line complexity
|
|
48
|
-
async handleResponse(response) {
|
|
50
|
+
async handleResponse(response, handle409Redirects = true) {
|
|
49
51
|
var _a;
|
|
50
52
|
if (!response.ok) {
|
|
51
|
-
if (response.status === 409 &&
|
|
53
|
+
if (response.status === 409 &&
|
|
54
|
+
response.headers.has('location') &&
|
|
55
|
+
handle409Redirects) {
|
|
52
56
|
const locationPath = response.headers.get('location');
|
|
53
57
|
// eslint-disable-next-line max-depth
|
|
54
58
|
if (locationPath) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchApiClient.js","sourceRoot":"","sources":["../../../../../packages/core/src/api/FetchApiClient.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAClD,iEAA8D;AAE9D,+CAA4C;AAC5C,iDAA2D;AAC3D,yCAAqC;AACrC,6CAAyC;AAWzC,MAAa,cAAc;IAYzB,YAA6B,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;QAF7B,gBAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;QAG/C,IAAI,CAAC,YAAY,GAAG,IAAI,2BAAY,CAAC;YACnC,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,KAAM;YAChB,YAAY,EAAE,GAAG;YACjB,GAAG,MAAM,CAAC,KAAK;SAChB,CAAC,CAAC;IACL,CAAC;IAEM,OAAO,CAAC,IAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"FetchApiClient.js","sourceRoot":"","sources":["../../../../../packages/core/src/api/FetchApiClient.ts"],"names":[],"mappings":"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"}
|