@ciscode/database-kit 1.0.0 → 1.0.1

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 (48) hide show
  1. package/CHANGELOG.md +50 -4
  2. package/README.md +487 -148
  3. package/dist/adapters/mongo.adapter.d.ts +53 -3
  4. package/dist/adapters/mongo.adapter.d.ts.map +1 -1
  5. package/dist/adapters/mongo.adapter.js +410 -27
  6. package/dist/adapters/mongo.adapter.js.map +1 -1
  7. package/dist/adapters/postgres.adapter.d.ts +50 -3
  8. package/dist/adapters/postgres.adapter.d.ts.map +1 -1
  9. package/dist/adapters/postgres.adapter.js +439 -45
  10. package/dist/adapters/postgres.adapter.js.map +1 -1
  11. package/dist/config/database.config.d.ts +1 -1
  12. package/dist/config/database.config.d.ts.map +1 -1
  13. package/dist/config/database.config.js +13 -13
  14. package/dist/config/database.config.js.map +1 -1
  15. package/dist/config/database.constants.js +7 -7
  16. package/dist/contracts/database.contracts.d.ts +283 -6
  17. package/dist/contracts/database.contracts.d.ts.map +1 -1
  18. package/dist/contracts/database.contracts.js +6 -1
  19. package/dist/contracts/database.contracts.js.map +1 -1
  20. package/dist/database-kit.module.d.ts +2 -2
  21. package/dist/database-kit.module.d.ts.map +1 -1
  22. package/dist/database-kit.module.js +1 -2
  23. package/dist/database-kit.module.js.map +1 -1
  24. package/dist/filters/database-exception.filter.d.ts +1 -1
  25. package/dist/filters/database-exception.filter.d.ts.map +1 -1
  26. package/dist/filters/database-exception.filter.js +43 -43
  27. package/dist/filters/database-exception.filter.js.map +1 -1
  28. package/dist/index.d.ts +10 -10
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js.map +1 -1
  31. package/dist/middleware/database.decorators.d.ts.map +1 -1
  32. package/dist/middleware/database.decorators.js.map +1 -1
  33. package/dist/services/database.service.d.ts +83 -5
  34. package/dist/services/database.service.d.ts.map +1 -1
  35. package/dist/services/database.service.js +136 -16
  36. package/dist/services/database.service.js.map +1 -1
  37. package/dist/services/logger.service.d.ts +1 -1
  38. package/dist/services/logger.service.d.ts.map +1 -1
  39. package/dist/services/logger.service.js +1 -1
  40. package/dist/services/logger.service.js.map +1 -1
  41. package/dist/utils/pagination.utils.d.ts +2 -2
  42. package/dist/utils/pagination.utils.d.ts.map +1 -1
  43. package/dist/utils/pagination.utils.js +9 -6
  44. package/dist/utils/pagination.utils.js.map +1 -1
  45. package/dist/utils/validation.utils.d.ts.map +1 -1
  46. package/dist/utils/validation.utils.js +5 -5
  47. package/dist/utils/validation.utils.js.map +1 -1
  48. package/package.json +28 -8
@@ -1 +1 @@
1
- {"version":3,"file":"database-kit.module.js","sourceRoot":"","sources":["../src/database-kit.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database-kit.module.js","sourceRoot":"","sources":["../src/database-kit.module.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ExceptionFilter, ArgumentsHost } from '@nestjs/common';
1
+ import { ExceptionFilter, ArgumentsHost } from "@nestjs/common";
2
2
  /**
3
3
  * Global exception filter for handling database-related errors.
4
4
  * Catches and formats various database errors into consistent HTTP responses.
@@ -1 +1 @@
1
- {"version":3,"file":"database-exception.filter.d.ts","sourceRoot":"","sources":["../../src/filters/database-exception.filter.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,eAAe,EAEf,aAAa,EAIhB,MAAM,gBAAgB,CAAC;AAaxB;;;;;;;;;;;;;;;;GAgBG;AACH,qBACa,uBAAwB,YAAW,eAAe;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4C;IAEnE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI;IAqBpD;;OAEG;IACH,OAAO,CAAC,cAAc;IAuDtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAYpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAyCvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAOnB;;OAEG;IACH,OAAO,CAAC,cAAc;IA2DtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;OAEG;IACH,OAAO,CAAC,QAAQ;CAcnB"}
1
+ {"version":3,"file":"database-exception.filter.d.ts","sourceRoot":"","sources":["../../src/filters/database-exception.filter.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EAEf,aAAa,EAId,MAAM,gBAAgB,CAAC;AAaxB;;;;;;;;;;;;;;;;GAgBG;AACH,qBACa,uBAAwB,YAAW,eAAe;IAC7D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4C;IAEnE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI;IAqBpD;;OAEG;IACH,OAAO,CAAC,cAAc;IAwDtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAYpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAyCvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAOnB;;OAEG;IACH,OAAO,CAAC,cAAc;IA+DtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;OAEG;IACH,OAAO,CAAC,QAAQ;CAcjB"}
@@ -42,7 +42,7 @@ let DatabaseExceptionFilter = DatabaseExceptionFilter_1 = class DatabaseExceptio
42
42
  message,
43
43
  error,
44
44
  timestamp: new Date().toISOString(),
45
- path: (request === null || request === void 0 ? void 0 : request.url) || '/',
45
+ path: (request === null || request === void 0 ? void 0 : request.url) || "/",
46
46
  };
47
47
  // Log the error
48
48
  this.logError(exception, errorResponse);
@@ -55,7 +55,7 @@ let DatabaseExceptionFilter = DatabaseExceptionFilter_1 = class DatabaseExceptio
55
55
  // Handle NestJS HTTP exceptions
56
56
  if (exception instanceof common_1.HttpException) {
57
57
  const response = exception.getResponse();
58
- const message = typeof response === 'string'
58
+ const message = typeof response === "string"
59
59
  ? response
60
60
  : response.message || exception.message;
61
61
  return {
@@ -77,36 +77,36 @@ let DatabaseExceptionFilter = DatabaseExceptionFilter_1 = class DatabaseExceptio
77
77
  return {
78
78
  statusCode: common_1.HttpStatus.BAD_REQUEST,
79
79
  message: exception.message,
80
- error: 'ValidationError',
80
+ error: "ValidationError",
81
81
  };
82
82
  }
83
83
  // Handle generic errors
84
84
  if (exception instanceof Error) {
85
85
  return {
86
86
  statusCode: common_1.HttpStatus.INTERNAL_SERVER_ERROR,
87
- message: exception.message || 'An unexpected error occurred',
88
- error: exception.name || 'InternalServerError',
87
+ message: exception.message || "An unexpected error occurred",
88
+ error: exception.name || "InternalServerError",
89
89
  };
90
90
  }
91
91
  // Fallback for unknown errors
92
92
  return {
93
93
  statusCode: common_1.HttpStatus.INTERNAL_SERVER_ERROR,
94
- message: 'An unexpected error occurred',
95
- error: 'InternalServerError',
94
+ message: "An unexpected error occurred",
95
+ error: "InternalServerError",
96
96
  };
97
97
  }
98
98
  /**
99
99
  * Checks if the exception is a MongoDB error.
100
100
  */
101
101
  isMongoError(exception) {
102
- if (!exception || typeof exception !== 'object')
102
+ if (!exception || typeof exception !== "object")
103
103
  return false;
104
104
  const err = exception;
105
- return (err.name === 'MongoError' ||
106
- err.name === 'MongoServerError' ||
107
- err.name === 'MongooseError' ||
108
- err.name === 'CastError' ||
109
- err.name === 'ValidationError');
105
+ return (err.name === "MongoError" ||
106
+ err.name === "MongoServerError" ||
107
+ err.name === "MongooseError" ||
108
+ err.name === "CastError" ||
109
+ err.name === "ValidationError");
110
110
  }
111
111
  /**
112
112
  * Parses MongoDB-specific errors.
@@ -117,41 +117,41 @@ let DatabaseExceptionFilter = DatabaseExceptionFilter_1 = class DatabaseExceptio
117
117
  if (err.code === 11000) {
118
118
  return {
119
119
  statusCode: common_1.HttpStatus.CONFLICT,
120
- message: 'A record with this value already exists',
121
- error: 'DuplicateKeyError',
120
+ message: "A record with this value already exists",
121
+ error: "DuplicateKeyError",
122
122
  };
123
123
  }
124
124
  // Cast error (invalid ObjectId, etc.)
125
- if (err.name === 'CastError') {
125
+ if (err.name === "CastError") {
126
126
  return {
127
127
  statusCode: common_1.HttpStatus.BAD_REQUEST,
128
- message: 'Invalid ID format',
129
- error: 'CastError',
128
+ message: "Invalid ID format",
129
+ error: "CastError",
130
130
  };
131
131
  }
132
132
  // Mongoose validation error
133
- if (err.name === 'ValidationError') {
133
+ if (err.name === "ValidationError") {
134
134
  return {
135
135
  statusCode: common_1.HttpStatus.BAD_REQUEST,
136
136
  message: err.message,
137
- error: 'ValidationError',
137
+ error: "ValidationError",
138
138
  };
139
139
  }
140
140
  return {
141
141
  statusCode: common_1.HttpStatus.INTERNAL_SERVER_ERROR,
142
- message: 'Database operation failed',
143
- error: 'DatabaseError',
142
+ message: "Database operation failed",
143
+ error: "DatabaseError",
144
144
  };
145
145
  }
146
146
  /**
147
147
  * Checks if the exception is a Knex/PostgreSQL error.
148
148
  */
149
149
  isKnexError(exception) {
150
- if (!exception || typeof exception !== 'object')
150
+ if (!exception || typeof exception !== "object")
151
151
  return false;
152
152
  const err = exception;
153
153
  // PostgreSQL error codes start with numbers
154
- return typeof err.code === 'string' && /^[0-9A-Z]{5}$/.test(err.code);
154
+ return typeof err.code === "string" && /^[0-9A-Z]{5}$/.test(err.code);
155
155
  }
156
156
  /**
157
157
  * Parses PostgreSQL/Knex-specific errors.
@@ -159,59 +159,59 @@ let DatabaseExceptionFilter = DatabaseExceptionFilter_1 = class DatabaseExceptio
159
159
  parseKnexError(exception) {
160
160
  const err = exception;
161
161
  // Unique constraint violation
162
- if (err.code === '23505') {
162
+ if (err.code === "23505") {
163
163
  return {
164
164
  statusCode: common_1.HttpStatus.CONFLICT,
165
- message: `A record with this value already exists${err.constraint ? ` (${err.constraint})` : ''}`,
166
- error: 'UniqueConstraintViolation',
165
+ message: `A record with this value already exists${err.constraint ? ` (${err.constraint})` : ""}`,
166
+ error: "UniqueConstraintViolation",
167
167
  };
168
168
  }
169
169
  // Foreign key violation
170
- if (err.code === '23503') {
170
+ if (err.code === "23503") {
171
171
  return {
172
172
  statusCode: common_1.HttpStatus.BAD_REQUEST,
173
- message: 'Referenced record does not exist',
174
- error: 'ForeignKeyViolation',
173
+ message: "Referenced record does not exist",
174
+ error: "ForeignKeyViolation",
175
175
  };
176
176
  }
177
177
  // Not null violation
178
- if (err.code === '23502') {
178
+ if (err.code === "23502") {
179
179
  return {
180
180
  statusCode: common_1.HttpStatus.BAD_REQUEST,
181
- message: 'Required field is missing',
182
- error: 'NotNullViolation',
181
+ message: "Required field is missing",
182
+ error: "NotNullViolation",
183
183
  };
184
184
  }
185
185
  // Check constraint violation
186
- if (err.code === '23514') {
186
+ if (err.code === "23514") {
187
187
  return {
188
188
  statusCode: common_1.HttpStatus.BAD_REQUEST,
189
- message: 'Value does not meet constraint requirements',
190
- error: 'CheckConstraintViolation',
189
+ message: "Value does not meet constraint requirements",
190
+ error: "CheckConstraintViolation",
191
191
  };
192
192
  }
193
193
  // Connection errors
194
- if (err.code === '08006' || err.code === '08001' || err.code === '08004') {
194
+ if (err.code === "08006" || err.code === "08001" || err.code === "08004") {
195
195
  return {
196
196
  statusCode: common_1.HttpStatus.SERVICE_UNAVAILABLE,
197
- message: 'Database connection error',
198
- error: 'ConnectionError',
197
+ message: "Database connection error",
198
+ error: "ConnectionError",
199
199
  };
200
200
  }
201
201
  return {
202
202
  statusCode: common_1.HttpStatus.INTERNAL_SERVER_ERROR,
203
- message: 'Database operation failed',
204
- error: 'DatabaseError',
203
+ message: "Database operation failed",
204
+ error: "DatabaseError",
205
205
  };
206
206
  }
207
207
  /**
208
208
  * Checks if the exception is a validation error.
209
209
  */
210
210
  isValidationError(exception) {
211
- if (!exception || typeof exception !== 'object')
211
+ if (!exception || typeof exception !== "object")
212
212
  return false;
213
213
  const err = exception;
214
- return err.name === 'ValidationError';
214
+ return err.name === "ValidationError";
215
215
  }
216
216
  /**
217
217
  * Logs the error with appropriate level and context.
@@ -1 +1 @@
1
- {"version":3,"file":"database-exception.filter.js","sourceRoot":"","sources":["../../src/filters/database-exception.filter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database-exception.filter.js","sourceRoot":"","sources":["../../src/filters/database-exception.filter.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,14 +6,14 @@
6
6
  *
7
7
  * @packageDocumentation
8
8
  */
9
- export { DatabaseKitModule } from './database-kit.module';
10
- export { DatabaseService } from './services/database.service';
11
- export { LoggerService } from './services/logger.service';
12
- export { InjectDatabase, InjectDatabaseByToken } from './middleware/database.decorators';
13
- export { DatabaseExceptionFilter } from './filters/database-exception.filter';
14
- export { DatabaseConfigHelper } from './config/database.config';
15
- export { DATABASE_TOKEN, DATABASE_OPTIONS_TOKEN, ENV_KEYS, DEFAULTS } from './config/database.constants';
16
- export { DatabaseType, DatabaseConfig, MongoDatabaseConfig, PostgresDatabaseConfig, DatabaseKitModuleOptions, DatabaseKitModuleAsyncOptions, InjectionToken, OptionalFactoryDependency, Repository, PageResult, PageOptions, MongoRepositoryOptions, PostgresEntityConfig, DATABASE_KIT_CONSTANTS, } from './contracts/database.contracts';
17
- export { normalizePaginationOptions, calculatePagination, createPageResult, parseSortString, calculateOffset, } from './utils/pagination.utils';
18
- export { isValidMongoId, isValidUuid, isPositiveInteger, sanitizeFilter, validateRequiredFields, pickFields, omitFields, } from './utils/validation.utils';
9
+ export { DatabaseKitModule } from "./database-kit.module";
10
+ export { DatabaseService } from "./services/database.service";
11
+ export { LoggerService } from "./services/logger.service";
12
+ export { InjectDatabase, InjectDatabaseByToken, } from "./middleware/database.decorators";
13
+ export { DatabaseExceptionFilter } from "./filters/database-exception.filter";
14
+ export { DatabaseConfigHelper } from "./config/database.config";
15
+ export { DATABASE_TOKEN, DATABASE_OPTIONS_TOKEN, ENV_KEYS, DEFAULTS, } from "./config/database.constants";
16
+ export { DatabaseType, DatabaseConfig, MongoDatabaseConfig, PostgresDatabaseConfig, PoolConfig, DatabaseKitModuleOptions, DatabaseKitModuleAsyncOptions, InjectionToken, OptionalFactoryDependency, Repository, PageResult, PageOptions, TransactionIsolationLevel, TransactionOptions, TransactionContext, MongoTransactionContext, PostgresTransactionContext, TransactionCallback, HealthCheckResult, HookContext, RepositoryHooks, MongoRepositoryOptions, PostgresEntityConfig, DATABASE_KIT_CONSTANTS, } from "./contracts/database.contracts";
17
+ export { normalizePaginationOptions, calculatePagination, createPageResult, parseSortString, calculateOffset, } from "./utils/pagination.utils";
18
+ export { isValidMongoId, isValidUuid, isPositiveInteger, sanitizeFilter, validateRequiredFields, pickFields, omitFields, } from "./utils/validation.utils";
19
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAUH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAM1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAM1D,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAMzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAM9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAMzG,OAAO,EAEH,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EAGtB,wBAAwB,EACxB,6BAA6B,EAC7B,cAAc,EACd,yBAAyB,EAGzB,UAAU,EAGV,UAAU,EACV,WAAW,EAGX,sBAAsB,EACtB,oBAAoB,EAGpB,sBAAsB,GACzB,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACH,0BAA0B,EAC1B,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,eAAe,GAClB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACH,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EACtB,UAAU,EACV,UAAU,GACb,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAUH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAM1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAM1D,OAAO,EACL,cAAc,EACd,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAM1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAM9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,QAAQ,EACR,QAAQ,GACT,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAEL,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EAGtB,UAAU,EAGV,wBAAwB,EACxB,6BAA6B,EAC7B,cAAc,EACd,yBAAyB,EAGzB,UAAU,EAGV,UAAU,EACV,WAAW,EAGX,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,0BAA0B,EAC1B,mBAAmB,EAGnB,iBAAiB,EAGjB,WAAW,EACX,eAAe,EAGf,sBAAsB,EACtB,oBAAoB,EAGpB,sBAAsB,GACvB,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EACtB,UAAU,EACV,UAAU,GACX,MAAM,0BAA0B,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,eAAe;;;AAEf;;;;;;;GAOG;AAEH,gFAAgF;AAChF,mDAAmD;AACnD,gFAAgF;AAEhF,gFAAgF;AAChF,0BAA0B;AAC1B,gFAAgF;AAEhF,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAE1B,gFAAgF;AAChF,4CAA4C;AAC5C,gFAAgF;AAEhF,gEAA8D;AAArD,mHAAA,eAAe,OAAA;AACxB,4DAA0D;AAAjD,+GAAA,aAAa,OAAA;AAEtB,gFAAgF;AAChF,wCAAwC;AACxC,gFAAgF;AAEhF,wEAAyF;AAAhF,qHAAA,cAAc,OAAA;AAAE,4HAAA,qBAAqB,OAAA;AAE9C,gFAAgF;AAChF,0CAA0C;AAC1C,gFAAgF;AAEhF,iFAA8E;AAArE,oIAAA,uBAAuB,OAAA;AAEhC,gFAAgF;AAChF,qDAAqD;AACrD,gFAAgF;AAEhF,4DAAgE;AAAvD,uHAAA,oBAAoB,OAAA;AAC7B,kEAAyG;AAAhG,oHAAA,cAAc,OAAA;AAAE,4HAAA,sBAAsB,OAAA;AAAE,8GAAA,QAAQ,OAAA;AAAE,8GAAA,QAAQ,OAAA;AAEnE,gFAAgF;AAChF,iDAAiD;AACjD,gFAAgF;AAEhF,qEA0BwC;AAFpC,YAAY;AACZ,4HAAA,sBAAsB,OAAA;AAG1B,gFAAgF;AAChF,oCAAoC;AACpC,gFAAgF;AAEhF,6DAMkC;AAL9B,8HAAA,0BAA0B,OAAA;AAC1B,uHAAA,mBAAmB,OAAA;AACnB,oHAAA,gBAAgB,OAAA;AAChB,mHAAA,eAAe,OAAA;AACf,mHAAA,eAAe,OAAA;AAGnB,6DAQkC;AAP9B,kHAAA,cAAc,OAAA;AACd,+GAAA,WAAW,OAAA;AACX,qHAAA,iBAAiB,OAAA;AACjB,kHAAA,cAAc,OAAA;AACd,0HAAA,sBAAsB,OAAA;AACtB,8GAAA,UAAU,OAAA;AACV,8GAAA,UAAU,OAAA;AAGd,gFAAgF;AAChF,iDAAiD;AACjD,gFAAgF;AAEhF,iEAAiE;AACjE,oEAAoE;AACpE,8BAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,eAAe;;;AAEf;;;;;;;GAOG;AAEH,gFAAgF;AAChF,mDAAmD;AACnD,gFAAgF;AAEhF,gFAAgF;AAChF,0BAA0B;AAC1B,gFAAgF;AAEhF,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAE1B,gFAAgF;AAChF,4CAA4C;AAC5C,gFAAgF;AAEhF,gEAA8D;AAArD,mHAAA,eAAe,OAAA;AACxB,4DAA0D;AAAjD,+GAAA,aAAa,OAAA;AAEtB,gFAAgF;AAChF,wCAAwC;AACxC,gFAAgF;AAEhF,wEAG0C;AAFxC,qHAAA,cAAc,OAAA;AACd,4HAAA,qBAAqB,OAAA;AAGvB,gFAAgF;AAChF,0CAA0C;AAC1C,gFAAgF;AAEhF,iFAA8E;AAArE,oIAAA,uBAAuB,OAAA;AAEhC,gFAAgF;AAChF,qDAAqD;AACrD,gFAAgF;AAEhF,4DAAgE;AAAvD,uHAAA,oBAAoB,OAAA;AAC7B,kEAKqC;AAJnC,oHAAA,cAAc,OAAA;AACd,4HAAA,sBAAsB,OAAA;AACtB,8GAAA,QAAQ,OAAA;AACR,8GAAA,QAAQ,OAAA;AAGV,gFAAgF;AAChF,iDAAiD;AACjD,gFAAgF;AAEhF,qEA4CwC;AAFtC,YAAY;AACZ,4HAAA,sBAAsB,OAAA;AAGxB,gFAAgF;AAChF,oCAAoC;AACpC,gFAAgF;AAEhF,6DAMkC;AALhC,8HAAA,0BAA0B,OAAA;AAC1B,uHAAA,mBAAmB,OAAA;AACnB,oHAAA,gBAAgB,OAAA;AAChB,mHAAA,eAAe,OAAA;AACf,mHAAA,eAAe,OAAA;AAGjB,6DAQkC;AAPhC,kHAAA,cAAc,OAAA;AACd,+GAAA,WAAW,OAAA;AACX,qHAAA,iBAAiB,OAAA;AACjB,kHAAA,cAAc,OAAA;AACd,0HAAA,sBAAsB,OAAA;AACtB,8GAAA,UAAU,OAAA;AACV,8GAAA,UAAU,OAAA;AAGZ,gFAAgF;AAChF,iDAAiD;AACjD,gFAAgF;AAEhF,iEAAiE;AACjE,oEAAoE;AACpE,8BAA8B"}
@@ -1 +1 @@
1
- {"version":3,"file":"database.decorators.d.ts","sourceRoot":"","sources":["../../src/middleware/database.decorators.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,QAAO,kBAA4C,CAAC;AAE/E;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,qBAAqB,GAAI,OAAO,MAAM,KAAG,kBAAmC,CAAC"}
1
+ {"version":3,"file":"database.decorators.d.ts","sourceRoot":"","sources":["../../src/middleware/database.decorators.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,QAAO,kBAA4C,CAAC;AAE/E;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,qBAAqB,GAAI,OAAO,MAAM,KAAG,kBACvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"database.decorators.js","sourceRoot":"","sources":["../../src/middleware/database.decorators.ts"],"names":[],"mappings":";AAAA,wCAAwC;;;AAExC,2CAAwC;AACxC,qEAA8D;AAE9D;;;;;;;;;;GAUG;AACI,MAAM,cAAc,GAAG,GAAuB,EAAE,CAAC,IAAA,eAAM,EAAC,mCAAc,CAAC,CAAC;AAAlE,QAAA,cAAc,kBAAoD;AAE/E;;;;;;;;;;;;;;;;GAgBG;AACI,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAsB,EAAE,CAAC,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC;AAA7E,QAAA,qBAAqB,yBAAwD"}
1
+ {"version":3,"file":"database.decorators.js","sourceRoot":"","sources":["../../src/middleware/database.decorators.ts"],"names":[],"mappings":";AAAA,wCAAwC;;;AAExC,2CAAwC;AAExC,qEAA8D;AAE9D;;;;;;;;;;GAUG;AACI,MAAM,cAAc,GAAG,GAAuB,EAAE,CAAC,IAAA,eAAM,EAAC,mCAAc,CAAC,CAAC;AAAlE,QAAA,cAAc,kBAAoD;AAE/E;;;;;;;;;;;;;;;;GAgBG;AACI,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAsB,EAAE,CACzE,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC;AADH,QAAA,qBAAqB,yBAClB"}
@@ -1,7 +1,7 @@
1
- import { OnModuleDestroy } from '@nestjs/common';
2
- import { DatabaseConfig, MongoRepositoryOptions, PostgresEntityConfig, Repository } from '../contracts/database.contracts';
3
- import { MongoAdapter } from '../adapters/mongo.adapter';
4
- import { PostgresAdapter } from '../adapters/postgres.adapter';
1
+ import { OnModuleDestroy } from "@nestjs/common";
2
+ import { MongoAdapter } from "../adapters/mongo.adapter";
3
+ import { PostgresAdapter } from "../adapters/postgres.adapter";
4
+ import { DatabaseConfig, MongoRepositoryOptions, PostgresEntityConfig, MongoTransactionContext, PostgresTransactionContext, Repository, TransactionOptions, TransactionCallback, HealthCheckResult } from "../contracts/database.contracts";
5
5
  /**
6
6
  * Main database service that provides a unified interface
7
7
  * for database operations across MongoDB and PostgreSQL.
@@ -36,7 +36,7 @@ export declare class DatabaseService implements OnModuleDestroy {
36
36
  /**
37
37
  * Returns the current database type.
38
38
  */
39
- get type(): 'mongo' | 'postgres';
39
+ get type(): "mongo" | "postgres";
40
40
  /**
41
41
  * Checks if the database is connected.
42
42
  */
@@ -95,5 +95,83 @@ export declare class DatabaseService implements OnModuleDestroy {
95
95
  * @throws Error if database type is not 'postgres'
96
96
  */
97
97
  getPostgresAdapter(): PostgresAdapter;
98
+ /**
99
+ * Executes a callback within a MongoDB transaction.
100
+ * All database operations within the callback are atomic.
101
+ *
102
+ * **Note:** MongoDB transactions require a replica set.
103
+ *
104
+ * @param callback - Function to execute within the transaction
105
+ * @param options - Transaction options
106
+ * @returns Result of the callback function
107
+ * @throws Error if database type is not 'mongo' or transaction fails
108
+ *
109
+ * @example
110
+ * ```typescript
111
+ * const result = await db.withMongoTransaction(async (ctx) => {
112
+ * const usersRepo = ctx.createRepository<User>({ model: UserModel });
113
+ * const user = await usersRepo.create({ name: 'John' });
114
+ * return user;
115
+ * });
116
+ * ```
117
+ */
118
+ withMongoTransaction<TResult>(callback: TransactionCallback<MongoTransactionContext, TResult>, options?: TransactionOptions): Promise<TResult>;
119
+ /**
120
+ * Executes a callback within a PostgreSQL transaction.
121
+ * All database operations within the callback are atomic.
122
+ *
123
+ * @param callback - Function to execute within the transaction
124
+ * @param options - Transaction options including isolation level
125
+ * @returns Result of the callback function
126
+ * @throws Error if database type is not 'postgres' or transaction fails
127
+ *
128
+ * @example
129
+ * ```typescript
130
+ * const result = await db.withPostgresTransaction(async (ctx) => {
131
+ * const usersRepo = ctx.createRepository<User>({ table: 'users' });
132
+ * const user = await usersRepo.create({ name: 'John' });
133
+ * return user;
134
+ * }, { isolationLevel: 'serializable' });
135
+ * ```
136
+ */
137
+ withPostgresTransaction<TResult>(callback: TransactionCallback<PostgresTransactionContext, TResult>, options?: TransactionOptions): Promise<TResult>;
138
+ /**
139
+ * Generic transaction method that works with the configured database type.
140
+ * Automatically routes to the appropriate transaction handler.
141
+ *
142
+ * @param callback - Function to execute within the transaction
143
+ * @param options - Transaction options
144
+ * @returns Result of the callback function
145
+ *
146
+ * @example
147
+ * ```typescript
148
+ * // Works with whatever database type is configured
149
+ * const result = await db.withTransaction(async (ctx) => {
150
+ * const repo = ctx.createRepository({ ... });
151
+ * return repo.create({ name: 'John' });
152
+ * });
153
+ * ```
154
+ */
155
+ withTransaction<TResult>(callback: TransactionCallback<MongoTransactionContext | PostgresTransactionContext, TResult>, options?: TransactionOptions): Promise<TResult>;
156
+ /**
157
+ * Performs a health check on the database connection.
158
+ * Useful for load balancer health endpoints and monitoring.
159
+ *
160
+ * @returns Health check result with status, response time, and details
161
+ *
162
+ * @example
163
+ * ```typescript
164
+ * // In a health check endpoint
165
+ * @Get('/health')
166
+ * async healthCheck() {
167
+ * const result = await this.db.healthCheck();
168
+ * if (!result.healthy) {
169
+ * throw new ServiceUnavailableException(result.error);
170
+ * }
171
+ * return result;
172
+ * }
173
+ * ```
174
+ */
175
+ healthCheck(): Promise<HealthCheckResult>;
98
176
  }
99
177
  //# sourceMappingURL=database.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.service.d.ts","sourceRoot":"","sources":["../../src/services/database.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EACH,cAAc,EAGd,sBAAsB,EACtB,oBAAoB,EACpB,UAAU,EACb,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBACa,eAAgB,YAAW,eAAe;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,eAAe,CAAC,CAAkB;gBAE9B,MAAM,EAAE,cAAc;IAKlC;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtC;;OAEG;IACH,IAAI,IAAI,IAAI,OAAO,GAAG,UAAU,CAE/B;IAED;;OAEG;IACH,WAAW,IAAI,OAAO;IAWtB;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA4B9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBjC;;;;;;;;;;;;OAYG;IACH,qBAAqB,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,sBAAsB,GAAG,UAAU,CAAC,CAAC,CAAC;IAclF;;;;;;;;;;;;;;;OAeG;IACH,wBAAwB,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,oBAAoB,GAAG,UAAU,CAAC,CAAC,CAAC;IAe/E;;;;;OAKG;IACH,eAAe,IAAI,YAAY;IAY/B;;;;;OAKG;IACH,kBAAkB,IAAI,eAAe;CAWxC"}
1
+ {"version":3,"file":"database.service.d.ts","sourceRoot":"","sources":["../../src/services/database.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,cAAc,EAGd,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC1B,UAAU,EACV,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,iCAAiC,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBACa,eAAgB,YAAW,eAAe;IACrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,eAAe,CAAC,CAAkB;gBAE9B,MAAM,EAAE,cAAc;IAKlC;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtC;;OAEG;IACH,IAAI,IAAI,IAAI,OAAO,GAAG,UAAU,CAE/B;IAED;;OAEG;IACH,WAAW,IAAI,OAAO;IAWtB;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAkC9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBjC;;;;;;;;;;;;OAYG;IACH,qBAAqB,CAAC,CAAC,GAAG,OAAO,EAC/B,OAAO,EAAE,sBAAsB,GAC9B,UAAU,CAAC,CAAC,CAAC;IAchB;;;;;;;;;;;;;;;OAeG;IACH,wBAAwB,CAAC,CAAC,GAAG,OAAO,EAClC,GAAG,EAAE,oBAAoB,GACxB,UAAU,CAAC,CAAC,CAAC;IAiBhB;;;;;OAKG;IACH,eAAe,IAAI,YAAY;IAc/B;;;;;OAKG;IACH,kBAAkB,IAAI,eAAe;IAgBrC;;;;;;;;;;;;;;;;;;;OAmBG;IACG,oBAAoB,CAAC,OAAO,EAChC,QAAQ,EAAE,mBAAmB,CAAC,uBAAuB,EAAE,OAAO,CAAC,EAC/D,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC;IAWnB;;;;;;;;;;;;;;;;;OAiBG;IACG,uBAAuB,CAAC,OAAO,EACnC,QAAQ,EAAE,mBAAmB,CAAC,0BAA0B,EAAE,OAAO,CAAC,EAClE,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC;IAWnB;;;;;;;;;;;;;;;;OAgBG;IACG,eAAe,CAAC,OAAO,EAC3B,QAAQ,EAAE,mBAAmB,CAC3B,uBAAuB,GAAG,0BAA0B,EACpD,OAAO,CACR,EACD,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC;IAqBnB;;;;;;;;;;;;;;;;;;OAkBG;IACG,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC;CAqBhD"}