@sebspark/promise-cache 0.2.6 → 0.2.8
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 +18 -11
- package/dist/index.mjs +18 -11
- 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
|
@@ -71,9 +71,13 @@ var createLocalMemoryClient = () => {
|
|
|
71
71
|
// src/persistor.ts
|
|
72
72
|
var REDIS_HOST = process.env.REDIS_HOST || "127.0.0.1";
|
|
73
73
|
var REDIS_PORT = process.env.REDIS_PORT || 6379;
|
|
74
|
+
var REDIS_PASSWORD = process.env.REDIS_PASSWORD || void 0;
|
|
74
75
|
var REDIS_URL = `redis://${REDIS_HOST}:${REDIS_PORT}`;
|
|
76
|
+
if (REDIS_PASSWORD) {
|
|
77
|
+
REDIS_URL = `redis://${REDIS_PASSWORD}@${REDIS_HOST}:${REDIS_PORT}`;
|
|
78
|
+
}
|
|
75
79
|
var CACHE_CLIENT = import_redis.createClient;
|
|
76
|
-
if (process.env.
|
|
80
|
+
if (process.env.NODE_ENV === "test") {
|
|
77
81
|
CACHE_CLIENT = createLocalMemoryClient;
|
|
78
82
|
}
|
|
79
83
|
var Persistor = class {
|
|
@@ -85,11 +89,13 @@ var Persistor = class {
|
|
|
85
89
|
}
|
|
86
90
|
this.connect();
|
|
87
91
|
}
|
|
88
|
-
async connect() {
|
|
92
|
+
async connect(onError, onConnect) {
|
|
89
93
|
try {
|
|
90
94
|
this.client = CACHE_CLIENT({ url: REDIS_URL });
|
|
91
95
|
this.client.on("error", (err) => {
|
|
92
|
-
|
|
96
|
+
if (onError) {
|
|
97
|
+
onError(`\u274C REDIS | Client Error | ${REDIS_URL} ${err}`);
|
|
98
|
+
}
|
|
93
99
|
this.status = "disconnected";
|
|
94
100
|
});
|
|
95
101
|
this.client.connect();
|
|
@@ -99,13 +105,17 @@ var Persistor = class {
|
|
|
99
105
|
return;
|
|
100
106
|
}
|
|
101
107
|
this.client.on("connect", () => {
|
|
102
|
-
|
|
108
|
+
if (onConnect) {
|
|
109
|
+
onConnect(`\u{1F4E6} REDIS | Connection Ready | ${REDIS_URL}`);
|
|
110
|
+
}
|
|
103
111
|
this.status = "connected";
|
|
104
112
|
resolve(true);
|
|
105
113
|
});
|
|
106
114
|
});
|
|
107
115
|
} catch (err) {
|
|
108
|
-
|
|
116
|
+
if (onError) {
|
|
117
|
+
onError(`\u274C REDIS | Connection Error | ${REDIS_URL} ${err}`);
|
|
118
|
+
}
|
|
109
119
|
this.status = "disconnected";
|
|
110
120
|
}
|
|
111
121
|
}
|
|
@@ -126,8 +136,7 @@ var Persistor = class {
|
|
|
126
136
|
}
|
|
127
137
|
return JSON.parse(result);
|
|
128
138
|
} catch (error) {
|
|
129
|
-
|
|
130
|
-
throw error;
|
|
139
|
+
throw new Error(`Error getting data from redis: ${error}`);
|
|
131
140
|
}
|
|
132
141
|
}
|
|
133
142
|
createOptions(ttl) {
|
|
@@ -145,8 +154,7 @@ var Persistor = class {
|
|
|
145
154
|
const options = this.createOptions(ttl);
|
|
146
155
|
await this.client.set(key, serializedData, options);
|
|
147
156
|
} catch (error) {
|
|
148
|
-
|
|
149
|
-
throw error;
|
|
157
|
+
throw new Error(`Error setting data in redis: ${error}`);
|
|
150
158
|
}
|
|
151
159
|
}
|
|
152
160
|
async delete(key) {
|
|
@@ -156,8 +164,7 @@ var Persistor = class {
|
|
|
156
164
|
try {
|
|
157
165
|
await this.client.del(key);
|
|
158
166
|
} catch (error) {
|
|
159
|
-
|
|
160
|
-
throw error;
|
|
167
|
+
throw new Error(`Error deleting data from redis: ${error}`);
|
|
161
168
|
}
|
|
162
169
|
}
|
|
163
170
|
};
|
package/dist/index.mjs
CHANGED
|
@@ -43,9 +43,13 @@ var createLocalMemoryClient = () => {
|
|
|
43
43
|
// src/persistor.ts
|
|
44
44
|
var REDIS_HOST = process.env.REDIS_HOST || "127.0.0.1";
|
|
45
45
|
var REDIS_PORT = process.env.REDIS_PORT || 6379;
|
|
46
|
+
var REDIS_PASSWORD = process.env.REDIS_PASSWORD || void 0;
|
|
46
47
|
var REDIS_URL = `redis://${REDIS_HOST}:${REDIS_PORT}`;
|
|
48
|
+
if (REDIS_PASSWORD) {
|
|
49
|
+
REDIS_URL = `redis://${REDIS_PASSWORD}@${REDIS_HOST}:${REDIS_PORT}`;
|
|
50
|
+
}
|
|
47
51
|
var CACHE_CLIENT = createClient;
|
|
48
|
-
if (process.env.
|
|
52
|
+
if (process.env.NODE_ENV === "test") {
|
|
49
53
|
CACHE_CLIENT = createLocalMemoryClient;
|
|
50
54
|
}
|
|
51
55
|
var Persistor = class {
|
|
@@ -57,11 +61,13 @@ var Persistor = class {
|
|
|
57
61
|
}
|
|
58
62
|
this.connect();
|
|
59
63
|
}
|
|
60
|
-
async connect() {
|
|
64
|
+
async connect(onError, onConnect) {
|
|
61
65
|
try {
|
|
62
66
|
this.client = CACHE_CLIENT({ url: REDIS_URL });
|
|
63
67
|
this.client.on("error", (err) => {
|
|
64
|
-
|
|
68
|
+
if (onError) {
|
|
69
|
+
onError(`\u274C REDIS | Client Error | ${REDIS_URL} ${err}`);
|
|
70
|
+
}
|
|
65
71
|
this.status = "disconnected";
|
|
66
72
|
});
|
|
67
73
|
this.client.connect();
|
|
@@ -71,13 +77,17 @@ var Persistor = class {
|
|
|
71
77
|
return;
|
|
72
78
|
}
|
|
73
79
|
this.client.on("connect", () => {
|
|
74
|
-
|
|
80
|
+
if (onConnect) {
|
|
81
|
+
onConnect(`\u{1F4E6} REDIS | Connection Ready | ${REDIS_URL}`);
|
|
82
|
+
}
|
|
75
83
|
this.status = "connected";
|
|
76
84
|
resolve(true);
|
|
77
85
|
});
|
|
78
86
|
});
|
|
79
87
|
} catch (err) {
|
|
80
|
-
|
|
88
|
+
if (onError) {
|
|
89
|
+
onError(`\u274C REDIS | Connection Error | ${REDIS_URL} ${err}`);
|
|
90
|
+
}
|
|
81
91
|
this.status = "disconnected";
|
|
82
92
|
}
|
|
83
93
|
}
|
|
@@ -98,8 +108,7 @@ var Persistor = class {
|
|
|
98
108
|
}
|
|
99
109
|
return JSON.parse(result);
|
|
100
110
|
} catch (error) {
|
|
101
|
-
|
|
102
|
-
throw error;
|
|
111
|
+
throw new Error(`Error getting data from redis: ${error}`);
|
|
103
112
|
}
|
|
104
113
|
}
|
|
105
114
|
createOptions(ttl) {
|
|
@@ -117,8 +126,7 @@ var Persistor = class {
|
|
|
117
126
|
const options = this.createOptions(ttl);
|
|
118
127
|
await this.client.set(key, serializedData, options);
|
|
119
128
|
} catch (error) {
|
|
120
|
-
|
|
121
|
-
throw error;
|
|
129
|
+
throw new Error(`Error setting data in redis: ${error}`);
|
|
122
130
|
}
|
|
123
131
|
}
|
|
124
132
|
async delete(key) {
|
|
@@ -128,8 +136,7 @@ var Persistor = class {
|
|
|
128
136
|
try {
|
|
129
137
|
await this.client.del(key);
|
|
130
138
|
} catch (error) {
|
|
131
|
-
|
|
132
|
-
throw error;
|
|
139
|
+
throw new Error(`Error deleting data from redis: ${error}`);
|
|
133
140
|
}
|
|
134
141
|
}
|
|
135
142
|
};
|
package/package.json
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sebspark/promise-cache",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.8",
|
|
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
|
}
|