New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

@cave/cache

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@cave/cache - npm Package Compare versions

Comparing version
1.0.2
to
1.0.3
+52
-3
dist/main.d.ts
import { Level } from 'level';
export declare class CCache {
db: Level;
constructor(db_folder_path: string);
period: number;
constructor(db_folder_path: string, period?: number);
fork(config: {
prefix: string | number;
period: number;
}): {
set: (key: string, value: unknown) => Promise<void>;
get: <T>(key: string) => Promise<{
state: boolean;
ts: number;
rawData: T;
validData: T;
}>;
del: (key: string) => Promise<boolean>;
setMany: (list: {
key: string;
value: unknown;
}[]) => Promise<boolean>;
getMany: <T_1>(keys: string[]) => Promise<{
state: boolean;
ts: number;
rawData: T_1;
validData: T_1;
}[]>;
delMany: (keys: string[]) => Promise<boolean>;
};
getId(prefix: string | number, key: string): string;
init(): Promise<void>;
set(key: string, value: unknown): Promise<void>;
get<T>(key: string): Promise<T>;
clean(past_time?: number): Promise<void>;
get<T>(key: string): Promise<{
state: boolean;
ts: number;
rawData: T;
validData: T;
}>;
del(key: string): Promise<boolean>;
setMany(list: {
key: string;
value: unknown;
}[]): Promise<void>;
getMany<T>(keys: string[]): Promise<{
state: boolean;
ts: number;
rawData: T;
validData: T;
}[]>;
delMany(keys: string[]): Promise<boolean>;
clean(past_time?: number): Promise<boolean>;
private setWithPrefix;
private getWithPrefix;
private delWithPrefix;
private setManyWithPrefix;
private getManyWithPrefix;
private delManyWithPrefix;
}
+1
-1

@@ -1,1 +0,1 @@

"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CCache=void 0;const level_1=require("level");class CCache{db;constructor(e){this.db=new level_1.Level(e,{valueEncoding:"json"})}async init(){await this.db.open()}async set(e,t){await this.db.put(e,{ts:Date.now(),payload:t},{valueEncoding:"json"})}async get(e){return(await this.db.get(e,{valueEncoding:"json"})).payload}async clean(e=6048e5){try{const{db:t}=this;for await(const a of t.iterator()){const s=a[0],n=a[1],o=Date.now()-e;n.ts<o&&await t.del(s)}}catch(e){}}}exports.CCache=CCache;
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CCache=void 0;const level_1=require("level");class CCache{db;period;constructor(t,e=72e5){this.db=new level_1.Level(t,{valueEncoding:"json"}),this.period=e}fork(t){return{set:async(e,a)=>await this.setWithPrefix(e,a,t.prefix),get:async e=>await this.getWithPrefix(e,t),del:async e=>await this.delWithPrefix(e,t.prefix),setMany:async e=>await this.setManyWithPrefix(e,t.prefix),getMany:async e=>await this.getManyWithPrefix(e,t),delMany:async e=>await this.delManyWithPrefix(e,t.prefix)}}getId(t,e){return`${t}${e}`}async init(){await this.db.open()}async set(t,e){return await this.setWithPrefix(t,e,"")}async get(t){return await this.getWithPrefix(t,{prefix:"",period:this.period})}async del(t){return await this.delWithPrefix(t,"")}async setMany(t){await this.setManyWithPrefix(t,"")}async getMany(t){return await this.getManyWithPrefix(t,{prefix:"",period:this.period})}async delMany(t){return await this.delManyWithPrefix(t,"")}async clean(t=6048e5){try{const{db:e}=this;for await(const a of e.iterator()){const i=a[0],s=a[1],r=Date.now()-t;s.ts<r&&await e.del(i)}return!0}catch(t){return!1}}async setWithPrefix(t,e,a){const i=this.getId(a,t);await this.db.put(i,{ts:Date.now(),payload:e},{valueEncoding:"json"})}async getWithPrefix(t,e){const a=this.getId(e.prefix,t),i=await this.db.get(a,{valueEncoding:"json"}),s=i.payload,r=Date.now()-i.ts<e.period;return{state:r,ts:i.ts,rawData:s,validData:r?s:void 0}}async delWithPrefix(t,e){try{const a=this.getId(e,t);return await this.db.del(a),!0}catch(t){return!1}}async setManyWithPrefix(t,e){try{return await this.db.batch(t.map((t=>({type:"put",key:this.getId(e,t.key),value:{ts:Date.now(),payload:t.value}}))),{valueEncoding:"json"}),!0}catch(t){return!1}}async getManyWithPrefix(t,e){const a=e.prefix?t.map((t=>this.getId(e.prefix,t))):t;return(await this.db.getMany(a,{valueEncoding:"json"})).map((t=>{const a=t.payload,i=Date.now()-t.ts<e.period;return{state:i,ts:t.ts,rawData:a,validData:i?a:void 0}}))}async delManyWithPrefix(t,e){try{return await this.db.batch(t.map((t=>({type:"del",key:this.getId(e,t)})))),!0}catch(t){return!1}}}exports.CCache=CCache;
{
"name": "@cave/cache",
"version": "1.0.2",
"version": "1.0.3",
"publishConfig": {

@@ -5,0 +5,0 @@ "access": "public"