@stigg/node-server-sdk 4.36.0 → 4.38.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/entitlements/entitlementsApi.d.ts +1 -1
- package/dist/api/managementApi.d.ts +1 -1
- package/dist/client.d.ts +1 -2
- package/dist/client.js +19 -23
- package/dist/clientInitialization.js +5 -4
- package/dist/configuration.d.ts +1 -1
- package/dist/models/index.d.ts +10 -0
- package/dist/models/index.js +33 -0
- package/dist/services/LegacyEventPayloadMapper.js +3 -3
- package/dist/services/entitlementsService.d.ts +6 -3
- package/dist/services/entitlementsService.js +26 -91
- package/dist/services/identifiers.d.ts +0 -1
- package/dist/services/identifiers.js +1 -6
- package/dist/services/inMemoryEntitlementsService.d.ts +2 -1
- package/dist/services/inMemoryEntitlementsService.js +1 -1
- package/dist/services/inMemoryLruCacheService.d.ts +6 -0
- package/dist/services/inMemoryLruCacheService.js +20 -0
- package/dist/services/redisEntitlementsService.d.ts +1 -1
- package/dist/services/redisEntitlementsService.js +1 -1
- package/package.json +5 -4
- package/dist/models.d.ts +0 -946
- package/dist/models.js +0 -80
- package/dist/services/entitlementDecisionService.d.ts +0 -20
- package/dist/services/entitlementDecisionService.js +0 -80
- package/dist/utils/ModelMapper.d.ts +0 -61
- package/dist/utils/ModelMapper.js +0 -623
- package/dist/utils/entitlementFallbackUtils.d.ts +0 -23
- package/dist/utils/entitlementFallbackUtils.js +0 -66
- package/dist/utils/entitlementTypeGuards.d.ts +0 -6
- package/dist/utils/entitlementTypeGuards.js +0 -11
- package/dist/utils/mapGetEntitlementsFallback.d.ts +0 -2
- package/dist/utils/mapGetEntitlementsFallback.js +0 -14
|
@@ -16,9 +16,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.EntitlementsService = void 0;
|
|
18
18
|
const entitlementsApi_1 = __importDefault(require("../api/entitlements/entitlementsApi"));
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const entitlementDecisionService_1 = require("./entitlementDecisionService");
|
|
19
|
+
const sdk_core_1 = require("@stigg/sdk-core");
|
|
20
|
+
const sdk_core_2 = require("@stigg/sdk-core");
|
|
22
21
|
const cache_core_1 = require("@stigg/cache-core");
|
|
23
22
|
const lodash_1 = require("lodash");
|
|
24
23
|
const cache_core_2 = require("@stigg/cache-core");
|
|
@@ -28,152 +27,93 @@ class EntitlementsService {
|
|
|
28
27
|
this.cacheService = cacheService;
|
|
29
28
|
this.entitlementsTimeout = entitlementsTimeout;
|
|
30
29
|
this.isInitialized = false;
|
|
31
|
-
this.modelMapper = new
|
|
30
|
+
this.modelMapper = new sdk_core_1.ModelMapper();
|
|
31
|
+
this.evaluator = new sdk_core_2.EntitlementEvaluator(this.modelMapper);
|
|
32
32
|
this.entitlementsApi = new entitlementsApi_1.default(client, edgeApiClient, loggerService);
|
|
33
33
|
}
|
|
34
34
|
async getBooleanEntitlement(customerId, featureRefId, fallbackEntitlement, resourceId,
|
|
35
35
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars -- kept for API compatibility
|
|
36
36
|
options) {
|
|
37
37
|
const { entitlement, accessDeniedReason } = await this.getCustomerAndEntitlementFromCacheOrRefetch({ type: cache_core_1.EntitlementType.Feature, id: featureRefId }, customerId, resourceId, 'getBooleanEntitlement');
|
|
38
|
-
const
|
|
39
|
-
entitlementType: cache_core_1.EntitlementType.Feature,
|
|
40
|
-
accessDeniedReason,
|
|
41
|
-
entitlement,
|
|
42
|
-
});
|
|
43
|
-
if (entitlement && !(0, cache_core_2.isBoolean)(entitlement.calculatedEntitlement.feature)) {
|
|
44
|
-
return Object.assign(Object.assign({}, fallbackEntitlement), { accessDeniedReason: cache_core_1.AccessDeniedReason.FeatureTypeMismatch });
|
|
45
|
-
}
|
|
38
|
+
const result = this.evaluator.evaluateBooleanEntitlement(entitlement, accessDeniedReason, fallbackEntitlement);
|
|
46
39
|
if (!entitlement) {
|
|
47
40
|
this.loggerService.log(`No entitlement for boolean feature found`, {
|
|
48
41
|
customerId,
|
|
49
42
|
resourceId,
|
|
50
43
|
featureRefId,
|
|
51
|
-
accessDeniedReason:
|
|
44
|
+
accessDeniedReason: result.accessDeniedReason,
|
|
52
45
|
});
|
|
53
|
-
return Object.assign(Object.assign({ type: 'BOOLEAN' }, decision), { isFallback: false });
|
|
54
46
|
}
|
|
55
|
-
return
|
|
47
|
+
return result;
|
|
56
48
|
}
|
|
57
49
|
async getNumericEntitlement(customerId, featureRefId, fallbackEntitlement, resourceId,
|
|
58
50
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars -- kept for API compatibility
|
|
59
51
|
options) {
|
|
60
52
|
const { entitlement, accessDeniedReason } = await this.getCustomerAndEntitlementFromCacheOrRefetch({ type: cache_core_1.EntitlementType.Feature, id: featureRefId }, customerId, resourceId, 'getNumericEntitlement');
|
|
61
|
-
const
|
|
62
|
-
entitlementType: cache_core_1.EntitlementType.Feature,
|
|
63
|
-
accessDeniedReason,
|
|
64
|
-
entitlement,
|
|
65
|
-
});
|
|
66
|
-
if (entitlement && !(0, cache_core_2.isNumeric)(entitlement.calculatedEntitlement.feature)) {
|
|
67
|
-
return Object.assign(Object.assign({}, fallbackEntitlement), { accessDeniedReason: cache_core_1.AccessDeniedReason.FeatureTypeMismatch });
|
|
68
|
-
}
|
|
53
|
+
const result = this.evaluator.evaluateNumericEntitlement(entitlement, accessDeniedReason, fallbackEntitlement);
|
|
69
54
|
if (!entitlement) {
|
|
70
55
|
this.loggerService.log(`No entitlement for numeric feature found`, {
|
|
71
56
|
customerId,
|
|
72
57
|
resourceId,
|
|
73
58
|
featureRefId,
|
|
74
|
-
accessDeniedReason:
|
|
59
|
+
accessDeniedReason: result.accessDeniedReason,
|
|
75
60
|
});
|
|
76
|
-
return Object.assign(Object.assign({ type: 'NUMERIC' }, decision), { isFallback: false, isUnlimited: false });
|
|
77
61
|
}
|
|
78
|
-
return
|
|
62
|
+
return result;
|
|
79
63
|
}
|
|
80
64
|
async getMeteredEntitlement(customerId, featureRefId, fallbackEntitlement, resourceId, options) {
|
|
81
65
|
const requestUsage = options === null || options === void 0 ? void 0 : options.requestedUsage;
|
|
82
66
|
const { entitlement, accessDeniedReason } = await this.getCustomerAndEntitlementFromCacheOrRefetch({ type: cache_core_1.EntitlementType.Feature, id: featureRefId }, customerId, resourceId, 'getMeteredEntitlement');
|
|
83
|
-
const
|
|
84
|
-
entitlementType: cache_core_1.EntitlementType.Feature,
|
|
85
|
-
accessDeniedReason,
|
|
86
|
-
entitlement,
|
|
87
|
-
requestedUsage: requestUsage,
|
|
88
|
-
});
|
|
89
|
-
if (entitlement && !(0, cache_core_2.isMetered)(entitlement.calculatedEntitlement.feature)) {
|
|
90
|
-
return Object.assign(Object.assign({}, fallbackEntitlement), { accessDeniedReason: cache_core_1.AccessDeniedReason.FeatureTypeMismatch });
|
|
91
|
-
}
|
|
67
|
+
const result = this.evaluator.evaluateMeteredEntitlement(entitlement, accessDeniedReason, fallbackEntitlement, requestUsage);
|
|
92
68
|
if (!entitlement) {
|
|
93
69
|
this.loggerService.log(`No entitlement for metered feature found`, {
|
|
94
70
|
customerId,
|
|
95
71
|
resourceId,
|
|
96
72
|
featureRefId,
|
|
97
|
-
accessDeniedReason:
|
|
73
|
+
accessDeniedReason: result.accessDeniedReason,
|
|
98
74
|
});
|
|
99
|
-
return Object.assign(Object.assign({ type: 'METERED' }, decision), { currentUsage: 0, isFallback: false, isUnlimited: false, hasSoftLimit: false, requestedUsage: requestUsage || 0 });
|
|
100
75
|
}
|
|
101
|
-
return
|
|
76
|
+
return result;
|
|
102
77
|
}
|
|
103
78
|
async getEnumEntitlement(customerId, featureRefId, fallbackEntitlement, resourceId, options) {
|
|
104
79
|
const requestedValues = options === null || options === void 0 ? void 0 : options.requestedValues;
|
|
105
80
|
const { entitlement, accessDeniedReason } = await this.getCustomerAndEntitlementFromCacheOrRefetch({ type: cache_core_1.EntitlementType.Feature, id: featureRefId }, customerId, resourceId, 'getEnumEntitlement');
|
|
106
|
-
const
|
|
107
|
-
entitlementType: cache_core_1.EntitlementType.Feature,
|
|
108
|
-
accessDeniedReason,
|
|
109
|
-
entitlement,
|
|
110
|
-
requestedValues,
|
|
111
|
-
});
|
|
112
|
-
if (entitlement && !(0, cache_core_2.isEnum)(entitlement.calculatedEntitlement.feature)) {
|
|
113
|
-
return Object.assign(Object.assign({}, fallbackEntitlement), { accessDeniedReason: cache_core_1.AccessDeniedReason.FeatureTypeMismatch });
|
|
114
|
-
}
|
|
81
|
+
const result = this.evaluator.evaluateEnumEntitlement(entitlement, accessDeniedReason, fallbackEntitlement, requestedValues);
|
|
115
82
|
if (!entitlement) {
|
|
116
83
|
this.loggerService.log(`No entitlement for enum feature found`, {
|
|
117
84
|
customerId,
|
|
118
85
|
resourceId,
|
|
119
86
|
featureRefId,
|
|
120
|
-
accessDeniedReason:
|
|
87
|
+
accessDeniedReason: result.accessDeniedReason,
|
|
121
88
|
});
|
|
122
|
-
return Object.assign(Object.assign({ type: 'ENUM' }, decision), { isFallback: false, enumValues: [], requestedValues: requestedValues || [] });
|
|
123
89
|
}
|
|
124
|
-
return
|
|
90
|
+
return result;
|
|
125
91
|
}
|
|
126
92
|
async getCreditEntitlement(customerId, currencyId, resourceId) {
|
|
127
93
|
const { entitlement, accessDeniedReason } = await this.getCustomerAndEntitlementFromCacheOrRefetch({ type: cache_core_1.EntitlementType.Credit, id: currencyId }, customerId, resourceId, 'getCreditEntitlement');
|
|
128
|
-
const
|
|
129
|
-
entitlementType: cache_core_1.EntitlementType.Credit,
|
|
130
|
-
accessDeniedReason,
|
|
131
|
-
entitlement,
|
|
132
|
-
});
|
|
94
|
+
const result = this.evaluator.evaluateCreditEntitlement(entitlement, accessDeniedReason, currencyId);
|
|
133
95
|
if (!entitlement) {
|
|
134
96
|
this.loggerService.log(`No entitlement for credit currency found`, {
|
|
135
97
|
customerId,
|
|
136
98
|
resourceId,
|
|
137
99
|
currencyId,
|
|
138
|
-
accessDeniedReason:
|
|
100
|
+
accessDeniedReason: result.accessDeniedReason,
|
|
139
101
|
});
|
|
140
|
-
return {
|
|
141
|
-
hasAccess: false,
|
|
142
|
-
isFallback: false,
|
|
143
|
-
accessDeniedReason: decision.accessDeniedReason,
|
|
144
|
-
currency: { currencyId },
|
|
145
|
-
usageLimit: 0,
|
|
146
|
-
currentUsage: 0,
|
|
147
|
-
remaining: 0,
|
|
148
|
-
};
|
|
149
102
|
}
|
|
150
|
-
return
|
|
103
|
+
return result;
|
|
151
104
|
}
|
|
152
105
|
async getEntitlement(entitlementReference, customerRefId, resourceId, options, fallbackEntitlement) {
|
|
153
|
-
var _a;
|
|
154
|
-
const requestedUsage = (0, entitlementFallbackUtils_1.isMeteredEntitlementOptions)(options) ? options.requestedUsage : undefined;
|
|
155
|
-
const requestedValues = (0, entitlementFallbackUtils_1.isEnumEntitlementOptions)(options) ? options.requestedValues : undefined;
|
|
156
106
|
const { entitlement, accessDeniedReason } = await this.getCustomerAndEntitlementFromCacheOrRefetch(entitlementReference, customerRefId, resourceId, 'getEntitlement');
|
|
157
|
-
const
|
|
158
|
-
entitlementType: entitlementReference.type,
|
|
159
|
-
accessDeniedReason,
|
|
160
|
-
entitlement,
|
|
161
|
-
requestedUsage,
|
|
162
|
-
requestedValues,
|
|
163
|
-
});
|
|
107
|
+
const result = this.evaluator.evaluateEntitlement(entitlementReference, entitlement, accessDeniedReason, options, fallbackEntitlement);
|
|
164
108
|
if (!entitlement) {
|
|
165
109
|
this.loggerService.log(`No entitlement found for reference`, {
|
|
166
110
|
customerRefId,
|
|
167
111
|
resourceId,
|
|
168
112
|
entitlementReference,
|
|
169
|
-
accessDeniedReason:
|
|
113
|
+
accessDeniedReason: result.accessDeniedReason,
|
|
170
114
|
});
|
|
171
|
-
if (fallbackEntitlement) {
|
|
172
|
-
return Object.assign(Object.assign({}, fallbackEntitlement), { accessDeniedReason: (_a = decision.accessDeniedReason) !== null && _a !== void 0 ? _a : fallbackEntitlement.accessDeniedReason, isFallback: true });
|
|
173
|
-
}
|
|
174
|
-
return (0, entitlementFallbackUtils_1.getEntitlementV2FallbackFromOptions)(entitlementReference, options, decision.accessDeniedReason);
|
|
175
115
|
}
|
|
176
|
-
return
|
|
116
|
+
return result;
|
|
177
117
|
}
|
|
178
118
|
async getCustomerAndEntitlementFromCacheOrRefetch(query, customerId, resourceId, triggeredBy) {
|
|
179
119
|
var _a, _b;
|
|
@@ -208,14 +148,9 @@ class EntitlementsService {
|
|
|
208
148
|
return { entitlements: [], accessDeniedReason: accessDeniedReason !== null && accessDeniedReason !== void 0 ? accessDeniedReason : null };
|
|
209
149
|
}
|
|
210
150
|
return {
|
|
211
|
-
entitlements: entitlements
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
accessDeniedReason,
|
|
215
|
-
entitlement: value,
|
|
216
|
-
});
|
|
217
|
-
return this.modelMapper.mapEntitlement(value, decision);
|
|
218
|
-
}),
|
|
151
|
+
entitlements: entitlements
|
|
152
|
+
.values()
|
|
153
|
+
.map((value) => this.evaluator.evaluateEntitlement(value.getEntitlementQuery(), value, accessDeniedReason)),
|
|
219
154
|
accessDeniedReason: accessDeniedReason !== null && accessDeniedReason !== void 0 ? accessDeniedReason : null,
|
|
220
155
|
};
|
|
221
156
|
}
|
|
@@ -347,4 +282,4 @@ class EntitlementsService {
|
|
|
347
282
|
}
|
|
348
283
|
}
|
|
349
284
|
exports.EntitlementsService = EntitlementsService;
|
|
350
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9lbnRpdGxlbWVudHNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMEZBQWtFO0FBbUJsRSxnRkFJMkM7QUFDM0Msc0RBQW1EO0FBQ25ELDZFQUEwRTtBQUMxRSxrREFXMkI7QUFDM0IsbUNBQXdDO0FBVXhDLGtEQVUyQjtBQU8zQixNQUFzQixtQkFBbUI7SUFNdkMsWUFDRSxNQUEyQyxFQUN4QixhQUE0QixFQUMvQyxhQUFtQyxFQUNoQixZQUFnRCxFQUNsRCxtQkFBMkI7UUFIekIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFFNUIsaUJBQVksR0FBWixZQUFZLENBQW9DO1FBQ2xELHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBUTtRQVBwQyxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQVM5QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUkseUJBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSx5QkFBZSxDQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELEtBQUssQ0FBQyxxQkFBcUIsQ0FDekIsVUFBa0IsRUFDbEIsWUFBb0IsRUFDcEIsbUJBQXVDLEVBQ3ZDLFVBQW1CO0lBQ25CLDJGQUEyRjtJQUMzRixPQUFtQztRQUVuQyxNQUFNLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsMkNBQTJDLENBQ2hHLEVBQUUsSUFBSSxFQUFFLDRCQUFlLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsRUFDbkQsVUFBVSxFQUNWLFVBQVUsRUFDVix1QkFBdUIsQ0FDeEIsQ0FBQztRQUVGLE1BQU0sUUFBUSxHQUFHLHVEQUEwQixDQUFDLHVCQUF1QixDQUFDO1lBQ2xFLGVB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
|
|
285
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9lbnRpdGxlbWVudHNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMEZBQWtFO0FBbUJsRSw4Q0FBOEM7QUFDOUMsOENBQXVEO0FBQ3ZELGtEQVUyQjtBQUMzQixtQ0FBd0M7QUFVeEMsa0RBSzJCO0FBUTNCLE1BQXNCLG1CQUFtQjtJQU92QyxZQUNFLE1BQTJDLEVBQ3hCLGFBQTRCLEVBQy9DLGFBQW1DLEVBQ2hCLFlBQWdELEVBQ2xELG1CQUEyQjtRQUh6QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUU1QixpQkFBWSxHQUFaLFlBQVksQ0FBb0M7UUFDbEQsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFRO1FBUHBDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBUzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxzQkFBVyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLCtCQUFvQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUkseUJBQWUsQ0FBQyxNQUFNLEVBQUUsYUFBYSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxLQUFLLENBQUMscUJBQXFCLENBQ3pCLFVBQWtCLEVBQ2xCLFlBQW9CLEVBQ3BCLG1CQUF1QyxFQUN2QyxVQUFtQjtJQUNuQiwyRkFBMkY7SUFDM0YsT0FBbUM7UUFFbkMsTUFBTSxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLDJDQUEyQyxDQUNoRyxFQUFFLElBQUksRUFBRSw0QkFBZSxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsWUFBWSxFQUFFLEVBQ25ELFVBQVUsRUFDVixVQUFVLEVBQ1YsdUJBQXVCLENBQ3hCLENB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
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateRandomSlug = generateRandomSlug;
|
|
4
3
|
exports.generateRandomUUID = generateRandomUUID;
|
|
5
4
|
const nanoid_1 = require("nanoid");
|
|
6
|
-
const slugNanoid = (0, nanoid_1.customAlphabet)('1234567890abcdef', 6);
|
|
7
|
-
function generateRandomSlug() {
|
|
8
|
-
return slugNanoid();
|
|
9
|
-
}
|
|
10
5
|
function generateRandomUUID() {
|
|
11
6
|
return (0, nanoid_1.nanoid)();
|
|
12
7
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpZmllcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvaWRlbnRpZmllcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFFQSxnREFFQztBQUpELG1DQUFnQztBQUVoQyxTQUFnQixrQkFBa0I7SUFDaEMsT0FBTyxJQUFBLGVBQU0sR0FBRSxDQUFDO0FBQ2xCLENBQUMifQ==
|
|
@@ -2,7 +2,8 @@ import { ApolloClient, NormalizedCacheObject } from '@apollo/client/core';
|
|
|
2
2
|
import { LoggerService } from './loggerService';
|
|
3
3
|
import { TypedEventEmitter } from './eventEmitter';
|
|
4
4
|
import { EntitlementsService } from './entitlementsService';
|
|
5
|
-
import { InMemoryCacheService
|
|
5
|
+
import { InMemoryCacheService } from '@stigg/cache-core';
|
|
6
|
+
import { CacheableEntitlement } from '@stigg/sdk-core';
|
|
6
7
|
import { EdgeApiClient } from './EdgeApiClient';
|
|
7
8
|
import { RefetchEntityEntitlementsAfterCacheMissParams } from './entitlementsService.utils';
|
|
8
9
|
export declare class InMemoryEntitlementsService extends EntitlementsService {
|
|
@@ -174,4 +174,4 @@ exports.InMemoryEntitlementsService = InMemoryEntitlementsService;
|
|
|
174
174
|
__decorate([
|
|
175
175
|
(0, cache_core_1.ReuseOngoingExecution)(({ customerId, resourceId }) => (0, lodash_1.compact)([customerId, resourceId]).join(':'))
|
|
176
176
|
], InMemoryEntitlementsService.prototype, "refetchEntityEntitlementsAfterCacheMiss", null);
|
|
177
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5NZW1vcnlFbnRpdGxlbWVudHNTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL2luTWVtb3J5RW50aXRsZW1lbnRzU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQSx3REFLOEI7QUFHOUIsK0RBQTREO0FBRTVELGtEQUFzRztBQUd0RyxtQ0FBaUM7QUFFakMseUVBQXNHO0FBRXRHLE1BQU0sOEJBQThCLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztBQUVoRCxNQUFhLDJCQUE0QixTQUFRLHlDQUFtQjtJQUtsRSxZQUNxQixZQUF3RCxFQUMzRSxNQUEyQyxFQUMxQixZQUErQixFQUNoRCxhQUE0QixFQUM1QixhQUFtQyxFQUNuQyxtQkFBMkI7UUFFM0IsS0FBSyxDQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBUDVELGlCQUFZLEdBQVosWUFBWSxDQUE0QztRQUUxRCxpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFQMUMsNkJBQXdCLEdBQWtDLElBQUksQ0FBQztRQUMvRCxzQkFBaUIsR0FBa0MsSUFBSSxDQUFDO1FBQ3hELHFCQUFnQixHQUFrQyxJQUFJLENBQUM7SUFXL0QsQ0FBQztJQUVRLElBQUk7UUFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBRTNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVmLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLDRCQUE0QixFQUFFLENBQUMsU0FBUyxDQUMzRixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxFQUM1QyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUMx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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { InMemoryCacheService, CacheInstrumentation, CacheMapper } from '@stigg/cache-core';
|
|
2
|
+
export declare class InMemoryLruCacheService<Input> extends InMemoryCacheService<Input> {
|
|
3
|
+
private static readonly textEncoder;
|
|
4
|
+
static getApproxSizeBytes(obj: any): number;
|
|
5
|
+
constructor(maxSizeBytes: number, instrumentation: CacheInstrumentation, cacheMapper: CacheMapper<Input>);
|
|
6
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InMemoryLruCacheService = void 0;
|
|
4
|
+
const lru_cache_1 = require("lru-cache");
|
|
5
|
+
const cache_core_1 = require("@stigg/cache-core");
|
|
6
|
+
class InMemoryLruCacheService extends cache_core_1.InMemoryCacheService {
|
|
7
|
+
static getApproxSizeBytes(obj) {
|
|
8
|
+
return InMemoryLruCacheService.textEncoder.encode(typeof obj === 'string' ? obj : JSON.stringify(obj)).length;
|
|
9
|
+
}
|
|
10
|
+
constructor(maxSizeBytes, instrumentation, cacheMapper) {
|
|
11
|
+
const store = new lru_cache_1.LRUCache({
|
|
12
|
+
maxSize: maxSizeBytes,
|
|
13
|
+
sizeCalculation: (value) => InMemoryLruCacheService.getApproxSizeBytes(value),
|
|
14
|
+
});
|
|
15
|
+
super(store, instrumentation, cacheMapper);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.InMemoryLruCacheService = InMemoryLruCacheService;
|
|
19
|
+
InMemoryLruCacheService.textEncoder = new TextEncoder();
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5NZW1vcnlMcnVDYWNoZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvaW5NZW1vcnlMcnVDYWNoZVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUNBQXFDO0FBQ3JDLGtEQUF3SDtBQUV4SCxNQUFhLHVCQUErQixTQUFRLGlDQUEyQjtJQUc3RSxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBUTtRQUNoQyxPQUFPLHVCQUF1QixDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDaEgsQ0FBQztJQUVELFlBQVksWUFBb0IsRUFBRSxlQUFxQyxFQUFFLFdBQStCO1FBQ3RHLE1BQU0sS0FBSyxHQUFHLElBQUksb0JBQVEsQ0FBcUM7WUFDN0QsT0FBTyxFQUFFLFlBQVk7WUFDckIsZUFBZSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7U0FDOUUsQ0FBQyxDQUFDO1FBQ0gsS0FBSyxDQUFDLEtBQUssRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDN0MsQ0FBQzs7QUFiSCwwREFjQztBQWJ5QixtQ0FBVyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUMifQ==
|
|
@@ -4,7 +4,7 @@ import { ApolloClient, NormalizedCacheObject } from '@apollo/client/core';
|
|
|
4
4
|
import { LoggerService } from './loggerService';
|
|
5
5
|
import { RedisCacheService } from '@stigg/cache-redis-store';
|
|
6
6
|
import { EdgeApiClient } from './EdgeApiClient';
|
|
7
|
-
import { CacheableEntitlement } from '@stigg/
|
|
7
|
+
import { CacheableEntitlement } from '@stigg/sdk-core';
|
|
8
8
|
export declare class RedisEntitlementsService extends EntitlementsService {
|
|
9
9
|
protected readonly cacheService: RedisCacheService<CacheableEntitlement>;
|
|
10
10
|
protected readonly graphqlClient: ApolloClient<NormalizedCacheObject>;
|
|
@@ -52,4 +52,4 @@ exports.RedisEntitlementsService = RedisEntitlementsService;
|
|
|
52
52
|
__decorate([
|
|
53
53
|
(0, cache_core_1.ReuseOngoingExecution)(({ customerId, resourceId }) => (0, lodash_1.compact)([customerId, resourceId]).join(':'))
|
|
54
54
|
], RedisEntitlementsService.prototype, "refetchEntityEntitlementsAfterCacheMiss", null);
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXNFbnRpdGxlbWVudHNTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL3JlZGlzRW50aXRsZW1lbnRzU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSwrREFBNEQ7QUFNNUQsa0RBQTBEO0FBRTFELG1DQUFpQztBQUVqQyxNQUFhLHdCQUF5QixTQUFRLHlDQUFtQjtJQUMvRCxZQUNxQixZQUFxRCxFQUNyRCxhQUFrRCxFQUNsRCxhQUE0QixFQUMvQyxhQUFtQyxFQUNuQyxtQkFBMkI7UUFFM0IsS0FBSyxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBTm5FLGlCQUFZLEdBQVosWUFBWSxDQUF5QztRQUNyRCxrQkFBYSxHQUFiLGFBQWEsQ0FBcUM7UUFDbEQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFLL0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsQ0FBQyw0Q0FBNEM7SUFDekUsQ0FBQztJQUt3QixBQUFOLEtBQUssQ0FBQyx1Q0FBdUMsQ0FDOUQsTUFBcUQ7UUFFckQsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDO1lBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztRQUMxRSxDQUFDO1FBRUQsTUFBTSxFQUFFLHFDQUFxQyxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUNwRSxJQUFJLENBQUMscUNBQXFDLEVBQUUsQ0FBQztZQUMzQyxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBRUQsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyxNQUFNLENBQUM7UUFDMUMsTUFBTSxhQUFhLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdELE1BQU0sYUFBYSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsdUJBQXVCLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUVsRyxPQUFPLHFDQUFxQyxDQUFDLGtDQUFrQyxDQUFDO1lBQzlFLFVBQVU7WUFDVixVQUFVO1lBQ1YsYUFBYTtZQUNiLGFBQWE7U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsVUFBVTtRQUNqQiw0Q0FBNEM7UUFDNUMsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVRLElBQUk7UUFDWCxrRUFBa0U7UUFDbEUsT0FBTztJQUNULENBQUM7SUFFUSxPQUFPO1FBQ2QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3JDLENBQUM7Q0FDRjtBQXBERCw0REFvREM7QUFyQzBCO0lBSHhCLElBQUEsa0NBQXFCLEVBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQWlELEVBQUUsRUFBRSxDQUNuRyxJQUFBLGdCQUFPLEVBQUMsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQzVDO3VGQXVCQSJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stigg/node-server-sdk",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.38.0",
|
|
4
4
|
"description": "Stigg server-side node SDK",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -31,9 +31,10 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@apollo/client": "~3.14.0",
|
|
33
33
|
"@bitauth/libauth": "^1.17.1",
|
|
34
|
-
"@stigg/api-client-js": "6.
|
|
35
|
-
"@stigg/cache-core": "1.
|
|
36
|
-
"@stigg/cache-redis-store": "1.
|
|
34
|
+
"@stigg/api-client-js": "6.10.0",
|
|
35
|
+
"@stigg/cache-core": "1.11.0",
|
|
36
|
+
"@stigg/cache-redis-store": "1.11.0",
|
|
37
|
+
"@stigg/sdk-core": "2.0.0",
|
|
37
38
|
"@types/ws": "^8.2.3",
|
|
38
39
|
"axios": "^1.8.2",
|
|
39
40
|
"axios-retry": "^4.0.0",
|