@upstash/redis 1.40.0 → 1.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.
- package/README.md +5 -0
- package/{chunk-RLVWMRRX.mjs → chunk-CGMWROAN.mjs} +557 -4
- package/cloudflare.d.mts +2 -2
- package/cloudflare.d.ts +2 -2
- package/cloudflare.js +557 -4
- package/cloudflare.mjs +1 -1
- package/docs/advanced.mdx +83 -0
- package/docs/commands/array/arcount.mdx +28 -0
- package/docs/commands/array/ardel.mdx +30 -0
- package/docs/commands/array/ardelrange.mdx +32 -0
- package/docs/commands/array/arget.mdx +33 -0
- package/docs/commands/array/argetrange.mdx +38 -0
- package/docs/commands/array/argrep.mdx +69 -0
- package/docs/commands/array/arinfo.mdx +49 -0
- package/docs/commands/array/arinsert.mdx +32 -0
- package/docs/commands/array/arlastitems.mdx +40 -0
- package/docs/commands/array/arlen.mdx +28 -0
- package/docs/commands/array/armget.mdx +31 -0
- package/docs/commands/array/armset.mdx +31 -0
- package/docs/commands/array/arnext.mdx +25 -0
- package/docs/commands/array/arop.mdx +44 -0
- package/docs/commands/array/arring.mdx +36 -0
- package/docs/commands/array/arscan.mdx +42 -0
- package/docs/commands/array/arseek.mdx +34 -0
- package/docs/commands/array/arset.mdx +35 -0
- package/docs/commands/auth/echo.mdx +24 -0
- package/docs/commands/auth/ping.mdx +21 -0
- package/docs/commands/bitmap/bitcount.mdx +39 -0
- package/docs/commands/bitmap/bitop.mdx +142 -0
- package/docs/commands/bitmap/bitpos.mdx +39 -0
- package/docs/commands/bitmap/getbit.mdx +28 -0
- package/docs/commands/bitmap/setbit.mdx +31 -0
- package/docs/commands/connection/client_setinfo.mdx +91 -0
- package/docs/commands/functions/call.mdx +72 -0
- package/docs/commands/functions/call_ro.mdx +57 -0
- package/docs/commands/functions/delete.mdx +22 -0
- package/docs/commands/functions/flush.mdx +16 -0
- package/docs/commands/functions/list.mdx +72 -0
- package/docs/commands/functions/load.mdx +64 -0
- package/docs/commands/functions/stats.mdx +46 -0
- package/docs/commands/generic/del.mdx +29 -0
- package/docs/commands/generic/exists.mdx +26 -0
- package/docs/commands/generic/expire.mdx +29 -0
- package/docs/commands/generic/expireat.mdx +29 -0
- package/docs/commands/generic/keys.mdx +32 -0
- package/docs/commands/generic/persist.mdx +23 -0
- package/docs/commands/generic/pexpire.mdx +28 -0
- package/docs/commands/generic/pexpireat.mdx +29 -0
- package/docs/commands/generic/pttl.mdx +23 -0
- package/docs/commands/generic/randomkey.mdx +21 -0
- package/docs/commands/generic/rename.mdx +28 -0
- package/docs/commands/generic/renamenx.mdx +28 -0
- package/docs/commands/generic/scan.mdx +38 -0
- package/docs/commands/generic/touch.mdx +23 -0
- package/docs/commands/generic/ttl.mdx +23 -0
- package/docs/commands/generic/type.mdx +27 -0
- package/docs/commands/generic/unlink.mdx +29 -0
- package/docs/commands/hash/hdel.mdx +28 -0
- package/docs/commands/hash/hexists.mdx +30 -0
- package/docs/commands/hash/hexpire.mdx +49 -0
- package/docs/commands/hash/hexpireat.mdx +48 -0
- package/docs/commands/hash/hexpiretime.mdx +35 -0
- package/docs/commands/hash/hget.mdx +29 -0
- package/docs/commands/hash/hgetall.mdx +27 -0
- package/docs/commands/hash/hgetdel.mdx +67 -0
- package/docs/commands/hash/hgetex.mdx +123 -0
- package/docs/commands/hash/hincrby.mdx +34 -0
- package/docs/commands/hash/hincrbyfloat.mdx +34 -0
- package/docs/commands/hash/hkeys.mdx +28 -0
- package/docs/commands/hash/hlen.mdx +28 -0
- package/docs/commands/hash/hmget.mdx +33 -0
- package/docs/commands/hash/hpersist.mdx +37 -0
- package/docs/commands/hash/hpexpire.mdx +50 -0
- package/docs/commands/hash/hpexpireat.mdx +48 -0
- package/docs/commands/hash/hpexpiretime.mdx +35 -0
- package/docs/commands/hash/hpttl.mdx +35 -0
- package/docs/commands/hash/hrandfield.mdx +57 -0
- package/docs/commands/hash/hscan.mdx +65 -0
- package/docs/commands/hash/hset.mdx +32 -0
- package/docs/commands/hash/hsetex.mdx +186 -0
- package/docs/commands/hash/hsetnx.mdx +30 -0
- package/docs/commands/hash/hstrlen.mdx +28 -0
- package/docs/commands/hash/httl.mdx +35 -0
- package/docs/commands/hash/hvals.mdx +29 -0
- package/docs/commands/json/arrappend.mdx +35 -0
- package/docs/commands/json/arrindex.mdx +37 -0
- package/docs/commands/json/arrinsert.mdx +34 -0
- package/docs/commands/json/arrlen.mdx +26 -0
- package/docs/commands/json/arrpop.mdx +36 -0
- package/docs/commands/json/arrtrim.mdx +34 -0
- package/docs/commands/json/clear.mdx +30 -0
- package/docs/commands/json/del.mdx +26 -0
- package/docs/commands/json/forget.mdx +26 -0
- package/docs/commands/json/get.mdx +53 -0
- package/docs/commands/json/merge.mdx +32 -0
- package/docs/commands/json/mget.mdx +27 -0
- package/docs/commands/json/mset.mdx +26 -0
- package/docs/commands/json/numincrby.mdx +33 -0
- package/docs/commands/json/nummultby.mdx +33 -0
- package/docs/commands/json/objkeys.mdx +27 -0
- package/docs/commands/json/objlen.mdx +27 -0
- package/docs/commands/json/set.mdx +42 -0
- package/docs/commands/json/strappend.mdx +32 -0
- package/docs/commands/json/strlen.mdx +26 -0
- package/docs/commands/json/toggle.mdx +28 -0
- package/docs/commands/json/type.mdx +28 -0
- package/docs/commands/list/lindex.mdx +32 -0
- package/docs/commands/list/linsert.mdx +41 -0
- package/docs/commands/list/llen.mdx +26 -0
- package/docs/commands/list/lmove.mdx +34 -0
- package/docs/commands/list/lpop.mdx +37 -0
- package/docs/commands/list/lpos.mdx +56 -0
- package/docs/commands/list/lpush.mdx +32 -0
- package/docs/commands/list/lpushx.mdx +38 -0
- package/docs/commands/list/lrange.mdx +37 -0
- package/docs/commands/list/lrem.mdx +33 -0
- package/docs/commands/list/lset.mdx +34 -0
- package/docs/commands/list/ltrim.mdx +33 -0
- package/docs/commands/list/rpop.mdx +37 -0
- package/docs/commands/list/rpush.mdx +32 -0
- package/docs/commands/list/rpushx.mdx +38 -0
- package/docs/commands/overview.mdx +692 -0
- package/docs/commands/pubsub/psubscribe.mdx +36 -0
- package/docs/commands/pubsub/publish.mdx +27 -0
- package/docs/commands/pubsub/subscribe.mdx +28 -0
- package/docs/commands/scripts/eval.mdx +36 -0
- package/docs/commands/scripts/eval_ro.mdx +36 -0
- package/docs/commands/scripts/evalsha.mdx +36 -0
- package/docs/commands/scripts/evalsha_ro.mdx +36 -0
- package/docs/commands/scripts/script_exists.mdx +26 -0
- package/docs/commands/scripts/script_flush.mdx +28 -0
- package/docs/commands/scripts/script_load.mdx +28 -0
- package/docs/commands/server/dbsize.mdx +22 -0
- package/docs/commands/server/flushall.mdx +25 -0
- package/docs/commands/server/flushdb.mdx +25 -0
- package/docs/commands/set/sadd.mdx +32 -0
- package/docs/commands/set/scard.mdx +26 -0
- package/docs/commands/set/sdiff.mdx +27 -0
- package/docs/commands/set/sdiffstore.mdx +32 -0
- package/docs/commands/set/sinter.mdx +27 -0
- package/docs/commands/set/sinterstore.mdx +33 -0
- package/docs/commands/set/sismember.mdx +30 -0
- package/docs/commands/set/smembers.mdx +25 -0
- package/docs/commands/set/smismember.mdx +31 -0
- package/docs/commands/set/smove.mdx +34 -0
- package/docs/commands/set/spop.mdx +36 -0
- package/docs/commands/set/srandmember.mdx +36 -0
- package/docs/commands/set/srem.mdx +29 -0
- package/docs/commands/set/sscan.mdx +39 -0
- package/docs/commands/set/sunion.mdx +27 -0
- package/docs/commands/set/sunionstore.mdx +33 -0
- package/docs/commands/stream/xack.mdx +37 -0
- package/docs/commands/stream/xackdel.mdx +211 -0
- package/docs/commands/stream/xadd.mdx +137 -0
- package/docs/commands/stream/xautoclaim.mdx +80 -0
- package/docs/commands/stream/xclaim.mdx +84 -0
- package/docs/commands/stream/xdel.mdx +34 -0
- package/docs/commands/stream/xdelex.mdx +119 -0
- package/docs/commands/stream/xgroup.mdx +141 -0
- package/docs/commands/stream/xinfo.mdx +77 -0
- package/docs/commands/stream/xlen.mdx +22 -0
- package/docs/commands/stream/xpending.mdx +75 -0
- package/docs/commands/stream/xrange.mdx +59 -0
- package/docs/commands/stream/xread.mdx +65 -0
- package/docs/commands/stream/xreadgroup.mdx +87 -0
- package/docs/commands/stream/xrevrange.mdx +65 -0
- package/docs/commands/stream/xtrim.mdx +75 -0
- package/docs/commands/string/append.mdx +28 -0
- package/docs/commands/string/decr.mdx +27 -0
- package/docs/commands/string/decrby.mdx +30 -0
- package/docs/commands/string/get.mdx +34 -0
- package/docs/commands/string/getdel.mdx +29 -0
- package/docs/commands/string/getrange.mdx +34 -0
- package/docs/commands/string/getset.mdx +28 -0
- package/docs/commands/string/incr.mdx +27 -0
- package/docs/commands/string/incrby.mdx +30 -0
- package/docs/commands/string/incrbyfloat.mdx +30 -0
- package/docs/commands/string/mget.mdx +31 -0
- package/docs/commands/string/mset.mdx +32 -0
- package/docs/commands/string/msetnx.mdx +29 -0
- package/docs/commands/string/set.mdx +79 -0
- package/docs/commands/string/setrange.mdx +38 -0
- package/docs/commands/string/strlen.mdx +26 -0
- package/docs/commands/transaction.mdx +22 -0
- package/docs/commands/zset/zadd.mdx +102 -0
- package/docs/commands/zset/zcard.mdx +31 -0
- package/docs/commands/zset/zcount.mdx +47 -0
- package/docs/commands/zset/zdiffstore.mdx +33 -0
- package/docs/commands/zset/zincrby.mdx +37 -0
- package/docs/commands/zset/zinterstore.mdx +98 -0
- package/docs/commands/zset/zlexcount.mdx +43 -0
- package/docs/commands/zset/zmscore.mdx +34 -0
- package/docs/commands/zset/zpopmax.mdx +25 -0
- package/docs/commands/zset/zpopmin.mdx +25 -0
- package/docs/commands/zset/zrange.mdx +85 -0
- package/docs/commands/zset/zrank.mdx +29 -0
- package/docs/commands/zset/zrem.mdx +33 -0
- package/docs/commands/zset/zremrangebylex.mdx +32 -0
- package/docs/commands/zset/zremrangebyrank.mdx +32 -0
- package/docs/commands/zset/zremrangebyscore.mdx +32 -0
- package/docs/commands/zset/zrevrank.mdx +29 -0
- package/docs/commands/zset/zscan.mdx +58 -0
- package/docs/commands/zset/zscore.mdx +34 -0
- package/docs/commands/zset/zunionstore.mdx +98 -0
- package/docs/deployment.mdx +117 -0
- package/docs/developing.mdx +118 -0
- package/docs/getstarted.mdx +68 -0
- package/docs/overview.mdx +29 -0
- package/docs/pipelining/auto-pipeline.mdx +108 -0
- package/docs/pipelining/pipeline-transaction.mdx +65 -0
- package/docs/retries.mdx +24 -0
- package/docs/troubleshooting.mdx +80 -0
- package/{error-BNzLTXJG.d.mts → error-4e36-PC0.d.mts} +838 -8
- package/{error-BNzLTXJG.d.ts → error-4e36-PC0.d.ts} +838 -8
- package/fastly.d.mts +2 -2
- package/fastly.d.ts +2 -2
- package/fastly.js +557 -4
- package/fastly.mjs +1 -1
- package/nodejs.d.mts +34 -2
- package/nodejs.d.ts +34 -2
- package/nodejs.js +586 -4
- package/nodejs.mjs +30 -1
- package/package.json +16 -5
- package/src/pkg/auto-pipeline.ts +284 -0
- package/src/pkg/commands/append.ts +12 -0
- package/src/pkg/commands/arcount.ts +14 -0
- package/src/pkg/commands/ardel.ts +19 -0
- package/src/pkg/commands/ardelrange.ts +19 -0
- package/src/pkg/commands/arget.ts +17 -0
- package/src/pkg/commands/argetrange.ts +20 -0
- package/src/pkg/commands/argrep.ts +109 -0
- package/src/pkg/commands/arinfo.ts +88 -0
- package/src/pkg/commands/arinsert.ts +24 -0
- package/src/pkg/commands/arlastitems.ts +29 -0
- package/src/pkg/commands/arlen.ts +23 -0
- package/src/pkg/commands/armget.ts +18 -0
- package/src/pkg/commands/armset.ts +26 -0
- package/src/pkg/commands/arnext.ts +20 -0
- package/src/pkg/commands/arop.ts +48 -0
- package/src/pkg/commands/arring.ts +23 -0
- package/src/pkg/commands/arscan.ts +44 -0
- package/src/pkg/commands/arseek.ts +17 -0
- package/src/pkg/commands/arset.ts +20 -0
- package/src/pkg/commands/bitcount.ts +30 -0
- package/src/pkg/commands/bitfield.ts +50 -0
- package/src/pkg/commands/bitop.ts +35 -0
- package/src/pkg/commands/bitpos.ts +15 -0
- package/src/pkg/commands/client_setinfo.ts +17 -0
- package/src/pkg/commands/command.ts +142 -0
- package/src/pkg/commands/copy.ts +22 -0
- package/src/pkg/commands/dbsize.ts +12 -0
- package/src/pkg/commands/decr.ts +12 -0
- package/src/pkg/commands/decrby.ts +12 -0
- package/src/pkg/commands/del.ts +12 -0
- package/src/pkg/commands/echo.ts +12 -0
- package/src/pkg/commands/eval.ts +18 -0
- package/src/pkg/commands/evalRo.ts +18 -0
- package/src/pkg/commands/evalsha.ts +18 -0
- package/src/pkg/commands/evalshaRo.ts +18 -0
- package/src/pkg/commands/exec.ts +23 -0
- package/src/pkg/commands/exists.ts +12 -0
- package/src/pkg/commands/expire.ts +13 -0
- package/src/pkg/commands/expireat.ts +16 -0
- package/src/pkg/commands/fcall.ts +15 -0
- package/src/pkg/commands/fcall_ro.ts +18 -0
- package/src/pkg/commands/flushall.ts +15 -0
- package/src/pkg/commands/flushdb.ts +15 -0
- package/src/pkg/commands/function_delete.ts +12 -0
- package/src/pkg/commands/function_flush.ts +12 -0
- package/src/pkg/commands/function_list.ts +77 -0
- package/src/pkg/commands/function_load.ts +31 -0
- package/src/pkg/commands/function_stats.ts +42 -0
- package/src/pkg/commands/geo_add.ts +54 -0
- package/src/pkg/commands/geo_dist.ts +19 -0
- package/src/pkg/commands/geo_hash.ts +23 -0
- package/src/pkg/commands/geo_pos.ts +39 -0
- package/src/pkg/commands/geo_search.ts +140 -0
- package/src/pkg/commands/geo_search_store.ts +69 -0
- package/src/pkg/commands/get.ts +15 -0
- package/src/pkg/commands/getbit.ts +12 -0
- package/src/pkg/commands/getdel.ts +15 -0
- package/src/pkg/commands/getex.ts +36 -0
- package/src/pkg/commands/getrange.ts +15 -0
- package/src/pkg/commands/getset.ts +15 -0
- package/src/pkg/commands/hdel.ts +12 -0
- package/src/pkg/commands/hexists.ts +12 -0
- package/src/pkg/commands/hexpire.ts +30 -0
- package/src/pkg/commands/hexpireat.ts +30 -0
- package/src/pkg/commands/hexpiretime.ts +13 -0
- package/src/pkg/commands/hget.ts +18 -0
- package/src/pkg/commands/hgetall.ts +44 -0
- package/src/pkg/commands/hgetdel.ts +30 -0
- package/src/pkg/commands/hgetex.ts +56 -0
- package/src/pkg/commands/hincrby.ts +15 -0
- package/src/pkg/commands/hincrbyfloat.ts +15 -0
- package/src/pkg/commands/hkeys.ts +12 -0
- package/src/pkg/commands/hlen.ts +12 -0
- package/src/pkg/commands/hmget.ts +53 -0
- package/src/pkg/commands/hmset.ts +14 -0
- package/src/pkg/commands/hpersist.ts +13 -0
- package/src/pkg/commands/hpexpire.ts +30 -0
- package/src/pkg/commands/hpexpireat.ts +30 -0
- package/src/pkg/commands/hpexpiretime.ts +13 -0
- package/src/pkg/commands/hpttl.ts +13 -0
- package/src/pkg/commands/hrandfield.ts +52 -0
- package/src/pkg/commands/hscan.ts +31 -0
- package/src/pkg/commands/hset.ts +15 -0
- package/src/pkg/commands/hsetex.ts +59 -0
- package/src/pkg/commands/hsetnx.ts +15 -0
- package/src/pkg/commands/hstrlen.ts +12 -0
- package/src/pkg/commands/httl.ts +13 -0
- package/src/pkg/commands/hvals.ts +12 -0
- package/src/pkg/commands/incr.ts +12 -0
- package/src/pkg/commands/incrby.ts +12 -0
- package/src/pkg/commands/incrbyfloat.ts +12 -0
- package/src/pkg/commands/json_arrappend.ts +18 -0
- package/src/pkg/commands/json_arrindex.ts +15 -0
- package/src/pkg/commands/json_arrinsert.ts +18 -0
- package/src/pkg/commands/json_arrlen.ts +15 -0
- package/src/pkg/commands/json_arrpop.ts +15 -0
- package/src/pkg/commands/json_arrtrim.ts +19 -0
- package/src/pkg/commands/json_clear.ts +12 -0
- package/src/pkg/commands/json_del.ts +12 -0
- package/src/pkg/commands/json_forget.ts +12 -0
- package/src/pkg/commands/json_get.ts +45 -0
- package/src/pkg/commands/json_merge.ts +18 -0
- package/src/pkg/commands/json_mget.ts +12 -0
- package/src/pkg/commands/json_mset.ts +27 -0
- package/src/pkg/commands/json_numincrby.ts +15 -0
- package/src/pkg/commands/json_nummultby.ts +15 -0
- package/src/pkg/commands/json_objkeys.ts +15 -0
- package/src/pkg/commands/json_objlen.ts +15 -0
- package/src/pkg/commands/json_resp.ts +11 -0
- package/src/pkg/commands/json_set.ts +35 -0
- package/src/pkg/commands/json_strappend.ts +15 -0
- package/src/pkg/commands/json_strlen.ts +15 -0
- package/src/pkg/commands/json_toggle.ts +12 -0
- package/src/pkg/commands/json_type.ts +12 -0
- package/src/pkg/commands/keys.ts +12 -0
- package/src/pkg/commands/lindex.ts +11 -0
- package/src/pkg/commands/linsert.ts +10 -0
- package/src/pkg/commands/llen.ts +12 -0
- package/src/pkg/commands/lmove.ts +20 -0
- package/src/pkg/commands/lmpop.ts +19 -0
- package/src/pkg/commands/lpop.ts +18 -0
- package/src/pkg/commands/lpos.ts +26 -0
- package/src/pkg/commands/lpush.ts +12 -0
- package/src/pkg/commands/lpushx.ts +12 -0
- package/src/pkg/commands/lrange.ts +11 -0
- package/src/pkg/commands/lrem.ts +10 -0
- package/src/pkg/commands/lset.ts +8 -0
- package/src/pkg/commands/ltrim.ts +8 -0
- package/src/pkg/commands/mget.ts +15 -0
- package/src/pkg/commands/mod.ts +222 -0
- package/src/pkg/commands/mset.ts +12 -0
- package/src/pkg/commands/msetnx.ts +12 -0
- package/src/pkg/commands/persist.ts +12 -0
- package/src/pkg/commands/pexpire.ts +16 -0
- package/src/pkg/commands/pexpireat.ts +16 -0
- package/src/pkg/commands/pfadd.ts +11 -0
- package/src/pkg/commands/pfcount.ts +11 -0
- package/src/pkg/commands/pfmerge.ts +11 -0
- package/src/pkg/commands/ping.ts +15 -0
- package/src/pkg/commands/psetex.ts +14 -0
- package/src/pkg/commands/psubscribe.ts +26 -0
- package/src/pkg/commands/pttl.ts +12 -0
- package/src/pkg/commands/publish.ts +12 -0
- package/src/pkg/commands/randomkey.ts +12 -0
- package/src/pkg/commands/rename.ts +12 -0
- package/src/pkg/commands/renamenx.ts +12 -0
- package/src/pkg/commands/rpop.ts +21 -0
- package/src/pkg/commands/rpush.ts +12 -0
- package/src/pkg/commands/rpushx.ts +12 -0
- package/src/pkg/commands/sadd.ts +15 -0
- package/src/pkg/commands/scan.ts +63 -0
- package/src/pkg/commands/scard.ts +11 -0
- package/src/pkg/commands/script_exists.ts +15 -0
- package/src/pkg/commands/script_flush.ts +22 -0
- package/src/pkg/commands/script_load.ts +12 -0
- package/src/pkg/commands/sdiff.ts +11 -0
- package/src/pkg/commands/sdiffstore.ts +14 -0
- package/src/pkg/commands/search/command-builder.ts +162 -0
- package/src/pkg/commands/search/index.ts +4 -0
- package/src/pkg/commands/search/schema-builder.ts +320 -0
- package/src/pkg/commands/search/search.ts +218 -0
- package/src/pkg/commands/search/types.ts +1029 -0
- package/src/pkg/commands/search/utils.ts +275 -0
- package/src/pkg/commands/set.ts +52 -0
- package/src/pkg/commands/setbit.ts +15 -0
- package/src/pkg/commands/setex.ts +11 -0
- package/src/pkg/commands/setnx.ts +11 -0
- package/src/pkg/commands/setrange.ts +15 -0
- package/src/pkg/commands/sinter.ts +11 -0
- package/src/pkg/commands/sintercard.ts +19 -0
- package/src/pkg/commands/sinterstore.ts +14 -0
- package/src/pkg/commands/sismember.ts +11 -0
- package/src/pkg/commands/smembers.ts +12 -0
- package/src/pkg/commands/smismember.ts +17 -0
- package/src/pkg/commands/smove.ts +14 -0
- package/src/pkg/commands/spop.ts +18 -0
- package/src/pkg/commands/srandmember.ts +18 -0
- package/src/pkg/commands/srem.ts +11 -0
- package/src/pkg/commands/sscan.ts +31 -0
- package/src/pkg/commands/strlen.ts +12 -0
- package/src/pkg/commands/subscribe.ts +254 -0
- package/src/pkg/commands/sunion.ts +12 -0
- package/src/pkg/commands/sunionstore.ts +15 -0
- package/src/pkg/commands/time.ts +10 -0
- package/src/pkg/commands/touch.ts +12 -0
- package/src/pkg/commands/ttl.ts +12 -0
- package/src/pkg/commands/type.ts +13 -0
- package/src/pkg/commands/types.ts +201 -0
- package/src/pkg/commands/unlink.ts +12 -0
- package/src/pkg/commands/vector/index.ts +11 -0
- package/src/pkg/commands/vector/types.ts +63 -0
- package/src/pkg/commands/vector/utils.ts +67 -0
- package/src/pkg/commands/vector/vector.ts +131 -0
- package/src/pkg/commands/vector_add.ts +18 -0
- package/src/pkg/commands/vector_count.ts +11 -0
- package/src/pkg/commands/vector_create.ts +28 -0
- package/src/pkg/commands/vector_del.ts +13 -0
- package/src/pkg/commands/vector_drop.ts +13 -0
- package/src/pkg/commands/vector_get.ts +18 -0
- package/src/pkg/commands/vector_info.ts +25 -0
- package/src/pkg/commands/vector_query.ts +24 -0
- package/src/pkg/commands/xack.ts +16 -0
- package/src/pkg/commands/xackdel.ts +21 -0
- package/src/pkg/commands/xadd.ts +70 -0
- package/src/pkg/commands/xautoclaim.ts +31 -0
- package/src/pkg/commands/xclaim.ts +56 -0
- package/src/pkg/commands/xdel.ts +16 -0
- package/src/pkg/commands/xdelex.ts +25 -0
- package/src/pkg/commands/xgroup.ts +101 -0
- package/src/pkg/commands/xinfo.ts +28 -0
- package/src/pkg/commands/xlen.ts +12 -0
- package/src/pkg/commands/xpending.ts +44 -0
- package/src/pkg/commands/xrange.ts +49 -0
- package/src/pkg/commands/xread.ts +78 -0
- package/src/pkg/commands/xreadgroup.ts +74 -0
- package/src/pkg/commands/xrevrange.ts +48 -0
- package/src/pkg/commands/xtrim.ts +25 -0
- package/src/pkg/commands/zadd.ts +54 -0
- package/src/pkg/commands/zcard.ts +12 -0
- package/src/pkg/commands/zcount.ts +14 -0
- package/src/pkg/commands/zdiffstore.ts +15 -0
- package/src/pkg/commands/zincrby.ts +14 -0
- package/src/pkg/commands/zinterstore.ts +51 -0
- package/src/pkg/commands/zlexcount.ts +11 -0
- package/src/pkg/commands/zmscore.ts +16 -0
- package/src/pkg/commands/zpopmax.ts +18 -0
- package/src/pkg/commands/zpopmin.ts +18 -0
- package/src/pkg/commands/zrange.ts +72 -0
- package/src/pkg/commands/zrank.ts +14 -0
- package/src/pkg/commands/zrem.ts +11 -0
- package/src/pkg/commands/zremrangebylex.ts +11 -0
- package/src/pkg/commands/zremrangebyrank.ts +14 -0
- package/src/pkg/commands/zremrangebyscore.ts +18 -0
- package/src/pkg/commands/zrevrank.ts +14 -0
- package/src/pkg/commands/zscan.ts +31 -0
- package/src/pkg/commands/zscore.ts +15 -0
- package/src/pkg/commands/zunion.ts +54 -0
- package/src/pkg/commands/zunionstore.ts +52 -0
- package/src/pkg/error.ts +28 -0
- package/src/pkg/http.ts +458 -0
- package/src/pkg/index.ts +1 -0
- package/src/pkg/pipeline.ts +2041 -0
- package/src/pkg/redis.ts +2130 -0
- package/src/pkg/script.ts +100 -0
- package/src/pkg/scriptRo.ts +98 -0
- package/src/pkg/types.ts +35 -0
- package/src/pkg/util.ts +115 -0
- package/src/platforms/cloudflare.ts +162 -0
- package/src/platforms/fastly.ts +105 -0
- package/src/platforms/nodejs.ts +231 -0
- package/src/version.ts +1 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LINDEX
|
|
3
|
+
description: Returns the element at index index in the list stored at key.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
The index is zero-based, so 0 means the first element, 1 the second element and so on. Negative indices can be used to designate elements starting at the tail of the list.
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Arguments
|
|
10
|
+
|
|
11
|
+
<ParamField body="key" type="string" required>
|
|
12
|
+
The key of the list.
|
|
13
|
+
</ParamField>
|
|
14
|
+
|
|
15
|
+
<ParamField body="index" type="number" required>
|
|
16
|
+
The index of the element to return, zero-based.
|
|
17
|
+
</ParamField>
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
## Response
|
|
21
|
+
|
|
22
|
+
<ResponseField type="TValue | null" required>
|
|
23
|
+
The value of the element at index index in the list. If the index is out of range, `null` is returned.
|
|
24
|
+
</ResponseField>
|
|
25
|
+
|
|
26
|
+
<RequestExample>
|
|
27
|
+
```ts Example
|
|
28
|
+
await redis.rpush("key", "a", "b", "c");
|
|
29
|
+
const element = await redis.lindex("key", 0);
|
|
30
|
+
console.log(element); // "a"
|
|
31
|
+
```
|
|
32
|
+
</RequestExample>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LINSERT
|
|
3
|
+
description: Insert an element before or after another element in a list
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
<ParamField body="direction" type="before | after" required>
|
|
15
|
+
Whether to insert the element before or after pivot.
|
|
16
|
+
</ParamField>
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
<ParamField body="pivot" type="TValue" required>
|
|
21
|
+
The element to insert before or after.
|
|
22
|
+
</ParamField>
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
<ParamField body="value" type="TValue" required>
|
|
27
|
+
The element to insert.
|
|
28
|
+
</ParamField>
|
|
29
|
+
|
|
30
|
+
## Response
|
|
31
|
+
|
|
32
|
+
<ResponseField type="integer" required>
|
|
33
|
+
The list length after insertion, `0` when the list doesn't exist or `-1` when pivot was not found.
|
|
34
|
+
</ResponseField>
|
|
35
|
+
|
|
36
|
+
<RequestExample>
|
|
37
|
+
```ts Example
|
|
38
|
+
await redis.rpush("key", "a", "b", "c");
|
|
39
|
+
await redis.linsert("key", "before", "b", "x");
|
|
40
|
+
```
|
|
41
|
+
</RequestExample>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LLEN
|
|
3
|
+
description: Returns the length of the list stored at key.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## Arguments
|
|
9
|
+
|
|
10
|
+
<ParamField body="key" type="string" required>
|
|
11
|
+
The key of the list.
|
|
12
|
+
</ParamField>
|
|
13
|
+
|
|
14
|
+
## Response
|
|
15
|
+
|
|
16
|
+
<ResponseField type="number" required>
|
|
17
|
+
The length of the list at key.
|
|
18
|
+
</ResponseField>
|
|
19
|
+
|
|
20
|
+
<RequestExample>
|
|
21
|
+
```ts Example
|
|
22
|
+
await redis.rpush("key", "a", "b", "c");
|
|
23
|
+
const length = await redis.llen("key");
|
|
24
|
+
console.log(length); // 3
|
|
25
|
+
```
|
|
26
|
+
</RequestExample>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LMOVE
|
|
3
|
+
description: Move an element from one list to another.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="source" type="string" required>
|
|
9
|
+
The key of the source list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="destination" type="string" required>
|
|
13
|
+
The key of the destination list.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
<ParamField body="from" type='"left" | "right"' required>
|
|
17
|
+
The side of the source list from which the element was popped.
|
|
18
|
+
</ParamField>
|
|
19
|
+
|
|
20
|
+
<ParamField body="to" type='"left" | "right"' required>
|
|
21
|
+
The side of the destination list to which the element was pushed.
|
|
22
|
+
</ParamField>
|
|
23
|
+
|
|
24
|
+
## Response
|
|
25
|
+
<ResponseField type="TValue" required>
|
|
26
|
+
The element that was moved.
|
|
27
|
+
</ResponseField>
|
|
28
|
+
|
|
29
|
+
<RequestExample>
|
|
30
|
+
```ts Example
|
|
31
|
+
await redis.rpush("source", "a", "b", "c");
|
|
32
|
+
const element = await redis.move("source", "destination", "left", "left");
|
|
33
|
+
```
|
|
34
|
+
</RequestExample>
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LPOP
|
|
3
|
+
description: Remove and return the first element(s) of a list
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="count" type="integer">
|
|
13
|
+
How many elements to pop. If not specified, a single element is popped.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
## Response
|
|
17
|
+
|
|
18
|
+
<ResponseField type="TValue | TValue[] | null" required>
|
|
19
|
+
The popped element(s). If `count` was specified, an array of elements is
|
|
20
|
+
returned, otherwise a single element is returned. If the list is empty, `null`
|
|
21
|
+
is returned.
|
|
22
|
+
</ResponseField>
|
|
23
|
+
|
|
24
|
+
<RequestExample>
|
|
25
|
+
```ts Single
|
|
26
|
+
await redis.rpush("key", "a", "b", "c");
|
|
27
|
+
const element = await redis.lpop("key");
|
|
28
|
+
console.log(element); // "a"
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
```ts Multiple
|
|
33
|
+
await redis.rpush("key", "a", "b", "c");
|
|
34
|
+
const element = await redis.lpop("key", 2);
|
|
35
|
+
console.log(element); // ["a", "b"]
|
|
36
|
+
```
|
|
37
|
+
</RequestExample>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LPOS
|
|
3
|
+
description: Returns the index of matching elements inside a list.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="element" type="unknown" required>
|
|
13
|
+
The element to match.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
<ParamField body="opts">
|
|
17
|
+
<ParamField body="rank" type="number">
|
|
18
|
+
The rank of the element to match. If specified, the element at the given
|
|
19
|
+
rank is matched instead of the first element.
|
|
20
|
+
</ParamField>
|
|
21
|
+
<ParamField body="count" type="number">
|
|
22
|
+
The maximum number of elements to match. If specified, an array of elements
|
|
23
|
+
is returned instead of a single element.
|
|
24
|
+
</ParamField>
|
|
25
|
+
<ParamField body="maxLen" type="number">
|
|
26
|
+
Limit the number of comparisons to perform.
|
|
27
|
+
</ParamField>
|
|
28
|
+
</ParamField>
|
|
29
|
+
|
|
30
|
+
## Response
|
|
31
|
+
|
|
32
|
+
<ResponseField type="number | number[]" required>
|
|
33
|
+
The index of the matching element or an array of indexes if `opts.count` is
|
|
34
|
+
specified.
|
|
35
|
+
</ResponseField>
|
|
36
|
+
|
|
37
|
+
<RequestExample>
|
|
38
|
+
```ts Example
|
|
39
|
+
await redis.rpush("key", "a", "b", "c");
|
|
40
|
+
const index = await redis.lpos("key", "b");
|
|
41
|
+
console.log(index); // 1
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
```ts With Rank
|
|
45
|
+
await redis.rpush("key", "a", "b", "c", "b");
|
|
46
|
+
const index = await redis.lpos("key", "b", { rank: 2 });
|
|
47
|
+
console.log(index); // 3
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
```ts With Count
|
|
51
|
+
await redis.rpush("key", "a", "b", "b");
|
|
52
|
+
const positions = await redis.lpos("key", "b", { count: 2 });
|
|
53
|
+
console.log(positions); // [1, 2]
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
</RequestExample>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LPUSH
|
|
3
|
+
description: Push an element at the head of the list.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="elements" type="...TValue[]" required>
|
|
13
|
+
One or more elements to push at the head of the list.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Response
|
|
18
|
+
|
|
19
|
+
<ResponseField type="number" required>
|
|
20
|
+
The length of the list after the push operation.
|
|
21
|
+
</ResponseField>
|
|
22
|
+
|
|
23
|
+
<RequestExample>
|
|
24
|
+
```ts Example
|
|
25
|
+
const length1 = await redis.lpush("key", "a", "b", "c");
|
|
26
|
+
console.log(length1); // 3
|
|
27
|
+
const length2 = await redis.lpush("key", "d");
|
|
28
|
+
console.log(length2); // 4
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
</RequestExample>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LPUSHX
|
|
3
|
+
description: Push an element at the head of the list only if the list exists.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="elements" type="...TValue[]" required>
|
|
13
|
+
One or more elements to push at the head of the list.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Response
|
|
18
|
+
|
|
19
|
+
<ResponseField type="number" required>
|
|
20
|
+
The length of the list after the push operation.
|
|
21
|
+
|
|
22
|
+
`0` if the list did not exist and thus no element was pushed.
|
|
23
|
+
</ResponseField>
|
|
24
|
+
|
|
25
|
+
<RequestExample>
|
|
26
|
+
```ts Example
|
|
27
|
+
await redis.lpush("key", "a", "b", "c");
|
|
28
|
+
const length = await redis.lpushx("key", "d");
|
|
29
|
+
console.log(length); // 4
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
```ts Without existing list
|
|
33
|
+
const length = await redis.lpushx("key", "a");
|
|
34
|
+
console.log(length); // 0
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
</RequestExample>
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LRANGE
|
|
3
|
+
description: Returns the specified elements of the list stored at key.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="start" type="integer" required>
|
|
13
|
+
The starting index of the range to return.
|
|
14
|
+
|
|
15
|
+
Use negative numbers to specify offsets starting at the end of the list.
|
|
16
|
+
</ParamField>
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
<ParamField body="end" type="integer" required>
|
|
20
|
+
The ending index of the range to return.
|
|
21
|
+
|
|
22
|
+
Use negative numbers to specify offsets starting at the end of the list.
|
|
23
|
+
</ParamField>
|
|
24
|
+
|
|
25
|
+
## Response
|
|
26
|
+
|
|
27
|
+
<ResponseField type="TValue[]" required>
|
|
28
|
+
The list of elements in the specified range.
|
|
29
|
+
</ResponseField>
|
|
30
|
+
|
|
31
|
+
<RequestExample>
|
|
32
|
+
```ts Example
|
|
33
|
+
await redis.lpush("key", "a", "b", "c");
|
|
34
|
+
const elements = await redis.lrange("key", 1, 2);
|
|
35
|
+
console.log(elements) // ["b", "c"]
|
|
36
|
+
```
|
|
37
|
+
</RequestExample>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LREM
|
|
3
|
+
description: Remove the first `count` occurrences of an element from a list.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="count" type="number" required>
|
|
13
|
+
How many occurrences of the element to remove.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<ParamField body="element" type="TValue" required>
|
|
18
|
+
The element to remove
|
|
19
|
+
</ParamField>
|
|
20
|
+
|
|
21
|
+
## Response
|
|
22
|
+
|
|
23
|
+
<ResponseField type="integer" required>
|
|
24
|
+
The number of elements removed.
|
|
25
|
+
</ResponseField>
|
|
26
|
+
|
|
27
|
+
<RequestExample>
|
|
28
|
+
```ts Example
|
|
29
|
+
await redis.lpush("key", "a", "a", "b", "b", "c");
|
|
30
|
+
const removed = await redis.lrem("key", 4, "b");
|
|
31
|
+
console.log(removed) // 2
|
|
32
|
+
```
|
|
33
|
+
</RequestExample>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LSET
|
|
3
|
+
description: Set a value at a specific index.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="index" type="number" required>
|
|
13
|
+
At which index to set the value.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<ParamField body="data" type="TValue" required>
|
|
18
|
+
The value to set.
|
|
19
|
+
</ParamField>
|
|
20
|
+
|
|
21
|
+
## Response
|
|
22
|
+
|
|
23
|
+
<ResponseField type="OK" required>
|
|
24
|
+
`OK`
|
|
25
|
+
</ResponseField>
|
|
26
|
+
|
|
27
|
+
<RequestExample>
|
|
28
|
+
```ts Example
|
|
29
|
+
await redis.lpush("key", "a", "b", "c");
|
|
30
|
+
await redis.lset("key", 1, "d");
|
|
31
|
+
|
|
32
|
+
// list is now ["a", "d", "c"]
|
|
33
|
+
```
|
|
34
|
+
</RequestExample>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LTRIM
|
|
3
|
+
description: Trim a list to the specified range
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="start" type="number" required>
|
|
13
|
+
The index of the first element to keep.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<ParamField body="end" type="TValue" required>
|
|
18
|
+
The index of the first element to keep.
|
|
19
|
+
</ParamField>
|
|
20
|
+
|
|
21
|
+
## Response
|
|
22
|
+
|
|
23
|
+
<ResponseField type="OK" required>
|
|
24
|
+
`OK`
|
|
25
|
+
</ResponseField>
|
|
26
|
+
|
|
27
|
+
<RequestExample>
|
|
28
|
+
```ts Example
|
|
29
|
+
await redis.lpush("key", "a", "b", "c", "d");
|
|
30
|
+
await redis.ltrim("key", 1, 2);
|
|
31
|
+
// the list is now ["b", "c"]
|
|
32
|
+
```
|
|
33
|
+
</RequestExample>
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: RPOP
|
|
3
|
+
description: Remove and return the last element(s) of a list
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="count" type="integer">
|
|
13
|
+
How many elements to pop. If not specified, a single element is popped.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
## Response
|
|
17
|
+
|
|
18
|
+
<ResponseField type="TValue | TValue[] | null" required>
|
|
19
|
+
The popped element(s). If `count` was specified, an array of elements is
|
|
20
|
+
returned, otherwise a single element is returned. If the list is empty, `null`
|
|
21
|
+
is returned.
|
|
22
|
+
</ResponseField>
|
|
23
|
+
|
|
24
|
+
<RequestExample>
|
|
25
|
+
```ts Single
|
|
26
|
+
await redis.rpush("key", "a", "b", "c");
|
|
27
|
+
const element = await redis.rpop("key");
|
|
28
|
+
console.log(element); // "c"
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
```ts Multiple
|
|
33
|
+
await redis.rpush("key", "a", "b", "c");
|
|
34
|
+
const element = await redis.rpop("key", 2);
|
|
35
|
+
console.log(element); // ["c", "b"]
|
|
36
|
+
```
|
|
37
|
+
</RequestExample>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: RPUSH
|
|
3
|
+
description: Push an element at the end of the list.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="elements" type="...TValue[]" required>
|
|
13
|
+
One or more elements to push at the end of the list.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Response
|
|
18
|
+
|
|
19
|
+
<ResponseField type="number" required>
|
|
20
|
+
The length of the list after the push operation.
|
|
21
|
+
</ResponseField>
|
|
22
|
+
|
|
23
|
+
<RequestExample>
|
|
24
|
+
```ts Example
|
|
25
|
+
const length1 = await redis.rpush("key", "a", "b", "c");
|
|
26
|
+
console.log(length1); // 3
|
|
27
|
+
const length2 = await redis.rpush("key", "d");
|
|
28
|
+
console.log(length2); // 4
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
</RequestExample>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: RPUSHX
|
|
3
|
+
description: Push an element at the end of the list only if the list exists.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Arguments
|
|
7
|
+
|
|
8
|
+
<ParamField body="key" type="string" required>
|
|
9
|
+
The key of the list.
|
|
10
|
+
</ParamField>
|
|
11
|
+
|
|
12
|
+
<ParamField body="elements" type="...TValue[]" required>
|
|
13
|
+
One or more elements to push at the end of the list.
|
|
14
|
+
</ParamField>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Response
|
|
18
|
+
|
|
19
|
+
<ResponseField type="number" required>
|
|
20
|
+
The length of the list after the push operation.
|
|
21
|
+
|
|
22
|
+
`0` if the list did not exist and thus no element was pushed.
|
|
23
|
+
</ResponseField>
|
|
24
|
+
|
|
25
|
+
<RequestExample>
|
|
26
|
+
```ts Example
|
|
27
|
+
await redis.lpush("key", "a", "b", "c");
|
|
28
|
+
const length = await redis.rpushx("key", "d");
|
|
29
|
+
console.log(length); // 4
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
```ts Without existing list
|
|
33
|
+
const length = await redis.rpushx("key", "a");
|
|
34
|
+
console.log(length); // 0
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
</RequestExample>
|