@tc-libs/app-cache 0.10.0 → 0.12.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tc-libs/app-cache",
3
- "version": "0.10.0",
3
+ "version": "0.12.0",
4
4
  "dependencies": {
5
5
  "tslib": "^2.3.0"
6
6
  },
@@ -12,9 +12,12 @@ export declare class AppCacheService {
12
12
  protected readonly _logger: Logger;
13
13
  constructor(_options: AppCacheModuleOptions, _hash: HashService, _cache: Cache);
14
14
  private _createKeyByQuery;
15
- getCachedDataByQuery<T>(functionName: string, find?: any, options?: any): Promise<T | null | undefined>;
15
+ getCachedDataByQuery<T>(functionName: string, find?: any, options?: any): Promise<{
16
+ data: Awaited<T> | undefined;
17
+ key: string;
18
+ }>;
16
19
  getCachedDataByKey<T>(key: string): Promise<T | null | undefined>;
17
- saveToCache(data: any, options?: {
20
+ saveToCache(key: string, data: any, options?: {
18
21
  caching?: ICachingOptions;
19
22
  }): void;
20
23
  }
@@ -18,25 +18,25 @@ let AppCacheService = AppCacheService_1 = class AppCacheService {
18
18
  }
19
19
  _createKeyByQuery(functionName, find, options) {
20
20
  if (options.caching.key)
21
- return;
21
+ return options.caching.key;
22
22
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
23
23
  const { caching, returnPlain, session, ...opts } = options;
24
24
  const keyObject = {
25
25
  ...(find || {}),
26
26
  ...opts,
27
27
  };
28
- options.caching.key = `${functionName}-${this._hash.sha1Base64(JSON.stringify(keyObject))}`;
28
+ return `${functionName}-${this._hash.sha1Base64(JSON.stringify(keyObject))}`;
29
29
  }
30
30
  async getCachedDataByQuery(functionName, find, options) {
31
+ const key = this._createKeyByQuery(functionName, find, options);
31
32
  if (!(this._cacheEnabled && options?.caching?.enabled))
32
- return null;
33
- this._createKeyByQuery(functionName, find, options);
34
- const x = await this._cache.get(options.caching.key);
33
+ return { data: undefined, key };
34
+ const x = await this._cache.get(key);
35
35
  if (x)
36
- this._logger.debug(`[CACHE] key [${options.caching.key}] HIT`);
36
+ this._logger.debug(`[CACHE] key [${key}] HIT`);
37
37
  else
38
- this._logger.debug(`[CACHE] key [${options.caching.key}] MISS`);
39
- return x;
38
+ this._logger.debug(`[CACHE] key [${key}] MISS`);
39
+ return { data: x, key };
40
40
  }
41
41
  async getCachedDataByKey(key) {
42
42
  if (!this._cacheEnabled)
@@ -48,15 +48,15 @@ let AppCacheService = AppCacheService_1 = class AppCacheService {
48
48
  this._logger.debug(`[CACHE] key [${key}] MISS`);
49
49
  return x;
50
50
  }
51
- saveToCache(data, options) {
51
+ saveToCache(key, data, options) {
52
52
  if (!options)
53
53
  return;
54
54
  const { caching } = options;
55
55
  if (!this._cacheEnabled || !caching?.enabled)
56
56
  return;
57
57
  const ttl = caching.ttl || this._cacheTTL;
58
- this._logger.debug(`[CACHE] key [${caching.key}] SET with ttl [${ttl}]`);
59
- this._cache.set(caching.key, data, { ttl });
58
+ this._logger.debug(`[CACHE] key [${key}] SET with ttl [${ttl}]`);
59
+ this._cache.set(key, data, { ttl });
60
60
  }
61
61
  };
62
62
  exports.AppCacheService = AppCacheService;
@@ -1 +1 @@
1
- {"version":3,"file":"app-cache.service.js","sourceRoot":"","sources":["../../../../packages/app-cache/src/app-cache.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-cache.service.js","sourceRoot":"","sources":["../../../../packages/app-cache/src/app-cache.service.ts"],"names":[],"mappings":";;;;;AAAA,2CAA4D;AAC5D,4CAA8C;AAG9C,yDAAsD;AACtD,yEAGoC;AAG7B,IAAM,eAAe,uBAArB,MAAM,eAAe;IAK1B,YAEE,QAAuC,EAC7B,KAAkB,EAE5B,MAAuB;QAHf,aAAQ,GAAR,QAAQ,CAAuB;QAC7B,UAAK,GAAL,KAAK,CAAa;QAElB,WAAM,GAAN,MAAM,CAAO;QAPN,YAAO,GAAW,IAAI,eAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;QASpE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IAC7C,CAAC;IAEO,iBAAiB,CACvB,YAAoB,EACpB,IAAU,EACV,OAAa;QAEb,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;QACpD,6DAA6D;QAC7D,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QAC3D,MAAM,SAAS,GAAG;YAChB,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YACf,GAAG,IAAI;SACR,CAAC;QACF,OAAO,GAAG,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAC7C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAC1B,EAAE,CAAC;IACN,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,YAAoB,EACpB,IAAU,EACV,OAAa;QAEb,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAChE,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;YACpD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QAClC,MAAM,CAAC,GAA2B,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAI,GAAG,CAAC,CAAC;QAChE,IAAI,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,OAAO,CAAC,CAAC;;YACjD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,QAAQ,CAAC,CAAC;QACrD,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAI,GAAW;QACrC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC;QACrC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAI,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,OAAO,CAAC,CAAC;;YACjD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,QAAQ,CAAC,CAAC;QACrD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,WAAW,CAAC,GAAW,EAAE,IAAS,EAAE,OAAuC;QACzE,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,OAAO,EAAE,OAAO;YAAE,OAAO;QACrD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC;QAC1C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,mBAAmB,GAAG,GAAG,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IACtC,CAAC;CACF,CAAA;AA/DY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IAOR,mBAAA,IAAA,eAAM,EAAC,mDAAwB,CAAC,CAAA;IAGhC,mBAAA,IAAA,eAAM,EAAC,6BAAa,CAAC,CAAA;qDADL,oBAAW;GARnB,eAAe,CA+D3B"}
@@ -1,5 +1,5 @@
1
1
  export interface ICachingOptions {
2
2
  enabled: boolean;
3
- key: string;
3
+ key?: string;
4
4
  ttl?: number;
5
5
  }