UNPKG

core-mvc

Version:

Simple but powerful MVC framework for NodeJS.

34 lines (33 loc) 1.35 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const inversify_1 = require("inversify"); const client_1 = require("@redis/client"); const redis_1 = require("../redis"); const assert_1 = __importDefault(require("../util/assert")); const redis = new inversify_1.AsyncContainerModule(async (bind) => { const createRedisClient = async () => { (0, assert_1.default)(process.env.REDIS_HOST, 'REDIS_HOST must be defined'); const client = (0, client_1.createClient)({ url: `redis://${process.env.REDIS_HOST}:${process.env.REDIS_PORT || '6379'}`, socket: { reconnectStrategy(retries) { if (retries < 60) { return 1000; } return new Error('No retries left'); }, }, }); client.on('error', (error) => { throw error; }); await client.connect(); return client; }; bind(redis_1.RedisClientService).toConstantValue(await createRedisClient()); bind(redis_1.RedisSubscriberClientService).toConstantValue(await createRedisClient()); }); exports.default = redis;