micro-generate 1.3.0 → 1.3.2

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.
@@ -319,9 +319,8 @@ export default () => {
319
319
  `;
320
320
  }
321
321
  if (useRedis) {
322
- // Assuming client.ts and redis.ts are at src/db/redis/ relative to src/features/FEATURE/service.ts
323
- serviceImports += `import { getRedisClient } from '../../db/redis/client.js';\n`;
324
- serviceImports += `import { createRedisRepository } from '../../db/redis/redis.js';\n`;
322
+ // Import from src/database/redis.js which matches user structure
323
+ serviceImports += `import { getRedisConnector, createRedisRepository } from '../../database/redis.js';\n`;
325
324
  // Add repository property to class
326
325
  // Logic to determine client access method
327
326
  const redisDbNum = options.redisDb || 0;
@@ -345,28 +344,11 @@ export default () => {
345
344
  // I should use `redisConnector` pattern if possible.
346
345
  // If I look at `server.ts`, it imports `createRedisConnector`.
347
346
  // The feature generator imports `getRedisClient` from `../../db/redis/client.js`.
348
- // I should verify what `../../db/redis/client.js` looks like or is expected to look like.
349
- // Since this is a generator, maybe I should assume `getRedisClient` returns the Connector?
350
- // Or maybe `getRedisClient` returns the DEFAULT client.
351
- // Implementation Decision:
352
- // I will generate code that assumes `getRedisClient` returns the *connector* if we need dynamic power,
353
- // OR I will simply wrap the call.
354
- // If `getRedisClient` returns the `RedisConnector` instance:
355
- // `() => getRedisClient().getConnection(${redisDbNum})`
356
- // Let's assume I need to update the import to be safe, or just provide a getter.
357
- // Revised Strategy:
358
- // Use `createRedisRepository` which accepts a getter.
359
- // If DB > 0:
360
- // `private redis = createRedisRepository(async () => (await getRedisClient()).getConnection(${redisDbNum}), '${name}:');`
361
- // Checks if `getRedisClient` returns connector or client.
362
- // I will assume `getRedisClient` returns the `RedisConnector` instance for now as that enables the feature.
363
- // If not, the user will have to adjust `client.ts`.
364
347
  if (redisDbNum > 0) {
365
348
  serviceClassBody = `
366
349
  private redis = createRedisRepository(
367
350
  async () => {
368
- const connector = await getRedisClient();
369
- return connector.getConnection(${redisDbNum});
351
+ return getRedisConnector().getConnection(${redisDbNum});
370
352
  },
371
353
  '${name}:'
372
354
  );
@@ -374,9 +356,23 @@ export default () => {
374
356
  }
375
357
  else {
376
358
  serviceClassBody = `
377
- private redis = createRedisRepository(getRedisClient, '${name}:');
359
+ private redis = createRedisRepository(
360
+ async () => {
361
+ return getRedisConnector().getConnection(0);
362
+ },
363
+ '${name}:'
364
+ );
378
365
  ` + serviceClassBody;
379
366
  }
367
+ serviceClassBody += `
368
+ async getCache(key: string): Promise<any> {
369
+ return this.redis.find(key);
370
+ }
371
+
372
+ async setCache(key: string, value: string): Promise<any> {
373
+ return this.redis.saveTTL(key, value, 3600);
374
+ }
375
+ `;
380
376
  }
381
377
  const serviceContent = `${serviceImports}
382
378
  export class ${pascalName}Service {${serviceClassBody}}
@@ -1 +1 @@
1
- {"version":3,"file":"feature-generator.js","sourceRoot":"","sources":["../../../src/cli/generators/feature-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-generator.js","sourceRoot":"","sources":["../../../src/cli/generators/feature-generator.ts"],"names":[],"mappings":"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"}
@@ -15,13 +15,13 @@ export const generateInit = async (options) => {
15
15
  path.join(projectPath, 'src', 'config'),
16
16
  ];
17
17
  if (useRedis) {
18
- dirs.push(path.join(projectPath, 'src', 'db', 'redis'));
18
+ dirs.push(path.join(projectPath, 'src', 'database', 'redis'));
19
19
  }
20
20
  if (useMongo) {
21
- dirs.push(path.join(projectPath, 'src', 'db', 'mongo'));
21
+ dirs.push(path.join(projectPath, 'src', 'database', 'mongo'));
22
22
  }
23
23
  if (useMySQL) {
24
- dirs.push(path.join(projectPath, 'src', 'db', 'mysql'));
24
+ dirs.push(path.join(projectPath, 'src', 'database', 'mysql'));
25
25
  }
26
26
  for (const dir of dirs) {
27
27
  await fs.ensureDir(dir);
@@ -92,205 +92,209 @@ export function getEnv(name: string): string {
92
92
  }
93
93
  `;
94
94
  await fs.writeFile(path.join(projectPath, 'src', 'utils', 'config.ts'), configUtilContent);
95
- // 5. src/db/redis/client.ts (Only if Redis is enabled)
95
+ // 5. src/database/redis.ts
96
96
  if (useRedis) {
97
- const redisClientContent = `import { Redis } from 'ioredis';
97
+ const redisContent = `import { Redis, RedisOptions } from 'ioredis';
98
+ import { logger } from '../../utils/logger.js'; // Ensure logger exists or adjust import
99
+
100
+ export class RedisConnector {
101
+ private defaultClient: Redis | null = null;
102
+ private clients: Map<number, Redis> = new Map();
103
+ private options: RedisOptions = {};
104
+ private defaultDb: number = 0;
105
+ private host?: string;
106
+
107
+ constructor(optionsOrUrl: RedisOptions | string) {
108
+ if (typeof optionsOrUrl === 'string') {
109
+ this.options = {
110
+ retryStrategy: (times: number) => Math.min(times * 50, 2000)
111
+ };
112
+ this.host = undefined;
113
+ (this as any).url = optionsOrUrl;
114
+ } else {
115
+ this.options = {
116
+ retryStrategy: (times: number) => Math.min(times * 50, 2000),
117
+ ...optionsOrUrl
118
+ };
119
+ this.defaultDb = optionsOrUrl.db || 0;
120
+ this.host = optionsOrUrl.host;
121
+ }
122
+ }
98
123
 
99
- let redisInstance: Redis | null = null;
124
+ async connect(): Promise<void> {
125
+ if (this.defaultClient) {
126
+ console.log('Redis default client already connected');
127
+ return;
128
+ }
129
+ try {
130
+ this.defaultClient = this.createClient(this.defaultDb);
131
+ this.clients.set(this.defaultDb, this.defaultClient);
132
+ await this.defaultClient.connect();
133
+ } catch (error) {
134
+ console.error('Failed to connect to Redis', error);
135
+ throw error;
136
+ }
137
+ }
100
138
 
101
- export function setRedisClient(client: Redis): void {
102
- redisInstance = client;
103
- }
139
+ private createClient(db: number): Redis {
140
+ let client: Redis;
141
+ const url = (this as any).url;
142
+
143
+ if (url) {
144
+ client = new Redis(url, { ...this.options, db, lazyConnect: true });
145
+ } else {
146
+ client = new Redis({ ...this.options, db, lazyConnect: true });
147
+ }
148
+
149
+ client.on('connect', () => console.log(\`🔴 Redis connected to db \${db}\`));
150
+ client.on('error', (err) => console.error(\`Redis error on db \${db}\`, err));
151
+ return client;
152
+ }
153
+
154
+ async disconnect(): Promise<void> {
155
+ const disconnectPromises: Promise<void>[] = [];
156
+ for (const [db, client] of this.clients.entries()) {
157
+ disconnectPromises.push(client.quit().catch(() => client.disconnect()));
158
+ }
159
+ await Promise.all(disconnectPromises);
160
+ this.clients.clear();
161
+ this.defaultClient = null;
162
+ }
104
163
 
105
- export function getRedisClient(): Redis {
106
- if (!redisInstance) {
107
- throw new Error('Redis client not initialized.');
164
+ getClient(): Redis {
165
+ if (!this.defaultClient) throw new Error('Redis not connected');
166
+ return this.defaultClient;
167
+ }
168
+
169
+ async getConnection(db: number): Promise<Redis> {
170
+ if (db === this.defaultDb) {
171
+ if (!this.defaultClient) await this.connect();
172
+ return this.defaultClient!;
173
+ }
174
+ if (this.clients.has(db)) {
175
+ const client = this.clients.get(db)!;
176
+ if (client.status === 'wait') await client.connect();
177
+ return client;
178
+ }
179
+ const newClient = this.createClient(db);
180
+ this.clients.set(db, newClient);
181
+ await newClient.connect();
182
+ return newClient;
108
183
  }
109
- return redisInstance;
110
184
  }
111
- `;
112
- await fs.writeFile(path.join(projectPath, 'src', 'db', 'redis', 'client.ts'), redisClientContent);
113
- // Standardized Redis Repository
114
- const redisRepositoryContent = `import { Redis } from 'ioredis';
115
185
 
116
- // --- Repository Factory ---
186
+ export let redisConnectorInstance: RedisConnector | null = null;
117
187
 
118
- export const createRedisRepository = (getDb: () => Redis, keyPrefix: string) => {
119
-
120
- // Función helper para manejar callbacks como promesas
188
+ export const setRedisConnectorInstance = (connector: RedisConnector) => {
189
+ redisConnectorInstance = connector;
190
+ };
191
+
192
+ export const getRedisConnector = (): RedisConnector => {
193
+ if (!redisConnectorInstance) {
194
+ throw new Error('Redis connector not initialized.');
195
+ }
196
+ return redisConnectorInstance;
197
+ };
198
+
199
+ export const createRedisRepository = (getDb: () => (Redis | Promise<Redis>), keyPrefix: string) => {
121
200
  const promiseFunct = (err: any, response: any, resolve: (value: any) => void, reject: (reason?: any) => void) => {
122
- if (err) {
123
- reject(err);
124
- } else {
125
- resolve(response);
126
- }
201
+ if (err) reject(err);
202
+ else resolve(response);
203
+ };
204
+
205
+ const resolveDb = async (): Promise<Redis> => {
206
+ const dbOrPromise = getDb();
207
+ return dbOrPromise instanceof Promise ? await dbOrPromise : dbOrPromise;
127
208
  };
128
209
 
129
210
  return {
130
211
  find: async (_id: string) => {
131
- const db = getDb();
132
- return new Promise((resolve, reject) => {
133
- db.get(_id, (err, response) => {
134
- promiseFunct(err, response, resolve, reject);
135
- });
136
- });
137
- },
138
-
139
- findKeys: async (_id: string) => {
140
- const db = getDb();
141
- return new Promise((resolve, reject) => {
142
- db.keys(_id, (err, response) => {
143
- if (response && response.length > 0) {
144
- promiseFunct(err, response, resolve, reject);
145
- } else {
146
- promiseFunct(null, ['No genero datos'], resolve, reject);
147
- }
148
- });
149
- });
150
- },
151
-
152
- findAll: async () => {
153
- const db = getDb();
212
+ const db = await resolveDb();
154
213
  return new Promise((resolve, reject) => {
155
- db.keys(keyPrefix + '*', (err, response) => {
156
- if (response && response.length > 0) {
157
- db.mget(response, (err, response2) => {
158
- promiseFunct(err, response2, resolve, reject);
159
- });
160
- } else {
161
- promiseFunct(null, ['No genero datos'], resolve, reject);
162
- }
163
- });
214
+ db.get(_id, (err, response) => promiseFunct(err, response, resolve, reject));
164
215
  });
165
216
  },
166
-
167
- save: async (_id: string, _data: any) => {
168
- const db = getDb();
169
- return new Promise((resolve, reject) => {
170
- db.set(_id, _data, (err, response) => {
171
- promiseFunct(err, response, resolve, reject);
172
- });
173
- });
174
- },
175
-
176
217
  saveTTL: async (_id: string, _data: any, ttl: number) => {
177
- const db = getDb();
218
+ const db = await resolveDb();
178
219
  return new Promise((resolve, reject) => {
179
220
  db.set(_id, _data, (err, response) => {
180
- if (err) {
181
- reject(err);
182
- } else {
221
+ if (err) reject(err);
222
+ else {
183
223
  db.expire(_id, ttl);
184
224
  resolve(response);
185
225
  }
186
226
  });
187
227
  });
188
228
  },
189
-
190
- addTTL: async (_id: string, ttl: number) => {
191
- const db = getDb();
192
- return db.expire(_id, ttl);
193
- },
194
-
195
- getTTL: async (_id: string) => {
196
- const db = getDb();
197
- return new Promise((resolve, reject) => {
198
- db.ttl(_id, (err, response) => {
199
- promiseFunct(err, response, resolve, reject);
200
- });
201
- });
202
- },
203
-
204
- incr: async (_id: string) => {
205
- const db = getDb();
206
- return new Promise((resolve, reject) => {
207
- db.incr(_id, (err, response) => {
208
- promiseFunct(err, response, resolve, reject);
209
- });
210
- });
211
- },
212
-
213
- sadd: async (_id: string, _data: any) => {
214
- const db = getDb();
215
- return new Promise((resolve, reject) => {
216
- db.sadd(_id, _data, (err, response) => {
217
- promiseFunct(err, response, resolve, reject);
218
- });
219
- });
220
- },
221
-
222
- sismember: async (_id: string, _data: any) => {
223
- const db = getDb();
224
- return new Promise((resolve, reject) => {
225
- db.sismember(_id, _data, (err, response) => {
226
- promiseFunct(err, response, resolve, reject);
227
- });
228
- });
229
- },
230
-
231
- sisremove: async (_id: string, _data: any) => {
232
- const db = getDb();
233
- return new Promise((resolve, reject) => {
234
- db.srem(_id, _data, (err, response) => {
235
- promiseFunct(err, response, resolve, reject);
236
- });
237
- });
238
- },
239
-
240
- smembers: async (_id: string) => {
241
- const db = getDb();
242
- return new Promise((resolve, reject) => {
243
- db.smembers(_id, (err, response) => {
244
- promiseFunct(err, response, resolve, reject);
245
- });
246
- });
247
- },
248
-
249
- sdiff: async (_id: string) => {
250
- return new Promise((resolve, reject) => {
251
- console.log('sdiff called with', _id);
252
- resolve([]);
253
- });
254
- },
255
-
256
- clear: async (key: string) => {
257
- const db = getDb();
258
- return new Promise((resolve, reject) => {
259
- db.del(key, (err, response) => {
260
- promiseFunct(err, response, resolve, reject);
261
- });
262
- });
263
- }
229
+ // ... (Add other methods as needed, simplified for init)
264
230
  };
265
231
  };
232
+
233
+ export function createRedisConnector(urlOrOptions: string | RedisOptions): RedisConnector {
234
+ const connector = typeof urlOrOptions === 'string'
235
+ ? new RedisConnector(urlOrOptions)
236
+ : new RedisConnector(urlOrOptions);
237
+ setRedisConnectorInstance(connector);
238
+ return connector;
239
+ }
266
240
  `;
267
- await fs.writeFile(path.join(projectPath, 'src', 'db', 'redis', 'redis.ts'), redisRepositoryContent);
241
+ await fs.writeFile(path.join(projectPath, 'src', 'database', 'redis.ts'), redisContent);
268
242
  }
269
- // 5.1 src/db/mongo/client.ts (Only if Mongo is enabled)
243
+ // src/database/mongo.ts
270
244
  if (useMongo) {
271
- const mongoClientContent = `import { MongoDBConnector } from 'micro-generate';
272
- import mongoose from 'mongoose';
245
+ const mongoContent = `import mongoose from 'mongoose';
273
246
 
274
- let mongoConnector: MongoDBConnector | null = null;
275
-
276
- export function setMongoDBConnector(connector: MongoDBConnector): void {
277
- mongoConnector = connector;
247
+ export interface MongoDBOptions {
248
+ uri: string;
249
+ options?: mongoose.ConnectOptions;
250
+ secondaryConnections?: Record<string, string>;
278
251
  }
279
252
 
280
- export function getMongoDBConnector(): MongoDBConnector {
281
- if (!mongoConnector) {
282
- throw new Error('MongoDB connector not initialized. Make sure to connect in main.ts');
253
+ export class MongoDBConnector {
254
+ private uri: string;
255
+ private options: mongoose.ConnectOptions;
256
+ private secondaryConnectionsConfig: Record<string, string> = {};
257
+ private isConnected = false;
258
+ private secondaryConnections: Map<string, mongoose.Connection> = new Map();
259
+
260
+ constructor(config: MongoDBOptions) {
261
+ this.uri = config.uri;
262
+ this.options = config.options || {};
263
+ this.secondaryConnectionsConfig = config.secondaryConnections || {};
264
+ }
265
+
266
+ async connect(): Promise<void> {
267
+ if (this.isConnected) return;
268
+ try {
269
+ await mongoose.connect(this.uri, this.options);
270
+ this.isConnected = true;
271
+ console.log('✅ Primary MongoDB connected');
272
+
273
+ const secondaryPromises = Object.entries(this.secondaryConnectionsConfig).map(async ([name, uri]) => {
274
+ const conn = mongoose.createConnection(uri, this.options);
275
+ await conn.asPromise();
276
+ this.secondaryConnections.set(name, conn);
277
+ console.log(\`✅ Secondary MongoDB '\${name}' connected\`);
278
+ });
279
+ await Promise.all(secondaryPromises);
280
+ } catch (error) {
281
+ console.error('MongoDB connection error:', error);
282
+ throw error;
283
+ }
284
+ }
285
+
286
+ getSecondaryConnection(name: string): mongoose.Connection | undefined {
287
+ return this.secondaryConnections.get(name);
283
288
  }
284
- return mongoConnector;
285
289
  }
286
290
 
287
- export function getSecondaryConnection(name: string): mongoose.Connection | undefined {
288
- return getMongoDBConnector().getSecondaryConnection(name);
291
+ export function createMongoDBConnector(uri: string, secondaryConnections?: Record<string, string>): MongoDBConnector {
292
+ return new MongoDBConnector({ uri, secondaryConnections });
289
293
  }
290
294
  `;
291
- await fs.writeFile(path.join(projectPath, 'src', 'db', 'mongo', 'client.ts'), mongoClientContent);
295
+ await fs.writeFile(path.join(projectPath, 'src', 'database', 'mongo.ts'), mongoContent);
292
296
  }
293
- // 5.2 src/db/mysql/client.ts (Only if MySQL is enabled)
297
+ // 5.2 src/database/mysql/client.ts (Only if MySQL is enabled)
294
298
  if (useMySQL) {
295
299
  const mysqlClientContent = `import { Sequelize } from 'sequelize';
296
300
 
@@ -370,25 +374,30 @@ export default () => {
370
374
  import { typeDefs, resolvers } from './features/index.js';
371
375
  import * as dotenv from 'dotenv';\n`;
372
376
  if (useMongo) {
373
- indexImports += `import { setMongoDBConnector } from './db/mongo/client.js';\n`;
377
+ indexImports += `import { createMongoDBConnector } from './database/mongo.js';\n`;
374
378
  }
375
379
  if (useRedis) {
376
- indexImports += `import { setRedisClient } from './db/redis/client.js';\n`;
380
+ indexImports += `import { createRedisConnector } from './database/redis.js';\n`;
377
381
  }
378
382
  if (useMySQL) {
379
- indexImports += `import { MySQLConnector, setMySQLConnector } from './db/mysql/client.js';\n`;
383
+ indexImports += `import { MySQLConnector, setMySQLConnector } from './database/mysql/client.js';\n`;
380
384
  }
381
385
  const indexConfig = [];
382
386
  indexConfig.push(`port: parseInt(process.env.PORT || '4000')`);
383
387
  if (useMongo) {
384
388
  indexConfig.push(`mongoUri: process.env.MONGO_URI || ''`);
385
389
  }
390
+ let redisConnectorInit = '';
386
391
  if (useRedis) {
387
- indexConfig.push(`redisHost: process.env.REDIS_HOST || ''`);
388
- indexConfig.push(`redisPort: parseInt(process.env.REDIS_PORT || '6379')`);
389
- indexConfig.push(`redisPassword: process.env.REDIS_PASSWORD`);
390
- indexConfig.push(`redisDb: parseInt(process.env.REDIS_DB || '0')`);
391
- indexConfig.push(`onRedisConnected: (client) => setRedisClient(client)`);
392
+ redisConnectorInit = `
393
+ const redisConnector = createRedisConnector({
394
+ host: process.env.REDIS_HOST || 'localhost',
395
+ port: parseInt(process.env.REDIS_PORT || '6379'),
396
+ password: process.env.REDIS_PASSWORD,
397
+ db: parseInt(process.env.REDIS_DB || '0')
398
+ });
399
+ `;
400
+ indexConfig.push(`redisConnector: redisConnector`);
392
401
  }
393
402
  if (useMongo && dbNames.length > 0) {
394
403
  const secondaryConfig = dbNames.map(name => {
@@ -404,6 +413,8 @@ import * as dotenv from 'dotenv';\n`;
404
413
  const indexContent = `${indexImports}
405
414
  dotenv.config();
406
415
 
416
+ ${redisConnectorInit}
417
+
407
418
  const server = new MicroserviceServer({
408
419
  ${indexConfig.join(',\n ')},
409
420
  typeDefs,
@@ -440,9 +451,12 @@ setMySQLConnector(mysqlConnector);
440
451
 
441
452
  server.start().then(async () => {
442
453
  ${useMongo ? `if (server.getMongoDBConnector()) {
443
- setMongoDBConnector(server.getMongoDBConnector()!);
454
+ // Optional: Expose mongo connector global if needed,
455
+ // but current pattern might check server.getMongoDBConnector()
444
456
  }` : ''}
445
457
 
458
+ ${useRedis ? `await redisConnector.connect();` : ''}
459
+
446
460
  ${useMySQL ? `await mysqlConnector.connect();` : ''}
447
461
 
448
462
  console.log('Server initialized');
@@ -1 +1 @@
1
- {"version":3,"file":"init-generator.js","sourceRoot":"","sources":["../../../src/cli/generators/init-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init-generator.js","sourceRoot":"","sources":["../../../src/cli/generators/init-generator.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface MicroserviceConfig {
12
12
  onRedisConnected?: (client: any) => void;
13
13
  playground?: boolean;
14
14
  introspection?: boolean;
15
+ redisConnector?: any;
15
16
  }
16
17
  export declare class MicroserviceServer {
17
18
  private config;
@@ -18,7 +18,10 @@ export class MicroserviceServer {
18
18
  constructor(config) {
19
19
  this.config = config;
20
20
  this.app = express();
21
- if (config.redisHost && config.redisPort) {
21
+ if (config.redisConnector) {
22
+ this.redisConnector = config.redisConnector;
23
+ }
24
+ else if (config.redisHost && config.redisPort) {
22
25
  this.redisConnector = createRedisConnector({
23
26
  host: config.redisHost,
24
27
  port: config.redisPort,
@@ -1 +1 @@
1
- {"version":3,"file":"MicroserviceServer.js","sourceRoot":"","sources":["../../src/core/MicroserviceServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MicroserviceServer.js","sourceRoot":"","sources":["../../src/core/MicroserviceServer.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,25 @@ export declare class RedisConnector {
36
36
  */
37
37
  get connected(): boolean;
38
38
  }
39
+ export declare let redisConnectorInstance: RedisConnector | null;
40
+ export declare const setRedisConnectorInstance: (connector: RedisConnector) => void;
41
+ export declare const getRedisConnector: () => RedisConnector;
42
+ export declare const createRedisRepository: (getDb: () => (Redis | Promise<Redis>), keyPrefix: string) => {
43
+ find: (_id: string) => Promise<unknown>;
44
+ findKeys: (_id: string) => Promise<unknown>;
45
+ findAll: () => Promise<unknown>;
46
+ save: (_id: string, _data: any) => Promise<unknown>;
47
+ saveTTL: (_id: string, _data: any, ttl: number) => Promise<unknown>;
48
+ addTTL: (_id: string, ttl: number) => Promise<number>;
49
+ getTTL: (_id: string) => Promise<unknown>;
50
+ incr: (_id: string) => Promise<unknown>;
51
+ sadd: (_id: string, _data: any) => Promise<unknown>;
52
+ sismember: (_id: string, _data: any) => Promise<unknown>;
53
+ sisremove: (_id: string, _data: any) => Promise<unknown>;
54
+ smembers: (_id: string) => Promise<unknown>;
55
+ sdiff: (_id: string) => Promise<unknown>;
56
+ clear: (key: string) => Promise<unknown>;
57
+ };
39
58
  /**
40
59
  * Factory to create Redis connector
41
60
  */
@@ -154,17 +154,172 @@ export class RedisConnector {
154
154
  return this.defaultClient?.status === 'ready';
155
155
  }
156
156
  }
157
+ export let redisConnectorInstance = null;
158
+ export const setRedisConnectorInstance = (connector) => {
159
+ redisConnectorInstance = connector;
160
+ };
161
+ export const getRedisConnector = () => {
162
+ if (!redisConnectorInstance) {
163
+ throw new Error('Redis connector not initialized. Ensure setRedisConnectorInstance is called.');
164
+ }
165
+ return redisConnectorInstance;
166
+ };
167
+ // --- Repository Factory ---
168
+ export const createRedisRepository = (getDb, keyPrefix) => {
169
+ // Helper to handle callbacks as promises
170
+ const promiseFunct = (err, response, resolve, reject) => {
171
+ if (err) {
172
+ reject(err);
173
+ }
174
+ else {
175
+ resolve(response);
176
+ }
177
+ };
178
+ // Helper to ensure db is resolved from potential promise
179
+ const resolveDb = async () => {
180
+ const dbOrPromise = getDb();
181
+ if (dbOrPromise instanceof Promise) {
182
+ return await dbOrPromise;
183
+ }
184
+ return dbOrPromise;
185
+ };
186
+ return {
187
+ find: async (_id) => {
188
+ const db = await resolveDb();
189
+ return new Promise((resolve, reject) => {
190
+ db.get(_id, (err, response) => {
191
+ promiseFunct(err, response, resolve, reject);
192
+ });
193
+ });
194
+ },
195
+ findKeys: async (_id) => {
196
+ const db = await resolveDb();
197
+ return new Promise((resolve, reject) => {
198
+ db.keys(_id, (err, response) => {
199
+ if (response && response.length > 0) {
200
+ promiseFunct(err, response, resolve, reject);
201
+ }
202
+ else {
203
+ promiseFunct(null, ['No genero datos'], resolve, reject);
204
+ }
205
+ });
206
+ });
207
+ },
208
+ findAll: async () => {
209
+ const db = await resolveDb();
210
+ return new Promise((resolve, reject) => {
211
+ db.keys(keyPrefix + '*', (err, response) => {
212
+ if (response && response.length > 0) {
213
+ db.mget(response, (err, response2) => {
214
+ promiseFunct(err, response2, resolve, reject);
215
+ });
216
+ }
217
+ else {
218
+ promiseFunct(null, ['No genero datos'], resolve, reject);
219
+ }
220
+ });
221
+ });
222
+ },
223
+ save: async (_id, _data) => {
224
+ const db = await resolveDb();
225
+ return new Promise((resolve, reject) => {
226
+ db.set(_id, _data, (err, response) => {
227
+ promiseFunct(err, response, resolve, reject);
228
+ });
229
+ });
230
+ },
231
+ saveTTL: async (_id, _data, ttl) => {
232
+ const db = await resolveDb();
233
+ return new Promise((resolve, reject) => {
234
+ db.set(_id, _data, (err, response) => {
235
+ if (err) {
236
+ reject(err);
237
+ }
238
+ else {
239
+ db.expire(_id, ttl);
240
+ resolve(response);
241
+ }
242
+ });
243
+ });
244
+ },
245
+ addTTL: async (_id, ttl) => {
246
+ const db = await resolveDb();
247
+ return db.expire(_id, ttl);
248
+ },
249
+ getTTL: async (_id) => {
250
+ const db = await resolveDb();
251
+ return new Promise((resolve, reject) => {
252
+ db.ttl(_id, (err, response) => {
253
+ promiseFunct(err, response, resolve, reject);
254
+ });
255
+ });
256
+ },
257
+ incr: async (_id) => {
258
+ const db = await resolveDb();
259
+ return new Promise((resolve, reject) => {
260
+ db.incr(_id, (err, response) => {
261
+ promiseFunct(err, response, resolve, reject);
262
+ });
263
+ });
264
+ },
265
+ sadd: async (_id, _data) => {
266
+ const db = await resolveDb();
267
+ return new Promise((resolve, reject) => {
268
+ db.sadd(_id, _data, (err, response) => {
269
+ promiseFunct(err, response, resolve, reject);
270
+ });
271
+ });
272
+ },
273
+ sismember: async (_id, _data) => {
274
+ const db = await resolveDb();
275
+ return new Promise((resolve, reject) => {
276
+ db.sismember(_id, _data, (err, response) => {
277
+ promiseFunct(err, response, resolve, reject);
278
+ });
279
+ });
280
+ },
281
+ sisremove: async (_id, _data) => {
282
+ const db = await resolveDb();
283
+ return new Promise((resolve, reject) => {
284
+ db.srem(_id, _data, (err, response) => {
285
+ promiseFunct(err, response, resolve, reject);
286
+ });
287
+ });
288
+ },
289
+ smembers: async (_id) => {
290
+ const db = await resolveDb();
291
+ return new Promise((resolve, reject) => {
292
+ db.smembers(_id, (err, response) => {
293
+ promiseFunct(err, response, resolve, reject);
294
+ });
295
+ });
296
+ },
297
+ sdiff: async (_id) => {
298
+ return new Promise((resolve, reject) => {
299
+ console.log('sdiff called with', _id);
300
+ resolve([]);
301
+ });
302
+ },
303
+ clear: async (key) => {
304
+ const db = await resolveDb();
305
+ return new Promise((resolve, reject) => {
306
+ db.del(key, (err, response) => {
307
+ promiseFunct(err, response, resolve, reject);
308
+ });
309
+ });
310
+ }
311
+ };
312
+ };
157
313
  /**
158
314
  * Factory to create Redis connector
159
315
  */
160
316
  export function createRedisConnector(urlOrOptions) {
161
- if (typeof urlOrOptions === 'string') {
162
- return new RedisConnector({
163
- host: urlOrOptions // Assuming string is just host/url, but RedisOptions doesn't take url string directly usually in IORedis constructor if mixed?
164
- // The original code handled string by setting this.url.
165
- // I removed this.url handling in constructor. I should fix constructor too.
166
- });
167
- }
168
- return new RedisConnector(urlOrOptions);
317
+ const connector = typeof urlOrOptions === 'string'
318
+ ? new RedisConnector({
319
+ host: urlOrOptions
320
+ }) // Cast to any to bypass strict check if needed, or rely on internal logic
321
+ : new RedisConnector(urlOrOptions);
322
+ setRedisConnectorInstance(connector);
323
+ return connector;
169
324
  }
170
325
  //# sourceMappingURL=redis.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../src/database/redis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../src/database/redis.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "micro-generate",
3
- "version": "1.3.0",
3
+ "version": "1.3.2",
4
4
  "type": "module",
5
5
  "description": "Microservices project with Node.js, Express, Mongoose, Redis, and GraphQL",
6
6
  "main": "dist/index.js",