@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.
- package/CHANGELOG.md +50 -4
- package/README.md +487 -148
- package/dist/adapters/mongo.adapter.d.ts +53 -3
- package/dist/adapters/mongo.adapter.d.ts.map +1 -1
- package/dist/adapters/mongo.adapter.js +410 -27
- package/dist/adapters/mongo.adapter.js.map +1 -1
- package/dist/adapters/postgres.adapter.d.ts +50 -3
- package/dist/adapters/postgres.adapter.d.ts.map +1 -1
- package/dist/adapters/postgres.adapter.js +439 -45
- package/dist/adapters/postgres.adapter.js.map +1 -1
- package/dist/config/database.config.d.ts +1 -1
- package/dist/config/database.config.d.ts.map +1 -1
- package/dist/config/database.config.js +13 -13
- package/dist/config/database.config.js.map +1 -1
- package/dist/config/database.constants.js +7 -7
- package/dist/contracts/database.contracts.d.ts +283 -6
- package/dist/contracts/database.contracts.d.ts.map +1 -1
- package/dist/contracts/database.contracts.js +6 -1
- package/dist/contracts/database.contracts.js.map +1 -1
- package/dist/database-kit.module.d.ts +2 -2
- package/dist/database-kit.module.d.ts.map +1 -1
- package/dist/database-kit.module.js +1 -2
- package/dist/database-kit.module.js.map +1 -1
- package/dist/filters/database-exception.filter.d.ts +1 -1
- package/dist/filters/database-exception.filter.d.ts.map +1 -1
- package/dist/filters/database-exception.filter.js +43 -43
- package/dist/filters/database-exception.filter.js.map +1 -1
- package/dist/index.d.ts +10 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/middleware/database.decorators.d.ts.map +1 -1
- package/dist/middleware/database.decorators.js.map +1 -1
- package/dist/services/database.service.d.ts +83 -5
- package/dist/services/database.service.d.ts.map +1 -1
- package/dist/services/database.service.js +136 -16
- package/dist/services/database.service.js.map +1 -1
- package/dist/services/logger.service.d.ts +1 -1
- package/dist/services/logger.service.d.ts.map +1 -1
- package/dist/services/logger.service.js +1 -1
- package/dist/services/logger.service.js.map +1 -1
- package/dist/utils/pagination.utils.d.ts +2 -2
- package/dist/utils/pagination.utils.d.ts.map +1 -1
- package/dist/utils/pagination.utils.js +9 -6
- package/dist/utils/pagination.utils.js.map +1 -1
- package/dist/utils/validation.utils.d.ts.map +1 -1
- package/dist/utils/validation.utils.js +5 -5
- package/dist/utils/validation.utils.js.map +1 -1
- package/package.json +28 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres.adapter.js","sourceRoot":"","sources":["../../src/adapters/postgres.adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"postgres.adapter.js","sourceRoot":"","sources":["../../src/adapters/postgres.adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.config.d.ts","sourceRoot":"","sources":["../../src/config/database.config.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"database.config.d.ts","sourceRoot":"","sources":["../../src/config/database.config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,iCAAiC,CAAC;AAIzC;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAWnC;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAIlE;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAajE;;;;;OAKG;IACH,MAAM,CAAC,OAAO,IAAI,cAAc;IAsBhC;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IA0C7C;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,MAAM;IAI5B;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,MAAM;CAMtC"}
|
|
@@ -59,17 +59,17 @@ class DatabaseConfigHelper {
|
|
|
59
59
|
*/
|
|
60
60
|
static fromEnv() {
|
|
61
61
|
const type = this.getEnv(database_constants_1.ENV_KEYS.DATABASE_TYPE);
|
|
62
|
-
if (type !==
|
|
62
|
+
if (type !== "mongo" && type !== "postgres") {
|
|
63
63
|
throw new Error(`Invalid DATABASE_TYPE: "${String(type)}". Must be "mongo" or "postgres".`);
|
|
64
64
|
}
|
|
65
|
-
if (type ===
|
|
65
|
+
if (type === "mongo") {
|
|
66
66
|
return {
|
|
67
|
-
type:
|
|
67
|
+
type: "mongo",
|
|
68
68
|
connectionString: this.getEnv(database_constants_1.ENV_KEYS.MONGO_URI),
|
|
69
69
|
};
|
|
70
70
|
}
|
|
71
71
|
return {
|
|
72
|
-
type:
|
|
72
|
+
type: "postgres",
|
|
73
73
|
connectionString: this.getEnv(database_constants_1.ENV_KEYS.POSTGRES_URI),
|
|
74
74
|
};
|
|
75
75
|
}
|
|
@@ -83,24 +83,24 @@ class DatabaseConfigHelper {
|
|
|
83
83
|
// Cast to unknown for runtime validation since config may come from external sources
|
|
84
84
|
const rawConfig = config;
|
|
85
85
|
if (!rawConfig.type) {
|
|
86
|
-
throw new Error(
|
|
86
|
+
throw new Error("Database configuration must include a type");
|
|
87
87
|
}
|
|
88
|
-
if (rawConfig.type !==
|
|
88
|
+
if (rawConfig.type !== "mongo" && rawConfig.type !== "postgres") {
|
|
89
89
|
throw new Error(`Invalid database type: "${rawConfig.type}". Must be "mongo" or "postgres".`);
|
|
90
90
|
}
|
|
91
91
|
if (!rawConfig.connectionString) {
|
|
92
|
-
throw new Error(
|
|
92
|
+
throw new Error("Database configuration must include a connectionString");
|
|
93
93
|
}
|
|
94
94
|
// Basic connection string validation
|
|
95
|
-
if (config.type ===
|
|
96
|
-
if (!config.connectionString.startsWith(
|
|
97
|
-
!config.connectionString.startsWith(
|
|
95
|
+
if (config.type === "mongo") {
|
|
96
|
+
if (!config.connectionString.startsWith("mongodb://") &&
|
|
97
|
+
!config.connectionString.startsWith("mongodb+srv://")) {
|
|
98
98
|
throw new Error('MongoDB connection string must start with "mongodb://" or "mongodb+srv://"');
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
-
if (config.type ===
|
|
102
|
-
if (!config.connectionString.startsWith(
|
|
103
|
-
!config.connectionString.startsWith(
|
|
101
|
+
if (config.type === "postgres") {
|
|
102
|
+
if (!config.connectionString.startsWith("postgresql://") &&
|
|
103
|
+
!config.connectionString.startsWith("postgres://")) {
|
|
104
104
|
throw new Error('PostgreSQL connection string must start with "postgresql://" or "postgres://"');
|
|
105
105
|
}
|
|
106
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.config.js","sourceRoot":"","sources":["../../src/config/database.config.ts"],"names":[],"mappings":";AAAA,gCAAgC;;;
|
|
1
|
+
{"version":3,"file":"database.config.js","sourceRoot":"","sources":["../../src/config/database.config.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,26 +6,26 @@ exports.DEFAULTS = exports.ENV_KEYS = exports.DATABASE_OPTIONS_TOKEN = exports.D
|
|
|
6
6
|
* Injection token for the main DatabaseService instance.
|
|
7
7
|
* Use with @Inject(DATABASE_TOKEN) or @InjectDatabase() decorator.
|
|
8
8
|
*/
|
|
9
|
-
exports.DATABASE_TOKEN =
|
|
9
|
+
exports.DATABASE_TOKEN = "DATABASE_KIT_DEFAULT";
|
|
10
10
|
/**
|
|
11
11
|
* Injection token for DatabaseKit module options.
|
|
12
12
|
* Used internally for async configuration.
|
|
13
13
|
*/
|
|
14
|
-
exports.DATABASE_OPTIONS_TOKEN =
|
|
14
|
+
exports.DATABASE_OPTIONS_TOKEN = "DATABASE_KIT_OPTIONS";
|
|
15
15
|
/**
|
|
16
16
|
* Environment variable names used by DatabaseKit.
|
|
17
17
|
*/
|
|
18
18
|
exports.ENV_KEYS = {
|
|
19
19
|
/** MongoDB connection string */
|
|
20
|
-
MONGO_URI:
|
|
20
|
+
MONGO_URI: "MONGO_URI",
|
|
21
21
|
/** PostgreSQL connection string */
|
|
22
|
-
POSTGRES_URI:
|
|
22
|
+
POSTGRES_URI: "DATABASE_URL",
|
|
23
23
|
/** Database type ('mongo' or 'postgres') */
|
|
24
|
-
DATABASE_TYPE:
|
|
24
|
+
DATABASE_TYPE: "DATABASE_TYPE",
|
|
25
25
|
/** Connection pool size */
|
|
26
|
-
POOL_SIZE:
|
|
26
|
+
POOL_SIZE: "DATABASE_POOL_SIZE",
|
|
27
27
|
/** Connection timeout in milliseconds */
|
|
28
|
-
CONNECTION_TIMEOUT:
|
|
28
|
+
CONNECTION_TIMEOUT: "DATABASE_CONNECTION_TIMEOUT",
|
|
29
29
|
};
|
|
30
30
|
/**
|
|
31
31
|
* Default configuration values.
|
|
@@ -5,7 +5,20 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* Supported database types.
|
|
7
7
|
*/
|
|
8
|
-
export type DatabaseType =
|
|
8
|
+
export type DatabaseType = "mongo" | "postgres";
|
|
9
|
+
/**
|
|
10
|
+
* Connection pool configuration options.
|
|
11
|
+
*/
|
|
12
|
+
export interface PoolConfig {
|
|
13
|
+
/** Minimum number of connections in the pool (default: 0 for Postgres, 5 for Mongo) */
|
|
14
|
+
min?: number;
|
|
15
|
+
/** Maximum number of connections in the pool (default: 10) */
|
|
16
|
+
max?: number;
|
|
17
|
+
/** Connection idle timeout in milliseconds (default: 30000) */
|
|
18
|
+
idleTimeoutMs?: number;
|
|
19
|
+
/** Connection acquire timeout in milliseconds (default: 60000) */
|
|
20
|
+
acquireTimeoutMs?: number;
|
|
21
|
+
}
|
|
9
22
|
/**
|
|
10
23
|
* Base configuration for all database types.
|
|
11
24
|
*/
|
|
@@ -14,24 +27,84 @@ export interface DatabaseConfigBase {
|
|
|
14
27
|
type: DatabaseType;
|
|
15
28
|
/** Connection string for the database */
|
|
16
29
|
connectionString: string;
|
|
30
|
+
/** Connection pool configuration */
|
|
31
|
+
pool?: PoolConfig;
|
|
17
32
|
}
|
|
18
33
|
/**
|
|
19
34
|
* MongoDB-specific configuration.
|
|
20
35
|
*/
|
|
21
36
|
export interface MongoDatabaseConfig extends DatabaseConfigBase {
|
|
22
|
-
type:
|
|
37
|
+
type: "mongo";
|
|
38
|
+
/** Server selection timeout in milliseconds (default: 5000) */
|
|
39
|
+
serverSelectionTimeoutMS?: number;
|
|
40
|
+
/** Socket timeout in milliseconds (default: 45000) */
|
|
41
|
+
socketTimeoutMS?: number;
|
|
23
42
|
}
|
|
24
43
|
/**
|
|
25
44
|
* PostgreSQL-specific configuration.
|
|
26
45
|
*/
|
|
27
46
|
export interface PostgresDatabaseConfig extends DatabaseConfigBase {
|
|
28
|
-
type:
|
|
47
|
+
type: "postgres";
|
|
48
|
+
/** Statement timeout in milliseconds (default: none) */
|
|
49
|
+
statementTimeout?: number;
|
|
50
|
+
/** Query timeout in milliseconds (default: none) */
|
|
51
|
+
queryTimeout?: number;
|
|
29
52
|
}
|
|
30
53
|
/**
|
|
31
54
|
* Discriminated union for database configuration.
|
|
32
55
|
* TypeScript will narrow the type based on the `type` property.
|
|
33
56
|
*/
|
|
34
57
|
export type DatabaseConfig = MongoDatabaseConfig | PostgresDatabaseConfig;
|
|
58
|
+
/**
|
|
59
|
+
* Hook context passed to event hooks.
|
|
60
|
+
*/
|
|
61
|
+
export interface HookContext<T = unknown> {
|
|
62
|
+
/** The entity data being operated on */
|
|
63
|
+
data: T;
|
|
64
|
+
/** The operation being performed */
|
|
65
|
+
operation: "create" | "update" | "delete" | "upsert";
|
|
66
|
+
/** Whether this is a bulk operation */
|
|
67
|
+
isBulk: boolean;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Event hooks for repository lifecycle events.
|
|
71
|
+
*/
|
|
72
|
+
export interface RepositoryHooks<T = unknown> {
|
|
73
|
+
/** Called before creating an entity. Can modify data. */
|
|
74
|
+
beforeCreate?(context: HookContext<Partial<T>>): Promise<Partial<T>> | Partial<T>;
|
|
75
|
+
/** Called after creating an entity. */
|
|
76
|
+
afterCreate?(entity: T): Promise<void> | void;
|
|
77
|
+
/** Called before updating an entity. Can modify data. */
|
|
78
|
+
beforeUpdate?(context: HookContext<Partial<T>>): Promise<Partial<T>> | Partial<T>;
|
|
79
|
+
/** Called after updating an entity. */
|
|
80
|
+
afterUpdate?(entity: T | null): Promise<void> | void;
|
|
81
|
+
/** Called before deleting an entity. */
|
|
82
|
+
beforeDelete?(id: string | number): Promise<void> | void;
|
|
83
|
+
/** Called after deleting an entity. */
|
|
84
|
+
afterDelete?(success: boolean): Promise<void> | void;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Result of a database health check.
|
|
88
|
+
*/
|
|
89
|
+
export interface HealthCheckResult {
|
|
90
|
+
/** Whether the database is healthy and responding */
|
|
91
|
+
healthy: boolean;
|
|
92
|
+
/** Response time in milliseconds */
|
|
93
|
+
responseTimeMs: number;
|
|
94
|
+
/** Database type */
|
|
95
|
+
type: DatabaseType;
|
|
96
|
+
/** Error message if unhealthy */
|
|
97
|
+
error?: string;
|
|
98
|
+
/** Additional details about the connection */
|
|
99
|
+
details?: {
|
|
100
|
+
/** Database version (if available) */
|
|
101
|
+
version?: string;
|
|
102
|
+
/** Connection pool status */
|
|
103
|
+
poolSize?: number;
|
|
104
|
+
/** Number of active connections */
|
|
105
|
+
activeConnections?: number;
|
|
106
|
+
};
|
|
107
|
+
}
|
|
35
108
|
/**
|
|
36
109
|
* Result of a paginated query.
|
|
37
110
|
*/
|
|
@@ -58,7 +131,7 @@ export interface PageOptions<Filter = Record<string, unknown>> {
|
|
|
58
131
|
/** Items per page (default: 10) */
|
|
59
132
|
limit?: number;
|
|
60
133
|
/** Sort order (string or object) */
|
|
61
|
-
sort?: string | Record<string, 1 | -1 |
|
|
134
|
+
sort?: string | Record<string, 1 | -1 | "asc" | "desc">;
|
|
62
135
|
}
|
|
63
136
|
/**
|
|
64
137
|
* Generic repository interface for CRUD operations.
|
|
@@ -80,6 +153,12 @@ export interface Repository<T = unknown, Filter = Record<string, unknown>> {
|
|
|
80
153
|
* @returns The entity or null if not found
|
|
81
154
|
*/
|
|
82
155
|
findById(id: string | number): Promise<T | null>;
|
|
156
|
+
/**
|
|
157
|
+
* Finds a single entity matching the filter.
|
|
158
|
+
* @param filter - Filter criteria
|
|
159
|
+
* @returns The first matching entity or null
|
|
160
|
+
*/
|
|
161
|
+
findOne(filter: Filter): Promise<T | null>;
|
|
83
162
|
/**
|
|
84
163
|
* Finds all entities matching the filter.
|
|
85
164
|
* @param filter - Optional filter criteria
|
|
@@ -117,18 +196,127 @@ export interface Repository<T = unknown, Filter = Record<string, unknown>> {
|
|
|
117
196
|
* @returns True if at least one entity matches
|
|
118
197
|
*/
|
|
119
198
|
exists(filter?: Filter): Promise<boolean>;
|
|
199
|
+
/**
|
|
200
|
+
* Creates multiple entities in a single operation.
|
|
201
|
+
* @param data - Array of partial entity data
|
|
202
|
+
* @returns Array of created entities
|
|
203
|
+
*/
|
|
204
|
+
insertMany(data: Partial<T>[]): Promise<T[]>;
|
|
205
|
+
/**
|
|
206
|
+
* Updates multiple entities matching the filter.
|
|
207
|
+
* @param filter - Filter criteria to match entities
|
|
208
|
+
* @param update - Partial update data to apply
|
|
209
|
+
* @returns Number of entities updated
|
|
210
|
+
*/
|
|
211
|
+
updateMany(filter: Filter, update: Partial<T>): Promise<number>;
|
|
212
|
+
/**
|
|
213
|
+
* Deletes multiple entities matching the filter.
|
|
214
|
+
* @param filter - Filter criteria to match entities
|
|
215
|
+
* @returns Number of entities deleted
|
|
216
|
+
*/
|
|
217
|
+
deleteMany(filter: Filter): Promise<number>;
|
|
218
|
+
/**
|
|
219
|
+
* Creates or updates an entity based on a filter.
|
|
220
|
+
* If entity exists, updates it; otherwise creates a new one.
|
|
221
|
+
* @param filter - Filter to find existing entity
|
|
222
|
+
* @param data - Data to create or update with
|
|
223
|
+
* @returns The created or updated entity
|
|
224
|
+
*/
|
|
225
|
+
upsert(filter: Filter, data: Partial<T>): Promise<T>;
|
|
226
|
+
/**
|
|
227
|
+
* Returns distinct values for a specified field.
|
|
228
|
+
* @param field - The field to get distinct values for
|
|
229
|
+
* @param filter - Optional filter criteria
|
|
230
|
+
* @returns Array of distinct values
|
|
231
|
+
*/
|
|
232
|
+
distinct<K extends keyof T>(field: K, filter?: Filter): Promise<T[K][]>;
|
|
233
|
+
/**
|
|
234
|
+
* Finds entities with specific fields only (projection).
|
|
235
|
+
* @param filter - Filter criteria
|
|
236
|
+
* @param fields - Array of field names to include
|
|
237
|
+
* @returns Array of entities with selected fields only
|
|
238
|
+
*/
|
|
239
|
+
select<K extends keyof T>(filter: Filter, fields: K[]): Promise<Pick<T, K>[]>;
|
|
240
|
+
/**
|
|
241
|
+
* Soft deletes an entity by setting deletedAt timestamp.
|
|
242
|
+
* Only available when softDelete option is enabled.
|
|
243
|
+
* @param id - The entity ID
|
|
244
|
+
* @returns True if soft deleted, false if not found
|
|
245
|
+
*/
|
|
246
|
+
softDelete?(id: string | number): Promise<boolean>;
|
|
247
|
+
/**
|
|
248
|
+
* Soft deletes multiple entities matching the filter.
|
|
249
|
+
* Only available when softDelete option is enabled.
|
|
250
|
+
* @param filter - Filter criteria to match entities
|
|
251
|
+
* @returns Number of entities soft deleted
|
|
252
|
+
*/
|
|
253
|
+
softDeleteMany?(filter: Filter): Promise<number>;
|
|
254
|
+
/**
|
|
255
|
+
* Restores a soft-deleted entity by clearing deletedAt.
|
|
256
|
+
* Only available when softDelete option is enabled.
|
|
257
|
+
* @param id - The entity ID
|
|
258
|
+
* @returns The restored entity or null if not found
|
|
259
|
+
*/
|
|
260
|
+
restore?(id: string | number): Promise<T | null>;
|
|
261
|
+
/**
|
|
262
|
+
* Restores multiple soft-deleted entities matching the filter.
|
|
263
|
+
* Only available when softDelete option is enabled.
|
|
264
|
+
* @param filter - Filter criteria to match entities
|
|
265
|
+
* @returns Number of entities restored
|
|
266
|
+
*/
|
|
267
|
+
restoreMany?(filter: Filter): Promise<number>;
|
|
268
|
+
/**
|
|
269
|
+
* Finds all entities including soft-deleted ones.
|
|
270
|
+
* Only available when softDelete option is enabled.
|
|
271
|
+
* @param filter - Optional filter criteria
|
|
272
|
+
* @returns Array of all matching entities (including deleted)
|
|
273
|
+
*/
|
|
274
|
+
findAllWithDeleted?(filter?: Filter): Promise<T[]>;
|
|
275
|
+
/**
|
|
276
|
+
* Finds only soft-deleted entities.
|
|
277
|
+
* Only available when softDelete option is enabled.
|
|
278
|
+
* @param filter - Optional filter criteria
|
|
279
|
+
* @returns Array of soft-deleted entities
|
|
280
|
+
*/
|
|
281
|
+
findDeleted?(filter?: Filter): Promise<T[]>;
|
|
120
282
|
}
|
|
121
283
|
/**
|
|
122
284
|
* Options for creating a MongoDB repository.
|
|
123
285
|
*/
|
|
124
|
-
export interface MongoRepositoryOptions {
|
|
286
|
+
export interface MongoRepositoryOptions<T = unknown> {
|
|
125
287
|
/** Mongoose Model instance */
|
|
126
288
|
model: unknown;
|
|
289
|
+
/**
|
|
290
|
+
* Enable soft delete pattern.
|
|
291
|
+
* When enabled, deleteById/deleteMany will set deletedAt instead of removing.
|
|
292
|
+
*/
|
|
293
|
+
softDelete?: boolean;
|
|
294
|
+
/**
|
|
295
|
+
* Field name for soft delete timestamp (default: 'deletedAt').
|
|
296
|
+
*/
|
|
297
|
+
softDeleteField?: string;
|
|
298
|
+
/**
|
|
299
|
+
* Enable automatic timestamps (createdAt/updatedAt).
|
|
300
|
+
* When enabled, create will set createdAt and all updates will set updatedAt.
|
|
301
|
+
*/
|
|
302
|
+
timestamps?: boolean;
|
|
303
|
+
/**
|
|
304
|
+
* Field name for created timestamp (default: 'createdAt').
|
|
305
|
+
*/
|
|
306
|
+
createdAtField?: string;
|
|
307
|
+
/**
|
|
308
|
+
* Field name for updated timestamp (default: 'updatedAt').
|
|
309
|
+
*/
|
|
310
|
+
updatedAtField?: string;
|
|
311
|
+
/**
|
|
312
|
+
* Lifecycle hooks for repository operations.
|
|
313
|
+
*/
|
|
314
|
+
hooks?: RepositoryHooks<T>;
|
|
127
315
|
}
|
|
128
316
|
/**
|
|
129
317
|
* Options for creating a PostgreSQL repository.
|
|
130
318
|
*/
|
|
131
|
-
export interface PostgresEntityConfig {
|
|
319
|
+
export interface PostgresEntityConfig<T = unknown> {
|
|
132
320
|
/** Table name in PostgreSQL */
|
|
133
321
|
table: string;
|
|
134
322
|
/** Primary key column (default: "id") */
|
|
@@ -143,6 +331,32 @@ export interface PostgresEntityConfig {
|
|
|
143
331
|
* Useful for soft-delete patterns (e.g., { is_deleted: false }).
|
|
144
332
|
*/
|
|
145
333
|
defaultFilter?: Record<string, unknown>;
|
|
334
|
+
/**
|
|
335
|
+
* Enable soft delete pattern.
|
|
336
|
+
* When enabled, deleteById/deleteMany will set deletedAt instead of removing.
|
|
337
|
+
*/
|
|
338
|
+
softDelete?: boolean;
|
|
339
|
+
/**
|
|
340
|
+
* Field name for soft delete timestamp (default: 'deleted_at').
|
|
341
|
+
*/
|
|
342
|
+
softDeleteField?: string;
|
|
343
|
+
/**
|
|
344
|
+
* Enable automatic timestamps (created_at/updated_at).
|
|
345
|
+
* When enabled, create will set created_at and all updates will set updated_at.
|
|
346
|
+
*/
|
|
347
|
+
timestamps?: boolean;
|
|
348
|
+
/**
|
|
349
|
+
* Field name for created timestamp (default: 'created_at').
|
|
350
|
+
*/
|
|
351
|
+
createdAtField?: string;
|
|
352
|
+
/**
|
|
353
|
+
* Field name for updated timestamp (default: 'updated_at').
|
|
354
|
+
*/
|
|
355
|
+
updatedAtField?: string;
|
|
356
|
+
/**
|
|
357
|
+
* Lifecycle hooks for repository operations.
|
|
358
|
+
*/
|
|
359
|
+
hooks?: RepositoryHooks<T>;
|
|
146
360
|
}
|
|
147
361
|
/**
|
|
148
362
|
* Configuration options for DatabaseKitModule.forRoot().
|
|
@@ -175,6 +389,67 @@ export interface DatabaseKitModuleAsyncOptions {
|
|
|
175
389
|
/** Dependencies to inject into the factory function */
|
|
176
390
|
inject?: Array<InjectionToken | OptionalFactoryDependency>;
|
|
177
391
|
}
|
|
392
|
+
/**
|
|
393
|
+
* Transaction isolation levels supported by PostgreSQL.
|
|
394
|
+
* MongoDB doesn't support isolation levels in the same way.
|
|
395
|
+
*/
|
|
396
|
+
export type TransactionIsolationLevel = "read uncommitted" | "read committed" | "repeatable read" | "serializable";
|
|
397
|
+
/**
|
|
398
|
+
* Options for transaction execution.
|
|
399
|
+
*/
|
|
400
|
+
export interface TransactionOptions {
|
|
401
|
+
/**
|
|
402
|
+
* Isolation level for the transaction (PostgreSQL only).
|
|
403
|
+
* Default: 'read committed'
|
|
404
|
+
*/
|
|
405
|
+
isolationLevel?: TransactionIsolationLevel;
|
|
406
|
+
/**
|
|
407
|
+
* Maximum time in milliseconds to wait for the transaction to complete.
|
|
408
|
+
* Default: 30000 (30 seconds)
|
|
409
|
+
*/
|
|
410
|
+
timeout?: number;
|
|
411
|
+
/**
|
|
412
|
+
* Number of retry attempts on transient failures.
|
|
413
|
+
* Default: 0 (no retries)
|
|
414
|
+
*/
|
|
415
|
+
retries?: number;
|
|
416
|
+
}
|
|
417
|
+
/**
|
|
418
|
+
* Context passed to transaction callback functions.
|
|
419
|
+
* Contains transaction-aware repository factory.
|
|
420
|
+
*/
|
|
421
|
+
export interface TransactionContext<TAdapter = unknown> {
|
|
422
|
+
/**
|
|
423
|
+
* The underlying transaction object.
|
|
424
|
+
* - For MongoDB: ClientSession
|
|
425
|
+
* - For PostgreSQL: Knex.Transaction
|
|
426
|
+
*/
|
|
427
|
+
transaction: TAdapter;
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* MongoDB-specific transaction context.
|
|
431
|
+
*/
|
|
432
|
+
export interface MongoTransactionContext extends TransactionContext {
|
|
433
|
+
/**
|
|
434
|
+
* Creates a transaction-aware repository.
|
|
435
|
+
* All operations on this repository will be part of the transaction.
|
|
436
|
+
*/
|
|
437
|
+
createRepository: <T>(options: MongoRepositoryOptions) => Repository<T>;
|
|
438
|
+
}
|
|
439
|
+
/**
|
|
440
|
+
* PostgreSQL-specific transaction context.
|
|
441
|
+
*/
|
|
442
|
+
export interface PostgresTransactionContext extends TransactionContext {
|
|
443
|
+
/**
|
|
444
|
+
* Creates a transaction-aware repository.
|
|
445
|
+
* All operations on this repository will be part of the transaction.
|
|
446
|
+
*/
|
|
447
|
+
createRepository: <T>(config: PostgresEntityConfig) => Repository<T>;
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* Callback function type for transaction execution.
|
|
451
|
+
*/
|
|
452
|
+
export type TransactionCallback<TContext, TResult> = (context: TContext) => Promise<TResult>;
|
|
178
453
|
/**
|
|
179
454
|
* Default values and constants for DatabaseKit.
|
|
180
455
|
*/
|
|
@@ -187,5 +462,7 @@ export declare const DATABASE_KIT_CONSTANTS: {
|
|
|
187
462
|
readonly DEFAULT_POOL_SIZE: 10;
|
|
188
463
|
/** Default connection timeout in milliseconds */
|
|
189
464
|
readonly DEFAULT_CONNECTION_TIMEOUT: 5000;
|
|
465
|
+
/** Default transaction timeout in milliseconds */
|
|
466
|
+
readonly DEFAULT_TRANSACTION_TIMEOUT: 30000;
|
|
190
467
|
};
|
|
191
468
|
//# sourceMappingURL=database.contracts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.contracts.d.ts","sourceRoot":"","sources":["../../src/contracts/database.contracts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"database.contracts.d.ts","sourceRoot":"","sources":["../../src/contracts/database.contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Database configuration types and interfaces for DatabaseKit.
|
|
4
|
+
* These contracts define the public API surface for the package.
|
|
5
|
+
*/
|
|
3
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
7
|
exports.DATABASE_KIT_CONSTANTS = void 0;
|
|
5
8
|
// -----------------------------
|
|
@@ -17,5 +20,7 @@ exports.DATABASE_KIT_CONSTANTS = {
|
|
|
17
20
|
DEFAULT_POOL_SIZE: 10,
|
|
18
21
|
/** Default connection timeout in milliseconds */
|
|
19
22
|
DEFAULT_CONNECTION_TIMEOUT: 5000,
|
|
23
|
+
/** Default transaction timeout in milliseconds */
|
|
24
|
+
DEFAULT_TRANSACTION_TIMEOUT: 30000,
|
|
20
25
|
};
|
|
21
26
|
//# sourceMappingURL=database.contracts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.contracts.js","sourceRoot":"","sources":["../../src/contracts/database.contracts.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"database.contracts.js","sourceRoot":"","sources":["../../src/contracts/database.contracts.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAuiBH,gCAAgC;AAChC,YAAY;AACZ,gCAAgC;AAEhC;;GAEG;AACU,QAAA,sBAAsB,GAAG;IACpC,uCAAuC;IACvC,iBAAiB,EAAE,EAAE;IACrB,gCAAgC;IAChC,aAAa,EAAE,GAAG;IAClB,mCAAmC;IACnC,iBAAiB,EAAE,EAAE;IACrB,iDAAiD;IACjD,0BAA0B,EAAE,IAAI;IAChC,kDAAkD;IAClD,2BAA2B,EAAE,KAAK;CAC1B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DynamicModule } from
|
|
2
|
-
import { DatabaseConfig, DatabaseKitModuleOptions, DatabaseKitModuleAsyncOptions } from
|
|
1
|
+
import { DynamicModule } from "@nestjs/common";
|
|
2
|
+
import { DatabaseConfig, DatabaseKitModuleOptions, DatabaseKitModuleAsyncOptions } from "./contracts/database.contracts";
|
|
3
3
|
/**
|
|
4
4
|
* DatabaseKitModule - Main NestJS module for DatabaseKit.
|
|
5
5
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-kit.module.d.ts","sourceRoot":"","sources":["../src/database-kit.module.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"database-kit.module.d.ts","sourceRoot":"","sources":["../src/database-kit.module.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,aAAa,EAKd,MAAM,gBAAgB,CAAC;AAMxB,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,gCAAgC,CAAC;AAIxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,qBAEa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAEpE;;;;;OAKG;IACH,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,wBAAwB,GAAG,aAAa;IA6BhE;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,6BAA6B,GAAG,aAAa;IAiC1E;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,aAAa;CAqBxE"}
|
|
@@ -10,9 +10,9 @@ var DatabaseKitModule_1;
|
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
11
|
exports.DatabaseKitModule = void 0;
|
|
12
12
|
const common_1 = require("@nestjs/common");
|
|
13
|
+
const database_constants_1 = require("./config/database.constants");
|
|
13
14
|
const database_service_1 = require("./services/database.service");
|
|
14
15
|
const logger_service_1 = require("./services/logger.service");
|
|
15
|
-
const database_constants_1 = require("./config/database.constants");
|
|
16
16
|
/**
|
|
17
17
|
* DatabaseKitModule - Main NestJS module for DatabaseKit.
|
|
18
18
|
*
|
|
@@ -98,7 +98,6 @@ let DatabaseKitModule = DatabaseKitModule_1 = class DatabaseKitModule {
|
|
|
98
98
|
{
|
|
99
99
|
provide: database_constants_1.DATABASE_OPTIONS_TOKEN,
|
|
100
100
|
useFactory: options.useFactory,
|
|
101
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
|
|
102
101
|
inject: (options.inject || []),
|
|
103
102
|
},
|
|
104
103
|
{
|