@diia-inhouse/redis 2.30.21 → 3.1.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.
Files changed (52) hide show
  1. package/dist/index.d.ts +10 -0
  2. package/dist/index.js +9 -20
  3. package/dist/interfaces/deps.d.ts +11 -0
  4. package/dist/interfaces/index.d.ts +4 -0
  5. package/dist/interfaces/index.js +3 -21
  6. package/dist/interfaces/mutex.d.ts +16 -0
  7. package/dist/interfaces/mutex.js +2 -6
  8. package/dist/interfaces/pubsub.d.ts +19 -0
  9. package/dist/interfaces/redis.d.ts +28 -0
  10. package/dist/interfaces/redis.js +12 -13
  11. package/dist/interfaces/store.d.ts +32 -0
  12. package/dist/services/index.d.ts +4 -0
  13. package/dist/services/index.js +5 -21
  14. package/dist/services/mutex.d.ts +19 -0
  15. package/dist/services/mutex.js +52 -44
  16. package/dist/services/providers/pubsub.js +96 -89
  17. package/dist/services/pubsub.d.ts +19 -0
  18. package/dist/services/pubsub.js +38 -43
  19. package/dist/services/redis.d.ts +10 -0
  20. package/dist/services/redis.js +84 -65
  21. package/dist/services/store.d.ts +47 -0
  22. package/dist/services/store.js +170 -183
  23. package/package.json +41 -32
  24. package/dist/index.js.map +0 -1
  25. package/dist/interfaces/deps.js +0 -3
  26. package/dist/interfaces/deps.js.map +0 -1
  27. package/dist/interfaces/index.js.map +0 -1
  28. package/dist/interfaces/mutex.js.map +0 -1
  29. package/dist/interfaces/pubsub.js +0 -3
  30. package/dist/interfaces/pubsub.js.map +0 -1
  31. package/dist/interfaces/redis.js.map +0 -1
  32. package/dist/interfaces/store.js +0 -3
  33. package/dist/interfaces/store.js.map +0 -1
  34. package/dist/services/index.js.map +0 -1
  35. package/dist/services/mutex.js.map +0 -1
  36. package/dist/services/providers/pubsub.js.map +0 -1
  37. package/dist/services/pubsub.js.map +0 -1
  38. package/dist/services/redis.js.map +0 -1
  39. package/dist/services/store.js.map +0 -1
  40. package/dist/types/index.d.ts +0 -3
  41. package/dist/types/interfaces/deps.d.ts +0 -6
  42. package/dist/types/interfaces/index.d.ts +0 -4
  43. package/dist/types/interfaces/mutex.d.ts +0 -13
  44. package/dist/types/interfaces/pubsub.d.ts +0 -15
  45. package/dist/types/interfaces/redis.d.ts +0 -24
  46. package/dist/types/interfaces/store.d.ts +0 -30
  47. package/dist/types/services/index.d.ts +0 -4
  48. package/dist/types/services/mutex.d.ts +0 -13
  49. package/dist/types/services/providers/pubsub.d.ts +0 -17
  50. package/dist/types/services/pubsub.d.ts +0 -15
  51. package/dist/types/services/redis.d.ts +0 -6
  52. package/dist/types/services/store.d.ts +0 -43
@@ -1,183 +1,170 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StoreService = void 0;
4
- const errors_1 = require("@diia-inhouse/errors");
5
- const types_1 = require("@diia-inhouse/types");
6
- const redis_1 = require("../interfaces/redis");
7
- const redis_2 = require("./redis");
8
- class StoreService {
9
- storeConfig;
10
- logger;
11
- clientRW;
12
- clientRO;
13
- tagsKey = '_tags';
14
- constructor(storeConfig, logger) {
15
- this.storeConfig = storeConfig;
16
- this.logger = logger;
17
- const { readWrite, readOnly } = this.storeConfig;
18
- this.clientRW = redis_2.RedisService.createClient({ ...readWrite, redisMode: redis_1.RedisMode.ReadWrite }, this.logger);
19
- this.clientRO = redis_2.RedisService.createClient({ ...readOnly, redisMode: redis_1.RedisMode.ReadOnly }, this.logger);
20
- this.clientRW.on('connect', () => {
21
- this.logger.info('Store READ-WRITE connection open');
22
- });
23
- this.clientRW.on('error', (err) => {
24
- this.logger.error('Store READ-WRITE connection error ', { err });
25
- });
26
- this.clientRO.on('connect', () => {
27
- this.logger.info('Store READ-ONLY connection open');
28
- });
29
- this.clientRO.on('error', (err) => {
30
- this.logger.error('Store READ-ONLY connection error ', { err });
31
- });
32
- }
33
- async onHealthCheck() {
34
- const storeStatus = {
35
- readWrite: this.clientRW.status,
36
- readOnly: this.clientRO.status,
37
- };
38
- const status = Object.values(storeStatus).some((s) => s !== redis_1.RedisStatusValue.Ready)
39
- ? types_1.HttpStatusCode.SERVICE_UNAVAILABLE
40
- : types_1.HttpStatusCode.OK;
41
- return {
42
- status,
43
- details: { store: storeStatus },
44
- };
45
- }
46
- async onDestroy() {
47
- await Promise.all([this.clientRW.quit(), this.clientRO.quit()]);
48
- }
49
- async get(key) {
50
- return await this.clientRO.get(key);
51
- }
52
- async mget(...keys) {
53
- return await this.clientRO.mget(keys);
54
- }
55
- async hget(key, field) {
56
- return await this.clientRO.hget(key, field);
57
- }
58
- async hlen(key) {
59
- return await this.clientRO.hlen(key);
60
- }
61
- async hgetall(key) {
62
- return await this.clientRO.hgetall(key);
63
- }
64
- async hvals(key) {
65
- return await this.clientRO.hvals(key);
66
- }
67
- async hscan(key, cursor, count) {
68
- const [newCursor, elements] = await this.clientRO.hscan(key, cursor, 'COUNT', count);
69
- return { cursor: newCursor, elements };
70
- }
71
- async scan(matchPattern, cursor, count) {
72
- const [newCursor, elements] = await this.clientRO.scan(cursor, 'MATCH', matchPattern, 'COUNT', count);
73
- return { cursor: newCursor, elements };
74
- }
75
- async lrange(key, start, stop) {
76
- return await this.clientRO.lrange(key, start, stop);
77
- }
78
- async getUsingTags(key) {
79
- const [cachedValue, tagsValue] = await this.clientRO.mget(key, this.tagsKey);
80
- if (!cachedValue) {
81
- return null;
82
- }
83
- const tagsConfig = tagsValue ? JSON.parse(tagsValue) : {};
84
- try {
85
- const item = JSON.parse(cachedValue);
86
- if (Array.isArray(item?.tags)) {
87
- const isValid = this.validate(item, tagsConfig);
88
- if (isValid) {
89
- return item.data;
90
- }
91
- }
92
- return null;
93
- }
94
- catch (err) {
95
- if (err instanceof Error) {
96
- this.logger.error('Failed when parse value with tags', { err });
97
- }
98
- throw new errors_1.ServiceUnavailableError();
99
- }
100
- }
101
- async set(key, value, options = {}) {
102
- const { ttl, tags } = options;
103
- if (tags?.length) {
104
- value = await this.wrapValueWithMetadata(value, tags);
105
- }
106
- if (ttl) {
107
- return await this.clientRW.set(key, value, 'PX', ttl); // milliseconds
108
- }
109
- return await this.clientRW.set(key, value);
110
- }
111
- async hset(key, value) {
112
- return await this.clientRW.hset(key, value);
113
- }
114
- async lpush(key, ...values) {
115
- return await this.clientRW.lpush(key, ...values);
116
- }
117
- async incrby(key, value) {
118
- return await this.clientRW.incrby(key, value);
119
- }
120
- async keys(pattern) {
121
- return await this.clientRW.keys(pattern);
122
- }
123
- async remember(key, closure, options = {}) {
124
- const cachedValue = await this.get(key);
125
- if (cachedValue) {
126
- return cachedValue;
127
- }
128
- const result = await closure();
129
- await this.set(key, result || '', options);
130
- return result;
131
- }
132
- async remove(...keys) {
133
- return await this.clientRW.del(...keys);
134
- }
135
- async hdel(key, ...fields) {
136
- return await this.clientRW.hdel(key, ...fields);
137
- }
138
- async expire(key, seconds) {
139
- return await this.clientRW.expire(key, seconds, 'NX');
140
- }
141
- async bumpTags(tags) {
142
- const tagsValue = await this.clientRO.get(this.tagsKey);
143
- const tagsConfig = tagsValue ? JSON.parse(tagsValue) : {};
144
- const timestamp = Date.now();
145
- for (const tagKey of tags) {
146
- tagsConfig[tagKey] = timestamp;
147
- }
148
- return await this.clientRW.set(this.tagsKey, JSON.stringify(tagsConfig));
149
- }
150
- async throttle(key, maxBurst, rate, periodSec, quantity = 1) {
151
- const result = (await this.clientRW.call('CL.THROTTLE', key, maxBurst, rate, periodSec, quantity));
152
- return {
153
- limited: result[0] === 1,
154
- totalLimit: result[1],
155
- remaining: result[2],
156
- retryAfterSec: result[3],
157
- resetAfterSec: result[4],
158
- };
159
- }
160
- async flushDb() {
161
- return await this.clientRW.flushdb();
162
- }
163
- validate({ tags, timestamp }, tagsConfig) {
164
- const tagTimestamps = Object.entries(tagsConfig)
165
- .filter(([tag]) => tags.includes(tag))
166
- .map(([, tagTimestamp]) => tagTimestamp);
167
- return tagTimestamps.every((tagTimestamp) => tagTimestamp && tagTimestamp <= timestamp);
168
- }
169
- async wrapValueWithMetadata(data, tags) {
170
- const tagsValue = await this.clientRO.get(this.tagsKey);
171
- const tagsConfig = tagsValue ? JSON.parse(tagsValue) : {};
172
- const tagTimestamps = Object.entries(tagsConfig)
173
- .filter(([tag]) => tags.includes(tag))
174
- .map(([, tagTimestamp]) => tagTimestamp)
175
- // eslint-disable-next-line unicorn/prefer-native-coercion-functions
176
- .filter((tagTimestamp) => Boolean(tagTimestamp));
177
- const timestamp = tagTimestamps.length > 0 ? Math.max(...tagTimestamps) : 0;
178
- const wrappedValue = { data, tags, timestamp };
179
- return JSON.stringify(wrappedValue);
180
- }
181
- }
182
- exports.StoreService = StoreService;
183
- //# sourceMappingURL=store.js.map
1
+ import "../interfaces/redis.js";
2
+ import { RedisService } from "./redis.js";
3
+ import { HttpStatusCode } from "@diia-inhouse/types";
4
+ import { ServiceUnavailableError } from "@diia-inhouse/errors";
5
+ //#region src/services/store.ts
6
+ var StoreService = class {
7
+ storeConfig;
8
+ logger;
9
+ clientRW;
10
+ clientRO;
11
+ tagsKey = "_tags";
12
+ constructor(storeConfig, logger) {
13
+ this.storeConfig = storeConfig;
14
+ this.logger = logger;
15
+ const { readWrite, readOnly } = this.storeConfig;
16
+ this.clientRW = RedisService.createClient({
17
+ ...readWrite,
18
+ redisMode: "READ-WRITE"
19
+ }, this.logger);
20
+ this.clientRO = RedisService.createClient({
21
+ ...readOnly,
22
+ redisMode: "READ-ONLY"
23
+ }, this.logger);
24
+ this.clientRW.on("connect", () => {
25
+ this.logger.info("Store READ-WRITE connection open");
26
+ });
27
+ this.clientRW.on("error", (err) => {
28
+ this.logger.error("Store READ-WRITE connection error ", { err });
29
+ });
30
+ this.clientRO.on("connect", () => {
31
+ this.logger.info("Store READ-ONLY connection open");
32
+ });
33
+ this.clientRO.on("error", (err) => {
34
+ this.logger.error("Store READ-ONLY connection error ", { err });
35
+ });
36
+ }
37
+ async onHealthCheck() {
38
+ const storeStatus = {
39
+ readWrite: this.clientRW.status,
40
+ readOnly: this.clientRO.status
41
+ };
42
+ return {
43
+ status: Object.values(storeStatus).some((s) => s !== "ready") ? HttpStatusCode.SERVICE_UNAVAILABLE : HttpStatusCode.OK,
44
+ details: { store: storeStatus }
45
+ };
46
+ }
47
+ async onDestroy() {
48
+ await Promise.all([this.clientRW.quit(), this.clientRO.quit()]);
49
+ }
50
+ async get(key) {
51
+ return await this.clientRO.get(key);
52
+ }
53
+ async mget(...keys) {
54
+ return await this.clientRO.mget(keys);
55
+ }
56
+ async hget(key, field) {
57
+ return await this.clientRO.hget(key, field);
58
+ }
59
+ async hlen(key) {
60
+ return await this.clientRO.hlen(key);
61
+ }
62
+ async hgetall(key) {
63
+ return await this.clientRO.hgetall(key);
64
+ }
65
+ async hvals(key) {
66
+ return await this.clientRO.hvals(key);
67
+ }
68
+ async hscan(key, cursor, count) {
69
+ const [newCursor, elements] = await this.clientRO.hscan(key, cursor, "COUNT", count);
70
+ return {
71
+ cursor: newCursor,
72
+ elements
73
+ };
74
+ }
75
+ async scan(matchPattern, cursor, count) {
76
+ const [newCursor, elements] = await this.clientRO.scan(cursor, "MATCH", matchPattern, "COUNT", count);
77
+ return {
78
+ cursor: newCursor,
79
+ elements
80
+ };
81
+ }
82
+ async lrange(key, start, stop) {
83
+ return await this.clientRO.lrange(key, start, stop);
84
+ }
85
+ async getUsingTags(key) {
86
+ const [cachedValue, tagsValue] = await this.clientRO.mget(key, this.tagsKey);
87
+ if (!cachedValue) return null;
88
+ const tagsConfig = tagsValue ? JSON.parse(tagsValue) : {};
89
+ try {
90
+ const item = JSON.parse(cachedValue);
91
+ if (Array.isArray(item?.tags)) {
92
+ if (this.validate(item, tagsConfig)) return item.data;
93
+ }
94
+ return null;
95
+ } catch (err) {
96
+ if (err instanceof Error) this.logger.error("Failed when parse value with tags", { err });
97
+ throw new ServiceUnavailableError();
98
+ }
99
+ }
100
+ async set(key, value, options = {}) {
101
+ const { ttl, tags } = options;
102
+ if (tags?.length) value = await this.wrapValueWithMetadata(value, tags);
103
+ if (ttl) return await this.clientRW.set(key, value, "PX", ttl);
104
+ return await this.clientRW.set(key, value);
105
+ }
106
+ async hset(key, value) {
107
+ return await this.clientRW.hset(key, value);
108
+ }
109
+ async lpush(key, ...values) {
110
+ return await this.clientRW.lpush(key, ...values);
111
+ }
112
+ async incrby(key, value) {
113
+ return await this.clientRW.incrby(key, value);
114
+ }
115
+ async keys(pattern) {
116
+ return await this.clientRW.keys(pattern);
117
+ }
118
+ async remember(key, closure, options = {}) {
119
+ const cachedValue = await this.get(key);
120
+ if (cachedValue) return cachedValue;
121
+ const result = await closure();
122
+ await this.set(key, result || "", options);
123
+ return result;
124
+ }
125
+ async remove(...keys) {
126
+ return await this.clientRW.del(...keys);
127
+ }
128
+ async hdel(key, ...fields) {
129
+ return await this.clientRW.hdel(key, ...fields);
130
+ }
131
+ async expire(key, seconds) {
132
+ return await this.clientRW.expire(key, seconds, "NX");
133
+ }
134
+ async bumpTags(tags) {
135
+ const tagsValue = await this.clientRO.get(this.tagsKey);
136
+ const tagsConfig = tagsValue ? JSON.parse(tagsValue) : {};
137
+ const timestamp = Date.now();
138
+ for (const tagKey of tags) tagsConfig[tagKey] = timestamp;
139
+ return await this.clientRW.set(this.tagsKey, JSON.stringify(tagsConfig));
140
+ }
141
+ async throttle(key, maxBurst, rate, periodSec, quantity = 1) {
142
+ const result = await this.clientRW.call("CL.THROTTLE", key, maxBurst, rate, periodSec, quantity);
143
+ return {
144
+ limited: result[0] === 1,
145
+ totalLimit: result[1],
146
+ remaining: result[2],
147
+ retryAfterSec: result[3],
148
+ resetAfterSec: result[4]
149
+ };
150
+ }
151
+ async flushDb() {
152
+ return await this.clientRW.flushdb();
153
+ }
154
+ validate({ tags, timestamp }, tagsConfig) {
155
+ return Object.entries(tagsConfig).filter(([tag]) => tags.includes(tag)).map(([, tagTimestamp]) => tagTimestamp).every((tagTimestamp) => tagTimestamp && tagTimestamp <= timestamp);
156
+ }
157
+ async wrapValueWithMetadata(data, tags) {
158
+ const tagsValue = await this.clientRO.get(this.tagsKey);
159
+ const tagsConfig = tagsValue ? JSON.parse(tagsValue) : {};
160
+ const tagTimestamps = Object.entries(tagsConfig).filter(([tag]) => tags.includes(tag)).map(([, tagTimestamp]) => tagTimestamp).filter((tagTimestamp) => Boolean(tagTimestamp));
161
+ const wrappedValue = {
162
+ data,
163
+ tags,
164
+ timestamp: tagTimestamps.length > 0 ? Math.max(...tagTimestamps) : 0
165
+ };
166
+ return JSON.stringify(wrappedValue);
167
+ }
168
+ };
169
+ //#endregion
170
+ export { StoreService };
package/package.json CHANGED
@@ -1,25 +1,32 @@
1
1
  {
2
2
  "name": "@diia-inhouse/redis",
3
- "version": "2.30.21",
3
+ "version": "3.1.0",
4
+ "type": "module",
4
5
  "description": "Redis services - redlock, pubsub, cache and store",
5
6
  "main": "dist/index.js",
6
- "types": "dist/types/index.d.ts",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "default": "./dist/index.js"
12
+ },
13
+ "./package.json": "./package.json"
14
+ },
7
15
  "repository": "https://github.com/diia-open-source/be-pkg-redis",
8
16
  "author": "Diia",
9
- "license": "SEE LICENCE IN LICENCE.md",
10
17
  "files": [
11
18
  "dist"
12
19
  ],
13
20
  "engines": {
14
- "node": ">=22"
21
+ "node": ">=24"
15
22
  },
16
23
  "scripts": {
17
24
  "prebuild": "rimraf dist",
18
- "build": "tsc",
25
+ "build": "tsdown",
19
26
  "semantic-release": "semantic-release",
20
27
  "start": "npm run build && node dist/index.js",
21
- "lint": "eslint . && prettier --check .",
22
- "lint-fix": "eslint . --fix && prettier --write .",
28
+ "lint": "oxlint && oxfmt --check .",
29
+ "lint-fix": "oxlint --fix && oxfmt .",
23
30
  "lint:lockfile": "lockfile-lint --path package-lock.json --allowed-hosts registry.npmjs.org --validate-https",
24
31
  "prepare": "npm run build",
25
32
  "test": "vitest run",
@@ -30,37 +37,39 @@
30
37
  "@babel/traverse": "7.25.9"
31
38
  },
32
39
  "dependencies": {
33
- "ioredis": "5.6.1",
34
- "redis-semaphore": "5.6.2"
40
+ "ioredis": "5.10.1",
41
+ "redis-semaphore": "5.7.0"
35
42
  },
36
43
  "peerDependencies": {
37
- "@diia-inhouse/env": ">=1.2.0",
38
- "@diia-inhouse/errors": ">=1.4.2",
39
- "@diia-inhouse/types": ">=3.50.0",
40
- "@diia-inhouse/validators": ">=1.6.1"
44
+ "@diia-inhouse/env": ">=3.0.0",
45
+ "@diia-inhouse/errors": ">=2.0.0",
46
+ "@diia-inhouse/types": ">=13.0.0",
47
+ "@diia-inhouse/validators": ">=2.0.0"
41
48
  },
42
49
  "devDependencies": {
43
- "@diia-inhouse/configs": "6.1.1",
44
- "@diia-inhouse/diia-logger": "3.20.12",
45
- "@diia-inhouse/env": "2.8.24",
46
- "@diia-inhouse/errors": "1.18.23",
47
- "@diia-inhouse/eslint-config": "8.8.2",
48
- "@diia-inhouse/test": "7.3.23",
49
- "@diia-inhouse/types": "11.7.0",
50
- "@diia-inhouse/validators": "1.28.34",
51
- "@types/node": "25.3.3",
52
- "@vitest/coverage-v8": "4.0.18",
53
- "@vitest/ui": "4.0.18",
54
- "eslint": "9.39.3",
50
+ "@diia-inhouse/configs": "7.0.0",
51
+ "@diia-inhouse/diia-logger": "4.2.4",
52
+ "@diia-inhouse/env": "3.3.0",
53
+ "@diia-inhouse/errors": "2.1.1",
54
+ "@diia-inhouse/oxc-config": "1.10.0",
55
+ "@diia-inhouse/test": "8.2.1",
56
+ "@diia-inhouse/types": "13.2.0",
57
+ "@diia-inhouse/validators": "2.2.2",
58
+ "@types/node": "25.6.2",
59
+ "@vitest/coverage-v8": "4.1.5",
60
+ "@vitest/ui": "4.1.5",
55
61
  "eslint-plugin-prettier": "5.5.5",
56
- "lockfile-lint": "4.14.1",
62
+ "lockfile-lint": "5.0.0",
57
63
  "madge": "8.0.0",
58
- "prettier": "3.8.1",
64
+ "oxfmt": "0.48.0",
65
+ "oxlint": "1.63.0",
66
+ "oxlint-tsgolint": "0.22.1",
59
67
  "rimraf": "6.1.3",
60
- "semantic-release": "24.2.9",
68
+ "semantic-release": "25.0.3",
69
+ "tsdown": "0.22.0",
61
70
  "typescript": "5.9.3",
62
- "vitest": "4.0.18",
63
- "vitest-mock-extended": "3.1.0"
71
+ "vitest": "4.1.5",
72
+ "vitest-mock-extended": "4.0.0"
64
73
  },
65
74
  "release": {
66
75
  "extends": "@diia-inhouse/configs/dist/semantic-release/package"
@@ -68,8 +77,8 @@
68
77
  "commitlint": {
69
78
  "extends": "@diia-inhouse/configs/dist/commitlint"
70
79
  },
71
- "prettier": "@diia-inhouse/eslint-config/prettier",
72
80
  "madge": {
73
81
  "tsConfig": "./tsconfig.json"
74
- }
82
+ },
83
+ "license": "SEE LICENCE IN LICENCE.md"
75
84
  }
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAE5B,oDAAiC;AAEjC,6CAA0B"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=deps.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deps.js","sourceRoot":"","sources":["../../src/interfaces/deps.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AAExB,0CAAuB;AAEvB,0CAAuB;AAEvB,0CAAuB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"mutex.js","sourceRoot":"","sources":["../../src/interfaces/mutex.ts"],"names":[],"mappings":";;;AAEA,mDAA8C;AAArC,+GAAA,YAAY,OAAA"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=pubsub.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pubsub.js","sourceRoot":"","sources":["../../src/interfaces/pubsub.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../src/interfaces/redis.ts"],"names":[],"mappings":";;;AAEA,IAAY,SAGX;AAHD,WAAY,SAAS;IACjB,qCAAwB,CAAA;IACxB,mCAAsB,CAAA;AAC1B,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB;AASD,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IACxB,mCAAe,CAAA;AACnB,CAAC,EAFW,gBAAgB,gCAAhB,gBAAgB,QAE3B"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/interfaces/store.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AAExB,0CAAuB;AAEvB,0CAAuB;AAEvB,0CAAuB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"mutex.js","sourceRoot":"","sources":["../../src/services/mutex.ts"],"names":[],"mappings":";;;AACA,qDAA8C;AAE9C,+CAAyG;AAGzG,+CAA8E;AAC9E,mCAAsC;AAEtC,MAAa,cAAc;IAIF;IAEA;IALb,QAAQ,CAAO;IAEvB,YACqB,WAAwB,EAExB,MAAc;QAFd,gBAAW,GAAX,WAAW,CAAa;QAExB,WAAM,GAAN,MAAM,CAAQ;QAE/B,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,WAAW,CAAA;QAEtC,IAAI,CAAC,QAAQ,GAAG,oBAAY,CAAC,YAAY,CAAC,EAAE,GAAG,SAAS,EAAE,SAAS,EAAE,iBAAS,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAExG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YAC7B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,SAAS,CAAA;YAE3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0CAA0C,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;QAC3F,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;QAC5E,CAAC,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAA;QACxC,MAAM,MAAM,GAAG,WAAW,KAAK,wBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAc,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAc,CAAC,mBAAmB,CAAA;QAE9G,OAAO;YACH,MAAM;YACN,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;SAClC,CAAA;IACL,CAAC;IAED,KAAK,CAAC,SAAS;QACX,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAAgB,EAAE,GAAG,GAAG,KAAK,EAAE,EAAE,aAAa,GAAG,GAAG,KAAkB,EAAE;QAC/E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,QAAQ,cAAc,GAAG,KAAK,CAAC,CAAA;QACxE,MAAM,KAAK,GAAG,IAAI,8BAAY,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,EAAE,aAAa,EAAE,CAAC,CAAA;QAEvH,MAAM,KAAK,CAAC,OAAO,EAAE,CAAA;QAErB,OAAO,KAAK,CAAA;IAChB,CAAC;CACJ;AA7CD,wCA6CC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pubsub.js","sourceRoot":"","sources":["../../../src/services/providers/pubsub.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pubsub.js","sourceRoot":"","sources":["../../src/services/pubsub.ts"],"names":[],"mappings":";;;AAAA,+CAAyG;AAGzG,+CAAmE;AACnE,+CAAmD;AAEnD,MAAa,aAAa;IAID;IAEA;IALJ,QAAQ,CAAgB;IAEzC,YACqB,WAAwB,EAExB,MAAc;QAFd,gBAAW,GAAX,WAAW,CAAa;QAExB,WAAM,GAAN,MAAM,CAAQ;QAE/B,IAAI,CAAC,QAAQ,GAAG,IAAI,uBAAc,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACrE,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,YAAY,GAAiB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAA;QAE5D,MAAM,MAAM,GAAmB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,wBAAgB,CAAC,KAAK,CAAC;YAChG,CAAC,CAAC,sBAAc,CAAC,mBAAmB;YACpC,CAAC,CAAC,sBAAc,CAAC,EAAE,CAAA;QAEvB,OAAO;YACH,MAAM;YACN,OAAO,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE;SACpC,CAAA;IACL,CAAC;IAED,KAAK,CAAC,SAAS;QACX,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAe;QAC7B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,IAAa;QACxC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IACrD,CAAC;IAED,kBAAkB,CAAC,OAAe,EAAE,OAAuB;QACvD,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC7D,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAe,EAAE,OAAuB;QAC3D,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACjE,CAAC;CACJ;AA3CD,sCA2CC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../src/services/redis.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/services/store.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from './interfaces';
2
- export * from './interfaces/deps';
3
- export * from './services';
@@ -1,6 +0,0 @@
1
- import { PubSubService, RedlockService, StoreService } from '../services';
2
- export type RedisDeps = {
3
- pubsub?: PubSubService;
4
- redlock?: RedlockService;
5
- store?: StoreService;
6
- };
@@ -1,4 +0,0 @@
1
- export * from './pubsub';
2
- export * from './redis';
3
- export * from './mutex';
4
- export * from './store';
@@ -1,13 +0,0 @@
1
- import { RedlockMutex } from 'redis-semaphore';
2
- export { RedlockMutex } from 'redis-semaphore';
3
- export type Lock = RedlockMutex;
4
- export type MutexStatusResult = {
5
- mutex: string;
6
- };
7
- export type LockOptions = {
8
- /**
9
- * Time in milliseconds between acquire attempts if resource locked
10
- * @defaultValue 500
11
- */
12
- retryInterval?: number;
13
- };
@@ -1,15 +0,0 @@
1
- import { RedisStatus } from './redis';
2
- export interface PubSubStatus {
3
- pub: RedisStatus;
4
- sub: RedisStatus;
5
- }
6
- export type PubSubStatusResult = {
7
- pubsub: PubSubStatus;
8
- };
9
- export type MessageHandler = (message: string) => Promise<unknown>;
10
- export interface PubSubServiceProvider {
11
- unsubscribe(channel: string): Promise<unknown>;
12
- publish(channel: string, data: unknown): Promise<number>;
13
- onceChannelMessage(channel: string, handler: MessageHandler): Promise<void>;
14
- getStatus(): PubSubStatus;
15
- }