@stigg/node-server-sdk 3.24.2 → 3.25.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/client.js +33 -10
- package/dist/configuration.d.ts +14 -0
- package/dist/configuration.js +1 -1
- package/dist/services/cache/RedisSingleExecutionService/RedisSingleExecution.d.ts +28 -0
- package/dist/services/cache/RedisSingleExecutionService/RedisSingleExecution.js +187 -0
- package/dist/services/cache/RedisSingleExecutionService/RedisSingleExecution.utils.d.ts +26 -0
- package/dist/services/cache/RedisSingleExecutionService/RedisSingleExecution.utils.js +18 -0
- package/dist/services/cache/RedisSingleExecutionService/index.d.ts +1 -0
- package/dist/services/cache/RedisSingleExecutionService/index.js +6 -0
- package/dist/services/cache/cacheService.d.ts +5 -3
- package/dist/services/cache/inMemoryCacheService.d.ts +2 -1
- package/dist/services/cache/inMemoryCacheService.js +4 -2
- package/dist/services/cache/redisCacheService.d.ts +6 -2
- package/dist/services/cache/redisCacheService.js +40 -14
- package/dist/services/entitlementsService.d.ts +34 -8
- package/dist/services/entitlementsService.js +45 -58
- package/dist/services/inMemoryEntitlementsService.d.ts +3 -1
- package/dist/services/inMemoryEntitlementsService.js +97 -61
- package/dist/services/redisEntitlementsService.d.ts +8 -4
- package/dist/services/redisEntitlementsService.js +67 -50
- package/dist/types.d.ts +1 -0
- package/dist/types.js +3 -0
- package/dist/utils/ModelMapper.js +4 -3
- package/dist/utils/cacheKeysHelpers.d.ts +1 -1
- package/dist/utils/cacheKeysHelpers.js +11 -4
- package/dist/utils/isMetered.d.ts +7 -0
- package/dist/utils/isMetered.js +13 -0
- package/package.json +1 -1
|
@@ -4,9 +4,16 @@ exports.buildUsageKey = exports.buildCustomerKey = exports.buildCachedCustomerKe
|
|
|
4
4
|
const CUSTOMER_PREFIX = 'c_';
|
|
5
5
|
const RESOURCE_PREFIX = 'r_';
|
|
6
6
|
const FEATURE_PREFIX = 'f_';
|
|
7
|
-
function buildLockKey(environmentPrefix, customerId, resourceId) {
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
function buildLockKey(environmentPrefix, customerId, resourceId, operationName) {
|
|
8
|
+
let lockKey = environmentPrefix;
|
|
9
|
+
if (operationName) {
|
|
10
|
+
lockKey = `${lockKey}:${operationName}`;
|
|
11
|
+
}
|
|
12
|
+
lockKey = `${lockKey}-${customerId}`; // using - instead of : for backward compatability
|
|
13
|
+
if (resourceId) {
|
|
14
|
+
lockKey = `${lockKey}:${resourceId}`;
|
|
15
|
+
}
|
|
16
|
+
return lockKey;
|
|
10
17
|
}
|
|
11
18
|
exports.buildLockKey = buildLockKey;
|
|
12
19
|
const buildCachedCustomerKey = (customerId, resourceId) => {
|
|
@@ -28,4 +35,4 @@ const buildUsageKey = (environmentPrefix, customerId, featureId, resourceId) =>
|
|
|
28
35
|
return `${key}:${FEATURE_PREFIX}${featureId}`;
|
|
29
36
|
};
|
|
30
37
|
exports.buildUsageKey = buildUsageKey;
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVLZXlzSGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9jYWNoZUtleXNIZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQztBQUM3QixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUM7QUFDN0IsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDO0FBRTVCLFNBQWdCLFlBQVksQ0FDMUIsaUJBQXlCLEVBQ3pCLFVBQWtCLEVBQ2xCLFVBQThCLEVBQzlCLGFBQXNCO0lBRXRCLElBQUksT0FBTyxHQUFHLGlCQUFpQixDQUFDO0lBRWhDLElBQUksYUFBYSxFQUFFO1FBQ2pCLE9BQU8sR0FBRyxHQUFHLE9BQU8sSUFBSSxhQUFhLEVBQUUsQ0FBQztLQUN6QztJQUVELE9BQU8sR0FBRyxHQUFHLE9BQU8sSUFBSSxVQUFVLEVBQUUsQ0FBQyxDQUFDLGtEQUFrRDtJQUV4RixJQUFJLFVBQVUsRUFBRTtRQUNkLE9BQU8sR0FBRyxHQUFHLE9BQU8sSUFBSSxVQUFVLEVBQUUsQ0FBQztLQUN0QztJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFuQkQsb0NBbUJDO0FBRU0sTUFBTSxzQkFBc0IsR0FBRyxDQUFDLFVBQWtCLEVBQUUsVUFBOEIsRUFBVSxFQUFFO0lBQ25HLElBQUksR0FBRyxHQUFHLEdBQUcsZUFBZSxHQUFHLFVBQVUsRUFBRSxDQUFDO0lBQzVDLElBQUksVUFBVSxFQUFFO1FBQ2QsTUFBTSxXQUFXLEdBQUcsR0FBRyxlQUFlLEdBQUcsVUFBVSxFQUFFLENBQUM7UUFDdEQsR0FBRyxHQUFHLEdBQUcsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO0tBQy9CO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLENBQUM7QUFSVyxRQUFBLHNCQUFzQiwwQkFRakM7QUFFSyxNQUFNLGdCQUFnQixHQUFHLENBQUMsaUJBQXlCLEVBQUUsVUFBa0IsRUFBRSxVQUE4QixFQUFFLEVBQUU7SUFDaEgsTUFBTSxXQUFXLEdBQUcsSUFBQSw4QkFBc0IsRUFBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDbkUsT0FBTyxHQUFHLGlCQUFpQixJQUFJLFdBQVcsRUFBRSxDQUFDO0FBQy9DLENBQUMsQ0FBQztBQUhXLFFBQUEsZ0JBQWdCLG9CQUczQjtBQUVLLE1BQU0sYUFBYSxHQUFHLENBQzNCLGlCQUF5QixFQUN6QixVQUFrQixFQUNsQixTQUFpQixFQUNqQixVQUE4QixFQUM5QixFQUFFO0lBQ0YsTUFBTSxHQUFHLEdBQUcsSUFBQSx3QkFBZ0IsRUFBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFFeEUsT0FBTyxHQUFHLEdBQUcsSUFBSSxjQUFjLEdBQUcsU0FBUyxFQUFFLENBQUM7QUFDaEQsQ0FBQyxDQUFDO0FBVFcsUUFBQSxhQUFhLGlCQVN4QiJ9
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isMetered = void 0;
|
|
4
|
+
const sdk_1 = require("@stigg/api-client-js/src/generated/sdk");
|
|
5
|
+
const lodash_1 = require("lodash");
|
|
6
|
+
const METERED_TYPES = [sdk_1.MeterType.Incremental, sdk_1.MeterType.Fluctuating];
|
|
7
|
+
function isMetered(feature) {
|
|
8
|
+
return ((feature === null || feature === void 0 ? void 0 : feature.featureType) === sdk_1.FeatureType.Number &&
|
|
9
|
+
!(0, lodash_1.isNil)(feature.meterType) &&
|
|
10
|
+
METERED_TYPES.includes(feature.meterType));
|
|
11
|
+
}
|
|
12
|
+
exports.isMetered = isMetered;
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNNZXRlcmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2lzTWV0ZXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnRUFBZ0Y7QUFDaEYsbUNBQStCO0FBTy9CLE1BQU0sYUFBYSxHQUFHLENBQUMsZUFBUyxDQUFDLFdBQVcsRUFBRSxlQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFckUsU0FBZ0IsU0FBUyxDQUFDLE9BQWlCO0lBQ3pDLE9BQU8sQ0FDTCxDQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxXQUFXLE1BQUssaUJBQVcsQ0FBQyxNQUFNO1FBQzNDLENBQUMsSUFBQSxjQUFLLEVBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUN6QixhQUFhLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FDMUMsQ0FBQztBQUNKLENBQUM7QUFORCw4QkFNQyJ9
|