@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 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.JEST_WORKER_ID) {
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
- console.error(`\u274C REDIS | Client Error | ${REDIS_URL}`, err);
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
- console.log(`\u{1F4E6} REDIS | Connection Ready | ${REDIS_URL}`);
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
- console.error(`\u274C REDIS | Connection Error | ${REDIS_URL}`, err);
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
- console.error(`Error getting data from redis: ${error}`);
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
- console.error(`Error setting data in redis: ${error}`);
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
- console.error(`Error deleting data from redis: ${error}`);
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.JEST_WORKER_ID) {
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
- console.error(`\u274C REDIS | Client Error | ${REDIS_URL}`, err);
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
- console.log(`\u{1F4E6} REDIS | Connection Ready | ${REDIS_URL}`);
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
- console.error(`\u274C REDIS | Connection Error | ${REDIS_URL}`, err);
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
- console.error(`Error getting data from redis: ${error}`);
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
- console.error(`Error setting data in redis: ${error}`);
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
- console.error(`Error deleting data from redis: ${error}`);
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.6",
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": ["dist"],
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.12"
22
+ "redis": "4.6.13"
21
23
  }
22
24
  }