keyv-cache-proxy
Advanced tools
+18
-0
@@ -55,2 +55,3 @@ import type Keyv from "keyv"; | ||
| prefix?: string; | ||
| hot?: boolean; | ||
| }): <T extends object>(obj: T) => DeepAsyncMethod<T>; | ||
@@ -60,2 +61,19 @@ export type DeepAsyncMethod<T> = { | ||
| }; | ||
| /** | ||
| * utils: globalThisCached | ||
| * A utility function that caches the result of an asynchronous computation in the globalThis object. | ||
| * It uses a Map stored on globalThis to cache results based on a provided key. | ||
| * Handy when run with bun --hot | ||
| * | ||
| * @param key - The key to identify the cached result. | ||
| * @param compute - An asynchronous function that computes the value to be cached. | ||
| * | ||
| * @returns The cached result if available; otherwise, it computes the result, caches it, and returns it. | ||
| * | ||
| * @example | ||
| * ```ts | ||
| * const result = await globalThisCached("keyv", async () => new Keyv()); | ||
| * ``` | ||
| */ | ||
| export declare function globalThisCached<T>(name: string, compute: () => T | Promise<T>): Promise<T>; | ||
| //# sourceMappingURL=index.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,OAAO,EAAE;IAC/C,KAAK,EAAE,IAAI,GAAG,gBAAgB,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,IAGQ,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,KAAG,eAAe,CAAC,CAAC,CAAC,CAmCrD;AACD,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;KAC/B,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,GACvD,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GACnC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAClB,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACrB,CAAC,CAAC,CAAC,CAAC;CACR,CAAC"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,OAAO,EAAE;IAC/C,KAAK,EAAE,IAAI,GAAG,gBAAgB,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;CACd,IAGQ,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,KAAG,eAAe,CAAC,CAAC,CAAC,CAmCrD;AAED,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;KAC/B,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,GACvD,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GACnC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAClB,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACrB,CAAC,CAAC,CAAC,CAAC;CACR,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAC3B,OAAO,CAAC,CAAC,CAAC,CAcZ"} |
+29
-0
@@ -83,2 +83,31 @@ /** | ||
| } | ||
| /** | ||
| * utils: globalThisCached | ||
| * A utility function that caches the result of an asynchronous computation in the globalThis object. | ||
| * It uses a Map stored on globalThis to cache results based on a provided key. | ||
| * Handy when run with bun --hot | ||
| * | ||
| * @param key - The key to identify the cached result. | ||
| * @param compute - An asynchronous function that computes the value to be cached. | ||
| * | ||
| * @returns The cached result if available; otherwise, it computes the result, caches it, and returns it. | ||
| * | ||
| * @example | ||
| * ```ts | ||
| * const result = await globalThisCached("keyv", async () => new Keyv()); | ||
| * ``` | ||
| */ | ||
| export function globalThisCached(name, compute) { | ||
| const g = globalThis; | ||
| g.__keyv_cache_proxy_global_cache__ ??= new Map(); | ||
| const cache = g.__keyv_cache_proxy_global_cache__; | ||
| if (cache.has(name)) { | ||
| return cache.get(name); | ||
| } | ||
| else { | ||
| const result = Promise.resolve(compute()); | ||
| cache.set(name, result); | ||
| return result; | ||
| } | ||
| } | ||
| //# sourceMappingURL=index.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,OAMtC;IACA,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAE3D,OAAO,CAAmB,GAAM,EAAsB,EAAE,CACvD,IAAI,KAAK,CAAC,GAAG,EAAE;QACd,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACzB,wCAAwC;YACxC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAe,CAAC,CAAC;YACpC,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,OAAO,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;oBAC/B,MAAM,GAAG,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC/D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC1B,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;wBACb,OAAO,MAAM,CAAC;oBACf,CAAC;oBACD,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;oBACd,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;oBAErC,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;oBAClC,OAAO,MAAM,CAAC;gBACf,CAAC,CAAC;YACH,CAAC;YACD,gCAAgC;YAChC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBAC7C,OAAO,cAAc,CAAC;oBACrB,KAAK;oBACL,GAAG;oBACH,MAAM;oBACN,KAAK;oBACL,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG;iBACnC,CAAC,CAAC,GAAG,CAAC,CAAC;YACT,CAAC;YACD,oDAAoD;YACpD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;KACD,CAAuB,CAAC;AAC3B,CAAC"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,OAOtC;IACA,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAE3D,OAAO,CAAmB,GAAM,EAAsB,EAAE,CACvD,IAAI,KAAK,CAAC,GAAG,EAAE;QACd,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACzB,wCAAwC;YACxC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAe,CAAC,CAAC;YACpC,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,OAAO,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;oBAC/B,MAAM,GAAG,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC/D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC1B,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;wBACb,OAAO,MAAM,CAAC;oBACf,CAAC;oBACD,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;oBACd,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;oBAErC,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;oBAClC,OAAO,MAAM,CAAC;gBACf,CAAC,CAAC;YACH,CAAC;YACD,gCAAgC;YAChC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBAC7C,OAAO,cAAc,CAAC;oBACrB,KAAK;oBACL,GAAG;oBACH,MAAM;oBACN,KAAK;oBACL,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG;iBACnC,CAAC,CAAC,GAAG,CAAC,CAAC;YACT,CAAC;YACD,oDAAoD;YACpD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;KACD,CAAuB,CAAC;AAC3B,CAAC;AAUD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gBAAgB,CAC/B,IAAY,EACZ,OAA6B;IAE7B,MAAM,CAAC,GAAG,UAET,CAAC;IACF,CAAC,CAAC,iCAAiC,KAAK,IAAI,GAAG,EAAE,CAAC;IAElD,MAAM,KAAK,GAAG,CAAC,CAAC,iCAAiC,CAAC;IAClD,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAe,CAAC;IACtC,CAAC;SAAM,CAAC;QACP,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1C,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxB,OAAO,MAAM,CAAC;IACf,CAAC;AACF,CAAC"} |
+1
-1
| { | ||
| "name": "keyv-cache-proxy", | ||
| "version": "0.0.10", | ||
| "version": "0.0.11", | ||
| "description": "A transparent caching proxy for any object using Keyv - automatically cache method calls with TTL support", | ||
@@ -5,0 +5,0 @@ "type": "module", |
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
21329
12.39%217
27.65%1
Infinity%