micro-generate 1.3.10 → 1.3.12

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.
Files changed (80) hide show
  1. package/README.md +83 -9
  2. package/dist/cli/generators/add-mongo-generator.d.ts +4 -0
  3. package/dist/cli/generators/add-mongo-generator.js +212 -0
  4. package/dist/cli/generators/add-mongo-generator.js.map +1 -0
  5. package/dist/cli/generators/add-mysql-generator.d.ts +4 -0
  6. package/dist/cli/generators/add-mysql-generator.js +221 -0
  7. package/dist/cli/generators/add-mysql-generator.js.map +1 -0
  8. package/dist/cli/generators/add-redis-generator.d.ts +1 -0
  9. package/dist/cli/generators/add-redis-generator.js +100 -0
  10. package/dist/cli/generators/add-redis-generator.js.map +1 -0
  11. package/dist/cli/generators/feature-generator.js +26 -338
  12. package/dist/cli/generators/feature-generator.js.map +1 -1
  13. package/dist/cli/generators/init-generator.js +31 -649
  14. package/dist/cli/generators/init-generator.js.map +1 -1
  15. package/dist/cli/generators/model-generator.d.ts +6 -0
  16. package/dist/cli/generators/model-generator.js +50 -0
  17. package/dist/cli/generators/model-generator.js.map +1 -0
  18. package/dist/cli/index.js +71 -0
  19. package/dist/cli/index.js.map +1 -1
  20. package/dist/cli/templates/feature/mongoModel.template.d.ts +6 -0
  21. package/dist/cli/templates/feature/mongoModel.template.js +57 -0
  22. package/dist/cli/templates/feature/mongoModel.template.js.map +1 -0
  23. package/dist/cli/templates/feature/mysqlModel.template.d.ts +6 -0
  24. package/dist/cli/templates/feature/mysqlModel.template.js +62 -0
  25. package/dist/cli/templates/feature/mysqlModel.template.js.map +1 -0
  26. package/dist/cli/templates/feature/resolvers.template.d.ts +1 -0
  27. package/dist/cli/templates/feature/resolvers.template.js +21 -0
  28. package/dist/cli/templates/feature/resolvers.template.js.map +1 -0
  29. package/dist/cli/templates/feature/service.template.d.ts +11 -0
  30. package/dist/cli/templates/feature/service.template.js +68 -0
  31. package/dist/cli/templates/feature/service.template.js.map +1 -0
  32. package/dist/cli/templates/feature/typeDefs.template.d.ts +1 -0
  33. package/dist/cli/templates/feature/typeDefs.template.js +24 -0
  34. package/dist/cli/templates/feature/typeDefs.template.js.map +1 -0
  35. package/dist/cli/templates/project/api.template.d.ts +1 -0
  36. package/dist/cli/templates/project/api.template.js +40 -0
  37. package/dist/cli/templates/project/api.template.js.map +1 -0
  38. package/dist/cli/templates/project/config.template.d.ts +1 -0
  39. package/dist/cli/templates/project/config.template.js +12 -0
  40. package/dist/cli/templates/project/config.template.js.map +1 -0
  41. package/dist/cli/templates/project/featuresIndex.template.d.ts +1 -0
  42. package/dist/cli/templates/project/featuresIndex.template.js +4 -0
  43. package/dist/cli/templates/project/featuresIndex.template.js.map +1 -0
  44. package/dist/cli/templates/project/index.template.d.ts +8 -0
  45. package/dist/cli/templates/project/index.template.js +104 -0
  46. package/dist/cli/templates/project/index.template.js.map +1 -0
  47. package/dist/cli/templates/project/mongo.template.d.ts +1 -0
  48. package/dist/cli/templates/project/mongo.template.js +51 -0
  49. package/dist/cli/templates/project/mongo.template.js.map +1 -0
  50. package/dist/cli/templates/project/mongoClient.template.d.ts +1 -0
  51. package/dist/cli/templates/project/mongoClient.template.js +21 -0
  52. package/dist/cli/templates/project/mongoClient.template.js.map +1 -0
  53. package/dist/cli/templates/project/mysqlClient.template.d.ts +1 -0
  54. package/dist/cli/templates/project/mysqlClient.template.js +18 -0
  55. package/dist/cli/templates/project/mysqlClient.template.js.map +1 -0
  56. package/dist/cli/templates/project/redis.template.d.ts +1 -0
  57. package/dist/cli/templates/project/redis.template.js +255 -0
  58. package/dist/cli/templates/project/redis.template.js.map +1 -0
  59. package/dist/cli/templates/project/sanitize.template.d.ts +1 -0
  60. package/dist/cli/templates/project/sanitize.template.js +11 -0
  61. package/dist/cli/templates/project/sanitize.template.js.map +1 -0
  62. package/dist/cli/templates/project/skill.template.d.ts +1 -0
  63. package/dist/cli/templates/project/skill.template.js +147 -0
  64. package/dist/cli/templates/project/skill.template.js.map +1 -0
  65. package/dist/cli/templates/project/tsconfig.template.d.ts +1 -0
  66. package/dist/cli/templates/project/tsconfig.template.js +17 -0
  67. package/dist/cli/templates/project/tsconfig.template.js.map +1 -0
  68. package/dist/core/MicroserviceServer.d.ts +4 -0
  69. package/dist/core/MicroserviceServer.js +13 -0
  70. package/dist/core/MicroserviceServer.js.map +1 -1
  71. package/dist/database/mysql.d.ts +23 -0
  72. package/dist/database/mysql.js +68 -0
  73. package/dist/database/mysql.js.map +1 -0
  74. package/dist/database/redis.d.ts +1 -1
  75. package/dist/database/redis.js +6 -8
  76. package/dist/database/redis.js.map +1 -1
  77. package/dist/index.d.ts +1 -0
  78. package/dist/index.js +1 -0
  79. package/dist/index.js.map +1 -1
  80. package/package.json +5 -1
@@ -0,0 +1,147 @@
1
+ export const skillTemplate = `---
2
+ name: micro-generate-helper
3
+ description: Use the micro-generate CLI non-interactively to generate features, queries, mutations, standalone models, and add database/cache configurations to existing projects.
4
+ ---
5
+
6
+ # Micro-Generate Skill
7
+
8
+ This skill allows you to programmatically invoke the \\\`micro-generate\\\` CLI tools to create features, GraphQL operations, standalone models, and database/cache connectors without user interaction.
9
+
10
+ ## Usage
11
+
12
+ You should use your terminal or command-execution tool to execute the \\\`npx micro-generate\\\` command directly. The CLI supports headless execution via flags for all commands.
13
+
14
+ ---
15
+
16
+ ## 🔄 Recommended Workflow (Order of Operations)
17
+
18
+ When implementing a new feature or database configuration, follow this exact sequence:
19
+
20
+ 1. **Initialize Technologies (If missing)**: If the project does not have the database/cache you need, run the \\\`add\\\` command first.
21
+ 2. **Scaffold the Feature**: Execute the \\\`feature\\\` command to generate the vertical slice folder structure.
22
+ 3. **Scaffold Standalone Models (Optional)**: If you need separate standalone models not coupled to a single feature, run the \\\`model\\\` command.
23
+ 4. **Scaffold Operations**: Use the \\\`query\\\` and \\\`mutation\\\` commands to add GraphQL endpoints.
24
+ 5. **Implement Business Logic**: Open and implement the business logic in the generated files (see **Landing Paths** below).
25
+ 6. **Verify and Self-Correct**: Run verification commands to ensure the project builds and runs without TypeScript or runtime errors.
26
+
27
+ ---
28
+
29
+ ## 📂 File Landing Paths & Architectural Conventions
30
+
31
+ After running the CLI generators, you **must** locate and write the actual implementation in the following paths:
32
+
33
+ * **GraphQL Schema**: \\\`src/features/<feature-name>/typeDefs.ts\\\`
34
+ * *Convention*: Declare your types, queries, and mutations here. The CLI inserts new operations, but you must define arguments and return types.
35
+ * **GraphQL Resolvers**: \\\`src/features/<feature-name>/resolvers.ts\\\`
36
+ * *Convention*: Map the schema queries/mutations to call the corresponding service methods. Keep resolvers thin.
37
+ * **Business Logic / Services**: \\\`src/features/<feature-name>/service.ts\\\`
38
+ * *Convention*: Implement your database queries, data mutations, APIs, and caching operations here.
39
+ * **Feature-coupled Models**: \\\`src/features/<feature-name>/model.ts\\\` (or under \\\`src/database/<mongo|mysql>/models/\\\` if standalone).
40
+ * *Convention*: Define your mongoose schemas or sequelize schemas.
41
+ * **Feature Entrypoint**: \\\`src/features/<feature-name>/index.ts\\\`
42
+ * *Convention*: Aggregates typeDefs, resolvers, and services. It is automatically registered in \\\`src/features/index.ts\\\`.
43
+
44
+ ---
45
+
46
+ ## 🛠️ CLI Command Reference & Preconditions
47
+
48
+ Execute these commands using your terminal or command-execution tool.
49
+
50
+ ### 1. \\\`add <technology>\\\`
51
+ Adds database/cache configurations to the project.
52
+ * **Preconditions**: None.
53
+ * **Usage**: \\\`npx micro-generate add <redis | mongo | mysql>\\\`
54
+ * **Options**:
55
+ * \\\`-n, --name <string>\\\`: (Optional) Default database name (for MongoDB/MySQL).
56
+ * \\\`-s, --secondary <string>\\\`: (Optional) Comma-separated list of secondary databases to add (for MongoDB/MySQL).
57
+ * *Note*: For Redis, it sets up the main connection parameters in \\\`.env\\\`. Redis does not require secondary connection parameters as multiple databases are accessed by index.
58
+ * **Example**:
59
+ \\\`\\\`\\\`bash
60
+ npx micro-generate add mongo --name "my_core" --secondary "logs,analytics"
61
+ \\\`\\\`\\\`
62
+
63
+ ### 2. \\\`feature\\\`
64
+ Creates a new vertical slice module.
65
+ * **Preconditions**: If database/cache flags (\\\`--mongo\\\`, \\\`--mysql\\\`, \\\`--redis\\\`) are passed, those technologies must be configured in the project (either initialized at project creation or added using the \\\`add\\\` command).
66
+ * **Usage**: \\\`npx micro-generate feature --name <name> [options]\\\`
67
+ * **Options**:
68
+ * \\\`--mongo\\\` / \\\`--no-mongo\\\`: Enable/disable MongoDB support.
69
+ * \\\`--mysql\\\` / \\\`--no-mysql\\\`: Enable/disable MySQL support.
70
+ * \\\`--redis\\\` / \\\`--no-redis\\\`: Enable/disable Redis support.
71
+ * \\\`--db-connection <string>\\\`: (Optional) Connect to a specific MongoDB database name (Multi-DB).
72
+ * \\\`--mysql-connection <string>\\\`: (Optional) Connect to a specific MySQL database name (Multi-DB).
73
+ * \\\`--redis-db <number>\\\`: (Optional) Connect to a specific Redis database number (0-15).
74
+ * **Example**:
75
+ \\\`\\\`\\\`bash
76
+ npx micro-generate feature --name "billing" --mysql --redis --mysql-connection "payments" --redis-db 2
77
+ \\\`\\\`\\\`
78
+
79
+ ### 3. \\\`model\\\`
80
+ Generates a standalone database model.
81
+ * **Preconditions**: The selected database type must be configured in the project.
82
+ * **Usage**: \\\`npx micro-generate model --name <name> --type <mongo | mysql> [options]\\\`
83
+ * **Options**:
84
+ * \\\`-n, --name <string>\\\`: (Required) Model name (e.g., "Invoice").
85
+ * \\\`-t, --type <string>\\\`: (Required) Database type (\\\`mongo\\\` or \\\`mysql\\\`).
86
+ * \\\`-c, --connection <string>\\\`: (Optional) Connection name (defaults to default).
87
+ * **Example**:
88
+ \\\`\\\`\\\`bash
89
+ npx micro-generate model --name "Invoice" --type "mysql" --connection "billing"
90
+ \\\`\\\`\\\`
91
+
92
+ ### 4. \\\`query\\\` and \\\`mutation\\\`
93
+ Adds a new GraphQL operation to an existing feature.
94
+ * **Preconditions**: The target feature must already exist under \\\`src/features/<feature-name>\\\`.
95
+ * **Usage**: \\\`npx micro-generate <query | mutation> --feature <feature-name> --name <name> [options]\\\`
96
+ * **Options**:
97
+ * \\\`-f, --feature <string>\\\`: (Required) Target feature.
98
+ * \\\`-n, --name <string>\\\`: (Required) Operation name (e.g., "getInvoice").
99
+ * \\\`-r, --return-type <string>\\\`: (Optional) Return type (e.g., "InvoiceResponse").
100
+ * **Example**:
101
+ \\\`\\\`\\\`bash
102
+ npx micro-generate query --feature "billing" --name "getInvoice" --return-type "Invoice"
103
+ \\\`\\\`\\\`
104
+
105
+ ---
106
+
107
+ ## 📝 End-to-End Example: Implementing a Feature
108
+
109
+ Here is how you would implement a new feature called "notifications" that uses MySQL and Redis:
110
+
111
+ 1. **Generate the feature**:
112
+ \\\`\\\`\\\`bash
113
+ npx micro-generate feature --name "notifications" --mysql --redis --redis-db 1
114
+ \\\`\\\`\\\`
115
+ 2. **Add a query**:
116
+ \\\`\\\`\\\`bash
117
+ npx micro-generate query --feature "notifications" --name "getUserNotifications" --return-type "[Notification!]"
118
+ \\\`\\\`\\\`
119
+ 3. **Implement database schema**:
120
+ Open the generated model file in \\\`src/features/notifications/model.ts\\\` (or standalone model) and define the fields (e.g., \\\`title\\\`, \\\`message\\\`, \\\`userId\\\`, \\\`read\\\`).
121
+ 4. **Write the business logic**:
122
+ Open \\\`src/features/notifications/service.ts\\\`. Add code to fetch notifications from the MySQL database and cache them in Redis.
123
+ 5. **Hook up the resolver**:
124
+ Open \\\`src/features/notifications/resolvers.ts\\\` and map the query to your service method.
125
+ 6. **Verify**:
126
+ Run \\\`npm run build\\\` to ensure it compiles without TypeScript errors.
127
+
128
+ ---
129
+
130
+ ## 🔍 Verification & Self-Correction Loop
131
+
132
+ Always verify your changes after generating or modifying files:
133
+
134
+ 1. **Check Registration**: Ensure that your feature is listed in \\\`src/features/index.ts\\\`. The CLI registers new features automatically, but verify that it was not corrupted:
135
+ \\\`\\\`\\\`typescript
136
+ import * as notifications from './notifications/index.js';
137
+ \\\`\\\`\\\`
138
+ 2. **Compile Project**: Run the TypeScript compiler to ensure there are no syntax or type mismatches:
139
+ \\\`\\\`\\\`bash
140
+ npm run build
141
+ \\\`\\\`\\\`
142
+ 3. **Read and Correct Errors**: If \\\`tsc\\\` fails:
143
+ * Read the line number and error description.
144
+ * Check for missing imports or incorrect relative paths (e.g., missing \\\`.js\\\` in TypeScript ESM imports).
145
+ * Fix the types and compile again until it builds with **0 errors**.
146
+ `;
147
+ //# sourceMappingURL=skill.template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.template.js","sourceRoot":"","sources":["../../../../src/cli/templates/project/skill.template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiJ5B,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const tsConfigTemplate = "{\n \"compilerOptions\": {\n \"target\": \"ES2020\",\n \"module\": \"NodeNext\",\n \"moduleResolution\": \"NodeNext\",\n \"outDir\": \"./dist\",\n \"rootDir\": \"./src\",\n \"strict\": true,\n \"esModuleInterop\": true,\n \"skipLibCheck\": true,\n \"forceConsistentCasingInFileNames\": true\n },\n \"include\": [\"src/**/*\"],\n \"exclude\": [\"node_modules\", \"**/*.spec.ts\"]\n}\n";
@@ -0,0 +1,17 @@
1
+ export const tsConfigTemplate = `{
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "module": "NodeNext",
5
+ "moduleResolution": "NodeNext",
6
+ "outDir": "./dist",
7
+ "rootDir": "./src",
8
+ "strict": true,
9
+ "esModuleInterop": true,
10
+ "skipLibCheck": true,
11
+ "forceConsistentCasingInFileNames": true
12
+ },
13
+ "include": ["src/**/*"],
14
+ "exclude": ["node_modules", "**/*.spec.ts"]
15
+ }
16
+ `;
17
+ //# sourceMappingURL=tsconfig.template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsconfig.template.js","sourceRoot":"","sources":["../../../../src/cli/templates/project/tsconfig.template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;CAe/B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { MongoDBConnector } from '../database/mongo.js';
2
+ import { MySQLConnector } from '../database/mysql.js';
2
3
  export interface MicroserviceConfig {
3
4
  port: number;
4
5
  mongoUri?: string;
@@ -13,6 +14,7 @@ export interface MicroserviceConfig {
13
14
  playground?: boolean;
14
15
  introspection?: boolean;
15
16
  redisConnector?: any;
17
+ mysqlConnector?: MySQLConnector;
16
18
  graphqlPath?: string;
17
19
  }
18
20
  export declare class MicroserviceServer {
@@ -22,9 +24,11 @@ export declare class MicroserviceServer {
22
24
  private apolloServer;
23
25
  private redisConnector;
24
26
  private dbConnector;
27
+ private mysqlConnector;
25
28
  constructor(config: MicroserviceConfig);
26
29
  start(): Promise<void>;
27
30
  stop(): Promise<void>;
28
31
  getRedisClient(): import("ioredis").default | null;
29
32
  getMongoDBConnector(): MongoDBConnector | null;
33
+ getMySQLConnector(): MySQLConnector | null;
30
34
  }
@@ -15,6 +15,7 @@ export class MicroserviceServer {
15
15
  apolloServer;
16
16
  redisConnector = null;
17
17
  dbConnector = null;
18
+ mysqlConnector = null;
18
19
  constructor(config) {
19
20
  this.config = config;
20
21
  this.app = express();
@@ -29,6 +30,9 @@ export class MicroserviceServer {
29
30
  db: config.redisDb,
30
31
  });
31
32
  }
33
+ if (config.mysqlConnector) {
34
+ this.mysqlConnector = config.mysqlConnector;
35
+ }
32
36
  const plugins = [];
33
37
  if (config.playground !== false) { // Default to true if undefined
34
38
  plugins.push(ApolloServerPluginLandingPageLocalDefault());
@@ -55,6 +59,9 @@ export class MicroserviceServer {
55
59
  this.config.onRedisConnected(this.redisConnector.getClient());
56
60
  }
57
61
  }
62
+ if (this.mysqlConnector) {
63
+ await this.mysqlConnector.connect();
64
+ }
58
65
  // 2. Express Config
59
66
  this.app.use(helmet({
60
67
  crossOriginEmbedderPolicy: false,
@@ -88,6 +95,9 @@ export class MicroserviceServer {
88
95
  if (this.dbConnector) {
89
96
  await this.dbConnector.disconnect();
90
97
  }
98
+ if (this.mysqlConnector) {
99
+ await this.mysqlConnector.disconnect();
100
+ }
91
101
  }
92
102
  getRedisClient() {
93
103
  return this.redisConnector ? this.redisConnector.getClient() : null;
@@ -95,5 +105,8 @@ export class MicroserviceServer {
95
105
  getMongoDBConnector() {
96
106
  return this.dbConnector;
97
107
  }
108
+ getMySQLConnector() {
109
+ return this.mysqlConnector;
110
+ }
98
111
  }
99
112
  //# sourceMappingURL=MicroserviceServer.js.map
@@ -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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"}
@@ -0,0 +1,23 @@
1
+ import { Sequelize } from 'sequelize';
2
+ export interface MySQLConfig {
3
+ name?: string;
4
+ database: string;
5
+ user: string;
6
+ password?: string;
7
+ host: string;
8
+ port: number;
9
+ }
10
+ export declare class MySQLConnector {
11
+ private connections;
12
+ private configs;
13
+ constructor(configs: MySQLConfig[]);
14
+ connect(): Promise<void>;
15
+ disconnect(): Promise<void>;
16
+ getConnection(name?: string): Sequelize | undefined;
17
+ getSecondaryConnection(name: string): Sequelize | undefined;
18
+ }
19
+ export declare const setMySQLConnector: (connector: MySQLConnector) => void;
20
+ export declare const getMySQLConnector: () => MySQLConnector;
21
+ export declare const getSecondaryMySQLConnection: (name: string) => Sequelize | undefined;
22
+ declare const _default: () => Sequelize | null | undefined;
23
+ export default _default;
@@ -0,0 +1,68 @@
1
+ import { Sequelize } from 'sequelize';
2
+ import { logger } from '../utils/logger.js';
3
+ export class MySQLConnector {
4
+ connections = new Map();
5
+ configs;
6
+ constructor(configs) {
7
+ this.configs = configs;
8
+ }
9
+ async connect() {
10
+ for (const config of this.configs) {
11
+ const sequelize = new Sequelize(config.database, config.user, config.password, {
12
+ host: config.host,
13
+ port: config.port,
14
+ dialect: 'mysql',
15
+ logging: process.env.NODE_ENV === 'development' ? (msg) => logger.debug(msg) : false,
16
+ });
17
+ try {
18
+ await sequelize.authenticate();
19
+ logger.info(`✅ MySQL Connection (${config.name || 'default'}) established successfully.`);
20
+ this.connections.set(config.name || 'default', sequelize);
21
+ }
22
+ catch (error) {
23
+ logger.error(error, `Unable to connect to the MySQL database (${config.name || 'default'}):`);
24
+ throw error;
25
+ }
26
+ }
27
+ }
28
+ async disconnect() {
29
+ const closePromises = Array.from(this.connections.entries()).map(async ([name, sequelize]) => {
30
+ try {
31
+ await sequelize.close();
32
+ logger.info(`MySQL Connection (${name}) closed successfully.`);
33
+ }
34
+ catch (error) {
35
+ logger.error(error, `Error closing MySQL connection (${name}):`);
36
+ }
37
+ });
38
+ await Promise.all(closePromises);
39
+ this.connections.clear();
40
+ }
41
+ getConnection(name = 'default') {
42
+ return this.connections.get(name);
43
+ }
44
+ getSecondaryConnection(name) {
45
+ return this.connections.get(name);
46
+ }
47
+ }
48
+ let mysqlConnector = null;
49
+ export const setMySQLConnector = (connector) => {
50
+ mysqlConnector = connector;
51
+ };
52
+ export const getMySQLConnector = () => {
53
+ if (!mysqlConnector)
54
+ throw new Error('MySQL Connector not initialized');
55
+ return mysqlConnector;
56
+ };
57
+ export const getSecondaryMySQLConnection = (name) => {
58
+ return getMySQLConnector().getSecondaryConnection(name);
59
+ };
60
+ export default () => {
61
+ try {
62
+ return getMySQLConnector().getConnection('default');
63
+ }
64
+ catch (e) {
65
+ return null;
66
+ }
67
+ };
68
+ //# sourceMappingURL=mysql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mysql.js","sourceRoot":"","sources":["../../src/database/mysql.ts"],"names":[],"mappings":"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"}
@@ -52,7 +52,7 @@ export declare const createRedisRepository: (getDb: () => (Redis | Promise<Redis
52
52
  sismember: (_id: string, _data: any) => Promise<unknown>;
53
53
  sisremove: (_id: string, _data: any) => Promise<unknown>;
54
54
  smembers: (_id: string) => Promise<unknown>;
55
- sdiff: (_id: string) => Promise<unknown>;
55
+ sdiff: (keys: string[]) => Promise<unknown>;
56
56
  clear: (key: string) => Promise<unknown>;
57
57
  };
58
58
  /**
@@ -294,10 +294,12 @@ export const createRedisRepository = (getDb, keyPrefix) => {
294
294
  });
295
295
  });
296
296
  },
297
- sdiff: async (_id) => {
297
+ sdiff: async (keys) => {
298
+ const db = await resolveDb();
298
299
  return new Promise((resolve, reject) => {
299
- console.log('sdiff called with', _id);
300
- resolve([]);
300
+ db.sdiff(keys, (err, response) => {
301
+ promiseFunct(err, response, resolve, reject);
302
+ });
301
303
  });
302
304
  },
303
305
  clear: async (key) => {
@@ -314,11 +316,7 @@ export const createRedisRepository = (getDb, keyPrefix) => {
314
316
  * Factory to create Redis connector
315
317
  */
316
318
  export function createRedisConnector(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);
319
+ const connector = new RedisConnector(urlOrOptions);
322
320
  setRedisConnectorInstance(connector);
323
321
  return connector;
324
322
  }
@@ -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/dist/index.d.ts CHANGED
@@ -2,5 +2,6 @@ export * from './core/MicroserviceServer.js';
2
2
  export * from './config/database.js';
3
3
  export * from './database/redis.js';
4
4
  export * from './database/mongo.js';
5
+ export * from './database/mysql.js';
5
6
  export * from './utils/logger.js';
6
7
  export * from './config/env.js';
package/dist/index.js CHANGED
@@ -2,6 +2,7 @@ export * from './core/MicroserviceServer.js';
2
2
  export * from './config/database.js';
3
3
  export * from './database/redis.js';
4
4
  export * from './database/mongo.js';
5
+ export * from './database/mysql.js';
5
6
  export * from './utils/logger.js';
6
7
  export * from './config/env.js';
7
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "micro-generate",
3
- "version": "1.3.10",
3
+ "version": "1.3.12",
4
4
  "type": "module",
5
5
  "description": "Microservices project with Node.js, Express, Mongoose, Redis, and GraphQL",
6
6
  "main": "dist/index.js",
@@ -55,6 +55,7 @@
55
55
  "mongoose": "^8.1.1",
56
56
  "pino": "^10.2.0",
57
57
  "pino-pretty": "^13.1.3",
58
+ "sequelize": "^6.37.8",
58
59
  "zod": "^3.22.4"
59
60
  },
60
61
  "devDependencies": {
@@ -68,5 +69,8 @@
68
69
  "ts-node": "^10.9.2",
69
70
  "tsx": "^4.7.0",
70
71
  "typescript": "^5.3.3"
72
+ },
73
+ "overrides": {
74
+ "uuid": "^11.1.1"
71
75
  }
72
76
  }