@tsed/platform-cache 7.83.3 → 8.0.0-alpha.10
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/lib/esm/decorators/useCache.js.map +1 -1
- package/lib/esm/index.js +0 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/interceptors/PlatformCacheInterceptor.js.map +1 -1
- package/lib/esm/services/PlatformCache.js +0 -1
- package/lib/esm/services/PlatformCache.js.map +1 -1
- package/lib/esm/utils/getPrefix.js +1 -1
- package/lib/esm/utils/getPrefix.js.map +1 -1
- package/lib/types/index.d.ts +0 -1
- package/lib/types/interfaces/interfaces.d.ts +2 -8
- package/package.json +24 -22
- package/vitest.config.mts +5 -5
- package/lib/cjs/decorators/useCache.js +0 -10
- package/lib/cjs/decorators/useCache.js.map +0 -1
- package/lib/cjs/index.js +0 -16
- package/lib/cjs/index.js.map +0 -1
- package/lib/cjs/interceptors/PlatformCacheInterceptor.js +0 -185
- package/lib/cjs/interceptors/PlatformCacheInterceptor.js.map +0 -1
- package/lib/cjs/interfaces/PlatformCacheOptions.js +0 -3
- package/lib/cjs/interfaces/PlatformCacheOptions.js.map +0 -1
- package/lib/cjs/interfaces/PlatformCachedObject.js +0 -3
- package/lib/cjs/interfaces/PlatformCachedObject.js.map +0 -1
- package/lib/cjs/interfaces/interfaces.js +0 -3
- package/lib/cjs/interfaces/interfaces.js.map +0 -1
- package/lib/cjs/package.json +0 -3
- package/lib/cjs/services/PlatformCache.js +0 -166
- package/lib/cjs/services/PlatformCache.js.map +0 -1
- package/lib/cjs/utils/getInterceptorOptions.js +0 -10
- package/lib/cjs/utils/getInterceptorOptions.js.map +0 -1
- package/lib/cjs/utils/getPrefix.js +0 -14
- package/lib/cjs/utils/getPrefix.js.map +0 -1
- package/lib/cjs/utils/isEndpoint.js +0 -10
- package/lib/cjs/utils/isEndpoint.js.map +0 -1
- package/lib/esm/package.json +0 -3
- package/lib/esm/utils/getInterceptorOptions.js +0 -6
- package/lib/esm/utils/getInterceptorOptions.js.map +0 -1
- package/lib/types/utils/getInterceptorOptions.d.ts +0 -3
- package/lib/types-esm/decorators/useCache.d.ts +0 -2
- package/lib/types-esm/index.d.ts +0 -12
- package/lib/types-esm/interceptors/PlatformCacheInterceptor.d.ts +0 -37
- package/lib/types-esm/interfaces/PlatformCacheOptions.d.ts +0 -25
- package/lib/types-esm/interfaces/PlatformCachedObject.d.ts +0 -7
- package/lib/types-esm/interfaces/interfaces.d.ts +0 -36
- package/lib/types-esm/services/PlatformCache.d.ts +0 -47
- package/lib/types-esm/utils/getInterceptorOptions.d.ts +0 -3
- package/lib/types-esm/utils/getPrefix.d.ts +0 -2
- package/lib/types-esm/utils/isEndpoint.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCache.js","sourceRoot":"","sources":["../../../src/decorators/useCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"useCache.js","sourceRoot":"","sources":["../../../src/decorators/useCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,UAAU,CAAC;AAEnC,OAAO,EAAC,wBAAwB,EAAC,MAAM,6CAA6C,CAAC;AAGrF,MAAM,UAAU,QAAQ,CAAC,UAAgC,EAAE;IACzD,OAAO,SAAS,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC"}
|
package/lib/esm/index.js
CHANGED
|
@@ -7,7 +7,6 @@ export * from "./interfaces/interfaces.js";
|
|
|
7
7
|
export * from "./interfaces/PlatformCachedObject.js";
|
|
8
8
|
export * from "./interfaces/PlatformCacheOptions.js";
|
|
9
9
|
export * from "./services/PlatformCache.js";
|
|
10
|
-
export * from "./utils/getInterceptorOptions.js";
|
|
11
10
|
export * from "./utils/getPrefix.js";
|
|
12
11
|
export * from "./utils/isEndpoint.js";
|
|
13
12
|
//# sourceMappingURL=index.js.map
|
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,0BAA0B,CAAC;AACzC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,0BAA0B,CAAC;AACzC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformCacheInterceptor.js","sourceRoot":"","sources":["../../../src/interceptors/PlatformCacheInterceptor.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAC,MAAM,YAAY,CAAC;AACrD,OAAO,EAAc,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAA0D,MAAM,UAAU,CAAC;AACxI,OAAO,EAAC,WAAW,EAAE,SAAS,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,eAAe,EAAE,cAAc,EAAC,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"PlatformCacheInterceptor.js","sourceRoot":"","sources":["../../../src/interceptors/PlatformCacheInterceptor.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAC,MAAM,YAAY,CAAC;AACrD,OAAO,EAAc,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAA0D,MAAM,UAAU,CAAC;AACxI,OAAO,EAAC,WAAW,EAAE,SAAS,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,eAAe,EAAE,cAAc,EAAC,MAAM,MAAM,CAAC;AAIrD,OAAO,EAAC,aAAa,EAAC,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAClD,MAAM,YAAY,GAAG,CAAC,OAAgC,EAAE,SAAmB,EAAE,EAAE;IAC7E,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SAC3B,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;SACzD,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAChC,OAAO;YACL,GAAG,OAAO;YACV,CAAC,GAAG,CAAC,EAAE,KAAK;SACb,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC,CAAC;AAEF;;GAEG;AAEI,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAanC,SAAS,CAAC,OAAsD,EAAE,IAAqB;QACrF,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YAC1B,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,GAAW,EACX,EACE,gBAAgB,EAChB,GAAG,EAIJ,EACD,IAAc;QAEd,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAE9C,IAAI,gBAAgB,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAE9B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YAE/D,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,GAAG,aAAa,GAAG,gBAAgB,EAAE,CAAC;gBAC9E,MAAM,IAAI,EAAE,CAAC;YACf,CAAC;YAED,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAsD,EAAE,IAAqB;QAC7F,MAAM,EAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEpG,MAAM,GAAG,GAAG,CAAC,MAAW,EAAE,EAAE;YAC1B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAChD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC3D,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,EAAC,IAAI,EAAE,cAAc,EAAC,CAAC,CAAC;gBACvD,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE,EAAC,IAAI,EAAE,GAAG,EAAE,aAAa,EAAC,CAAC,CAAC;YACpE,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAE3D,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;YAE5B,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC;gBACpD,GAAG,CAAC,MAAM,CAAC,CAAC;YACd,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,EAAC,gBAAgB,EAAE,GAAG,EAAC,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;YAE5B,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YAChB,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,aAAa;YACrB,aAAa,EAAE,GAAG;YAClB,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;YAClC,YAAY,EAAE,OAAO,CAAC,WAAW;YACjC,iBAAiB,EAAE,EAAE,CAAC,OAAO;YAC7B,KAAK,EAAE,EAAE,CAAC,KAAK;SAChB,CAAC,CACH,CAAC;QAEF,MAAM,EAAC,IAAI,EAAC,GAAG,YAAY,CAAC;QAE5B,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAC,cAAc,EAAE,IAAI,EAAC,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAsD,EAAE,IAAqB;QAC/F,MAAM,EAAC,OAAO,EAAE,QAAQ,EAAC,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAElE,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC7B,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,MAAM,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAExD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAE3D,IAAI,YAAY,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,UAAU,CAAC,EAAE,CAAC;YACnE,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;QAE5B,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAE3D,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;YACvB,eAAe,EAAE,WAAW,aAAa,EAAE;SAC5C,CAAC,CAAC;QAEH,iDAAiD;QACjD,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE;YAClB,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE;gBAClD,GAAG,EAAE,aAAa;gBAClB,IAAI;gBACJ,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC;aAC7D,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;IAES,OAAO,CAAC,OAA0D;QAC1E,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACvC,IAAI,GAAG,YAAY,SAAS,IAAI,GAAG,YAAY,eAAe,IAAI,GAAG,YAAY,cAAc,EAAE,CAAC;gBAChG,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YACrC,CAAC;YAED,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IAES,UAAU,CAAC,OAAsD;QACzE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEnD,MAAM,EAAC,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,gBAAgB,EAAC,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;QAEtH,IAAI,EAAC,QAAQ,EAAC,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;QAEvC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEhD,IAAI,QAAQ,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC1C,QAAQ,GAAG,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO;YACL,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7G,gBAAgB;YAChB,GAAG;YACH,IAAI;YACJ,IAAI;YACJ,cAAc;YACd,OAAO;YACP,QAAQ;YACR,IAAI;SACL,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,GAAW;QACvC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC;IACpD,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,GAAW;QACvC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,EAAE,IAAI,EAAE,EAAC,GAAG,EAAE,GAAG,EAAC,CAAC,CAAC;IAC3D,CAAC;IAES,KAAK,CAAC,kBAAkB,CAAC,GAAW;QAC5C,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;IACzC,CAAC;IAES,YAAY,CAAC,YAAkC,EAAE,IAAiB;QAC1E,MAAM,EAAC,OAAO,EAAE,GAAG,EAAC,GAAG,YAAY,CAAC;QACpC,MAAM,EAAC,OAAO,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC;QAEjC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAEjD,IAAI,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChD,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAEzD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE3C,IAAI,CAAC,QAAQ;aACV,UAAU,CAAC;YACV,GAAG,OAAO;YACV,UAAU,EAAE,MAAM;YAClB,eAAe,EAAE,WAAW,GAAG,EAAE;SAClC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AA9MW;IADT,MAAM,EAAE;8BACQ,aAAa;uDAAC;AAGrB;IADT,MAAM,EAAE;8BACS,MAAM;wDAAC;AAGf;IADT,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;;wDACJ;AAGf;IADT,QAAQ,CAAC,qBAAqB,EAAE,CAAC,gBAAgB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC;;2DACnF;AAXnB,wBAAwB;IADpC,WAAW,EAAE;GACD,wBAAwB,CAgNpC"}
|
|
@@ -128,7 +128,6 @@ let PlatformCache = class PlatformCache {
|
|
|
128
128
|
}
|
|
129
129
|
async createCacheManager(settings) {
|
|
130
130
|
const { caches, store = "memory", ttl, ...props } = settings;
|
|
131
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
132
131
|
const { multiCaching, caching } = await import("cache-manager");
|
|
133
132
|
return caches?.length
|
|
134
133
|
? multiCaching(caches)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformCache.js","sourceRoot":"","sources":["../../../src/services/PlatformCache.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAO,MAAM,YAAY,CAAC;AAC/D,OAAO,EAAC,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAC,MAAM,UAAU,CAAC;AACxE,OAAO,EAAC,WAAW,EAA2B,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,iBAAiB,EAAC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"PlatformCache.js","sourceRoot":"","sources":["../../../src/services/PlatformCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { nameOf } from "@tsed/core";
|
|
2
|
-
import { getInterceptorOptions } from "
|
|
2
|
+
import { getInterceptorOptions } from "@tsed/di";
|
|
3
3
|
export function getPrefix(target, propertyKey) {
|
|
4
4
|
const { prefix } = getInterceptorOptions(target, propertyKey);
|
|
5
5
|
if (prefix) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPrefix.js","sourceRoot":"","sources":["../../../src/utils/getPrefix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAO,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,qBAAqB,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"getPrefix.js","sourceRoot":"","sources":["../../../src/utils/getPrefix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAO,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,qBAAqB,EAAC,MAAM,UAAU,CAAC;AAI/C,MAAM,UAAU,SAAS,CAAC,MAAiB,EAAE,WAA4B;IACvE,MAAM,EAAC,MAAM,EAAC,GAAG,qBAAqB,CAAuB,MAAM,EAAE,WAAW,CAAC,CAAC;IAClF,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC;AACvC,CAAC"}
|
package/lib/types/index.d.ts
CHANGED
|
@@ -7,6 +7,5 @@ export * from "./interfaces/interfaces.js";
|
|
|
7
7
|
export * from "./interfaces/PlatformCachedObject.js";
|
|
8
8
|
export * from "./interfaces/PlatformCacheOptions.js";
|
|
9
9
|
export * from "./services/PlatformCache.js";
|
|
10
|
-
export * from "./utils/getInterceptorOptions.js";
|
|
11
10
|
export * from "./utils/getPrefix.js";
|
|
12
11
|
export * from "./utils/isEndpoint.js";
|
|
@@ -1,16 +1,10 @@
|
|
|
1
1
|
import type { BaseContext } from "@tsed/di";
|
|
2
2
|
import type { Cache, CachingConfig, Store } from "cache-manager";
|
|
3
|
-
import { FactoryStore } from "cache-manager/dist/caching";
|
|
3
|
+
import type { FactoryStore } from "cache-manager/dist/caching.js";
|
|
4
4
|
import type { CacheManager } from "../services/PlatformCache.js";
|
|
5
|
-
/**
|
|
6
|
-
* @deprecated Since 2022-11. Use FactoryStore instead.
|
|
7
|
-
*/
|
|
8
|
-
export type PlatformCacheLegacyStoreFactory = {
|
|
9
|
-
create(...args: any[]): Promise<Store | any> | Store | any;
|
|
10
|
-
};
|
|
11
5
|
export type PlatformCacheSettings<Config extends Record<string, any> = any, S extends Store = any> = CachingConfig<Config> & {
|
|
12
6
|
caches?: Cache[];
|
|
13
|
-
store?: "memory" | Store |
|
|
7
|
+
store?: "memory" | Store | FactoryStore<S, Config>;
|
|
14
8
|
max?: number;
|
|
15
9
|
keyResolver?: (args: any[], ctx: BaseContext) => string;
|
|
16
10
|
prefix?: string;
|
package/package.json
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tsed/platform-cache",
|
|
3
3
|
"description": "Platform cache module for Ts.ED Framework",
|
|
4
|
-
"type": "
|
|
5
|
-
"version": "
|
|
4
|
+
"type": "module",
|
|
5
|
+
"version": "8.0.0-alpha.10",
|
|
6
6
|
"source": "./src/index.ts",
|
|
7
|
-
"main": "./lib/
|
|
7
|
+
"main": "./lib/esm/index.js",
|
|
8
8
|
"module": "./lib/esm/index.js",
|
|
9
9
|
"typings": "./lib/types/index.d.ts",
|
|
10
10
|
"exports": {
|
|
11
11
|
".": {
|
|
12
12
|
"types": "./lib/types/index.d.ts",
|
|
13
13
|
"import": "./lib/esm/index.js",
|
|
14
|
-
"
|
|
15
|
-
"default": "./lib/cjs/index.js"
|
|
14
|
+
"default": "./lib/esm/index.js"
|
|
16
15
|
}
|
|
17
16
|
},
|
|
18
17
|
"scripts": {
|
|
@@ -23,27 +22,27 @@
|
|
|
23
22
|
"test:ci": "vitest run --coverage.thresholds.autoUpdate=true"
|
|
24
23
|
},
|
|
25
24
|
"dependencies": {
|
|
26
|
-
"cache-manager": "^5.
|
|
25
|
+
"cache-manager": "^5.7.6",
|
|
27
26
|
"micromatch": "4.0.8",
|
|
28
|
-
"tslib": "2.
|
|
27
|
+
"tslib": "2.7.0"
|
|
29
28
|
},
|
|
30
29
|
"devDependencies": {
|
|
31
|
-
"@tsed/barrels": "
|
|
32
|
-
"@tsed/core": "
|
|
33
|
-
"@tsed/di": "
|
|
34
|
-
"@tsed/json-mapper": "
|
|
35
|
-
"@tsed/schema": "
|
|
36
|
-
"@tsed/typescript": "
|
|
37
|
-
"@types/micromatch": "^4.0.
|
|
38
|
-
"eslint": "
|
|
39
|
-
"typescript": "4.
|
|
40
|
-
"vitest": "2.
|
|
30
|
+
"@tsed/barrels": "8.0.0-alpha.10",
|
|
31
|
+
"@tsed/core": "8.0.0-alpha.10",
|
|
32
|
+
"@tsed/di": "8.0.0-alpha.10",
|
|
33
|
+
"@tsed/json-mapper": "8.0.0-alpha.10",
|
|
34
|
+
"@tsed/schema": "8.0.0-alpha.10",
|
|
35
|
+
"@tsed/typescript": "8.0.0-alpha.10",
|
|
36
|
+
"@types/micromatch": "^4.0.9",
|
|
37
|
+
"eslint": "9.12.0",
|
|
38
|
+
"typescript": "5.4.5",
|
|
39
|
+
"vitest": "2.1.2"
|
|
41
40
|
},
|
|
42
41
|
"peerDependencies": {
|
|
43
|
-
"@tsed/core": "
|
|
44
|
-
"@tsed/di": "
|
|
45
|
-
"@tsed/json-mapper": "
|
|
46
|
-
"@tsed/schema": "
|
|
42
|
+
"@tsed/core": "8.0.0-alpha.10",
|
|
43
|
+
"@tsed/di": "8.0.0-alpha.10",
|
|
44
|
+
"@tsed/json-mapper": "8.0.0-alpha.10",
|
|
45
|
+
"@tsed/schema": "8.0.0-alpha.10"
|
|
47
46
|
},
|
|
48
47
|
"peerDependenciesMeta": {
|
|
49
48
|
"@tsed/core": {
|
|
@@ -65,5 +64,8 @@
|
|
|
65
64
|
},
|
|
66
65
|
"homepage": "https://github.com/tsedio/tsed/tree/production/packages/platform/platform-cache",
|
|
67
66
|
"author": "Romain Lenzotti",
|
|
68
|
-
"license": "MIT"
|
|
67
|
+
"license": "MIT",
|
|
68
|
+
"publishConfig": {
|
|
69
|
+
"tag": "alpha"
|
|
70
|
+
}
|
|
69
71
|
}
|
package/vitest.config.mts
CHANGED
|
@@ -10,12 +10,12 @@ export default defineConfig(
|
|
|
10
10
|
coverage: {
|
|
11
11
|
...presets.test.coverage,
|
|
12
12
|
thresholds: {
|
|
13
|
-
statements:
|
|
14
|
-
branches:
|
|
15
|
-
functions:
|
|
16
|
-
lines:
|
|
13
|
+
statements: 100,
|
|
14
|
+
branches: 98.27,
|
|
15
|
+
functions: 100,
|
|
16
|
+
lines: 100
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
);
|
|
21
|
+
);
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UseCache = void 0;
|
|
4
|
-
const di_1 = require("@tsed/di");
|
|
5
|
-
const PlatformCacheInterceptor_js_1 = require("../interceptors/PlatformCacheInterceptor.js");
|
|
6
|
-
function UseCache(options = {}) {
|
|
7
|
-
return (0, di_1.Intercept)(PlatformCacheInterceptor_js_1.PlatformCacheInterceptor, options);
|
|
8
|
-
}
|
|
9
|
-
exports.UseCache = UseCache;
|
|
10
|
-
//# sourceMappingURL=useCache.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCache.js","sourceRoot":"","sources":["../../../src/decorators/useCache.ts"],"names":[],"mappings":";;;AAAA,iCAAmC;AACnC,6FAAqF;AAGrF,SAAgB,QAAQ,CAAC,UAAgC,EAAE;IACzD,OAAO,IAAA,cAAS,EAAC,sDAAwB,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAFD,4BAEC"}
|
package/lib/cjs/index.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
/**
|
|
5
|
-
* @file Automatically generated by @tsed/barrels.
|
|
6
|
-
*/
|
|
7
|
-
tslib_1.__exportStar(require("./decorators/useCache.js"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./interceptors/PlatformCacheInterceptor.js"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./interfaces/interfaces.js"), exports);
|
|
10
|
-
tslib_1.__exportStar(require("./interfaces/PlatformCachedObject.js"), exports);
|
|
11
|
-
tslib_1.__exportStar(require("./interfaces/PlatformCacheOptions.js"), exports);
|
|
12
|
-
tslib_1.__exportStar(require("./services/PlatformCache.js"), exports);
|
|
13
|
-
tslib_1.__exportStar(require("./utils/getInterceptorOptions.js"), exports);
|
|
14
|
-
tslib_1.__exportStar(require("./utils/getPrefix.js"), exports);
|
|
15
|
-
tslib_1.__exportStar(require("./utils/isEndpoint.js"), exports);
|
|
16
|
-
//# sourceMappingURL=index.js.map
|
package/lib/cjs/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,mEAAyC;AACzC,qFAA2D;AAC3D,qEAA2C;AAC3C,+EAAqD;AACrD,+EAAqD;AACrD,sEAA4C;AAC5C,2EAAiD;AACjD,+DAAqC;AACrC,gEAAsC"}
|
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PlatformCacheInterceptor = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const core_1 = require("@tsed/core");
|
|
6
|
-
const di_1 = require("@tsed/di");
|
|
7
|
-
const json_mapper_1 = require("@tsed/json-mapper");
|
|
8
|
-
const logger_1 = require("@tsed/logger");
|
|
9
|
-
const http_1 = require("http");
|
|
10
|
-
const PlatformCache_js_1 = require("../services/PlatformCache.js");
|
|
11
|
-
const getPrefix_js_1 = require("../utils/getPrefix.js");
|
|
12
|
-
const isEndpoint_js_1 = require("../utils/isEndpoint.js");
|
|
13
|
-
const cleanHeaders = (headers, blacklist) => {
|
|
14
|
-
return Object.entries(headers)
|
|
15
|
-
.filter(([key]) => !blacklist.includes(key.toLowerCase()))
|
|
16
|
-
.reduce((headers, [key, value]) => {
|
|
17
|
-
return {
|
|
18
|
-
...headers,
|
|
19
|
-
[key]: value
|
|
20
|
-
};
|
|
21
|
-
}, {});
|
|
22
|
-
};
|
|
23
|
-
/**
|
|
24
|
-
* @platform
|
|
25
|
-
*/
|
|
26
|
-
let PlatformCacheInterceptor = class PlatformCacheInterceptor {
|
|
27
|
-
intercept(context, next) {
|
|
28
|
-
if (this.cache.disabled()) {
|
|
29
|
-
return next();
|
|
30
|
-
}
|
|
31
|
-
if (!(0, isEndpoint_js_1.isEndpoint)(context.target, context.propertyKey)) {
|
|
32
|
-
return this.cacheMethod(context, next);
|
|
33
|
-
}
|
|
34
|
-
return this.cacheResponse(context, next);
|
|
35
|
-
}
|
|
36
|
-
async canRefreshInBackground(key, { refreshThreshold, ttl }, next) {
|
|
37
|
-
const inQueue = await this.hasKeyInQueue(key);
|
|
38
|
-
if (refreshThreshold && !inQueue) {
|
|
39
|
-
await this.addKeyToQueue(key);
|
|
40
|
-
const currentTTL = await this.cache.ttl(key);
|
|
41
|
-
const calculatedTTL = this.cache.calculateTTL(currentTTL, ttl);
|
|
42
|
-
if (currentTTL === undefined || currentTTL < calculatedTTL - refreshThreshold) {
|
|
43
|
-
await next();
|
|
44
|
-
}
|
|
45
|
-
await this.deleteKeyFromQueue(key);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
async cacheMethod(context, next) {
|
|
49
|
-
const { key, type, ttl, collectionType, refreshThreshold, args, canCache } = this.getOptions(context);
|
|
50
|
-
const set = (result) => {
|
|
51
|
-
if (!canCache || (canCache && canCache(result))) {
|
|
52
|
-
const calculatedTTL = this.cache.calculateTTL(result, ttl);
|
|
53
|
-
const data = (0, json_mapper_1.serialize)(result, { type, collectionType });
|
|
54
|
-
this.cache.setCachedObject(key, data, { args, ttl: calculatedTTL });
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
const cachedObject = await this.cache.getCachedObject(key);
|
|
58
|
-
if (!cachedObject || this.cache.isForceRefresh()) {
|
|
59
|
-
const result = await next();
|
|
60
|
-
if (!(!cachedObject && this.cache.isForceRefresh())) {
|
|
61
|
-
set(result);
|
|
62
|
-
}
|
|
63
|
-
return result;
|
|
64
|
-
}
|
|
65
|
-
this.canRefreshInBackground(key, { refreshThreshold, ttl }, async () => {
|
|
66
|
-
const result = await next();
|
|
67
|
-
await set(result);
|
|
68
|
-
}).catch((er) => this.logger.error({
|
|
69
|
-
event: "CACHE_ERROR",
|
|
70
|
-
method: "cacheMethod",
|
|
71
|
-
concerned_key: key,
|
|
72
|
-
class_name: (0, core_1.nameOf)(context.target),
|
|
73
|
-
property_key: context.propertyKey,
|
|
74
|
-
error_description: er.message,
|
|
75
|
-
stack: er.stack
|
|
76
|
-
}));
|
|
77
|
-
const { data } = cachedObject;
|
|
78
|
-
return (0, json_mapper_1.deserialize)(JSON.parse(data), { collectionType, type });
|
|
79
|
-
}
|
|
80
|
-
async cacheResponse(context, next) {
|
|
81
|
-
const { request, response } = context.args[context.args.length - 1];
|
|
82
|
-
if (request.method !== "GET") {
|
|
83
|
-
return next();
|
|
84
|
-
}
|
|
85
|
-
const { key, ttl, args, $ctx } = this.getOptions(context);
|
|
86
|
-
const cachedObject = await this.cache.getCachedObject(key);
|
|
87
|
-
if (cachedObject && !(request.get("cache-control") === "no-cache")) {
|
|
88
|
-
return this.sendResponse(cachedObject, $ctx);
|
|
89
|
-
}
|
|
90
|
-
const result = await next();
|
|
91
|
-
const calculatedTTL = this.cache.calculateTTL(result, ttl);
|
|
92
|
-
$ctx.response.setHeaders({
|
|
93
|
-
"cache-control": `max-age=${calculatedTTL}`
|
|
94
|
-
});
|
|
95
|
-
// cache final response with his headers and body
|
|
96
|
-
response.onEnd(() => {
|
|
97
|
-
this.cache.setCachedObject(key, response.getBody(), {
|
|
98
|
-
ttl: calculatedTTL,
|
|
99
|
-
args,
|
|
100
|
-
headers: cleanHeaders(response.getHeaders(), this.blacklist)
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
return result;
|
|
104
|
-
}
|
|
105
|
-
getArgs(context) {
|
|
106
|
-
return context.args.reduce((args, arg) => {
|
|
107
|
-
if (arg instanceof di_1.DIContext || arg instanceof http_1.IncomingMessage || arg instanceof http_1.ServerResponse) {
|
|
108
|
-
return args;
|
|
109
|
-
}
|
|
110
|
-
if ((0, core_1.isClass)(arg)) {
|
|
111
|
-
return args.concat((0, json_mapper_1.serialize)(arg));
|
|
112
|
-
}
|
|
113
|
-
return args.concat(arg);
|
|
114
|
-
}, []);
|
|
115
|
-
}
|
|
116
|
-
getOptions(context) {
|
|
117
|
-
const $ctx = context.args[context.args.length - 1];
|
|
118
|
-
const { ttl, type, collectionType, key: k = this.cache.defaultKeyResolver(), refreshThreshold } = context.options || {};
|
|
119
|
-
let { canCache } = context.options || {};
|
|
120
|
-
const args = this.getArgs(context);
|
|
121
|
-
const keyArgs = (0, core_1.isString)(k) ? k : k(args, $ctx);
|
|
122
|
-
if (canCache && canCache === "no-nullish") {
|
|
123
|
-
canCache = (item) => ![null, undefined].includes(item);
|
|
124
|
-
}
|
|
125
|
-
return {
|
|
126
|
-
key: [...[this.prefix, ...(0, getPrefix_js_1.getPrefix)(context.target, context.propertyKey)].filter(Boolean), keyArgs].join(":"),
|
|
127
|
-
refreshThreshold,
|
|
128
|
-
ttl,
|
|
129
|
-
type,
|
|
130
|
-
args,
|
|
131
|
-
collectionType,
|
|
132
|
-
keyArgs,
|
|
133
|
-
canCache,
|
|
134
|
-
$ctx
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
async hasKeyInQueue(key) {
|
|
138
|
-
return !!(await this.cache.get(`$$queue:${key}`));
|
|
139
|
-
}
|
|
140
|
-
async addKeyToQueue(key) {
|
|
141
|
-
await this.cache.set(`$$queue:${key}`, true, { ttl: 120 });
|
|
142
|
-
}
|
|
143
|
-
async deleteKeyFromQueue(key) {
|
|
144
|
-
await this.cache.del(`$$queue:${key}`);
|
|
145
|
-
}
|
|
146
|
-
sendResponse(cachedObject, $ctx) {
|
|
147
|
-
const { headers, ttl } = cachedObject;
|
|
148
|
-
const { request, response } = $ctx;
|
|
149
|
-
const requestEtag = request.get("if-none-match");
|
|
150
|
-
if (requestEtag && headers.etag === requestEtag) {
|
|
151
|
-
response.status(304).setHeaders(headers).body(undefined);
|
|
152
|
-
return undefined;
|
|
153
|
-
}
|
|
154
|
-
const data = JSON.parse(cachedObject.data);
|
|
155
|
-
$ctx.response
|
|
156
|
-
.setHeaders({
|
|
157
|
-
...headers,
|
|
158
|
-
"x-cached": "true",
|
|
159
|
-
"cache-control": `max-age=${ttl}`
|
|
160
|
-
})
|
|
161
|
-
.body(data);
|
|
162
|
-
return data;
|
|
163
|
-
}
|
|
164
|
-
};
|
|
165
|
-
tslib_1.__decorate([
|
|
166
|
-
(0, di_1.Inject)(),
|
|
167
|
-
tslib_1.__metadata("design:type", PlatformCache_js_1.PlatformCache)
|
|
168
|
-
], PlatformCacheInterceptor.prototype, "cache", void 0);
|
|
169
|
-
tslib_1.__decorate([
|
|
170
|
-
(0, di_1.Inject)(),
|
|
171
|
-
tslib_1.__metadata("design:type", logger_1.Logger)
|
|
172
|
-
], PlatformCacheInterceptor.prototype, "logger", void 0);
|
|
173
|
-
tslib_1.__decorate([
|
|
174
|
-
(0, di_1.Constant)("cache.prefix", ""),
|
|
175
|
-
tslib_1.__metadata("design:type", String)
|
|
176
|
-
], PlatformCacheInterceptor.prototype, "prefix", void 0);
|
|
177
|
-
tslib_1.__decorate([
|
|
178
|
-
(0, di_1.Constant)("cache.ignoreHeaders", ["content-length", "x-request-id", "cache-control", "vary", "content-encoding"]),
|
|
179
|
-
tslib_1.__metadata("design:type", Array)
|
|
180
|
-
], PlatformCacheInterceptor.prototype, "blacklist", void 0);
|
|
181
|
-
PlatformCacheInterceptor = tslib_1.__decorate([
|
|
182
|
-
(0, di_1.Interceptor)()
|
|
183
|
-
], PlatformCacheInterceptor);
|
|
184
|
-
exports.PlatformCacheInterceptor = PlatformCacheInterceptor;
|
|
185
|
-
//# sourceMappingURL=PlatformCacheInterceptor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformCacheInterceptor.js","sourceRoot":"","sources":["../../../src/interceptors/PlatformCacheInterceptor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformCacheOptions.js","sourceRoot":"","sources":["../../../src/interfaces/PlatformCacheOptions.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformCachedObject.js","sourceRoot":"","sources":["../../../src/interfaces/PlatformCachedObject.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/interfaces.ts"],"names":[],"mappings":""}
|
package/lib/cjs/package.json
DELETED
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PlatformCache = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const core_1 = require("@tsed/core");
|
|
6
|
-
const di_1 = require("@tsed/di");
|
|
7
|
-
const json_mapper_1 = require("@tsed/json-mapper");
|
|
8
|
-
const logger_1 = require("@tsed/logger");
|
|
9
|
-
const async_hooks_1 = require("async_hooks");
|
|
10
|
-
const getPrefix_js_1 = require("../utils/getPrefix.js");
|
|
11
|
-
const defaultKeyResolver = (args) => {
|
|
12
|
-
return args.map((arg) => ((0, core_1.isClass)(arg) ? JSON.stringify((0, json_mapper_1.serialize)(arg)) : arg)).join(":");
|
|
13
|
-
};
|
|
14
|
-
const storage = new async_hooks_1.AsyncLocalStorage();
|
|
15
|
-
/**
|
|
16
|
-
* @platform
|
|
17
|
-
*/
|
|
18
|
-
let PlatformCache = class PlatformCache {
|
|
19
|
-
#cache;
|
|
20
|
-
get cache() {
|
|
21
|
-
return this.#cache;
|
|
22
|
-
}
|
|
23
|
-
async $onInit() {
|
|
24
|
-
const settings = this.settings.get("cache");
|
|
25
|
-
if (settings) {
|
|
26
|
-
this.#cache = await this.createCacheManager(settings);
|
|
27
|
-
await this.injector.emit("$onCreateCacheManager", this.#cache);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
getKeysOf(target, propertyKey) {
|
|
31
|
-
const prefix = (0, getPrefix_js_1.getPrefix)(target, propertyKey);
|
|
32
|
-
return this.keys(`${prefix.join(":")}:*`);
|
|
33
|
-
}
|
|
34
|
-
disabled() {
|
|
35
|
-
return !this.settings.get("cache");
|
|
36
|
-
}
|
|
37
|
-
defaultKeyResolver() {
|
|
38
|
-
return this.settings.get("cache.keyResolver", defaultKeyResolver);
|
|
39
|
-
}
|
|
40
|
-
defaultTtl() {
|
|
41
|
-
return this.settings.get("cache.ttl");
|
|
42
|
-
}
|
|
43
|
-
calculateTTL(result, currentTtl) {
|
|
44
|
-
const ttl = currentTtl === undefined ? this.defaultTtl() : currentTtl;
|
|
45
|
-
return (0, core_1.isFunction)(ttl) ? ttl(result) : ttl;
|
|
46
|
-
}
|
|
47
|
-
ttl(key) {
|
|
48
|
-
if (this.cache && "store" in this.cache && this.cache.store.ttl) {
|
|
49
|
-
return this.cache.store.ttl(key);
|
|
50
|
-
}
|
|
51
|
-
return Promise.resolve();
|
|
52
|
-
}
|
|
53
|
-
wrap(key, fetch, ttl) {
|
|
54
|
-
if (!this.cache) {
|
|
55
|
-
return fetch();
|
|
56
|
-
}
|
|
57
|
-
return this.cache?.wrap(key, fetch, ttl);
|
|
58
|
-
}
|
|
59
|
-
get(key, options = {}) {
|
|
60
|
-
return Promise.resolve((0, json_mapper_1.deserialize)(this.cache?.get(key), options));
|
|
61
|
-
}
|
|
62
|
-
async set(key, value, options) {
|
|
63
|
-
await this.cache?.set(key, value, options?.ttl);
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
async getCachedObject(key) {
|
|
67
|
-
try {
|
|
68
|
-
return await this.get(key);
|
|
69
|
-
}
|
|
70
|
-
catch (er) {
|
|
71
|
-
this.logger.error({
|
|
72
|
-
event: "CACHE_ERROR",
|
|
73
|
-
method: "getCachedObject",
|
|
74
|
-
error: er
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
async setCachedObject(key, data, opts) {
|
|
79
|
-
try {
|
|
80
|
-
await this.set(key, {
|
|
81
|
-
...opts,
|
|
82
|
-
data: JSON.stringify(data)
|
|
83
|
-
}, {
|
|
84
|
-
ttl: opts.ttl
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
catch (er) {
|
|
88
|
-
this.logger.error({
|
|
89
|
-
event: "CACHE_ERROR",
|
|
90
|
-
method: "setCachedObject",
|
|
91
|
-
error: er
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
async del(key) {
|
|
96
|
-
await this.cache?.del(key);
|
|
97
|
-
}
|
|
98
|
-
async reset() {
|
|
99
|
-
// @ts-ignore
|
|
100
|
-
await this.cache?.reset();
|
|
101
|
-
}
|
|
102
|
-
keys(...args) {
|
|
103
|
-
if (this.cache && "store" in this.cache && this.cache.store.keys) {
|
|
104
|
-
return this.cache.store.keys(...args);
|
|
105
|
-
}
|
|
106
|
-
return Promise.resolve([]);
|
|
107
|
-
}
|
|
108
|
-
async deleteKeys(patterns) {
|
|
109
|
-
const keys = await this.keys(patterns);
|
|
110
|
-
await Promise.all(keys.map((key) => this.del(key)));
|
|
111
|
-
return keys;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Use micromatch instead native patterns. Use this method if the native store method doesn't support glob patterns
|
|
115
|
-
* @param patterns
|
|
116
|
-
*/
|
|
117
|
-
async getMatchingKeys(patterns) {
|
|
118
|
-
const [keys, { default: micromatch }] = await Promise.all([this.keys(), import("micromatch")]);
|
|
119
|
-
return micromatch(keys, patterns);
|
|
120
|
-
}
|
|
121
|
-
async deleteMatchingKeys(patterns) {
|
|
122
|
-
const keys = await this.getMatchingKeys(patterns);
|
|
123
|
-
await Promise.all(keys.map((key) => this.del(key)));
|
|
124
|
-
return keys;
|
|
125
|
-
}
|
|
126
|
-
refresh(callback) {
|
|
127
|
-
return storage.run({ forceRefresh: true }, callback);
|
|
128
|
-
}
|
|
129
|
-
isForceRefresh() {
|
|
130
|
-
return !!storage.getStore()?.forceRefresh;
|
|
131
|
-
}
|
|
132
|
-
async createCacheManager(settings) {
|
|
133
|
-
const { caches, store = "memory", ttl, ...props } = settings;
|
|
134
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
135
|
-
const { multiCaching, caching } = await import("cache-manager");
|
|
136
|
-
return caches?.length
|
|
137
|
-
? multiCaching(caches)
|
|
138
|
-
: caching(this.mapStore(store), {
|
|
139
|
-
...props,
|
|
140
|
-
ttl
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
mapStore(store) {
|
|
144
|
-
if (!(0, core_1.isString)(store) && "create" in store) {
|
|
145
|
-
return store.create;
|
|
146
|
-
}
|
|
147
|
-
return store;
|
|
148
|
-
}
|
|
149
|
-
};
|
|
150
|
-
tslib_1.__decorate([
|
|
151
|
-
(0, di_1.Configuration)(),
|
|
152
|
-
tslib_1.__metadata("design:type", Object)
|
|
153
|
-
], PlatformCache.prototype, "settings", void 0);
|
|
154
|
-
tslib_1.__decorate([
|
|
155
|
-
(0, di_1.Inject)(),
|
|
156
|
-
tslib_1.__metadata("design:type", di_1.InjectorService)
|
|
157
|
-
], PlatformCache.prototype, "injector", void 0);
|
|
158
|
-
tslib_1.__decorate([
|
|
159
|
-
(0, di_1.Inject)(),
|
|
160
|
-
tslib_1.__metadata("design:type", logger_1.Logger)
|
|
161
|
-
], PlatformCache.prototype, "logger", void 0);
|
|
162
|
-
PlatformCache = tslib_1.__decorate([
|
|
163
|
-
(0, di_1.Module)()
|
|
164
|
-
], PlatformCache);
|
|
165
|
-
exports.PlatformCache = PlatformCache;
|
|
166
|
-
//# sourceMappingURL=PlatformCache.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformCache.js","sourceRoot":"","sources":["../../../src/services/PlatformCache.ts"],"names":[],"mappings":";;;;AAAA,qCAA+D;AAC/D,iCAAwE;AACxE,mDAAkF;AAClF,yCAAoC;AACpC,6CAA8C;AAI9C,wDAAgD;AAEhD,MAAM,kBAAkB,GAAG,CAAC,IAAW,EAAE,EAAE;IACzC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC,IAAA,cAAO,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAA,uBAAS,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACjG,CAAC,CAAC;AAKF,MAAM,OAAO,GAA+C,IAAI,+BAAiB,EAAE,CAAC;AAEpF;;GAEG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAa;IAUxB,MAAM,CAA2B;IAEjC,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAwB,OAAO,CAAC,CAAC;QAEnE,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAEtD,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SAChE;IACH,CAAC;IAED,SAAS,CAAC,MAAiB,EAAE,WAA4B;QACvD,MAAM,MAAM,GAAG,IAAA,wBAAS,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAE9C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,QAAQ;QACN,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAwB,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAqC,mBAAmB,EAAE,kBAAkB,CAAC,CAAC;IACxG,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAM,WAAW,CAAC,CAAC;IAC7C,CAAC;IAED,YAAY,CAAC,MAAY,EAAE,UAAgB;QACzC,MAAM,GAAG,GAAG,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QAEtE,OAAO,IAAA,iBAAU,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7C,CAAC;IAED,GAAG,CAAC,GAAW;QACb,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE;YAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAClC;QAED,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,CAAI,GAAW,EAAE,KAAuB,EAAE,GAAY;QACxD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO,KAAK,EAAE,CAAC;SAChB;QAED,OAAO,IAAI,CAAC,KAAK,EAAE,IAAI,CAAI,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED,GAAG,CAAI,GAAW,EAAE,UAAmC,EAAE;QACvD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAA,yBAAW,EAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAI,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,KAAU,EAAE,OAA0B;QAC9D,MAAM,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QAChD,OAAO;IACT,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,GAAW;QAC/B,IAAI;YACF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAuB,GAAG,CAAC,CAAC;SAClD;QAAC,OAAO,EAAE,EAAE;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,KAAK,EAAE,aAAa;gBACpB,MAAM,EAAE,iBAAiB;gBACzB,KAAK,EAAE,EAAE;aACV,CAAC,CAAC;SACJ;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,GAAW,EAAE,IAAS,EAAE,IAAyC;QACrF,IAAI;YACF,MAAM,IAAI,CAAC,GAAG,CACZ,GAAG,EACH;gBACE,GAAG,IAAI;gBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC3B,EACD;gBACE,GAAG,EAAE,IAAI,CAAC,GAAG;aACd,CACF,CAAC;SACH;QAAC,OAAO,EAAE,EAAE;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,KAAK,EAAE,aAAa;gBACpB,MAAM,EAAE,iBAAiB;gBACzB,KAAK,EAAE,EAAE;aACV,CAAC,CAAC;SACJ;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;QACnB,MAAM,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,aAAa;QACb,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI,CAAC,GAAG,IAAW;QACjB,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;YAChE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;SACvC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEvC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAE5D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,QAAgB;QACpC,MAAM,CAAC,IAAI,EAAE,EAAC,OAAO,EAAE,UAAU,EAAC,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAE7F,OAAO,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,QAAgB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAElD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAE5D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,QAAkC;QACxC,OAAO,OAAO,CAAC,GAAG,CAAC,EAAC,YAAY,EAAE,IAAI,EAAC,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,YAAY,CAAC;IAC5C,CAAC;IAES,KAAK,CAAC,kBAAkB,CAAC,QAA+B;QAChE,MAAM,EAAC,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,KAAK,EAAC,GAAG,QAAQ,CAAC;QAC3D,6DAA6D;QAC7D,MAAM,EAAC,YAAY,EAAE,OAAO,EAAC,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAE9D,OAAO,MAAM,EAAE,MAAM;YACnB,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;YACtB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC5B,GAAG,KAAK;gBACR,GAAG;aACJ,CAAC,CAAC;IACT,CAAC;IAEO,QAAQ,CAAC,KAA+C;QAC9D,IAAI,CAAC,IAAA,eAAQ,EAAC,KAAK,CAAC,IAAI,QAAQ,IAAI,KAAK,EAAE;YACzC,OAAO,KAAK,CAAC,MAAM,CAAC;SACrB;QAED,OAAO,KAAK,CAAC;IACf,CAAC;CACF,CAAA;AAlLC;IAAC,IAAA,kBAAa,GAAE;;+CACkB;AAElC;IAAC,IAAA,WAAM,GAAE;sCACW,oBAAe;+CAAC;AAEpC;IAAC,IAAA,WAAM,GAAE;sCACS,eAAM;6CAAC;AARd,aAAa;IADzB,IAAA,WAAM,GAAE;GACI,aAAa,CAmLzB;AAnLY,sCAAa"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getInterceptorOptions = void 0;
|
|
4
|
-
const core_1 = require("@tsed/core");
|
|
5
|
-
const di_1 = require("@tsed/di");
|
|
6
|
-
function getInterceptorOptions(target, propertyKey) {
|
|
7
|
-
return core_1.Store.from(target).get(di_1.INJECTABLE_PROP)?.[propertyKey]?.options;
|
|
8
|
-
}
|
|
9
|
-
exports.getInterceptorOptions = getInterceptorOptions;
|
|
10
|
-
//# sourceMappingURL=getInterceptorOptions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getInterceptorOptions.js","sourceRoot":"","sources":["../../../src/utils/getInterceptorOptions.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AACvC,iCAAyC;AAGzC,SAAgB,qBAAqB,CAAC,MAAiB,EAAE,WAA4B;IACnF,OAAO,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,oBAAe,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;AACzE,CAAC;AAFD,sDAEC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getPrefix = void 0;
|
|
4
|
-
const core_1 = require("@tsed/core");
|
|
5
|
-
const getInterceptorOptions_js_1 = require("./getInterceptorOptions.js");
|
|
6
|
-
function getPrefix(target, propertyKey) {
|
|
7
|
-
const { prefix } = (0, getInterceptorOptions_js_1.getInterceptorOptions)(target, propertyKey);
|
|
8
|
-
if (prefix) {
|
|
9
|
-
return [prefix];
|
|
10
|
-
}
|
|
11
|
-
return [(0, core_1.nameOf)(target), propertyKey];
|
|
12
|
-
}
|
|
13
|
-
exports.getPrefix = getPrefix;
|
|
14
|
-
//# sourceMappingURL=getPrefix.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getPrefix.js","sourceRoot":"","sources":["../../../src/utils/getPrefix.ts"],"names":[],"mappings":";;;AAAA,qCAAwC;AACxC,yEAAiE;AAEjE,SAAgB,SAAS,CAAC,MAAiB,EAAE,WAA4B;IACvE,MAAM,EAAC,MAAM,EAAC,GAAG,IAAA,gDAAqB,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC5D,IAAI,MAAM,EAAE;QACV,OAAO,CAAC,MAAM,CAAC,CAAC;KACjB;IAED,OAAO,CAAC,IAAA,aAAM,EAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC;AACvC,CAAC;AAPD,8BAOC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isEndpoint = void 0;
|
|
4
|
-
const core_1 = require("@tsed/core");
|
|
5
|
-
const schema_1 = require("@tsed/schema");
|
|
6
|
-
function isEndpoint(target, propertyKey) {
|
|
7
|
-
return core_1.Store.fromMethod(target, propertyKey).has(schema_1.JsonEntityStore);
|
|
8
|
-
}
|
|
9
|
-
exports.isEndpoint = isEndpoint;
|
|
10
|
-
//# sourceMappingURL=isEndpoint.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isEndpoint.js","sourceRoot":"","sources":["../../../src/utils/isEndpoint.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AACvC,yCAA6C;AAE7C,SAAgB,UAAU,CAAC,MAAiB,EAAE,WAA4B;IACxE,OAAO,YAAK,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,wBAAe,CAAC,CAAC;AACpE,CAAC;AAFD,gCAEC"}
|
package/lib/esm/package.json
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { Store } from "@tsed/core";
|
|
2
|
-
import { INJECTABLE_PROP } from "@tsed/di";
|
|
3
|
-
export function getInterceptorOptions(target, propertyKey) {
|
|
4
|
-
return Store.from(target).get(INJECTABLE_PROP)?.[propertyKey]?.options;
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=getInterceptorOptions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getInterceptorOptions.js","sourceRoot":"","sources":["../../../src/utils/getInterceptorOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAO,MAAM,YAAY,CAAC;AACvC,OAAO,EAAC,eAAe,EAAC,MAAM,UAAU,CAAC;AAGzC,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,WAA4B;IACnF,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;AACzE,CAAC"}
|
package/lib/types-esm/index.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file Automatically generated by @tsed/barrels.
|
|
3
|
-
*/
|
|
4
|
-
export * from "./decorators/useCache.js";
|
|
5
|
-
export * from "./interceptors/PlatformCacheInterceptor.js";
|
|
6
|
-
export * from "./interfaces/interfaces.js";
|
|
7
|
-
export * from "./interfaces/PlatformCachedObject.js";
|
|
8
|
-
export * from "./interfaces/PlatformCacheOptions.js";
|
|
9
|
-
export * from "./services/PlatformCache.js";
|
|
10
|
-
export * from "./utils/getInterceptorOptions.js";
|
|
11
|
-
export * from "./utils/getPrefix.js";
|
|
12
|
-
export * from "./utils/isEndpoint.js";
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { BaseContext, InterceptorContext, InterceptorMethods, InterceptorNext } from "@tsed/di";
|
|
2
|
-
import { Logger } from "@tsed/logger";
|
|
3
|
-
import { PlatformCachedObject } from "../interfaces/PlatformCachedObject.js";
|
|
4
|
-
import { PlatformCacheOptions } from "../interfaces/PlatformCacheOptions.js";
|
|
5
|
-
import { PlatformCache } from "../services/PlatformCache.js";
|
|
6
|
-
/**
|
|
7
|
-
* @platform
|
|
8
|
-
*/
|
|
9
|
-
export declare class PlatformCacheInterceptor implements InterceptorMethods {
|
|
10
|
-
protected cache: PlatformCache;
|
|
11
|
-
protected logger: Logger;
|
|
12
|
-
protected prefix: string;
|
|
13
|
-
protected blacklist: string[];
|
|
14
|
-
intercept(context: InterceptorContext<any, PlatformCacheOptions>, next: InterceptorNext): unknown;
|
|
15
|
-
canRefreshInBackground(key: string, { refreshThreshold, ttl }: {
|
|
16
|
-
refreshThreshold?: number;
|
|
17
|
-
ttl: any;
|
|
18
|
-
}, next: Function): Promise<void>;
|
|
19
|
-
cacheMethod(context: InterceptorContext<any, PlatformCacheOptions>, next: InterceptorNext): Promise<any>;
|
|
20
|
-
cacheResponse(context: InterceptorContext<any, PlatformCacheOptions>, next: InterceptorNext): Promise<any>;
|
|
21
|
-
protected getArgs(context: InterceptorContext<unknown, PlatformCacheOptions>): any;
|
|
22
|
-
protected getOptions(context: InterceptorContext<any, PlatformCacheOptions>): {
|
|
23
|
-
key: string;
|
|
24
|
-
refreshThreshold: number | undefined;
|
|
25
|
-
ttl: import("../services/PlatformCache.js").Ttl | undefined;
|
|
26
|
-
type: any;
|
|
27
|
-
args: any;
|
|
28
|
-
collectionType: any;
|
|
29
|
-
keyArgs: string;
|
|
30
|
-
canCache: ((item: any) => boolean) | undefined;
|
|
31
|
-
$ctx: any;
|
|
32
|
-
};
|
|
33
|
-
protected hasKeyInQueue(key: string): Promise<boolean>;
|
|
34
|
-
protected addKeyToQueue(key: string): Promise<void>;
|
|
35
|
-
protected deleteKeyFromQueue(key: string): Promise<void>;
|
|
36
|
-
protected sendResponse(cachedObject: PlatformCachedObject, $ctx: BaseContext): any;
|
|
37
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { MetadataTypes } from "@tsed/core";
|
|
2
|
-
import { BaseContext } from "@tsed/di";
|
|
3
|
-
import type { Ttl } from "../services/PlatformCache.js";
|
|
4
|
-
export interface PlatformCacheOptions extends MetadataTypes {
|
|
5
|
-
/**
|
|
6
|
-
* key expiration ttl in seconds.
|
|
7
|
-
*/
|
|
8
|
-
ttl?: Ttl;
|
|
9
|
-
/**
|
|
10
|
-
* By default, the key is generated from the method name and the arguments passed to the method.
|
|
11
|
-
*/
|
|
12
|
-
prefix?: string;
|
|
13
|
-
/**
|
|
14
|
-
* Algorithm used to generate the key. By default, the key is generated from the method name and the arguments passed to the method.
|
|
15
|
-
*/
|
|
16
|
-
key?: string | ((args: any[], ctx?: BaseContext) => string);
|
|
17
|
-
/**
|
|
18
|
-
* threshold to refresh the cache.
|
|
19
|
-
*/
|
|
20
|
-
refreshThreshold?: number;
|
|
21
|
-
/**
|
|
22
|
-
* The function determine if the result must be cached or not.
|
|
23
|
-
*/
|
|
24
|
-
canCache?: ((item: any) => boolean) | "no-nullish";
|
|
25
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import type { BaseContext } from "@tsed/di";
|
|
2
|
-
import type { Cache, CachingConfig, Store } from "cache-manager";
|
|
3
|
-
import { FactoryStore } from "cache-manager/dist/caching";
|
|
4
|
-
import type { CacheManager } from "../services/PlatformCache.js";
|
|
5
|
-
/**
|
|
6
|
-
* @deprecated Since 2022-11. Use FactoryStore instead.
|
|
7
|
-
*/
|
|
8
|
-
export type PlatformCacheLegacyStoreFactory = {
|
|
9
|
-
create(...args: any[]): Promise<Store | any> | Store | any;
|
|
10
|
-
};
|
|
11
|
-
export type PlatformCacheSettings<Config extends Record<string, any> = any, S extends Store = any> = CachingConfig<Config> & {
|
|
12
|
-
caches?: Cache[];
|
|
13
|
-
store?: "memory" | Store | PlatformCacheLegacyStoreFactory | FactoryStore<S, Config>;
|
|
14
|
-
max?: number;
|
|
15
|
-
keyResolver?: (args: any[], ctx: BaseContext) => string;
|
|
16
|
-
prefix?: string;
|
|
17
|
-
/**
|
|
18
|
-
* List of headers to ignore when caching the response. Default: ["content-length", "x-request-id", "cache-control", "vary", "content-encoding"]
|
|
19
|
-
*/
|
|
20
|
-
ignoreHeaders?: string[];
|
|
21
|
-
/**
|
|
22
|
-
* You may pass in any other arguments these will be passed on to the `create` method of your store,
|
|
23
|
-
* otherwise they will be ignored.
|
|
24
|
-
*/
|
|
25
|
-
[key: string]: any;
|
|
26
|
-
};
|
|
27
|
-
declare global {
|
|
28
|
-
namespace TsED {
|
|
29
|
-
interface Configuration {
|
|
30
|
-
cache?: PlatformCacheSettings | false;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
export interface OnCreateCacheManager {
|
|
35
|
-
$onCreateCacheManager(cache: CacheManager): void | Promise<void>;
|
|
36
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { Type } from "@tsed/core";
|
|
2
|
-
import { Configuration, InjectorService } from "@tsed/di";
|
|
3
|
-
import { JsonDeserializerOptions } from "@tsed/json-mapper";
|
|
4
|
-
import { Logger } from "@tsed/logger";
|
|
5
|
-
import type { Cache, CachingConfig, MultiCache } from "cache-manager";
|
|
6
|
-
import { PlatformCacheSettings } from "../interfaces/interfaces.js";
|
|
7
|
-
import { PlatformCachedObject } from "../interfaces/PlatformCachedObject.js";
|
|
8
|
-
export type CacheManager = Cache | MultiCache;
|
|
9
|
-
export type Ttl = number | ((result: any) => number);
|
|
10
|
-
/**
|
|
11
|
-
* @platform
|
|
12
|
-
*/
|
|
13
|
-
export declare class PlatformCache {
|
|
14
|
-
#private;
|
|
15
|
-
protected settings: Configuration;
|
|
16
|
-
protected injector: InjectorService;
|
|
17
|
-
protected logger: Logger;
|
|
18
|
-
get cache(): CacheManager | undefined;
|
|
19
|
-
$onInit(): Promise<void>;
|
|
20
|
-
getKeysOf(target: Type<any>, propertyKey: string | symbol): Promise<string[]>;
|
|
21
|
-
disabled(): boolean;
|
|
22
|
-
defaultKeyResolver(): (args: any[], ctx?: any) => string;
|
|
23
|
-
defaultTtl(): Ttl;
|
|
24
|
-
calculateTTL(result?: any, currentTtl?: Ttl): number;
|
|
25
|
-
ttl(key: string): Promise<void> | Promise<number>;
|
|
26
|
-
wrap<T>(key: string, fetch: () => Promise<T>, ttl?: number): Promise<T>;
|
|
27
|
-
get<T>(key: string, options?: JsonDeserializerOptions): Promise<T | undefined>;
|
|
28
|
-
set<T>(key: string, value: any, options?: CachingConfig<T>): Promise<T | undefined>;
|
|
29
|
-
getCachedObject(key: string): Promise<PlatformCachedObject | undefined>;
|
|
30
|
-
setCachedObject(key: string, data: any, opts: {
|
|
31
|
-
ttl: number;
|
|
32
|
-
} & Record<string, any>): Promise<void>;
|
|
33
|
-
del(key: string): Promise<void>;
|
|
34
|
-
reset(): Promise<void>;
|
|
35
|
-
keys(...args: any[]): Promise<string[]>;
|
|
36
|
-
deleteKeys(patterns: string): Promise<string[]>;
|
|
37
|
-
/**
|
|
38
|
-
* Use micromatch instead native patterns. Use this method if the native store method doesn't support glob patterns
|
|
39
|
-
* @param patterns
|
|
40
|
-
*/
|
|
41
|
-
getMatchingKeys(patterns: string): Promise<string[]>;
|
|
42
|
-
deleteMatchingKeys(patterns: string): Promise<string[]>;
|
|
43
|
-
refresh(callback: () => Promise<any> | any): any;
|
|
44
|
-
isForceRefresh(): boolean;
|
|
45
|
-
protected createCacheManager(settings: PlatformCacheSettings): Promise<MultiCache | import("cache-manager").MemoryCache>;
|
|
46
|
-
private mapStore;
|
|
47
|
-
}
|