nestjs-redis-plus
Version:
A super-powered Nestjs Redis module
27 lines (26 loc) • 1.46 kB
JavaScript
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ASYNC_OPTIONS_TYPE = exports.OPTIONS_TYPE = exports.ConfigurableModuleClass = void 0;
const common_1 = require("@nestjs/common");
const redis_utils_1 = require("./common/redis.utils");
const redis_constants_1 = require("./redis.constants");
const redis_providers_1 = require("./redis.providers");
_a = new common_1.ConfigurableModuleBuilder({
optionsInjectionToken: redis_constants_1.REDIS_MODULE_OPTIONS_TOKEN,
})
.setClassMethodName("forRoot")
.setFactoryMethodName("createRedisOptions")
.setExtras({}, (definition, { name }) => {
const redisToken = (0, redis_utils_1.getRedisToken)(name);
const nameProvider = (0, redis_providers_1.createRedisNameProvider)(redisToken);
const redisProvider = (0, redis_providers_1.createRedisProvider)(redisToken);
const redisServiceToken = (0, redis_utils_1.getServiceToken)(name);
const redisServiceProvider = (0, redis_providers_1.createRedisServiceProvider)(redisServiceToken);
const providers = (definition.providers ??= []);
const exports = (definition.exports ??= []);
providers.push(redisProvider, nameProvider, redisServiceProvider);
exports.push(redisToken, redisServiceToken);
return definition;
})
.build(), exports.ConfigurableModuleClass = _a.ConfigurableModuleClass, exports.OPTIONS_TYPE = _a.OPTIONS_TYPE, exports.ASYNC_OPTIONS_TYPE = _a.ASYNC_OPTIONS_TYPE;
;