@stigg/node-server-sdk 3.75.0 → 3.76.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/apollo/OperationTimeoutError.d.ts +3 -0
- package/dist/api/apollo/OperationTimeoutError.js +10 -0
- package/dist/api/apollo/TimeoutLink.d.ts +0 -1
- package/dist/api/apollo/TimeoutLink.js +6 -5
- package/dist/api/apollo/initApolloClient.js +4 -3
- package/dist/api/entitlements/entitlementsApi.d.ts +1 -1
- package/dist/api/entitlements/entitlementsApi.js +5 -2
- package/dist/clientInitialization.js +4 -3
- package/dist/configuration.d.ts +8 -3
- package/dist/configuration.js +6 -3
- package/dist/services/EdgeApiClient.d.ts +3 -0
- package/dist/services/EdgeApiClient.js +9 -7
- package/dist/services/cache/redisCacheService.constants.d.ts +1 -1
- package/dist/services/cache/redisCacheService.constants.js +3 -3
- package/dist/services/cache/redisCacheService.d.ts +2 -2
- package/dist/services/cache/redisCacheService.js +6 -4
- package/dist/services/entitlementsService.d.ts +2 -1
- package/dist/services/entitlementsService.js +4 -3
- package/dist/services/inMemoryEntitlementsService.d.ts +1 -1
- package/dist/services/inMemoryEntitlementsService.js +3 -3
- package/dist/services/redisEntitlementsService.d.ts +1 -1
- package/dist/services/redisEntitlementsService.js +3 -3
- package/dist/utils/apiErrorHandling.js +3 -3
- package/package.json +1 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OperationTimeoutError = void 0;
|
|
4
|
+
class OperationTimeoutError extends Error {
|
|
5
|
+
constructor(operationName, timeout) {
|
|
6
|
+
super(`Operation ${operationName} timeout after ${timeout} ms`);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
exports.OperationTimeoutError = OperationTimeoutError;
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9uVGltZW91dEVycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9hcG9sbG8vT3BlcmF0aW9uVGltZW91dEVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQWEscUJBQXNCLFNBQVEsS0FBSztJQUM5QyxZQUFZLGFBQXFCLEVBQUUsT0FBZTtRQUNoRCxLQUFLLENBQUMsYUFBYSxhQUFhLGtCQUFrQixPQUFPLEtBQUssQ0FBQyxDQUFDO0lBQ2xFLENBQUM7Q0FDRjtBQUpELHNEQUlDIn0=
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/// <reference types="zen-observable" />
|
|
2
2
|
import { ApolloLink, FetchResult, Observable, Operation } from '@apollo/client/core';
|
|
3
3
|
import { NextLink } from '@apollo/client/link/core/types';
|
|
4
|
-
export declare const TIMEOUT_ERROR_MESSAGE = "Request timed out";
|
|
5
4
|
export declare class TimeoutLink extends ApolloLink {
|
|
6
5
|
private readonly timeout;
|
|
7
6
|
constructor(timeout?: number);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TimeoutLink =
|
|
3
|
+
exports.TimeoutLink = void 0;
|
|
4
4
|
const core_1 = require("@apollo/client/core");
|
|
5
|
-
|
|
5
|
+
const OperationTimeoutError_1 = require("./OperationTimeoutError");
|
|
6
6
|
class TimeoutLink extends core_1.ApolloLink {
|
|
7
7
|
constructor(timeout = 30000) {
|
|
8
8
|
super();
|
|
@@ -10,9 +10,10 @@ class TimeoutLink extends core_1.ApolloLink {
|
|
|
10
10
|
}
|
|
11
11
|
request(operation, forward) {
|
|
12
12
|
return new core_1.Observable((observer) => {
|
|
13
|
+
const timeout = operation.getContext().timeout || this.timeout;
|
|
13
14
|
const timerHandle = setTimeout(() => {
|
|
14
|
-
observer.error(new
|
|
15
|
-
},
|
|
15
|
+
observer.error(new OperationTimeoutError_1.OperationTimeoutError(operation.operationName, timeout));
|
|
16
|
+
}, timeout);
|
|
16
17
|
if (!forward) {
|
|
17
18
|
return;
|
|
18
19
|
}
|
|
@@ -38,4 +39,4 @@ class TimeoutLink extends core_1.ApolloLink {
|
|
|
38
39
|
}
|
|
39
40
|
}
|
|
40
41
|
exports.TimeoutLink = TimeoutLink;
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZW91dExpbmsuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBpL2Fwb2xsby9UaW1lb3V0TGluay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw4Q0FBcUY7QUFFckYsbUVBQWdFO0FBRWhFLE1BQWEsV0FBWSxTQUFRLGlCQUFVO0lBQ3pDLFlBQTZCLFVBQVUsS0FBTTtRQUMzQyxLQUFLLEVBQUUsQ0FBQztRQURtQixZQUFPLEdBQVAsT0FBTyxDQUFTO0lBRTdDLENBQUM7SUFFTSxPQUFPLENBQUMsU0FBb0IsRUFBRSxPQUFrQjtRQUNyRCxPQUFPLElBQUksaUJBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2pDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUMvRCxNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNsQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksNkNBQXFCLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQzlFLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUVaLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ1osT0FBTzthQUNSO1lBRUQsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDaEQsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7b0JBQ2YsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO29CQUMxQixRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QixDQUFDO2dCQUNELEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUNmLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDMUIsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDeEIsQ0FBQztnQkFDRCxRQUFRLEVBQUUsR0FBRyxFQUFFO29CQUNiLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDMUIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN0QixDQUFDO2FBQ0YsQ0FBQyxDQUFDO1lBRUgsT0FBTyxHQUFHLEVBQUU7Z0JBQ1YsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUMxQixZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0IsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFyQ0Qsa0NBcUNDIn0=
|
|
@@ -12,12 +12,13 @@ const requestHeaders_1 = require("../../utils/requestHeaders");
|
|
|
12
12
|
const retry_1 = require("@apollo/client/link/retry");
|
|
13
13
|
const WebSocketLink_1 = require("./WebSocketLink");
|
|
14
14
|
const TimeoutLink_1 = require("./TimeoutLink");
|
|
15
|
+
const OperationTimeoutError_1 = require("./OperationTimeoutError");
|
|
15
16
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
16
17
|
const packageJson = require('../../../package.json');
|
|
17
18
|
const retryIf = (error) => {
|
|
18
19
|
const doNotRetryCodes = [500, 400];
|
|
19
|
-
const
|
|
20
|
-
return !!error && !doNotRetryCodes.includes(error.statusCode) && !
|
|
20
|
+
const errorIsTimeout = error instanceof OperationTimeoutError_1.OperationTimeoutError;
|
|
21
|
+
return !!error && !doNotRetryCodes.includes(error.statusCode) && !errorIsTimeout;
|
|
21
22
|
};
|
|
22
23
|
function getAuthLink(apiKey, instanceId) {
|
|
23
24
|
const authLink = new core_1.ApolloLink((operation, forward) => {
|
|
@@ -71,4 +72,4 @@ const initApolloClient = ({ apiKey, baseUri, wsUrl, onConnected, loggerService,
|
|
|
71
72
|
});
|
|
72
73
|
};
|
|
73
74
|
exports.default = initApolloClient;
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdEFwb2xsb0NsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGkvYXBvbGxvL2luaXRBcG9sbG9DbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw4Q0FBK0Y7QUFDL0Ysa0VBQStCO0FBQy9CLDhEQUFnQztBQUNoQyx3REFBNkQ7QUFFN0QsdURBQStDO0FBQy9DLCtEQUFpRTtBQUNqRSxxREFBc0Q7QUFDdEQsbURBQWdEO0FBRWhELCtDQUE0QztBQUM1QyxtRUFBZ0U7QUFFaEUsOERBQThEO0FBQzlELE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBRXJELE1BQU0sT0FBTyxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7SUFDN0IsTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDbkMsTUFBTSxjQUFjLEdBQUcsS0FBSyxZQUFZLDZDQUFxQixDQUFDO0lBQzlELE9BQU8sQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO0FBQ25GLENBQUMsQ0FBQztBQUVGLFNBQVMsV0FBVyxDQUFDLE1BQTBCLEVBQUUsVUFBOEI7SUFDN0UsTUFBTSxRQUFRLEdBQUcsSUFBSSxpQkFBVSxDQUFDLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxFQUFFO1FBQ3JELFNBQVMsQ0FBQyxVQUFVLENBQUM7WUFDbkIsT0FBTyxFQUFFLElBQUEsb0NBQW1CLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsYUFBYSxDQUFDO1NBQzFFLENBQUMsQ0FBQztRQUNILE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQUVELFNBQVMsV0FB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
|
|
@@ -9,7 +9,7 @@ declare class EntitlementsApi {
|
|
|
9
9
|
private readonly edgeApiClient;
|
|
10
10
|
private readonly loggerService;
|
|
11
11
|
constructor(client: ApolloClient<NormalizedCacheObject>, edgeApiClient: EdgeApiClient | null, loggerService: LoggerService);
|
|
12
|
-
getEntitlements(customerId: string, resourceId: string | undefined, skipEdge?: boolean): Promise<ApolloQueryResult<GetEntitlementsQuery>>;
|
|
12
|
+
getEntitlements(customerId: string, resourceId: string | undefined, skipEdge?: boolean, timeout?: number): Promise<ApolloQueryResult<GetEntitlementsQuery>>;
|
|
13
13
|
reportUsage(data: CreateUsageMeasurement): Promise<import("@apollo/client/core").FetchResult<ReportUsageMutation, Record<string, any>, Record<string, any>>>;
|
|
14
14
|
reportUsageBulk(input: ReportUsageBulkInput): Promise<import("@apollo/client/core").FetchResult<ReportUsageBulkMutation, Record<string, any>, Record<string, any>>>;
|
|
15
15
|
reportEvent(data: ReportEvent[]): Promise<import("@apollo/client/core").FetchResult<ReportEventMutation, Record<string, any>, Record<string, any>>>;
|
|
@@ -7,7 +7,7 @@ class EntitlementsApi {
|
|
|
7
7
|
this.edgeApiClient = edgeApiClient;
|
|
8
8
|
this.loggerService = loggerService;
|
|
9
9
|
}
|
|
10
|
-
async getEntitlements(customerId, resourceId, skipEdge = false) {
|
|
10
|
+
async getEntitlements(customerId, resourceId, skipEdge = false, timeout) {
|
|
11
11
|
// fetching entitlements from edge-api instead of graphql-api
|
|
12
12
|
if (this.edgeApiClient && !skipEdge) {
|
|
13
13
|
this.loggerService.debug(`Fetching entitlements from edge`, { customerId, resourceId });
|
|
@@ -18,6 +18,9 @@ class EntitlementsApi {
|
|
|
18
18
|
query: sdk_1.GetEntitlementsDocument,
|
|
19
19
|
variables: { query: { customerId, resourceId } },
|
|
20
20
|
fetchPolicy: 'no-cache',
|
|
21
|
+
context: {
|
|
22
|
+
timeout,
|
|
23
|
+
},
|
|
21
24
|
});
|
|
22
25
|
}
|
|
23
26
|
reportUsage(data) {
|
|
@@ -58,4 +61,4 @@ class EntitlementsApi {
|
|
|
58
61
|
}
|
|
59
62
|
}
|
|
60
63
|
exports.default = EntitlementsApi;
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzQXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9lbnRpdGxlbWVudHMvZW50aXRsZW1lbnRzQXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBSUEsZ0VBMkJnRDtBQUVoRCxNQUFNLGVBQWU7SUFDbkIsWUFDbUIsTUFBMkMsRUFDM0MsYUFBbUMsRUFDbkMsYUFBNEI7UUFGNUIsV0FBTSxHQUFOLE1BQU0sQ0FBcUM7UUFDM0Msa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQzVDLENBQUM7SUFFSixLQUFLLENBQUMsZUFBZSxDQUNuQixVQUFrQixFQUNsQixVQUE4QixFQUM5QixRQUFRLEdBQUcsS0FBSyxFQUNoQixPQUFnQjtRQUVoQiw2REFBNkQ7UUFDN0QsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ25DLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLGlDQUFpQyxFQUFFLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7WUFDeEYsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDbkU7UUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0MsRUFBRSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDM0UsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBc0Q7WUFDNUUsS0FBSyxFQUFFLDZCQUF1QjtZQUM5QixTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDaEQsV0FBVyxFQUFFLFVBQVU7WUFDdkIsT0FBTyxFQUFFO2dCQUNQLE9BQU87YUFDUjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBNEI7UUFDdEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBb0Q7WUFDM0UsUUFBUSxFQUFFLHlCQUFtQjtZQUM3QixTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO1lBQzFCLFdBQVcsRUFBRSxVQUFVO1NBQ3hCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBMkI7UUFDekMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBNEQ7WUFDbkYsUUFBUSxFQUFFLDZCQUF1QjtZQUNqQyxTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUU7WUFDcEIsV0FBVyxFQUFFLFVBQVU7U0FDeEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFtQjtRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFvRDtZQUMzRSxRQUFRLEVBQUUseUJBQW1CO1lBQzdCLFNBQVMsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUMzQyxXQUFXLEVBQUUsVUFBVTtTQUN4QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsNEJBQTRCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQWdGO1lBQzFHLEtBQUssRUFBRSxtQ0FBNkI7U0FDckMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFrRTtZQUM1RixLQUFLLEVBQUUsNEJBQXNCO1NBQzlCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBMEU7WUFDcEcsS0FBSyxFQUFFLGdDQUEwQjtTQUNsQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFFRCxrQkFBZSxlQUFlLENBQUMifQ==
|
|
@@ -24,11 +24,12 @@ const intializeStiggDependencies = (isPersistedCacheEnabled, sdkConfiguration, l
|
|
|
24
24
|
}
|
|
25
25
|
const graphqlClient = (0, initApolloClient_1.default)(Object.assign(Object.assign({}, sdkConfiguration), { onConnected: (inMemoryCacheService === null || inMemoryCacheService === void 0 ? void 0 : inMemoryCacheService.clearCache) || Promise.resolve, loggerService }));
|
|
26
26
|
const edgeApiClient = EdgeApiClient_1.EdgeApiClient.create(sdkConfiguration, loggerService);
|
|
27
|
+
const { entitlementsTimeout } = sdkConfiguration;
|
|
27
28
|
if (isPersistedCacheEnabled) {
|
|
28
|
-
entitlementsService = new redisEntitlementsService_1.RedisEntitlementsService(new redisCacheService_1.RedisCacheService(sdkConfiguration
|
|
29
|
+
entitlementsService = new redisEntitlementsService_1.RedisEntitlementsService(new redisCacheService_1.RedisCacheService(sdkConfiguration, loggerService, cacheInstrumentation), graphqlClient, loggerService, edgeApiClient, entitlementsTimeout);
|
|
29
30
|
}
|
|
30
31
|
else if (inMemoryCacheService) {
|
|
31
|
-
entitlementsService = new inMemoryEntitlementsService_1.InMemoryEntitlementsService(inMemoryCacheService, graphqlClient, eventEmitter, loggerService, edgeApiClient);
|
|
32
|
+
entitlementsService = new inMemoryEntitlementsService_1.InMemoryEntitlementsService(inMemoryCacheService, graphqlClient, eventEmitter, loggerService, edgeApiClient, entitlementsTimeout);
|
|
32
33
|
}
|
|
33
34
|
else {
|
|
34
35
|
throw new Error(`Failed to initialize SDK`);
|
|
@@ -38,4 +39,4 @@ const intializeStiggDependencies = (isPersistedCacheEnabled, sdkConfiguration, l
|
|
|
38
39
|
return { eventEmitter, entitlementsService, managementApi, sdkConfigurationApi };
|
|
39
40
|
};
|
|
40
41
|
exports.intializeStiggDependencies = intializeStiggDependencies;
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50SW5pdGlhbGl6YXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2xpZW50SW5pdGlhbGl6YXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsMERBQTREO0FBQzVELGdGQUE2RTtBQUU3RSxxRkFBNkQ7QUFDN0Qsa0ZBQStFO0FBQy9FLDBFQUF1RTtBQUN2RSx3RkFBcUY7QUFDckYsd0VBQWdEO0FBQ2hELG9GQUE0RDtBQUM1RCw0REFBeUQ7QUFDekQsMEVBQXVFO0FBRWhFLE1BQU0sMEJBQTBCLEdBQUcsQ0FDeEMsdUJBQWdDLEVBQ2hDLGdCQUErQyxFQUMvQyxhQUE0QixFQUM1QixFQUFFO0lBQ0YsTUFBTSxZQUFZLEdBQUcsSUFBSSxnQ0FBaUIsRUFBRSxDQUFDO0lBQzdDLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSwyQ0FBb0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNwRSxJQUFJLG9CQUFvQixHQUFnQyxJQUFJLENBQUM7SUFDN0QsSUFBSSxtQkFBd0MsQ0FBQztJQUU3QyxJQUFJLENBQUMsdUJBQXVCLEVBQUU7UUFDNUIsb0JBQW9CLEdBQUcsSUFBSSwyQ0FBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyx1QkFBdUIsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0tBQ2pIO0lBRUQsTUFBTSxhQUFhLEdBQUcsSUFBQSwwQkFBZ0Isa0NBQ2pDLGdCQUFnQixLQUNuQixXQUFXLEVBQUUsQ0FBQSxvQkFBb0IsYUFBcEIsb0JBQW9CLHVCQUFwQixvQkFBb0IsQ0FBRSxVQUFVLEtBQUksT0FBTyxDQUFDLE9BQU8sRUFDaEUsYUFBYSxJQUNiLENBQUM7SUFFSCxNQUFNLGFBQWEsR0FBRyw2QkFBYSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUM1RSxNQUFNLEVBQUUsbUJBQW1CLEVBQUUsR0FBRyxnQkFBZ0IsQ0FBQztJQUVqRCxJQUFJLHVCQUF1QixFQUFFO1FBQzNCLG1CQUFtQixHQUFHLElBQUksbURBQXdCLENBQ2hELElBQUkscUNBQWlCLENBQUMsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixDQUFDLEVBQzVFLGFBQWEsRUFDYixhQUFhLEVBQ2IsYUFBYSxFQUNiLG1CQUFtQixDQUNwQixDQUFDO0tBQ0g7U0FBTSxJQUFJLG9CQUFvQixFQUFFO1FBQy9CLG1CQUFtQixHQUFHLElBQUkseURBQTJCLENBQ25ELG9CQUFvQixFQUNwQixhQUFhLEVBQ2IsWUFBWSxFQUNaLGFBQWEsRUFDYixhQUFhLEVBQ2IsbUJBQW1CLENBQ3BCLENBQUM7S0FDSDtTQUFNO1FBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0tBQzdDO0lBRUQsTUFBTSxhQUFhLEdBQUcsSUFBSSx1QkFBYSxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUV0RSxNQUFNLG1CQUFtQixHQUFHLElBQUksNkJBQW1CLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2xGLE9BQU8sRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLENBQUM7QUFDbkYsQ0FBQyxDQUFDO0FBaERXLFFBQUEsMEJBQTBCLDhCQWdEckMifQ==
|
package/dist/configuration.d.ts
CHANGED
|
@@ -4,15 +4,19 @@ import { RedisOptions } from 'ioredis/built/redis/RedisOptions';
|
|
|
4
4
|
import { EntitlementsFallback } from './models';
|
|
5
5
|
export declare const SDK_SOURCE_TYPE = SourceType.NodeServerSdk;
|
|
6
6
|
export declare const SDK_NAME = "node-server-sdk";
|
|
7
|
+
export declare const DEFAULT_TIMEOUT: number;
|
|
8
|
+
export declare const DEFAULT_ENTITLEMENTS_TIMEOUT: number;
|
|
7
9
|
export declare type DistributedEntitlementsFetchingOptions = {
|
|
8
10
|
/** Whether to disable the distributed entitlements fetching mechanism */
|
|
9
11
|
disabled?: boolean;
|
|
10
12
|
/**
|
|
11
|
-
*
|
|
12
|
-
* This timeout duration should be slightly longer than the total
|
|
13
|
-
* elapsed time of all retry attempts for the API data fetch request.
|
|
13
|
+
* @deprecated not in use anymore - it will be calculated according to the {@link ClientConfiguration.entitlementsTimeout} value
|
|
14
14
|
*/
|
|
15
15
|
notificationTimeoutMs?: number;
|
|
16
|
+
/**
|
|
17
|
+
* The buffer in milliseconds for waiting for notification from other instance.
|
|
18
|
+
*/
|
|
19
|
+
notificationBufferMs?: number;
|
|
16
20
|
};
|
|
17
21
|
export declare type StiggRedisOptions = RedisOptions & {
|
|
18
22
|
/** A prefix used in all Redis interactions to distinguish between different environments operating on the same Redis database */
|
|
@@ -37,6 +41,7 @@ declare type ClientConfiguration = {
|
|
|
37
41
|
clientVersion?: string;
|
|
38
42
|
enableRemoteConfig?: boolean;
|
|
39
43
|
timeout?: number;
|
|
44
|
+
entitlementsTimeout?: number;
|
|
40
45
|
offline?: boolean;
|
|
41
46
|
};
|
|
42
47
|
declare function getConfiguration(configuration: Partial<ClientConfiguration>): Required<ClientConfiguration>;
|
package/dist/configuration.js
CHANGED
|
@@ -3,13 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.validateConfiguration = exports.getConfiguration = exports.SDK_NAME = exports.SDK_SOURCE_TYPE = void 0;
|
|
6
|
+
exports.validateConfiguration = exports.getConfiguration = exports.DEFAULT_ENTITLEMENTS_TIMEOUT = exports.DEFAULT_TIMEOUT = exports.SDK_NAME = exports.SDK_SOURCE_TYPE = void 0;
|
|
7
7
|
const sdk_1 = require("@stigg/api-client-js/src/generated/sdk");
|
|
8
8
|
const loggerService_1 = require("./services/loggerService");
|
|
9
9
|
const lodash_1 = require("lodash");
|
|
10
10
|
const v8_1 = __importDefault(require("v8"));
|
|
11
11
|
exports.SDK_SOURCE_TYPE = sdk_1.SourceType.NodeServerSdk;
|
|
12
12
|
exports.SDK_NAME = 'node-server-sdk';
|
|
13
|
+
exports.DEFAULT_TIMEOUT = 60 * 1000;
|
|
14
|
+
exports.DEFAULT_ENTITLEMENTS_TIMEOUT = 10 * 1000;
|
|
13
15
|
const LOCALHOST_IPS = ['localhost', '127.0.0.1', '::1'];
|
|
14
16
|
function getDefaultMemoryCacheMaxSizeBytes() {
|
|
15
17
|
return v8_1.default.getHeapStatistics().total_available_size * 0.75;
|
|
@@ -24,7 +26,8 @@ const defaults = () => {
|
|
|
24
26
|
logger: console,
|
|
25
27
|
logLevel: loggerService_1.LogLevel.ERROR,
|
|
26
28
|
},
|
|
27
|
-
timeout:
|
|
29
|
+
timeout: exports.DEFAULT_TIMEOUT,
|
|
30
|
+
entitlementsTimeout: exports.DEFAULT_ENTITLEMENTS_TIMEOUT,
|
|
28
31
|
realtimeUpdatesEnabled: true,
|
|
29
32
|
enableEdge: true,
|
|
30
33
|
memoryCacheMaxSizeBytes: getDefaultMemoryCacheMaxSizeBytes(),
|
|
@@ -83,4 +86,4 @@ function validateConfiguration(configuration, loggerService) {
|
|
|
83
86
|
}
|
|
84
87
|
}
|
|
85
88
|
exports.validateConfiguration = validateConfiguration;
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdFQUFvRTtBQUNwRSw0REFBcUY7QUFFckYsbUNBQStCO0FBRS9CLDRDQUFvQjtBQUVQLFFBQUEsZUFBZSxHQUFHLGdCQUFVLENBQUMsYUFBYSxDQUFDO0FBQzNDLFFBQUEsUUFBUSxHQUFHLGlCQUFpQixDQUFDO0FBRTdCLFFBQUEsZUFBZSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7QUFDNUIsUUFBQSw0QkFBNEIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDO0FBRXRELE1BQU0sYUFBYSxHQUFHLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztBQStDeEQsU0FBUyxpQ0FBaUM7SUFDeEMsT0FBTyxZQUFFLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUM7QUFDNUQsQ0FBQztBQUVELE1BQU0sUUFBUSxHQUFHLEdBQWlDLEVBQUU7SUFDbEQsTUFBTSxPQUFPLEdBQUcsc0JBQXNCLENBQUM7SUFDdkMsT0FBTztRQUNMLE9BQU87UUFDUCxLQUFLLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUN4QixXQUFXLEVBQUUsaUJBQWlCLENBQUMsT0FBTyxDQUFDO1FBQ3ZDLGdCQUFnQixFQUFFO1lBQ2hCLE1BQU0sRUFBRSxPQUFPO1lBQ2YsUUFBUSxFQUFFLHdCQUFRLENBQUMsS0FBSztTQUN6QjtRQUNELE9BQU8sRUFBRSx1QkFBZTtRQUN4QixtQkFBbUIsRUFBRSxvQ0FBNEI7UUFDakQsc0JBQXNCLEVBQUUsSUFBSTtRQUM1QixVQUFVLEVBQUUsSUFBSTtRQUNoQix1QkFBdUIsRUFBRSxpQ0FBaUMsRUFBRTtRQUM1RCxrQkFBa0IsRUFBRSxJQUFJO0tBQ3pCLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLG1CQUFtQixHQUFHLEdBQStCLEVBQUUsQ0FBQyxDQUFDO0lBQzdELGNBQWMsRUFBRSxLQUFNO0NBQ3ZCLENBQUMsQ0FBQztBQUVILFNBQVMsZ0JBQWdCLENBQUMsYUFBMkM7SUFDbkUsTUFBTSxhQUFhLEdBQUcsUUFBUSxFQUFFLENBQUM7SUFFakMsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLEtBQUs7UUFDL0IsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxLQUFLO1FBQ3JCLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTztZQUN2QixDQUFDLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7WUFDakMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDeEIsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVc7UUFDM0MsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxXQUFXO1FBQzNCLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTztZQUN2QixDQUFDLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztZQUMxQyxDQUFDLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUU5QixNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFBLGNBQUssRUFBQyxtQkFBbUIsRUFBRSxFQUFFLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBRWxHLE9BQU8sSUFBQSxjQUFLLEVBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQWtDLENBQUM7QUFDN0csQ0FBQztBQXVDUSw0Q0FBZ0I7QUFyQ3pCLFNBQVMsUUFBUSxDQUFDLE1BQWM7SUFDOUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFNUIsSUFBSSxHQUFHLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRTtRQUM1QixHQUFHLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztLQUN0QjtTQUFNLElBQUksR0FBRyxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUU7UUFDcEMsR0FBRyxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUM7S0FDdkI7SUFFRCxtRUFBbUU7SUFDbkUsT0FBTyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3JDLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLE1BQWM7SUFDdkMsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFNUIsSUFBSSxhQUFhLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUN4QyxHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztLQUNuQjtTQUFNO1FBQ0wsR0FBRyxDQUFDLFFBQVEsR0FBRyxRQUFRLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztLQUN2QztJQUVELG1FQUFtRTtJQUNuRSxPQUFPLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDckMsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBUyxxQkFBcUIsQ0FBQyxhQUEyQyxFQUFFLGFBQTRCO0lBQ3RHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFO1FBQ3pCLE1BQU0sS0FBSyxHQUFHLCtDQUErQyxDQUFDO1FBQzlELGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUN4QjtBQUNILENBQUM7QUFFK0Msc0RBQXFCIn0=
|
|
@@ -6,8 +6,11 @@ declare type EdgeApiClientConfiguration = {
|
|
|
6
6
|
apiKey: string;
|
|
7
7
|
baseEdgeUri: string;
|
|
8
8
|
enableEdge: boolean;
|
|
9
|
+
timeout: number;
|
|
10
|
+
entitlementsTimeout: number;
|
|
9
11
|
};
|
|
10
12
|
export declare class EdgeApiClient {
|
|
13
|
+
private readonly config;
|
|
11
14
|
private readonly loggerService;
|
|
12
15
|
private readonly httpClient;
|
|
13
16
|
private constructor();
|
|
@@ -30,10 +30,10 @@ const axios_retry_1 = __importDefault(require("axios-retry"));
|
|
|
30
30
|
const http = __importStar(require("http"));
|
|
31
31
|
const https = __importStar(require("https"));
|
|
32
32
|
const lodash_1 = require("lodash");
|
|
33
|
-
const REQUEST_TIMEOUT_MS = 15 * 1000; // 15 seconds
|
|
34
33
|
const REQUEST_RETRY_COUNT = 3;
|
|
35
34
|
class EdgeApiClient {
|
|
36
35
|
constructor(config, loggerService) {
|
|
36
|
+
this.config = config;
|
|
37
37
|
this.loggerService = loggerService;
|
|
38
38
|
const { apiKey, baseEdgeUri } = config;
|
|
39
39
|
this.httpClient = this.initHttpClient(baseEdgeUri, apiKey);
|
|
@@ -55,7 +55,9 @@ class EdgeApiClient {
|
|
|
55
55
|
}
|
|
56
56
|
getEntitlements(customerId, resourceId) {
|
|
57
57
|
const url = `/v1/c/${customerId}/entitlements.json${resourceId ? `?resourceId=${resourceId}` : ''}`;
|
|
58
|
-
return this.get(url
|
|
58
|
+
return this.get(url, {
|
|
59
|
+
timeout: this.config.entitlementsTimeout,
|
|
60
|
+
});
|
|
59
61
|
}
|
|
60
62
|
getActiveSubscriptionsList(customerId, resourceId) {
|
|
61
63
|
const queryString = new URLSearchParams();
|
|
@@ -71,8 +73,8 @@ class EdgeApiClient {
|
|
|
71
73
|
getSdkConfiguration() {
|
|
72
74
|
return this.get(`/v1/config/server-sdk-configuration.json`);
|
|
73
75
|
}
|
|
74
|
-
async get(url) {
|
|
75
|
-
const response = await this.httpClient.get(url);
|
|
76
|
+
async get(url, options) {
|
|
77
|
+
const response = await this.httpClient.get(url, options);
|
|
76
78
|
const { data } = response;
|
|
77
79
|
if (!(0, lodash_1.isEmpty)(data.errors)) {
|
|
78
80
|
throw new core_1.ApolloError({ graphQLErrors: data.errors });
|
|
@@ -83,7 +85,7 @@ class EdgeApiClient {
|
|
|
83
85
|
const axiosInstance = axios_1.default.create({
|
|
84
86
|
baseURL: baseEdgeUri,
|
|
85
87
|
headers: Object.assign(Object.assign({}, (0, requestHeaders_1.buildRequestHeaders)(apiKey, this.loggerService.getInstanceId())), { 'X-API-VERSION': '1' }),
|
|
86
|
-
timeout:
|
|
88
|
+
timeout: this.config.timeout,
|
|
87
89
|
httpAgent: new http.Agent({ keepAlive: true }),
|
|
88
90
|
httpsAgent: new https.Agent({ keepAlive: true }),
|
|
89
91
|
});
|
|
@@ -98,7 +100,7 @@ class EdgeApiClient {
|
|
|
98
100
|
retries: REQUEST_RETRY_COUNT,
|
|
99
101
|
retryCondition: (error) => this.canRetryRequest(error),
|
|
100
102
|
retryDelay: (retryNumber, error) => axios_retry_1.default.exponentialDelay(retryNumber, error, 2000),
|
|
101
|
-
shouldResetTimeout:
|
|
103
|
+
shouldResetTimeout: false,
|
|
102
104
|
onRetry: async (retryCount, error, requestConfig) => this.loggerService.log(`Retrying request ${requestConfig.url} - attempt ${retryCount}`),
|
|
103
105
|
});
|
|
104
106
|
}
|
|
@@ -108,4 +110,4 @@ class EdgeApiClient {
|
|
|
108
110
|
}
|
|
109
111
|
}
|
|
110
112
|
exports.EdgeApiClient = EdgeApiClient;
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWRnZUFwaUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9FZGdlQXBpQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrREFBb0Y7QUFDcEYsOENBQXFFO0FBUXJFLDREQUE4RDtBQUU5RCw4REFBcUM7QUFDckMsMkNBQTZCO0FBQzdCLDZDQUErQjtBQUMvQixtQ0FBb0Q7QUFFcEQsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLENBQUM7QUFVOUIsTUFBYSxhQUFhO0lBR3hCLFlBQ21CLE1BQWtDLEVBQ2xDLGFBQTRCO1FBRDVCLFdBQU0sR0FBTixNQUFNLENBQTRCO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBRTdDLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBa0MsRUFBRSxhQUE0QjtRQUM1RSxPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksYUFBYSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzdFLENBQUM7SUFFRCxVQUFVLENBQ1IsU0FBa0IsRUFDbEIsa0JBQTJCLEVBQzNCLHVCQUFpQyxFQUNqQyxrQkFBNEI7UUFFNUIsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbEQsTUFBTSxpQ0FBaUMsR0FBRywyQkFBMkIsdUJBQXVCLEVBQUUsQ0FBQztRQUUvRixJQUFJLEdBQUcsR0FBRyxNQUFNLE1BQU0saUJBQWlCLGlDQUFpQyxFQUFF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
|
|
@@ -2,4 +2,4 @@ export declare const TIMESTAMP_SUFFIX = "timestamp";
|
|
|
2
2
|
export declare const LOCK_DURATION = 5000;
|
|
3
3
|
export declare const DEFAULT_TTL_SECS: number;
|
|
4
4
|
export declare const REFETCH_OPERATION_NAME = "refetchEntityEntitlementsAfterCacheMiss";
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const REFETCH_NOTIFICATION_BUFFER_MS = 500;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.REFETCH_NOTIFICATION_BUFFER_MS = exports.REFETCH_OPERATION_NAME = exports.DEFAULT_TTL_SECS = exports.LOCK_DURATION = exports.TIMESTAMP_SUFFIX = void 0;
|
|
4
4
|
exports.TIMESTAMP_SUFFIX = 'timestamp';
|
|
5
5
|
exports.LOCK_DURATION = 5000;
|
|
6
6
|
exports.DEFAULT_TTL_SECS = 7 * 24 * 60 * 60;
|
|
7
7
|
exports.REFETCH_OPERATION_NAME = 'refetchEntityEntitlementsAfterCacheMiss';
|
|
8
|
-
exports.
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
exports.REFETCH_NOTIFICATION_BUFFER_MS = 500;
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXNDYWNoZVNlcnZpY2UuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2NhY2hlL3JlZGlzQ2FjaGVTZXJ2aWNlLmNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLGdCQUFnQixHQUFHLFdBQVcsQ0FBQztBQUMvQixRQUFBLGFBQWEsR0FBRyxJQUFJLENBQUM7QUFDckIsUUFBQSxnQkFBZ0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUM7QUFFcEMsUUFBQSxzQkFBc0IsR0FBRyx5Q0FBeUMsQ0FBQztBQUNuRSxRQUFBLDhCQUE4QixHQUFHLEdBQUcsQ0FBQyJ9
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CacheService, UpdateFeatureUsagePayload } from './cacheService';
|
|
2
2
|
import CachedEntitlement from './cachedEntitlement';
|
|
3
3
|
import { LoggerService } from '../loggerService';
|
|
4
|
-
import {
|
|
4
|
+
import { ClientConfiguration } from '../../configuration';
|
|
5
5
|
import { RedisSingleExecutionService } from './RedisSingleExecutionService';
|
|
6
6
|
import { EntitlementResponse, EntitlementsResponse } from '../entitlementsService.utils';
|
|
7
7
|
import { CacheInstrumentation } from '../cacheInstrumentation';
|
|
@@ -13,7 +13,7 @@ export declare class RedisCacheService implements CacheService {
|
|
|
13
13
|
private readonly redisClient;
|
|
14
14
|
private readonly redlock;
|
|
15
15
|
readonly distributedRefetchEntitlementsService: RedisSingleExecutionService | undefined;
|
|
16
|
-
constructor(options:
|
|
16
|
+
constructor(options: Required<ClientConfiguration>, loggerService: LoggerService, cacheInstrumentation: CacheInstrumentation);
|
|
17
17
|
updateFeatureUsage(params: UpdateFeatureUsagePayload): Promise<boolean>;
|
|
18
18
|
private getFeatureUsageItemToUpdate;
|
|
19
19
|
setCustomer(customerId: string, customerEntitlements: Map<string, CachedEntitlement>, resourceId: string | undefined, entitlementsTimestamp: number, featureIdToUsageTimestamp: Map<string, number>): Promise<void>;
|
|
@@ -17,8 +17,9 @@ class RedisCacheService {
|
|
|
17
17
|
constructor(options, loggerService, cacheInstrumentation) {
|
|
18
18
|
this.loggerService = loggerService;
|
|
19
19
|
this.cacheInstrumentation = cacheInstrumentation;
|
|
20
|
-
const {
|
|
21
|
-
|
|
20
|
+
const { redis: redisOptions, entitlementsTimeout } = options;
|
|
21
|
+
const { environmentPrefix, ttl = redisCacheService_constants_1.DEFAULT_TTL_SECS, distributedEntitlementsFetching = {} } = redisOptions;
|
|
22
|
+
this.redisClient = new ioredis_1.default(redisOptions);
|
|
22
23
|
this.redlock = new redlock_1.default([this.redisClient]);
|
|
23
24
|
this.environmentPrefix = environmentPrefix;
|
|
24
25
|
this.ttl = ttl;
|
|
@@ -32,7 +33,8 @@ class RedisCacheService {
|
|
|
32
33
|
});
|
|
33
34
|
this.redisClient.on('connect', () => this.loggerService.log('Redis client connected!'));
|
|
34
35
|
if (!distributedEntitlementsFetching.disabled) {
|
|
35
|
-
const {
|
|
36
|
+
const { notificationBufferMs = redisCacheService_constants_1.REFETCH_NOTIFICATION_BUFFER_MS } = distributedEntitlementsFetching;
|
|
37
|
+
const notificationTimeoutMs = entitlementsTimeout + notificationBufferMs;
|
|
36
38
|
this.distributedRefetchEntitlementsService = new RedisSingleExecutionService_1.RedisSingleExecutionService(redisCacheService_constants_1.REFETCH_OPERATION_NAME, this.environmentPrefix, notificationTimeoutMs, this.redisClient, this.redlock, this.loggerService, this.cacheInstrumentation);
|
|
37
39
|
}
|
|
38
40
|
}
|
|
@@ -295,4 +297,4 @@ class RedisCacheService {
|
|
|
295
297
|
}
|
|
296
298
|
}
|
|
297
299
|
exports.RedisCacheService = RedisCacheService;
|
|
298
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXNDYWNoZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvY2FjaGUvcmVkaXNDYWNoZVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsNEVBQXNFO0FBQ3RFLHNEQUE0QjtBQUM1QixtQ0FBb0Y7QUFFcEYsc0RBQThCO0FBRTlCLG1FQUE2RjtBQUM3RiwrRUFBNEU7QUFDNUUsNEVBS3NDO0FBQ3RDLCtFQU11QztBQUN2QywyREFBcUQ7QUFjckQsTUFBYSxpQkFBaUI7SUFRNUIsWUFDRSxPQUEwQixFQUNULGFBQTRCLEVBQzVCLG9CQUEwQztRQUQxQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBRTNELE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxHQUFHLEdBQUcsOENBQWdCLEVBQUUsK0JBQStCLEdBQUcsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRXBHLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxpQkFBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxpQkFBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQzNDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBRWYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHFCQUFxQixDQUFDLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUMs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
|
|
300
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXNDYWNoZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvY2FjaGUvcmVkaXNDYWNoZVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsNEVBQXNFO0FBQ3RFLHNEQUE0QjtBQUM1QixtQ0FBb0Y7QUFFcEYsc0RBQThCO0FBRTlCLG1FQUE2RjtBQUM3RiwrRUFBNEU7QUFDNUUsNEVBS3NDO0FBQ3RDLCtFQU11QztBQUN2QywyREFBcUQ7QUFjckQsTUFBYSxpQkFBaUI7SUFRNUIsWUFDRSxPQUFzQyxFQUNyQixhQUE0QixFQUM1QixvQkFBMEM7UUFEMUMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUUzRCxNQUFNLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUM3RCxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxHQUFHLDhDQUFnQixFQUFFLCtCQUErQixHQUFHLEVBQUUsRUFBRSxHQUFHLFlBQVksQ0FBQztRQUV6RyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksaUJBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksaUJBQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMzQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUVmLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLHNCQUFzQixFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxvQkFBb0IsQ0FB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
|
|
@@ -12,11 +12,12 @@ import CachedEntitlement from './cache/cachedEntitlement';
|
|
|
12
12
|
export declare abstract class EntitlementsService {
|
|
13
13
|
protected readonly loggerService: LoggerService;
|
|
14
14
|
protected readonly cacheService: CacheService;
|
|
15
|
+
private readonly entitlementsTimeout;
|
|
15
16
|
protected readonly entitlementsApi: EntitlementsApi;
|
|
16
17
|
protected readonly modelMapper: ModelMapper;
|
|
17
18
|
protected readonly cacheMapper: CacheMapper;
|
|
18
19
|
protected isInitialized: boolean;
|
|
19
|
-
protected constructor(client: ApolloClient<NormalizedCacheObject>, loggerService: LoggerService, edgeApiClient: EdgeApiClient | null, cacheService: CacheService);
|
|
20
|
+
protected constructor(client: ApolloClient<NormalizedCacheObject>, loggerService: LoggerService, edgeApiClient: EdgeApiClient | null, cacheService: CacheService, entitlementsTimeout: number);
|
|
20
21
|
getBooleanEntitlement(customerRefId: string, featureRefId: string, fallbackEntitlement: BooleanEntitlement, resourceId?: string, options?: BooleanEntitlementOptions): Promise<BooleanEntitlement>;
|
|
21
22
|
getNumericEntitlement(customerRefId: string, featureRefId: string, fallbackEntitlement: NumericEntitlement, resourceId?: string, options?: NumericEntitlementOptions): Promise<NumericEntitlement>;
|
|
22
23
|
getMeteredEntitlement(customerRefId: string, featureRefId: string, fallbackEntitlement: MeteredEntitlement, resourceId?: string, options?: MeteredEntitlementOptions): Promise<MeteredEntitlement>;
|
|
@@ -28,9 +28,10 @@ const featureTypes_1 = require("../utils/featureTypes");
|
|
|
28
28
|
const cachedEntitlement_1 = __importDefault(require("./cache/cachedEntitlement"));
|
|
29
29
|
const calculateUsagePeriod_1 = require("./cache/calculateUsagePeriod");
|
|
30
30
|
class EntitlementsService {
|
|
31
|
-
constructor(client, loggerService, edgeApiClient, cacheService) {
|
|
31
|
+
constructor(client, loggerService, edgeApiClient, cacheService, entitlementsTimeout) {
|
|
32
32
|
this.loggerService = loggerService;
|
|
33
33
|
this.cacheService = cacheService;
|
|
34
|
+
this.entitlementsTimeout = entitlementsTimeout;
|
|
34
35
|
this.isInitialized = false;
|
|
35
36
|
this.modelMapper = new ModelMapper_1.ModelMapper();
|
|
36
37
|
this.cacheMapper = new CacheMapper_1.default();
|
|
@@ -201,7 +202,7 @@ class EntitlementsService {
|
|
|
201
202
|
skipEdge,
|
|
202
203
|
triggeredBy,
|
|
203
204
|
});
|
|
204
|
-
const entitlementsResult = await this.entitlementsApi.getEntitlements(customerId, resourceId, skipEdge);
|
|
205
|
+
const entitlementsResult = await this.entitlementsApi.getEntitlements(customerId, resourceId, skipEdge, this.entitlementsTimeout);
|
|
205
206
|
const entitlements = await this.setEntitlements({
|
|
206
207
|
entitlements: entitlementsResult.data.entitlements,
|
|
207
208
|
customerId,
|
|
@@ -277,4 +278,4 @@ class EntitlementsService {
|
|
|
277
278
|
}
|
|
278
279
|
}
|
|
279
280
|
exports.EntitlementsService = EntitlementsService;
|
|
280
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9lbnRpdGxlbWVudHNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMEZBQWtFO0FBR2xFLHNDQWFtQjtBQUNuQixzREFBbUQ7QUFDbkQsNkVBQTBFO0FBRTFFLG1DQUF3QztBQUV4QyxrREFBMEQ7QUFDMUQsZ0VBUWdEO0FBQ2hELHVFQUErQztBQUMvQywyRUFTcUM7QUFDckMsd0RBQWdGO0FBQ2hGLGtGQUEwRDtBQUMxRCx1RUFBb0U7QUFFcEUsTUFBc0IsbUJBQW1CO0lBT3ZDLFlBQ0UsTUFBMkMsRUFDeEIsYUFBNEIsRUFDL0MsYUFBbUMsRUFDaEIsWUFBMEI7UUFGMUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFFNUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFOckMsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFROUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLHlCQUFXLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUkscUJBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSx5QkFBZSxDQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELEtBQUssQ0FBQyxxQkFBcUIsQ0FDekIsYUFBcUIsRUFDckIsWUFBb0IsRUFDcEIsbUJBQXVDLEVBQ3ZDLFVBQW1CLEVBQ25CLE9BQW1DO1FBRW5DLE1BQU0sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsMkNBQTJDLENBQzVGLFlBQVksRUFDWixhQUFhLEVBQ2IsVUFBVSxFQUNWLHVCQUF1QixDQUN4QixDQUFDO1FBRUYsTUFBTSxRQUFRLEdBQUcsdURBQTBCLENBQUMsdUJBQXVCLENBQUMsY0FBYyxFQUFF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
|
|
281
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9lbnRpdGxlbWVudHNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMEZBQWtFO0FBR2xFLHNDQWFtQjtBQUNuQixzREFBbUQ7QUFDbkQsNkVBQTBFO0FBRTFFLG1DQUF3QztBQUV4QyxrREFBMEQ7QUFDMUQsZ0VBUWdEO0FBQ2hELHVFQUErQztBQUMvQywyRUFTcUM7QUFDckMsd0RBQWdGO0FBQ2hGLGtGQUEwRDtBQUMxRCx1RUFBb0U7QUFFcEUsTUFBc0IsbUJBQW1CO0lBT3ZDLFlBQ0UsTUFBMkMsRUFDeEIsYUFBNEIsRUFDL0MsYUFBbUMsRUFDaEIsWUFBMEIsRUFDNUIsbUJBQTJCO1FBSHpCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBRTVCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzVCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBUTtRQVBwQyxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQVM5QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUkseUJBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxxQkFBVyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLHlCQUFlLENBQUMsTUFBTSxFQUFFLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsS0FBSyxDQUFDLHFCQUFxQixDQUN6QixhQUFxQixFQUNyQixZQUFvQixFQUNwQixtQkFBdUMsRUFDdkMsVUFBbUIsRUFDbkIsT0FBbUM7UUFFbkMsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQywyQ0FBMkMsQ0FDNUYsWUFBWSxFQUNaLGFBQWEsRUFDYixVQUFVLEVBQ1YsdUJBQXVCLENBQ3hCLENBQUM7UUFFRixNQUFN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
|
|
@@ -11,7 +11,7 @@ export declare class InMemoryEntitlementsService extends EntitlementsService {
|
|
|
11
11
|
private entitlementsSubscription;
|
|
12
12
|
private usageSubscription;
|
|
13
13
|
private packagePublished;
|
|
14
|
-
constructor(cacheService: InMemoryCacheService, client: ApolloClient<NormalizedCacheObject>, eventEmitter: TypedEventEmitter, loggerService: LoggerService, edgeApiClient: EdgeApiClient | null);
|
|
14
|
+
constructor(cacheService: InMemoryCacheService, client: ApolloClient<NormalizedCacheObject>, eventEmitter: TypedEventEmitter, loggerService: LoggerService, edgeApiClient: EdgeApiClient | null, entitlementsTimeout: number);
|
|
15
15
|
init(): void;
|
|
16
16
|
private websocketErrorHandling;
|
|
17
17
|
cleanup(): void;
|
|
@@ -13,8 +13,8 @@ const ReuseOngoingExecution_1 = require("../utils/decorators/ReuseOngoingExecuti
|
|
|
13
13
|
const lodash_1 = require("lodash");
|
|
14
14
|
const WS_ERROR_RECONNECT_INTERVAL_MS = 5 * 1000;
|
|
15
15
|
class InMemoryEntitlementsService extends entitlementsService_1.EntitlementsService {
|
|
16
|
-
constructor(cacheService, client, eventEmitter, loggerService, edgeApiClient) {
|
|
17
|
-
super(client, loggerService, edgeApiClient, cacheService);
|
|
16
|
+
constructor(cacheService, client, eventEmitter, loggerService, edgeApiClient, entitlementsTimeout) {
|
|
17
|
+
super(client, loggerService, edgeApiClient, cacheService, entitlementsTimeout);
|
|
18
18
|
this.cacheService = cacheService;
|
|
19
19
|
this.eventEmitter = eventEmitter;
|
|
20
20
|
this.entitlementsSubscription = null;
|
|
@@ -134,4 +134,4 @@ __decorate([
|
|
|
134
134
|
(0, ReuseOngoingExecution_1.ReuseOngoingExecution)(({ customerId, resourceId }) => (0, lodash_1.compact)([customerId, resourceId]).join(':'))
|
|
135
135
|
], InMemoryEntitlementsService.prototype, "refetchEntityEntitlementsAfterCacheMiss", null);
|
|
136
136
|
exports.InMemoryEntitlementsService = InMemoryEntitlementsService;
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5NZW1vcnlFbnRpdGxlbWVudHNTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL2luTWVtb3J5RW50aXRsZW1lbnRzU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQSxnRUFLZ0Q7QUFHaEQsK0RBQTREO0FBSTVELHFGQUFrRjtBQUNsRixtQ0FBaUM7QUFHakMsTUFBTSw4QkFBOEIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO0FBRWhELE1BQWEsMkJBQTRCLFNBQVEseUNBQW1CO0lBS2xFLFlBQ3FCLFlBQWtDLEVBQ3JELE1BQTJDLEVBQzFCLFlBQStCLEVBQ2hELGFBQTRCLEVBQzVCLGFBQW1DLEVBQ25DLG1CQUEyQjtRQUUzQixLQUFLLENBQUMsTUFBTSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFQNUQsaUJBQVksR0FBWixZQUFZLENBQXNCO1FBRXBDLGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQVAxQyw2QkFBd0IsR0FBa0MsSUFBSSxDQUFDO1FBQy9ELHNCQUFpQixHQUFrQyxJQUFJLENBQUM7UUFDeEQscUJBQWdCLEdBQWtDLElBQUksQ0FBQztJQVcvRCxDQUFDO0lBRVEsSUFBSTtRQUNYLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFFM0QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRWYsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsNEJBQTRCLEVBQUUsQ0FBQyxTQUFTLENBQzNGLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLEVBQzVDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQzFDLENBQUM7UUFFRixJ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
|
|
@@ -8,7 +8,7 @@ export declare class RedisEntitlementsService extends EntitlementsService {
|
|
|
8
8
|
protected readonly cacheService: RedisCacheService;
|
|
9
9
|
protected readonly graphqlClient: ApolloClient<NormalizedCacheObject>;
|
|
10
10
|
protected readonly loggerService: LoggerService;
|
|
11
|
-
constructor(cacheService: RedisCacheService, graphqlClient: ApolloClient<NormalizedCacheObject>, loggerService: LoggerService, edgeApiClient: EdgeApiClient | null);
|
|
11
|
+
constructor(cacheService: RedisCacheService, graphqlClient: ApolloClient<NormalizedCacheObject>, loggerService: LoggerService, edgeApiClient: EdgeApiClient | null, entitlementsTimeout: number);
|
|
12
12
|
protected refetchEntityEntitlementsAfterCacheMiss(params: RefetchEntityEntitlementsAfterCacheMissParams): Promise<import("./entitlementsService.utils").EntitlementsResponse>;
|
|
13
13
|
clearCache(): Promise<void>;
|
|
14
14
|
init(): void | Promise<void>;
|
|
@@ -11,8 +11,8 @@ const entitlementsService_1 = require("./entitlementsService");
|
|
|
11
11
|
const ReuseOngoingExecution_1 = require("../utils/decorators/ReuseOngoingExecution");
|
|
12
12
|
const lodash_1 = require("lodash");
|
|
13
13
|
class RedisEntitlementsService extends entitlementsService_1.EntitlementsService {
|
|
14
|
-
constructor(cacheService, graphqlClient, loggerService, edgeApiClient) {
|
|
15
|
-
super(graphqlClient, loggerService, edgeApiClient, cacheService);
|
|
14
|
+
constructor(cacheService, graphqlClient, loggerService, edgeApiClient, entitlementsTimeout) {
|
|
15
|
+
super(graphqlClient, loggerService, edgeApiClient, cacheService, entitlementsTimeout);
|
|
16
16
|
this.cacheService = cacheService;
|
|
17
17
|
this.graphqlClient = graphqlClient;
|
|
18
18
|
this.loggerService = loggerService;
|
|
@@ -49,4 +49,4 @@ __decorate([
|
|
|
49
49
|
(0, ReuseOngoingExecution_1.ReuseOngoingExecution)(({ customerId, resourceId }) => (0, lodash_1.compact)([customerId, resourceId]).join(':'))
|
|
50
50
|
], RedisEntitlementsService.prototype, "refetchEntityEntitlementsAfterCacheMiss", null);
|
|
51
51
|
exports.RedisEntitlementsService = RedisEntitlementsService;
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXNFbnRpdGxlbWVudHNTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL3JlZGlzRW50aXRsZW1lbnRzU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSwrREFBNEQ7QUFNNUQscUZBQWtGO0FBQ2xGLG1DQUFpQztBQUVqQyxNQUFhLHdCQUF5QixTQUFRLHlDQUFtQjtJQUMvRCxZQUNxQixZQUErQixFQUMvQixhQUFrRCxFQUNsRCxhQUE0QixFQUMvQyxhQUFtQyxFQUNuQyxtQkFBMkI7UUFFM0IsS0FBSyxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBTm5FLGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQUMvQixrQkFBYSxHQUFiLGFBQWEsQ0FBcUM7UUFDbEQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFLL0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsQ0FBQyw0Q0FBNEM7SUFDekUsQ0FBQztJQUtrQixLQUFLLENBQUMsdUNBQXVDLENBQzlELE1BQXFEO1FBRXJELE1BQU0sRUFBRSxxQ0FBcUMsRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDcEUsSUFBSSxDQUFDLHFDQUFxQyxFQUFFO1lBQzFDLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3pDO1FBRUQsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyxNQUFNLENBQUM7UUFDMUMsTUFBTSxhQUFhLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdELE1BQU0sYUFBYSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsdUJBQXVCLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRTlGLE9BQU8scUNBQXFDLENBQUMsa0NBQWtDLENBQUM7WUFDOUUsVUFBVTtZQUNWLFVBQVU7WUFDVixhQUFhO1lBQ2IsYUFBYTtTQUNkLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxVQUFVO1FBQ2pCLDRDQUE0QztRQUM1QyxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRVEsSUFBSTtRQUNYLGtFQUFrRTtRQUNsRSxPQUFPO0lBQ1QsQ0FBQztJQUVRLE9BQU87UUFDZCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDckMsQ0FBQztDQUNGO0FBakNDO0lBSEMsSUFBQSw2Q0FBcUIsRUFBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBaUQsRUFBRSxFQUFFLENBQ25HLElBQUEsZ0JBQU8sRUFBQyxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FDNUM7dUZBbUJBO0FBakNILDREQWdEQyJ9
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ApiErrorHandler = void 0;
|
|
4
4
|
const core_1 = require("@apollo/client/core");
|
|
5
5
|
const lodash_1 = require("lodash");
|
|
6
|
-
const TimeoutLink_1 = require("../api/apollo/TimeoutLink");
|
|
7
6
|
const sdk_1 = require("@stigg/api-client-js/src/generated/sdk");
|
|
7
|
+
const OperationTimeoutError_1 = require("../api/apollo/OperationTimeoutError");
|
|
8
8
|
class ExtendedError extends Error {
|
|
9
9
|
constructor(message, errorCode, traceId) {
|
|
10
10
|
super(message);
|
|
@@ -62,7 +62,7 @@ class ApiErrorHandler {
|
|
|
62
62
|
this.loggerService.error(`${errorMessagePrefix}: ${err.message}`, err);
|
|
63
63
|
return undefined;
|
|
64
64
|
}
|
|
65
|
-
if (err instanceof core_1.ApolloError &&
|
|
65
|
+
if (err instanceof core_1.ApolloError && err.networkError instanceof OperationTimeoutError_1.OperationTimeoutError) {
|
|
66
66
|
throw new ExtendedError(`${errorMessagePrefix}: Request timed out`, 'RequestTimeout');
|
|
67
67
|
}
|
|
68
68
|
throw new ExtendedError(`${errorMessagePrefix}: ${errorMessage}`, errorCode, traceId);
|
|
@@ -70,4 +70,4 @@ class ApiErrorHandler {
|
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
exports.ApiErrorHandler = ApiErrorHandler;
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpRXJyb3JIYW5kbGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9hcGlFcnJvckhhbmRsaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQUFrRDtBQUNsRCxtQ0FBaUM7QUFJakMsZ0VBQW1FO0FBRW5FLCtFQUE0RTtBQUU1RSxNQUFNLGFBQWMsU0FBUSxLQUFLO0lBSS9CLFlBQVksT0FBZSxFQUFFLFNBQWtCLEVBQUUsT0FBZ0I7UUFDL0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztDQUNGO0FBV0QsU0FBUyxnQkFBZ0IsQ0FBQyxHQUFxQzs7SUFDN0QsSUFBSSxZQUFZLEdBQUcsR0FBRyxDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUM7SUFDbEQsSUFBSSxTQUE2QixDQUFDO0lBQ2xDLElBQUksT0FBMkIsQ0FBQztJQUVoQyxNQUFNLFdBQVcsR0FBRyxHQUFrQixDQUFDO0lBQ3ZDLElBQUksQ0FBQyxJQUFBLGdCQUFPLEVBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUMsWUFBWSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDaEMsU0FBUyxHQUFHLE1BQUEsUUFBUSxDQUFDLFVBQVUsMENBQUUsSUFBYyxDQUFDO1FBQ2hELE9BQU8sR0FBRyxNQUFBLFFBQVEsQ0FBQyxVQUFVLDBDQUFFLE9BQWlCLENBQUM7S0FDbEQ7U0FBTSxJQUFJLENBQUMsSUFBQSxnQkFBTyxFQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsRUFBRTtRQUM3QyxzRUFBc0U7UUFDdEUsTUFBTSxPQUFPLEdBQUcsQ0FBQSxNQUFBLE1BQUEsV0FBVyxDQUFDLFlB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
|