16 lines
431 B
TypeScript
16 lines
431 B
TypeScript
// @ts-expect-error Bun exposes RedisClient at runtime.
|
|
import { RedisClient } from "bun";
|
|
|
|
const globalForRedis = global as unknown as { redis: RedisClient };
|
|
|
|
export const getRedisClient = async () => {
|
|
if (!globalForRedis.redis) {
|
|
globalForRedis.redis = new RedisClient(process.env.REDIS_URL || "");
|
|
}
|
|
const client = globalForRedis.redis;
|
|
if (!client.connected) {
|
|
await client.connect();
|
|
}
|
|
return client;
|
|
};
|