ts-cache-mongoose 1.4.2 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.eslintrc CHANGED
@@ -25,7 +25,10 @@
25
25
  "sourceType": "module"
26
26
  },
27
27
  "rules": {
28
- "comma-dangle": ["error", "never"],
28
+ "comma-dangle": [
29
+ "error",
30
+ "never"
31
+ ],
29
32
  "@typescript-eslint/array-type": "error",
30
33
  "@typescript-eslint/consistent-type-imports": "error",
31
34
  "@typescript-eslint/method-signature-style": "error",
@@ -86,6 +89,19 @@
86
89
  "plugin:@typescript-eslint/stylistic-type-checked"
87
90
  ],
88
91
  "rules": {
92
+ "@typescript-eslint/member-delimiter-style": [
93
+ "error",
94
+ {
95
+ "multiline": {
96
+ "delimiter": "none",
97
+ "requireLast": true
98
+ },
99
+ "singleline": {
100
+ "delimiter": "comma",
101
+ "requireLast": false
102
+ }
103
+ }
104
+ ],
89
105
  "@typescript-eslint/consistent-type-exports": "error",
90
106
  "@typescript-eslint/explicit-function-return-type": "error",
91
107
  "@typescript-eslint/explicit-module-boundary-types": "error",
package/README.md CHANGED
@@ -40,6 +40,7 @@ Caching queries is a good way to improve performance of your application
40
40
  - [x] Cache key prefix
41
41
  - [x] Query caching
42
42
  - [x] Aggregate caching
43
+ - [x] Supports ESM and CommonJS
43
44
 
44
45
  ## Installation
45
46
 
@@ -81,6 +82,8 @@ cache.init(mongoose, {
81
82
  engine: 'memory',
82
83
  })
83
84
 
85
+ // OR
86
+
84
87
  // Redis example
85
88
  cache.init(mongoose, {
86
89
  defaultTTL: '60 seconds',
@@ -91,6 +94,7 @@ cache.init(mongoose, {
91
94
  },
92
95
  })
93
96
 
97
+ // Connect to your database
94
98
  mongoose.connect('mongodb://localhost:27017/my-database')
95
99
 
96
100
  // Somewhere in your code
@@ -122,6 +126,15 @@ const books = await Book.aggregate([
122
126
  },
123
127
  }
124
128
  ]).cache('1 minute').exec()
129
+
130
+ // Cache invalidation
131
+
132
+ // To clear all cache, don't use in production unless you know what you are doing
133
+ await cache.clear()
134
+
135
+ // Instead use custom cache key
136
+ const user = await User.findById('61bb4d6a1786e5123d7f4cf1').cache('1 minute', 'some-custom-key').exec()
137
+ await cache.clear('some-custom-key')
125
138
  ```
126
139
 
127
140
  ## Check my other projects
@@ -1 +1 @@
1
- {"version":3,"file":"ICacheOptions.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/ICacheOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,UAAU,aAAa;IACrB,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"ICacheOptions.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/ICacheOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,UAAU,aAAa;IACrB,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAA;IAC1B,aAAa,CAAC,EAAE,YAAY,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,eAAe,aAAa,CAAA"}
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const ms_1 = tslib_1.__importDefault(require("ms"));
5
- const MemoryCacheEngine_1 = tslib_1.__importDefault(require("./engine/MemoryCacheEngine"));
6
- const RedisCacheEngine_1 = tslib_1.__importDefault(require("./engine/RedisCacheEngine"));
1
+ import ms from 'ms';
2
+ import MemoryCacheEngine from './engine/MemoryCacheEngine.js';
3
+ import RedisCacheEngine from './engine/RedisCacheEngine.js';
7
4
  class CacheEngine {
8
5
  constructor(cacheOptions) {
9
6
  this.engines = ['memory', 'redis'];
@@ -13,19 +10,19 @@ class CacheEngine {
13
10
  if (cacheOptions.engine === 'redis' && !cacheOptions.engineOptions) {
14
11
  throw new Error(`Engine options are required for ${cacheOptions.engine} engine`);
15
12
  }
16
- this.defaultTTL = (0, ms_1.default)(cacheOptions.defaultTTL ?? '1 minute');
13
+ this.defaultTTL = ms(cacheOptions.defaultTTL ?? '1 minute');
17
14
  if (cacheOptions.engine === 'redis' && cacheOptions.engineOptions) {
18
- this.engine = new RedisCacheEngine_1.default(cacheOptions.engineOptions);
15
+ this.engine = new RedisCacheEngine(cacheOptions.engineOptions);
19
16
  }
20
17
  if (cacheOptions.engine === 'memory') {
21
- this.engine = new MemoryCacheEngine_1.default();
18
+ this.engine = new MemoryCacheEngine();
22
19
  }
23
20
  }
24
21
  async get(key) {
25
22
  return this.engine.get(key);
26
23
  }
27
24
  async set(key, value, ttl) {
28
- const actualTTL = ttl ? (0, ms_1.default)(ttl) : this.defaultTTL;
25
+ const actualTTL = ttl ? ms(ttl) : this.defaultTTL;
29
26
  return this.engine.set(key, value, actualTTL);
30
27
  }
31
28
  async del(key) {
@@ -38,5 +35,5 @@ class CacheEngine {
38
35
  return this.engine.close();
39
36
  }
40
37
  }
41
- exports.default = CacheEngine;
38
+ export default CacheEngine;
42
39
  //# sourceMappingURL=Cache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Cache.js","sourceRoot":"","sources":["../../../src/cache/Cache.ts"],"names":[],"mappings":";;;AAAA,oDAAmB;AAMnB,2FAA0D;AAC1D,yFAAwD;AAExD,MAAM,WAAW;IAKf,YAAa,YAA2B;QAFvB,YAAO,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAA;QAGrD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,wBAAwB,YAAY,CAAC,MAAM,EAAE,CAAC,CAAA;QAChE,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,mCAAmC,YAAY,CAAC,MAAM,SAAS,CAAC,CAAA;QAClF,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAA,YAAE,EAAC,YAAY,CAAC,UAAU,IAAI,UAAU,CAAC,CAAA;QAE3D,IAAI,YAAY,CAAC,MAAM,KAAK,OAAO,IAAI,YAAY,CAAC,aAAa,EAAE,CAAC;YAClE,IAAI,CAAC,MAAM,GAAG,IAAI,0BAAgB,CAAC,YAAY,CAAC,aAAa,CAAC,CAAA;QAChE,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,GAAG,IAAI,2BAAiB,EAAE,CAAA;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW,EAAE,KAA0D,EAAE,GAAkB;QACpG,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,IAAA,YAAE,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAA;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;IAC/C,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;IAC5B,CAAC;CACF;AAED,kBAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"Cache.js","sourceRoot":"","sources":["../../../src/cache/Cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAMnB,OAAO,iBAAiB,MAAM,4BAA4B,CAAA;AAC1D,OAAO,gBAAgB,MAAM,2BAA2B,CAAA;AAExD,MAAM,WAAW;IAKf,YAAa,YAA2B;QAFvB,YAAO,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAA;QAGrD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,wBAAwB,YAAY,CAAC,MAAM,EAAE,CAAC,CAAA;QAChE,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,mCAAmC,YAAY,CAAC,MAAM,SAAS,CAAC,CAAA;QAClF,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,IAAI,UAAU,CAAC,CAAA;QAE3D,IAAI,YAAY,CAAC,MAAM,KAAK,OAAO,IAAI,YAAY,CAAC,aAAa,EAAE,CAAC;YAClE,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,aAAa,CAAC,CAAA;QAChE,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAA;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW,EAAE,KAA0D,EAAE,GAAkB;QACpG,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAA;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;IAC/C,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;IAC5B,CAAC;CACF;AAED,eAAe,WAAW,CAAA"}
@@ -1,5 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
1
  class MemoryCacheEngine {
4
2
  constructor() {
5
3
  this.cache = {};
@@ -24,5 +22,5 @@ class MemoryCacheEngine {
24
22
  close() {
25
23
  }
26
24
  }
27
- exports.default = MemoryCacheEngine;
25
+ export default MemoryCacheEngine;
28
26
  //# sourceMappingURL=MemoryCacheEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryCacheEngine.js","sourceRoot":"","sources":["../../../../src/cache/engine/MemoryCacheEngine.ts"],"names":[],"mappings":";;AAGA,MAAM,iBAAiB;IAGrB;QACE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,CAAC;IAED,GAAG,CAAE,GAAW;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC5B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACb,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,GAAG,CAAE,GAAW,EAAE,KAAY,EAAE,GAAG,GAAG,QAAQ;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAA;IAC1D,CAAC;IAED,GAAG,CAAE,GAAW;QAEd,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,CAAC;IAED,KAAK;IAEL,CAAC;CACF;AAED,kBAAe,iBAAiB,CAAA"}
1
+ {"version":3,"file":"MemoryCacheEngine.js","sourceRoot":"","sources":["../../../../src/cache/engine/MemoryCacheEngine.ts"],"names":[],"mappings":"AAGA,MAAM,iBAAiB;IAGrB;QACE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,CAAC;IAED,GAAG,CAAE,GAAW;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC5B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACb,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,GAAG,CAAE,GAAW,EAAE,KAAY,EAAE,GAAG,GAAG,QAAQ;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAA;IAC1D,CAAC;IAED,GAAG,CAAE,GAAW;QAEd,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,CAAC;IAED,KAAK;IAEL,CAAC;CACF;AAED,eAAe,iBAAiB,CAAA"}
@@ -1,14 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const ioredis_1 = tslib_1.__importDefault(require("ioredis"));
5
- const mongoose_1 = tslib_1.__importStar(require("mongoose"));
1
+ import IORedis from 'ioredis';
2
+ import mongoose, { Types } from 'mongoose';
6
3
  class RedisCacheEngine {
7
4
  constructor(options) {
8
5
  if (!options.keyPrefix) {
9
6
  options.keyPrefix = 'cache-mongoose:';
10
7
  }
11
- this.client = new ioredis_1.default(options);
8
+ this.client = new IORedis(options);
12
9
  }
13
10
  async get(key) {
14
11
  const value = await this.client.get(key);
@@ -21,8 +18,8 @@ class RedisCacheEngine {
21
18
  if (dateRegex.test(value)) {
22
19
  return new Date(value);
23
20
  }
24
- else if (mongoose_1.default.isObjectIdOrHexString(value)) {
25
- return new mongoose_1.Types.ObjectId(value);
21
+ else if (mongoose.isObjectIdOrHexString(value)) {
22
+ return new Types.ObjectId(value);
26
23
  }
27
24
  }
28
25
  return value;
@@ -42,5 +39,5 @@ class RedisCacheEngine {
42
39
  await this.client.quit();
43
40
  }
44
41
  }
45
- exports.default = RedisCacheEngine;
42
+ export default RedisCacheEngine;
46
43
  //# sourceMappingURL=RedisCacheEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RedisCacheEngine.js","sourceRoot":"","sources":["../../../../src/cache/engine/RedisCacheEngine.ts"],"names":[],"mappings":";;;AAAA,8DAA6B;AAC7B,6DAA0C;AAM1C,MAAM,gBAAgB;IAGpB,YAAa,OAAqB;QAChC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,OAAO,CAAC,SAAS,GAAG,iBAAiB,CAAA;QACvC,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAO,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW;QACpB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACxC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAG,+CAA+C,CAAA;gBACjE,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAA;gBACxB,CAAC;qBAAM,IAAI,kBAAQ,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjD,OAAO,IAAI,gBAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBAClC,CAAC;YACH,CAAC;YACD,OAAO,KAAgB,CAAA;QACzB,CAAC,CAAiE,CAAA;IACpE,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW,EAAE,KAAc,EAAE,GAAG,GAAG,QAAQ;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,eAAe,CAAC,CAAA;IACtE,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW;QACpB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;IAC1B,CAAC;CACF;AAED,kBAAe,gBAAgB,CAAA"}
1
+ {"version":3,"file":"RedisCacheEngine.js","sourceRoot":"","sources":["../../../../src/cache/engine/RedisCacheEngine.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAM1C,MAAM,gBAAgB;IAGpB,YAAa,OAAqB;QAChC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,OAAO,CAAC,SAAS,GAAG,iBAAiB,CAAA;QACvC,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW;QACpB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACxC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAG,+CAA+C,CAAA;gBACjE,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAA;gBACxB,CAAC;qBAAM,IAAI,QAAQ,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjD,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBAClC,CAAC;YACH,CAAC;YACD,OAAO,KAAgB,CAAA;QACzB,CAAC,CAAiE,CAAA;IACpE,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW,EAAE,KAAc,EAAE,GAAG,GAAG,QAAQ;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,eAAe,CAAC,CAAA;IACtE,CAAC;IAED,KAAK,CAAC,GAAG,CAAE,GAAW;QACpB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;IAC1B,CAAC;CACF;AAED,eAAe,gBAAgB,CAAA"}
@@ -1,12 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const key_1 = require("../key");
4
- function extendQuery(mongoose, cache) {
1
+ import { getKey } from '../key.js';
2
+ export default function extendQuery(mongoose, cache) {
5
3
  const mongooseExec = mongoose.Aggregate.prototype.exec;
6
4
  mongoose.Aggregate.prototype.getCacheKey = function () {
7
5
  if (this._key != null)
8
6
  return this._key;
9
- return (0, key_1.getKey)({
7
+ return getKey({
10
8
  pipeline: this.pipeline()
11
9
  });
12
10
  };
@@ -37,5 +35,4 @@ function extendQuery(mongoose, cache) {
37
35
  return result;
38
36
  };
39
37
  }
40
- exports.default = extendQuery;
41
38
  //# sourceMappingURL=aggregate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../../src/extend/aggregate.ts"],"names":[],"mappings":";;AAGA,gCAA+B;AAE/B,SAAwB,WAAW,CAAE,QAAkB,EAAE,KAAY;IAEnE,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAA;IAGtD,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,GAAG;QACzC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,IAAI,CAAA;QAEvC,OAAO,IAAA,YAAM,EAAC;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;SAC1B,CAAC,CAAA;IACJ,CAAC,CAAA;IAGD,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,GAAG;QACzC,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC,CAAA;IAGD,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,GAAY,EAAE,SAAkB;QAC7E,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,IAAI,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,SAAS,IAAI,IAAI,CAAA;QAC7B,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAGD,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,GAAG,KAAK,WAAW,GAAG,IAAQ;QAC7D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;YACxD,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACvC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAE9B,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACrD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;QAEF,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAA;QACpB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,CAAwD,CAAA;QACnG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC9C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;AACH,CAAC;AAjDD,8BAiDC"}
1
+ {"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../../src/extend/aggregate.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,MAAM,CAAC,OAAO,UAAU,WAAW,CAAE,QAAkB,EAAE,KAAY;IAEnE,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAA;IAGtD,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,GAAG;QACzC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,IAAI,CAAA;QAEvC,OAAO,MAAM,CAAC;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;SAC1B,CAAC,CAAA;IACJ,CAAC,CAAA;IAGD,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,GAAG;QACzC,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC,CAAA;IAGD,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,GAAY,EAAE,SAAkB;QAC7E,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,IAAI,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,SAAS,IAAI,IAAI,CAAA;QAC7B,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAGD,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,GAAG,KAAK,WAAW,GAAG,IAAQ;QAC7D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;YACxD,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACvC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAE9B,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACrD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;QAEF,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAA;QACpB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,CAAwD,CAAA;QACnG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC9C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;AACH,CAAC"}
@@ -1,7 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const key_1 = require("../key");
4
- function extendQuery(mongoose, cache) {
1
+ import { getKey } from '../key.js';
2
+ export default function extendQuery(mongoose, cache) {
5
3
  const mongooseExec = mongoose.Query.prototype.exec;
6
4
  mongoose.Query.prototype.getCacheKey = function () {
7
5
  if (this._key != null)
@@ -10,7 +8,7 @@ function extendQuery(mongoose, cache) {
10
8
  const update = this.getUpdate();
11
9
  const options = this.getOptions();
12
10
  const mongooseOptions = this.mongooseOptions();
13
- return (0, key_1.getKey)({
11
+ return getKey({
14
12
  model: this.model.modelName,
15
13
  op: this.op,
16
14
  filter,
@@ -65,5 +63,4 @@ function extendQuery(mongoose, cache) {
65
63
  return result;
66
64
  };
67
65
  }
68
- exports.default = extendQuery;
69
66
  //# sourceMappingURL=query.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/extend/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/extend/query.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
3
2
  //# sourceMappingURL=ICacheEngine.js.map
@@ -1,3 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
3
2
  //# sourceMappingURL=ICacheOptions.js.map
@@ -1,3 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
3
2
  //# sourceMappingURL=IData.js.map
package/dist/esm/key.js CHANGED
@@ -1,15 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getKey = void 0;
4
- const tslib_1 = require("tslib");
5
- const crypto_1 = require("crypto");
6
- const sort_keys_1 = tslib_1.__importDefault(require("sort-keys"));
7
- function getKey(data) {
8
- const sortedObj = (0, sort_keys_1.default)(data, { deep: true });
1
+ import { createHash } from 'crypto';
2
+ import sortKeys from 'sort-keys';
3
+ export function getKey(data) {
4
+ const sortedObj = sortKeys(data, { deep: true });
9
5
  const sortedStr = JSON.stringify(sortedObj, (_, val) => {
10
6
  return val instanceof RegExp ? String(val) : val;
11
7
  });
12
- return (0, crypto_1.createHash)('sha1').update(sortedStr).digest('hex');
8
+ return createHash('sha1').update(sortedStr).digest('hex');
13
9
  }
14
- exports.getKey = getKey;
15
10
  //# sourceMappingURL=key.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"key.js","sourceRoot":"","sources":["../../src/key.ts"],"names":[],"mappings":";;;;AAAA,mCAAmC;AACnC,kEAAgC;AAEhC,SAAgB,MAAM,CAAE,IAAyD;IAC/E,MAAM,SAAS,GAAG,IAAA,mBAAQ,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,GAAY,EAAE,EAAE;QAC9D,OAAO,GAAG,YAAY,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IAClD,CAAC,CAAC,CAAA;IACF,OAAO,IAAA,mBAAU,EAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC3D,CAAC;AAND,wBAMC"}
1
+ {"version":3,"file":"key.js","sourceRoot":"","sources":["../../src/key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,QAAQ,MAAM,WAAW,CAAA;AAEhC,MAAM,UAAU,MAAM,CAAE,IAAyD;IAC/E,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,GAAY,EAAE,EAAE;QAC9D,OAAO,GAAG,YAAY,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IAClD,CAAC,CAAC,CAAA;IACF,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC3D,CAAC"}
@@ -0,0 +1 @@
1
+ { "type": "module" }
@@ -0,0 +1,30 @@
1
+ import Cache from './cache/Cache.js';
2
+ import extendQuery from './extend/query.js';
3
+ import extendAggregate from './extend/aggregate.js';
4
+ class CacheMongoose {
5
+ constructor() {
6
+ }
7
+ static init(mongoose, cacheOptions) {
8
+ if (!this.instance) {
9
+ this.instance = new CacheMongoose();
10
+ this.instance.cache = new Cache(cacheOptions);
11
+ const cache = this.instance.cache;
12
+ extendQuery(mongoose, cache);
13
+ extendAggregate(mongoose, cache);
14
+ }
15
+ return this.instance;
16
+ }
17
+ async clear(customKey) {
18
+ if (customKey != null) {
19
+ await this.cache.del(customKey);
20
+ }
21
+ else {
22
+ await this.cache.clear();
23
+ }
24
+ }
25
+ async close() {
26
+ await this.cache.close();
27
+ }
28
+ }
29
+ export default CacheMongoose;
30
+ //# sourceMappingURL=plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":";;;AAAA,kEAAiC;AAKjC,mEAAwC;AACxC,2EAAgD;AAyBhD,MAAM,aAAa;IAKjB;IAEA,CAAC;IAEM,MAAM,CAAC,IAAI,CAAE,QAAkB,EAAE,YAA2B;QACjE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAA;YACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,eAAK,CAAC,YAAY,CAAC,CAAA;YAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAA;YAEjC,IAAA,eAAW,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YAC5B,IAAA,mBAAe,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QAClC,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,SAAkB;QACpC,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACjC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;QAC1B,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC;CACF;AAED,kBAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,eAAe,CAAA;AAKjC,OAAO,WAAW,MAAM,gBAAgB,CAAA;AACxC,OAAO,eAAe,MAAM,oBAAoB,CAAA;AAyBhD,MAAM,aAAa;IAKjB;IAEA,CAAC;IAEM,MAAM,CAAC,IAAI,CAAE,QAAkB,EAAE,YAA2B;QACjE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAA;YACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,YAAY,CAAC,CAAA;YAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAA;YAEjC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YAC5B,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QAClC,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,SAAkB;QACpC,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACjC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;QAC1B,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC;CACF;AAED,eAAe,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ICacheOptions.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/ICacheOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,UAAU,aAAa;IACrB,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"ICacheOptions.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/ICacheOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,UAAU,aAAa;IACrB,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAA;IAC1B,aAAa,CAAC,EAAE,YAAY,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,eAAe,aAAa,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ts-cache-mongoose",
3
- "version": "1.4.2",
3
+ "version": "1.4.3",
4
4
  "description": "Cache plugin for mongoose Queries and Aggregate (in-memory, redis)",
5
5
  "author": "Alex Eagle",
6
6
  "license": "MIT",
@@ -53,7 +53,7 @@
53
53
  ".": {
54
54
  "import": {
55
55
  "types": "./dist/esm/types/plugin.d.ts",
56
- "default": "./dist/esm/plugin.mjs"
56
+ "default": "./dist/esm/plugin.js"
57
57
  },
58
58
  "require": {
59
59
  "types": "./dist/cjs/types/plugin.d.ts",
@@ -62,6 +62,7 @@
62
62
  }
63
63
  },
64
64
  "main": "dist/cjs/plugin.js",
65
+ "module": "dist/esm/plugin.js",
65
66
  "types": "dist/cjs/types/plugin.d.ts",
66
67
  "scripts": {
67
68
  "lint": "eslint . --ext .js,.ts",
@@ -71,7 +72,7 @@
71
72
  "clean": "rm -rf ./dist",
72
73
  "build": "npm run clean && npm run build:cjs && npm run build:esm",
73
74
  "build:cjs": "tsc -p config/tsconfig.cjs.json",
74
- "build:esm": "tsc -p config/tsconfig.esm.json && mv ./dist/esm/plugin.js ./dist/esm/plugin.mjs",
75
+ "build:esm": "tsc -p config/tsconfig.esm.json && bash/esm.sh",
75
76
  "release": "npm run lint && npm run build && np"
76
77
  },
77
78
  "dependencies": {
@@ -82,16 +83,16 @@
82
83
  "devDependencies": {
83
84
  "@shelf/jest-mongodb": "4.2.0",
84
85
  "@swc/cli": "0.1.63",
85
- "@swc/core": "1.3.99",
86
+ "@swc/core": "1.3.100",
86
87
  "@swc/helpers": "0.5.3",
87
88
  "@swc/jest": "0.2.29",
88
89
  "@swc/register": "0.1.10",
89
90
  "@types/jest": "29.5.10",
90
91
  "@types/ms": "0.7.34",
91
92
  "@types/node": "20",
92
- "@typescript-eslint/eslint-plugin": "6.13.0",
93
- "@typescript-eslint/parser": "6.13.0",
94
- "eslint": "8.54.0",
93
+ "@typescript-eslint/eslint-plugin": "6.13.2",
94
+ "@typescript-eslint/parser": "6.13.2",
95
+ "eslint": "8.55.0",
95
96
  "eslint-plugin-jest": "27.6.0",
96
97
  "eslint-plugin-jest-formatting": "3.1.0",
97
98
  "eslint-plugin-sonarjs": "0.23.0",
@@ -1,8 +1,8 @@
1
1
  import type { RedisOptions } from 'ioredis'
2
2
 
3
3
  interface ICacheOptions {
4
- engine: 'memory' | 'redis',
5
- engineOptions?: RedisOptions,
4
+ engine: 'memory' | 'redis'
5
+ engineOptions?: RedisOptions
6
6
  defaultTTL?: string
7
7
  }
8
8
 
package/tsconfig.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "compilerOptions": {
3
- "target": "es2021",
3
+ "target": "ES2021",
4
4
  "lib": [
5
- "es2021"
5
+ "ES2021",
6
6
  ],
7
- "module": "commonjs",
8
- "moduleResolution": "node",
7
+ "module": "CommonJS",
8
+ "moduleResolution": "Node",
9
9
  "outDir": "dist",
10
10
  "strict": true,
11
11
  "allowSyntheticDefaultImports": true,
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const Cache_1 = tslib_1.__importDefault(require("./cache/Cache"));
5
- const query_1 = tslib_1.__importDefault(require("./extend/query"));
6
- const aggregate_1 = tslib_1.__importDefault(require("./extend/aggregate"));
7
- class CacheMongoose {
8
- constructor() {
9
- }
10
- static init(mongoose, cacheOptions) {
11
- if (!this.instance) {
12
- this.instance = new CacheMongoose();
13
- this.instance.cache = new Cache_1.default(cacheOptions);
14
- const cache = this.instance.cache;
15
- (0, query_1.default)(mongoose, cache);
16
- (0, aggregate_1.default)(mongoose, cache);
17
- }
18
- return this.instance;
19
- }
20
- async clear(customKey) {
21
- if (customKey != null) {
22
- await this.cache.del(customKey);
23
- }
24
- else {
25
- await this.cache.clear();
26
- }
27
- }
28
- async close() {
29
- await this.cache.close();
30
- }
31
- }
32
- exports.default = CacheMongoose;
33
- //# sourceMappingURL=plugin.js.map