@sebspark/promise-cache 0.2.5 → 0.2.7
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/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +16 -12
- package/dist/index.mjs +16 -12
- package/package.json +5 -3
package/dist/index.d.mts
CHANGED
|
@@ -14,7 +14,7 @@ declare class Persistor {
|
|
|
14
14
|
client: ReturnType<typeof createClient> | null;
|
|
15
15
|
status: 'connected' | 'disconnected';
|
|
16
16
|
constructor(isLocalPersistor: boolean);
|
|
17
|
-
connect(): Promise<void>;
|
|
17
|
+
connect(onError?: (message: string) => void, onConnect?: (message: string) => void): Promise<void>;
|
|
18
18
|
size(): Promise<number>;
|
|
19
19
|
get<T>(key: string): Promise<GetType<T> | null>;
|
|
20
20
|
private createOptions;
|
package/dist/index.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ declare class Persistor {
|
|
|
14
14
|
client: ReturnType<typeof createClient> | null;
|
|
15
15
|
status: 'connected' | 'disconnected';
|
|
16
16
|
constructor(isLocalPersistor: boolean);
|
|
17
|
-
connect(): Promise<void>;
|
|
17
|
+
connect(onError?: (message: string) => void, onConnect?: (message: string) => void): Promise<void>;
|
|
18
18
|
size(): Promise<number>;
|
|
19
19
|
get<T>(key: string): Promise<GetType<T> | null>;
|
|
20
20
|
private createOptions;
|
package/dist/index.js
CHANGED
|
@@ -63,8 +63,9 @@ var LocalStorage = class {
|
|
|
63
63
|
return Promise.resolve(this);
|
|
64
64
|
}
|
|
65
65
|
};
|
|
66
|
+
var localStorage = new LocalStorage();
|
|
66
67
|
var createLocalMemoryClient = () => {
|
|
67
|
-
return
|
|
68
|
+
return localStorage;
|
|
68
69
|
};
|
|
69
70
|
|
|
70
71
|
// src/persistor.ts
|
|
@@ -72,7 +73,7 @@ var REDIS_HOST = process.env.REDIS_HOST || "127.0.0.1";
|
|
|
72
73
|
var REDIS_PORT = process.env.REDIS_PORT || 6379;
|
|
73
74
|
var REDIS_URL = `redis://${REDIS_HOST}:${REDIS_PORT}`;
|
|
74
75
|
var CACHE_CLIENT = import_redis.createClient;
|
|
75
|
-
if (process.env.
|
|
76
|
+
if (process.env.NODE_ENV === "test") {
|
|
76
77
|
CACHE_CLIENT = createLocalMemoryClient;
|
|
77
78
|
}
|
|
78
79
|
var Persistor = class {
|
|
@@ -84,11 +85,13 @@ var Persistor = class {
|
|
|
84
85
|
}
|
|
85
86
|
this.connect();
|
|
86
87
|
}
|
|
87
|
-
async connect() {
|
|
88
|
+
async connect(onError, onConnect) {
|
|
88
89
|
try {
|
|
89
90
|
this.client = CACHE_CLIENT({ url: REDIS_URL });
|
|
90
91
|
this.client.on("error", (err) => {
|
|
91
|
-
|
|
92
|
+
if (onError) {
|
|
93
|
+
onError(`\u274C REDIS | Client Error | ${REDIS_URL} ${err}`);
|
|
94
|
+
}
|
|
92
95
|
this.status = "disconnected";
|
|
93
96
|
});
|
|
94
97
|
this.client.connect();
|
|
@@ -98,13 +101,17 @@ var Persistor = class {
|
|
|
98
101
|
return;
|
|
99
102
|
}
|
|
100
103
|
this.client.on("connect", () => {
|
|
101
|
-
|
|
104
|
+
if (onConnect) {
|
|
105
|
+
onConnect(`\u{1F4E6} REDIS | Connection Ready | ${REDIS_URL}`);
|
|
106
|
+
}
|
|
102
107
|
this.status = "connected";
|
|
103
108
|
resolve(true);
|
|
104
109
|
});
|
|
105
110
|
});
|
|
106
111
|
} catch (err) {
|
|
107
|
-
|
|
112
|
+
if (onError) {
|
|
113
|
+
onError(`\u274C REDIS | Connection Error | ${REDIS_URL} ${err}`);
|
|
114
|
+
}
|
|
108
115
|
this.status = "disconnected";
|
|
109
116
|
}
|
|
110
117
|
}
|
|
@@ -125,8 +132,7 @@ var Persistor = class {
|
|
|
125
132
|
}
|
|
126
133
|
return JSON.parse(result);
|
|
127
134
|
} catch (error) {
|
|
128
|
-
|
|
129
|
-
throw error;
|
|
135
|
+
throw new Error(`Error getting data from redis: ${error}`);
|
|
130
136
|
}
|
|
131
137
|
}
|
|
132
138
|
createOptions(ttl) {
|
|
@@ -144,8 +150,7 @@ var Persistor = class {
|
|
|
144
150
|
const options = this.createOptions(ttl);
|
|
145
151
|
await this.client.set(key, serializedData, options);
|
|
146
152
|
} catch (error) {
|
|
147
|
-
|
|
148
|
-
throw error;
|
|
153
|
+
throw new Error(`Error setting data in redis: ${error}`);
|
|
149
154
|
}
|
|
150
155
|
}
|
|
151
156
|
async delete(key) {
|
|
@@ -155,8 +160,7 @@ var Persistor = class {
|
|
|
155
160
|
try {
|
|
156
161
|
await this.client.del(key);
|
|
157
162
|
} catch (error) {
|
|
158
|
-
|
|
159
|
-
throw error;
|
|
163
|
+
throw new Error(`Error deleting data from redis: ${error}`);
|
|
160
164
|
}
|
|
161
165
|
}
|
|
162
166
|
};
|
package/dist/index.mjs
CHANGED
|
@@ -35,8 +35,9 @@ var LocalStorage = class {
|
|
|
35
35
|
return Promise.resolve(this);
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
+
var localStorage = new LocalStorage();
|
|
38
39
|
var createLocalMemoryClient = () => {
|
|
39
|
-
return
|
|
40
|
+
return localStorage;
|
|
40
41
|
};
|
|
41
42
|
|
|
42
43
|
// src/persistor.ts
|
|
@@ -44,7 +45,7 @@ var REDIS_HOST = process.env.REDIS_HOST || "127.0.0.1";
|
|
|
44
45
|
var REDIS_PORT = process.env.REDIS_PORT || 6379;
|
|
45
46
|
var REDIS_URL = `redis://${REDIS_HOST}:${REDIS_PORT}`;
|
|
46
47
|
var CACHE_CLIENT = createClient;
|
|
47
|
-
if (process.env.
|
|
48
|
+
if (process.env.NODE_ENV === "test") {
|
|
48
49
|
CACHE_CLIENT = createLocalMemoryClient;
|
|
49
50
|
}
|
|
50
51
|
var Persistor = class {
|
|
@@ -56,11 +57,13 @@ var Persistor = class {
|
|
|
56
57
|
}
|
|
57
58
|
this.connect();
|
|
58
59
|
}
|
|
59
|
-
async connect() {
|
|
60
|
+
async connect(onError, onConnect) {
|
|
60
61
|
try {
|
|
61
62
|
this.client = CACHE_CLIENT({ url: REDIS_URL });
|
|
62
63
|
this.client.on("error", (err) => {
|
|
63
|
-
|
|
64
|
+
if (onError) {
|
|
65
|
+
onError(`\u274C REDIS | Client Error | ${REDIS_URL} ${err}`);
|
|
66
|
+
}
|
|
64
67
|
this.status = "disconnected";
|
|
65
68
|
});
|
|
66
69
|
this.client.connect();
|
|
@@ -70,13 +73,17 @@ var Persistor = class {
|
|
|
70
73
|
return;
|
|
71
74
|
}
|
|
72
75
|
this.client.on("connect", () => {
|
|
73
|
-
|
|
76
|
+
if (onConnect) {
|
|
77
|
+
onConnect(`\u{1F4E6} REDIS | Connection Ready | ${REDIS_URL}`);
|
|
78
|
+
}
|
|
74
79
|
this.status = "connected";
|
|
75
80
|
resolve(true);
|
|
76
81
|
});
|
|
77
82
|
});
|
|
78
83
|
} catch (err) {
|
|
79
|
-
|
|
84
|
+
if (onError) {
|
|
85
|
+
onError(`\u274C REDIS | Connection Error | ${REDIS_URL} ${err}`);
|
|
86
|
+
}
|
|
80
87
|
this.status = "disconnected";
|
|
81
88
|
}
|
|
82
89
|
}
|
|
@@ -97,8 +104,7 @@ var Persistor = class {
|
|
|
97
104
|
}
|
|
98
105
|
return JSON.parse(result);
|
|
99
106
|
} catch (error) {
|
|
100
|
-
|
|
101
|
-
throw error;
|
|
107
|
+
throw new Error(`Error getting data from redis: ${error}`);
|
|
102
108
|
}
|
|
103
109
|
}
|
|
104
110
|
createOptions(ttl) {
|
|
@@ -116,8 +122,7 @@ var Persistor = class {
|
|
|
116
122
|
const options = this.createOptions(ttl);
|
|
117
123
|
await this.client.set(key, serializedData, options);
|
|
118
124
|
} catch (error) {
|
|
119
|
-
|
|
120
|
-
throw error;
|
|
125
|
+
throw new Error(`Error setting data in redis: ${error}`);
|
|
121
126
|
}
|
|
122
127
|
}
|
|
123
128
|
async delete(key) {
|
|
@@ -127,8 +132,7 @@ var Persistor = class {
|
|
|
127
132
|
try {
|
|
128
133
|
await this.client.del(key);
|
|
129
134
|
} catch (error) {
|
|
130
|
-
|
|
131
|
-
throw error;
|
|
135
|
+
throw new Error(`Error deleting data from redis: ${error}`);
|
|
132
136
|
}
|
|
133
137
|
}
|
|
134
138
|
};
|
package/package.json
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sebspark/promise-cache",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.7",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
|
-
"files": [
|
|
8
|
+
"files": [
|
|
9
|
+
"dist"
|
|
10
|
+
],
|
|
9
11
|
"scripts": {
|
|
10
12
|
"build": "tsup-node src/index.ts --format esm,cjs --dts",
|
|
11
13
|
"dev": "tsc --watch --noEmit",
|
|
@@ -17,6 +19,6 @@
|
|
|
17
19
|
"tsconfig": "*"
|
|
18
20
|
},
|
|
19
21
|
"dependencies": {
|
|
20
|
-
"redis": "4.6.
|
|
22
|
+
"redis": "4.6.13"
|
|
21
23
|
}
|
|
22
24
|
}
|