@keyv/redis 2.7.0 → 2.8.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/README.md +1 -1
- package/dist/index.js +34 -13
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +1 -2
- package/package.json +4 -3
package/README.md
CHANGED
package/dist/index.js
CHANGED
|
@@ -24,9 +24,9 @@ class KeyvRedis extends events_1.default {
|
|
|
24
24
|
options = { ...(typeof uri === 'string' ? { uri } : uri), ...options };
|
|
25
25
|
// @ts-expect-error - uri is a string or RedisOptions
|
|
26
26
|
this.redis = new ioredis_1.default(options.uri, options);
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
}
|
|
28
|
+
if (options !== undefined && options.useRedisSets === false) {
|
|
29
|
+
this.opts.useRedisSets = false;
|
|
30
30
|
}
|
|
31
31
|
this.redis.on('error', (error) => this.emit('error', error));
|
|
32
32
|
}
|
|
@@ -50,21 +50,37 @@ class KeyvRedis extends events_1.default {
|
|
|
50
50
|
return undefined;
|
|
51
51
|
}
|
|
52
52
|
key = this._getKeyName(key);
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
const set = async (redis) => {
|
|
54
|
+
if (typeof ttl === 'number') {
|
|
55
|
+
await redis.set(key, value, 'PX', ttl);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
await redis.set(key, value);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
if (this.opts.useRedisSets) {
|
|
62
|
+
const trx = await this.redis.multi();
|
|
63
|
+
await set(trx);
|
|
64
|
+
await trx.sadd(this._getNamespace(), key);
|
|
65
|
+
await trx.exec();
|
|
55
66
|
}
|
|
56
67
|
else {
|
|
57
|
-
await this.redis
|
|
58
|
-
}
|
|
59
|
-
if (this.opts.useRedisSets) {
|
|
60
|
-
await this.redis.sadd(this._getNamespace(), key);
|
|
68
|
+
await set(this.redis);
|
|
61
69
|
}
|
|
62
70
|
}
|
|
63
71
|
async delete(key) {
|
|
64
72
|
key = this._getKeyName(key);
|
|
65
|
-
|
|
73
|
+
let items = 0;
|
|
74
|
+
const unlink = async (redis) => redis.unlink(key);
|
|
66
75
|
if (this.opts.useRedisSets) {
|
|
67
|
-
|
|
76
|
+
const trx = this.redis.multi();
|
|
77
|
+
await unlink(trx);
|
|
78
|
+
await trx.srem(this._getNamespace(), key);
|
|
79
|
+
const r = await trx.exec();
|
|
80
|
+
items = r[0][1];
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
items = await unlink(this.redis);
|
|
68
84
|
}
|
|
69
85
|
return items > 0;
|
|
70
86
|
}
|
|
@@ -77,12 +93,17 @@ class KeyvRedis extends events_1.default {
|
|
|
77
93
|
async clear() {
|
|
78
94
|
if (this.opts.useRedisSets) {
|
|
79
95
|
const keys = await this.redis.smembers(this._getNamespace());
|
|
80
|
-
|
|
96
|
+
if (keys.length > 0) {
|
|
97
|
+
await Promise.all([
|
|
98
|
+
this.redis.unlink([...keys]),
|
|
99
|
+
this.redis.srem(this._getNamespace(), [...keys]),
|
|
100
|
+
]);
|
|
101
|
+
}
|
|
81
102
|
}
|
|
82
103
|
else {
|
|
83
104
|
const pattern = 'sets:*';
|
|
84
105
|
const keys = await this.redis.keys(pattern);
|
|
85
|
-
await this.redis.
|
|
106
|
+
await this.redis.unlink(keys);
|
|
86
107
|
}
|
|
87
108
|
}
|
|
88
109
|
async *iterator(namespace) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,oDAAkC;AAClC,sDAA4B;AAc5B,MAAM,SAAuB,SAAQ,gBAAY;IAKhD,YAAY,GAAsC,EAAE,OAA0B;QAC7E,KAAK,EAAE,CAAC;QALT,eAAU,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keyv/redis",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.8.0",
|
|
4
4
|
"description": "Redis storage adapter for Keyv",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"xo": {
|
|
15
15
|
"rules": {
|
|
16
16
|
"unicorn/prefer-module": 0,
|
|
17
|
+
"unicorn/prefer-event-target": 0,
|
|
17
18
|
"unicorn/prefer-node-protocol": 0,
|
|
18
19
|
"unicorn/no-typeof-undefined": 0,
|
|
19
20
|
"import/extensions": 0,
|
|
@@ -71,8 +72,8 @@
|
|
|
71
72
|
"@keyv/test-suite": "*",
|
|
72
73
|
"keyv": "*",
|
|
73
74
|
"requirable": "^1.0.5",
|
|
74
|
-
"timekeeper": "^2.
|
|
75
|
-
"tsd": "^0.
|
|
75
|
+
"timekeeper": "^2.3.1",
|
|
76
|
+
"tsd": "^0.29.0"
|
|
76
77
|
},
|
|
77
78
|
"tsd": {
|
|
78
79
|
"directory": "test"
|