1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.createCacheManager = void 0;
|
4 | const load_package_util_1 = require("../utils/load-package.util");
|
5 | const cache_constants_1 = require("./cache.constants");
|
6 | const default_options_1 = require("./default-options");
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 | function createCacheManager() {
|
13 | return {
|
14 | provide: cache_constants_1.CACHE_MANAGER,
|
15 | useFactory: (options) => {
|
16 | const cacheManager = (0, load_package_util_1.loadPackage)('cache-manager', 'CacheModule', () => require('cache-manager'));
|
17 | return Array.isArray(options)
|
18 | ? cacheManager.multiCaching(options.map(store => cacheManager.caching(Object.assign(Object.assign({}, default_options_1.defaultCacheOptions), (store || {})))))
|
19 | : cacheManager.caching(Object.assign(Object.assign({}, default_options_1.defaultCacheOptions), (options || {})));
|
20 | },
|
21 | inject: [cache_constants_1.CACHE_MODULE_OPTIONS],
|
22 | };
|
23 | }
|
24 | exports.createCacheManager = createCacheManager;
|