@nest-omni/core 4.1.3-15 → 4.1.3-18

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 (55) hide show
  1. package/audit/audit.module.js +7 -0
  2. package/audit/services/entity-audit.service.js +2 -1
  3. package/audit/services/manual-audit-log.service.js +2 -2
  4. package/audit/services/multi-database.service.d.ts +0 -5
  5. package/audit/services/multi-database.service.js +0 -24
  6. package/audit/services/transaction-audit.service.js +3 -2
  7. package/cache/dependencies/db.dependency.d.ts +2 -7
  8. package/cache/dependencies/db.dependency.js +4 -11
  9. package/http-client/examples/proxy-from-environment.example.d.ts +1 -1
  10. package/http-client/examples/proxy-from-environment.example.js +18 -19
  11. package/http-client/services/logging.service.js +2 -3
  12. package/index.d.ts +1 -1
  13. package/index.js +1 -1
  14. package/package.json +3 -2
  15. package/setup/bootstrap.setup.d.ts +1 -1
  16. package/shared/service-registry.module.js +2 -15
  17. package/shared/services/api-config.service.js +1 -0
  18. package/validators/is-exists.validator.d.ts +2 -7
  19. package/validators/is-exists.validator.js +2 -24
  20. package/validators/is-unique.validator.d.ts +2 -7
  21. package/validators/is-unique.validator.js +2 -24
  22. package/transaction/__tests__/mocks.d.ts +0 -9
  23. package/transaction/__tests__/mocks.js +0 -33
  24. package/transaction/base-service-transaction.d.ts +0 -106
  25. package/transaction/base-service-transaction.js +0 -317
  26. package/transaction/cls-compatibility.service.d.ts +0 -55
  27. package/transaction/cls-compatibility.service.js +0 -127
  28. package/transaction/data-source-registry.d.ts +0 -91
  29. package/transaction/data-source-registry.js +0 -349
  30. package/transaction/data-source.util.d.ts +0 -142
  31. package/transaction/data-source.util.js +0 -330
  32. package/transaction/database-adapter.d.ts +0 -44
  33. package/transaction/database-adapter.js +0 -240
  34. package/transaction/decorators/entity-datasource.decorator.d.ts +0 -62
  35. package/transaction/decorators/entity-datasource.decorator.js +0 -105
  36. package/transaction/index.d.ts +0 -16
  37. package/transaction/index.js +0 -71
  38. package/transaction/logging-transactional.interceptor.d.ts +0 -18
  39. package/transaction/logging-transactional.interceptor.js +0 -163
  40. package/transaction/transaction-context.service.d.ts +0 -137
  41. package/transaction/transaction-context.service.js +0 -411
  42. package/transaction/transaction-manager.d.ts +0 -230
  43. package/transaction/transaction-manager.holder.d.ts +0 -31
  44. package/transaction/transaction-manager.holder.js +0 -42
  45. package/transaction/transaction-manager.js +0 -1001
  46. package/transaction/transaction-synchronization.d.ts +0 -171
  47. package/transaction/transaction-synchronization.js +0 -380
  48. package/transaction/transaction.errors.d.ts +0 -91
  49. package/transaction/transaction.errors.js +0 -206
  50. package/transaction/transaction.module.d.ts +0 -30
  51. package/transaction/transaction.module.js +0 -126
  52. package/transaction/transactional.decorator.d.ts +0 -82
  53. package/transaction/transactional.decorator.js +0 -320
  54. package/transaction/typeorm-module-wrapper.d.ts +0 -96
  55. package/transaction/typeorm-module-wrapper.js +0 -197
@@ -1,240 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.DatabaseAdapter = void 0;
13
- /**
14
- * 数据库适配器
15
- * 处理不同数据库的 SQL 语法差异
16
- */
17
- class DatabaseAdapter {
18
- /**
19
- * 获取数据库类型
20
- */
21
- static getDatabaseType(dataSource) {
22
- return dataSource.options.type;
23
- }
24
- /**
25
- * 检查数据库是否支持 SAVEPOINT
26
- */
27
- static supportsSavepoint(dataSource) {
28
- const type = this.getDatabaseType(dataSource);
29
- // MongoDB 不支持传统事务和 SAVEPOINT
30
- if (type === 'mongodb') {
31
- return false;
32
- }
33
- // 其他关系型数据库都支持 SAVEPOINT
34
- return true;
35
- }
36
- /**
37
- * 创建保存点
38
- */
39
- static createSavepoint(queryRunner, savepointName) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- // 检查 queryRunner.connection 是否存在
42
- if (!queryRunner.connection) {
43
- // 如果没有 connection,使用标准 SQL 语法(最常见的情况)
44
- yield queryRunner.query(`SAVEPOINT ${savepointName}`);
45
- return;
46
- }
47
- const type = this.getDatabaseType(queryRunner.connection);
48
- switch (type) {
49
- case 'mysql':
50
- case 'mariadb':
51
- case 'postgres':
52
- case 'cockroachdb':
53
- case 'sqlite':
54
- case 'better-sqlite3':
55
- case 'sqljs':
56
- case 'cordova':
57
- case 'react-native':
58
- case 'nativescript':
59
- case 'expo':
60
- case 'capacitor':
61
- // 标准 SQL 语法
62
- yield queryRunner.query(`SAVEPOINT ${savepointName}`);
63
- break;
64
- case 'mssql':
65
- // SQL Server 使用 SAVE TRANSACTION
66
- yield queryRunner.query(`SAVE TRANSACTION ${savepointName}`);
67
- break;
68
- case 'oracle':
69
- // Oracle 使用标准 SAVEPOINT 语法
70
- yield queryRunner.query(`SAVEPOINT ${savepointName}`);
71
- break;
72
- case 'mongodb':
73
- throw new Error('MongoDB does not support SAVEPOINT. Use transactions instead.');
74
- default:
75
- // 对于未知的数据库类型,尝试使用标准 SQL 语法
76
- yield queryRunner.query(`SAVEPOINT ${savepointName}`);
77
- }
78
- });
79
- }
80
- /**
81
- * 回滚到保存点
82
- */
83
- static rollbackToSavepoint(queryRunner, savepointName) {
84
- return __awaiter(this, void 0, void 0, function* () {
85
- // 检查 queryRunner.connection 是否存在
86
- if (!queryRunner.connection) {
87
- // 如果没有 connection,使用标准 SQL 语法(最常见的情况)
88
- yield queryRunner.query(`ROLLBACK TO SAVEPOINT ${savepointName}`);
89
- return;
90
- }
91
- const type = this.getDatabaseType(queryRunner.connection);
92
- switch (type) {
93
- case 'mysql':
94
- case 'mariadb':
95
- case 'postgres':
96
- case 'cockroachdb':
97
- case 'sqlite':
98
- case 'better-sqlite3':
99
- case 'sqljs':
100
- case 'cordova':
101
- case 'react-native':
102
- case 'nativescript':
103
- case 'expo':
104
- case 'capacitor':
105
- case 'oracle':
106
- // 标准 SQL 语法
107
- yield queryRunner.query(`ROLLBACK TO SAVEPOINT ${savepointName}`);
108
- break;
109
- case 'mssql':
110
- // SQL Server 使用 ROLLBACK TRANSACTION
111
- yield queryRunner.query(`ROLLBACK TRANSACTION ${savepointName}`);
112
- break;
113
- case 'mongodb':
114
- throw new Error('MongoDB does not support SAVEPOINT. Use transactions instead.');
115
- default:
116
- // 对于未知的数据库类型,尝试使用标准 SQL 语法
117
- yield queryRunner.query(`ROLLBACK TO SAVEPOINT ${savepointName}`);
118
- }
119
- });
120
- }
121
- /**
122
- * 释放保存点
123
- */
124
- static releaseSavepoint(queryRunner, savepointName) {
125
- return __awaiter(this, void 0, void 0, function* () {
126
- // 检查 queryRunner.connection 是否存在
127
- if (!queryRunner.connection) {
128
- // 如果没有 connection,尝试使用标准 SQL 语法
129
- try {
130
- yield queryRunner.query(`RELEASE SAVEPOINT ${savepointName}`);
131
- }
132
- catch (error) {
133
- // 静默失败,因为某些数据库不支持 RELEASE
134
- }
135
- return;
136
- }
137
- const type = this.getDatabaseType(queryRunner.connection);
138
- switch (type) {
139
- case 'mysql':
140
- case 'mariadb':
141
- case 'postgres':
142
- case 'cockroachdb':
143
- case 'sqlite':
144
- case 'better-sqlite3':
145
- case 'sqljs':
146
- case 'cordova':
147
- case 'react-native':
148
- case 'nativescript':
149
- case 'expo':
150
- case 'capacitor':
151
- // 标准 SQL 语法
152
- yield queryRunner.query(`RELEASE SAVEPOINT ${savepointName}`);
153
- break;
154
- case 'oracle':
155
- // Oracle 不支持 RELEASE SAVEPOINT,保存点会在提交时自动释放
156
- // 不执行任何操作
157
- break;
158
- case 'mssql':
159
- // SQL Server 不支持 RELEASE,保存点会在提交或回滚时自动清理
160
- // 不执行任何操作
161
- break;
162
- case 'mongodb':
163
- // MongoDB 不支持
164
- break;
165
- default:
166
- // 对于未知的数据库类型,尝试使用标准 SQL 语法
167
- // 如果失败也不抛出错误,因为某些数据库不需要显式释放
168
- try {
169
- yield queryRunner.query(`RELEASE SAVEPOINT ${savepointName}`);
170
- }
171
- catch (error) {
172
- // 静默失败,因为某些数据库不支持 RELEASE
173
- }
174
- }
175
- });
176
- }
177
- /**
178
- * 执行健康检查查询
179
- */
180
- static healthCheck(dataSource) {
181
- return __awaiter(this, void 0, void 0, function* () {
182
- const type = this.getDatabaseType(dataSource);
183
- try {
184
- switch (type) {
185
- case 'mysql':
186
- case 'mariadb':
187
- yield dataSource.query('SELECT 1');
188
- break;
189
- case 'postgres':
190
- case 'cockroachdb':
191
- yield dataSource.query('SELECT 1');
192
- break;
193
- case 'mssql':
194
- yield dataSource.query('SELECT 1');
195
- break;
196
- case 'oracle':
197
- yield dataSource.query('SELECT 1 FROM DUAL');
198
- break;
199
- case 'sqlite':
200
- case 'better-sqlite3':
201
- case 'sqljs':
202
- case 'cordova':
203
- case 'react-native':
204
- case 'nativescript':
205
- case 'expo':
206
- case 'capacitor':
207
- yield dataSource.query('SELECT 1');
208
- break;
209
- case 'mongodb':
210
- // MongoDB 使用不同的健康检查方式
211
- yield dataSource.query('{ ping: 1 }');
212
- break;
213
- default:
214
- // 默认使用 SELECT 1
215
- yield dataSource.query('SELECT 1');
216
- }
217
- return true;
218
- }
219
- catch (error) {
220
- return false;
221
- }
222
- });
223
- }
224
- /**
225
- * 获取数据库特定的信息
226
- */
227
- static getDatabaseInfo(dataSource) {
228
- const type = this.getDatabaseType(dataSource);
229
- const supportsSavepoint = this.supportsSavepoint(dataSource);
230
- // 检查是否需要显式释放 SAVEPOINT
231
- const requiresReleaseSavepoint = !['oracle', 'mssql', 'mongodb'].includes(type);
232
- return {
233
- type,
234
- supportsSavepoint,
235
- supportsNestedTransactions: supportsSavepoint,
236
- requiresReleaseSavepoint,
237
- };
238
- }
239
- }
240
- exports.DatabaseAdapter = DatabaseAdapter;
@@ -1,62 +0,0 @@
1
- import 'reflect-metadata';
2
- /**
3
- * Entity 数据源装饰器
4
- * 用于指定 Entity 应该使用哪个数据源
5
- */
6
- export declare const ENTITY_DATASOURCE_METADATA_KEY = "entity:datasource";
7
- /**
8
- * 数据源装饰器 - 为 Entity 指定数据源
9
- *
10
- * @param dataSourceName 数据源名称
11
- *
12
- * 使用示例:
13
- * ```typescript
14
- * @Entity('users')
15
- * @DataSource('user_db')
16
- * export class User {
17
- * @PrimaryGeneratedColumn()
18
- * id: number;
19
- *
20
- * @Column()
21
- * name: string;
22
- * }
23
- * ```
24
- */
25
- export declare function DataSource(dataSourceName: string): ClassDecorator;
26
- /**
27
- * 获取 Entity 的数据源名称
28
- * @param entityClass Entity 类或构造函数
29
- * @returns 数据源名称,如果未指定则返回 null
30
- */
31
- export declare function getEntityDataSource(entityClass: any): string | null;
32
- /**
33
- * 检查 Entity 是否指定了数据源
34
- * @param entityClass Entity 类或构造函数
35
- * @returns 是否指定了数据源
36
- */
37
- export declare function hasEntityDataSource(entityClass: any): boolean;
38
- /**
39
- * 带数据源的 Entity 基类
40
- * 继承这个基类的 Entity 可以通过实现 useDataSource 方法动态指定数据源
41
- */
42
- export declare abstract class BaseEntityWithDataSource {
43
- /**
44
- * 子类可以重写此方法来动态指定数据源
45
- * @returns 数据源名称
46
- */
47
- static useDataSource?(): string;
48
- /**
49
- * 实例方法版本,用于动态获取数据源
50
- * @returns 数据源名称
51
- */
52
- getDataSource?(): string;
53
- }
54
- /**
55
- * 动态数据源装饰器
56
- * 标记 Entity 使用动态数据源(通过 useDataSource 方法指定)
57
- */
58
- export declare function DynamicDataSource(): ClassDecorator;
59
- /**
60
- * 检查 Entity 是否使用动态数据源
61
- */
62
- export declare function isDynamicDataSourceEntity(entityClass: any): boolean;
@@ -1,105 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseEntityWithDataSource = exports.ENTITY_DATASOURCE_METADATA_KEY = void 0;
4
- exports.DataSource = DataSource;
5
- exports.getEntityDataSource = getEntityDataSource;
6
- exports.hasEntityDataSource = hasEntityDataSource;
7
- exports.DynamicDataSource = DynamicDataSource;
8
- exports.isDynamicDataSourceEntity = isDynamicDataSourceEntity;
9
- require("reflect-metadata");
10
- /**
11
- * Entity 数据源装饰器
12
- * 用于指定 Entity 应该使用哪个数据源
13
- */
14
- exports.ENTITY_DATASOURCE_METADATA_KEY = 'entity:datasource';
15
- /**
16
- * 数据源装饰器 - 为 Entity 指定数据源
17
- *
18
- * @param dataSourceName 数据源名称
19
- *
20
- * 使用示例:
21
- * ```typescript
22
- * @Entity('users')
23
- * @DataSource('user_db')
24
- * export class User {
25
- * @PrimaryGeneratedColumn()
26
- * id: number;
27
- *
28
- * @Column()
29
- * name: string;
30
- * }
31
- * ```
32
- */
33
- function DataSource(dataSourceName) {
34
- return function (target) {
35
- // 使用 Reflect.metadata 存储数据源信息
36
- Reflect.defineMetadata(exports.ENTITY_DATASOURCE_METADATA_KEY, dataSourceName, target);
37
- // 同时在原型上设置属性,方便运行时访问
38
- target.prototype._dataSourceName = dataSourceName;
39
- // 静态属性,方便类级别访问
40
- target._dataSourceName = dataSourceName;
41
- // 如果类有 metadata 属性(一些 ORM 框架支持),也设置在那里
42
- if (target.metadata) {
43
- target.metadata.dataSource = dataSourceName;
44
- }
45
- };
46
- }
47
- /**
48
- * 获取 Entity 的数据源名称
49
- * @param entityClass Entity 类或构造函数
50
- * @returns 数据源名称,如果未指定则返回 null
51
- */
52
- function getEntityDataSource(entityClass) {
53
- if (!entityClass)
54
- return null;
55
- // 尝试从多个位置获取数据源名称
56
- // 1. 从 Reflect.metadata 获取
57
- const metadataSource = Reflect.getMetadata(exports.ENTITY_DATASOURCE_METADATA_KEY, entityClass);
58
- if (metadataSource)
59
- return metadataSource;
60
- // 2. 从静态属性获取
61
- if (entityClass._dataSourceName)
62
- return entityClass._dataSourceName;
63
- // 3. 从原型获取
64
- if (entityClass.prototype && entityClass.prototype._dataSourceName) {
65
- return entityClass.prototype._dataSourceName;
66
- }
67
- // 4. 从实例获取(如果传入的是实例)
68
- if (entityClass.constructor && entityClass.constructor._dataSourceName) {
69
- return entityClass.constructor._dataSourceName;
70
- }
71
- return null;
72
- }
73
- /**
74
- * 检查 Entity 是否指定了数据源
75
- * @param entityClass Entity 类或构造函数
76
- * @returns 是否指定了数据源
77
- */
78
- function hasEntityDataSource(entityClass) {
79
- return getEntityDataSource(entityClass) !== null;
80
- }
81
- /**
82
- * 带数据源的 Entity 基类
83
- * 继承这个基类的 Entity 可以通过实现 useDataSource 方法动态指定数据源
84
- */
85
- class BaseEntityWithDataSource {
86
- }
87
- exports.BaseEntityWithDataSource = BaseEntityWithDataSource;
88
- /**
89
- * 动态数据源装饰器
90
- * 标记 Entity 使用动态数据源(通过 useDataSource 方法指定)
91
- */
92
- function DynamicDataSource() {
93
- return function (target) {
94
- // 设置标记,表示使用动态数据源
95
- Reflect.defineMetadata('entity:dynamic-datasource', true, target);
96
- target._useDynamicDataSource = true;
97
- };
98
- }
99
- /**
100
- * 检查 Entity 是否使用动态数据源
101
- */
102
- function isDynamicDataSourceEntity(entityClass) {
103
- return Reflect.getMetadata('entity:dynamic-datasource', entityClass) === true ||
104
- entityClass._useDynamicDataSource === true;
105
- }
@@ -1,16 +0,0 @@
1
- export { TransactionManager, TransactionDefinition, TransactionStatus, Propagation, IsolationLevel, TransactionTimeoutCallback, TransactionContextManager } from './transaction-manager';
2
- export { TransactionManagerHolder } from './transaction-manager.holder';
3
- export { TransactionSynchronizationManager, TransactionSynchronization, TransactionSynchronizationStatus, } from './transaction-synchronization';
4
- export { Transactional, ClassTransactional, TransactionalInterceptor, Tx, UseTransactional, TransactionalOptions } from './transactional.decorator';
5
- export { BaseService } from './base-service-transaction';
6
- export { TypeOrmModuleWrapper, TypeOrmDataSourceConfig, MultiTypeOrmModuleOptions, GlobalMultiTypeOrmModule } from './typeorm-module-wrapper';
7
- export { DataSourceRegistryService, DataSourceRegistryConfig, DataSourceHealthStatus } from './data-source-registry';
8
- export { TransactionContextService, DynamicDataSourceConfig } from './transaction-context.service';
9
- export { ClsCompatibilityService, ClsServiceManager } from './cls-compatibility.service';
10
- export { DataSource, DynamicDataSource, BaseEntityWithDataSource, getEntityDataSource, hasEntityDataSource, isDynamicDataSourceEntity } from './decorators/entity-datasource.decorator';
11
- export { LoggingTransactionalInterceptor } from './logging-transactional.interceptor';
12
- export { LoggingTransactionalInterceptor as TRANSACTION_LOGGING_INTERCEPTOR } from './logging-transactional.interceptor';
13
- export { TransactionError, TransactionErrorHandler } from './transaction.errors';
14
- export { DatabaseAdapter, DatabaseType } from './database-adapter';
15
- export { DataSourceUtil, getDataSource, getDataSourceSafe, getDefaultDataSource, isDataSourceAvailable, withDataSource, withTransaction, addDataSource, addDataSources, } from './data-source.util';
16
- export { TransactionModule } from './transaction.module';
@@ -1,71 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TransactionModule = exports.addDataSources = exports.addDataSource = exports.withTransaction = exports.withDataSource = exports.isDataSourceAvailable = exports.getDefaultDataSource = exports.getDataSourceSafe = exports.getDataSource = exports.DataSourceUtil = exports.DatabaseAdapter = exports.TransactionErrorHandler = exports.TransactionError = exports.TRANSACTION_LOGGING_INTERCEPTOR = exports.LoggingTransactionalInterceptor = exports.isDynamicDataSourceEntity = exports.hasEntityDataSource = exports.getEntityDataSource = exports.BaseEntityWithDataSource = exports.DynamicDataSource = exports.DataSource = exports.ClsServiceManager = exports.ClsCompatibilityService = exports.TransactionContextService = exports.DataSourceRegistryService = exports.GlobalMultiTypeOrmModule = exports.TypeOrmModuleWrapper = exports.BaseService = exports.UseTransactional = exports.Tx = exports.TransactionalInterceptor = exports.ClassTransactional = exports.Transactional = exports.TransactionSynchronizationStatus = exports.TransactionSynchronizationManager = exports.TransactionManagerHolder = exports.TransactionContextManager = exports.IsolationLevel = exports.Propagation = exports.TransactionManager = void 0;
4
- // 核心事务管理
5
- var transaction_manager_1 = require("./transaction-manager");
6
- Object.defineProperty(exports, "TransactionManager", { enumerable: true, get: function () { return transaction_manager_1.TransactionManager; } });
7
- Object.defineProperty(exports, "Propagation", { enumerable: true, get: function () { return transaction_manager_1.Propagation; } });
8
- Object.defineProperty(exports, "IsolationLevel", { enumerable: true, get: function () { return transaction_manager_1.IsolationLevel; } });
9
- Object.defineProperty(exports, "TransactionContextManager", { enumerable: true, get: function () { return transaction_manager_1.TransactionContextManager; } });
10
- // 事务管理器持有者(用于装饰器访问)
11
- var transaction_manager_holder_1 = require("./transaction-manager.holder");
12
- Object.defineProperty(exports, "TransactionManagerHolder", { enumerable: true, get: function () { return transaction_manager_holder_1.TransactionManagerHolder; } });
13
- // 事务同步机制(对标 Spring TransactionSynchronization)
14
- var transaction_synchronization_1 = require("./transaction-synchronization");
15
- Object.defineProperty(exports, "TransactionSynchronizationManager", { enumerable: true, get: function () { return transaction_synchronization_1.TransactionSynchronizationManager; } });
16
- Object.defineProperty(exports, "TransactionSynchronizationStatus", { enumerable: true, get: function () { return transaction_synchronization_1.TransactionSynchronizationStatus; } });
17
- // 装饰器
18
- var transactional_decorator_1 = require("./transactional.decorator");
19
- Object.defineProperty(exports, "Transactional", { enumerable: true, get: function () { return transactional_decorator_1.Transactional; } });
20
- Object.defineProperty(exports, "ClassTransactional", { enumerable: true, get: function () { return transactional_decorator_1.ClassTransactional; } });
21
- Object.defineProperty(exports, "TransactionalInterceptor", { enumerable: true, get: function () { return transactional_decorator_1.TransactionalInterceptor; } });
22
- Object.defineProperty(exports, "Tx", { enumerable: true, get: function () { return transactional_decorator_1.Tx; } });
23
- Object.defineProperty(exports, "UseTransactional", { enumerable: true, get: function () { return transactional_decorator_1.UseTransactional; } });
24
- var base_service_transaction_1 = require("./base-service-transaction");
25
- Object.defineProperty(exports, "BaseService", { enumerable: true, get: function () { return base_service_transaction_1.BaseService; } });
26
- // 数据源管理
27
- var typeorm_module_wrapper_1 = require("./typeorm-module-wrapper");
28
- Object.defineProperty(exports, "TypeOrmModuleWrapper", { enumerable: true, get: function () { return typeorm_module_wrapper_1.TypeOrmModuleWrapper; } });
29
- Object.defineProperty(exports, "GlobalMultiTypeOrmModule", { enumerable: true, get: function () { return typeorm_module_wrapper_1.GlobalMultiTypeOrmModule; } });
30
- var data_source_registry_1 = require("./data-source-registry");
31
- Object.defineProperty(exports, "DataSourceRegistryService", { enumerable: true, get: function () { return data_source_registry_1.DataSourceRegistryService; } });
32
- var transaction_context_service_1 = require("./transaction-context.service");
33
- Object.defineProperty(exports, "TransactionContextService", { enumerable: true, get: function () { return transaction_context_service_1.TransactionContextService; } });
34
- // 兼容性支持
35
- var cls_compatibility_service_1 = require("./cls-compatibility.service");
36
- Object.defineProperty(exports, "ClsCompatibilityService", { enumerable: true, get: function () { return cls_compatibility_service_1.ClsCompatibilityService; } });
37
- Object.defineProperty(exports, "ClsServiceManager", { enumerable: true, get: function () { return cls_compatibility_service_1.ClsServiceManager; } });
38
- // Entity 级别的数据源装饰器
39
- var entity_datasource_decorator_1 = require("./decorators/entity-datasource.decorator");
40
- Object.defineProperty(exports, "DataSource", { enumerable: true, get: function () { return entity_datasource_decorator_1.DataSource; } });
41
- Object.defineProperty(exports, "DynamicDataSource", { enumerable: true, get: function () { return entity_datasource_decorator_1.DynamicDataSource; } });
42
- Object.defineProperty(exports, "BaseEntityWithDataSource", { enumerable: true, get: function () { return entity_datasource_decorator_1.BaseEntityWithDataSource; } });
43
- Object.defineProperty(exports, "getEntityDataSource", { enumerable: true, get: function () { return entity_datasource_decorator_1.getEntityDataSource; } });
44
- Object.defineProperty(exports, "hasEntityDataSource", { enumerable: true, get: function () { return entity_datasource_decorator_1.hasEntityDataSource; } });
45
- Object.defineProperty(exports, "isDynamicDataSourceEntity", { enumerable: true, get: function () { return entity_datasource_decorator_1.isDynamicDataSourceEntity; } });
46
- // 日志增强
47
- var logging_transactional_interceptor_1 = require("./logging-transactional.interceptor");
48
- Object.defineProperty(exports, "LoggingTransactionalInterceptor", { enumerable: true, get: function () { return logging_transactional_interceptor_1.LoggingTransactionalInterceptor; } });
49
- var logging_transactional_interceptor_2 = require("./logging-transactional.interceptor");
50
- Object.defineProperty(exports, "TRANSACTION_LOGGING_INTERCEPTOR", { enumerable: true, get: function () { return logging_transactional_interceptor_2.LoggingTransactionalInterceptor; } });
51
- // 错误处理
52
- var transaction_errors_1 = require("./transaction.errors");
53
- Object.defineProperty(exports, "TransactionError", { enumerable: true, get: function () { return transaction_errors_1.TransactionError; } });
54
- Object.defineProperty(exports, "TransactionErrorHandler", { enumerable: true, get: function () { return transaction_errors_1.TransactionErrorHandler; } });
55
- // 数据库适配器
56
- var database_adapter_1 = require("./database-adapter");
57
- Object.defineProperty(exports, "DatabaseAdapter", { enumerable: true, get: function () { return database_adapter_1.DatabaseAdapter; } });
58
- // 数据源工具(可在任意位置获取数据源)
59
- var data_source_util_1 = require("./data-source.util");
60
- Object.defineProperty(exports, "DataSourceUtil", { enumerable: true, get: function () { return data_source_util_1.DataSourceUtil; } });
61
- Object.defineProperty(exports, "getDataSource", { enumerable: true, get: function () { return data_source_util_1.getDataSource; } });
62
- Object.defineProperty(exports, "getDataSourceSafe", { enumerable: true, get: function () { return data_source_util_1.getDataSourceSafe; } });
63
- Object.defineProperty(exports, "getDefaultDataSource", { enumerable: true, get: function () { return data_source_util_1.getDefaultDataSource; } });
64
- Object.defineProperty(exports, "isDataSourceAvailable", { enumerable: true, get: function () { return data_source_util_1.isDataSourceAvailable; } });
65
- Object.defineProperty(exports, "withDataSource", { enumerable: true, get: function () { return data_source_util_1.withDataSource; } });
66
- Object.defineProperty(exports, "withTransaction", { enumerable: true, get: function () { return data_source_util_1.withTransaction; } });
67
- Object.defineProperty(exports, "addDataSource", { enumerable: true, get: function () { return data_source_util_1.addDataSource; } });
68
- Object.defineProperty(exports, "addDataSources", { enumerable: true, get: function () { return data_source_util_1.addDataSources; } });
69
- // 模块导出
70
- var transaction_module_1 = require("./transaction.module");
71
- Object.defineProperty(exports, "TransactionModule", { enumerable: true, get: function () { return transaction_module_1.TransactionModule; } });
@@ -1,18 +0,0 @@
1
- import { ExecutionContext, CallHandler, NestInterceptor } from '@nestjs/common';
2
- import { Observable } from 'rxjs';
3
- import { TransactionManager } from './transaction-manager';
4
- /**
5
- * 带日志的事务拦截器
6
- * 提供详细的事务执行日志
7
- */
8
- export declare class LoggingTransactionalInterceptor implements NestInterceptor {
9
- private readonly transactionManager;
10
- private readonly logger;
11
- constructor(transactionManager: TransactionManager);
12
- intercept(context: ExecutionContext, next: CallHandler): Observable<any>;
13
- private handleTransaction;
14
- private getTransactionOptions;
15
- private getTransactionName;
16
- private setClsContext;
17
- private clearClsContext;
18
- }