UNPKG

realtime-leaderboard

Version:
46 lines 2.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CustomRedisClient = exports.RedisClientType = void 0; var util_1 = require("util"); var RedisClientType; (function (RedisClientType) { RedisClientType["RedisClient"] = "RedisClient"; RedisClientType["Redis"] = "Redis"; })(RedisClientType = exports.RedisClientType || (exports.RedisClientType = {})); var CustomRedisClient = /** @class */ (function () { function CustomRedisClient(redisClient) { var clientType = CustomRedisClient.getClientType(redisClient); this.init(redisClient, clientType); } CustomRedisClient.getClientType = function (redisClient) { return redisClient.constructor.name; }; CustomRedisClient.prototype.init = function (redisClient, type) { if (type === RedisClientType.RedisClient) { this.type = type; this.zrange = util_1.promisify(redisClient.zrange).bind(redisClient); this.zadd = util_1.promisify(redisClient.zadd).bind(redisClient); this.zscore = util_1.promisify(redisClient.zscore).bind(redisClient); this.zrevrange = util_1.promisify(redisClient.ZREVRANGE).bind(redisClient); this.zrevrank = util_1.promisify(redisClient.zrevrank).bind(redisClient); this.zremrangebyrank = util_1.promisify(redisClient.zremrangebyrank).bind(redisClient); this.zcount = util_1.promisify(redisClient.zcount).bind(redisClient); } else if (type === RedisClientType.Redis) { this.type = type; this.zrange = redisClient.zrange.bind(redisClient); this.zadd = redisClient.zadd.bind(redisClient); this.zscore = redisClient.zscore.bind(redisClient); this.zrevrange = redisClient.zrevrange.bind(redisClient); this.zrevrank = redisClient.zrevrank.bind(redisClient); this.zremrangebyrank = redisClient.zremrangebyrank.bind(redisClient); this.zcount = redisClient.zcount.bind(redisClient); } else { throw Error("Redis client is not supported. Supported Clients: { redis, ioredis }\n Install One of Redis Packages\n >>> npm install redis\n >>> npm install ioredis"); } }; return CustomRedisClient; }()); exports.CustomRedisClient = CustomRedisClient; //# sourceMappingURL=CustomRedisClient.js.map