ecwt 0.3.1 → 0.3.3
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/main.cjs +2 -9
- package/dist/main.mjs +2 -9
- package/package.json +1 -1
package/dist/main.cjs
CHANGED
|
@@ -249,21 +249,14 @@ var EcwtFactory = class {
|
|
|
249
249
|
if (ttl_initial === null) await this.#redisClient.HSET(this.#redis_key_revoked, token_id, "");
|
|
250
250
|
else {
|
|
251
251
|
const expires_in_ms = created_at_ms + ttl_initial * 1e3 - Date.now();
|
|
252
|
-
if (expires_in_ms > 0) await this.#redisClient.
|
|
253
|
-
"HSET",
|
|
254
|
-
this.#redis_key_revoked,
|
|
255
|
-
token_id,
|
|
256
|
-
"",
|
|
257
|
-
"PX",
|
|
258
|
-
String(expires_in_ms)
|
|
259
|
-
]);
|
|
252
|
+
if (expires_in_ms > 0) await this.#redisClient.MULTI().HSET(this.#redis_key_revoked, token_id, "").HPEXPIRE(this.#redis_key_revoked, token_id, expires_in_ms).EXEC();
|
|
260
253
|
}
|
|
261
254
|
} else console.warn("[ecwt] Redis client is not provided. Tokens cannot be revoked.");
|
|
262
255
|
}
|
|
263
256
|
#migrated = false;
|
|
264
257
|
async #migrateExpired() {
|
|
265
258
|
if (this.#redisClient && !this.#migrated) {
|
|
266
|
-
await this.#redisClient.EVAL("local key = KEYS[1] if redis.call(\"TYPE\", key)[\"ok\"] ~= \"zset\" then return end local key_hash = key .. \":hash\" local ts_now = tonumber(ARGV[1]) local cursor = \"0\" repeat local scan = redis.call(\"ZSCAN\", key, cursor, \"COUNT\", 1000) cursor = scan[1] local items = scan[2] for i = 1, #items, 2 do local field = items[i] local expire_at = tonumber(items[i + 1]) local expire_in = expire_at and expire_at - ts_now redis.call(\"HSET\", key_hash, field, \"\")
|
|
259
|
+
await this.#redisClient.EVAL("local key = KEYS[1] if redis.call(\"TYPE\", key)[\"ok\"] ~= \"zset\" then return end local key_hash = key .. \":hash\" local ts_now = tonumber(ARGV[1]) local cursor = \"0\" repeat local scan = redis.call(\"ZSCAN\", key, cursor, \"COUNT\", 1000) cursor = scan[1] local items = scan[2] for i = 1, #items, 2 do local field = items[i] local expire_at = tonumber(items[i + 1]) local expire_in = expire_at and expire_at - ts_now if expire_in and expire_in > 0 then redis.call(\"HSET\", key_hash, field, \"\") redis.call(\"HPEXPIRE\", key_hash, expire_in, \"FIELDS\", 1, field) end end until cursor == \"0\" redis.call(\"DEL\", key) redis.call(\"RENAME\", key_hash, key)", {
|
|
267
260
|
keys: [this.#redis_key_revoked],
|
|
268
261
|
arguments: [String(Date.now())]
|
|
269
262
|
});
|
package/dist/main.mjs
CHANGED
|
@@ -225,21 +225,14 @@ var EcwtFactory = class {
|
|
|
225
225
|
if (ttl_initial === null) await this.#redisClient.HSET(this.#redis_key_revoked, token_id, "");
|
|
226
226
|
else {
|
|
227
227
|
const expires_in_ms = created_at_ms + ttl_initial * 1e3 - Date.now();
|
|
228
|
-
if (expires_in_ms > 0) await this.#redisClient.
|
|
229
|
-
"HSET",
|
|
230
|
-
this.#redis_key_revoked,
|
|
231
|
-
token_id,
|
|
232
|
-
"",
|
|
233
|
-
"PX",
|
|
234
|
-
String(expires_in_ms)
|
|
235
|
-
]);
|
|
228
|
+
if (expires_in_ms > 0) await this.#redisClient.MULTI().HSET(this.#redis_key_revoked, token_id, "").HPEXPIRE(this.#redis_key_revoked, token_id, expires_in_ms).EXEC();
|
|
236
229
|
}
|
|
237
230
|
} else console.warn("[ecwt] Redis client is not provided. Tokens cannot be revoked.");
|
|
238
231
|
}
|
|
239
232
|
#migrated = false;
|
|
240
233
|
async #migrateExpired() {
|
|
241
234
|
if (this.#redisClient && !this.#migrated) {
|
|
242
|
-
await this.#redisClient.EVAL("local key = KEYS[1] if redis.call(\"TYPE\", key)[\"ok\"] ~= \"zset\" then return end local key_hash = key .. \":hash\" local ts_now = tonumber(ARGV[1]) local cursor = \"0\" repeat local scan = redis.call(\"ZSCAN\", key, cursor, \"COUNT\", 1000) cursor = scan[1] local items = scan[2] for i = 1, #items, 2 do local field = items[i] local expire_at = tonumber(items[i + 1]) local expire_in = expire_at and expire_at - ts_now redis.call(\"HSET\", key_hash, field, \"\")
|
|
235
|
+
await this.#redisClient.EVAL("local key = KEYS[1] if redis.call(\"TYPE\", key)[\"ok\"] ~= \"zset\" then return end local key_hash = key .. \":hash\" local ts_now = tonumber(ARGV[1]) local cursor = \"0\" repeat local scan = redis.call(\"ZSCAN\", key, cursor, \"COUNT\", 1000) cursor = scan[1] local items = scan[2] for i = 1, #items, 2 do local field = items[i] local expire_at = tonumber(items[i + 1]) local expire_in = expire_at and expire_at - ts_now if expire_in and expire_in > 0 then redis.call(\"HSET\", key_hash, field, \"\") redis.call(\"HPEXPIRE\", key_hash, expire_in, \"FIELDS\", 1, field) end end until cursor == \"0\" redis.call(\"DEL\", key) redis.call(\"RENAME\", key_hash, key)", {
|
|
243
236
|
keys: [this.#redis_key_revoked],
|
|
244
237
|
arguments: [String(Date.now())]
|
|
245
238
|
});
|