@stigg/node-server-sdk 2.40.0 → 2.41.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.
|
@@ -37,7 +37,7 @@ const intializeStiggDependencies = (isPersistedCacheEnabled, sdkConfiguration, l
|
|
|
37
37
|
let inMemoryCacheService = null;
|
|
38
38
|
let entitlementsService;
|
|
39
39
|
if (!isPersistedCacheEnabled) {
|
|
40
|
-
inMemoryCacheService = new inMemoryCacheService_1.InMemoryCacheService();
|
|
40
|
+
inMemoryCacheService = new inMemoryCacheService_1.InMemoryCacheService(sdkConfiguration.memoryCacheMaxSizeBytes);
|
|
41
41
|
}
|
|
42
42
|
const graphqlClient = (0, initApolloClient_1.default)(Object.assign(Object.assign({}, sdkConfiguration), { onConnected: (inMemoryCacheService === null || inMemoryCacheService === void 0 ? void 0 : inMemoryCacheService.clearCache) || Promise.resolve, loggerService }));
|
|
43
43
|
const batchedGraphClient = (0, initApolloClient_1.initBatchedApolloClient)(sdkConfiguration, loggerService);
|
|
@@ -56,4 +56,4 @@ const intializeStiggDependencies = (isPersistedCacheEnabled, sdkConfiguration, l
|
|
|
56
56
|
return { eventEmitter, entitlementsService, managementApi, sdkConfigurationApi };
|
|
57
57
|
};
|
|
58
58
|
exports.intializeStiggDependencies = intializeStiggDependencies;
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50SW5pdGlhbGl6YXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2xpZW50SW5pdGlhbGl6YXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLDBEQUE0RDtBQUM1RCxnRkFBNkU7QUFFN0UsMkVBQW1GO0FBQ25GLGtGQUErRTtBQUMvRSwwRUFBdUU7QUFDdkUsd0ZBQXFGO0FBQ3JGLHdFQUFnRDtBQUNoRCxvRkFBNEQ7QUFDNUQsNERBQXlEO0FBRWxELE1BQU0sMEJBQTBCLEdBQUcsQ0FDeEMsdUJBQWdDLEVBQ2hDLGdCQUErQyxFQUMvQyxhQUE0QixFQUM1QixFQUFFO0lBQ0YsTUFBTSxZQUFZLEdBQUcsSUFBSSxnQ0FBaUIsRUFBRSxDQUFDO0lBQzdDLElBQUksb0JBQW9CLEdBQWdDLElBQUksQ0FBQztJQUM3RCxJQUFJLG1CQUF3QyxDQUFDO0lBRTdDLElBQUksQ0FBQyx1QkFBdUIsRUFBRTtRQUM1QixvQkFBb0IsR0FBRyxJQUFJLDJDQUFvQixDQUFDLGdCQUFnQixDQUFDLHVCQUF1QixDQUFDLENBQUM7S0FDM0Y7SUFFRCxNQUFNLGFBQWEsR0FBRyxJQUFBLDBCQUFnQixrQ0FDakMsZ0JBQWdCLEtBQ25CLFdBQVcsRUFBRSxDQUFBLG9CQUFvQixhQUFwQixvQkFBb0IsdUJBQXBCLG9CQUFvQixDQUFFLFVBQVUsS0FBSSxPQUFPLENBQUMsT0FBTyxFQUNoRSxhQUFhLElBQ2IsQ0FBQztJQUVILE1BQU0sa0JBQWtCLEdBQUcsSUFBQSwwQ0FBdUIsRUFBQyxnQkFBZ0IsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNwRixNQUFNLGFBQWEsR0FBRyw2QkFBYSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUU1RSxJQUFJLHVCQUF1QixFQUFFO1FBQzNCLG1CQUFtQixHQUFHLElBQUksbURBQXdCLENBQ2hELGdCQUFnQixDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFDeEMsSUFBSSxxQ0FBaUIsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLEVBQzVELGFBQWEsRUFDYixhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLGFBQWEsQ0FDZCxDQUFDO0tBQ0g7U0FBTSxJQUFJLG9CQUFvQixFQUFFO1FBQy9CLG1CQUFtQixHQUFHLElBQUkseURBQTJCLENBQ25ELG9CQUFvQixFQUNwQixhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLFlBQVksRUFDWixhQUFhLEVBQ2IsYUFBYSxDQUNkLENBQUM7S0FDSDtTQUFNO1FBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0tBQzdDO0lBRUQsTUFBTSxhQUFhLEdBQUcsSUFBSSx1QkFBYSxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUV0RSxNQUFNLG1CQUFtQixHQUFHLElBQUksNkJBQW1CLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2xGLE9BQU8sRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLENBQUM7QUFDbkYsQ0FBQyxDQUFDO0FBaERXLFFBQUEsMEJBQTBCLDhCQWdEckMifQ==
|
package/dist/configuration.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ declare type ClientConfiguration = {
|
|
|
18
18
|
enableEdge?: boolean;
|
|
19
19
|
redis?: StiggRedisOptions;
|
|
20
20
|
entitlementsFallback?: EntitlementsFallback;
|
|
21
|
+
memoryCacheMaxSizeBytes?: number;
|
|
21
22
|
};
|
|
22
23
|
declare function getConfiguration(configuration: Partial<ClientConfiguration>): Required<ClientConfiguration>;
|
|
23
24
|
/**
|
package/dist/configuration.js
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.validateConfiguration = exports.getConfiguration = exports.SDK_NAME = exports.SDK_SOURCE_TYPE = void 0;
|
|
4
7
|
const sdk_1 = require("@stigg/api-client-js/src/generated/sdk");
|
|
5
8
|
const loggerService_1 = require("./services/loggerService");
|
|
6
9
|
const lodash_1 = require("lodash");
|
|
10
|
+
const v8_1 = __importDefault(require("v8"));
|
|
7
11
|
exports.SDK_SOURCE_TYPE = sdk_1.SourceType.NodeServerSdk;
|
|
8
12
|
exports.SDK_NAME = 'node-server-sdk';
|
|
13
|
+
function getDefaultMemoryCacheMaxSizeBytes() {
|
|
14
|
+
return v8_1.default.getHeapStatistics().total_available_size * 0.75;
|
|
15
|
+
}
|
|
9
16
|
const defaults = () => {
|
|
10
17
|
const baseUri = 'https://api.stigg.io';
|
|
11
18
|
return {
|
|
@@ -18,6 +25,7 @@ const defaults = () => {
|
|
|
18
25
|
},
|
|
19
26
|
realtimeUpdatesEnabled: true,
|
|
20
27
|
enableEdge: true,
|
|
28
|
+
memoryCacheMaxSizeBytes: getDefaultMemoryCacheMaxSizeBytes(),
|
|
21
29
|
};
|
|
22
30
|
};
|
|
23
31
|
function getConfiguration(configuration) {
|
|
@@ -68,4 +76,4 @@ function validateConfiguration(configuration, loggerService) {
|
|
|
68
76
|
}
|
|
69
77
|
}
|
|
70
78
|
exports.validateConfiguration = validateConfiguration;
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdFQUFvRTtBQUNwRSw0REFBcUY7QUFFckYsbUNBQStCO0FBRS9CLDRDQUFvQjtBQUVQLFFBQUEsZUFBZSxHQUFHLGdCQUFVLENBQUMsYUFBYSxDQUFDO0FBQzNDLFFBQUEsUUFBUSxHQUFHLGlCQUFpQixDQUFDO0FBaUIxQyxTQUFTLGlDQUFpQztJQUN4QyxPQUFPLFlBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQztBQUM1RCxDQUFDO0FBRUQsTUFBTSxRQUFRLEdBQUcsR0FBaUMsRUFBRTtJQUNsRCxNQUFNLE9BQU8sR0FBRyxzQkFBc0IsQ0FBQztJQUN2QyxPQUFPO1FBQ0wsT0FBTztRQUNQLEtBQUssRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO1FBQ3hCLFdBQVcsRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLENBQUM7UUFDdkMsZ0JBQWdCLEVBQUU7WUFDaEIsTUFBTSxFQUFFLE9BQU87WUFDZixRQUFRLEVBQUUsd0JBQVEsQ0FBQyxLQUFLO1NBQ3pCO1FBQ0Qsc0JBQXNCLEVBQUUsSUFBSTtRQUM1QixVQUFVLEVBQUUsSUFBSTtRQUNoQix1QkFBdUIsRUFBRSxpQ0FBaUMsRUFBRTtLQUM3RCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsU0FBUyxnQkFBZ0IsQ0FBQyxhQUEyQztJQUNuRSxNQUFNLGFBQWEsR0FBRyxRQUFRLEVBQUUsQ0FBQztJQUVqQyxNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSztRQUMvQixDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUs7UUFDckIsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPO1lBQ3ZCLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztZQUNqQyxDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUN4QixNQUFNLFdBQVcsR0FBRyxhQUFhLENBQUMsV0FBVztRQUMzQyxDQUFDLENBQUMsYUFBYSxDQUFDLFdBQVc7UUFDM0IsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPO1lBQ3ZCLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO1lBQzFDLENBQUMsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBRTlCLE9BQU8sSUFBQSxjQUFLLEVBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsQ0FBa0MsQ0FBQztBQUN0RyxDQUFDO0FBdUNRLDRDQUFnQjtBQXJDekIsU0FBUyxRQUFRLENBQUMsTUFBYztJQUM5QixNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU1QixJQUFJLEdBQUcsQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFO1FBQzVCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0tBQ3RCO1NBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxLQUFLLFFBQVEsRUFBRTtRQUNwQyxHQUFHLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztLQUN2QjtJQUVELG1FQUFtRTtJQUNuRSxPQUFPLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDckMsQ0FBQztBQUVELFNBQVMsaUJBQWlCLENBQUMsTUFBYztJQUN2QyxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU1QixJQUFJLEdBQUcsQ0FBQyxRQUFRLEtBQUssV0FBVyxFQUFFO1FBQ2hDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDO0tBQ25CO1NBQU07UUFDTCxHQUFHLENBQUMsUUFBUSxHQUFHLFFBQVEsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO0tBQ3ZDO0lBRUQsbUVBQW1FO0lBQ25FLE9BQU8sR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNyQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLHFCQUFxQixDQUFDLGFBQTJDLEVBQUUsYUFBNEI7SUFDdEcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUU7UUFDekIsTUFBTSxLQUFLLEdBQUcsK0NBQStDLENBQUM7UUFDOUQsYUFBYSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ3hCO0FBQ0gsQ0FBQztBQUUrQyxzREFBcUIifQ==
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CacheService, UpdateFeatureUsagePayload } from './cacheService';
|
|
2
2
|
import CachedEntitlement from './cachedEntitlement';
|
|
3
|
+
export declare function getApproxSizeBytes(obj: any): number;
|
|
3
4
|
export declare class InMemoryCacheService implements CacheService {
|
|
4
5
|
private readonly entitlements;
|
|
5
|
-
constructor();
|
|
6
|
+
constructor(maxSizeBytes: number);
|
|
6
7
|
clearCache: () => void;
|
|
7
8
|
setCustomer(environmentPrefix: string, customerId: string, customerEntitlements: Map<string, CachedEntitlement>, resourceId: string | undefined): void;
|
|
8
9
|
getCustomerEntitlements(environmentPrefix: string, customerId: string, resourceId: string | undefined): Map<string, CachedEntitlement> | Promise<Map<string, CachedEntitlement> | null> | null;
|
|
@@ -1,13 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.InMemoryCacheService = void 0;
|
|
3
|
+
exports.InMemoryCacheService = exports.getApproxSizeBytes = void 0;
|
|
4
4
|
const cacheKeysHelpers_1 = require("../../utils/cacheKeysHelpers");
|
|
5
|
+
const lru_cache_1 = require("lru-cache");
|
|
6
|
+
const textEncoder = new TextEncoder();
|
|
7
|
+
function getApproxSizeBytes(obj) {
|
|
8
|
+
return textEncoder.encode(typeof obj === 'string' ? obj : JSON.stringify(obj)).length;
|
|
9
|
+
}
|
|
10
|
+
exports.getApproxSizeBytes = getApproxSizeBytes;
|
|
5
11
|
class InMemoryCacheService {
|
|
6
|
-
constructor() {
|
|
12
|
+
constructor(maxSizeBytes) {
|
|
7
13
|
this.clearCache = () => {
|
|
8
14
|
this.entitlements.clear();
|
|
9
15
|
};
|
|
10
|
-
|
|
16
|
+
const maxSize = maxSizeBytes;
|
|
17
|
+
this.entitlements = new lru_cache_1.LRUCache({
|
|
18
|
+
maxSize,
|
|
19
|
+
sizeCalculation: (value) => getApproxSizeBytes(value),
|
|
20
|
+
});
|
|
11
21
|
}
|
|
12
22
|
setCustomer(environmentPrefix, customerId, customerEntitlements, resourceId) {
|
|
13
23
|
const cachedCustomerKey = (0, cacheKeysHelpers_1.buildCachedCustomerKey)(customerId, resourceId);
|
|
@@ -34,4 +44,4 @@ class InMemoryCacheService {
|
|
|
34
44
|
}
|
|
35
45
|
}
|
|
36
46
|
exports.InMemoryCacheService = InMemoryCacheService;
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5NZW1vcnlDYWNoZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvY2FjaGUvaW5NZW1vcnlDYWNoZVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsbUVBQXNFO0FBQ3RFLHlDQUFxQztBQUdyQyxNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO0FBRXRDLFNBQWdCLGtCQUFrQixDQUFDLEdBQVE7SUFDekMsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0FBQ3hGLENBQUM7QUFGRCxnREFFQztBQUVELE1BQWEsb0JBQW9CO0lBRy9CLFlBQVksWUFBb0I7UUFRaEMsZUFBVSxHQUFHLEdBQUcsRUFBRTtZQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQztRQVRBLE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksb0JBQVEsQ0FBeUM7WUFDdkUsT0FBTztZQUNQLGVBQWUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDO1NBQ3RELENBQUMsQ0FBQztJQUNMLENBQUM7SUFNRCxXQUFXLENBQ1QsaUJBQXlCLEVBQ3pCLFVBQWtCLEVBQ2xCLG9CQUFvRCxFQUNwRCxVQUE4QjtRQUU5QixNQUFNLGlCQUFpQixHQUFHLElBQUEseUNBQXNCLEVBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLG9CQUFvQixDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELHVCQUF1QixDQUNyQixpQkFBeUIsRUFDekIsVUFBa0IsRUFDbEIsVUFBOEI7UUFFOUIsTUFBTSxpQkFBaUIsR0FBRyxJQUFBLHlDQUFzQixFQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN6RSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksSUFBSSxDQUFDO0lBQzFELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxFQUNqQixVQUFVLEVBQ1YsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsYUFBYSxHQUNhO1FBQzFCLE1BQU0saUJBQWlCLEdBQUcsSUFBQSx5Q0FBc0IsRUFBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDekUsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sMEJBQTBCLEdBQUcsb0JBQW9CLGFBQXBCLG9CQUFvQix1QkFBcEIsb0JBQW9CLENBQUUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXhFLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLDBCQUEwQixFQUFFO1lBQ3hELGtGQUFrRjtZQUNsRixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsTUFBTSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsRUFBRSxHQUFHLDBCQUEwQixDQUFDO1FBRWpHLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUU7WUFDbEMscUJBQXFCO1lBQ3JCLFlBQVksa0NBQU8sb0JBQW9CLEtBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxhQUFhLEdBQUU7U0FDdEYsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0Y7QUEzREQsb0RBMkRDIn0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stigg/node-server-sdk",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.41.0",
|
|
4
4
|
"description": "Stigg server-side node SDK",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -46,6 +46,7 @@
|
|
|
46
46
|
"isomorphic-ws": "^4.0.1",
|
|
47
47
|
"lint-staged": "^11.2.3",
|
|
48
48
|
"lodash": "^4.17.21",
|
|
49
|
+
"lru-cache": "^10.0.1",
|
|
49
50
|
"nanoid": "^3.3.2",
|
|
50
51
|
"redlock": "^5.0.0-beta.2",
|
|
51
52
|
"tiny-typed-emitter": "^2.1.0",
|