mvc-common-toolkit 1.44.9 → 1.45.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -108,6 +108,11 @@ export interface HashCacheService {
108
108
  hdel(key: string, ...fields: string[]): Promise<number>;
109
109
  hexists(key: string, field: string): Promise<number>;
110
110
  }
111
+ export interface SetCacheService {
112
+ sadd(key: string, ...values: string[]): Promise<number>;
113
+ srem(key: string, ...values: string[]): Promise<number>;
114
+ scard(key: string): Promise<number>;
115
+ }
111
116
  export interface ListCacheService {
112
117
  lpush(key: string, value: any): Promise<void>;
113
118
  lset(key: string, index: number, value: any): Promise<void>;
@@ -1,8 +1,4 @@
1
- import { CacheService, IPaginatedDataCache } from "../interfaces";
1
+ import { IPaginatedDataCache } from "../interfaces";
2
2
  export declare class PaginatedCacheRegistry {
3
- protected cacheService: CacheService;
4
3
  protected _registry: Map<string, IPaginatedDataCache<any>>;
5
- constructor(cacheService: CacheService);
6
- has(dataName: string): boolean;
7
- getOrCreatePaginatedCache<T = any>(dataName: string): IPaginatedDataCache<T>;
8
4
  }
@@ -1,23 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PaginatedCacheRegistry = void 0;
4
- const paginated_cache_1 = require("../services/paginated-cache");
5
4
  class PaginatedCacheRegistry {
6
- constructor(cacheService) {
7
- this.cacheService = cacheService;
5
+ constructor() {
8
6
  this._registry = new Map();
9
7
  }
10
- has(dataName) {
11
- return this._registry.has(dataName);
12
- }
13
- getOrCreatePaginatedCache(dataName) {
14
- if (this._registry.has(dataName)) {
15
- return this._registry.get(dataName);
16
- }
17
- const service = new paginated_cache_1.PaginatedDataCache(dataName, this.cacheService);
18
- this._registry.set(dataName, service);
19
- return service;
20
- }
21
8
  }
22
9
  exports.PaginatedCacheRegistry = PaginatedCacheRegistry;
23
10
  //# sourceMappingURL=paginated-cache-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"paginated-cache-registry.js","sourceRoot":"","sources":["../../../src/pkg/paginated-cache-registry.ts"],"names":[],"mappings":";;;AACA,iEAAiE;AAEjE,MAAa,sBAAsB;IAGjC,YAAsB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;QAFtC,cAAS,GAAG,IAAI,GAAG,EAA+B,CAAC;IAEV,CAAC;IAE7C,GAAG,CAAC,QAAgB;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEM,yBAAyB,CAC9B,QAAgB;QAEhB,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YAChC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SACrC;QAED,MAAM,OAAO,GAAG,IAAI,oCAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACpE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEtC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AArBD,wDAqBC"}
1
+ {"version":3,"file":"paginated-cache-registry.js","sourceRoot":"","sources":["../../../src/pkg/paginated-cache-registry.ts"],"names":[],"mappings":";;;AAGA,MAAa,sBAAsB;IAAnC;QACY,cAAS,GAAG,IAAI,GAAG,EAA+B,CAAC;IAC/D,CAAC;CAAA;AAFD,wDAEC"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const chai_1 = require("chai");
16
+ const sinon_1 = __importDefault(require("sinon"));
17
+ const task_helper_1 = require("./task-helper");
18
+ const delayResolve = (value, ms) => () => new Promise((res) => {
19
+ setTimeout(() => res(value), ms);
20
+ });
21
+ const delayReject = (err, ms) => () => new Promise((_, rej) => {
22
+ setTimeout(() => rej(err), ms);
23
+ });
24
+ describe("runWithTimeout (TypeScript)", () => {
25
+ let clock;
26
+ beforeEach(() => {
27
+ clock = sinon_1.default.useFakeTimers();
28
+ });
29
+ afterEach(() => {
30
+ clock.restore();
31
+ });
32
+ it("resolves when handler completes before timeout", () => __awaiter(void 0, void 0, void 0, function* () {
33
+ const handler = delayResolve("ok", 10);
34
+ const p = (0, task_helper_1.runWithTimeout)(handler, 50);
35
+ yield clock.tickAsync(20);
36
+ const result = yield p;
37
+ (0, chai_1.expect)(result).to.equal("ok");
38
+ }));
39
+ it("rejects when handler rejects before timeout", () => __awaiter(void 0, void 0, void 0, function* () {
40
+ const handler = delayReject(new Error("boom"), 10);
41
+ const p = (0, task_helper_1.runWithTimeout)(handler, 50);
42
+ yield clock.tickAsync(20);
43
+ try {
44
+ yield p;
45
+ throw new Error("expected to reject");
46
+ }
47
+ catch (err) {
48
+ (0, chai_1.expect)(err).to.be.instanceOf(Error);
49
+ (0, chai_1.expect)(err.message).to.equal("boom");
50
+ }
51
+ }));
52
+ it('rejects with "task timed out" when handler does not complete before timeout', () => __awaiter(void 0, void 0, void 0, function* () {
53
+ const handler = () => new Promise(() => { });
54
+ const p = (0, task_helper_1.runWithTimeout)(handler, 50);
55
+ yield clock.tickAsync(60);
56
+ try {
57
+ yield p;
58
+ throw new Error("expected to reject by timeout");
59
+ }
60
+ catch (err) {
61
+ (0, chai_1.expect)(err).to.be.instanceOf(Error);
62
+ (0, chai_1.expect)(err.message).to.equal("task timed out");
63
+ }
64
+ }));
65
+ it("calls onCompletedAfterReject when handler resolves after timeout", () => __awaiter(void 0, void 0, void 0, function* () {
66
+ const handler = delayResolve("late-result", 100);
67
+ const onCompletedAfterReject = sinon_1.default.spy();
68
+ const p = (0, task_helper_1.runWithTimeout)(handler, 50, onCompletedAfterReject);
69
+ yield clock.tickAsync(60);
70
+ try {
71
+ yield p;
72
+ throw new Error("expected to reject by timeout");
73
+ }
74
+ catch (err) {
75
+ (0, chai_1.expect)(err).to.be.instanceOf(Error);
76
+ (0, chai_1.expect)(err.message).to.equal("task timed out");
77
+ }
78
+ yield clock.tickAsync(50);
79
+ (0, chai_1.expect)(onCompletedAfterReject.calledOnce).to.equal(true);
80
+ (0, chai_1.expect)(onCompletedAfterReject.calledWith("late-result")).to.equal(true);
81
+ }));
82
+ it("does NOT call onCompletedAfterReject when handler resolves before timeout", () => __awaiter(void 0, void 0, void 0, function* () {
83
+ const handler = delayResolve("fast", 10);
84
+ const onCompletedAfterReject = sinon_1.default.spy();
85
+ const p = (0, task_helper_1.runWithTimeout)(handler, 50, onCompletedAfterReject);
86
+ yield clock.tickAsync(20);
87
+ const result = yield p;
88
+ (0, chai_1.expect)(result).to.equal("fast");
89
+ (0, chai_1.expect)(onCompletedAfterReject.notCalled).to.equal(true);
90
+ }));
91
+ it("clears timeout when handler resolves before timeout (no lingering timers)", () => __awaiter(void 0, void 0, void 0, function* () {
92
+ const handler = delayResolve("fast", 10);
93
+ const p = (0, task_helper_1.runWithTimeout)(handler, 50);
94
+ yield clock.tickAsync(20);
95
+ const result = yield p;
96
+ (0, chai_1.expect)(result).to.equal("fast");
97
+ yield clock.tickAsync(1000);
98
+ }));
99
+ });
100
+ //# sourceMappingURL=task-helper.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-helper.spec.js","sourceRoot":"","sources":["../../../src/pkg/task-helper.spec.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,10 @@
1
- import { CacheService, IPaginatedDataCache, PaginationResult } from "../interfaces";
2
- export declare class PaginatedDataCache<T = any> implements IPaginatedDataCache<T> {
1
+ import { CacheService, HashCacheService, PaginationResult } from "../interfaces";
2
+ export declare class PaginatedDataCache {
3
3
  protected dataName: string;
4
- protected cacheService: CacheService;
5
- constructor(dataName: string, cacheService: CacheService);
6
- generateCacheKey: (filter?: Record<string, any>, limit?: number, offset?: number) => string;
7
- getCurrentVersion(): Promise<number>;
8
- getCachedPaginatedData(filter: Record<string, any>, limit: number, offset: number): Promise<PaginationResult<T>>;
9
- setCachedPaginatedData(filter: Record<string, any>, limit: number, offset: number, data: PaginationResult<T>, ttlInSecs?: number): Promise<any>;
10
- _fetchVersionedDataFromCache(cacheKey: string, _overrideVersion?: number): Promise<{
11
- currentVersion: number;
12
- data: PaginationResult<T> | null;
13
- }>;
14
- protected _setVersionedDataInCache(cacheKey: string, data: PaginationResult<T>, ttl?: number): Promise<any>;
15
- incrementCacheVersion(ttl?: number): Promise<number>;
4
+ protected cacheService: CacheService & HashCacheService;
5
+ constructor(dataName: string, cacheService: CacheService & HashCacheService);
6
+ protected getCacheKey(milestone: string | number, offset: number): string;
7
+ paginateV2(milestone: string | number, limit: number, dataRefresherV2: () => Promise<PaginationResult>, options?: {
8
+ expireInSecs: number;
9
+ }): Promise<PaginationResult>;
16
10
  }
@@ -33,81 +33,28 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
33
33
  };
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
35
  exports.PaginatedDataCache = void 0;
36
- const key_helper_1 = require("../pkg/key-helper");
37
- const objectHelper = __importStar(require("../pkg/object-helper"));
38
36
  const constants_1 = require("../constants");
39
- const hash_helper_1 = require("../pkg/hash-helper");
37
+ const objectHelper = __importStar(require("../pkg/object-helper"));
40
38
  class PaginatedDataCache {
41
39
  constructor(dataName, cacheService) {
42
40
  this.dataName = dataName;
43
41
  this.cacheService = cacheService;
44
- this.generateCacheKey = (filter = {}, limit = 10, offset = 0) => {
45
- const filterString = (0, hash_helper_1.generateHashFromJSON)(filter);
46
- return `paginated-cache:${this.dataName}:version:_version:filter:${filterString}:limit:${limit}:offset:${offset}`;
47
- };
48
- }
49
- getCurrentVersion() {
50
- return __awaiter(this, void 0, void 0, function* () {
51
- const result = yield this.cacheService.getNumber((0, key_helper_1.getVersionCacheKeyForKey)(this.generateCacheKey()));
52
- return result || 0;
53
- });
54
- }
55
- getCachedPaginatedData(filter, limit, offset) {
56
- return __awaiter(this, void 0, void 0, function* () {
57
- const cacheKey = this.generateCacheKey(filter, limit, offset);
58
- const { data } = yield this._fetchVersionedDataFromCache(cacheKey);
59
- return data;
60
- });
61
42
  }
62
- setCachedPaginatedData(filter, limit, offset, data, ttlInSecs = 60 * 30) {
63
- return __awaiter(this, void 0, void 0, function* () {
64
- const cacheKey = this.generateCacheKey(filter, limit, offset);
65
- const currentVersion = yield this.getCurrentVersion();
66
- if (currentVersion === 0) {
67
- yield this.incrementCacheVersion(ttlInSecs);
68
- }
69
- return this._setVersionedDataInCache(cacheKey, data, ttlInSecs);
70
- });
71
- }
72
- _fetchVersionedDataFromCache(cacheKey, _overrideVersion) {
73
- return __awaiter(this, void 0, void 0, function* () {
74
- const currentVersion = _overrideVersion !== null && _overrideVersion !== void 0 ? _overrideVersion : (yield this.getCurrentVersion());
75
- if (currentVersion === 0) {
76
- return {
77
- currentVersion: 0,
78
- data: null,
79
- };
80
- }
81
- const versionedCacheKey = (0, key_helper_1.getVersionedCacheKey)(cacheKey, currentVersion);
82
- const cachedData = yield this.cacheService.get(versionedCacheKey);
83
- if (cachedData) {
84
- return {
85
- currentVersion: currentVersion,
86
- data: objectHelper.tryParseStringIntoCorrectData(cachedData),
87
- };
88
- }
89
- return {
90
- currentVersion: currentVersion,
91
- data: null,
92
- };
93
- });
43
+ getCacheKey(milestone, offset) {
44
+ return `${this.dataName}:paginated_data`;
94
45
  }
95
- _setVersionedDataInCache(cacheKey, data, ttl = 60 * 30) {
46
+ paginateV2(milestone, limit, dataRefresherV2, options = { expireInSecs: 60 * 5 }) {
96
47
  return __awaiter(this, void 0, void 0, function* () {
97
- const currentVersion = yield this.getCurrentVersion();
98
- const versionedCacheKey = (0, key_helper_1.getVersionedCacheKey)(cacheKey, currentVersion);
99
- const cacheableData = typeof data === "object" ? JSON.stringify(data) : data;
100
- return this.cacheService.set(versionedCacheKey, cacheableData, {
48
+ const cacheKey = this.getCacheKey(milestone, limit);
49
+ const cached = yield this.cacheService.get(cacheKey);
50
+ if (cached)
51
+ return objectHelper.tryParseStringIntoCorrectData(cached);
52
+ const freshData = yield dataRefresherV2();
53
+ yield this.cacheService.set(cacheKey, JSON.stringify(freshData), {
101
54
  policy: constants_1.SET_CACHE_POLICY.IF_NOT_EXISTS,
102
- value: ttl,
55
+ value: options.expireInSecs,
103
56
  });
104
- });
105
- }
106
- incrementCacheVersion(ttl = 60 * 60 * 24) {
107
- return __awaiter(this, void 0, void 0, function* () {
108
- const cacheKey = this.generateCacheKey();
109
- const versionCacheKey = (0, key_helper_1.getVersionCacheKeyForKey)(cacheKey);
110
- return this.cacheService.incrBy(versionCacheKey, 1);
57
+ return freshData;
111
58
  });
112
59
  }
113
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"paginated-cache.js","sourceRoot":"","sources":["../../../src/services/paginated-cache.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAG2B;AAM3B,mEAAqD;AACrD,4CAAgD;AAChD,oDAA0D;AAE1D,MAAa,kBAAkB;IAC7B,YACY,QAAgB,EAChB,YAA0B;QAD1B,aAAQ,GAAR,QAAQ,CAAQ;QAChB,iBAAY,GAAZ,YAAY,CAAc;QAG/B,qBAAgB,GAAG,CACxB,SAA8B,EAAE,EAChC,KAAK,GAAG,EAAE,EACV,MAAM,GAAG,CAAC,EACF,EAAE;YACV,MAAM,YAAY,GAAG,IAAA,kCAAoB,EAAC,MAAM,CAAC,CAAC;YAElD,OAAO,mBAAmB,IAAI,CAAC,QAAQ,4BAA4B,YAAY,UAAU,KAAK,WAAW,MAAM,EAAE,CAAC;QACpH,CAAC,CAAC;IAVC,CAAC;IAYS,iBAAiB;;YAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAC9C,IAAA,qCAAwB,EAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAClD,CAAC;YAEF,OAAO,MAAM,IAAI,CAAC,CAAC;QACrB,CAAC;KAAA;IAEY,sBAAsB,CACjC,MAA2B,EAC3B,KAAa,EACb,MAAc;;YAEd,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC9D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;YAEnE,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAEY,sBAAsB,CACjC,MAA2B,EAC3B,KAAa,EACb,MAAc,EACd,IAAyB,EACzB,SAAS,GAAG,EAAE,GAAG,EAAE;;YAEnB,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC9D,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACtD,IAAI,cAAc,KAAK,CAAC,EAAE;gBAExB,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;aAC7C;YAED,OAAO,IAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAClE,CAAC;KAAA;IAEY,4BAA4B,CACvC,QAAgB,EAChB,gBAAyB;;YAGzB,MAAM,cAAc,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAC5E,IAAI,cAAc,KAAK,CAAC,EAAE;gBAExB,OAAO;oBACL,cAAc,EAAE,CAAC;oBACjB,IAAI,EAAE,IAAI;iBACX,CAAC;aACH;YAGD,MAAM,iBAAiB,GAAG,IAAA,iCAAoB,EAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACzE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAClE,IAAI,UAAU,EAAE;gBACd,OAAO;oBACL,cAAc,EAAE,cAAc;oBAC9B,IAAI,EAAE,YAAY,CAAC,6BAA6B,CAAC,UAAU,CAAC;iBAC7D,CAAC;aACH;YAGD,OAAO;gBACL,cAAc,EAAE,cAAc;gBAC9B,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;KAAA;IAEe,wBAAwB,CACtC,QAAgB,EAChB,IAAyB,EACzB,MAAc,EAAE,GAAG,EAAE;;YAErB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAEtD,MAAM,iBAAiB,GAAG,IAAA,iCAAoB,EAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACzE,MAAM,aAAa,GACjB,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAIzD,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,aAAa,EAAE;gBAC7D,MAAM,EAAE,4BAAgB,CAAC,aAAa;gBACtC,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;KAAA;IAEY,qBAAqB,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;;YACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzC,MAAM,eAAe,GAAG,IAAA,qCAAwB,EAAC,QAAQ,CAAC,CAAC;YAE3D,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;KAAA;CACF;AA5GD,gDA4GC"}
1
+ {"version":3,"file":"paginated-cache.js","sourceRoot":"","sources":["../../../src/services/paginated-cache.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAgD;AAMhD,mEAAqD;AAErD,MAAa,kBAAkB;IAC7B,YACY,QAAgB,EAChB,YAA6C;QAD7C,aAAQ,GAAR,QAAQ,CAAQ;QAChB,iBAAY,GAAZ,YAAY,CAAiC;IACtD,CAAC;IAEM,WAAW,CAAC,SAA0B,EAAE,MAAc;QAC9D,OAAO,GAAG,IAAI,CAAC,QAAQ,iBAAiB,CAAC;IAC3C,CAAC;IAEY,UAAU,CACrB,SAA0B,EAC1B,KAAa,EACb,eAAgD,EAChD,UAAoC,EAAE,YAAY,EAAE,EAAE,GAAG,CAAC,EAAE;;YAE5D,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAEpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACrD,IAAI,MAAM;gBAAE,OAAO,YAAY,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;YAEtE,MAAM,SAAS,GAAG,MAAM,eAAe,EAAE,CAAC;YAG1C,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;gBAC/D,MAAM,EAAE,4BAAgB,CAAC,aAAa;gBACtC,KAAK,EAAE,OAAO,CAAC,YAAY;aAC5B,CAAC,CAAC;YAEH,OAAO,SAAS,CAAC;QACnB,CAAC;KAAA;CACF;AA/BD,gDA+BC"}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  import * as ioredis from "ioredis";
3
- import { CacheScriptEvaluator, CacheService, DeleteByPatternOptions, HashCacheService, ListCacheService, LuaCall, SetCacheOption } from "../interfaces";
4
- export declare class RedisService implements CacheService, HashCacheService, ListCacheService, CacheScriptEvaluator {
3
+ import { CacheScriptEvaluator, CacheService, DeleteByPatternOptions, HashCacheService, ListCacheService, LuaCall, SetCacheOption, SetCacheService } from "../interfaces";
4
+ export declare class RedisService implements CacheService, HashCacheService, ListCacheService, CacheScriptEvaluator, SetCacheService {
5
5
  protected _redis: ioredis.Redis;
6
6
  constructor(config: ioredis.RedisOptions);
7
7
  get(key: string): Promise<any>;
@@ -9,6 +9,9 @@ export declare class RedisService implements CacheService, HashCacheService, Lis
9
9
  deleteByPattern(deletePattern: string, options?: DeleteByPatternOptions): Promise<void>;
10
10
  del(...keys: string[]): Promise<void>;
11
11
  multiEval(calls: LuaCall[]): Promise<any[]>;
12
+ sadd(key: string, ...values: string[]): Promise<number>;
13
+ srem(key: string, ...values: string[]): Promise<number>;
14
+ scard(key: string): Promise<number>;
12
15
  eval(script: string, numberOfKeys: number, ...args: any[]): Promise<unknown>;
13
16
  hset(key: string, field: string, value: any): Promise<void>;
14
17
  hexists(key: string, field: string): Promise<number>;
@@ -99,6 +99,21 @@ class RedisService {
99
99
  return execResult.map(([, value]) => value);
100
100
  });
101
101
  }
102
+ sadd(key, ...values) {
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ return this._redis.sadd(key, ...values);
105
+ });
106
+ }
107
+ srem(key, ...values) {
108
+ return __awaiter(this, void 0, void 0, function* () {
109
+ return this._redis.srem(key, ...values);
110
+ });
111
+ }
112
+ scard(key) {
113
+ return __awaiter(this, void 0, void 0, function* () {
114
+ return this._redis.scard(key);
115
+ });
116
+ }
102
117
  eval(script, numberOfKeys, ...args) {
103
118
  return __awaiter(this, void 0, void 0, function* () {
104
119
  return this._redis.eval(script, numberOfKeys, ...args);
@@ -1 +1 @@
1
- {"version":3,"file":"redis-service.js","sourceRoot":"","sources":["../../../src/services/redis-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redis-service.js","sourceRoot":"","sources":["../../../src/services/redis-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAYnC,4CAAgD;AAEhD,MAAa,YAAY;IAUvB,YAAY,MAA4B;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAEM,GAAG,CAAC,GAAW;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAEY,SAAS,CAAC,GAAW;;YAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,MAAM,KAAK,IAAI,EAAE;gBACnB,OAAO,IAAI,CAAC;aACb;YAED,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;KAAA;IAEY,eAAe,CAC1B,aAAqB,EACrB,OAAgC;;;YAEhC,IAAI,MAAM,GAAG,GAAG,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;YAE7C,IAAI,WAAW,GAAG,aAAa,CAAC;YAEhC,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,0BAA0B,mCAAI,IAAI,EAAE;gBAC/C,WAAW,GAAG,MAAM,GAAG,aAAa,CAAC;aACtC;YAED,GAAG;gBAED,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAC/C,MAAM,EACN,OAAO,EACP,WAAW,EACX,OAAO,EACP,GAAG,CACJ,CAAC;gBAEF,MAAM,GAAG,UAAU,CAAC;gBAEpB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACnB,MAAM,oBAAoB,GAAG,MAAM;wBACjC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACtE,CAAC,CAAC,IAAI,CAAC;oBAGT,IAAI,OAAQ,IAAI,CAAC,MAAc,CAAC,MAAM,KAAK,UAAU,EAAE;wBACrD,MAAO,IAAI,CAAC,MAAc,CAAC,MAAM,CAAC,GAAG,oBAAoB,CAAC,CAAC;qBAC5D;yBAAM;wBACL,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,oBAAoB,CAAC,CAAC;qBAChD;iBACF;aACF,QAAQ,MAAM,KAAK,GAAG,EAAE;;KAC1B;IAEY,GAAG,CAAC,GAAG,IAAc;;YAChC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACjC,CAAC;KAAA;IAEY,SAAS,CAAC,KAAgB;;YACrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAElC,KAAK,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,EAAE;gBACrD,IAAI,YAAY,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,MAAM,EAAE;oBACzD,MAAM,IAAI,KAAK,CACb,iBAAiB,YAAY,sCAAsC,CACpE,CAAC;iBACH;gBACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,CAAC;aAC7C;YAED,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;YAGtC,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,UAAU,EAAE;gBAC9B,IAAI,GAAG;oBAAE,MAAM,GAAG,CAAC;aACpB;YAGD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAC9C,CAAC;KAAA;IAEY,IAAI,CAAC,GAAW,EAAE,GAAG,MAAgB;;YAChD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC;QAC1C,CAAC;KAAA;IAEY,IAAI,CAAC,GAAW,EAAE,GAAG,MAAgB;;YAChD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC;QAC1C,CAAC;KAAA;IAEY,KAAK,CAAC,GAAW;;YAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;KAAA;IAEY,IAAI,CAAC,MAAc,EAAE,YAAoB,EAAE,GAAG,IAAW;;YACpE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC;QACzD,CAAC;KAAA;IAEY,IAAI,CAAC,GAAW,EAAE,KAAa,EAAE,KAAU;;YACtD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC1B,CAAC,KAAK,CAAC,EAAE,KAAK;aACf,CAAC,CAAC;QACL,CAAC;KAAA;IAEY,OAAO,CAAC,GAAW,EAAE,KAAa;;YAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC;KAAA;IAEY,KAAK,CAAC,GAAW,EAAE,KAAU;;YACxC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IAEY,IAAI,CACf,GAAW,EACX,KAAsB,EACtB,OAAiC;;YAEjC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;KAAA;IAEY,KAAK,CAAC,GAAW,EAAE,KAAU;;YACxC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IAEY,IAAI,CAAC,GAAW,EAAE,KAAa,EAAE,KAAU;;YACtD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC;KAAA;IAEY,MAAM,CACjB,GAAW,EACX,KAAa,EACb,GAAW;;YAEX,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7C,CAAC;KAAA;IAEY,MAAM,CAAC,GAAW,EAAE,KAAa;;YAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACxC,CAAC;KAAA;IAEY,IAAI,CAAC,GAAW;;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;KAAA;IAEY,IAAI,CAAC,GAAW,EAAE,KAAa;;YAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IAEY,IAAI,CAAC,GAAW,EAAE,GAAG,MAAgB;;YAChD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC;QAC1C,CAAC;KAAA;IAEY,OAAO,CAAC,GAAW,EAAE,KAAa,EAAE,KAAK,GAAG,CAAC;;YACxD,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC;KAAA;IAEY,YAAY,CACvB,GAAW,EACX,KAAa,EACb,KAAK,GAAG,CAAC;;YAET,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC;KAAA;IAEY,KAAK,CAAC,GAAW;;YAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;KAAA;IAEY,GAAG,CAAC,GAAW;;YAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;KAAA;IAEY,IAAI,CAAC,GAAW;;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;KAAA;IAEM,GAAG,CAAC,GAAW,EAAE,KAAU,EAAE,MAAuB;QACzD,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACpC;QAED,QAAQ,MAAM,CAAC,MAAM,EAAE;YACrB,KAAK,4BAAgB,CAAC,QAAQ;gBAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAEzD,KAAK,4BAAgB,CAAC,QAAQ;gBAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;YAEhD,KAAK,4BAAgB,CAAC,SAAS;gBAE7B,OAAO,MAAM,CAAC,KAAK;oBACjB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;oBACvD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAExC,KAAK,4BAAgB,CAAC,aAAa;gBACjC,OAAO,MAAM,CAAC,KAAK;oBACjB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;oBACvD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAExC;gBACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;SAC3C;IACH,CAAC;IAEY,MAAM,CAAC,GAAW,EAAE,KAAK,GAAG,CAAC;;YACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAEpD,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;KAAA;IAES,eAAe,CAAC,KAAU;QAClC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,0BAA0B,CAAC,CAAC;SAC5D;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,GAAW,EAAE,GAAW;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAEY,WAAW,CAAC,GAAW,EAAE,KAAa;;YACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAEzD,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;KAAA;IAEY,MAAM,CAAC,GAAW,EAAE,KAAK,GAAG,CAAC;;YACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAEpD,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;KAAA;CACF;AArPD,oCAqPC"}